Unimplemented calls in sq 8720 and sq 8836

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Unimplemented calls in sq 8720 and sq 8836

Jerome Peace

Hi all,

I finally got a current trunk image up running on my Ubuntu machine.

I did my standard check for unimplement calls and found 195 is sq 8720 freshly downloaded.

After running code updates to sq 8836 the number had increased by 4 to 199.

Two are due to a missing colon in PBBooleanPreferenceView class>unload .

The simple workspace doit for finding and categorizing unimplemented calls is below.

I started it for 3.9-3.10 some of the filter categories can now be retired. They are the ones commented out. I then added new categories until all the known problems in sq 8720 were filtered. So anything that appears at the bottom of the list is new.

It seems obvious to me that each new image should be tested to have no more unimplemented calls than previous images and that there should be no new uncategorized unimplemented calls. As we whittle down the old ones the test can be tightened.

Smalltalk garbageCollect.

unimp := SystemNavigation default unimplemented .

Smalltalk garbageCollect.


[
[ :list |
        unimpList := OrderedCollection new add: unimp ; yourself  .
       

        list do: [ :phrase | | remaining |
                        remaining := unimpList removeLast .
                        test :=  [ :each |
                        each value anySatisfy: [ :each1 |
                                                each1 includesSubstring: phrase
                                                                caseSensitive: false ] ] .
               
                        unimpList add: (remaining select: test) ;
                                                add:  { remaining size . phrase . unimpList last  size } ;
                                            add: ( remaining reject: test )
                               
                                ] ]
                value: ( {
                "'>ccg:'" "primitives from vmmaker"
                 'test' "test case temp ivars"
                . 'SM' "Lots due to squeak map"
                . 'SAR'
                . 'parse'
                . 'Kedama' "there are a lot of these"
                . 'BalloonE' "Balloon engine"
                . 'FieldNode'
                . 'para'
                . 'hand'
                . 'MC'
                . 'bob1' "need to change message #...in: to #...inMorph:"
                . 'Transfer'
                . 'dict' "Memory Hogs is not used see mantis"
                ". 'fog' ""Player stuff i wonder what fog was used for?"
                . 'Form'
                . 'menu'
                . 'transla' "Need to remove class method is in."
                . 'tile'
                " . 'dict' apparently we don't nedd this filter. "
                . 'sketch'
                . 'wir'
                ". 'verypick'  this has a removal fix on mantis"
                . 'morph'
                . 'flash'
                . 'color' " just a disabled preference. no prob."
                . 'project'
                . 'service' "just checking . no prob"
                . 'hash' "really old problem. should be fixed. low priority."
                . 'Etoy'  "just checking . no prob"
                ". 'PHO' " "ancient problem. remove class."
                . 'meta' "looks like a bug. old one."
                . 'OB'  "omni broser has two"
                . 'method'
                ". 'closu'"
                ". 'Signature' " "DSA bugs. method lost. prim not implemented"
                                                "used for time testing only. just remove methods"
                ". 'Player'"
                . 'flapTab'  "unused menu caller. remove."
                . 'simula'
                . 'Unsent'
                . 'activate'
                . 'Install'
                . 'xport'
                . 'Editor'
                . 'Text'
                . 'Stream'
                . 'Unix'
                . 'flush'
                . 'label'
                . 'release'
                . 'process'
                . 'Font'
                . 'Change'
                . 'wait'
                . 'Cleanup' } ) .
                       
                        unimpList explore .
 ] value .


Hth,

Yours in curiosity and service -- Jerome Peace



     

Reply | Threaded
Open this post in threaded view
|

Re: Unimplemented calls in sq 8720 and sq 8836

Andreas.Raab
Hi Jerome -

If you have some code that removes unimplemented calls, please help us!
Either by providing packages into the inbox or by putting them into
Mantis - either way is fine but please make sure you communicate it somehow.

Cheers,
   - Andreas

Jerome Peace wrote:

> Hi all,
>
> I finally got a current trunk image up running on my Ubuntu machine.
>
> I did my standard check for unimplement calls and found 195 is sq 8720 freshly downloaded.
>
> After running code updates to sq 8836 the number had increased by 4 to 199.
>
> Two are due to a missing colon in PBBooleanPreferenceView class>unload .
>
> The simple workspace doit for finding and categorizing unimplemented calls is below.
>
> I started it for 3.9-3.10 some of the filter categories can now be retired. They are the ones commented out. I then added new categories until all the known problems in sq 8720 were filtered. So anything that appears at the bottom of the list is new.
>
> It seems obvious to me that each new image should be tested to have no more unimplemented calls than previous images and that there should be no new uncategorized unimplemented calls. As we whittle down the old ones the test can be tightened.
>
> Smalltalk garbageCollect.
>
> unimp := SystemNavigation default unimplemented .
>
> Smalltalk garbageCollect.
>
>
> [
> [ :list |
> unimpList := OrderedCollection new add: unimp ; yourself  .
>
>
> list do: [ :phrase | | remaining |
> remaining := unimpList removeLast .
> test :=  [ :each |
> each value anySatisfy: [ :each1 |
> each1 includesSubstring: phrase
> caseSensitive: false ] ] .
>
> unimpList add: (remaining select: test) ;
> add:  { remaining size . phrase . unimpList last  size } ;
>    add: ( remaining reject: test )
>
> ] ]
> value: ( {
> "'>ccg:'" "primitives from vmmaker"
> 'test' "test case temp ivars"
> . 'SM' "Lots due to squeak map"
> . 'SAR'
> . 'parse'
> . 'Kedama' "there are a lot of these"
> . 'BalloonE' "Balloon engine"
> . 'FieldNode'
> . 'para'
> . 'hand'
> . 'MC'
> . 'bob1' "need to change message #...in: to #...inMorph:"
> . 'Transfer'
> . 'dict' "Memory Hogs is not used see mantis"
> ". 'fog' ""Player stuff i wonder what fog was used for?"
> . 'Form'
> . 'menu'
> . 'transla' "Need to remove class method is in."
> . 'tile'
> " . 'dict' apparently we don't nedd this filter. "
> . 'sketch'
> . 'wir'
> ". 'verypick'  this has a removal fix on mantis"
> . 'morph'
> . 'flash'
> . 'color' " just a disabled preference. no prob."
> . 'project'
> . 'service' "just checking . no prob"
> . 'hash' "really old problem. should be fixed. low priority."
> . 'Etoy'  "just checking . no prob"
> ". 'PHO' " "ancient problem. remove class."
> . 'meta' "looks like a bug. old one."
> . 'OB'  "omni broser has two"
> . 'method'
> ". 'closu'"
> ". 'Signature' " "DSA bugs. method lost. prim not implemented"
> "used for time testing only. just remove methods"
> ". 'Player'"
> . 'flapTab'  "unused menu caller. remove."
> . 'simula'
> . 'Unsent'
> . 'activate'
> . 'Install'
> . 'xport'
> . 'Editor'
> . 'Text'
> . 'Stream'
> . 'Unix'
> . 'flush'
> . 'label'
> . 'release'
> . 'process'
> . 'Font'
> . 'Change'
> . 'wait'
> . 'Cleanup' } ) .
>
> unimpList explore .
>  ] value .
>
>
> Hth,
>
> Yours in curiosity and service -- Jerome Peace
>
>
>
>      
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Unimplemented calls in sq 8720 and sq 8836

Jerome Peace
In reply to this post by Jerome Peace
     
>[squeak-dev] Re: Unimplemented calls in sq 8720 and sq 8836
>Andreas Raab andreas.raab at gmx.de
>Mon Jan 11 01:37:07 UTC 2010 wrote:

>Hi Jerome -
>
>If you have some code that removes unimplemented calls, please help us!
>Either by providing packages into the inbox or by putting them into
>Mantis - either way is fine but please make sure you communicate it somehow.
>
>Cheers,
>   - Andreas

Hi Andreas,

Don't worry. I am just getting warmed up. Besides I think you missed the point of the post. Which is new code should not create more unimplemented calls. Cleaning up the backlog can be done slowly with low priority. It won't make a dent if new code is added (or removed) sloppily.

Also some of the calls would be best removed by their package owners. Many are due to SAR and SqueakMap. I am kindly requesting that people look at the list and tackle the ones that are theirs.

There has been code to address some of the unimplemented stuff.
I put it on mantis for 3.10.x

0007042: [fixes][tests] Whitling down unimplemented calls in sq7159
http://bugs.squeak.org/view.php?id=7042

It seems to have an inconsistent status. Internally its pending. Externally its marked closed. It includes the sunit test I mentioned. You'll see from the dialog there how frustrating it was to try to get fixes recognized and harvested.

Right now I am still a Monticello luddite. So it will take some time to get up to speed in packaging things they way you seem to be requesting them. Till then I intend to post mantis reports w/ fileouts of the code and fixes.

Meanwhile you could harvest the sunit test. Then request your contributers to not add to the mess? That seems doable, possible and desirable.

Yours in curiosity and service -- Jerome Peace

>
>Jerome Peace wrote:
>> Hi all,
>>
>> I finally got a current trunk image up running on my Ubuntu machine.
>>
>> I did my standard check for unimplement calls and found 195 is sq 8720 freshly downloaded.
>>
>> After running code updates to sq 8836 the number had increased by 4 to 199.
>>
>> Two are due to a missing colon in PBBooleanPreferenceView class>unload .
>>
>> The simple workspace doit for finding and categorizing unimplemented calls is below.
>>
>> I started it for 3.9-3.10 some of the filter categories can now be retired. They are the ones commented out. I then added new categories until all the known problems in sq 8720 were filtered. So anything that appears at the bottom of the list is new.
>>
>> It seems obvious to me that each new image should be tested to have no more unimplemented calls than previous images and that there should be no new uncategorized unimplemented calls. As we whittle down the old ones the test can be tightened.

>><snipped>

>> Yours in curiosity and service -- Jerome Peace