1. Release Notes for GemBuilder for Smalltalk 8.7

GemBuilderfor Smalltalk (GBS) version 8.7 is a new version of the GemBuilder for Smalltalk product, adding support for GemStone/S 64 Bit v3.7 and fixing a number of bugs. Please take time to read through these release notes before installing or upgrading, to acquaint yourself with the changes.

These release notes provide changes between the previous version of GBS, version 8.6, and version 8.7. If you are upgrading from a version prior to 8.6, please also review the release notes for each intermediate release between your version and 8.7, to see the full set of changes.

This release supports GemStone/S 64 Bit only, with VisualWorks 9.1.1. GBS 8.7 does not support 32-bit GemStone/S, nor VAST platform (VA Smalltalk).

To install GemBuilder for Smalltalk 8.7, follow the instructions in the GemBuilder for Smalltalk Installation Guide for version 8.7.

Supported Platforms and Versions

The following tables describe the client Smalltalk versions and platforms supported by GBS 8.7, and the GemStone server product shared library versions that can be used with each.

For more details, including the specific required client libraries for each server product and versions, refer to the GemBuilder for Smalltalk Installation Guide for version 8.7.

Table 1  Supported GemStone/S 64 Bit Server versions

 

VW 9.1.1
32-bit

VW 9.1.1
64 bit

Windows 10

3.7, 3.6.6

3.7, 3.6.6

Ubuntu Linux 22.04

3.7, 3.6.6

3.7, 3.6.6

Ubuntu Linux 20.04

3.7, 3.6.6

3.7, 3.6.6

Red Hat Linux ES 9.2

3.7, 3.6.6

3.7, 3.6.6

Red Hat Linux ES 8.5

3.7, 3.6.6

3.7, 3.6.6

Red Hat Linux ES 7.9

3.7, 3.6.6

3.7, 3.6.6

Changes and New Features

The following changes are in version 8.7:

Support for GemStone/S 64 Bit v3.7

Customer-defined special classes

GBS v8.7 handles the new customer-defined special classes introduced in GemStone/S 64 Bit v3.7. Note that these specials cannot be replicated, but inspectors can display them as server objects.

ReadByteStream and Stream replication

The class GbsReadByteStream has been added, to support replication of instance of the ReadByteStream class introduced in GemStone/S 64 Bit v3.7.

Note that replication of PositionableStreamPortable classes is not supported. Stream classes will be PositionableStreamLegacy by default in applications with a long upgrade history, and PositionalStreamPortable in applications that started from fresh extents in v3.0 or later.

Bugs Fixed

The following bugs have been fixed in version 8.7.

Resolution of Class names when the Name exists in multiple SymbolDictionaries

The GemStone server may have the multiple classes with the same name, existing in different SymbolDictionaries.

Connector resolution at login did not respect target dictionary

When resolving class connectors, only the class name was used; the dictionary argument was ignored. If there were multiple classes with the same name in the server image, this could result in mapping to the wrong class. (#50536).

Find class could not find a class if a class with the same name is an earlier SymbolDictionary

If different classes with the same name are in different server SymbolDictionaries, only the first one in resolution order could be found using Find > Find class. Now, the result of Find Class include the SymbolDictionary if the class name appears more than once. (#47723)

keyboard shortcuts for GS-Print it, GS-Inspect it, and GS-Debug did not operate correctly

The keyboard shortcuts for GemStone operations: GS-Print it (control-shift-P), GS-Inspect it (control-shift-Q) and GS-Debug it (control-shift-B), triggered the operation twice. (#50530)

Risk of image hang when using deprecated server methods

When invoking deprecated server methods with Deprecated set to doErrorOnDeprecated, there is a risk that the image may hang. (#49604)

Replicating a DateTime to a TimeStamp corrupts the client map

When a server DateTime is replicated as a client TimeStamp, it does a one-way become after being added to the identity-keyed clientMap, thus causing the clientMap to be corrupted. This may not cause problems, but can be detected by audit; and some operations will fail. (#49336)