Planet Squeak Code

blogs about Squeak, Pharo, Croquet and family
planet squeak - planet squeak es - planet squeak jp - planet croquet - planet squeak code - planet smalltalk

November 19, 2018

source.squeak.org

SUnit-eem.113

Add deny:equals: to complement assert:equals:

by Eliot Miranda (eliot.miranda@gmail.com) at November 19, 2018 05:53 PM

squeaksource.com

Raven-rww.25

refactor

by Robert Withers (robert.withers@protonmail.com) at November 19, 2018 01:42 PM

Raven-rww.25

refactor

by Alan Pinch (alan.c.pinch@gmail.com) at November 19, 2018 01:42 PM

ParrotTalk-rww.23

added and integrated ParrotTalk-v3.7, with a SessionProtocolSelector that distinguishes between v3.6 and v3.7, then manipulates the stack to install the correct SessionOperations for each version.

by Alan Pinch (alan.c.pinch@gmail.com) at November 19, 2018 01:40 PM

ParrotTalk-rww.23

added and integrated ParrotTalk-v3.7, with a SessionProtocolSelector that distinguishes between v3.6 and v3.7, then manipulates the stack to install the correct SessionOperations for each version.

by Robert Withers (robert.withers@protonmail.com) at November 19, 2018 01:40 PM

November 18, 2018

squeaksource.com

Chronology-Core-dtl.32

Fix slip in DateAndTime class>>ticks:offset:, do not ignore the offset value.

by Dave Lewis (lewis@mail.msen.com) at November 18, 2018 03:24 PM

JSON-edc.41

completing how to read a Json object

November 18, 2018 11:19 AM

JSON-edc.40

Added how to read a Json object

November 18, 2018 11:15 AM

WASM-edc.24

empty log message

November 18, 2018 10:59 AM

source.squeak.org

Chronology-Tests-cmm.11

New test to expose critical bug in the proposed UTCDateAndTime.

by Chris Muller (ma.chris.m@gmail.com) at November 18, 2018 04:40 AM

November 17, 2018

squeaksource.com

Ma-Installer-Core-cmm.104

OSProcess moved to be as a dependency of #base (a.k.a., Ma-Core) since it has become generally useful at that level (e.g., DirectoryEntryFile>>#linuxPermissions).

by Chris Muller (ma.chris.m@gmail.com) at November 17, 2018 07:24 PM

Raven-rww.24

switched to using doesFrameEmbedding for thunks.

by Alan Pinch (alan.c.pinch@gmail.com) at November 17, 2018 02:59 PM

Raven-rww.24

switched to using doesFrameEmbedding for thunks.

by Robert Withers (robert.withers@protonmail.com) at November 17, 2018 02:59 PM

ParrotTalk-rww.22

switched thunk doesPop and doesPush over to doesFrameEmbedding, a better description of how frames are nested than pop/push, protocol used with the stack thunks.

by Alan Pinch (alan.c.pinch@gmail.com) at November 17, 2018 02:57 PM

ParrotTalk-rww.22

switched thunk doesPop and doesPush over to doesFrameEmbedding, a better description of how frames are nested than pop/push, protocol used with the stack thunks.

by Robert Withers (robert.withers@protonmail.com) at November 17, 2018 02:57 PM

November 16, 2018

source.squeak.org

System-cmm.1044

Utility methods for determining how much RAM is used, and how much is available to the running image.

by Chris Muller (ma.chris.m@gmail.com) at November 16, 2018 11:53 PM

squeaksource.com

Raven-rww.23

refactored ParrotThunkMaker

by Robert Withers (robert.withers@protonmail.com) at November 16, 2018 05:04 PM

Raven-rww.23

refactored ParrotThunkMaker

by Alan Pinch (alan.c.pinch@gmail.com) at November 16, 2018 05:04 PM

ParrotTalk-rww.21

added default pop substqack return in #popStackUpTo:

by Alan Pinch (alan.c.pinch@gmail.com) at November 16, 2018 05:03 PM

ParrotTalk-rww.21

added default pop substqack return in #popStackUpTo:

by Robert Withers (robert.withers@protonmail.com) at November 16, 2018 05:03 PM

source.squeak.org

Collections-cbc.812

Make intervals that are #= have the same hash.
Also, slight adjustment to #=.

by Chris Cunningham (cunningham.cb@gmail.com) at November 16, 2018 06:07 AM

Collections-cbc.810

Do NOT move to trunk!
Various option for fixing the internval hash issue related to collectionsTests cbc.296.

Some explanation to go to mailing list - this is so interested folks can try out the code.

by Chris Cunningham (cunningham.cb@gmail.com) at November 16, 2018 05:55 AM

CollectionsTests-cbc.296

Test for #hash and #= bugs. In anticipation of fixing these.

by Chris Cunningham (cunningham.cb@gmail.com) at November 16, 2018 05:47 AM

squeaksource.com

Raven-rww.22

Due to the addition of the SendFramesBuffer, replacing the BufferListLayer, now a fully formed stack can be created on the call side, with the RavenTerminal pushed on top of the Session, still supporting early message sending prior to full connection. On the answer side, the creating of the scope creates the RaveenTerminal but it is not yet pushed. That occurs in reactToSession:, which ensures the head of the stack is not the RavenTerminal thunk, priot to pushing on top of the Session.

by Alan Pinch (alan.c.pinch@gmail.com) at November 16, 2018 01:39 AM

Raven-rww.22

Due to the addition of the SendFramesBuffer, replacing the BufferListLayer, now a fully formed stack can be created on the call side, with the RavenTerminal pushed on top of the Session, still supporting early message sending prior to full connection. On the answer side, the creating of the scope creates the RaveenTerminal but it is not yet pushed. That occurs in reactToSession:, which ensures the head of the stack is not the RavenTerminal thunk, priot to pushing on top of the Session.

by Robert Withers (robert.withers@protonmail.com) at November 16, 2018 01:39 AM

ParrotTalk-rww.20

Refactored the stack to use a SendFramesBuffer thunk so mjessages can be sent to the connection immediately and are buffered until connection completes. Due to the possibility that there are thunks above the session, as is now the case with Raven, added behavior to #popStackUpTo: to pop a substack of thunks to a specified thunk, as well as a #pushStack:, using #reverse, to push a substack of thunks onto the receiving stack. This behavior allows a stack gaining crypto thunks to pop stack to the session, then pop the SendFramesBuffer thunk, then add the crypto thunks (immigration, cipher, customs, encoder) then push the substack including session back onto the subject stack and then flush the buffer thunk downcall: through the session. Renamed the FrameBuffer to ReceivingFrameBuffer.

by Alan Pinch (alan.c.pinch@gmail.com) at November 16, 2018 01:33 AM

ParrotTalk-rww.20

Refactored the stack to use a SendFramesBuffer thunk so mjessages can be sent to the connection immediately and are buffered until connection completes. Due to the possibility that there are thunks above the session, as is now the case with Raven, added behavior to #popStackUpTo: to pop a substack of thunks to a specified thunk, as well as a #pushStack:, using #reverse, to push a substack of thunks onto the receiving stack. This behavior allows a stack gaining crypto thunks to pop stack to the session, then pop the SendFramesBuffer thunk, then add the crypto thunks (immigration, cipher, customs, encoder) then push the substack including session back onto the subject stack and then flush the buffer thunk downcall: through the session. Renamed the FrameBuffer to ReceivingFrameBuffer.

by Robert Withers (robert.withers@protonmail.com) at November 16, 2018 01:33 AM

November 15, 2018

source.squeak.org

MorphicTests-mt.48

Adds a test for morph border initialization

by Marcel Taeumel (marcel.taeumel@hpi.uni-potsdam.de) at November 15, 2018 11:16 AM

Morphic-mt.1467

Fixes small bug in Morph border initialization.

by Marcel Taeumel (marcel.taeumel@hpi.uni-potsdam.de) at November 15, 2018 11:14 AM

squeaksource.com

System.V3-dtl.1045

Name: System-eem.1045
Author: eem
Time: 31 October 2018, 3:38:52.935624 pm
UUID: aece8105-e853-4c18-a38e-6872b4cd1440
Ancestors: System-fn.1044

Sort by name within bins when printing the results of a SpaceTally.

by Dave Lewis (lewis@mail.msen.com) at November 15, 2018 03:36 AM

System.V3-dtl.1044

Name: System-fn.1044
Author: fn
Time: 15 October 2018, 10:11:52.454872 am
UUID: 1339fe15-c8ba-4e80-86ff-eb58ad8ffb56
Ancestors: System-pre.1043

Fixes dot inconsistency.

by Dave Lewis (lewis@mail.msen.com) at November 15, 2018 03:34 AM

Collections.V3-dtl.807

Name: Collections-ul.807
Author: ul
Time: 22 October 2018, 9:27:33.883624 pm
UUID: c2efe147-56f8-43ff-a08b-f42390390418
Ancestors: Collections-eem.806

- introduced KeyedSet >> #put: which works like #add:, but replaces existing objects with the argument as Dictionary's #at:put: does
- unified the usage of primitiveStringHash by adding it to ByteSymbol and by using String's implementation as fallback, which works for ByteArrays too

by Dave Lewis (lewis@mail.msen.com) at November 15, 2018 02:25 AM

Compiler.V3-dtl.395

Name: Compiler-eem.395
Author: eem
Time: 15 October 2018, 12:37:16.203042 pm
UUID: 2f7c8f3a-4e2d-413b-8651-b05b5683f89d
Ancestors: Compiler-eem.394

Implement markerOrNil: for the SistaV1 bytecode set and firm up both implementations so that e.g.
aMethod
self fooClass new
is not interpreted as a marker method (because #new is a special selector and hence does not cayse a literal to be allocated).

by Dave Lewis (lewis@mail.msen.com) at November 15, 2018 02:22 AM

November 14, 2018

source.squeak.org

Monticello-pre.689

Fixes a minor hick-up from the refactoring of Array>>#with* to brace notation with one point missing in one of the array.

Also categorizes a number of previously uncategorized messages.

by Patrick Rein (patrick.rein@gmail.com) at November 14, 2018 02:41 PM

Installer-Core-dtl.425

If an explicit MC version is specified for Installer, load that version. Otherwise load the most recent version of the applicable package or package branch.

Previously, in the case of a repository containing both 'Chronology-Core-dtl.3' and 'Chronology-Core-dtl.30', the following will incorrectly load version 30 rather than version 3.

(Installer ss project: 'UTCDateAndTime') install: 'Chronology-Core-dtl.3'

With this update, the correct version is loaded when explicitly specified, otherwise the most recent version of Chronology-Core (or branch therof) will be loaded.

Unit test coverage is in Tests-dtl.403.

by David T. Lewis (lewis@mail.msen.com) at November 14, 2018 01:05 AM

Installer-Core-cmm.427

If an explicit MC version is specified for Installer, load that version. Otherwise load the most recent version of the applicable package or package branch.

by David T. Lewis (lewis@mail.msen.com) at November 14, 2018 01:03 AM

Installer-Core-dtl.426

If an explicit MC version is specified for Installer, load that version. Otherwise load the most recent version of the applicable package or package branch.

Previously, in the case of a repository containing both 'Chronology-Core-dtl.3' and 'Chronology-Core-dtl.30', the following will incorrectly load version 30 rather than version 3.

(Installer ss project: 'UTCDateAndTime') install: 'Chronology-Core-dtl.3'

With this update, the correct version is loaded when explicitly specified, otherwise the most recent version of Chronology-Core (or branch therof) will be loaded.

by David T. Lewis (lewis@mail.msen.com) at November 14, 2018 01:01 AM

Installer-Core-dtl.425

In the case of a repository containing both 'Chronology-Core-dtl.3' and
'Chronology-Core-dtl.30', the following will incorrectly load version 30 rather
than version 3.

(Installer ss project: 'UTCDateAndTime') install: 'Chronology-Core-dtl.3'

A workaround is to reverse the order of sorting in InstallerMonticello>>mcSortFileBlock, such that 'Chronology-Core-dtl.3' will be detected before 'Chronology-Core-dtl.30' in InstallerMonticello>>mcThing.

A possibly better fix is to change InstallerMonticello>>mcDetectFileBlock: to do string equality checks rather than #beginsWith: comparisons. This appears to be correct, but might have side effects, since I do not know the original rationale for using #beginsWith:.

This change implements the possibly better fix.

by David T. Lewis (lewis@mail.msen.com) at November 14, 2018 01:00 AM

November 13, 2018

source.squeak.org

Monticello-ul.688

Turn MCDefinitionIndex into a thin wrapper over a KeyedSet and speed it up part #2:

- removed migration code
- categorized all methods
- made use of #definitionsDo:

Bonus:
- replaced uses of Array >> #with:* with brace arrays throughout the package
- replaced Array new with Array empty where possible
- sped up MCScanner a bit

by Levente Uzonyi (leves@elte.hu) at November 13, 2018 11:16 PM

Monticello-ul.687

Turn MCDefinitionIndex into a thin wrapper over a KeyedSet and speed it up part #1:

- class side #definitions: allocates a large enough collection to hold the elements in its argument
- introduced #definitionsDo: to avoid unnecessary collection creation when enumerating the definitions
- removed unnecessary class-side #new
- added code which works when the value of definitions is a KeyedSet
- postscript migrates all instances to use KeyedSet for definitions

by Levente Uzonyi (leves@elte.hu) at November 13, 2018 11:14 PM

SMLoader-cmm.92

Begin to phase out 'published' flag unless we can remember what the original purpose of this level of detail in the model was for.

by Chris Muller (ma.chris.m@gmail.com) at November 13, 2018 09:34 PM

SMLoader-cmm.89

Make SMReleaseBrowser support a multi-selection of Squeak Version categories, not just one. The SMServer will still pick just one to be the "primary" Squeak version, which is a questionable behavior.

by Chris Muller (ma.chris.m@gmail.com) at November 13, 2018 09:33 PM

SMLoader-cmm.93

- Allow releases which are not necessarily published to be selected when the UI selection was at the package level.
- Fix the problem of Release scripts seemingly not updating, due to not refreshing the local cache after uploading the script to the server.

by Chris Muller (ma.chris.m@gmail.com) at November 13, 2018 03:32 AM

November 12, 2018

squeaksource.com

Ma-Client-Server-Core-cmm.286

Update for new OSProcess convenience method.

by Chris Muller (ma.chris.m@gmail.com) at November 12, 2018 11:09 PM

source.squeak.org

SqueakSource-cmm.1120

- Replace missing method which broke 'browse revisions'. OOPS!!!
- Improved handling and logging of failed SSFilesystem saves.

by Chris Muller (ma.chris.m@gmail.com) at November 12, 2018 10:28 PM

Kernel-eem.1195

Eliminate a confusing shadowing in Context>>send:super:numArgs:

by Eliot Miranda (eliot.miranda@gmail.com) at November 12, 2018 03:06 AM

squeaksource.com

Balloon3D-Plugins-eem.15

Simplify b3dInitializeRasterizerState, reducing the number of primitiveFailed calls and eliminating cCode:'s. Make B3D_NO_ERROR a class var.

by Eliot Miranda (eliot.miranda@gmail.com) at November 12, 2018 01:35 AM

November 11, 2018

source.squeak.org

Kernel-eem.1194

ensureClassPool is /much/ nicer to use if it answers the class pool

by Eliot Miranda (eliot.miranda@gmail.com) at November 11, 2018 11:08 PM

squeaksource.com

Chronology-Core-dtl.31

Let DateAndTime>>asSeconds answer an integer count of seconds, and provide #asExactSeconds to answer seconds since Squeak epoch with available precision retained. An integer seconds count for #asSeconds is consistent with expected usage, and #asExactSeconds represents exact duration as measured in seconds. Thus:

| aDateAndTime |
aDateAndTime := DateAndTime now.
aDateAndTime = (DateAndTime fromSeconds: aDateAndTime asExactSeconds). "==> true"
aDateAndTime = (DateAndTime fromSeconds: aDateAndTime asSeconds). "==> false"

Also remove unreferenced instance variables from ChronologyConstants. These may have been left over from an early refactoring but have been in Squeak since early days. Remove them now.

by Dave Lewis (lewis@mail.msen.com) at November 11, 2018 10:52 PM

November 10, 2018

squeaksource.com

BabySRE2018-hjh.18

CustomHelp subclass: #SRESqueakReverseEngineering

November 10, 2018 05:07 PM

source.squeak.org

System-eem.1046

Add accessors for the sendMouseWheelEvents flag that instructs the VM to send mouse wheel events as mouse wheel events, not keynboard arrow keys. Needs an up-to-date VM (and on WIndows needs the VM code to be written).

Fix a typo

by Eliot Miranda (eliot.miranda@gmail.com) at November 10, 2018 04:46 AM

SystemReporter-eem.40

Include description of the flags in VM parameter 65.

by Eliot Miranda (eliot.miranda@gmail.com) at November 10, 2018 04:43 AM

VMMaker.oscog-eem.2484

And sendWheelEvents must be global (not in VM's vars struct).

by Eliot Miranda (eliot.miranda@gmail.com) at November 10, 2018 03:21 AM

VMMaker.oscog-eem.2483

Add support for a sendWheelEvents flag that persists in the image header and is settable via vmParameterAt: 48 put: ...32...

by Eliot Miranda (eliot.miranda@gmail.com) at November 10, 2018 03:09 AM

MonticelloConfigurations-dtl.154

Allow an updater to read its update maps from a local directory repository. Previously only HTTP repositories were supported. A local repository may be useful for testing an update stream prior to publishing update maps to a public location.

by David T. Lewis (lewis@mail.msen.com) at November 10, 2018 12:52 AM

Monticello-dtl.685

MCVersionInspector has an 'Adopt' button to allow the selected version to be added to the parent or parents of a working version. Provide a 'Reparent' button to allow a selected version to become the sole parent of a working version. Adjust defaultExtent to accomodate the additional button.

Motivated by the exercise of preparing to copy Chronology-Core versions from one repository into equivalent Chronology-Core.UTC versions in another repository (possibly trunk). In this scenario, it is helpful to be able to reparent a newly loaded Chronology-Core version from one repository to be the child of the last saved Chronology-Core.UTC version in another. The '.UTC' suffix in this case is intended to branch those versions from the trunk update stream, allowing later merge to trunk with branch history preserved.

by David T. Lewis (lewis@mail.msen.com) at November 10, 2018 12:05 AM

Monticello-dtl.686

Merge Monticello-dtl.685 from inbox with Monticello-eem.685 in trunk.

by David T. Lewis (lewis@mail.msen.com) at November 10, 2018 12:04 AM

November 09, 2018

source.squeak.org

SqueakSource-cmm.1119

Reviewed the production image serving squeaksource.com to identify any remaining fixes not already applied in this image. Found just two:
- SSImagePersistence (which is no longer used or needed) should be sure to save the image from the UI process, and write an appropriate entry to the log.
- Start and stop the StatisticsThread when starting/stopping the server.

by Chris Muller (ma.chris.m@gmail.com) at November 09, 2018 10:50 PM

SqueakSource-cmm.1118

Reviewed the production image serving squeaksource.com to identify any remaining fixes not already applied in this image. Found just two:
- SSImagePersistence (which is no longer used or needed) should be sure to save the image from the UI process, and write an appropriate entry to the log.
- Start and stop the StatisticsThread when starting/stopping the server.

by Chris Muller (ma.chris.m@gmail.com) at November 09, 2018 10:48 PM

Installer-Core-cmm.427

If an explicit MC version is specified for Installer, load that version. Otherwise load the most recent version of the applicable package or package branch.

by Chris Muller (ma.chris.m@gmail.com) at November 09, 2018 07:57 PM

Installer-Core-cmm.427

If an explicit MC version is specified for Installer, load that version. Otherwise load the most recent version of the applicable package or package branch.

by Chris Muller (ma.chris.m@gmail.com) at November 09, 2018 07:46 PM

Installer-Core-dtl.426

If an explicit MC version is specified for Installer, load that version. Otherwise load the most recent version of the applicable package or package branch.

Previously, in the case of a repository containing both 'Chronology-Core-dtl.3' and 'Chronology-Core-dtl.30', the following will incorrectly load version 30 rather than version 3.

(Installer ss project: 'UTCDateAndTime') install: 'Chronology-Core-dtl.3'

With this update, the correct version is loaded when explicitly specified, otherwise the most recent version of Chronology-Core (or branch therof) will be loaded.

November 09, 2018 01:14 AM

November 08, 2018

source.squeak.org

VMMaker.oscog-eem.2482

Slang
Fix mis-handling of trailing boolean on inlining in conditionals when trailing boolean would cause the conditional to be taken. e.g. in
self tryCopyingBitsQuickly ifTrue:
[^nil].
tryCopyingBitsQuickly ends with ^true but the in lining code handled the trailing ^true by taking the fall-through path past the ^nil.

Comnsequently fix a regression in the BitBlt primitive caused by cleanups in VMMaker.oscog-eem.2461.

by Eliot Miranda (eliot.miranda@gmail.com) at November 08, 2018 08:50 PM

SqueakSource-cmm.1117

- A significant simplification: Personal SqueakSource no longer insists on running as user 'squeaksource', but simply as whatever user is logged in during the installation.
This makes sense since this is "Personal SqueakSource". It greatly simplifies the installation scripts and reduces user impact.
It does requires the scripts to be generated at runtime, however. So the 'exportscripts' command is now part of the setup, however since that requires Squeak, 'configsys' must be run before that to install the squeak.conf file to enable Squeak to run. So, we now only export #configsys and #exportscripts.
- Old repair scripts moved to a deprecated category so scripts won't be generated for them. They're useful examples of first-class Repair's, but no longer needed.
- Updated the adminEmail to today's box-admins address.

by Chris Muller (ma.chris.m@gmail.com) at November 08, 2018 08:47 PM

SqueakSource-cmm.1116

- Set background process priorities explicitly instead of relative to #activePriority, so it can be understood at compile time.
- Updates to configsys script for new Squeak VM.
- Database-based repositories keep their "MC bytes" in with the rest of the database objects, so they don't need to #save again after having committed the updates to their domain model associated with committing a new MC Version.
This should fix the timeouts we've been experiencing on source.squeak.org especially with the large VMMaker packages.
- Fix for deploying a new Personal SqueakSource when no legacy data.obj is provided (SSRepository class>>#ensureRepositoryIfNoneCreateNewNamed:administeredBy: and SSRepository>>#initialize).

by Chris Muller (ma.chris.m@gmail.com) at November 08, 2018 08:46 PM

squeaksource.com

Ma-Core-cmm.311

- Feature for creating zips. Use ZipArchive>>#maAddFile:as: instead of #addFile:as:, and the original Linux permissions of the zipped files will be preserved when they're unzipped in the target.
Making this feature required being able to get the Linux permissions of the file, which I don't think is possible through the Squeak VM, so I use a new method, DirectoryEntryFile>>#lsOutput, which uses a new convenience method on OSProcess to scrape from an ls -l listing. Kinda crazy, but it works.

by Chris Muller (ma.chris.m@gmail.com) at November 08, 2018 08:03 PM

source.squeak.org

Installer-Core-dtl.425

In the case of a repository containing both 'Chronology-Core-dtl.3' and
'Chronology-Core-dtl.30', the following will incorrectly load version 30 rather
than version 3.

(Installer ss project: 'UTCDateAndTime') install: 'Chronology-Core-dtl.3'

A workaround is to reverse the order of sorting in InstallerMonticello>>mcSortFileBlock, such that 'Chronology-Core-dtl.3' will be detected before 'Chronology-Core-dtl.30' in InstallerMonticello>>mcThing.

A possibly better fix is to change InstallerMonticello>>mcDetectFileBlock: to do string equality checks rather than #beginsWith: comparisons. This appears to be correct, but might have side effects, since I do not know the original rationale for using #beginsWith:.

This change implements the possibly better fix.

November 08, 2018 02:24 AM

November 07, 2018

source.squeak.org

Morphic-mva.1465

Convert Ctrl-left/right to mouse wheel events to fix
"VM sending keystrokes on mouse-wheel?"
http://forum.world.st/VM-sending-keystrokes-on-mouse-wheel-td5088162.html
using Tom Beckmann's idea.

Use the generated wheeelLeft and wheelRight
events in ScrollPane to scroll sideways if horizontal
scrollbars are not suppressed by
alwaysHideHScrollbar preference.

November 07, 2018 08:33 PM

Monticello-eem.685

Robustness for missing times in time stamps, needed to see the history of certain Balloon packages.

by Eliot Miranda (eliot.miranda@gmail.com) at November 07, 2018 02:35 AM

squeaksource.com

Balloon3D-Math-eem.5

Replace deprecated clone with shallowCopy.

by Eliot Miranda (eliot.miranda@gmail.com) at November 07, 2018 01:24 AM

Balloon3D-Kernel-eem.12

Replace deprecated clone with shallowCopy

by Eliot Miranda (eliot.miranda@gmail.com) at November 07, 2018 01:22 AM

November 06, 2018

source.squeak.org

MonticelloConfigurations-dtl.154

Allow an updater to read its update maps from a local directory repository. Previously only HTTP repositories were supported. A local repository may be useful for testing an update stream prior to publishing update maps to a public location.

November 06, 2018 06:05 PM

Monticello-dtl.685

MCVersionInspector has an 'Adopt' button to allow the selected version to be added to the parent or parents of a working version. Provide a 'Reparent' button to allow a selected version to become the sole parent of a working version. Adjust defaultExtent to accomodate the additional button.

Motivated by the exercise of preparing to copy Chronology-Core versions from one repository into equivalent Chronology-Core.UTC versions in another repository (possibly trunk). In this scenario, it is helpful to be able to reparent a newly loaded Chronology-Core version from one repository to be the child of the last saved Chronology-Core.UTC version in another. The '.UTC' suffix in this case is intended to branch those versions from the trunk update stream, allowing later merge to trunk with branch history preserved.

by David T. Lewis (lewis@mail.msen.com) at November 06, 2018 03:52 AM

November 05, 2018

source.squeak.org

VMMaker.oscog-eem.2481

ThreadedFFIPlugin:
Fix a bug passing floats on the stack on X64. The original code passed stacked floats as doubles.
Mark ffiPush*Float:in: as <inline: #always> since they are inined and this eliminates unused functions.
Add some commentary to stack alignment methods to aid locating associated defines.

by Eliot Miranda (eliot.miranda@gmail.com) at November 05, 2018 06:32 PM

November 04, 2018

source.squeak.org

Collections-kfr.812

Print the matrix so one can see the rows and columns

November 04, 2018 03:41 PM

November 03, 2018

squeaksource.com

BabySRE2018-hjh.17

Replace #asOop with #identityHash

November 03, 2018 08:36 AM

November 01, 2018

source.squeak.org

60Deprecated-pre.26

Moves deprecated methods from 53Deprecated to 60Deprecated:

Deprecates two drag and drop menu methods. One broke with the naming convention for menu item selectors and the other is unnecessary as the superclass already implements the same behavior.

Deprecates two DummyUIManager methods which are not provided anymore by UIManagers

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 03:37 PM

MorphicExtras-pre.247

Replaces a deprecated menu item selector with one which sticks to the pattern for menu item selectors.

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 02:57 PM

EToys-pre.338

Migrates methods to use the menu method selector which sticks to the existing selector pattern

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 02:51 PM

53Deprecated-pre.2

Deprecates two drag and drop menu methods. One broke with the naming convention for menu item selectors and the other is unnecessary as the superclass already implements the same behavior.

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 02:49 PM

Morphic-pre.1466

Changes the drag and drop menu boxes to reflect the migration started long ago from one drag and drop setting to two settings, one for drag and one for drop. Solves the DockingBar context menu confusion.

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 02:44 PM

53Deprecated-pre.1

Deprecates two DummyUIManager methods which are not provided anymore by UIManagers

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 02:32 PM

ToolBuilder-Tests-pre.3

Adds a test checking for classes handling ProvideAnswerNotification although the UIManager should be responsible.

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 02:20 PM

CommandLine-pre.11

Updates the DummyUIManager to answer the ProvideAnswerNotification

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 01:57 PM

Morphic-pre.1465

Removes ProvideAnswerNotification code from several Morphs as it is now handled in the corresponding UIManager

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 01:51 PM

ToolBuilder-Morphic-pre.221

Refactors the MorphicUIManager to capture and use the ProvideAnswerNotification

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 01:48 PM

ToolBuilder-MVC-pre.54

Refactors the MVCUIManager to capture and use the ProvideAnswerNotification

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 01:48 PM

ToolBuilder-Kernel-pre.123

Updates the comments of the UIManager methods and adds a utility method to make use of the ProvideAnswerNotification mechanism.

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 01:44 PM

KernelTests-pre.352

Adds tests for the valueSupplyingAnswer: protocol i n preparation of the new ProvideAnswerNotification handling.

by Patrick Rein (patrick.rein@gmail.com) at November 01, 2018 01:39 PM

October 31, 2018

source.squeak.org

System-eem.1045

Sort by name within bins when printing the results of a SpaceTally.

by Eliot Miranda (eliot.miranda@gmail.com) at October 31, 2018 10:38 PM

SystemReporter-eem.39

Add (how) "To Build A Similar Virtual Machine" information to the VM General tab in the SystemReporter.

by Eliot Miranda (eliot.miranda@gmail.com) at October 31, 2018 09:42 PM

squeaksource.com

Magma-Client-cmm.736

Deprecation update.

by Chris Muller (ma.chris.m@gmail.com) at October 31, 2018 08:42 PM

Magma-Server-cmm.516

Deprecation update.

by Chris Muller (ma.chris.m@gmail.com) at October 31, 2018 08:42 PM

source.squeak.org

Collections-eem.811

Use the integerAt[Put] primitive to implement signedByteAt:[put:]

by Eliot Miranda (eliot.miranda@gmail.com) at October 31, 2018 05:44 PM

FFI-Kernel-eem.56

Remove ByteArray>>signedByteAt:[put:]. Both are provided in the base in both Squeak and Pharo, and the overrides here are cimbersome.

by Eliot Miranda (eliot.miranda@gmail.com) at October 31, 2018 05:41 PM

VMMaker.oscog-eem.2480

Simulator:
Provide simulation stubs for the B3DAcceleratorPlugin C api.

Slang:
Provide some clean up of pointer types in TMethods and type extraction, ensuring there's a space before any trailing *'s.

by Eliot Miranda (eliot.miranda@gmail.com) at October 31, 2018 05:33 PM

squeaksource.com

CryptographyPlugins-eem.14

Pragmatise the plugins.

by Eliot Miranda (eliot.miranda@gmail.com) at October 31, 2018 04:53 PM

BabySRE2018-hjh.16

Added

traceRM:levels:
traceRM:levels:withContext:


SRE Execution Tracer. Object>>traceRM:levels: is like Transcript>>show: with the addition of the oop of the writing object and a dump of the stack to a specified depth.

October 31, 2018 04:41 PM

October 30, 2018

squeaksource.com

WASM-edc.23

a lot of changes

October 30, 2018 11:37 AM

source.squeak.org

Chronology-Core-cmm.13

Fix DateAndTime today asDate = Date today even when not in GMT.

by Chris Muller (ma.chris.m@gmail.com) at October 30, 2018 04:04 AM

Chronology-Core-cmm.14

- A fix and optimization of Timespan>>#=. Both elements being compared must have the same timezone (or same state of #noTimezone) in order to take advantage of the optimized #hasEqualTicks: comparison. Otherwise (if different timezones), a full comparison of their starts (via #=) is needed.
- There was a mention of this optimization put into the class comment. This level of detail may be a bit tedious for users to read at that level, so Brents original comment was restored.

by Chris Muller (ma.chris.m@gmail.com) at October 30, 2018 03:59 AM

VMMaker.oscog-eem.2479

Plugins:
Fix slip in primitiveDirectoryDelimitor.
Eliminate cCode:inSmalltalk:'s from the B3DAcceleratorPlugin

by Eliot Miranda (eliot.miranda@gmail.com) at October 30, 2018 01:01 AM

squeaksource.com

Balloon3D-Plugins-eem.14

Simplify stackLightArrayValue:

by Eliot Miranda (eliot.miranda@gmail.com) at October 30, 2018 12:00 AM

October 29, 2018

source.squeak.org

VMMaker.oscog-eem.2478

Fix a couple of tests

by Eliot Miranda (eliot.miranda@gmail.com) at October 29, 2018 11:59 PM

Collections-ul.810

- renamed the methods #stringHashWithInitialHash: and #bytesHashWithInitialHash: to #hashWithInitialHash:

by Levente Uzonyi (leves@elte.hu) at October 29, 2018 11:28 PM

Kernel-eem.1193

Provide changeClassTo: as a convenient way of accessing adoptInstance:, and a better replacement for the older primitiveChangeClassTo:.

by Eliot Miranda (eliot.miranda@gmail.com) at October 29, 2018 11:05 PM

VMMaker.oscog-eem.2477

Plugins:
Fix primDigitCompare for SmallIntegers. The old code compared the values of the receiver and argument, not their magnitudes, if both were SmallIntegers.

Simplify the FilePlugin. removing an unnecessary indirection around dir_Delimitor, and eliminating an unnecessary cCode:inSmalltalk:.

Simulator:
Fix a regression with FilePlugin loading due to the simplifications to simulated plugin loading introduced in VMMaker.oscog-eem.2476. mappedPluginEntries must be extended, not assigned to.

Disable simulation for ClipboardExtendedPlugin. This would be a good exercise for someone who wanted to try writing a plugin simulation themselves, hint, hint.

by Eliot Miranda (eliot.miranda@gmail.com) at October 29, 2018 10:44 PM

squeaksource.com

SandstoneDb-tcj.152

fix SDConcurrentDictionary for Squeak 5.2

October 29, 2018 05:21 AM

source.squeak.org

Collections-cbc.810

Do NOT move to trunk!
Various option for fixing the internval hash issue related to collectionsTests cbc.296.

Some explanation to go to mailing list - this is so interested folks can try out the code.

by Chris Cunningham (cunningham.cb@gmail.com) at October 29, 2018 12:15 AM

CollectionsTests-cbc.296

Test for #hash and #= bugs. In anticipation of fixing these.

by Chris Cunningham (cunningham.cb@gmail.com) at October 29, 2018 12:12 AM

WebClient-Core-cbc.118

A hack to work around connectionTimedOut annoyances when opening packages from Trunk (sometimes).

October 29, 2018 12:08 AM

October 28, 2018

source.squeak.org

Collections-topa.809

Add #histogramOf: convenience + test

by Tobias Pape (tobias+squeaksource@netshed.de) at October 28, 2018 07:16 PM

CollectionsTests-topa.295

Add #histogramOf: convenience + test

by Tobias Pape (tobias+squeaksource@netshed.de) at October 28, 2018 07:14 PM

squeaksource.com

Worlds-sn.69

Worlds package from FONC's tinllizie

October 28, 2018 01:00 PM

WebClient-Monticello-sn.16

empty log message

October 28, 2018 01:00 PM

Temp-sn.1

packages for soon delete

October 28, 2018 01:00 PM

Smotrini-sn.32

empty log message

October 28, 2018 01:00 PM

SCouchDB-sn.4

empty log message

October 28, 2018 12:59 PM

QwaqDemo-Forums-sn.255

empty log message

October 28, 2018 12:59 PM

QwaqDemo-Client-sn.7

empty log message

October 28, 2018 12:59 PM

Qwaq-Widgets-sn.1344

empty log message

October 28, 2018 12:58 PM

Qwaq-Video-sn.622

empty log message

October 28, 2018 12:58 PM

Qwaq-Tools-sn.1416

empty log message

October 28, 2018 12:57 PM

Qwaq-Sound-sn.614

empty log message

October 28, 2018 12:57 PM

Qwaq-SharePoint-sn.33

empty log message

October 28, 2018 12:57 PM

Qwaq-Service-sn.1926

empty log message

October 28, 2018 12:56 PM

Qwaq-Server-sn.184

empty log message

October 28, 2018 12:55 PM

Qwaq-PShare-sn.82

empty log message

October 28, 2018 12:55 PM

Qwaq-Objects-sn.1959

empty log message

October 28, 2018 12:54 PM

Qwaq-Client-sn.2621

empty log message

October 28, 2018 12:54 PM

Krestianstvo-Web-Book-sn.4

empty log message

October 28, 2018 12:53 PM

Krestianstvo-sn.82

osc support (not complete yet)

October 28, 2018 12:53 PM

JSON-sn.40

empty log message

October 28, 2018 12:51 PM

October 27, 2018

source.squeak.org

VMMaker.oscog-eem.2476

Slang:
Make directory names in VMMaker work on FileSystem as well as FileDirectory; a first step to being able to generate sources on Pharo. Eliminate the obsolete machinesDirName. Remove unnecessary overrides of shouldBeTranslated (the default is ^true). Make baseTypeForType: answer e.g. 'int *' for the type 'int*', to comnform to the style I use in coerceTo:sim: and Slang type inferrence.

Simulator:
Fix a bug in strlen: with CArrays.

Restore SpurMemoryManager>>memmove:_:_: for performance but implement it better, adapting to whether memory is a DoubleWordArray or a WordArray.

Revise instantiating plugin simulators. Remove all the hierarchy searching hacks in tryLoadNewPlugin:pluginEntries: & loadNewPlugin: and nuke newFor:, replacing this with simulatorForInterpreterInterface:. Add a test, StackInterpreterSimulatorTests>>testPluginSimulators, to check that plugin simulators are instantiated as expected. Consequently implement some unimplemented coercions in SmartSyntaxPluginSimulator, and fix its doesNotUnderstand: method to not cut back plugin arguments twice (in plugins that mix smart syntax and traditional style).

No longer answer nil from SmartSyntaxInterpreterPlugin class>>simulatorClass, making the defailt to simulate, rather than not. Make initial attempts at simulating the BalloonEnginePlugin (B2DPlugin) using the rewrite engine to automatically generate overrides for methods that use 32-bit arithmetic.

Simplify simulation of the LocalePlugin; LocalePluginSimulator is not needed.

Move evaluateIfFailed: up to InterpreterPlugin; it is generally useful.

Fix simulation of primitiveCompareColors

by Eliot Miranda (eliot.miranda@gmail.com) at October 27, 2018 04:51 AM

October 24, 2018

source.squeak.org

Kernel-ul.1192

- improved Integer >> #isPrime's performance
- slightly faster Categorizer >> #numberOfCategoryOfElement:

by Levente Uzonyi (leves@elte.hu) at October 24, 2018 09:09 PM

KernelTests-ul.351

- more thorough #testIsPrime

by Levente Uzonyi (leves@elte.hu) at October 24, 2018 09:08 PM

VMMaker.oscog-akg.2475

Add LocalePluginSimulator

This allows LocalTimeZone>>primOffset to succeed, setting the same timezone within the simulated image to the value of the simulator timezone.

by Alistair Grant (akgrant0710@gmail.com) at October 24, 2018 07:35 PM

VMMaker.oscog-akg.2474

VMClass>>memcpy:_:_: handle CugMethodSurrogates

by Alistair Grant (akgrant0710@gmail.com) at October 24, 2018 01:59 PM

VMMaker.oscog-akg.2473

VM simulation fixes:

- #isCArray is true if the receiver provides the interface.
- FilePluginSimulator>>sqFileDeleteName:Size: handles UTF8 character names
-- TODO: Method to be renamed.
- Add InterpreterPlugin>>memcpy:_:_: to delegate to the interpreter proxy
- Remove SpurMemoryManager>>memcpy:_:_: this looks like it was created before VMClass>>memcpy:_:_:, but doesn't handle different argument types.
- Add InterpreterPlugin>>memmove:_:_: to delegate to the interpreter proxy.
- InterpreterPrimitives>>getenv: handle CArrayAccessor.
- InterpreterPrimitives>>primitiveGetenv remove #cCode:inSmalltalk:.
- Add VMClass>>asByteArray: to handle UTF8 strings (which shouldn't be a String)
- VMClass>>memcpy:_:_: handle different parameter types
- VMClass>>strlen: handle CArray(Accessor)s
- VMClass>>strncpy:_:_: handle CArrayAccessors

by Alistair Grant (akgrant0710@gmail.com) at October 24, 2018 06:25 AM

October 23, 2018

source.squeak.org

VMMaker.oscog-eem.2472

Simplify two uses of malloc: now that we use the right simulation form for VMClass>>malloc:.

Ronie, if I've broken Lowcode simulation I apologise, and want to work on fixing it (perhaps with you?) but I have no test cases.

by Eliot Miranda (eliot.miranda@gmail.com) at October 23, 2018 05:52 PM

Chronology-Tests-dtl.10

Start time for a Date created from a DateAndTime should preserve local time offset.

by David T. Lewis (lewis@mail.msen.com) at October 23, 2018 03:03 AM

squeaksource.com

Chronology-Core-dtl.30

Start time for a Date created from a DateAndTime should preserve local time offset

by Dave Lewis (lewis@mail.msen.com) at October 23, 2018 02:15 AM

October 22, 2018

source.squeak.org

Collections-eem.808

Faster ByteString/ByteArray hashing. The VM will accept either 1 or 2 args for the primitiveStringHash primitive so it can be used on the instance size, avoiding a little overhead.

by Eliot Miranda (eliot.miranda@gmail.com) at October 22, 2018 11:54 PM

VMMaker.oscog-eem.2471

Simulation:
Fix a regression in memcpy:_:_: in VMMaker.oscog-eem.2467. Make malloc: simuulate a la alloca:.

by Eliot Miranda (eliot.miranda@gmail.com) at October 22, 2018 11:06 PM

VMMaker.oscog-eem.2470

Plugins:
Fix a regression in VMMaker.oscog-eem.2467.

Slang: special case coercing a Float literal to #float, emitting it as N.Mf

by Eliot Miranda (eliot.miranda@gmail.com) at October 22, 2018 10:24 PM

VMMaker.oscog-eem.2469

:blush:

by Eliot Miranda (eliot.miranda@gmail.com) at October 22, 2018 08:45 PM

CollectionsTests-ul.294

- added a test for KeyedSet >> #put:

by Levente Uzonyi (leves@elte.hu) at October 22, 2018 07:41 PM

VMMaker.oscog-eem.2468

Plugins:
BalloonEngine & simulation. Clean up primitiveInitializeBuffer. Make some initial fixes to BalloonArray (the simulation of the engine's work buffer). I have other fish to fry right now but this is a stab in the right direction.

by Eliot Miranda (eliot.miranda@gmail.com) at October 22, 2018 07:38 PM

Collections-ul.807

- introduced KeyedSet >> #put: which works like #add:, but replaces existing objects with the argument as Dictionary's #at:put: does
- unified the usage of primitiveStringHash by adding it to ByteSymbol and by using String's implementation as fallback, which works for ByteArrays too

by Levente Uzonyi (leves@elte.hu) at October 22, 2018 07:35 PM

October 21, 2018

source.squeak.org

Tools-tcj.832

Handle case where a minimized project window is deleted (and thus a changeset is removed) while a Simple Change Sorter window is open. Stops a DNU from arising.

Perhaps there is a more graceful way to handle this occasion in ChangeSorter>>#update or #updateIfNecessary

October 21, 2018 10:50 PM

Chronology-Core-cmm.15

- Add Timespan>>#beCanonical so that dates created via "myDateAndTime asDate" can be made canonical.
- A fix and optimization of Timespan>>#=. Both elements being compared must have the same timezone (or same state of #noTimezone) in order to take advantage of the optimized #hasEqualTicks: comparison. Otherwise (if different timezones), a full comparison of their starts (via #=) is needed.
- There was a mention of this optimization put into the class comment. This level of detail may be a bit tedious for users to read at that level, so Brents original comment was restored.

by Chris Muller (ma.chris.m@gmail.com) at October 21, 2018 06:03 PM

squeaksource.com

SBE-Quinto-mm.2

init commit 2

by Max Muchnik (usermax83@gmail.com) at October 21, 2018 03:57 PM

SBE-Quinto-mm.1

init commit

by Max Muchnik (usermax83@gmail.com) at October 21, 2018 03:48 PM

October 20, 2018

source.squeak.org

PreferenceBrowser-eem.84

Add acceptOnCR: to text preference fields. The Update URL cannot be set without this change (sort of a catch 22, this being a fix in trunk that sould be applied to the 5.2 release :-/).

by Chris Muller (ma.chris.m@gmail.com) at October 20, 2018 07:40 PM

Chronology-Core-cmm.15

- Add Timespan>>#beCanonical so that dates created via "myDateAndTime asDate" can be made canonical.
- A fix and optimization of Timespan>>#=. Both elements being compared must have the same timezone (or same state of #noTimezone) in order to take advantage of the optimized #hasEqualTicks: comparison. Otherwise (if different timezones), a full comparison of their starts (via #=) is needed.
- There was a mention of this optimization put into the class comment. This level of detail may be a bit tedious for users to read at that level, so Brents original comment was restored.

by Chris Muller (ma.chris.m@gmail.com) at October 20, 2018 07:37 PM

October 19, 2018

source.squeak.org

VMMaker.oscog-akg.2466

VMMaker Unicode strings

Add VMClass>>asByteArray:size:.

Modify:

- FilePluginSimulator>>fileOpenName:size:write:secure:
- FilePluginSimulator>>fileOpenNewName:size:secure:

to utf8Decode the paths supplied by the in-simulation image. This is required otherwise the simulation, which uses the same code, will attempt to reencode the string with utf8, corrupting the file name.

by Alistair Grant (akgrant0710@gmail.com) at October 19, 2018 09:23 AM

squeaksource.com

Crusoe-Spencer-skw.15

Specify stations

by Spencer Ward (spencerkward@gmail.com) at October 19, 2018 07:58 AM

source.squeak.org

VMMaker.oscog-AlistairGrant.2465

strncpy & primitiveFailForOSError

VMClass>>strncpy:_:_: If the destination buffer is longer than the source buffer, 0 fill the remaining bytes (SVr4, 4.3BSD, C89, C99).
Update associated test case.

Add SpurMemoryManager>>primitiveFailForOSError: (based off #primitiveFailFor:).

by Alistair Grant (akgrant0710@gmail.com) at October 19, 2018 06:00 AM

squeaksource.com

VMConstruction-Plugins-OSProcessPlugin.oscog-AlistairGrant.60

UnixOSProcessPluginSimulator

Provides a minimal implementation to allow UnixOSProcessPlugin>>primitiveGetCurrentWorkingDirectory to be used in the VM simulator.

Also:

- add error checking and fail if object allocation fails in #primitiveGetCurrentWorkingDirectory.
- Use the new C method naming (getcwd:_:)

by Alistair Grant (akgrant0710@gmail.com) at October 19, 2018 05:25 AM

source.squeak.org

VMMaker.oscog-eem.2464

Cogit Slang Reflection:
Fix nasty bug with CogAbstractInstruction computing opcodes via reflection caused by full blocks. We must use method allLiterals to include literals in blocks now. SysV is referenced only from blocks in CogX64Compiler class>>#initialize and so with full blocks SysV was being moved to Undeclared, causing invalid source generation for the X64 cogits.

by Eliot Miranda (eliot.miranda@gmail.com) at October 19, 2018 04:02 AM

VMMaker.oscog-eem.2463

Oops! Fix the major regressions in the last but one commit.

by Eliot Miranda (eliot.miranda@gmail.com) at October 19, 2018 03:00 AM

VMMaker.oscog-eem.2462

JPEGReadWriter2Plugin:
Fix a regression in the last commit.

by Eliot Miranda (eliot.miranda@gmail.com) at October 19, 2018 12:40 AM

VMMaker.oscog-eem.2461

Plugins:
BitBltSimulation
Fix a bug where the copyBits primitive read past the end of the source bitmap. sourceSkewAndPointerInit would sometimes compute preload true and skew truye before then setting skew to -32. There was a hack fix in copyLoop, but the real bug in copyLoop was the inner loop special case for rule 3 (over, or STORE). It must fall back to the loop beginning "thisWord := self srcLongAt: sourceIndex." when preload is false, only using the loop beginning "self dstLongAt: destIndex put: prevWord." when preload and: [hDr = 1] is true. Simplify the preload calculation in sourceSkewAndPointerInit by computing a mask similar to mask1 and comparing it against mask1 to see that no bits would be lost (if the mask computed for source is larger than mask1 then a preload is necessary). Hence simplify the unskew and skewMask setup in copyLoop.

Improve the performance of primitiveDisplayString by pulling the lockSurfaces and unlockSurfaces implicit in copyBits out of the loop and replacing copytBits with copyBitsLockedAndClipped in the loop.

Fix primitivePixelValueAt so that it simulates correctly.

Other plugins:
Remove null implementations of initialiseModule and/or shutdownModule. The loader/unloader nvokes these only if they exiust, consequently null versions are simply a waste of time and space.

Simulation:
Add support for computing the hash of the destination bitmap after copyBits in BitBltSimulator which was key in identifying the cases for which the above BitBltSimulation>>copyLoop bug fix applied.

Rewrite JPEGReadWriter2Plugin so that it simulates. This is now a nice example of a recursive SmartSyntaxPlugin; the simulation of the plugin relies on the real implementation of the plugin in the underlying VM.

Fix InterpreterProxy>>byteSizeOf: for 64-bits and for bits objects. Implement CArray>>asByteArray & CArray>>overwriteContentsWith: to ease copying bytes to/from the heap when simulating primitives (key for the JPEGReadWriter2Plugin simulation support).

Fix the return value of InterpreterProxy halt during simulation.

by Eliot Miranda (eliot.miranda@gmail.com) at October 19, 2018 12:18 AM

October 18, 2018

squeaksource.com

VMConstruction-Plugins-XDisplayControlPlugin-eem.16

Remove null implementations of initialiseModule and/or shutdownModule. The loader/unloader invokes these only if they exist, consequently null versions are simply a waste of time and space.

by Eliot Miranda (eliot.miranda@gmail.com) at October 18, 2018 11:22 PM

VMConstruction-Plugins-OSProcessPlugin.oscog-eem.59

Remove null implementations of initialiseModule and/or shutdownModule. The loader/unloader invokes these only if they exist, consequently null versions are simply a waste of time and space.

by Eliot Miranda (eliot.miranda@gmail.com) at October 18, 2018 11:21 PM

VMConstruction-Plugins-AioPlugin-eem.22

Remove null implementations of initialiseModule and/or shutdownModule. The loader/unloader invokes these only if they exist, consequently null versions are simply a waste of time and space.

by Eliot Miranda (eliot.miranda@gmail.com) at October 18, 2018 11:21 PM

source.squeak.org

Chronology-Core-cmm.15

- Add Timespan>>#beCanonical so that dates created via "myDateAndTime asDate" can be made canonical.
- A fix and optimization of Timespan>>#=. Both elements being compared must have the same timezone (or same state of #noTimezone) in order to take advantage of the optimized #hasEqualTicks: comparison. Otherwise (if different timezones), a full comparison of their starts (via #=) is needed.
- There was a mention of this optimization put into the class comment. This level of detail may be a bit tedious for users to read at that level, so Brents original comment was restored.

by Chris Muller (ma.chris.m@gmail.com) at October 18, 2018 08:06 PM

squeaksource.com

Crusoe-Spencer-skw.14

Find station code from name

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 06:28 PM

Crusoe-Spencer-skw.13

Search finds cheapest ticket on each day.

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 03:30 PM

Crusoe-Spencer-skw.12

Search over long period

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 12:50 PM

Crusoe-Spencer-skw.11

Ticket object introduced

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 12:24 PM

BabySRE2018-hjh.15

Another #allItalics fix.

October 18, 2018 11:20 AM

Crusoe-Spencer-skw.10

Calculate cheapest ticket.

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 11:11 AM

BabySRE2018-hjh.14

Added to more in place replacements for the missing

Text>>allItalics

method.

text addAttribute: TextEmphasis italic from: 1 to: text size "allItalics"

Later if Squeak has #allItalics this should be reverted.

October 18, 2018 11:03 AM

Crusoe-Spencer-skw.9

Introduce SearchResult object to wrap journies.

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 10:19 AM

Crusoe-Spencer-skw.8

Trainline search returns Journey objects

by Spencer Ward (spencerkward@gmail.com) at October 18, 2018 09:26 AM

ConfigurationOfMemcached-SvenVanCaekenberghe.4

update to stable v3

October 18, 2018 08:56 AM

Memcached-SvenVanCaekenberghe.26

Minor fix to MDCacheClientBase>>#get: (use #ifNotNil: instead of #ifNotNilDo:) to make all tests green again

October 18, 2018 08:54 AM

source.squeak.org

Chronology-Core-cmm.14

- A fix and optimization of Timespan>>#=. Both elements being compared must have the same timezone (or same state of #noTimezone) in order to take advantage of the optimized #hasEqualTicks: comparison. Otherwise (if different timezones), a full comparison of their starts (via #=) is needed.
- There was a mention of this optimization put into the class comment. This level of detail may be a bit tedious for users to read at that level, so Brents original comment was restored.

by Chris Muller (ma.chris.m@gmail.com) at October 18, 2018 03:07 AM

October 17, 2018

squeaksource.com

ArbitraryPrecisionFloat-nice.3

Release on SM

October 17, 2018 07:33 PM

ArbitraryPrecisionFloat-nice.1

Creation as Monticello Package

October 17, 2018 07:30 PM

BroomMorphs-Base-cmm.4

Patches for Squeak 5.2.

by Chris Muller (ma.chris.m@gmail.com) at October 17, 2018 06:14 PM

Crusoe-Spencer-skw.7

Parse trainline result into JsonObject

by Spencer Ward (spencerkward@gmail.com) at October 17, 2018 09:30 AM

October 12, 2018

squeaksource.com

Crusoe-Spencer-skw.4

Station returns journeys. Implementation slimed to pass test.

by Spencer Ward (spencerkward@gmail.com) at October 12, 2018 04:23 PM

ConfigurationOfSIXX-MasashiUmezawa.17

Added 0.5.0 description

October 12, 2018 01:14 PM

October 11, 2018

squeaksource.com

Magma-Server-cmm.515

MagmaSession>>#cacheAt: and #cacheAt:put: are intended for server-side use only.

by Chris Muller (ma.chris.m@gmail.com) at October 11, 2018 05:50 PM

October 10, 2018

squeaksource.com

System.V3-dtl.1043

Name: System-pre.1043
Author: pre
Time: 8 October 2018, 2:14:05.659633 pm
UUID: e558e323-7754-584e-9983-ffa439fd31cd
Ancestors: System-pre.1042

In order to make the new Git version control infrastructure more accessible, this commit adds the new Installer script to the Do menu.

by Dave Lewis (lewis@mail.msen.com) at October 10, 2018 11:16 PM

Maui-Core-cmm.531

Squeak 5.2, border refactoring requires setting borderStyle: FIRST, before #borderWidth and #borderColor.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 08:11 PM

BrpExtensions-cmm.16

Since reverting Collection>>#asCollection back to Brent's original implementation, there were no issues experienced until MaxTrader needed to use Array's of Strings as input to a permutation, so that particular functionality that was lost is now restored by this new #asCollection override in String.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:54 PM

Ma-Core-cmm.309

Moved Debugger class>>#rememberExtent: to appease the Squeak sages.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:54 PM

Magma-Server-cmm.514

- Changes for Squeak being 64-bit going forward.
- NetNameResolver localHostName will sometimes report '0.0.0.0' which causes problems with relocating a primary Magma server to a different host. Therefore, use the new NetNameResolver maLocalHostName instead.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:52 PM

Magma-Tester-cmm.428

NetNameResolver localHostName will sometimes report '0.0.0.0' which causes problems with relocating a primary Magma server to a different host. Therefore, use the new NetNameResolver maLocalHostName instead.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:52 PM

Ma-Client-Server-Core-cmm.285

Whenever "NetNameResolver localHostName" might return '0.0.0.0', it creates problems with Ma Client Server and Magma. Therefore, added #maLocalHostName which checks for this and, if it returns '0.0.0.0', call out to Linux to ask its 'hostname', in order to determine the localhost name.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:52 PM

Ma-Client-Server-Tester-cmm.171

NetNameResolver localHostName will sometimes report '0.0.0.0' which causes problems with relocating a primary Magma server to a different host. Therefore, use the new NetNameResolver maLocalHostName instead.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:52 PM

Magma-Client-cmm.735

- Now that Squeak is 64-bit going forward, increase MaByteSequenceIndex default keySize to 64 bits.
- Introduced a new configuration message for MagmaSessions. I had a multi-core application that was saturating a server with Upon creation of a MagmaSession, immediately before or after connecting, the client may use #prefer: aMagmaRemoteLocation for: aMagmaId to round-robin the secondary servers so that the read load can be distributed and support more client cores.
- The latest spur VM no longer supports (nor needs) some of the GC fine-tuning mechanisms.

by Chris Muller (ma.chris.m@gmail.com) at October 10, 2018 07:40 PM

October 06, 2018

squeaksource.com

BabySRE2018-hjh.13

Renamed package

October 06, 2018 07:19 AM

BabySRE2018-hjh.12

Added code so that the availability of
Text>>allItalics
is not a prerequisite.

by Hannes Hirzel (hannes.hirzel@gmail.com) at October 06, 2018 06:29 AM

October 05, 2018

squeaksource.com

Crusoe-Spencer-skw.3

Station test passes. Empty Timetable class added.

by Spencer Ward (spencerkward@gmail.com) at October 05, 2018 07:46 PM

Crusoe-Spencer-skw.2

A failing test for Station.

by Spencer Ward (spencerkward@gmail.com) at October 05, 2018 06:57 PM

Crusoe-Spencer-skw.1

A learning journey in Squeak. I'll be getting in my Dreyfuss Squeak hours by writing whatever Smalltalk code I can think of.

by Spencer Ward (spencerkward@gmail.com) at October 05, 2018 06:42 PM