You are currently browsing the monthly archive for January 2009.


Julian Fitzell noticed this course announcement at the Santa Fe Complex in Santa Fe, New Mexico:

... If you plan to participate in one a workshop (e.g. a planned week long GLASS – Gemstone-Linux-Apache-Squeak-Seaside – workshop) and want to earn college credit, please enroll…

Pretty exciting to hear that this is going on.

[1] Photo by Ottoman42 via Flickr (Creative Commons).


[Update 3/16/2009: see the post GLASS Beta Update: Cooking with GLASS (Preview) for the latest preview information].

As a few brave souls discovered, the process for updating to the new crop of tools is a little more complicated than it needs to be. A couple of them even got their fingers pinched during the update:).I was looking for feedback, so I appreciate the effort. Hopefully their sacrifices will be worthwhile.


There weren’t that many changes made to the OmniBrowser code in GLASS post GLASS.230-dkh.177, however, the changes that were made created havoc for any windows opened prior to the update. I had originally hoped that a couple of errors between friends would be okay, but enough people ran into odd problems during the updates to GLASS.230-dkh.182 and GLASS.230-dkh.183, that it became clear that the update process needed to be improved.

I tried a number of things including an attempt to work around the problems with the new GemTools Client code. I was successful in getting the new GemTools Client to run against the older versions of GLASS (which is a step in the right direction), but I wasn’t able to get around the crashes and walkbacks. With a nudge from Igor Stasenko, I finally settled on using an update script.

In the end I made two significant changes to the update process:

  1. Update the GemTools client before updating the server. In the past we’ve updated the server-side code first and then updated the client-side code. However, since we’re recommending that users move to a completely different client image, I think it is easier to get the client update out of the way before doing the server update, especialy now that the latest GemTools Client code will run against older versions of GLASS. Any problems in getting the GemTools Client built and connected to the server can be worked out before making changes on the server side.
  2. Update the Server using a script instead of the Monticello Browser. With this particular update, using a script is necessary since the windowing mechanism for the current session becomes broken during the update. In the long run, it is useful to have a script-based update mechanism that can be used to update production repositories that aren’t easily accessed through the GemTools Client.

Preview GLASS.230-dkh.187

Since GLASS.230-dkh.183 I’ve made a handful of improvements that are worth trying out:

  • merge Pier-Model-lr.245, load Pier-Blog-lr.103.
  • OSTestRunner bugfixes.
  • debugIt implemented. debugIt opens a Debugger on the selected code, setting a breakpoint on the first statement.
  • exploreIt implemented. exploreIt opens a Chasing Inspector on the result of evaluating the selected code.
  • Remove MonticelloConfigurations as a required package.

If you’ve been following the mailing list, you will have noted that we’ve received a flurry of bug reports in the last week or so. I appreciate the bug reports, but because I intend to address a good number of them before the next beta update, the next update will be deferred for at least 2 more weeks.

1. Update GemTools Client: GemStone-dkh.355

If you choose to use Pharo as the basis of your GemTools Client, be sure to download the latest dev image as a starting point. As of today, is the latest dev image. If you choose to use Squeak as your GemTools Client, start with a basic 3.10 image like

sessiondef1Use the Universe Browser, select the GemTools-Client version 0.355 package (in Network category) and install it. Note that during the install using 3.10, you will be warned about an extension to OTToolset – is is safe to proceed.

Open a Workspace and evaluate the expression ‘OGLauncher open‘ and then edit the Glass session, inserting the login information that is relevant to your system – stoneHost, gemHost, stoneName and netLDI.

Login using the GemToolsLauncher and get ready to update the GLASS repository to GLASS.230-dkh.187. Note that during the login using Pharo, you will get a warning about using a deprecated #authorInitials: api – it is safe to proceed.

Even though the Class Browser and Monticello Browser are functional, I wouldn’t try to do too much work using the new GemTools Client and an old version of GLASS. For best results you should immediately update your GLASS repository.

I’ve used the new GemTools Client to upgrade GLASS.230-dkh.164 (corresponding to 2.3 release and the 1.0beta11 appliance) and GLASS.230-dkh.177 (corresonding to the 2.3.1 release) with good results.

Since I’m still actively working on the new tools, I don’t plan to publish a ‘one-click’ GemTools Client, until the rate of change has settled down.

2. Update GemStone Repository: GLASS.230-dkh.187

The following update script:

  1. Adds a method to SystemChangeAnnouncement.
  2. Turns off autoMigrate.
  3. Loads GLASS.230-dkh.187 from the GemSource repository.
  4. Sets autoMigrate back on.
  5. Performs a commit.

The code should be pasted into the workspace pane of a Gemstone-dkh.355 GemTools Launcher or run from a topaz session.

| httpRepository version rg |
    compileMethod: 'item: ignored' 
    category: 'accessing'.
MCPlatformSupport autoMigrate: false.
httpRepository := MCHttpRepository
    location: ''
    user: ''
    password: ''.
"pick up the GLASS repository if it's already
 in default repository group"
MCRepositoryGroup default repositoriesDo: [:rep |
    rep = httpRepository ifTrue: [ httpRepository := rep ]].
version := httpRepository
    loadVersionFromFileNamed: 'GLASS.230-dkh.187.mcz'.
version load.
rg := version workingCopy repositoryGroup.
rg addRepository: httpRepository.
MCPlatformSupport autoMigrate: true.
System commitTransaction.

If you’ve used the GemTools Launcher to run the update script you should logout and then log back in before continuing with your work. If you use topaz to update the repository, you need to remember to use a GemStone-dkh.355 GemTools Client to connect to your repository.

The GemTools Client is still in preview, so unless you are brave and/or curious, I’d recommend that you stick with a more stable version of GLASS.


[1] Photo by EricGjerde via Flickr (Creative Commons).


Check out the updated schedule.

Lucky James will be visiting Los Angeles in February. While he’s there he will be giving his Seaside Heresy talk to a couple groups (so far):

see his post for more details.

[1] Photo by riptheskull via Flickr (Creative Commons).

[Update 3/16/2009: see the post GLASS Beta Update: Cooking with GLASS (Preview) for the latest preview information].

Over the Christmas holidays my grandson Oscar and I got serious about tools.

Oscar learned how to use a drill and I built an OmniBrowser-based version of TestRunner to go along with the new GemTools Launcher.

GemTools Launcher updates

Gerhard Obermann has been busy working on the tools, too. He’s made a number of improvements to the Launcher:

  • Empty and Show Object log menu items added to the Doit button.
  • Added a Transaction button as a home for Commit and Abort.
  • Tweaked appearance in a number of places.

To pick up Gerhard’s changes use the Package Universe browser to load GemTools-Client version 0.335. If you haven’t already loaded the tools preview, follow these instructions.


OSTestRunner is a clone of the Squeak TestRunner with the functionality molded to fit within OmniBrowser. OSTestRunner can be run in Squeak, Pharo or GLASS. Click on the image below for a full-sized view of the Pharo version.


To use with Squeak or Pharo, check out the instructions in the announcement message.

To load into GLASS:

  1. Follow the instructions for bringing up the tools preview (make sure you load GemTools-Client version 0.335 on the Squeak side).
  2. Log into GemStone (using the new launcher) and load GLASS.230-dkh.183 from the GLASS project on GemSource, using the GLASS Monticello browser.
  3. Logout and log back in to make sure that the client is updated with the new server classes and enjoy.

I’m still tweaking OSTestRunner for GLASS roundtrip performance and I want to have better user feedback while the tests are running, but other than that I’m happy with the new OSTestRunner – hey all of the menus and buttons work on the new version!

Monday, I’ll dive back into MC2 and will beat on the new tools (tweaking here and there), so you can look forward to a general release of the GemTools towards the end of the month.

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 446 other subscribers


RSS GLASS updates

  • An error has occurred; the feed is probably down. Try again later.

RSS Metacello Updates

  • An error has occurred; the feed is probably down. Try again later.

RSS Twitterings

  • An error has occurred; the feed is probably down. Try again later.
January 2009