help build a stable universe

Lex Spoon lex at cc.gatech.edu
Mon Sep 6 19:24:29 UTC 2004


Hi all, thanks for the comments.  Hannes has asked about how to achieve
stability, and David has asked numerous clarifying questions (short
answer: David is correct on all counts).

Hannes, the silly answer is that a "stable" universe is simply one that
does not change.  Thus it's easy to make a stable universe -- just stop
posting stuff to it.  :)

More seriously, I agree that the stability we desire does not come from
juist declaring it to be so.  It takes work.  I have already spent 10-20
hours just going through the list of packages and figuring out which
ones load and seem to work in 3.7.  Additionally, I have left open a two
week period for people to test out their packages and see that they work
okay.  Finally, I expect to put in another chunk of work in two weeks in
order address any issues that are still outstanding.

Additionally, notice the timing.  It is no accident that I started the
stable 3.7 universe project just after Stephane, Marcus, Doug, et al
finished with Squeak 3.7.  The 3.7 universe builds upon and benefits
greatly from their efforts.

Finally, notice that the 3.7 universe is very close to the image most
developers are already working in.  There are no curveballs in there. 
If the package works in a normal 3.7 image, then it is probably fine for
the 3.7 universe even without any changes at all.  Mostly I expect
cosmetic changes over this 2-week period, such as cleaning up package
names and descriptions.

Now, more testing would be even better.  Ideas, anyone?  If nothing
else, anyone can help by loading up everything and trying all the
packages to see that they still work.  Another good thing would be to
track down everyone's SUnit tests and run them.  Anyway, I have done
little on this front so far other than check that everything loads and
that about half of them run.

Here's one page where people can report any bugs they find:

	"Stable 3.7 Universe"
	http://minnow.cc.gatech.edu/squeak/3835


David, thanks a lot for the detailed comments and questions!  You are
correct on all counts, and I'd just like to add:

	1. Yes, the UI for the editor is really ugly.
	
	2. I plan to set up a universes-ized image that knows what packages are
already loaded.  It will probably be a basic image, so not much will be
there anyway.
	
	3. The current dependencies are very simple and are as you describe. 
It would be nice in the future to add, at least, "provides", "suggests",
and "conflicts", in the Debian sense, but even then they'd be quite
limited.

	4. Both SqueakMap and Universes have a use for dependencies, though the
needs are different.  As you point out, it does simplify things that a
universe has only a limited set of packages available, which is why
Universes gets away with such simplistic dependencies.  I don't think
it's accurate, though, to say that one or the other is the single place
that dependencies live; both will have dependencies of different forms.

	5. Yes, a different person than the author can post a package to a
universe.  Actually, it's the same way with SqueakMap.  The only
difference is that anyone can start up a universe without telling you
about it, while if they post something on SqueakMap you'd be able to see
it.
	
	6. It is indeed meant to augment SqueakMap, not compete with it. 
SqueakMap has everything, while a universe has some interesting subset. 
And I'd be perfectly happy if the functionality of universes ends up
being included in some future version of SqueakMap.

	7. Yes, a "package universe" is the same as one version of a Linux
distribution.  It's too late to change terminology for now, but I could
rename everything in the future if people desire.



Lex Spoon



More information about the Squeak-dev mailing list