[Glass] First steps building to GS64 in Travis

Dale Henrichs via Glass glass at lists.gemtalksystems.com
Fri Oct 19 11:49:12 PDT 2018

On 10/19/2018 09:49 AM, Maximiliano Tabacman via Glass wrote:
> Hi everybody!
> Most of our open source projects at github.com/ba-st 
> <http://github.com/ba-st> are using Travis for building Pharo images 
> and checking that everything can be loaded.
> Now we wanted to add builds for Gemstone, to confirm that the projects 
> can be loaded and used from a GS64 image.
> We started out simple, with Buoy, which is one of the smallest projects.
> After adding "- GemStone-3.3.4" to the smalltalk: section of 
> .travis.yml[1] in Github and #gemstone to .smalltalk.ston[2] we 
> checked to see that the build is sadly failing[3].
> It seems that the relevant error message is:
> ERROR 2710 , a MetacelloPackageSpecResolutionError occurred (error 
> 2710), Could not resolve: BaselineOfBuoy [BaselineOfBuoy] in cache 
> filetree:///home/travis/build/ba-st/Buoy/source 
> (MetacelloPackageSpecResolutionError)
> Since our project is using Tonel, we believe it might be related to 
> Tonel support in Gemstone and/or Travis.
Tonel is not yet supported by GLASS, so that is almost certainly the 
cause of your problem ... I have been too busy with GemStone product 
projects over the last two years to do/finish the port of Tonel to 
GLASS/GsDevKit ...

My original port of Tonel to GemStone is here[1], but it has not been 
worked on for year and I'm sure it is not quite up to snuff ... there 
has been more recent work in porting Tonel to the GemStone base (.gs 
file-based) for 3.5 (which has not been released) and then as the work 
on Rowan[2] has heated up, I moved the 3.5 code into Rowan and have 
gotten it working there for 3.2.15[3] (note this is on the masterv1.1 
branch), but the story does not end there:)

Right at the moment I am busy working on a new Rowan-specific 
implementation of Tonel/Filetree readers and writers[4] --- which itself 
is based on a port of FileSystem to the GemStone base[5] (currently in a 
private repository -- ready to be made public, but I haven't had the 
time:) ...

Once I've completed this work, my plan is to get Rowan support into 

My fantasy is that once these FileSystem-based Tonel/Filetree 
readers/writers are complete and we've got Rowan supported in 
SmalltalkCI, I could start recruiting volunteers from the community to 
help port Rowan to 3.3 and 3.4 and help integrate Rowan into 
GLASS/GsDevKit which would result in Tonel being supported:)

Soooo, if there _are_ folks who have the cycles to start contributing (I 
know that is a big IF), I could use the help in getting Rowan support 
into SmalltalkCI. I have bits and pieces of the support implemented and 
have a SmalltalkCi project[8] in Rowan where I've got skeleton plans 
laid out ... if there are willing volunteers, I would definitely carve 
out some time to flesh out the detail work that is needed and help folks 
get started in on doing the work ...

While Rowan and SmalltalkCI are the big ticket items ... the FileSystem 
project could use some work in porting to 3.3 and 3.4. There are a 
handful failing tests and there is some unfinished work on the encoded 
streams that could use some polishing, if there are willing volunteers, 
I would carve out time to help them get going and provide pointers to 
the places that need work.

If no one volunteers to help, then you all will have to wait until I 
finish slogging through these projects:)

[1] https://github.com/GsDevKit/tonel
[2] https://github.com/GemTalk/Rowan
[4] https://github.com/GemTalk/Rowan/issues/361
[5] https://github.com/GemTalk/FileSystemGs
[6] https://github.com/GemTalk/Rowan/issues/302
[7] https://github.com/hpi-swa/smalltalkCI/issues/387
[8] https://github.com/GemTalk/Rowan/projects/5
> Also, I noticed that after logging to topaz, the script executed is:
>       GsDeployer bulkMigrate: [
>         Metacello new
>           baseline: 'SmalltalkCI';
>           repository: 
> 'filetree:///home/travis/smalltalkCI-master/repository';
>           load: 'Core'.
>         System commitTransaction.
>         (Smalltalk at: #SmalltalkCI) load: 
> '/home/travis/build/ba-st/Buoy/.smalltalk.ston'.
>       ].
> This is quite different from the equivalent seen in Grease[4], where 
> the code is:
>       (Smalltalk at: #SmalltalkCI) test: 
> '/home/travis/build/SeasideSt/Grease/.smalltalk.ston' named: 
> 'GemStone-3.3.4 Server (travis)'.
Actually the Grease run executes the same code[9] to _load_ 
SmalltalkCI... the #test:named: code is what runs the tests once the 
SmalltalkCI code is loaded...

[9] https://travis-ci.org/SeasideSt/Grease/jobs/432236015#L2238-L2247
> It might have nothing to do, but we're really stumped about how to 
> proceed from here.
> It could be that we're missing some very obvious fact, so please let 
> us know if there's any idea around about how to better troubleshoot 
> this or change the project setup.
I think the big one is Tonel support and I've probably beaten that horse 
enough already:) ... If you convert your repository to FileTree format, 
you should be able to support Buoy and the other projects in both 
GemStone and Pharo ...


> Thanks!
> [1] https://github.com/ba-st/Buoy/blob/gs64-build/.smalltalk.ston
> [2] https://github.com/ba-st/Buoy/blob/gs64-build/.travis.yml
> [3] https://travis-ci.org/ba-st/Buoy/jobs/443422696
> [4] https://travis-ci.org/SeasideSt/Grease/jobs/432236015
> ------------------------------------------------------------------------
> <http://www.mercapsoftware.com> 	
> Dr. Maximiliano Tabacman
> Desarrollo y Tecnología
> Mercap
> Tel: +54 (011) 5352-2372 al 74
> http://www.mercapsoftware.com
> This message is confidential. It may also contain information that is 
> privileged or otherwise legally exempt from disclosure. If you have 
> received it by mistake please let us know by e-mail immediately and 
> delete it from your system; also you shouldn't copy the message nor 
> disclose its contents to anyone. Thanks.
> ------------------------------------------------------------------------
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> http://lists.gemtalksystems.com/mailman/listinfo/glass

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20181019/3eaef315/attachment-0001.html>

More information about the Glass mailing list