Hi,

One year later we are close to a final release for Pharo 6 and either with 
Pharo 6 or upcoming Pharo 7 
I would really like to see some checks that ensure a quality image and tests 
who keep us all more 
disciplined in the future. 

Because:

  1. We should not have undocumented classes:

        (Object allSubclasses select: [:cls| cls hasComment not ]) 

     but we have a lot in Pharo 6 now since we introduced new packages in this 
release iteration

  2. We should not have class instance variables in uppercase but:

     (Object allSubclasses select: [:cls| cls isMeta]) select: [:cls| cls  
       instVarNames anySatisfy: [:n | n first isUppercase]]

     is not empty - although this was already discussed back in 2008 (!), see
     
http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/2008-November/003366.html

  3. We should not have uncategorized methods but:

     (Object allSubclasses select: [:cls| (cls selectorsInProtocol: Protocol 
unclassified) notEmpty ]) 

     we still have them. 

  4. I've seen methods with unused temporary variables. Dont know about unused 
ivars or other.
 
  5. add you own here ...

I know this is often boring to comment or categorize - but we should do our 
homework as we wanted to
better compared to the past. Also if the base image is not following rules how 
should we expect others
to provide quality packages on top of it? 

IMHO we should raise the bar. Either in Pharo 6 or in early Pharo 7. We can fix 
these once and for 
all AND assure with unit tests that we keep the standard image on this quality 
level.

Thx
T.




Reply via email to