[Glass] Questions about Rowan 3

patrik at finworks.biz patrik at finworks.biz
Fri Nov 22 04:30:38 PST 2024


Hi Lisa!  Lovely to hear from you too.

I'll react within your reply to make it easier to follow.

Patrik Svestka


> Hi Patrik!  Nice to hear from you.
> 
> Rowan is a source code management system, that can be used with Git
> for 
> managing GemStone Smalltalk source code. Rowan 3 means version 3.x of
> Rowan, Rowan 2 and Rowan 1 are also in use; and Rowan is a successor
> to 
> Metacello. Dale can describe the differences between all these in
> detail.

Are there any examples/overview how does Rowan (1 -> 2 -> 3) improve on
its predecessor Metacello or among its own versions?  It would be nice
to see, on some examples, why it is needed for Jade/Jadeite.

I also did not find any code/examples how it integrates with git.  Is
it using FileTree to export the files which then can be picked up by
git?

> Rowan is designed to be used with Jadeite, to provide an integrated 
> GemStone code development environment. Historically GemStone has not
> had 
> its own GUI, and customers have had to use GBS in a third-party
> client 
> Smalltalk, or Jade, if they did not want to work in topaz.  Rowan
> itself 
> provides much better code management than class-based text files, and
> we 
> have been using Rowan internally for source code management for
> several 
> years. While there have been versions of Jadeite supporting Rowan 1
> and 
> 2, these only run on Windows. A Pharo version of Jadeite for Rowan 3
> is 
> under development, currently at an early alpha stage.

I tried to export a library from GemStone 3.7.1 using Jade (Dev) and
seaside extent (from UserGlobals), but the "Save as Tonel Package"
option is grayed out (unavailable).  I can FileOut the UserGlobals
dictionary, but I wonder why I can't use export Tonel package. 

Is it due to a fact that Rowan 3 is not available for the this extent?
Can I use a lower version of Rowan (1 or 2) for Jade/Jadeite (since I'm
not using JadeiteForPharo) with the GS 3.7.x or I have to wait until
Rowan3 is compatible with seaside? 

As I understand it, for now you need Rowan 3 for JadeiteForPharo only.


> Unfortunately, Rowan 3 is not currently compatible with seaside,
> since 
> it does not support session methods; and the migration pathway from 
> Metacello to Rowan has not been developed. Rowan 3 also needs the
> latest 
> versions of GemStone, since it relies on features added in 3.7 and
> bugs 
> fixed in 3.7.x.
This is really important piece of puzzle that I was missing.

> 
> What we are working on that might be helpful for you, is a version of
> Jadeite for Pharo that is usable against extent0.dbf, without needing
> to 
> load all of Rowan into the extent; it uses a Rowan stub to forward 
> messages appropriately. This environment would be compatible with a 
> seaside or seaside+tODE environment, and existing package management
> tools.
> 
Yes, this will be really useful if I could use JadeiteForPharo, Rowan 3
, and seaside at the same time. 


> Let us know if you would like to discuss this in more detail.
> 
> Lisa Almarode


> 
> 
> On 11/20/2024 3:45 AM, Patrik Svestka via Glass wrote:
> > Hi everyone,
> > 
> > I do have some questions concerning Rowan 3. I have searched for
> > them
> > myself, but I'm probably missing some pieces to the puzzle.
> > 
> > This is summary of what I have found out:
> >   - Rowan 3 is an OSS code package manager using git as backend
> >   - Supports both FileTree (repo info: Monticello repository for
> > directory-based Monticello packages enabling the use of different
> > kinds
> > of CVS (e.g. git). for managing Smalltalk source code) and Tonel
> > (repo
> > info: a file-per-class format for monticello repositories)
> > repositories
> >   - Jadeite needs Rowan (3)
> > 
> > My questions:
> >   - What problem are you solving with Rowan 3?
> >   - What are the key differences between Rowan 3 and its
> > predecessor(s)?
> >   - How to load Rowan 3 to other extent like a seaside one (e.g.
> > for GS
> > 3.7.1)?
> >   - Is there a possibility to add Rowan 3 to an older GS (extent)?
> >   - What are its limitations?


More information about the Glass mailing list