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.