[Glass] Gemstone/S 3.7.0 / 3.7.1

Dale Henrichs dale.henrichs at gemtalksystems.com
Thu Apr 4 16:13:40 PDT 2024


***I inadvertantly left glass off my original reply ... resending to entire
list***
Marten,

TL;DR:
GsDevKit_home is not being maintained anymore.

The heir apparent GsDevKit_stones is available but is not quite a complete
replacement for the GsDevKit_home functionality... and is still under
development.

You can create/delete/start/stop stones and netldi with the current
GsDevKit_stones.

If you are brave/desperate and willing to give me constructive criticism
(see the missing pieces section below), send me an email and I'll provide
you with "getting started instructions".

I wish I could say that I have a replacement solution for you, but if you
look back through your emails, I sent mail 5 years ago that I was not going
to be able keep GsDevKit_home working without help ... GsDevKit_home relies
on a 32 bit Pharo image and support for 32 bit executables has been slowly
going away   ... a few developers have stepped up to help, but the effort
did not reach a satisfactory conclusion ...

3 years ago, I started work on superDoit[1] a scripting environment based
on 64bit GemStone.
I started superDoit with the intent that it would be a replacement for the
32 bit Pharo image in GsDevKit_home.

2 years ago, it became apparent that just replacing the 32 bit Pharo image
with a superDoit script wasn't going to be feasible, so I started work on
GsDevKit_stones[2].

GsDevKit_stones is much simpler and more flexible than GsDevKit_stones and
is "entirely" written in Smalltalk. It is based on a shared Rowan code
library. GsDevKit_stones also leverages the new FileSystem support that has
shown up in the recent releases of GemStone ...

Of course the bad news in this story is that very little of the "code base"
(mostly bash scripts) survives the transition from bash to smalltalk, so
there has been a lot of work to do to rewrite the GsDevKIt_home scripts in
superDoit.

Most of the functionality present in GsDevKit_homes has been implemented in
GsDevKit_stones scripts[3], but there are a few critical pieces still
missing:

   1. upgradeSeasideImage functionality
   2. a way to "attach" GsDevKit_stones to an existing GsDevKit_home
   environment
   3. a replacement for the tODE GUI
   4. reviewing/improving help messages for the scripts, including an eye
   toward consistency of terminology across the various scripts

The replacement for upgradeSeasideImage requires a fairly significant
refactoring of the code used in the existing scripts.

Attaching GsDevKit_stones should be a relatively easy project to put
together using existing scripts, but until GsDevKit_stones is close ready
for release it isn't necessary.

The ultimate replacement for the tODE GUI will be a combination of
Jadeite[4][5] and Rowan 3[6] ... Jadeite and Rowan are being developed
internally but are not quite ready for release.

With the release of 3.7.1, we shipped an experimental Rowan 3 extent that
is suitable for use with GsDevKit_stones scripts ... not production.

I personally have been using GsDevKit_stones in my work for the last year
and as I mentioned before, GsDevKit_stones is being used by smalltalkCI[7]
to drive the gemstone jobs for the last year as well ...

If you are hurt by the lack of the32 bit tODE GUI ... yes there are some
tODE GUI fans out there:). There is a rough workaround that might help ...
send me email for details.

Overall, I think that there are still some rough spots, and I can't promise
that GsDevKit_stones won't undergo some major changes before it's ready for
release...but it is the only alternative for you if you are experiencing 32
bit pharo image issues.

I wish I had a better answer, but I cannot afford to spend time trying to
fix 32 bit pharo related issues  ... I think my time is better spent doing
what I can to make progress on GsDevKit_stones ...

Dale
[1] https://github.com/dalehenrich/superDoit
[2] https://github.com/GsDevKit/GsDevKit_stones
[3] https://github.com/GsDevKit/GsDevKit_stones/tree/v2/bin
[4] https://github.com/GemTalk/JadeiteForPharo
[5] https://github.com/GemTalk/Jadeite
[6] https://github.com/GemTalk/Rowan/tree/masterV3.2
[7] https://github.com/hpi-swa/smalltalkCI

On Wed, Apr 3, 2024 at 2:16 PM Marten Felddtmann via Glass <
glass at lists.gemtalksystems.com> wrote:

> Hello,
>
> I would like to know, if 3.7.1 is supported by GsDevKit_home ...
>
> createStone gc371 3.7.1 - does not work and throws errors:
>
> =================
>   GsDevKit script: startStone -b test371
>              path: /datadisk/GsDevKit_home/bin/startStone
> =================
> /datadisk/GsDevKit_home/server/stones/test371/product/bin/waitstone[Info]:
> GemStone version '3.7.1'
> Network service
> !#dir:/datadisk/GsDevKit_home/server/stones/test371/logs#log:%N%P.log#server!test371
> is ready.
> stone test371 already running, to restart use -r option :: startStone -b
> test371
> Install tODE on stone: test371
> [02.04.2024 19:33:10.432 CEST]
>  gci login: currSession 1  rpc gem processId 133239 socket 8
> [02.04.2024 19:33:10.506 CEST]
>  gci login: currSession 1  rpc gem processId 133245 socket 8
> Error: while installing tODE on server: 'a ImproperOperation occurred
> (error 2085), Expected nil to be a Boolean.'
> TDTopezGemStoneClient(Object)>>error:
> TDTopezGemStoneClient>>installTodeBlock: in Block: [ :ex | ...
> BlockClosure>>cull:
> MethodContext(ContextPart)>>handleSignal: in Block: [ self
> exceptionHandlerBlock cull: exception ]
> BlockClosure>>ensure:
> MethodContext(ContextPart)>>handleSignal:
> GsErrorNotification(Exception)>>signal
> TodeInstallSession(TodeSession)>>signalServerError:
> TodeInstallSession(GciSession)>>getNbResult
> TodeInstallSession(GciSession)>>getNbResult
> TodeInstallSession(GciSession)>>getNbResultAsOop
> TodeInstallSession(GciSession)>>rawExecuteStringNB:envId: in Block: [ ...
> BlockClosure>>ensure:
> Cursor>>showWhile:
> TodeInstallSession(GciSession)>>rawExecuteStringNB:envId:
> TodeInstallSession(GciSession)>>executeStringNB:envId:
> TDTopezGemStoneClient>>installTode: in Block: [ :installSession | ...
> TDTopezGemStoneClient>>installTodeBlock: in Block: [ installBlock value:
> installSession ]
> BlockClosure>>ensure:
> TDTopezGemStoneClient>>installTodeBlock: in Block: installTodeBlock:
> installBlock...
> BlockClosure>>on:do:
> TDTopezGemStoneClient>>installTodeBlock:
> TDTopezGemStoneClient>>installTode:
> TDShell>>executeLoadServer: in Block: [ ^ self topezClient installTode:
> options ]
> Dictionary>>at:ifPresent:ifAbsent:
> Dictionary>>at:ifAbsent:ifPresent:
> TDShell>>executeLoadServer:
> TDShell>>executeBuiltIn:
> TDShell>>evaluateCommand:batchMode:
> TDShell>>evaluate:batchMode: in Block: [ :command | result := self
> evaluateCommand: comma...etc...
> Error on or near line 99 :: devKitCommandLine loadTode test371 ::
> devKitCommandLine loadTode test371
> Error on or near line 55 :: todeLoad test371 :: todeLoad test371
> Error on or near line 220 :: createStone test371 3.7.1 :: createStone
> test371 3.7.1
>
>
>
>
>
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> https://lists.gemtalksystems.com/mailman/listinfo/glass
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/archives/glass/attachments/20240404/9025a14f/attachment.htm>


More information about the Glass mailing list