Package Update Installation Anomalies
Anthony Anton
agantoniii at earthlink.net
Wed Mar 17 03:58:23 UTC 2004
First, my apologies for providing no more than my weak and
inexperienced observations as a first message to this list. With more
Squeak time under my belt I hope to be useful in the future by way of
contribution instead of observation. In the meantime, I wonder if the
potential ill effects related to these observations is
underestimated/underappreciated.
I have observed that it is somewhat unreliable to do "in place"
updates of packages for other than "base" image packages. In other
words, if a package is already installed and there is an update
available for that package installing the update regularly results in
an unreliable image. The anomalies manifest themselves mostly as
runtime walkbacks or errors during installation of a package update.
This is not in ALL cases but these days it feels like a 50-50
proposition. I have found that the only reliable means of arriving at
a stable image which includes package updates is to go back to
scratch and install packages in my usual and customary sequence
(arrived at admittedly with my own brand of "cargo culturalism").
There are probably more likely culprit packages for these problems
than others but I don't relish the idea of having to keep a
"knowledge base" of sorts for avoiding these problems. I find this
phenomenon time wasting.
The cause for this problem seems mostly due to lack of a clear
process, lack of consistent application of said process, or lack of
discipline regarding package management [which could all readily be
attributed solely to me...mea culpa :)]. However, at this stage I'm
mostly a "package user" and not much of a producer so it's not clear
to me what I could do to mitigate the situation other that what I'm
already doing (rebuild from "scratch") or simply stop using any
"add-ons" (bummer, there's some neat stuff to [re]use). As I
understand it there are some packages which actually modify classes
(add/remove/change methods) as part of their installation. In some
respects this would seem to be more error prone than the Java
situation. When "dropping in" a JAR, for the most part, you aren't
modifying any "sitting binaries" as seems to sometimes be the case
with Squeak. Sure, you have all the JAR/Package path resolution and
compilation issues that come with Java (which I absolutely hate along
with many other dislikes of Java) but at least I can be relatively
sure about the insides of those deployment elements not having been
changed (except by the odd cosmic ray or such). Ideally, I'd like to
see the "repository/image" approach of Smalltalk with some
"packaging" concepts borrowed from Java (and at one time was working
on a custom class loader for Java which used a repository as its
source).
I haven't dealt with this set of "packaging" issues much using
VisualWorks so I can't say much about how better or worse it may be
than Squeak. I do know that it feels as though I spend much more
[particularly tedious and repetitive] time "policing" my development
environment in response to package changes in Squeak than I seem to
have to in Java. This seems to be an issue with Smalltalk that goes
back to my first days with Digitalk Smalltalk/V. Don't get me wrong,
I MUCH prefer Smalltalk to Java, but this is one of those nits that
inhibits efforts to proselytize. I seek to do only more with
Smalltalk but feel I need to find a way to overcome this set issues
before I could take my work to a wider (decidedly non-Smalltalk)
audience.
Thanks ahead of time for any feedback and I hope this didn't come
across as a rant.
--
----------------------------------------------------------------------
Anthony Anton 3800 243rd Place SE Phone: 425-313-1024
Issaquah, WA 98029 Cell: 425-444-3084
Concept Systems agantoniii at earthlink.net FAX: 425-313-1042
More information about the Squeak-dev
mailing list
|