[lively-kernel] Code reorganization in Webwerkstatt - please check your js files

Keith P. Hodges keith_hodges at yahoo.co.uk
Thu Oct 27 19:52:04 CEST 2011


What is currently webwerkstatt/kernel could be called this webwerkstatt/base -i.e. "working base" (i.e. equivalent of an unstable branch)

To be released as lively/base (i.e. the equivalent of a stable branch)

this could have:

lively/base/lib
lively/base/kernel (non-optional parts from webwerkstatt/lively)
lively/base/media
lively/base/ometa
lively/base/cop
lively/base/partsBin (optional package that was in webwerkstatt/lively)
lively/base/smalltalk (optional package that was in webwerkstatt/lively)
lively/base/unit-testing (optional package that was in webwerkstatt/lively)
lively/base/ide (optional package that was in webwerkstatt/lively)

Some of the above would be separate projects under scm in their own right so they don't really want to be too deep in the hierarchy as they are at the moment.

Within the  "base" folder "projects", "parts", "users" are disposable folders that probably should not be in there at all and should probably be up a level.

lively/parts  (is bin redundant?)
lively/library (a place for optional packages, e.g. move lively/base/smalltalk to here)
lively/users
lively/projects
lively/server

So... release process might as well distribute all of lively/* and can include at the top level. 

lively/start.xhtml

I assume that the lively/start.xhtml defines all the paths as to where everything is.

If I am developing using lively/base I want my code to be in a separate project alongside, so I check out lively.

cd development
bzr checkout --lightweight lp:lively lively-rc4

/development/lively-rc4/* (base/parts/projects/apps/server etc.)

Then I branch my project from my repository.

bzr branch lp:~keithy/deadly

My top file is...

/development/deadly/start.xhtml

And use symbolic links to link the two...

cd deadly
ln -s ../lively-rc4 lively
ln -s ./lively/base base

Thus I can easily share parts bins, or have my own.

ln -s ./lively/parts parts

So now my start.xhtml (a copy of the original lively/start.xhtml) calls up stuff via ./base/kernel/bootstrap.js

I can choose which distribution of lively to use by pointing the symbolic links to the right one.

Users who don't want to use symbolic links (or cannot use them in windows) can wire their start.xhtml directly, with no loss of capability.

=
If at some point you want to switch webwerkstatt to use a stable release, all you have to do is symbolically link webwerkstatt/base to lively/base

regards

Keith







More information about the lively-kernel mailing list