Let's consider changing how we track issues (was Re: [squeak-dev] Mantis usage rules du jour)

Tobias Pape Das.Linux at gmx.de
Mon Feb 25 14:52:14 UTC 2013


Am 25.02.2013 um 15:20 schrieb Bert Freudenberg <bert at freudenbergs.de>:

> 
> On 2013-02-25, at 14:56, Tobias Pape <Das.Linux at gmx.de> wrote:
> 
>> Am 25.02.2013 um 14:26 schrieb radoslav hodnicak <rh at 4096.sk>:
>> 
>>> On Mon, Feb 25, 2013 at 1:14 PM, Tobias Pape <Das.Linux at gmx.de> wrote:
>>> PS: Off-topic but IMHO important. I started replying to this email
>>>   7:30 AM and got stuck at the installation instructions and now
>>>   I send this mail at 1 PM;
>>>     I, sadly, have to conclude: Installing a proper development
>>>   image for Seaside on Squeak is still a mess.
>>>     I was the one who provided the Squeak Seaside image for Squeak 4.3
>>>   but currently I see myself completely unable to set up Seaside for
>>>   Squeak 4.4.
>>>   Just some random notes to relieve me:
>>>   • Installing Seaside need Metacello.
>>>   • Then somehow trying to install Seaside: do it wrong and Boom: Zinc is missing
>>>     and completely unavailable for Squeak
>>>   • Bootstrapping metacello needs Omnibrowser basics
>>>   • The Omnibrowser verison for Squeak as in the ConfigurationOfOmnibrowser is
>>>     completely broken. Remember the not working buttons? still there.
>>>   • First installing OmniBrowser via Coiln’s script and then loading anything via
>>>     Metacello that depends on OB: boom
>>>   • First installing Omnibrowser via Metacello, then loading via Colin’s script:
>>>     no boom, but conflicting Classes. need to remove OB-Morphic manually...
>>>   • at _that_ point I gave up.
>>> 
>>> I haven't tried this recently but Lukas' scripts for building images at https://github.com/renggli/builder/tree/master/scripts don't use Metacello and I have used this method to load Seaside in the past (replacing Gofer calls with Installer).
>>> 
>>> rado
>> 
>> Well, there is
>> 	https://github.com/renggli/builder/blob/master/scripts/seaside3-metacello.st
>> which explicitely _does_ use Metacello and
>> 	https://github.com/renggli/builder/blob/master/scripts/seaside3.st
>> which explicitely _does not_ use Metacello.
>> 
>> If you were an “image distributor”, ie, someone who hands images to other developers,
>> which one would you take? Which resulting image is easier to update? Which script is easier
>> to maintain? (Sorry the many questions, not meant to be offensive :) )
>> 
>> Best
>> 	-Tobias
> 
> 
> Well, in the first one the complexity is just hidden, distributed over many packages in various repositories, which seems hard to control for an individual image builder. As you discovered, it drags in many unneeded pieces - Zinc, OB, really?

Stop. It drags OB for the _developer_ image, which is consistent, IMHO.
Why it did pull Zinc on the first try, I don't know.
Later, It pulled Kom instead of Zinc.

> So if you want to build a clean image right now then it seems indeed avoiding Metacello would make your live easier. I don't know how much effort it would take to sanitize all the various configs it loads? Since you gave up after several hours, I guess a lot of effort (although I would be delighted to be proven wrong). But it sounds like it might not have taken you several hours to adapt the second script to your needs.

No. It was not the problem of Metacello in that case but that there are conflicting 
methods of loading Omnibrowser floating around. I _wanted_ OB in the Image I tried
to produce. It is, eg, necessary for the Seaside Control Panel.

> 
> I do see the chicken-and-egg problem here. Maybe distilling Lukas' script into a squeakmap loader would make it easier to install Seaside, which might in turn get more Squeakers to actively participate in its development, which might lead to properly maintained Metacello configurations.

The paths sounds interesting. But, I think, this is the path required for Omnibrowser, not for
Seaside. Once OB is pulling in fine, Seaside-Development is a no-brainer.

Issuing
	Installer ss
		project: 'MetacelloRepository';
		install: 'ConfigurationOfSeaside30'.
	((Smalltalk at: #ConfigurationOfSeaside30) project version: #stable) load: #( Base )
works fine and produces a nice Seaside image _without_ developer tools (ie, no
Seaside Control Panel, no pre-selected Adaptor)

However, when you try to load the Development branch, it depends on Omnibrowser.
And that thing is broken XD


Probably I just should invest the time and Fix the Omnibrowser Metacelllo package, hoping that this is
the root cause.
Expect me in a few hours.

> Or, since you mention Metacello bootstrapping problems, do we need to fix Metacello itself first? Depending on a particular browser does not sound right for a package installer.

Again, it is not a Metacello bootstrapping problem but an Omnibrowser bootstrapping problem.

Best
	-Tobias

(DISCLAIMER: don't take me too serious today, I'm a bit pissed, but I will be ok tomorrow ;) )



More information about the Squeak-dev mailing list