diff --git a/.smalltalk.ston b/.smalltalk.ston new file mode 100644 index 00000000..c1f350e4 --- /dev/null +++ b/.smalltalk.ston @@ -0,0 +1,17 @@ +SmalltalkCISpec { + #loading : [ + SCIMetacelloLoadSpec { + #baseline : 'Grease', + #directory : 'repository', + #load : [ 'Tests' ], + #platforms : [ #squeak, #pharo ] + }, + SCIMetacelloLoadSpec { + #baseline : 'Grease', + #directory : 'repository', + #onWarningLog : true, + #load : [ 'Tests' ], + #platforms : [ #gemstone ] + } + ] +} diff --git a/.travis.yml b/.travis.yml index 734c1682..386313b5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,26 +1,11 @@ -language: erlang - -env: - - - ST=Pharo-1.4 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=Pharo-2.0 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=Pharo-3.0 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=Pharo-4.0 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=Squeak-4.4 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=Squeak-4.5 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=GemStone-2.4.4.2 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=GemStone-3.1.0.6 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - - ST=GemStone-3.2.2 BASELINE=Grease LOADS="'Tests'" REPOSITORY="filetree://${TRAVIS_BUILD_DIR}/repository" - -install: - - - export PROJECT_HOME="$(pwd)" - - cd $HOME - - wget -q -O builderCI.zip https://github.com/dalehenrich/builderCI/zipball/master - - unzip -q builderCI.zip - - cd dalehenrich-builderCI* - - source build_env_vars - - ln -s $PROJECT_HOME $GIT_PATH - - ./build_image.sh - -script: $PROJECT_HOME/tests/testTravisCI.sh -verbose +language: smalltalk +sudo: false +smalltalk: + - Pharo-5.0 + - Pharo-4.0 + - Pharo-3.0 + - Squeak-4.5 + - Squeak-5.0 + - GemStone-3.1.0.6 + - GemStone-3.2.12 + - GemStone-3.3.0 diff --git a/README.md b/README.md index ab097ebd..448a0339 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,6 @@ The Grease Portability Library [![Build Status](https://travis-ci.org/SeasideSt The main repository of Grease is on Smalltalkhub: (http://www.smalltalkhub.com/#!/~Seaside/Grease11). This repository mirrors it. -The Travis CI builds currently test Grease for Pharo1.4, Pharo2.0, Pharo3.0, Pharo4.0, Squeak 4.4, Squeak 4.5, Gemstone 2.4.4.1, Gemstone 3.1.0.6 and Gemstone 3.2.2 - Grease enhances the ANSI Smalltalk standard. With only a few exceptions, we assume platforms are fully ANSI-compliant. Platforms want to support Seaside and standardization makes this easier for the project’s developers and its porters. Grease defines expected APIs with unit tests. Platforms can quickly determine if they are compatible and users can examine the tests to determine exactly which behaviours they can count on. @@ -17,9 +15,42 @@ Grease does not try to solve all problems. We are not testing Sockets or HTTP cl Grease is widely adopted. Implementations exist already for all platforms that support Seaside 3.x. As well as Seaside, new versions of Magritte, Pier, and Monticello are already being implemented on top of Grease. -##GemStone Installation +##Travis builds + +The [Travis CI builds](https://travis-ci.org/SeasideSt/Grease) currently test Grease for the following platforms and versions: + +| Squeak | Pharo | GemStone | +| --------------- | ---------------- | -------------------- | +| Squeak 5.0 | Pharo 5.0 | GemStone 3.3.0 | +| Squeak 4.5 | Pharo 4.0 | GemStone 3.2.12 | +| | Pharo 3.0 | GemStone 3.1.0.6 | + +##Installation + +###Squeak and Pharo + +Make sure you have the [MetacelloPreview version](https://github.com/dalehenrich/metacello-work), otherwise the load will not work. You have two options for loading: from Smalltalkhub or from Github. + +Load from Smalltalkhub: +```Smalltalk +Metacello new + configuration: 'Grease'; + repository: 'http://www.smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main'; + version: #stable; + load +``` +-or- +Load from: Github: +```Smalltalk +Metacello new + baseline: 'Grease'; + githubUser: 'SeasideSt' project: 'Grease' commitish: '' path: 'repository'; + load +``` +###GemStone -GsUpgrader works on all versions of GemStone against all Versions of GLASS: +Grease is part of the GLASS setup. You can upgrade your version of Grease using [GsUpgrader](https://github.com/GsDevKit/gsUpgrader). +GsUpgrader works on all versions of GemStone against all versions of GLASS: ```Smalltalk Gofer new diff --git a/repository/BaselineOfGrease.package/BaselineOfGrease.class/instance/baseline..st b/repository/BaselineOfGrease.package/BaselineOfGrease.class/instance/baseline..st index f3ce6c0e..56bdf1cf 100644 --- a/repository/BaselineOfGrease.package/BaselineOfGrease.class/instance/baseline..st +++ b/repository/BaselineOfGrease.package/BaselineOfGrease.class/instance/baseline..st @@ -16,7 +16,7 @@ baseline: spec group: 'Tests' with: #('Core Tests' 'Slime Tests'); group: 'default' with: #('Slime') ]. spec - for: #'squeak' + for: #'squeak4.x' do: [ spec package: 'Grease-Core' @@ -31,6 +31,21 @@ baseline: spec package: 'Grease-Tests-Squeak-Core' with: [ spec requires: #('Grease-Tests-Pharo-Core') ]. self slimeForSqueakPharo1xPharo2x: spec ]. + spec + for: #'squeak5.x' + do: [ + spec + package: 'Grease-Core' + with: [ spec includes: #('Grease-Squeak5-Core') ]; + package: 'Grease-Tests-Core' + with: [ spec includes: #('Grease-Tests-Squeak-Core' 'Grease-Tests-Squeak5-Core') ]; + package: 'Grease-Squeak5-Core' + with: [ spec requires: #('Grease-Core') ]; + package: 'Grease-Tests-Squeak-Core' + with: [ spec requires: #('Grease-Tests-Core') ]; + package: 'Grease-Tests-Squeak5-Core' + with: [ spec requires: #('Grease-Tests-Squeak-Core') ]. + self slimeForSqueakPharo1xPharo2x: spec ]. spec for: #'pharo1.0' do: [ @@ -86,7 +101,7 @@ baseline: spec group: 'Slime' with: #('Grease-Slime'); group: 'Slime Tests' with: #('Grease-Tests-Slime') ]. spec - for: #'pharo4.x' + for: #(#'pharo4.x' #'pharo5.x') do: [ spec package: 'Grease-Core' diff --git a/repository/BaselineOfGrease.package/BaselineOfGrease.class/methodProperties.json b/repository/BaselineOfGrease.package/BaselineOfGrease.class/methodProperties.json index 5a4bd2a4..bdd8b33e 100644 --- a/repository/BaselineOfGrease.package/BaselineOfGrease.class/methodProperties.json +++ b/repository/BaselineOfGrease.package/BaselineOfGrease.class/methodProperties.json @@ -2,6 +2,6 @@ "class" : { }, "instance" : { - "baseline:" : "dkh 05/26/2015 11:45", + "baseline:" : "JohanBrichau 2/27/2016 13:46", "initializeLatin1ToUtf8Encodings" : "JohanBrichau 10/19/2014 10:00", "slimeForSqueakPharo1xPharo2x:" : "JohanBrichau 02/16/2014 03:49" } } diff --git a/repository/BaselineOfGrease.package/monticello.meta/categories.st b/repository/BaselineOfGrease.package/monticello.meta/categories.st index 3687f0b2..aad806f8 100644 --- a/repository/BaselineOfGrease.package/monticello.meta/categories.st +++ b/repository/BaselineOfGrease.package/monticello.meta/categories.st @@ -1 +1 @@ -SystemOrganization addCategory: #'BaselineOfGrease'! +SystemOrganization addCategory: #BaselineOfGrease! diff --git a/repository/BaselineOfGrease.package/monticello.meta/version b/repository/BaselineOfGrease.package/monticello.meta/version index fcda000f..fd5390dc 100644 --- a/repository/BaselineOfGrease.package/monticello.meta/version +++ b/repository/BaselineOfGrease.package/monticello.meta/version @@ -1 +1 @@ -(name 'BaselineOfGrease-dkh.9' message 'Update baseline for GemStone 3.3' id 'af9364dd-14bc-4e5e-9fc7-0abe08732ab2' date '05/26/2015' time '11:46:07' author 'dkh' ancestors ((name 'BaselineOfGrease-JohanBrichau.8' message 'separate package for Squeak' id '91c019c7-2b8b-40c3-97d9-2047a69512a7' date '03/22/2015' time '12:01:37' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.7' message 'included Pharo 4 and did some baseline formatting' id '3722041d-d4b5-4496-a25a-0e891fe9a945' date '11/08/2014' time '09:28:01' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.6' message 'added initializeLatin1ToUtf8Encodings' id '4d976044-1aa9-44b6-bab0-b66ac758b3cd' date '10/19/2014' time '10:05:25' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.6' message 'added initializeLatin1ToUtf8Encodings' id 'b4ac5766-d472-4557-beff-59e5b733bce0' date '10/19/2014' time '10:04:55' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-dkh.5' message 'typoe' id '93eb3230-7956-4a6e-85dc-243f3dd895a1' date '06/04/2014' time '15:13:26' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.4' message 'woops specified the package branch incorrectly ... I think I got it right this time...' id '3003ee31-9d17-4dd1-9b9a-f8a80e4f0ba1' date '06/04/2014' time '15:12:31' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.3' message 'add Grease-Tests-GemStone-Core.v32 to baseline' id '26f128ca-b62e-4295-9a58-a9758b670c37' date '06/04/2014' time '14:57:48' author 'dkh' ancestors ((name 'BaselineOfGrease-JohanBrichau.2' message 'forgotten methods' id '38758da9-c922-4530-a19e-f8783900e787' date '02/16/2014' time '03:50:22' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.1' message 'first baseline' id 'b89398df-14c6-4b6a-a2ba-91ad806bb07f' date '02/16/2014' time '01:49:46' author 'JohanBrichau' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'BaselineOfGrease-JohanBrichau.14' message 'Ensure Squeak5 tests package is loaded in Squeak5' id 'abde1bd6-a8d6-45fc-a922-bcf63ec38f03' date '27 February 2016' time '1:47:23.046532 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.13' message 'Forked Grease-Tests-Pharo-Core into Grease-Tests-Squeak5-Core' id '3a01ebbc-8859-45db-ae5a-e5de8073d3a4' date '27 February 2016' time '1:40:18.726436 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.12' message 'added Pharo-Tests to Squeak5 load' id 'ffe11ade-e4f1-496d-ae59-74543cfad134' date '27 February 2016' time '1:21:56.832518 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.11' message 'added pharo5 platform to baseline' id '5c0332e9-ef4c-43cd-9066-7c9fe9ed6506' date '27 February 2016' time '12:12:12.067693 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.10' message 'added squeak 5 platform' id '18f9d568-869f-4550-804a-b0ba101f33f3' date '13 December 2015' time '8:36:25.150207 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-dkh.9' message 'Update baseline for GemStone 3.3' id 'af9364dd-14bc-4e5e-9fc7-0abe08732ab2' date '26 May 2015' time '11:46:07 am' author 'dkh' ancestors ((name 'BaselineOfGrease-JohanBrichau.8' message 'separate package for Squeak' id '91c019c7-2b8b-40c3-97d9-2047a69512a7' date '22 March 2015' time '12:01:37 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.7' message 'included Pharo 4 and did some baseline formatting' id '3722041d-d4b5-4496-a25a-0e891fe9a945' date '8 November 2014' time '9:28:01 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.6' message 'added initializeLatin1ToUtf8Encodings' id '4d976044-1aa9-44b6-bab0-b66ac758b3cd' date '19 October 2014' time '10:05:25 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.6' message 'added initializeLatin1ToUtf8Encodings' id 'b4ac5766-d472-4557-beff-59e5b733bce0' date '19 October 2014' time '10:04:55 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-dkh.5' message 'typoe' id '93eb3230-7956-4a6e-85dc-243f3dd895a1' date '4 June 2014' time '3:13:26 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.4' message 'woops specified the package branch incorrectly ... I think I got it right this time...' id '3003ee31-9d17-4dd1-9b9a-f8a80e4f0ba1' date '4 June 2014' time '3:12:31 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.3' message 'add Grease-Tests-GemStone-Core.v32 to baseline' id '26f128ca-b62e-4295-9a58-a9758b670c37' date '4 June 2014' time '2:57:48 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-JohanBrichau.2' message 'forgotten methods' id '38758da9-c922-4530-a19e-f8783900e787' date '16 February 2014' time '3:50:22 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.1' message 'first baseline' id 'b89398df-14c6-4b6a-a2ba-91ad806bb07f' date '16 February 2014' time '1:49:46 am' author 'JohanBrichau' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-GemStone300-Core.package/GRUtf8CodecStream.class/methodProperties.json b/repository/Grease-GemStone300-Core.package/GRUtf8CodecStream.class/methodProperties.json index a9cb74d0..b77ebb5f 100644 --- a/repository/Grease-GemStone300-Core.package/GRUtf8CodecStream.class/methodProperties.json +++ b/repository/Grease-GemStone300-Core.package/GRUtf8CodecStream.class/methodProperties.json @@ -1,6 +1,6 @@ { "class" : { - "initialize" : "dkh 06/15/2015 15:15" }, + "initialize" : "dkh 06/15/2015 10:48" }, "instance" : { "crlf" : "dkh 11/06/2009 08:45", "invalidUtf8" : "dkh 11/06/2009 08:45", diff --git a/repository/Grease-GemStone300-Core.package/monticello.meta/version b/repository/Grease-GemStone300-Core.package/monticello.meta/version index b662e285..6dca71ba 100644 --- a/repository/Grease-GemStone300-Core.package/monticello.meta/version +++ b/repository/Grease-GemStone300-Core.package/monticello.meta/version @@ -1 +1 @@ -(name 'Grease-GemStone300-Core-dkh.7' message 'restore GRUtf8CodecStream class>>initialize as part fix for https://github.com/GsDevKit/GsDevKit/issues/27 ... will have to wait until backport to GLASS 1.0-beta9.2.1 is completed ...' id '8be8bc71-c4c5-4c56-8ab3-5301389fe266' date '06/15/2015' time '15:17:22' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-dkh.6' message 'Missed some spots in Grease relating to the fix for https://github.com/GsDevKit/GsDevKit/issues/27' id 'af0b39f3-714b-4b01-9c72-7536a3c128e8' date '06/15/2015' time '10:56:56' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-JohanBrichau.5' message 'Fix for slow handling of utf8 encoding in GS3.x (see https://github.com/GsDevKit/Grease/issues/2 )' id 'a1323a4e-ce99-4e85-bf25-ffeaaa9463f5' date '10/19/2014' time '08:40:18' author 'JohanBrichau' ancestors ((name 'Grease-GemStone300-Core-dkh.4' message '1.0.6.1 (dkh.159): - GemStone 3.0.1 fix for Issue 130: remote breakpoints don''''t work http://code.google.com/p/glassdb/issues/detail?id=130' id '5c8d2bf0-4319-4099-b4b1-83abcc7195b0' date '10/14/2011' time '17:52:12' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-dkh.3' message '1.0.6.1 (dkh.159): - port to GemStone 3.0.1 (#generatehardBreak changed for 3.0)' id '2c389d30-c4d2-4def-b488-82d82b241d1d' date '10/14/2011' time '17:04:58' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-DaleHenrichs.2' message '- pick up some missing methods' id 'a36f8f57-31fc-4a76-84d8-d68331d70935' date '07/22/1910' time '16:42:48' author 'DaleHenrichs' ancestors ((name 'Grease-GemStone300-Core-DaleHenrichs.1' message '- Exception>>greaseString is gemstone version specific' id '0a2c8aaf-061e-45b6-8070-54e4b203adf3' date '07/22/1910' time '14:18:53' author 'DaleHenrichs' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'Grease-GemStone300-Core-dkh.6' message 'Missed some spots in Grease relating to the fix for https://github.com/GsDevKit/GsDevKit/issues/27' id 'af0b39f3-714b-4b01-9c72-7536a3c128e8' date '15 June 2015' time '10:56:56 am' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-JohanBrichau.5' message 'Fix for slow handling of utf8 encoding in GS3.x (see https://github.com/GsDevKit/Grease/issues/2 )' id 'a1323a4e-ce99-4e85-bf25-ffeaaa9463f5' date '19 October 2014' time '8:40:18 am' author 'JohanBrichau' ancestors ((name 'Grease-GemStone300-Core-dkh.4' message '1.0.6.1 (dkh.159): - GemStone 3.0.1 fix for Issue 130: remote breakpoints don''''t work http://code.google.com/p/glassdb/issues/detail?id=130' id '5c8d2bf0-4319-4099-b4b1-83abcc7195b0' date '14 October 2011' time '5:52:12 pm' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-dkh.3' message '1.0.6.1 (dkh.159): - port to GemStone 3.0.1 (#generatehardBreak changed for 3.0)' id '2c389d30-c4d2-4def-b488-82d82b241d1d' date '14 October 2011' time '5:04:58 pm' author 'dkh' ancestors ((name 'Grease-GemStone300-Core-DaleHenrichs.2' message '- pick up some missing methods' id 'a36f8f57-31fc-4a76-84d8-d68331d70935' date '22 July 1910' time '4:42:48 pm' author 'DaleHenrichs' ancestors ((name 'Grease-GemStone300-Core-DaleHenrichs.1' message '- Exception>>greaseString is gemstone version specific' id '0a2c8aaf-061e-45b6-8070-54e4b203adf3' date '22 July 1910' time '2:18:53 pm' author 'DaleHenrichs' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/instance/fileExists..st b/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/instance/fileExists..st new file mode 100644 index 00000000..d558068e --- /dev/null +++ b/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/instance/fileExists..st @@ -0,0 +1,3 @@ +file library +fileExists: aString + ^ (FileDirectory on: aString) exists \ No newline at end of file diff --git a/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st b/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st new file mode 100644 index 00000000..1aad81ef --- /dev/null +++ b/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st @@ -0,0 +1,13 @@ +file library +fileStreamOn: aString do: aBlock binary: aBoolean + ^ aBoolean + ifTrue: [ + FileStream oldFileNamed: aString do: [ :stream | + stream binary. + aBlock value: stream ] ] + ifFalse: [ + MultiByteFileStream oldFileNamed: aString do: [ :stream | + stream + ascii; + wantsLineEndConversion: true. + aBlock value: stream ] ] \ No newline at end of file diff --git a/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/methodProperties.json b/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/methodProperties.json index 93d35e06..c4a6cad2 100644 --- a/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/methodProperties.json +++ b/repository/Grease-Pharo-Core.package/GRPharoPlatform.class/methodProperties.json @@ -18,6 +18,8 @@ "directoriesIn:" : "NickAger 3/9/2012 11:33", "doSilently:" : "JohanBrichau 9/10/2013 11:39", "ensureExistenceOfFolder:" : "jf 1/21/2009 17:31", + "fileExists:" : "pmm 7/16/2015 16:36", + "fileStreamOn:do:binary:" : "pmm 7/16/2015 16:39", "filesIn:" : "lr 7/25/2011 19:51", "isProcessTerminated:" : "jf 2/6/2009 15:58", "label" : "jf 2/9/2010 00:56", diff --git a/repository/Grease-Pharo-Core.package/monticello.meta/version b/repository/Grease-Pharo-Core.package/monticello.meta/version index 82f2500d..29152eed 100644 --- a/repository/Grease-Pharo-Core.package/monticello.meta/version +++ b/repository/Grease-Pharo-Core.package/monticello.meta/version @@ -1 +1 @@ -(name 'Grease-Pharo-Core-JohanBrichau.74' message 'Missing sign on ScaledDecimal>>greaseString (https://github.com/SeasideSt/Grease/issues/1) Thanks Hilaire!' id '2d4e3c5b-a220-4771-be39-b335912e16f9' date '15 July 2015' time '1:26:55.26 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo-Core-pmm.73' message '#820 Configurations should not hold on to classes' id 'e22794f6-2f43-4c58-986c-8616f6788707' date '12 July 2015' time '10:23:49 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.72' message '- lint fixes' id '64020abe-01f6-4b35-8918-185dc34e1b90' date '19 August 2014' time '10:35:19 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.71' message 'Issue 792: Issue encoding a non-ascii character preceded by an xml-unsafe one - https://code.google.com/p/seaside/issues/detail?id=792' id 'c823f84d-3cb3-4142-a402-c513325f37d3' date '21 May 2014' time '9:34:11 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.70' message '- formatting - move GRCountingStream from Pharo-only package to Core' id 'a547a055-973b-4af4-840a-691be105670b' date '21 May 2014' time '8:57:26 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.69' message 'Issue 781: Also catch platform deprecation signals - http://code.google.com/p/seaside/issues/detail?id=781' id '62d63448-9ddd-4681-8a58-e1ab1a1613b8' date '16 February 2014' time '11:18:12 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.68' message '- fix comment' id '5b81b23d-edc1-4ad4-aa38-00ccd3732027' date '1 February 2014' time '3:14:38 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.67' message 'Issue 770: ScaledDecimal rendering support http://code.google.com/p/seaside/issues/detail?id=770' id 'a278cbb9-ca35-41a7-b8c9-48bcbaa88df3' date '15 September 2013' time '12:07:44 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.66' message '- spelling' id 'eedba520-4519-4a2f-98a2-dae65d94651f' date '14 September 2013' time '3:55:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.65' message '- Slime' id 'cec7735d-8994-44fe-a508-47eced261684' date '14 September 2013' time '10:02:13 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.64' message '- Slime' id '327ab314-0531-4261-9f19-4590f39c4bea' date '14 September 2013' time '9:51:44 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.63' message '- implement missing method' id '1cfbe808-23be-4ad3-8d2e-40a5905c85fb' date '14 September 2013' time '9:38:35 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.62' message '- update URLs' id '5af25cab-95bc-4809-83b4-13eadb393333' date '12 September 2013' time '4:09:29 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.61' message '- update URLs' id '7c04fd10-875e-4b5b-b86c-342359ccb29e' date '12 September 2013' time '4:06:59 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-JohanBrichau.60' message 'deal with #doSilently: difference from Pharo2.0 onwards' id '074cb71f-16bc-4471-ad7e-0ba3665a1672' date '10 September 2013' time '11:40:27.421 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo-Core-JohanBrichau.59' message 'added the trim* methods for pharo versions prior to 2.0' id 'a9d37f3e-7a6d-4926-87f2-771e06dc7128' date '10 September 2013' time '9:34:11.097 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo-Core-pmm.58' message '- remove Object >> #displayString again, deprecated in 3.0 -> removed in 3.1' id '5e914a2d-bd92-4062-bc89-8aa72b18331a' date '16 March 2013' time '2:12 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jf.57' message 'Cherry pick 4 methods that should have come in to Grease-Pharo-Core-pmm.51(4e5260c5-46b4-499f-bcd9-cc5e5a4e60ca) when Grease-Pharo-Core-NickAger.49 (d9f63c7b-0139-45df-a253-63649469f427) was merged in from the 3.0 to the 3.1 branch.' id 'd3d875fc-58a3-4881-8ef4-d2f0c3d4dc7c' date '13 January 2013' time '3:18:32 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-pmm.56' message '- Slime fixes, mostly recategorizations' id 'edaed043-e023-49a5-bf3d-e0a70bdd4526' date '3 September 2012' time '4:33:55 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.55' message '- formatting Nazis from outer space' id 'fb375e80-7261-4ea9-b9fe-57103fd6c1e0' date '1 September 2012' time '5:01:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.54' message '- Issue 736: implement #basicNextPutAll: on pseudo streams' id '0d54029e-c67b-4cb9-926e-80967a272d3d' date '14 August 2012' time '7:46:15 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.53' message '- Issue 733: multibyte characters broken when flushing a WAComboResponse - http://code.google.com/p/seaside/issues/detail?id=733' id 'cf4c1332-9d26-4f1c-8da4-359fc02ac66a' date '25 June 2012' time '9:05:56 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.52' message '- fix off by one error' id 'dbbe8c77-5681-47b0-bac0-9750ca2db809' date '21 April 2012' time '9:01:07 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.51' message '- merge 3.0 trunk' id '4e5260c5-46b4-499f-bcd9-cc5e5a4e60ca' date '29 March 2012' time '7:24:59 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.50' message '- merge Pharo 1.4 fixes from 3.0 branch' id 'a8f92057-af3a-4e85-ab95-f7b445156b55' date '6 March 2012' time '8:00:36 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.49' message '- inline GRPharoUtf8Codec >> #decode:, reduce the amount of allocation that has to be done, seems to give about 5% in some benchmarks ' id 'b0285b47-df74-4fac-8952-bf705c048d61' date '17 February 2012' time '7:49:36 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.48' message '- more utf-8 performance tweaks' id '28563f32-1d5a-4aad-9f33-11d2468df9b7' date '17 February 2012' time '8:05:57 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.47' message '- formatting nazis from outer space' id '87cbdd2d-b4db-41ea-a1a1-851180720755' date '22 January 2012' time '9:22:46 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.46' message '- formatting nazis from outer space' id '091d7896-66a9-48d3-8a9b-10892f15085b' date '22 January 2012' time '4:47:43 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.45' message '- Issue 699: GRPharoPlatform>>#write:toFile:inFolder: uses CrLfFileStream in seaside 3.0.6.3' id '458930d3-97b2-42c2-86d9-163b972f7f44' date '22 January 2012' time '3:58:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.44' message '- Issue 676: response generators have to reset the response before generating a new one - add infrastructure to reset streams, work around Pharo stream bugs' id 'abd8769c-35eb-4673-ba88-a2e16c4fd2b6' date '26 August 2011' time '9:58:05 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.42' message '- Issue 626: Allow platforms to implement custom encoders for speed - remove #includesUnsafeUrlCharacter: and #includesUnsafeXmlCharacter: from GRPlatform, these were just speed hacks for Pharo, they are now encapsulated in a platform specific class - speed up GRPharoUtf8CodecStream >> #greaseNext:putAll:startingAt:, avoid unnecessary object allocation' id 'd92827ca-ba7c-4613-9fc2-095659ef13e6' date '15 August 2011' time '9:40:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.41' message '- remove deprecated methods and classes' id 'f363bf67-f9b2-4b88-908a-c01c6567f548' date '2 August 2011' time '9:01:03 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.40' message '- fixed formatting of return message' id '0ec7a5f7-c31c-4f65-a727-4b9856dd885c' date '25 July 2011' time '8:17:40 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.39' message '- fixed spacing in blocks' id 'f8257aec-8b3a-49e1-80f5-acd7b5fcf6c7' date '25 July 2011' time '7:23:08 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.38' message '- fixed formatting of temporaries' id 'c92b971d-e802-497c-82bc-32836a23cd2b' date '25 July 2011' time '6:31:24 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-pmm.37' message '- experimental Pharo 1.2 support' id 'aef98cdf-4936-4bbc-890c-32c11cf16ea3' date '5 March 2011' time '1:40:54 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.36' message '- Grease shouldn''t have class extensions in Seaside' id 'd1e6c559-8e94-4fab-874b-5c9e0406e0eb' date '10 February 2011' time '7:39:47 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.35' message '- went for a simple X-Sendfile design that does not use auto deploy and does not require files to be deployed in image folder' id '5f39172f-b91f-4e71-81ba-bc26c5539015' date '5 February 2011' time '5:38:29 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.34' message '- implement #greaseNext:putAll:startingAt: in more places' id 'c46b8f9b-f323-469f-a7ec-d07d6ce36165' date '28 December 2010' time '10:18:31 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.33' message '- add WriteStream compatibility methods' id '7b0a6818-acf3-4218-ba38-345034a08898' date '27 December 2010' time '1:56:43 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.32' message '- Issue 612: subscript out of bounds when encoding a single 0 character to UTF-8 - http://code.google.com/p/seaside/issues/detail?id=612' id 'd5971e3b-28be-4ace-afdc-c6feaa162a6c' date '17 November 2010' time '10:43:29 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.31' message '- fix typos' id '35eccdfe-1eaf-4082-a02b-65dc6a744943' date '30 October 2010' time '7:01:04 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.30' message '- fix comment' id '6eae4eb5-5a64-49ad-ab60-cf6627c9c8ff' date '7 October 2010' time '3:45:50 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.29' message '- remove overrides in Pharo 1.1 (WriteStream class>>crlf) - if you load this package make sure to revert Collections-Streams' id '3b0b1a91-6341-45fc-ba22-3ca77d075698' date '9 September 2010' time '12:13:35 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.28' message '- remove two overrides in Pharo 1.1 (Collection>>#sorted and Collection>>#sorted:) - if you load this package make sure to revert Collection-Abstract' id '71ae2a52-bb9b-422e-9051-56b163b16acc' date '9 September 2010' time '12:11:29 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.27' message '- removed unused variables' id '4638ee0a-a4ea-4a70-87c4-ce59ac767aab' date '22 August 2010' time '3:32:21 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-pmm.26' message '- Issue 570: iso-8859-1 doesn''t show up in the encoding list of the server adapter - http://code.google.com/p/seaside/issues/detail?id=570' id 'd9f7eda2-9872-4ee7-984f-bf022648aba8' date '16 August 2010' time '12:54:25 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.25' message '- Issue 474: Using Halos - CSS Style Editor to update CSS of a component breaks versions view with ''subscript is out of bounds: x''. - http://code.google.com/p/seaside/issues/detail?id=474' id '8497956d-987c-4dbe-935b-4ea156d26bf9' date '13 August 2010' time '12:04:07 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-DaleHenrichs.24' message '- fix Issue 574: http://code.google.com/p/seaside/issues/detail?id=574 "MessageSend>>numArgs is part of PharoCore 1.0" ' id '9e0be068-0ea5-48b2-bf8a-0311ab01f921' date '4 June 2010' time '12:20:27 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Pharo-Core-pmm.23' message '- implement correct method' id '47fc011d-40c8-44a7-a59d-526b374a264a' date '23 May 2010' time '8:19:16 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jf.22' message 'fix dependency from Grease-Pharo-Core on Seaside-Adaptors-Comanche' id '01c5a311-f795-480b-81f7-3a213fb101a9' date '22 May 2010' time '8:37:03 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-pmm.21' message '- bug fix for single character utf-8 encoding' id '17d59097-7a27-409e-a733-b7eeffded5be' date '21 May 2010' time '7:20:16 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.20' message '- bugfix - optimized Pharo implementations of testing methods' id '93655b5b-c48a-4089-b33e-db9199b0363e' date '20 May 2010' time '9:13:07 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.19' message '- speed up GRPharoUtf8CodecStream >> #nextPut:, avoid String creation' id '561bf000-b4b1-476e-a044-fdba3f8221f8' date '20 May 2010' time '11:13:09 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jok.18' message 'merge ' id '990f1a78-1fa9-b94f-ab42-8e93dc1bab17' date '15 April 2010' time '4:00:57 pm' author 'jok' ancestors ((name 'Grease-Pharo-Core-pmm.17' message '- fix off by one error' id 'b6fd6a9f-9297-4de0-a9e9-9699d5d32f66' date '12 April 2010' time '7:37:16 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.16' message '- Issue 561: remove GRCodecStream >> #binary - http://code.google.com/p/seaside/issues/detail?id=561' id 'ba77b4e9-717a-422b-81c4-713f15b9387f' date '11 April 2010' time '6:20:47 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.15' message '- fix test for SortedCollection>>#sorted: by removing some code, not really sure if this is a valid fix but it makes all tests pass' id '4cc58271-ef9c-4e96-91aa-d37e9e3d82f4' date '31 March 2010' time '8:41:10 am' author 'lr' ancestors ((name 'Grease-Pharo-Core-jok.14' message '- http://code.google.com/p/seaside/issues/detail?id=556 - add #beginsWithSubCollection: and #endsWithSubCollection:' id '180a4764-20ef-dd45-93e1-65694dc478d8' date '24 March 2010' time '12:29:49 pm' author 'jok' ancestors ((name 'Grease-Pharo-Core-pmm.13' message '- Issue 546: GCCodecEncoderStream>>next gives different types on different platforms - http://code.google.com/p/seaside/issues/detail?id=546' id 'b8302305-f692-463e-8d4a-51f29036738b' date '17 February 2010' time '8:10:56 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.12' message '- added explicit repository url' id 'd626279a-d55f-43e5-86c4-8c3eaf5d981b' date '17 February 2010' time '3:54:34 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-jf.11' message 'http://code.google.com/p/seaside/issues/detail?id=503 Implement GRVersion as a (fairly) simple version number class.' id '129da4a5-95a2-4277-812d-d509f66b8927' date '9 February 2010' time '1:10:09 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.10' message 'Add Pharo implementations of #sorted and #sorted: and fix a bug in Interval>>any' id 'e0975dcd-42ff-4b3a-8da8-7fdc28ca9afc' date '6 February 2010' time '4:43:30 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.9' message 'Remove usage of non-Grease methods #nameOfDay:, #anyOne, and several Squeak-specific Duration selectors. Add Grease tests for Duration protocols discussed with platforms. Also test for #any.' id '4810f3f7-d17c-4bfb-9421-d84dcd20a9cd' date '6 February 2010' time '1:16:17 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.8' message 'Move Seaside-specific extension methods from Grease-Pharo-Core to Seaside-Pharo-Core' id '21396770-a48e-40c6-8305-2f380cae2b94' date '26 January 2010' time '1:33:37 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.7' message 'merge' id '04e9989f-94cd-4cd3-807c-573aeb6360c4' date '29 December 2009' time '5:07:49 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.6' message '- move Task stuff into Component package - no longer need special Flow configuration settings - Make parameter to onAnswer: blocks optional - Add #call:onAnswer: which does a #show:onAnswer: and then sends a render notification; rewrite #call: to use #call:onAnswer: - Make as few of the functional tests as possible depend on Flow' id '7d74e93c-4f5d-4d06-9d6b-96df83be35ba' date '29 December 2009' time '4:09:03 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-dkh.4' message '- renamed GRPharoPlatform>>smtpServer to #seasideSmtpServer - moved #seasideSmtpServer to Seaside-Pharo-Core' id '7258ba26-985d-4a3b-82d9-7589ca1a5881' date '24 November 2009' time '9:43:55 am' author 'dkh' ancestors ((name 'Grease-Pharo-Core-dkh.3' message '- fix Issue 499: http://code.google.com/p/seaside/issues/detail?id=499' id '92ee7795-4535-43bc-af5f-04cfd2f39bd8' date '23 November 2009' time '4:06:07 pm' author 'dkh' ancestors ((name 'Grease-Pharo-Core-pmm.2' message '- support ''UTF-8'' has a codec name as well' id '0dae0ad0-c578-4797-ba1d-5cb19876a2f4' date '15 November 2009' time '11:06:59 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jf.1' message 'Rename Seaside-Platform to Grease in order to help make clear that it is not Seaside-specific and can be used by other projects as a compatibility layer. This was spawned by discussions when I started porting Magritte to VAST using the Platform layer.' id '6c0a574e-e199-4e0c-8ccd-5671da4eedf2' date '30 September 2009' time '10:47:20 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Pharo-Core-jf.5' message 'Stop using #newDay:monthNumber:year:, which is only in VW and can be worked around using #newDay:month:year: and #nameOfMonth: Stop using #daysInMonthNumber:forYear:, which is different than the method that VA already has. Some discussion on this needs to be had by all platforms but for now it can be worked around using #daysInMonth:year: and #nameOfMonth:' id '2bf8b64c-91ee-4432-8a9b-b8ab1eb475dc' date '18 December 2009' time '10:33:54 am' author 'jf' ancestors ((id '7258ba26-985d-4a3b-82d9-7589ca1a5881')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Pharo-Core-lr.17' message '- added a #newline accessor to GRPlatform that returns a string with the default newline character (sequence) - moved implementation of #convertToSmalltalkNewlines: to OBPlatform as it can now be implemented in terms of #newline and doesn''t need to be provided by other platforms anymore' id 'bf167910-58cc-4d29-b6a9-30fe0afae428' date '15 April 2010' time '7:30:55 pm' author 'lr' ancestors ((id 'ba77b4e9-717a-422b-81c4-713f15b9387f')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Pharo-Core-NickAger.49' message 'GRPharoPlatform>>#write:toFile:inFolder: changed CrLfFileStream to MultiByteFileStream (CrLfFileStream is deprecated)' id 'd9f63c7b-0139-45df-a253-63649469f427' date '19 March 2012' time '12:24:54 pm' author 'NickAger' ancestors ((name 'Grease-Pharo-Core-NickAger.48' message 'added a new method: GRPharoPlatform>>#directoriesIn: to support recursing sub-directories for file to load into a file library. Fix for: http://code.google.com/p/seaside/issues/detail?id=267' id '23a31158-9c41-49bc-a1cd-b5c3984ef2bd' date '9 March 2012' time '2:53:27 pm' author 'NickAger' ancestors ((name 'Grease-Pharo-Core-pmm.47' message ' _ ' id '706ff2de-6505-4d6e-b21d-a791e9fb3b37' date '4 March 2012' time '8:26:13 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.46' message '- fix Color >> #greaseString on Pharo 1.4' id 'd8189b05-ef89-4bf7-9a59-2141f02e1784' date '1 March 2012' time '9:25:35 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.45' message '- WAMimeDocuments can contain String or ByteArray data and break if written to a ReadWriteStream, so use RWBinaryOrTextStream that fixes the issue (hopefully?)' id 'a542095b-92ff-4f77-9383-156f2755da34' date '20 November 2011' time '5:20:30 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.44' message '- fixed deprecated message' id 'd4adf471-fac4-4097-ac23-972da5d9a2b5' date '25 September 2011' time '11:16:38 am' author 'lr' ancestors ((name 'Grease-Pharo-Core-pmm.43' message '- fix an ugly "typo"' id 'a4358e0d-4477-47d6-8f48-ed3bab5d8632' date '15 August 2011' time '10:05 pm' author 'pmm' ancestors ((id '0ec7a5f7-c31c-4f65-a727-4b9856dd885c')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'Grease-Pharo-Core-pmm.75' message '- implement missing methods' id '715a1334-30b6-4621-b714-36d26615cd4c' date '16 July 2015' time '4:41:22 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-JohanBrichau.74' message 'Missing sign on ScaledDecimal>>greaseString (https://github.com/SeasideSt/Grease/issues/1) Thanks Hilaire!' id '2d4e3c5b-a220-4771-be39-b335912e16f9' date '15 July 2015' time '1:26:55.26 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo-Core-pmm.73' message '#820 Configurations should not hold on to classes' id 'e22794f6-2f43-4c58-986c-8616f6788707' date '12 July 2015' time '10:23:49 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.72' message '- lint fixes' id '64020abe-01f6-4b35-8918-185dc34e1b90' date '19 August 2014' time '10:35:19 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.71' message 'Issue 792: Issue encoding a non-ascii character preceded by an xml-unsafe one - https://code.google.com/p/seaside/issues/detail?id=792' id 'c823f84d-3cb3-4142-a402-c513325f37d3' date '21 May 2014' time '9:34:11 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.70' message '- formatting - move GRCountingStream from Pharo-only package to Core' id 'a547a055-973b-4af4-840a-691be105670b' date '21 May 2014' time '8:57:26 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.69' message 'Issue 781: Also catch platform deprecation signals - http://code.google.com/p/seaside/issues/detail?id=781' id '62d63448-9ddd-4681-8a58-e1ab1a1613b8' date '16 February 2014' time '11:18:12 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.68' message '- fix comment' id '5b81b23d-edc1-4ad4-aa38-00ccd3732027' date '1 February 2014' time '3:14:38 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.67' message 'Issue 770: ScaledDecimal rendering support http://code.google.com/p/seaside/issues/detail?id=770' id 'a278cbb9-ca35-41a7-b8c9-48bcbaa88df3' date '15 September 2013' time '12:07:44 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.66' message '- spelling' id 'eedba520-4519-4a2f-98a2-dae65d94651f' date '14 September 2013' time '3:55:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.65' message '- Slime' id 'cec7735d-8994-44fe-a508-47eced261684' date '14 September 2013' time '10:02:13 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.64' message '- Slime' id '327ab314-0531-4261-9f19-4590f39c4bea' date '14 September 2013' time '9:51:44 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.63' message '- implement missing method' id '1cfbe808-23be-4ad3-8d2e-40a5905c85fb' date '14 September 2013' time '9:38:35 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.62' message '- update URLs' id '5af25cab-95bc-4809-83b4-13eadb393333' date '12 September 2013' time '4:09:29 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.61' message '- update URLs' id '7c04fd10-875e-4b5b-b86c-342359ccb29e' date '12 September 2013' time '4:06:59 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-JohanBrichau.60' message 'deal with #doSilently: difference from Pharo2.0 onwards' id '074cb71f-16bc-4471-ad7e-0ba3665a1672' date '10 September 2013' time '11:40:27.421 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo-Core-JohanBrichau.59' message 'added the trim* methods for pharo versions prior to 2.0' id 'a9d37f3e-7a6d-4926-87f2-771e06dc7128' date '10 September 2013' time '9:34:11.097 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo-Core-pmm.58' message '- remove Object >> #displayString again, deprecated in 3.0 -> removed in 3.1' id '5e914a2d-bd92-4062-bc89-8aa72b18331a' date '16 March 2013' time '2:12 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jf.57' message 'Cherry pick 4 methods that should have come in to Grease-Pharo-Core-pmm.51(4e5260c5-46b4-499f-bcd9-cc5e5a4e60ca) when Grease-Pharo-Core-NickAger.49 (d9f63c7b-0139-45df-a253-63649469f427) was merged in from the 3.0 to the 3.1 branch.' id 'd3d875fc-58a3-4881-8ef4-d2f0c3d4dc7c' date '13 January 2013' time '3:18:32 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-pmm.56' message '- Slime fixes, mostly recategorizations' id 'edaed043-e023-49a5-bf3d-e0a70bdd4526' date '3 September 2012' time '4:33:55 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.55' message '- formatting Nazis from outer space' id 'fb375e80-7261-4ea9-b9fe-57103fd6c1e0' date '1 September 2012' time '5:01:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.54' message '- Issue 736: implement #basicNextPutAll: on pseudo streams' id '0d54029e-c67b-4cb9-926e-80967a272d3d' date '14 August 2012' time '7:46:15 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.53' message '- Issue 733: multibyte characters broken when flushing a WAComboResponse - http://code.google.com/p/seaside/issues/detail?id=733' id 'cf4c1332-9d26-4f1c-8da4-359fc02ac66a' date '25 June 2012' time '9:05:56 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.52' message '- fix off by one error' id 'dbbe8c77-5681-47b0-bac0-9750ca2db809' date '21 April 2012' time '9:01:07 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.51' message '- merge 3.0 trunk' id '4e5260c5-46b4-499f-bcd9-cc5e5a4e60ca' date '29 March 2012' time '7:24:59 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.50' message '- merge Pharo 1.4 fixes from 3.0 branch' id 'a8f92057-af3a-4e85-ab95-f7b445156b55' date '6 March 2012' time '8:00:36 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.49' message '- inline GRPharoUtf8Codec >> #decode:, reduce the amount of allocation that has to be done, seems to give about 5% in some benchmarks ' id 'b0285b47-df74-4fac-8952-bf705c048d61' date '17 February 2012' time '7:49:36 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.48' message '- more utf-8 performance tweaks' id '28563f32-1d5a-4aad-9f33-11d2468df9b7' date '17 February 2012' time '8:05:57 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.47' message '- formatting nazis from outer space' id '87cbdd2d-b4db-41ea-a1a1-851180720755' date '22 January 2012' time '9:22:46 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.46' message '- formatting nazis from outer space' id '091d7896-66a9-48d3-8a9b-10892f15085b' date '22 January 2012' time '4:47:43 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.45' message '- Issue 699: GRPharoPlatform>>#write:toFile:inFolder: uses CrLfFileStream in seaside 3.0.6.3' id '458930d3-97b2-42c2-86d9-163b972f7f44' date '22 January 2012' time '3:58:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.44' message '- Issue 676: response generators have to reset the response before generating a new one - add infrastructure to reset streams, work around Pharo stream bugs' id 'abd8769c-35eb-4673-ba88-a2e16c4fd2b6' date '26 August 2011' time '9:58:05 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.42' message '- Issue 626: Allow platforms to implement custom encoders for speed - remove #includesUnsafeUrlCharacter: and #includesUnsafeXmlCharacter: from GRPlatform, these were just speed hacks for Pharo, they are now encapsulated in a platform specific class - speed up GRPharoUtf8CodecStream >> #greaseNext:putAll:startingAt:, avoid unnecessary object allocation' id 'd92827ca-ba7c-4613-9fc2-095659ef13e6' date '15 August 2011' time '9:40:58 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.41' message '- remove deprecated methods and classes' id 'f363bf67-f9b2-4b88-908a-c01c6567f548' date '2 August 2011' time '9:01:03 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.40' message '- fixed formatting of return message' id '0ec7a5f7-c31c-4f65-a727-4b9856dd885c' date '25 July 2011' time '8:17:40 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.39' message '- fixed spacing in blocks' id 'f8257aec-8b3a-49e1-80f5-acd7b5fcf6c7' date '25 July 2011' time '7:23:08 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.38' message '- fixed formatting of temporaries' id 'c92b971d-e802-497c-82bc-32836a23cd2b' date '25 July 2011' time '6:31:24 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-pmm.37' message '- experimental Pharo 1.2 support' id 'aef98cdf-4936-4bbc-890c-32c11cf16ea3' date '5 March 2011' time '1:40:54 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.36' message '- Grease shouldn''t have class extensions in Seaside' id 'd1e6c559-8e94-4fab-874b-5c9e0406e0eb' date '10 February 2011' time '7:39:47 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.35' message '- went for a simple X-Sendfile design that does not use auto deploy and does not require files to be deployed in image folder' id '5f39172f-b91f-4e71-81ba-bc26c5539015' date '5 February 2011' time '5:38:29 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.34' message '- implement #greaseNext:putAll:startingAt: in more places' id 'c46b8f9b-f323-469f-a7ec-d07d6ce36165' date '28 December 2010' time '10:18:31 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.33' message '- add WriteStream compatibility methods' id '7b0a6818-acf3-4218-ba38-345034a08898' date '27 December 2010' time '1:56:43 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.32' message '- Issue 612: subscript out of bounds when encoding a single 0 character to UTF-8 - http://code.google.com/p/seaside/issues/detail?id=612' id 'd5971e3b-28be-4ace-afdc-c6feaa162a6c' date '17 November 2010' time '10:43:29 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.31' message '- fix typos' id '35eccdfe-1eaf-4082-a02b-65dc6a744943' date '30 October 2010' time '7:01:04 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.30' message '- fix comment' id '6eae4eb5-5a64-49ad-ab60-cf6627c9c8ff' date '7 October 2010' time '3:45:50 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.29' message '- remove overrides in Pharo 1.1 (WriteStream class>>crlf) - if you load this package make sure to revert Collections-Streams' id '3b0b1a91-6341-45fc-ba22-3ca77d075698' date '9 September 2010' time '12:13:35 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.28' message '- remove two overrides in Pharo 1.1 (Collection>>#sorted and Collection>>#sorted:) - if you load this package make sure to revert Collection-Abstract' id '71ae2a52-bb9b-422e-9051-56b163b16acc' date '9 September 2010' time '12:11:29 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.27' message '- removed unused variables' id '4638ee0a-a4ea-4a70-87c4-ce59ac767aab' date '22 August 2010' time '3:32:21 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-pmm.26' message '- Issue 570: iso-8859-1 doesn''t show up in the encoding list of the server adapter - http://code.google.com/p/seaside/issues/detail?id=570' id 'd9f7eda2-9872-4ee7-984f-bf022648aba8' date '16 August 2010' time '12:54:25 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.25' message '- Issue 474: Using Halos - CSS Style Editor to update CSS of a component breaks versions view with ''subscript is out of bounds: x''. - http://code.google.com/p/seaside/issues/detail?id=474' id '8497956d-987c-4dbe-935b-4ea156d26bf9' date '13 August 2010' time '12:04:07 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-DaleHenrichs.24' message '- fix Issue 574: http://code.google.com/p/seaside/issues/detail?id=574 "MessageSend>>numArgs is part of PharoCore 1.0" ' id '9e0be068-0ea5-48b2-bf8a-0311ab01f921' date '4 June 2010' time '12:20:27 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Pharo-Core-pmm.23' message '- implement correct method' id '47fc011d-40c8-44a7-a59d-526b374a264a' date '23 May 2010' time '8:19:16 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jf.22' message 'fix dependency from Grease-Pharo-Core on Seaside-Adaptors-Comanche' id '01c5a311-f795-480b-81f7-3a213fb101a9' date '22 May 2010' time '8:37:03 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-pmm.21' message '- bug fix for single character utf-8 encoding' id '17d59097-7a27-409e-a733-b7eeffded5be' date '21 May 2010' time '7:20:16 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.20' message '- bugfix - optimized Pharo implementations of testing methods' id '93655b5b-c48a-4089-b33e-db9199b0363e' date '20 May 2010' time '9:13:07 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.19' message '- speed up GRPharoUtf8CodecStream >> #nextPut:, avoid String creation' id '561bf000-b4b1-476e-a044-fdba3f8221f8' date '20 May 2010' time '11:13:09 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jok.18' message 'merge ' id '990f1a78-1fa9-b94f-ab42-8e93dc1bab17' date '15 April 2010' time '4:00:57 pm' author 'jok' ancestors ((name 'Grease-Pharo-Core-pmm.17' message '- fix off by one error' id 'b6fd6a9f-9297-4de0-a9e9-9699d5d32f66' date '12 April 2010' time '7:37:16 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.16' message '- Issue 561: remove GRCodecStream >> #binary - http://code.google.com/p/seaside/issues/detail?id=561' id 'ba77b4e9-717a-422b-81c4-713f15b9387f' date '11 April 2010' time '6:20:47 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.15' message '- fix test for SortedCollection>>#sorted: by removing some code, not really sure if this is a valid fix but it makes all tests pass' id '4cc58271-ef9c-4e96-91aa-d37e9e3d82f4' date '31 March 2010' time '8:41:10 am' author 'lr' ancestors ((name 'Grease-Pharo-Core-jok.14' message '- http://code.google.com/p/seaside/issues/detail?id=556 - add #beginsWithSubCollection: and #endsWithSubCollection:' id '180a4764-20ef-dd45-93e1-65694dc478d8' date '24 March 2010' time '12:29:49 pm' author 'jok' ancestors ((name 'Grease-Pharo-Core-pmm.13' message '- Issue 546: GCCodecEncoderStream>>next gives different types on different platforms - http://code.google.com/p/seaside/issues/detail?id=546' id 'b8302305-f692-463e-8d4a-51f29036738b' date '17 February 2010' time '8:10:56 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.12' message '- added explicit repository url' id 'd626279a-d55f-43e5-86c4-8c3eaf5d981b' date '17 February 2010' time '3:54:34 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-jf.11' message 'http://code.google.com/p/seaside/issues/detail?id=503 Implement GRVersion as a (fairly) simple version number class.' id '129da4a5-95a2-4277-812d-d509f66b8927' date '9 February 2010' time '1:10:09 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.10' message 'Add Pharo implementations of #sorted and #sorted: and fix a bug in Interval>>any' id 'e0975dcd-42ff-4b3a-8da8-7fdc28ca9afc' date '6 February 2010' time '4:43:30 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.9' message 'Remove usage of non-Grease methods #nameOfDay:, #anyOne, and several Squeak-specific Duration selectors. Add Grease tests for Duration protocols discussed with platforms. Also test for #any.' id '4810f3f7-d17c-4bfb-9421-d84dcd20a9cd' date '6 February 2010' time '1:16:17 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.8' message 'Move Seaside-specific extension methods from Grease-Pharo-Core to Seaside-Pharo-Core' id '21396770-a48e-40c6-8305-2f380cae2b94' date '26 January 2010' time '1:33:37 am' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.7' message 'merge' id '04e9989f-94cd-4cd3-807c-573aeb6360c4' date '29 December 2009' time '5:07:49 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-jf.6' message '- move Task stuff into Component package - no longer need special Flow configuration settings - Make parameter to onAnswer: blocks optional - Add #call:onAnswer: which does a #show:onAnswer: and then sends a render notification; rewrite #call: to use #call:onAnswer: - Make as few of the functional tests as possible depend on Flow' id '7d74e93c-4f5d-4d06-9d6b-96df83be35ba' date '29 December 2009' time '4:09:03 pm' author 'jf' ancestors ((name 'Grease-Pharo-Core-dkh.4' message '- renamed GRPharoPlatform>>smtpServer to #seasideSmtpServer - moved #seasideSmtpServer to Seaside-Pharo-Core' id '7258ba26-985d-4a3b-82d9-7589ca1a5881' date '24 November 2009' time '9:43:55 am' author 'dkh' ancestors ((name 'Grease-Pharo-Core-dkh.3' message '- fix Issue 499: http://code.google.com/p/seaside/issues/detail?id=499' id '92ee7795-4535-43bc-af5f-04cfd2f39bd8' date '23 November 2009' time '4:06:07 pm' author 'dkh' ancestors ((name 'Grease-Pharo-Core-pmm.2' message '- support ''UTF-8'' has a codec name as well' id '0dae0ad0-c578-4797-ba1d-5cb19876a2f4' date '15 November 2009' time '11:06:59 am' author 'pmm' ancestors ((name 'Grease-Pharo-Core-jf.1' message 'Rename Seaside-Platform to Grease in order to help make clear that it is not Seaside-specific and can be used by other projects as a compatibility layer. This was spawned by discussions when I started porting Magritte to VAST using the Platform layer.' id '6c0a574e-e199-4e0c-8ccd-5671da4eedf2' date '30 September 2009' time '10:47:20 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Pharo-Core-jf.5' message 'Stop using #newDay:monthNumber:year:, which is only in VW and can be worked around using #newDay:month:year: and #nameOfMonth: Stop using #daysInMonthNumber:forYear:, which is different than the method that VA already has. Some discussion on this needs to be had by all platforms but for now it can be worked around using #daysInMonth:year: and #nameOfMonth:' id '2bf8b64c-91ee-4432-8a9b-b8ab1eb475dc' date '18 December 2009' time '10:33:54 am' author 'jf' ancestors ((id '7258ba26-985d-4a3b-82d9-7589ca1a5881')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Pharo-Core-lr.17' message '- added a #newline accessor to GRPlatform that returns a string with the default newline character (sequence) - moved implementation of #convertToSmalltalkNewlines: to OBPlatform as it can now be implemented in terms of #newline and doesn''t need to be provided by other platforms anymore' id 'bf167910-58cc-4d29-b6a9-30fe0afae428' date '15 April 2010' time '7:30:55 pm' author 'lr' ancestors ((id 'ba77b4e9-717a-422b-81c4-713f15b9387f')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Pharo-Core-NickAger.49' message 'GRPharoPlatform>>#write:toFile:inFolder: changed CrLfFileStream to MultiByteFileStream (CrLfFileStream is deprecated)' id 'd9f63c7b-0139-45df-a253-63649469f427' date '19 March 2012' time '12:24:54 pm' author 'NickAger' ancestors ((name 'Grease-Pharo-Core-NickAger.48' message 'added a new method: GRPharoPlatform>>#directoriesIn: to support recursing sub-directories for file to load into a file library. Fix for: http://code.google.com/p/seaside/issues/detail?id=267' id '23a31158-9c41-49bc-a1cd-b5c3984ef2bd' date '9 March 2012' time '2:53:27 pm' author 'NickAger' ancestors ((name 'Grease-Pharo-Core-pmm.47' message ' _ ' id '706ff2de-6505-4d6e-b21d-a791e9fb3b37' date '4 March 2012' time '8:26:13 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-pmm.46' message '- fix Color >> #greaseString on Pharo 1.4' id 'd8189b05-ef89-4bf7-9a59-2141f02e1784' date '1 March 2012' time '9:25:35 pm' author 'pmm' ancestors ((name 'Grease-Pharo-Core-lr.45' message '- WAMimeDocuments can contain String or ByteArray data and break if written to a ReadWriteStream, so use RWBinaryOrTextStream that fixes the issue (hopefully?)' id 'a542095b-92ff-4f77-9383-156f2755da34' date '20 November 2011' time '5:20:30 pm' author 'lr' ancestors ((name 'Grease-Pharo-Core-lr.44' message '- fixed deprecated message' id 'd4adf471-fac4-4097-ac23-972da5d9a2b5' date '25 September 2011' time '11:16:38 am' author 'lr' ancestors ((name 'Grease-Pharo-Core-pmm.43' message '- fix an ugly "typo"' id 'a4358e0d-4477-47d6-8f48-ed3bab5d8632' date '15 August 2011' time '10:05 pm' author 'pmm' ancestors ((id '0ec7a5f7-c31c-4f65-a727-4b9856dd885c')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/instance/invalidUtf8.st b/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/instance/invalidUtf8.st new file mode 100644 index 00000000..e4481c22 --- /dev/null +++ b/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/instance/invalidUtf8.st @@ -0,0 +1,3 @@ +private +invalidUtf8 + ^ GRInvalidUtf8Error signal: 'Invalid UTF-8 input' \ No newline at end of file diff --git a/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/methodProperties.json b/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/methodProperties.json index 11f7bec2..6635b824 100644 --- a/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/methodProperties.json +++ b/repository/Grease-Pharo30-Core.package/GRPharoUtf8Codec.class/methodProperties.json @@ -7,5 +7,6 @@ "decode:" : "pmm 2/17/2012 19:45", "decoderFor:" : "jf 9/30/2009 00:46", "encoderFor:" : "jf 9/30/2009 00:46", + "invalidUtf8" : "JohanBrichau 1/18/2016 08:13", "name" : "pmm 2/20/2009 13:25", "url" : "pmm 2/20/2009 12:50" } } diff --git a/repository/Grease-Pharo30-Core.package/monticello.meta/version b/repository/Grease-Pharo30-Core.package/monticello.meta/version index 9cb14fc7..a923dec9 100644 --- a/repository/Grease-Pharo30-Core.package/monticello.meta/version +++ b/repository/Grease-Pharo30-Core.package/monticello.meta/version @@ -1 +1 @@ -(name 'Grease-Pharo30-Core-JohanBrichau.18' message 'Implements #bindingOf: in Pharo3+' id 'cbd9dc15-a5ad-4b29-8399-e185c2b38f8e' date '12 July 2015' time '2:47:09.890712 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.17' message 'Missing sign on ScaledDecimal>>greaseString (https://github.com/SeasideSt/Grease/issues/1) Thanks Hilaire!' id 'bd1dc3a1-c04d-47ab-9637-c6ba13afe679' date '25 May 2015' time '9:05:39.60184 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.16' message 'additional file library methods' id 'bd9e3924-0ff7-443a-a361-68768ee52b77' date '3 October 2014' time '8:05:16.758249 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-pmm.15' message 'Issue 792: Issue encoding a non-ascii character preceded by an xml-unsafe one - https://code.google.com/p/seaside/issues/detail?id=792' id 'ee0aef7f-007a-4b55-ab96-ac338d55fed0' date '21 May 2014' time '9:30:02.077151 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.14' message 'Issue 789: Running WAFilelibraryTest on Pharo3 leaves Seaside-Tests-Core package in a dirty state https://code.google.com/p/seaside/issues/detail?id=789' id 'e845ca33-9427-435c-9a3c-f3d3a6669295' date '19 April 2014' time '5:23:30.089075 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.13' message 'move GRCountingStream from Pharo-only package to Core' id 'af3fd2e2-3290-4de5-8ea1-a92a78eeed4a' date '16 February 2014' time '9:29:51.277053 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.12' message 'bugfix #readWriteByteStream http://forum.world.st/errorImproperStore-error-because-of-change-in-GRPharoPlatform-gt-gt-readWriteByteStream-td4737266.html' id 'f0022f14-d33b-47cd-98e9-891c3d72e7af' date '18 January 2014' time '7:06:52.139327 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-pmm.11' message 'Issue 770: ScaledDecimal rendering support http://code.google.com/p/seaside/issues/detail?id=770' id '9cfba12f-0b05-432d-84d1-d5cd8bf23dfe' date '15 September 2013' time '12:25:15.521 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.10' message '- add #doSilentlyBack:' id '5ccc9407-d97b-45f3-b9b0-c5135257da27' date '12 September 2013' time '6:07:05.251 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.9' message '- fix URLs' id 'd89a3a93-8df2-4fef-b4ed-6d99b3e4befb' date '12 September 2013' time '4:01:20.912841 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.8' message '- fix metadata' id '53897910-3143-4a50-8b56-3af0a1219593' date '12 September 2013' time '3:55:52.88988 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.7' message 'Issue 760: addAllFilesIn: is broken in Pharo 20 http://code.google.com/p/seaside/issues/detail?id=760' id '326a7053-4672-4be5-b268-90e286a74f6c' date '12 September 2013' time '12:14:04.352265 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.6' message 'Issue 760: addAllFilesIn: is broken in Pharo 20 http://code.google.com/p/seaside/issues/detail?id=760' id 'e43e7571-1bd1-4733-b53f-72a19245eed1' date '12 September 2013' time '12:10:25.447758 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.5' message '- FileSystem fixes' id '2a3dc16b-d38e-4f50-be28-2138a431d832' date '12 September 2013' time '12:05:46.224478 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.4' message '- fix compilation' id '8d649251-34e2-4ed0-a007-223b556888a8' date '12 September 2013' time '11:25:48.069182 am' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-DamienCassou.3' message '- Pharo 3.0: no need for sending #defaultMethodTrailer anymore' id 'c5d1b0db-bf87-43a3-bd4b-9d4d47169699' date '9 September 2013' time '10:39:38.671985 am' author 'DamienCassou' ancestors ((name 'Grease-Pharo30-Core-MattSpr.2' message 'Fixed #compile:into:classified: for Pharo3.0.' id '26925549-0374-4ecc-a49b-fd8d4e28962d' date '28 August 2013' time '10:43:32.58787 am' author 'MattSpr' ancestors ((name 'Grease-Pharo30-Core-MattSpr.1' message 'Copy of package from Pharo 2.0.' id '6da53441-b2d0-49dc-ae04-15d757b7a8af' date '28 August 2013' time '10:41:57.145859 am' author 'MattSpr' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'Grease-Pharo30-Core-JohanBrichau.19' message 'Added missing method GRPharoUtf8Coded>>invalidUtf8' id '3fc62b04-668c-4f6d-801d-54640757217c' date '18 January 2016' time '8:15:58.41072 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.18' message 'Implements #bindingOf: in Pharo3+' id 'cbd9dc15-a5ad-4b29-8399-e185c2b38f8e' date '12 July 2015' time '2:47:09.890712 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.17' message 'Missing sign on ScaledDecimal>>greaseString (https://github.com/SeasideSt/Grease/issues/1) Thanks Hilaire!' id 'bd1dc3a1-c04d-47ab-9637-c6ba13afe679' date '25 May 2015' time '9:05:39.60184 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.16' message 'additional file library methods' id 'bd9e3924-0ff7-443a-a361-68768ee52b77' date '3 October 2014' time '8:05:16.758249 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-pmm.15' message 'Issue 792: Issue encoding a non-ascii character preceded by an xml-unsafe one - https://code.google.com/p/seaside/issues/detail?id=792' id 'ee0aef7f-007a-4b55-ab96-ac338d55fed0' date '21 May 2014' time '9:30:02.077151 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.14' message 'Issue 789: Running WAFilelibraryTest on Pharo3 leaves Seaside-Tests-Core package in a dirty state https://code.google.com/p/seaside/issues/detail?id=789' id 'e845ca33-9427-435c-9a3c-f3d3a6669295' date '19 April 2014' time '5:23:30.089075 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.13' message 'move GRCountingStream from Pharo-only package to Core' id 'af3fd2e2-3290-4de5-8ea1-a92a78eeed4a' date '16 February 2014' time '9:29:51.277053 pm' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-JohanBrichau.12' message 'bugfix #readWriteByteStream http://forum.world.st/errorImproperStore-error-because-of-change-in-GRPharoPlatform-gt-gt-readWriteByteStream-td4737266.html' id 'f0022f14-d33b-47cd-98e9-891c3d72e7af' date '18 January 2014' time '7:06:52.139327 am' author 'JohanBrichau' ancestors ((name 'Grease-Pharo30-Core-pmm.11' message 'Issue 770: ScaledDecimal rendering support http://code.google.com/p/seaside/issues/detail?id=770' id '9cfba12f-0b05-432d-84d1-d5cd8bf23dfe' date '15 September 2013' time '12:25:15.521 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.10' message '- add #doSilentlyBack:' id '5ccc9407-d97b-45f3-b9b0-c5135257da27' date '12 September 2013' time '6:07:05.251 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.9' message '- fix URLs' id 'd89a3a93-8df2-4fef-b4ed-6d99b3e4befb' date '12 September 2013' time '4:01:20.912841 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.8' message '- fix metadata' id '53897910-3143-4a50-8b56-3af0a1219593' date '12 September 2013' time '3:55:52.88988 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.7' message 'Issue 760: addAllFilesIn: is broken in Pharo 20 http://code.google.com/p/seaside/issues/detail?id=760' id '326a7053-4672-4be5-b268-90e286a74f6c' date '12 September 2013' time '12:14:04.352265 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.6' message 'Issue 760: addAllFilesIn: is broken in Pharo 20 http://code.google.com/p/seaside/issues/detail?id=760' id 'e43e7571-1bd1-4733-b53f-72a19245eed1' date '12 September 2013' time '12:10:25.447758 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.5' message '- FileSystem fixes' id '2a3dc16b-d38e-4f50-be28-2138a431d832' date '12 September 2013' time '12:05:46.224478 pm' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.4' message '- fix compilation' id '8d649251-34e2-4ed0-a007-223b556888a8' date '12 September 2013' time '11:25:48.069182 am' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-DamienCassou.3' message '- Pharo 3.0: no need for sending #defaultMethodTrailer anymore' id 'c5d1b0db-bf87-43a3-bd4b-9d4d47169699' date '9 September 2013' time '10:39:38.671985 am' author 'DamienCassou' ancestors ((name 'Grease-Pharo30-Core-MattSpr.2' message 'Fixed #compile:into:classified: for Pharo3.0.' id '26925549-0374-4ecc-a49b-fd8d4e28962d' date '28 August 2013' time '10:43:32.58787 am' author 'MattSpr' ancestors ((name 'Grease-Pharo30-Core-MattSpr.1' message 'Copy of package from Pharo 2.0.' id '6da53441-b2d0-49dc-ae04-15d757b7a8af' date '28 August 2013' time '10:41:57.145859 am' author 'MattSpr' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/defaultDirectoryPathString.st b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/defaultDirectoryPathString.st new file mode 100644 index 00000000..9121ad38 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/defaultDirectoryPathString.st @@ -0,0 +1,3 @@ +file library +defaultDirectoryPathString + ^ FileDirectory default fullName \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/fileNameFor..st b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/fileNameFor..st new file mode 100644 index 00000000..679781ba --- /dev/null +++ b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/fileNameFor..st @@ -0,0 +1,7 @@ +file library +fileNameFor: aPathString + | path | + path := FileDirectory default fullPathFor: aPathString. + ^ (path size > 1 and: [ path endsWith: FileDirectory slash ]) + ifTrue: [ path allButLast: FileDirectory slash size ] + ifFalse: [ path ] \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/fileStreamOn.do.binary..st b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/fileStreamOn.do.binary..st new file mode 100644 index 00000000..2fd81137 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/fileStreamOn.do.binary..st @@ -0,0 +1,13 @@ +file library +fileStreamOn: aString do: aBlock binary: aBoolean + ^ aBoolean + ifTrue: [ + FileStream fileNamed: aString do: [ :stream | + stream binary. + aBlock value: stream ] ] + ifFalse: [ + MultiByteFileStream fileNamed: aString do: [ :stream | + stream + ascii; + wantsLineEndConversion: true. + aBlock value: stream ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/isDirectory..st b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/isDirectory..st new file mode 100644 index 00000000..74d6fa61 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/instance/isDirectory..st @@ -0,0 +1,3 @@ +file library +isDirectory: aPathString + ^ (FileDirectory forFileName: aPathString) directoryEntry isDirectory \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/methodProperties.json b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/methodProperties.json index ca6fb584..34a4e0b6 100644 --- a/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/methodProperties.json +++ b/repository/Grease-Squeak-Core.package/GRSqueakPlatform.class/methodProperties.json @@ -2,12 +2,16 @@ "class" : { "initialize" : "JohnMcKeon 3/19/2015 22:16" }, "instance" : { + "defaultDirectoryPathString" : "pmm 7/15/2015 15:07", "deleteFile:inFolder:" : "JohnMcKeon 12/26/2014 19:35", "directoriesIn:" : "JohnMcKeon 12/31/2014 09:23", "doSilently:" : "JohnMcKeon 12/26/2014 19:36", "ensureExistenceOfFolder:" : "JohnMcKeon 12/31/2014 09:32", "fileExists:" : "JohnMcKeon 12/31/2014 09:35", + "fileNameFor:" : "pmm 7/15/2015 16:48", + "fileStreamOn:do:binary:" : "pmm 7/15/2015 14:47", "filesIn:" : "JohnMcKeon 12/26/2014 19:35", + "isDirectory:" : "pmm 7/15/2015 15:21", "localNameOf:" : "JohnMcKeon 12/27/2014 11:04", "pathSeparator" : "JohnMcKeon 12/26/2014 19:35", "write:toFile:inFolder:" : "JohnMcKeon 12/26/2014 19:36" } } diff --git a/repository/Grease-Squeak-Core.package/Object.extension/instance/sizeInMemory.st b/repository/Grease-Squeak-Core.package/Object.extension/instance/sizeInMemory.st new file mode 100644 index 00000000..aa28fb3b --- /dev/null +++ b/repository/Grease-Squeak-Core.package/Object.extension/instance/sizeInMemory.st @@ -0,0 +1,23 @@ +*grease-squeak-core +sizeInMemory + "Answer the number of bytes consumed by this instance including object header." + | contentBytes | + + contentBytes := Smalltalk wordSize. "base header" + contentBytes := contentBytes + (self class instSize * Smalltalk wordSize). "instance vars" + + self class isVariable ifTrue:[ | bytesPerElement | "indexed elements" + bytesPerElement := self class isBytes ifTrue: [1] ifFalse: [4]. + contentBytes := (contentBytes + (self basicSize * bytesPerElement)). + "If we are not filling an ammount of bytes multiple of the wordSize, we do it" + (contentBytes \\ Smalltalk wordSize) = 0 ifFalse: [ + | extraBytesToFillAWord | + extraBytesToFillAWord := Smalltalk wordSize - (contentBytes \\ Smalltalk wordSize). + contentBytes := contentBytes + extraBytesToFillAWord. + ] + ]. + + contentBytes > 255 ifTrue: [ contentBytes := contentBytes + (2 * Smalltalk wordSize) ] + ifFalse: [ contentBytes := contentBytes + Smalltalk wordSize + ]. + ^contentBytes \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/Object.extension/methodProperties.json b/repository/Grease-Squeak-Core.package/Object.extension/methodProperties.json new file mode 100644 index 00000000..d4e637d1 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/Object.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "sizeInMemory" : "cmm 10/7/2015 10:22" } } diff --git a/repository/Grease-Squeak-Core.package/Object.extension/properties.json b/repository/Grease-Squeak-Core.package/Object.extension/properties.json new file mode 100644 index 00000000..3d3b9ec4 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/Object.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Object" } diff --git a/repository/Grease-Squeak-Core.package/SmallInteger.extension/instance/sizeInMemory.st b/repository/Grease-Squeak-Core.package/SmallInteger.extension/instance/sizeInMemory.st new file mode 100644 index 00000000..27560ae1 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/SmallInteger.extension/instance/sizeInMemory.st @@ -0,0 +1,4 @@ +*grease-squeak-core +sizeInMemory + "SmallInteger occupy 0 bytes since the only space occupied by a SmallInteger is the space of the slot containing it. There is no SmallInteger object beyond the slot. From another POV, it could be 4, the size of the slot. But we don't count the size of the slots, they are already counted in the containing object, that's why it should answer 0." + ^0. \ No newline at end of file diff --git a/repository/Grease-Squeak-Core.package/SmallInteger.extension/methodProperties.json b/repository/Grease-Squeak-Core.package/SmallInteger.extension/methodProperties.json new file mode 100644 index 00000000..2a06daf2 --- /dev/null +++ b/repository/Grease-Squeak-Core.package/SmallInteger.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "sizeInMemory" : "pmm 7/15/2015 16:31" } } diff --git a/repository/Grease-Squeak-Core.package/SmallInteger.extension/properties.json b/repository/Grease-Squeak-Core.package/SmallInteger.extension/properties.json new file mode 100644 index 00000000..d2d9ab4a --- /dev/null +++ b/repository/Grease-Squeak-Core.package/SmallInteger.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "SmallInteger" } diff --git a/repository/Grease-Squeak-Core.package/monticello.meta/version b/repository/Grease-Squeak-Core.package/monticello.meta/version index d610ef96..592642f1 100644 --- a/repository/Grease-Squeak-Core.package/monticello.meta/version +++ b/repository/Grease-Squeak-Core.package/monticello.meta/version @@ -1 +1 @@ -(name 'Grease-Squeak-Core-JohnMcKeon.2' message '-add override of class initialize method' id '22c9a55a-0754-2a4c-8028-482fa4ffc669' date '19 March 2015' time '10:18:53.936 pm' author 'JohnMcKeon' ancestors ((name 'Grease-Squeak-Core-JohnMcKeon.1' message '-grease for squeak' id '76e50246-7376-7f43-9e50-daa9d7108db6' date '16 March 2015' time '9:14:49.119 pm' author 'JohnMcKeon' ancestors () stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'Grease-Squeak-Core-JohanBrichau.6' message 'Object>>#sizeInMemory asks #isCompact to determine the number of bytes, but this has been removed from Squeak. Thanks Chris Muller' id '5899d218-fe39-41b2-880a-d052b41d0d63' date '24 October 2015' time '5:24:10.125 pm' author 'JB' ancestors ((name 'Grease-Squeak-Core-pmm.5' message '- add #sizeInMemory to Squeak' id '407fc250-3664-4ffb-ae92-17102efa6e47' date '15 July 2015' time '6:09:33.359 pm' author 'pmm' ancestors ((name 'Grease-Squeak-Core-pmm.4' message '- add more missing methods' id '1e5dee9a-f686-43eb-91e2-5942fe6143d5' date '15 July 2015' time '3:34:35.74 pm' author 'pmm' ancestors ((name 'Grease-Squeak-Core-pmm.3' message '- implement missing method' id '3683851e-6da7-4972-afa0-f4928390b3a9' date '15 July 2015' time '2:48:40.968 pm' author 'pmm' ancestors ((name 'Grease-Squeak-Core-JohnMcKeon.2' message '-add override of class initialize method' id '22c9a55a-0754-2a4c-8028-482fa4ffc669' date '19 March 2015' time '10:18:53.936 pm' author 'JohnMcKeon' ancestors ((name 'Grease-Squeak-Core-JohnMcKeon.1' message '-grease for squeak' id '76e50246-7376-7f43-9e50-daa9d7108db6' date '16 March 2015' time '9:14:49.119 pm' author 'JohnMcKeon' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/.filetree b/repository/Grease-Squeak5-Core.package/.filetree new file mode 100644 index 00000000..8998102c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/.filetree @@ -0,0 +1,4 @@ +{ + "noMethodMetaData" : true, + "separateMethodMetaAndSource" : false, + "useCypressPropertiesFile" : true } diff --git a/repository/Grease-Squeak5-Core.package/Behavior.extension/instance/fullName.st b/repository/Grease-Squeak5-Core.package/Behavior.extension/instance/fullName.st new file mode 100644 index 00000000..d002f57c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Behavior.extension/instance/fullName.st @@ -0,0 +1,5 @@ +*grease-squeak5-core +fullName + "In VW, will include the namespace" + + ^ self name \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Behavior.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Behavior.extension/methodProperties.json new file mode 100644 index 00000000..fe28fb35 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Behavior.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "fullName" : "lr 7/25/2011 19:45" } } diff --git a/repository/Grease-Squeak5-Core.package/Behavior.extension/properties.json b/repository/Grease-Squeak5-Core.package/Behavior.extension/properties.json new file mode 100644 index 00000000..37061187 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Behavior.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Behavior" } diff --git a/repository/Grease-Squeak5-Core.package/BlockClosure.extension/instance/fixCallbackTemps.st b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/instance/fixCallbackTemps.st new file mode 100644 index 00000000..e22afa1b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/instance/fixCallbackTemps.st @@ -0,0 +1,2 @@ +*grease-squeak5-core +fixCallbackTemps \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/BlockClosure.extension/instance/valueWithPossibleArguments..st b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/instance/valueWithPossibleArguments..st new file mode 100644 index 00000000..a4e95b08 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/instance/valueWithPossibleArguments..st @@ -0,0 +1,11 @@ +*grease-squeak5-core +valueWithPossibleArguments: anArray + | args | + (anArray size == self numArgs) + ifTrue: [ ^ self valueWithArguments: anArray ]. + args := Array new: self numArgs. + args replaceFrom: 1 + to: (anArray size min: args size) + with: anArray + startingAt: 1. + ^ self valueWithArguments: args \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/BlockClosure.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/methodProperties.json new file mode 100644 index 00000000..641628e4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/methodProperties.json @@ -0,0 +1,6 @@ +{ + "class" : { + }, + "instance" : { + "fixCallbackTemps" : "lr 4/8/2009 13:33", + "valueWithPossibleArguments:" : "lr 4/8/2009 13:36" } } diff --git a/repository/Grease-Squeak5-Core.package/BlockClosure.extension/properties.json b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/properties.json new file mode 100644 index 00000000..1d6f4884 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockClosure.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "BlockClosure" } diff --git a/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/fixCallbackTemps.st b/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/fixCallbackTemps.st new file mode 100644 index 00000000..113990d1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/fixCallbackTemps.st @@ -0,0 +1,17 @@ +*grease-squeak5-core +fixCallbackTemps + "Fix the values of the temporary variables used in the block that are + ordinarily shared with the method in which the block is defined. + + This is needed because Squeak is a crappy Smalltalk implementation + that does not have full blcck closures." + + | temps | + home := home copy. + home swapSender: nil. + home isMethodContext + ifFalse: [ ^ self ]. + temps := self tempVarRefs. + 1 to: home size do: [ :index | + (temps includes: index) + ifFalse: [ home tempAt: index put: nil ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/tempVarRefs.st b/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/tempVarRefs.st new file mode 100644 index 00000000..b0652449 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/tempVarRefs.st @@ -0,0 +1,16 @@ +*grease-squeak5-core +tempVarRefs + | method scanner end tempVars byte type offset | + home ifNil: [ ^ false ]. + tempVars := Set new. + method := self method. + "Determine end of block from long jump preceding it" + end := (method at: startpc - 2) \\ 16 - 4 * 256 + (method at: startpc - 1) + startpc - 1. + scanner := InstructionStream new method: method pc: startpc. + [ scanner pc <= end ] whileTrue: [ + byte := scanner nextByte. + type := byte // 16. + offset := byte \\ 16. + type = 1 ifTrue: [ tempVars add: offset + 1 ]. + scanner nextInstruction ]. + ^ tempVars \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/valueWithPossibleArguments..st b/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/valueWithPossibleArguments..st new file mode 100644 index 00000000..6dd47063 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockContext.extension/instance/valueWithPossibleArguments..st @@ -0,0 +1,3 @@ +*grease-squeak5-core +valueWithPossibleArguments: anArray + ^ self valueWithEnoughArguments: anArray \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/BlockContext.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/BlockContext.extension/methodProperties.json new file mode 100644 index 00000000..73532ed7 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockContext.extension/methodProperties.json @@ -0,0 +1,7 @@ +{ + "class" : { + }, + "instance" : { + "fixCallbackTemps" : "lr 10/28/2007 14:42", + "tempVarRefs" : "lr 8/25/2007 16:26", + "valueWithPossibleArguments:" : "lr 7/25/2011 19:50" } } diff --git a/repository/Grease-Squeak5-Core.package/BlockContext.extension/properties.json b/repository/Grease-Squeak5-Core.package/BlockContext.extension/properties.json new file mode 100644 index 00000000..ea80c1e5 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/BlockContext.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "BlockContext" } diff --git a/repository/Grease-Squeak5-Core.package/ByteArray.extension/instance/greaseString.st b/repository/Grease-Squeak5-Core.package/ByteArray.extension/instance/greaseString.st new file mode 100644 index 00000000..b434c0b4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/ByteArray.extension/instance/greaseString.st @@ -0,0 +1,4 @@ +*grease-squeak5-core +greaseString + "ByteArrays should not automatically be converted to Strings. You should use a GRCodec for this." + ^ self printString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/ByteArray.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/ByteArray.extension/methodProperties.json new file mode 100644 index 00000000..add0c68e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/ByteArray.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseString" : "jf 9/30/2009 01:10" } } diff --git a/repository/Grease-Squeak5-Core.package/ByteArray.extension/properties.json b/repository/Grease-Squeak5-Core.package/ByteArray.extension/properties.json new file mode 100644 index 00000000..191a2eca --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/ByteArray.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "ByteArray" } diff --git a/repository/Grease-Squeak5-Core.package/Character.extension/instance/greaseInteger.st b/repository/Grease-Squeak5-Core.package/Character.extension/instance/greaseInteger.st new file mode 100644 index 00000000..8644d7f2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Character.extension/instance/greaseInteger.st @@ -0,0 +1,4 @@ +*grease-squeak5-core +greaseInteger + "Answer an unicode code point of the receiver." + ^ self charCode \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Character.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Character.extension/methodProperties.json new file mode 100644 index 00000000..accbae78 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Character.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseInteger" : "jf 9/30/2009 01:04" } } diff --git a/repository/Grease-Squeak5-Core.package/Character.extension/properties.json b/repository/Grease-Squeak5-Core.package/Character.extension/properties.json new file mode 100644 index 00000000..7532e33e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Character.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Character" } diff --git a/repository/Grease-Squeak5-Core.package/Collection.extension/instance/any.st b/repository/Grease-Squeak5-Core.package/Collection.extension/instance/any.st new file mode 100644 index 00000000..8346cef3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Collection.extension/instance/any.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +any + ^ self anyOne \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Collection.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Collection.extension/methodProperties.json new file mode 100644 index 00000000..3196464b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Collection.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "any" : "jf 2/6/2010 00:41" } } diff --git a/repository/Grease-Squeak5-Core.package/Collection.extension/properties.json b/repository/Grease-Squeak5-Core.package/Collection.extension/properties.json new file mode 100644 index 00000000..93b0dc32 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Collection.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Collection" } diff --git a/repository/Grease-Squeak5-Core.package/Duration.extension/class/milliseconds..st b/repository/Grease-Squeak5-Core.package/Duration.extension/class/milliseconds..st new file mode 100644 index 00000000..d39d06d1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Duration.extension/class/milliseconds..st @@ -0,0 +1,3 @@ +*grease-squeak5-core +milliseconds: anInteger + ^ self milliSeconds: anInteger \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Duration.extension/instance/asMilliseconds.st b/repository/Grease-Squeak5-Core.package/Duration.extension/instance/asMilliseconds.st new file mode 100644 index 00000000..12603071 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Duration.extension/instance/asMilliseconds.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +asMilliseconds + ^ self asMilliSeconds \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Duration.extension/instance/milliseconds.st b/repository/Grease-Squeak5-Core.package/Duration.extension/instance/milliseconds.st new file mode 100644 index 00000000..cb0d9b06 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Duration.extension/instance/milliseconds.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +milliseconds + ^ nanos quo: NanosInMillisecond \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Duration.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Duration.extension/methodProperties.json new file mode 100644 index 00000000..018f4c60 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Duration.extension/methodProperties.json @@ -0,0 +1,6 @@ +{ + "class" : { + "milliseconds:" : "jf 2/6/2010 00:12" }, + "instance" : { + "asMilliseconds" : "jf 2/5/2010 23:58", + "milliseconds" : "jf 2/6/2010 00:02" } } diff --git a/repository/Grease-Squeak5-Core.package/Duration.extension/properties.json b/repository/Grease-Squeak5-Core.package/Duration.extension/properties.json new file mode 100644 index 00000000..512e0f01 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Duration.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Duration" } diff --git a/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/instance/greaseNext.putAll.startingAt..st b/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/instance/greaseNext.putAll.startingAt..st new file mode 100644 index 00000000..3458fa4c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/instance/greaseNext.putAll.startingAt..st @@ -0,0 +1,3 @@ +*grease-squeak5-core +greaseNext: anInteger putAll: aCollection startingAt: startIndex + stream greaseNext: anInteger putAll: aCollection startingAt: startIndex \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/methodProperties.json new file mode 100644 index 00000000..4dd2cf88 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseNext:putAll:startingAt:" : "pmm 12/28/2010 22:13" } } diff --git a/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/properties.json b/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/properties.json new file mode 100644 index 00000000..472cde09 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRDelegatingStream.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "GRDelegatingStream" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/README.md new file mode 100644 index 00000000..f25fd5b5 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/README.md @@ -0,0 +1,7 @@ +A GRPharoConverterCodecStream is a WACodec stream around a TextConverter. It is always in text mode. + +Instance Variables + converter: + +converter + - the TextConverter used to do the encoding conversion diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/class/on.converter..st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/class/on.converter..st new file mode 100644 index 00000000..de8cd791 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/class/on.converter..st @@ -0,0 +1,3 @@ +instance creation +on: aStream converter: aConverter + ^ self basicNew initializeOn: aStream converter: aConverter \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/greaseNext.putAll.startingAt..st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/greaseNext.putAll.startingAt..st new file mode 100644 index 00000000..8321e299 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/greaseNext.putAll.startingAt..st @@ -0,0 +1,3 @@ +streaming +greaseNext: anInteger putAll: aCollection startingAt: startIndex + self nextPutAll: (aCollection copyFrom: startIndex to: startIndex + anInteger - 1) \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/initializeOn.converter..st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/initializeOn.converter..st new file mode 100644 index 00000000..c380485d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/initializeOn.converter..st @@ -0,0 +1,4 @@ +initialization +initializeOn: aStream converter: aConverter + self initializeOn: aStream. + converter := aConverter \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/next..st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/next..st new file mode 100644 index 00000000..ef51837b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/next..st @@ -0,0 +1,8 @@ +streaming +next: anInteger + | writeStream | + writeStream := WriteStream on: (String new: anInteger). + anInteger timesRepeat: [ + writeStream nextPut: (self next + ifNil: [ ^ writeStream contents ]) ]. + ^ writeStream contents \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/next.st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/next.st new file mode 100644 index 00000000..eee99a1a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/next.st @@ -0,0 +1,6 @@ +streaming +next + | character | + character := converter nextFromStream: stream. + ^ character isNil + ifFalse: [ character asCharacter ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/nextPut..st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/nextPut..st new file mode 100644 index 00000000..e65f56c4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/nextPut..st @@ -0,0 +1,3 @@ +streaming +nextPut: aCharacter + converter nextPut: aCharacter asCharacter toStream: stream \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/nextPutAll..st b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/nextPutAll..st new file mode 100644 index 00000000..a30c4507 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/instance/nextPutAll..st @@ -0,0 +1,3 @@ +streaming +nextPutAll: aString + aString asString do: [ :each | self nextPut: each ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/methodProperties.json new file mode 100644 index 00000000..5fe65894 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/methodProperties.json @@ -0,0 +1,10 @@ +{ + "class" : { + "on:converter:" : "pmm 10/30/2010 18:58" }, + "instance" : { + "greaseNext:putAll:startingAt:" : "pmm 12/28/2010 22:12", + "initializeOn:converter:" : "pmm 10/30/2010 18:58", + "next" : "pmm 4/10/2010 13:32", + "next:" : "lr 2/7/2009 12:57", + "nextPut:" : "pmm 4/10/2010 13:30", + "nextPutAll:" : "lr 2/7/2009 12:54" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/properties.json new file mode 100644 index 00000000..13abd07b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoConverterCodecStream.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "pmm 9/14/2013 15:53", + "instvars" : [ + "converter" ], + "name" : "GRPharoConverterCodecStream", + "pools" : [ + ], + "super" : "GRCodecStream", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/basicForEncoding..st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/basicForEncoding..st new file mode 100644 index 00000000..f6b18bd4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/basicForEncoding..st @@ -0,0 +1,5 @@ +private +basicForEncoding: aString + (self supportsEncoding: aString) + ifFalse: [ self unsupportedEncoding: aString ]. + ^ self basicNew initializeWithName: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/codecs.st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/codecs.st new file mode 100644 index 00000000..1ed0b26a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/codecs.st @@ -0,0 +1,8 @@ +accessing +codecs + ^ (TextConverter allEncodingNames + select: [ :each | + "exclude UFT-8 which is handled by WAUtf8Codec" + self supportsEncoding: each ]) + collect: [ :each | + self basicForEncoding: each greaseString ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/supportedEncodingNames.st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/supportedEncodingNames.st new file mode 100644 index 00000000..e6a8ceb0 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/supportedEncodingNames.st @@ -0,0 +1,8 @@ +private +supportedEncodingNames + "answers the names of the encodings supported by this class" + + ^ TextConverter allEncodingNames + removeAllFoundIn: GRPharoLatin1Codec supportedEncodingNames; + removeAllFoundIn: UTF8TextConverter encodingNames; + yourself \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/supportsEncoding..st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/supportsEncoding..st new file mode 100644 index 00000000..43a27325 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/class/supportsEncoding..st @@ -0,0 +1,4 @@ +testing +supportsEncoding: aString + "Answer whether the the given encoding name is supported." + ^ self supportedEncodingNames includes: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/converter.st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/converter.st new file mode 100644 index 00000000..02b8754b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/converter.st @@ -0,0 +1,3 @@ +private +converter + ^ TextConverter newForEncoding: self name \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/decoderFor..st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/decoderFor..st new file mode 100644 index 00000000..be53dfea --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/decoderFor..st @@ -0,0 +1,3 @@ +conversion +decoderFor: aStream + ^ self encoderFor: aStream \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/encoderFor..st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/encoderFor..st new file mode 100644 index 00000000..94f2fc13 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/encoderFor..st @@ -0,0 +1,5 @@ +conversion +encoderFor: aStream + ^ GRPharoConverterCodecStream + on: aStream + converter: self converter \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/initializeWithName..st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/initializeWithName..st new file mode 100644 index 00000000..fe95783c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/initializeWithName..st @@ -0,0 +1,7 @@ +initialization +initializeWithName: aString + self initialize. + name := aString. + urlCodec := (#('iso-8859-15' 'cp-1252') includes: aString) + ifFalse: [ GRCodec forEncoding: 'utf-8' ] + ifTrue: [ self ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/name.st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/name.st new file mode 100644 index 00000000..22077c20 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/name.st @@ -0,0 +1,3 @@ +accessing +name + ^ name \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/url.st b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/url.st new file mode 100644 index 00000000..232ad239 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/instance/url.st @@ -0,0 +1,5 @@ +accessing +url + "RFC 3986: When a new URI scheme defines a component that represents textual data consisting of characters from the Universal Character Set [UCS], the data should first be encoded as octets according to the UTF-8 character encoding." + + ^ urlCodec \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/methodProperties.json new file mode 100644 index 00000000..5a10058b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/methodProperties.json @@ -0,0 +1,13 @@ +{ + "class" : { + "basicForEncoding:" : "pmm 6/28/2009 15:43", + "codecs" : "pmm 8/19/2014 10:04", + "supportedEncodingNames" : "lr 7/25/2011 19:46", + "supportsEncoding:" : "pmm 6/28/2009 16:43" }, + "instance" : { + "converter" : "lr 7/25/2011 19:51", + "decoderFor:" : "lr 2/7/2009 12:52", + "encoderFor:" : "jf 9/30/2009 00:46", + "initializeWithName:" : "pmm 8/16/2010 11:52", + "name" : "lr 2/7/2009 10:16", + "url" : "lr 2/7/2009 12:36" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/properties.json new file mode 100644 index 00000000..b24261dc --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoGenericCodec.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + "name", + "urlCodec" ], + "name" : "GRPharoGenericCodec", + "pools" : [ + ], + "super" : "GRCodec", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/README.md new file mode 100644 index 00000000..3f437d62 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/README.md @@ -0,0 +1 @@ +A GRPharoLatin1Codec is a WACodec optimized for ISO-8859-1 (direct byte to character mapping). \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/basicForEncoding..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/basicForEncoding..st new file mode 100644 index 00000000..f6b18bd4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/basicForEncoding..st @@ -0,0 +1,5 @@ +private +basicForEncoding: aString + (self supportsEncoding: aString) + ifFalse: [ self unsupportedEncoding: aString ]. + ^ self basicNew initializeWithName: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/codecs.st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/codecs.st new file mode 100644 index 00000000..7a96b703 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/codecs.st @@ -0,0 +1,3 @@ +accessing +codecs + ^ Array with: (self basicForEncoding: 'iso-8859-1') \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/supportedEncodingNames.st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/supportedEncodingNames.st new file mode 100644 index 00000000..e5dca068 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/supportedEncodingNames.st @@ -0,0 +1,3 @@ +private +supportedEncodingNames + ^ #('iso-8859-1' 'ISO-8859-1' 'latin-1' 'latin1') \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/supportsEncoding..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/supportsEncoding..st new file mode 100644 index 00000000..43a27325 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/class/supportsEncoding..st @@ -0,0 +1,4 @@ +testing +supportsEncoding: aString + "Answer whether the the given encoding name is supported." + ^ self supportedEncodingNames includes: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/decode..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/decode..st new file mode 100644 index 00000000..74b1f7bd --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/decode..st @@ -0,0 +1,5 @@ +conversion +decode: aStringOrByteArray + "Overridden for efficiency." + + ^ aStringOrByteArray asString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/decoderFor..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/decoderFor..st new file mode 100644 index 00000000..256dbac4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/decoderFor..st @@ -0,0 +1,4 @@ +conversion +decoderFor: aReadStream + "wrap to avoid String vs ByteArray issues" + ^ GRPharoLatin1CodecStream on: aReadStream \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/encoderFor..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/encoderFor..st new file mode 100644 index 00000000..20102849 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/encoderFor..st @@ -0,0 +1,4 @@ +conversion +encoderFor: aWriteStream + "wrap to avoid String vs ByteArray issues" + ^ GRPharoLatin1CodecStream on: aWriteStream \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/initializeWithName..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/initializeWithName..st new file mode 100644 index 00000000..b0256973 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/initializeWithName..st @@ -0,0 +1,4 @@ +initialization +initializeWithName: aString + self initialize. + name := aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/name.st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/name.st new file mode 100644 index 00000000..22077c20 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/instance/name.st @@ -0,0 +1,3 @@ +accessing +name + ^ name \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/methodProperties.json new file mode 100644 index 00000000..92c046e8 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/methodProperties.json @@ -0,0 +1,12 @@ +{ + "class" : { + "basicForEncoding:" : "pmm 8/16/2010 00:36", + "codecs" : "lr 7/25/2011 19:46", + "supportedEncodingNames" : "lr 7/25/2011 19:46", + "supportsEncoding:" : "pmm 8/16/2010 00:36" }, + "instance" : { + "decode:" : "pmm 8/19/2014 10:00", + "decoderFor:" : "pmm 8/16/2010 00:32", + "encoderFor:" : "pmm 8/16/2010 00:32", + "initializeWithName:" : "pmm 9/1/2012 15:32", + "name" : "pmm 8/16/2010 00:32" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/properties.json new file mode 100644 index 00000000..81f473c2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1Codec.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + "name" ], + "name" : "GRPharoLatin1Codec", + "pools" : [ + ], + "super" : "GRNullCodec", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/README.md new file mode 100644 index 00000000..e1c2471b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/README.md @@ -0,0 +1 @@ +A GRPharoLatin1CodecStream is a WACodecStream optimized for ISO-8859-1 (direct byte to character mapping). \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/instance/next..st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/instance/next..st new file mode 100644 index 00000000..a734bc76 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/instance/next..st @@ -0,0 +1,3 @@ +streaming +next: anInteger + ^ (stream next: anInteger) asString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/instance/next.st b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/instance/next.st new file mode 100644 index 00000000..766a570d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/instance/next.st @@ -0,0 +1,3 @@ +streaming +next + ^ Character codePoint: stream next \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/methodProperties.json new file mode 100644 index 00000000..c3e59bc2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/methodProperties.json @@ -0,0 +1,6 @@ +{ + "class" : { + }, + "instance" : { + "next" : "pmm 9/14/2013 09:50", + "next:" : "lr 7/25/2011 19:50" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/properties.json new file mode 100644 index 00000000..8b83b652 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoLatin1CodecStream.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRPharoLatin1CodecStream", + "pools" : [ + ], + "super" : "GRNullCodecStream", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/README.md new file mode 100644 index 00000000..e71bb46d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/README.md @@ -0,0 +1 @@ +A GRPharoPlatform is the Pharo implementation of GRPlatform, the Grease class that provides functionality that can not be implemented in a platform independent way. diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initialize.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initialize.st new file mode 100644 index 00000000..0c86564c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initialize.st @@ -0,0 +1,5 @@ +class initialization +initialize + self initializeXmlTable. + self initializeUrlTable. + self select \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initializeUrlTable.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initializeUrlTable.st new file mode 100644 index 00000000..9abf56b7 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initializeUrlTable.st @@ -0,0 +1,7 @@ +class initialization +initializeUrlTable + UrlTable := ByteArray new: 256. + 1 to: 256 do: [ :index | + ('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.~' includes: (Character codePoint: index - 1)) + ifTrue: [ UrlTable at: index put: 0 ] + ifFalse: [ UrlTable at: index put: 1 ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initializeXmlTable.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initializeXmlTable.st new file mode 100644 index 00000000..830a5595 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/initializeXmlTable.st @@ -0,0 +1,7 @@ +class initialization +initializeXmlTable + XmlTable := ByteArray new: 256. + 1 to: 256 do: [ :index | + ('"<&>' includes: (Character codePoint: index - 1)) + ifTrue: [ XmlTable at: index put: 1 ] + ifFalse: [ XmlTable at: index put: 0 ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/unload.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/unload.st new file mode 100644 index 00000000..4c8dd650 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/class/unload.st @@ -0,0 +1,3 @@ +class initialization +unload + self unselect \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/addToShutDownList..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/addToShutDownList..st new file mode 100644 index 00000000..f8d3ad5f --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/addToShutDownList..st @@ -0,0 +1,5 @@ +startup +addToShutDownList: anObject + "Add anObject to the shutdown-list of the system. On shutdown the message #shutDown will be sent to anObject." + + Smalltalk addToShutDownList: anObject \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/addToStartUpList..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/addToStartUpList..st new file mode 100644 index 00000000..ecbbe65e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/addToStartUpList..st @@ -0,0 +1,5 @@ +startup +addToStartUpList: anObject + "Add anObject to the startup-list of the system. On startup the message #startUp will be sent to anObject." + + Smalltalk addToStartUpList: anObject \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArray.named..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArray.named..st new file mode 100644 index 00000000..ba4a0727 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArray.named..st @@ -0,0 +1,6 @@ +file library +asMethodReturningByteArray: aByteArrayOrString named: aSymbol + "Generates the source of a method named aSymbol that returns aByteArrayOrString as a ByteArray" + ^ self useByteArrayLiterals + ifTrue: [ self asMethodReturningByteArrayLiteral: aByteArrayOrString named: aSymbol ] + ifFalse: [ self asMethodReturningByteArrayWithCache: aByteArrayOrString named: aSymbol ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArrayLiteral.named..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArrayLiteral.named..st new file mode 100644 index 00000000..90bb405c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArrayLiteral.named..st @@ -0,0 +1,10 @@ +private-file library +asMethodReturningByteArrayLiteral: aByteArrayOrString named: aSymbol + "Generates the source of a method named aSymbol that returns aByteArrayOrString as a byte array using VW/NewCompiler byte array literal syntax." + ^ String streamContents: [ :stream | + stream nextPutAll: aSymbol; nextPut: Character cr. + stream tab; nextPutAll: '^ #['. + aByteArrayOrString asByteArray + do: [ :each | each printOn: stream ] + separatedBy: [ stream space ]. + stream nextPutAll: ']' ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArrayWithCache.named..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArrayWithCache.named..st new file mode 100644 index 00000000..a1f9fe07 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/asMethodReturningByteArrayWithCache.named..st @@ -0,0 +1,10 @@ +private-file library +asMethodReturningByteArrayWithCache: aByteArrayOrString named: aSymbol + "Generates the source of a method named aSymbol that returns aByteArrayOrString as a byte array and caching this array in a literal array of size 1." + ^ String streamContents: [ :stream | + stream nextPutAll: aSymbol; nextPut: Character cr. + stream tab; nextPutAll: '^ #('. + aByteArrayOrString asByteArray + do: [ :each | each printOn: stream ] + separatedBy: [ stream space ]. + stream nextPutAll: ') asByteArray' ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/base64Decode..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/base64Decode..st new file mode 100644 index 00000000..382a7f83 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/base64Decode..st @@ -0,0 +1,3 @@ +encoding +base64Decode: aString + ^ (Base64MimeConverter mimeDecodeToChars: aString readStream) contents \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/bindingOf..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/bindingOf..st new file mode 100644 index 00000000..2c8a9b8d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/bindingOf..st @@ -0,0 +1,4 @@ +bindings +bindingOf: aClass + "theoretically consider the environment of a class" + ^ aClass binding \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/compile.into.classified..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/compile.into.classified..st new file mode 100644 index 00000000..7fde3ad8 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/compile.into.classified..st @@ -0,0 +1,31 @@ +file library +compile: aString into: aClass classified: aSymbol + "The trick here is to be as silently a possible so that the package is not marked dirty when running WAFileLibrary test. + This also makes running tests much faster." + | methodNode compiledMethod selector methodAndNode | + methodNode := aClass compilerClass new + compile: aString + in: aClass + notifying: nil + ifFail: [ GRError signal: 'syntax error' ]. + selector := methodNode selector. + methodAndNode := CompiledMethodWithNode + generateMethodFromNode: methodNode + trailer: aClass defaultMethodTrailer. + compiledMethod := methodAndNode method. + compiledMethod + putSource: aString + fromParseNode: methodAndNode node + inFile: 2 + withPreamble: [ :file | + aClass + printCategoryChunk: aSymbol asString + on: file priorMethod: (aClass compiledMethodAt: selector ifAbsent: [ nil ]). + file cr ]. + aClass + addSelectorSilently: selector + withMethod: compiledMethod. + SystemChangeNotifier uniqueInstance doSilently: [ + aClass organization + classify: selector + under: aSymbol ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/contentsOfFile.binary..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/contentsOfFile.binary..st new file mode 100644 index 00000000..e9f9d30b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/contentsOfFile.binary..st @@ -0,0 +1,12 @@ +file library +contentsOfFile: aString binary: aBoolean + | stream | + stream := aBoolean + ifTrue: [ (FileDirectory default oldFileNamed: aString) + binary; + yourself ] + ifFalse: [ (MultiByteFileStream oldFileNamed: aString) + ascii; + wantsLineEndConversion: true; + yourself ]. + ^ [ stream contents ] ensure: [ stream close ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/deprecationExceptionSet.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/deprecationExceptionSet.st new file mode 100644 index 00000000..bb22f36e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/deprecationExceptionSet.st @@ -0,0 +1,3 @@ +exceptions +deprecationExceptionSet + ^ Deprecation \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/directoriesIn..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/directoriesIn..st new file mode 100644 index 00000000..3357dd27 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/directoriesIn..st @@ -0,0 +1,9 @@ +file library +directoriesIn: aPathString + "Answer a collection of absolute paths for all the directories (no files) in the directory given by aPathString + must not include directory names that start with ." + | directory | + directory := FileDirectory default directoryNamed: aPathString. + ^ (directory directoryNames + reject: [ :each | each first = $. ]) + collect: [ :each | directory fullNameFor: each ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/doSilently..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/doSilently..st new file mode 100644 index 00000000..2a887759 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/doSilently..st @@ -0,0 +1,3 @@ +private +doSilently: aBlock + ^ SystemChangeNotifier uniqueInstance doSilently: aBlock \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/ensureExistenceOfFolder..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/ensureExistenceOfFolder..st new file mode 100644 index 00000000..27973d2b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/ensureExistenceOfFolder..st @@ -0,0 +1,4 @@ +file library +ensureExistenceOfFolder: aString + "creates a folder named aString in the image directory" + FileDirectory default assureExistenceOfPath: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/fileExists..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/fileExists..st new file mode 100644 index 00000000..d558068e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/fileExists..st @@ -0,0 +1,3 @@ +file library +fileExists: aString + ^ (FileDirectory on: aString) exists \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st new file mode 100644 index 00000000..1aad81ef --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/fileStreamOn.do.binary..st @@ -0,0 +1,13 @@ +file library +fileStreamOn: aString do: aBlock binary: aBoolean + ^ aBoolean + ifTrue: [ + FileStream oldFileNamed: aString do: [ :stream | + stream binary. + aBlock value: stream ] ] + ifFalse: [ + MultiByteFileStream oldFileNamed: aString do: [ :stream | + stream + ascii; + wantsLineEndConversion: true. + aBlock value: stream ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/filesIn..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/filesIn..st new file mode 100644 index 00000000..89667dbc --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/filesIn..st @@ -0,0 +1,9 @@ +file library +filesIn: aPathString + "Return a collection of absolute paths for all the files (no directories) in the directory given by aPathString + must not include file names that start with ." + | directory | + directory := FileDirectory default directoryNamed: aPathString. + ^ (directory fileNames + reject: [ :each | each first = $. ]) + collect: [ :each | directory fullNameFor: each ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/isProcessTerminated..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/isProcessTerminated..st new file mode 100644 index 00000000..03b50778 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/isProcessTerminated..st @@ -0,0 +1,4 @@ +processes +isProcessTerminated: aProcess + "Return a boolean indicating whether aProcess has been terminated." + ^ aProcess isTerminated \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/label.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/label.st new file mode 100644 index 00000000..f3b036e2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/label.st @@ -0,0 +1,3 @@ +version info +label + ^ 'Pharo' \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/localNameOf..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/localNameOf..st new file mode 100644 index 00000000..f943c14d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/localNameOf..st @@ -0,0 +1,3 @@ +file library +localNameOf: aFilename + ^ (FileDirectory on: aFilename) localName \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/newRandom.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/newRandom.st new file mode 100644 index 00000000..9d90824d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/newRandom.st @@ -0,0 +1,10 @@ +factory +newRandom + "Answers the random number generator to be used to create session and continuation keys. Make sure it is seeded. They only methods that will be sent to it are: + #nextInt: - should answer a random integer in the interval [1, anInteger] + #randomFrom: - should answer a random element from the given collection + + Make sure that both methods are safe under heavy concurrent load. + + Used by Gemstone/S traditional Randoms which cannot be persisted.." + ^ GRPharoRandomProvider \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/newline.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/newline.st new file mode 100644 index 00000000..f3752602 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/newline.st @@ -0,0 +1,3 @@ +file library +newline + ^ String with: Character cr \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/openDebuggerOn..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/openDebuggerOn..st new file mode 100644 index 00000000..b98446f9 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/openDebuggerOn..st @@ -0,0 +1,18 @@ +exceptions +openDebuggerOn: anError + | process | + process := Processor activeProcess. + "If we are running in the UI process, we don't want to suspend the active process. The + error was presumably triggered while stepping in the Debugger. If we simply immediately + signal an UnhandledError, the debugger will catch this and display the signaling context. + It isn't perfect or pretty but it works." + (ProcessBrowser isUIProcess: process) + ifTrue: [ + UnhandledError signalForException: anError ] + ifFalse: [ + WorldState addDeferredUIMessage: [ + process + debug: anError signalerContext + title: anError description + full: true ]. + process suspend ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/pathSeparator.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/pathSeparator.st new file mode 100644 index 00000000..b9a34e3d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/pathSeparator.st @@ -0,0 +1,3 @@ +file library +pathSeparator + ^ FileDirectory pathNameDelimiter asString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/readWriteByteStream.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/readWriteByteStream.st new file mode 100644 index 00000000..35251d7b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/readWriteByteStream.st @@ -0,0 +1,5 @@ +factory +readWriteByteStream + "ByteArray based read write stream" + + ^ RWBinaryOrTextStream on: (ByteArray new: 4096) \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/readWriteCharacterStream.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/readWriteCharacterStream.st new file mode 100644 index 00000000..3f94c5af --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/readWriteCharacterStream.st @@ -0,0 +1,5 @@ +factory +readWriteCharacterStream + "String based read write stream" + + ^ ReadWriteStream on: (String new: 4096) \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeFromShutDownList..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeFromShutDownList..st new file mode 100644 index 00000000..09cc5c70 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeFromShutDownList..st @@ -0,0 +1,5 @@ +startup +removeFromShutDownList: anObject + "Remove anObject from the shutdown list in the system." + + Smalltalk removeFromShutDownList: anObject \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeFromStartUpList..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeFromStartUpList..st new file mode 100644 index 00000000..ecd7d527 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeFromStartUpList..st @@ -0,0 +1,5 @@ +startup +removeFromStartUpList: anObject + "Remove anObject from the startup list in the system." + + Smalltalk removeFromStartUpList: anObject \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeSelector.from..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeSelector.from..st new file mode 100644 index 00000000..f9541b7e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/removeSelector.from..st @@ -0,0 +1,3 @@ +file library +removeSelector: aSymbol from: aClass + aClass removeSelectorSilently: aSymbol \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/secureHashFor..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/secureHashFor..st new file mode 100644 index 00000000..b0c1e2b2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/secureHashFor..st @@ -0,0 +1,3 @@ +cryptography +secureHashFor: aString + ^ SecureHashAlgorithm new hashMessage: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/semaphoreClass.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/semaphoreClass.st new file mode 100644 index 00000000..ceccf9e3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/semaphoreClass.st @@ -0,0 +1,4 @@ +factory +semaphoreClass + "used by Gemstone/S traditional Semaphores which cannot be persisted" + ^ Semaphore \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/stackDepth.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/stackDepth.st new file mode 100644 index 00000000..d7e6feab --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/stackDepth.st @@ -0,0 +1,10 @@ +exceptions +stackDepth + + | depth current | + depth := 0. + current := thisContext. + [ current isNil ] whileFalse: [ + current := current sender. + depth := depth + 1 ]. + ^ depth - 1 \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/terminateProcess..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/terminateProcess..st new file mode 100644 index 00000000..a09b96e1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/terminateProcess..st @@ -0,0 +1,4 @@ +processes +terminateProcess: aProcess + "Permanently terminate the process, unwinding first to execute #ensure: and #ifCurtailed: blocks." + aProcess terminate \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/useByteArrayLiterals.st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/useByteArrayLiterals.st new file mode 100644 index 00000000..f65fb83a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/useByteArrayLiterals.st @@ -0,0 +1,11 @@ +private-file library +useByteArrayLiterals + "whether ByteArray literals can/should be used" + | hasSettings | + hasSettings := Smalltalk at: #PragmaSetting ifAbsent: [ nil ]. + ^ hasSettings isNil + ifTrue: [ + (Smalltalk at: #Preferences) + valueOfFlag: #compileUseNewCompiler + ifAbsent: [ false ] ] + ifFalse: [ false ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/weakDictionaryOfSize..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/weakDictionaryOfSize..st new file mode 100644 index 00000000..b0ca3d82 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/weakDictionaryOfSize..st @@ -0,0 +1,3 @@ +factory +weakDictionaryOfSize: aNumber + ^ IdentityDictionary new: aNumber \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/write.toFile.inFolder..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/write.toFile.inFolder..st new file mode 100644 index 00000000..9565ae8b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/write.toFile.inFolder..st @@ -0,0 +1,15 @@ +file library +write: aStringOrByteArray toFile: aFileNameString inFolder: aFolderString + "writes aStringOrByteArray to a file named aFileNameString in the folder aFolderString" + | folder stream fullFilePath | + folder := FileDirectory default directoryNamed: aFolderString. + fullFilePath := folder fullNameFor: aFileNameString. + stream := aStringOrByteArray isString + ifTrue: [ + (MultiByteFileStream forceNewFileNamed: fullFilePath) + ascii; + wantsLineEndConversion: true; + yourself ] + ifFalse: [ (FileStream forceNewFileNamed: fullFilePath) binary ]. + [ stream nextPutAll: aStringOrByteArray ] + ensure: [ stream close ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/writeCharacterStreamOn..st b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/writeCharacterStreamOn..st new file mode 100644 index 00000000..d69ff426 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/instance/writeCharacterStreamOn..st @@ -0,0 +1,4 @@ +factory +writeCharacterStreamOn: aString + + ^ GRWorkingWriteStream on: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/methodProperties.json new file mode 100644 index 00000000..c4a6cad2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/methodProperties.json @@ -0,0 +1,43 @@ +{ + "class" : { + "initialize" : "pmm 5/20/2010 11:49", + "initializeUrlTable" : "pmm 5/20/2010 20:56", + "initializeXmlTable" : "pmm 5/20/2010 20:56", + "unload" : "jf 1/22/2009 02:45" }, + "instance" : { + "addToShutDownList:" : "jf 1/21/2009 17:31", + "addToStartUpList:" : "jf 1/21/2009 17:31", + "asMethodReturningByteArray:named:" : "lr 7/25/2011 19:51", + "asMethodReturningByteArrayLiteral:named:" : "lr 7/25/2011 19:51", + "asMethodReturningByteArrayWithCache:named:" : "pmm 2/20/2009 17:44", + "base64Decode:" : "jf 1/21/2009 17:31", + "bindingOf:" : "pmm 8/23/2014 11:42", + "compile:into:classified:" : "pmm 8/13/2010 11:52", + "contentsOfFile:binary:" : "lr 7/25/2011 19:51", + "deprecationExceptionSet" : "pmm 2/16/2014 23:12", + "directoriesIn:" : "NickAger 3/9/2012 11:33", + "doSilently:" : "JohanBrichau 9/10/2013 11:39", + "ensureExistenceOfFolder:" : "jf 1/21/2009 17:31", + "fileExists:" : "pmm 7/16/2015 16:36", + "fileStreamOn:do:binary:" : "pmm 7/16/2015 16:39", + "filesIn:" : "lr 7/25/2011 19:51", + "isProcessTerminated:" : "jf 2/6/2009 15:58", + "label" : "jf 2/9/2010 00:56", + "localNameOf:" : "lr 7/25/2011 19:51", + "newRandom" : "pmm 10/7/2010 13:10", + "newline" : "pmm 9/14/2013 09:56", + "openDebuggerOn:" : "pmm 1/22/2012 16:31", + "pathSeparator" : "pmm 2/5/2011 09:52", + "readWriteByteStream" : "lr 11/20/2011 17:16", + "readWriteCharacterStream" : "dkh 9/4/2009 09:14", + "removeFromShutDownList:" : "jf 1/21/2009 17:31", + "removeFromStartUpList:" : "jf 1/21/2009 17:31", + "removeSelector:from:" : "jf 1/21/2009 17:31", + "secureHashFor:" : "jf 1/21/2009 17:31", + "semaphoreClass" : "lr 7/25/2011 19:51", + "stackDepth" : "jf 1/21/2009 17:31", + "terminateProcess:" : "jf 2/6/2009 15:59", + "useByteArrayLiterals" : "pmm 2/11/2011 07:27", + "weakDictionaryOfSize:" : "lr 7/25/2011 19:51", + "write:toFile:inFolder:" : "pmm 8/19/2014 10:11", + "writeCharacterStreamOn:" : "pmm 8/26/2011 09:45" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/properties.json new file mode 100644 index 00000000..7320ab9a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoPlatform.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + "UrlTable", + "XmlTable" ], + "commentStamp" : "pmm 2/1/2014 13:28", + "instvars" : [ + ], + "name" : "GRPharoPlatform", + "pools" : [ + ], + "super" : "GRPlatform", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/initialize.st b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/initialize.st new file mode 100644 index 00000000..04ca54c3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/initialize.st @@ -0,0 +1,4 @@ +private +initialize + Smalltalk addToStartUpList: self. + self startUp \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/nextInt..st b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/nextInt..st new file mode 100644 index 00000000..593aee36 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/nextInt..st @@ -0,0 +1,5 @@ +public +nextInt: anInteger + "Answer a random integer in the interval [1, anInteger]" + + ^ mutex critical: [ generator nextInt: anInteger ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/randomClass.st b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/randomClass.st new file mode 100644 index 00000000..85a2db91 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/randomClass.st @@ -0,0 +1,3 @@ +private +randomClass + ^ Random \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/randomFrom..st b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/randomFrom..st new file mode 100644 index 00000000..a5fe470c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/randomFrom..st @@ -0,0 +1,11 @@ +public +randomFrom: aCollection + | random count | + random := self nextInt: aCollection size. + ^ aCollection isSequenceable + ifTrue: [ aCollection at: random ] + ifFalse: [ + count := 1. + aCollection do: [ :ea | + count = random ifTrue: [ ^ ea ]. + count := count + 1 ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/startUp.st b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/startUp.st new file mode 100644 index 00000000..a33a6ac9 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/startUp.st @@ -0,0 +1,4 @@ +initialization +startUp + generator := self randomClass new. + mutex := Semaphore forMutualExclusion \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/unload.st b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/unload.st new file mode 100644 index 00000000..fd4cb930 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/class/unload.st @@ -0,0 +1,3 @@ +private +unload + GRPlatform current removeFromStartUpList: self \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/methodProperties.json new file mode 100644 index 00000000..cedc66aa --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/methodProperties.json @@ -0,0 +1,10 @@ +{ + "class" : { + "initialize" : "jgf 1/25/2009 12:05", + "nextInt:" : "lr 7/25/2011 19:46", + "randomClass" : "lr 7/25/2011 19:46", + "randomFrom:" : "lr 7/25/2011 18:28", + "startUp" : "pmm 1/10/2009 16:01", + "unload" : "jf 9/30/2009 00:19" }, + "instance" : { + } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/properties.json new file mode 100644 index 00000000..513b71fb --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoRandomProvider.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + "mutex", + "generator" ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRPharoRandomProvider", + "pools" : [ + ], + "super" : "GRObject", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/README.md new file mode 100644 index 00000000..c6047951 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/README.md @@ -0,0 +1 @@ +A WAUtf8Codec is a WACodec optimized for UTF-8. \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/basicForEncoding..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/basicForEncoding..st new file mode 100644 index 00000000..d4c4a74b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/basicForEncoding..st @@ -0,0 +1,3 @@ +private +basicForEncoding: aString + ^ self new \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/codecs.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/codecs.st new file mode 100644 index 00000000..632b84fb --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/codecs.st @@ -0,0 +1,3 @@ +accessing +codecs + ^ Array with: self new \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/supportsEncoding..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/supportsEncoding..st new file mode 100644 index 00000000..dc3a8ade --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/class/supportsEncoding..st @@ -0,0 +1,3 @@ +testing +supportsEncoding: aString + ^ (#('utf-8' 'UTF-8') includes: aString) or: [ UTF8TextConverter encodingNames includes: aString ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/decode..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/decode..st new file mode 100644 index 00000000..b625727d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/decode..st @@ -0,0 +1,36 @@ +decoding +decode: aString + "Convert the given string from UTF-8 using the fast path if converting to Latin-1" + | outStream byte1 byte2 byte3 byte4 unicode stream | + stream := aString readStream. + outStream := WriteStream on: (String new: aString size). + [ stream atEnd not ] whileTrue: [ + byte1 := stream next asInteger. + unicode := byte1. + (byte1 bitAnd: 16rE0) = 192 ifTrue: [ "two bytes" + byte2 := stream next asInteger. + (byte2 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + unicode := ((byte1 bitAnd: 31) bitShift: 6) + (byte2 bitAnd: 63) ]. + (byte1 bitAnd: 16rF0) = 224 ifTrue: [ "three bytes" + byte2 := stream next asInteger. + (byte2 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + byte3 := stream next asInteger. + (byte3 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + unicode := ((byte1 bitAnd: 15) bitShift: 12) + ((byte2 bitAnd: 63) bitShift: 6) + + (byte3 bitAnd: 63) ]. + (byte1 bitAnd: 16rF8) = 240 ifTrue: [ "four bytes" + byte2 := stream next asInteger. + (byte2 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + byte3 := stream next asInteger. + (byte3 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + byte4 := stream next asInteger. + (byte4 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + unicode := ((byte1 bitAnd: 16r7) bitShift: 18) + + ((byte2 bitAnd: 63) bitShift: 12) + + ((byte3 bitAnd: 63) bitShift: 6) + + (byte4 bitAnd: 63) ]. + unicode ifNil: [ self invalidUtf8 ]. + unicode = 16rFEFF "ignore BOM" ifFalse: [ + outStream nextPut: (Character codePoint: unicode) ]. + unicode := nil ]. + ^ outStream contents \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/decoderFor..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/decoderFor..st new file mode 100644 index 00000000..203b901f --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/decoderFor..st @@ -0,0 +1,5 @@ +conversion +decoderFor: aStream + ^ GRPharoUtf8CodecStream + on: aStream + converter: UTF8TextConverter new \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/encoderFor..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/encoderFor..st new file mode 100644 index 00000000..d77ab435 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/encoderFor..st @@ -0,0 +1,5 @@ +conversion +encoderFor: aStream + ^ GRPharoUtf8CodecStream + on: aStream + converter: UTF8TextConverter new \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/invalidUtf8.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/invalidUtf8.st new file mode 100644 index 00000000..e4481c22 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/invalidUtf8.st @@ -0,0 +1,3 @@ +private +invalidUtf8 + ^ GRInvalidUtf8Error signal: 'Invalid UTF-8 input' \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/name.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/name.st new file mode 100644 index 00000000..7886c830 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/name.st @@ -0,0 +1,3 @@ +accessing +name + ^ 'utf-8' \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/url.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/url.st new file mode 100644 index 00000000..4696d714 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/instance/url.st @@ -0,0 +1,3 @@ +accessing +url + ^ self \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/methodProperties.json new file mode 100644 index 00000000..cf1f05f1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/methodProperties.json @@ -0,0 +1,12 @@ +{ + "class" : { + "basicForEncoding:" : "lr 7/25/2011 19:46", + "codecs" : "lr 7/25/2011 19:46", + "supportsEncoding:" : "lr 7/25/2011 19:46" }, + "instance" : { + "decode:" : "pmm 2/17/2012 19:45", + "decoderFor:" : "jf 9/30/2009 00:46", + "encoderFor:" : "jf 9/30/2009 00:46", + "invalidUtf8" : "pmm 9/14/2013 09:37", + "name" : "pmm 2/20/2009 13:25", + "url" : "pmm 2/20/2009 12:50" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/properties.json new file mode 100644 index 00000000..68130682 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8Codec.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "pmm 2/20/2009 12:51", + "instvars" : [ + ], + "name" : "GRPharoUtf8Codec", + "pools" : [ + ], + "super" : "GRCodec", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/README.md b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/README.md new file mode 100644 index 00000000..08323f18 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/README.md @@ -0,0 +1 @@ +A WAUtf8CodecStream is a WACodecStream optimized for UTF-8 performance in the case where most of the characters are ASCII. diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/class/initialize.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/class/initialize.st new file mode 100644 index 00000000..b8d03990 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/class/initialize.st @@ -0,0 +1,17 @@ +class initialization +initialize + (Smalltalk hasClassNamed: #UTF8TextConverter) "guard for Squeak 37" + ifFalse: [ ^ self ]. + + Latin1ToUtf8Map := ByteArray new: 256. + Latin1ToUtf8Encodings := Array new: 256. + 0 to: 255 do:[ :index | + | latin1 utf8 | + latin1 := String with: (Character codePoint: index). + utf8 := latin1 convertToWithConverter: UTF8TextConverter new. + latin1 = utf8 + ifTrue:[ + Latin1ToUtf8Map at: index + 1 put: 0 ] "no translation needed" + ifFalse:[ + Latin1ToUtf8Map at: index + 1 put: 1. "no translation needed" + Latin1ToUtf8Encodings at: index + 1 put: utf8 ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/crlf.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/crlf.st new file mode 100644 index 00000000..ba607092 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/crlf.st @@ -0,0 +1,4 @@ +streaming +crlf + stream nextPut: Character cr. + stream nextPut: Character lf \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/encodeDefault..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/encodeDefault..st new file mode 100644 index 00000000..cdd58a41 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/encodeDefault..st @@ -0,0 +1,5 @@ +private +encodeDefault: aString + "Convert the given string from UTF-8 using the fast path if converting to Latin-1" + 1 to: aString size by: 1 do: [ :index | + converter nextPut: (aString at: index) toStream: stream ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/encodeFast..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/encodeFast..st new file mode 100644 index 00000000..9a8a0dc3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/encodeFast..st @@ -0,0 +1,14 @@ +private +encodeFast: aByteString + "Convert the given string from UTF-8 using the fast path if converting to Latin-1" + | lastIndex nextIndex | + lastIndex := 1. + nextIndex := ByteString findFirstInString: aByteString inSet: Latin1ToUtf8Map startingAt: lastIndex. + nextIndex = 0 ifTrue: [ ^ stream nextPutAll: aByteString ]. + [ nextIndex > lastIndex ifTrue: [ + stream greaseNext: nextIndex - lastIndex putAll: aByteString startingAt: lastIndex ]. + stream nextPutAll: (Latin1ToUtf8Encodings at: (aByteString byteAt: nextIndex) + 1). + lastIndex := nextIndex + 1. + nextIndex := ByteString findFirstInString: aByteString inSet: Latin1ToUtf8Map startingAt: lastIndex. + nextIndex = 0 ] whileFalse. + stream greaseNext: aByteString size - lastIndex + 1 putAll: aByteString startingAt: lastIndex \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/greaseNext.putAll.startingAt..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/greaseNext.putAll.startingAt..st new file mode 100644 index 00000000..cd78fbe0 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/greaseNext.putAll.startingAt..st @@ -0,0 +1,5 @@ +streaming +greaseNext: anInteger putAll: aCollection startingAt: startIndex + aCollection isByteString + ifTrue: [ self greaseNext: anInteger putAllFast: aCollection startingAt: startIndex ] + ifFalse: [ super greaseNext: anInteger putAll: aCollection startingAt: startIndex ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/greaseNext.putAllFast.startingAt..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/greaseNext.putAllFast.startingAt..st new file mode 100644 index 00000000..a4c114cb --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/greaseNext.putAllFast.startingAt..st @@ -0,0 +1,17 @@ +private +greaseNext: anInteger putAllFast: aByteString startingAt: startIndex + | lastIndex nextIndex | + lastIndex := startIndex. + nextIndex := ByteString findFirstInString: aByteString inSet: Latin1ToUtf8Map startingAt: lastIndex. + nextIndex = 0 ifTrue: [ ^ stream greaseNext: anInteger putAll: aByteString startingAt: startIndex ]. + [ + nextIndex >= (startIndex + anInteger) ifTrue: [ + ^ stream greaseNext: startIndex + anInteger - lastIndex putAll: aByteString startingAt: lastIndex ]. + nextIndex > lastIndex ifTrue: [ + stream greaseNext: nextIndex - lastIndex putAll: aByteString startingAt: lastIndex ]. + stream nextPutAll: (Latin1ToUtf8Encodings at: (aByteString byteAt: nextIndex) + 1). + lastIndex := nextIndex + 1. + nextIndex := ByteString findFirstInString: aByteString inSet: Latin1ToUtf8Map startingAt: lastIndex. + (nextIndex = 0 or: [ nextIndex >= (startIndex + anInteger) ]) ] whileFalse. + lastIndex >= (startIndex + anInteger) ifFalse: [ + stream greaseNext: startIndex + anInteger - lastIndex putAll: aByteString startingAt: lastIndex ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/invalidUtf8.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/invalidUtf8.st new file mode 100644 index 00000000..e4481c22 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/invalidUtf8.st @@ -0,0 +1,3 @@ +private +invalidUtf8 + ^ GRInvalidUtf8Error signal: 'Invalid UTF-8 input' \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/next..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/next..st new file mode 100644 index 00000000..116f524d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/next..st @@ -0,0 +1,46 @@ +streaming +next: anInteger + "Convert the given string from UTF-8 using the fast path if converting to Latin-1" + | output byte1 byte2 byte3 byte4 unicode count alreadyWide | + output := ByteString new: anInteger. + count := 0. + alreadyWide := false. + [ count < anInteger and: [ stream atEnd not ] ] whileTrue: [ + byte1 := stream next. + unicode := byte1. + (byte1 bitAnd: 16rE0) = 192 ifTrue: [ "two bytes" + byte2 := stream next. + (byte2 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + unicode := ((byte1 bitAnd: 31) bitShift: 6) + (byte2 bitAnd: 63) ]. + (byte1 bitAnd: 16rF0) = 224 ifTrue: [ "three bytes" + byte2 := stream next. + (byte2 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + byte3 := stream next. + (byte3 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + unicode := ((byte1 bitAnd: 15) bitShift: 12) + ((byte2 bitAnd: 63) bitShift: 6) + + (byte3 bitAnd: 63). + alreadyWide ifFalse: [ + output := WideString withAll: output. + alreadyWide := true ] ]. + (byte1 bitAnd: 16rF8) = 240 ifTrue: [ "four bytes" + byte2 := stream next. + (byte2 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + byte3 := stream next. + (byte3 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + byte4 := stream next. + (byte4 bitAnd: 16rC0) = 16r80 ifFalse: [ self invalidUtf8 ]. + unicode := ((byte1 bitAnd: 16r7) bitShift: 18) + + ((byte2 bitAnd: 63) bitShift: 12) + + ((byte3 bitAnd: 63) bitShift: 6) + + (byte4 bitAnd: 63). + alreadyWide ifFalse: [ + output := WideString withAll: output. + alreadyWide := true ] ]. + unicode ifNil: [ self invalidUtf8 ]. + unicode = 16rFEFF "ignore BOM" ifFalse: [ + count := count + 1. + output at: count put: (Character codePoint: unicode) ]. + unicode := nil ]. + ^ count < anInteger + ifTrue: [ output first: count ] + ifFalse: [ output ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/next.st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/next.st new file mode 100644 index 00000000..4363f086 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/next.st @@ -0,0 +1,3 @@ +streaming +next + ^ (self next: 1) first \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/nextPut..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/nextPut..st new file mode 100644 index 00000000..ad2d94ab --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/nextPut..st @@ -0,0 +1,11 @@ +streaming +nextPut: aCharacter + | codePoint shouldEncode | + codePoint := aCharacter codePoint. + codePoint > 255 + ifTrue: [ ^ self nextPutAll: (String with: aCharacter) ]. + shouldEncode := Latin1ToUtf8Map at: codePoint + 1. + shouldEncode = 1 + ifTrue: [ stream nextPutAll: (Latin1ToUtf8Encodings at: codePoint + 1) ] + ifFalse: [ stream nextPut: aCharacter ] + \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/nextPutAll..st b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/nextPutAll..st new file mode 100644 index 00000000..b9136110 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/instance/nextPutAll..st @@ -0,0 +1,5 @@ +streaming +nextPutAll: aString + aString isByteString + ifTrue: [ self encodeFast: aString ] + ifFalse: [ self encodeDefault: aString ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/methodProperties.json new file mode 100644 index 00000000..d5942a3a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/methodProperties.json @@ -0,0 +1,14 @@ +{ + "class" : { + "initialize" : "lr 7/25/2011 19:46" }, + "instance" : { + "crlf" : "pmm 4/10/2010 13:28", + "encodeDefault:" : "lr 7/25/2011 18:36", + "encodeFast:" : "pmm 9/1/2012 15:25", + "greaseNext:putAll:startingAt:" : "pmm 5/21/2014 21:33", + "greaseNext:putAllFast:startingAt:" : "pmm 5/21/2014 21:19", + "invalidUtf8" : "jf 9/30/2009 00:39", + "next" : "pmm 2/17/2010 20:09", + "next:" : "pmm 9/1/2012 15:25", + "nextPut:" : "lr 7/25/2011 19:51", + "nextPutAll:" : "pmm 4/10/2010 13:28" } } diff --git a/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/properties.json b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/properties.json new file mode 100644 index 00000000..ec018ce3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRPharoUtf8CodecStream.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + "Latin1ToUtf8Encodings", + "Latin1ToUtf8Map" ], + "commentStamp" : "pmm 2/20/2009 12:27", + "instvars" : [ + ], + "name" : "GRPharoUtf8CodecStream", + "pools" : [ + ], + "super" : "GRPharoConverterCodecStream", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/customizeExplorerContents.st b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/customizeExplorerContents.st new file mode 100644 index 00000000..d59e1d7f --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/customizeExplorerContents.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +customizeExplorerContents + ^ true \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/explorerContents.st b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/explorerContents.st new file mode 100644 index 00000000..c104c7b7 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/explorerContents.st @@ -0,0 +1,10 @@ +*grease-squeak5-core +explorerContents + | contents | + contents := OrderedCollection new. + self keysAndValuesDo: [ :key :value | + contents add: (ObjectExplorerWrapper + with: value + name: (key printString contractTo: 32) + model: self) ]. + ^ contents \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/hasContentsInExplorer.st b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/hasContentsInExplorer.st new file mode 100644 index 00000000..ac2d59ee --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/instance/hasContentsInExplorer.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +hasContentsInExplorer + ^ true \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/methodProperties.json new file mode 100644 index 00000000..9dbcc9c5 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/methodProperties.json @@ -0,0 +1,7 @@ +{ + "class" : { + }, + "instance" : { + "customizeExplorerContents" : "lr 7/25/2011 19:51", + "explorerContents" : "lr 7/25/2011 19:51", + "hasContentsInExplorer" : "lr 7/25/2011 19:51" } } diff --git a/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/properties.json b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/properties.json new file mode 100644 index 00000000..943ee5f4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSmallDictionary.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "GRSmallDictionary" } diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/README.md b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/class/initialize.st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/class/initialize.st new file mode 100644 index 00000000..ae58f1b3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/class/initialize.st @@ -0,0 +1,4 @@ +class initialization +initialize + super initialize. + self select \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/defaultDirectoryPathString.st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/defaultDirectoryPathString.st new file mode 100644 index 00000000..9121ad38 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/defaultDirectoryPathString.st @@ -0,0 +1,3 @@ +file library +defaultDirectoryPathString + ^ FileDirectory default fullName \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/deleteFile.inFolder..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/deleteFile.inFolder..st new file mode 100644 index 00000000..f2ba4102 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/deleteFile.inFolder..st @@ -0,0 +1,4 @@ +file library +deleteFile: aFileName inFolder: aPathString + (FileDirectory on: aPathString) + deleteFileNamed: aFileName \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/directoriesIn..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/directoriesIn..st new file mode 100644 index 00000000..be1b1351 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/directoriesIn..st @@ -0,0 +1,9 @@ +file library +directoriesIn: aPathString + "Return a collection of absolute paths for all the files (no directories) in the directory given by aPathString + must not include file names that start with ." + | directory | + directory := FileDirectory default directoryNamed: aPathString. + ^ (directory directoryNames + reject: [ :each | each first = $. ]) + collect: [ :each | directory fullNameFor: each ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/doSilently..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/doSilently..st new file mode 100644 index 00000000..d42119ee --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/doSilently..st @@ -0,0 +1,3 @@ +private +doSilently: aBlock + ^SystemChangeNotifier uniqueInstance doSilently: aBlock \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/ensureExistenceOfFolder..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/ensureExistenceOfFolder..st new file mode 100644 index 00000000..c918f1e9 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/ensureExistenceOfFolder..st @@ -0,0 +1,3 @@ +file library +ensureExistenceOfFolder: aString + ^FileDirectory default assureExistenceOfPath: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileExists..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileExists..st new file mode 100644 index 00000000..e5d8ee83 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileExists..st @@ -0,0 +1,3 @@ +file library +fileExists: aString + ^FileDirectory default fileExists: aString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileNameFor..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileNameFor..st new file mode 100644 index 00000000..679781ba --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileNameFor..st @@ -0,0 +1,7 @@ +file library +fileNameFor: aPathString + | path | + path := FileDirectory default fullPathFor: aPathString. + ^ (path size > 1 and: [ path endsWith: FileDirectory slash ]) + ifTrue: [ path allButLast: FileDirectory slash size ] + ifFalse: [ path ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileStreamOn.do.binary..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileStreamOn.do.binary..st new file mode 100644 index 00000000..2fd81137 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/fileStreamOn.do.binary..st @@ -0,0 +1,13 @@ +file library +fileStreamOn: aString do: aBlock binary: aBoolean + ^ aBoolean + ifTrue: [ + FileStream fileNamed: aString do: [ :stream | + stream binary. + aBlock value: stream ] ] + ifFalse: [ + MultiByteFileStream fileNamed: aString do: [ :stream | + stream + ascii; + wantsLineEndConversion: true. + aBlock value: stream ] ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/filesIn..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/filesIn..st new file mode 100644 index 00000000..89667dbc --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/filesIn..st @@ -0,0 +1,9 @@ +file library +filesIn: aPathString + "Return a collection of absolute paths for all the files (no directories) in the directory given by aPathString + must not include file names that start with ." + | directory | + directory := FileDirectory default directoryNamed: aPathString. + ^ (directory fileNames + reject: [ :each | each first = $. ]) + collect: [ :each | directory fullNameFor: each ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/isDirectory..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/isDirectory..st new file mode 100644 index 00000000..74d6fa61 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/isDirectory..st @@ -0,0 +1,3 @@ +file library +isDirectory: aPathString + ^ (FileDirectory forFileName: aPathString) directoryEntry isDirectory \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/localNameOf..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/localNameOf..st new file mode 100644 index 00000000..aea2f08c --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/localNameOf..st @@ -0,0 +1,3 @@ +file library +localNameOf: aFilename + ^FileDirectory localNameFor: aFilename \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/pathSeparator.st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/pathSeparator.st new file mode 100644 index 00000000..b9a34e3d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/pathSeparator.st @@ -0,0 +1,3 @@ +file library +pathSeparator + ^ FileDirectory pathNameDelimiter asString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/write.toFile.inFolder..st b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/write.toFile.inFolder..st new file mode 100644 index 00000000..08d697b5 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/instance/write.toFile.inFolder..st @@ -0,0 +1,15 @@ +file library +write: aStringOrByteArray toFile: aFileNameString inFolder: aFolderString + "writes aStringOrByteArray to a file named aFilenameString in the folder aFolderString" + | folder stream fullFilePath | + folder := FileDirectory default directoryNamed: aFolderString. + fullFilePath := folder fullNameFor: aFileNameString. + stream := aStringOrByteArray isString + ifTrue: [ + (MultiByteFileStream forceNewFileNamed: fullFilePath) + ascii; + wantsLineEndConversion: true; + yourself ] + ifFalse: [ (FileStream forceNewFileNamed: fullFilePath) binary ]. + [ stream nextPutAll: aStringOrByteArray ] + ensure: [ stream close ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/methodProperties.json new file mode 100644 index 00000000..34a4e0b6 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/methodProperties.json @@ -0,0 +1,17 @@ +{ + "class" : { + "initialize" : "JohnMcKeon 3/19/2015 22:16" }, + "instance" : { + "defaultDirectoryPathString" : "pmm 7/15/2015 15:07", + "deleteFile:inFolder:" : "JohnMcKeon 12/26/2014 19:35", + "directoriesIn:" : "JohnMcKeon 12/31/2014 09:23", + "doSilently:" : "JohnMcKeon 12/26/2014 19:36", + "ensureExistenceOfFolder:" : "JohnMcKeon 12/31/2014 09:32", + "fileExists:" : "JohnMcKeon 12/31/2014 09:35", + "fileNameFor:" : "pmm 7/15/2015 16:48", + "fileStreamOn:do:binary:" : "pmm 7/15/2015 14:47", + "filesIn:" : "JohnMcKeon 12/26/2014 19:35", + "isDirectory:" : "pmm 7/15/2015 15:21", + "localNameOf:" : "JohnMcKeon 12/27/2014 11:04", + "pathSeparator" : "JohnMcKeon 12/26/2014 19:35", + "write:toFile:inFolder:" : "JohnMcKeon 12/26/2014 19:36" } } diff --git a/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/properties.json b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/properties.json new file mode 100644 index 00000000..3bae2a24 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRSqueakPlatform.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRSqueakPlatform", + "pools" : [ + ], + "super" : "GRPharoPlatform", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/README.md b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/README.md new file mode 100644 index 00000000..3f2ed8e8 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/README.md @@ -0,0 +1 @@ +I'm a work around for bugs in the Pharo stream classes. \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/instance/reset.st b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/instance/reset.st new file mode 100644 index 00000000..8232867f --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/instance/reset.st @@ -0,0 +1,3 @@ +positioning +reset + self resetToStart \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/methodProperties.json b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/methodProperties.json new file mode 100644 index 00000000..e8d4055e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "reset" : "pmm 8/26/2011 09:39" } } diff --git a/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/properties.json b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/properties.json new file mode 100644 index 00000000..cfa193a9 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/GRWorkingWriteStream.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "pmm 8/25/2011 18:30", + "instvars" : [ + ], + "name" : "GRWorkingWriteStream", + "pools" : [ + ], + "super" : "WriteStream", + "type" : "normal" } diff --git a/repository/Grease-Squeak5-Core.package/Interval.extension/instance/any.st b/repository/Grease-Squeak5-Core.package/Interval.extension/instance/any.st new file mode 100644 index 00000000..0ac76e9d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Interval.extension/instance/any.st @@ -0,0 +1,6 @@ +*grease-squeak5-core +any + "#first (used by SequenceableCollection>>anyOne) is an accessor of + Interval and does not error on an empty Interval." + + ^ self at: 1 \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Interval.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Interval.extension/methodProperties.json new file mode 100644 index 00000000..1dedf542 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Interval.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "any" : "jf 2/6/2010 03:25" } } diff --git a/repository/Grease-Squeak5-Core.package/Interval.extension/properties.json b/repository/Grease-Squeak5-Core.package/Interval.extension/properties.json new file mode 100644 index 00000000..d468cd35 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Interval.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Interval" } diff --git a/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/argumentCount.st b/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/argumentCount.st new file mode 100644 index 00000000..f2a02dea --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/argumentCount.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +argumentCount + ^ selector numArgs - self arguments size \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/fixCallbackTemps.st b/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/fixCallbackTemps.st new file mode 100644 index 00000000..575f0180 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/fixCallbackTemps.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +fixCallbackTemps + "for polymorphism with BlockContext >> #fixCallbackTemps" \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/valueWithPossibleArguments..st b/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/valueWithPossibleArguments..st new file mode 100644 index 00000000..bc49f4c6 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/MessageSend.extension/instance/valueWithPossibleArguments..st @@ -0,0 +1,7 @@ +*grease-squeak5-core +valueWithPossibleArguments: anArray + "Evaluate the block represented by the receiver. + If the block requires one argument, use anArg, if it requires more than one, + fill up the rest with nils." + + ^ self valueWithEnoughArguments: anArray \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/MessageSend.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/MessageSend.extension/methodProperties.json new file mode 100644 index 00000000..78bb2233 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/MessageSend.extension/methodProperties.json @@ -0,0 +1,7 @@ +{ + "class" : { + }, + "instance" : { + "argumentCount" : "pmm 1/10/2009 19:22", + "fixCallbackTemps" : "pmm 4/23/2007 20:02", + "valueWithPossibleArguments:" : "lr 7/25/2011 19:52" } } diff --git a/repository/Grease-Squeak5-Core.package/MessageSend.extension/properties.json b/repository/Grease-Squeak5-Core.package/MessageSend.extension/properties.json new file mode 100644 index 00000000..66fcc3c1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/MessageSend.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "MessageSend" } diff --git a/repository/Grease-Squeak5-Core.package/Number.extension/instance/milliseconds.st b/repository/Grease-Squeak5-Core.package/Number.extension/instance/milliseconds.st new file mode 100644 index 00000000..a121e755 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Number.extension/instance/milliseconds.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +milliseconds + ^ self milliSeconds \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Number.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Number.extension/methodProperties.json new file mode 100644 index 00000000..977cd782 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Number.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "milliseconds" : "jf 2/6/2010 00:12" } } diff --git a/repository/Grease-Squeak5-Core.package/Number.extension/properties.json b/repository/Grease-Squeak5-Core.package/Number.extension/properties.json new file mode 100644 index 00000000..1d2c94d4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Number.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Number" } diff --git a/repository/Grease-Squeak5-Core.package/Object.extension/instance/greaseString.st b/repository/Grease-Squeak5-Core.package/Object.extension/instance/greaseString.st new file mode 100644 index 00000000..58859d4f --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Object.extension/instance/greaseString.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +greaseString + ^ self asString \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Object.extension/instance/sizeInMemory.st b/repository/Grease-Squeak5-Core.package/Object.extension/instance/sizeInMemory.st new file mode 100644 index 00000000..223eef2e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Object.extension/instance/sizeInMemory.st @@ -0,0 +1,23 @@ +*grease-squeak5-core +sizeInMemory + "Answer the number of bytes consumed by this instance including object header." + | contentBytes | + + contentBytes := Smalltalk wordSize. "base header" + contentBytes := contentBytes + (self class instSize * Smalltalk wordSize). "instance vars" + + self class isVariable ifTrue:[ | bytesPerElement | "indexed elements" + bytesPerElement := self class isBytes ifTrue: [1] ifFalse: [4]. + contentBytes := (contentBytes + (self basicSize * bytesPerElement)). + "If we are not filling an ammount of bytes multiple of the wordSize, we do it" + (contentBytes \\ Smalltalk wordSize) = 0 ifFalse: [ + | extraBytesToFillAWord | + extraBytesToFillAWord := Smalltalk wordSize - (contentBytes \\ Smalltalk wordSize). + contentBytes := contentBytes + extraBytesToFillAWord. + ] + ]. + + contentBytes > 255 ifTrue: [ contentBytes := contentBytes + (2 * Smalltalk wordSize) ] + ifFalse: [ contentBytes := contentBytes + Smalltalk wordSize + ]. + ^contentBytes \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Object.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Object.extension/methodProperties.json new file mode 100644 index 00000000..c0906e2e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Object.extension/methodProperties.json @@ -0,0 +1,6 @@ +{ + "class" : { + }, + "instance" : { + "greaseString" : "jf 9/30/2009 01:10", + "sizeInMemory" : "cmm 10/7/2015 10:22" } } diff --git a/repository/Grease-Squeak5-Core.package/Object.extension/properties.json b/repository/Grease-Squeak5-Core.package/Object.extension/properties.json new file mode 100644 index 00000000..3d3b9ec4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Object.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Object" } diff --git a/repository/Grease-Squeak5-Core.package/Point.extension/instance/greaseString.st b/repository/Grease-Squeak5-Core.package/Point.extension/instance/greaseString.st new file mode 100644 index 00000000..314a4131 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Point.extension/instance/greaseString.st @@ -0,0 +1,13 @@ +*grease-squeak5-core +greaseString + "Reimplemented because in Pharo 1.4 + (4 @ 2) greaseString + ansers '(4@2)'" + ^ String streamContents: [ :stream | + x printOn: stream. + stream nextPut: $@. + (y notNil and: [y negative]) + ifTrue: [ + "Avoid ambiguous @- construct" + stream space]. + y printOn: stream ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/Point.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/Point.extension/methodProperties.json new file mode 100644 index 00000000..353fca89 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Point.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseString" : "pmm 3/4/2012 20:24" } } diff --git a/repository/Grease-Squeak5-Core.package/Point.extension/properties.json b/repository/Grease-Squeak5-Core.package/Point.extension/properties.json new file mode 100644 index 00000000..3ae71f02 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/Point.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "Point" } diff --git a/repository/Grease-Squeak5-Core.package/PositionableStream.extension/instance/greaseUpToAll..st b/repository/Grease-Squeak5-Core.package/PositionableStream.extension/instance/greaseUpToAll..st new file mode 100644 index 00000000..d8667190 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/PositionableStream.extension/instance/greaseUpToAll..st @@ -0,0 +1,5 @@ +*grease-squeak5-core +greaseUpToAll: aCollection + "Needed for Seaside ports to other dialects where #upToAll: may have + different semantics" + ^ self upToAll: aCollection \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/PositionableStream.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/PositionableStream.extension/methodProperties.json new file mode 100644 index 00000000..cfb79423 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/PositionableStream.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseUpToAll:" : "jf 9/30/2009 01:06" } } diff --git a/repository/Grease-Squeak5-Core.package/PositionableStream.extension/properties.json b/repository/Grease-Squeak5-Core.package/PositionableStream.extension/properties.json new file mode 100644 index 00000000..9e1697a6 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/PositionableStream.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "PositionableStream" } diff --git a/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/instance/greaseString.st b/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/instance/greaseString.st new file mode 100644 index 00000000..0b2f0ada --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/instance/greaseString.st @@ -0,0 +1,5 @@ +*grease-squeak5-core +greaseString + | converter | + converter := GRSignPrinter new, (GRNumberPrinter new precision: self scale). + ^ converter print: self \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/methodProperties.json new file mode 100644 index 00000000..f28c2e73 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseString" : "JohanBrichau 7/15/2015 13:26" } } diff --git a/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/properties.json b/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/properties.json new file mode 100644 index 00000000..6e425dda --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/ScaledDecimal.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "ScaledDecimal" } diff --git a/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/beginsWithSubCollection..st b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/beginsWithSubCollection..st new file mode 100644 index 00000000..c859698a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/beginsWithSubCollection..st @@ -0,0 +1,4 @@ +*grease-squeak5-core +beginsWithSubCollection: aSequenceableCollection + "Some platforms implement #beginsWith: to answer true for an empty argument." + ^ self beginsWith: aSequenceableCollection \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/endsWithSubCollection..st b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/endsWithSubCollection..st new file mode 100644 index 00000000..922f9ad1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/endsWithSubCollection..st @@ -0,0 +1,4 @@ +*grease-squeak5-core +endsWithSubCollection: aSequenceableCollection + "Some platforms implement #endsWith: to answer true for an empty argument." + ^ self endsWith: aSequenceableCollection \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/sorted.st b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/sorted.st new file mode 100644 index 00000000..6d509580 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/instance/sorted.st @@ -0,0 +1,3 @@ +*grease-squeak5-core +sorted + ^ self sorted: [ :a :b | a <= b ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/methodProperties.json new file mode 100644 index 00000000..c683223d --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/methodProperties.json @@ -0,0 +1,7 @@ +{ + "class" : { + }, + "instance" : { + "beginsWithSubCollection:" : "jok 3/22/2010 11:48", + "endsWithSubCollection:" : "jok 3/22/2010 11:47", + "sorted" : "jf 2/6/2010 02:01" } } diff --git a/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/properties.json b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/properties.json new file mode 100644 index 00000000..3b2523c3 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SequenceableCollection.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "SequenceableCollection" } diff --git a/repository/Grease-Squeak5-Core.package/SmallInteger.extension/instance/sizeInMemory.st b/repository/Grease-Squeak5-Core.package/SmallInteger.extension/instance/sizeInMemory.st new file mode 100644 index 00000000..fdf1df95 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SmallInteger.extension/instance/sizeInMemory.st @@ -0,0 +1,4 @@ +*grease-squeak5-core +sizeInMemory + "SmallInteger occupy 0 bytes since the only space occupied by a SmallInteger is the space of the slot containing it. There is no SmallInteger object beyond the slot. From another POV, it could be 4, the size of the slot. But we don't count the size of the slots, they are already counted in the containing object, that's why it should answer 0." + ^0. \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/SmallInteger.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/SmallInteger.extension/methodProperties.json new file mode 100644 index 00000000..2a06daf2 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SmallInteger.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "sizeInMemory" : "pmm 7/15/2015 16:31" } } diff --git a/repository/Grease-Squeak5-Core.package/SmallInteger.extension/properties.json b/repository/Grease-Squeak5-Core.package/SmallInteger.extension/properties.json new file mode 100644 index 00000000..d2d9ab4a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SmallInteger.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "SmallInteger" } diff --git a/repository/Grease-Squeak5-Core.package/SocketStream.extension/instance/greaseNext.putAll.startingAt..st b/repository/Grease-Squeak5-Core.package/SocketStream.extension/instance/greaseNext.putAll.startingAt..st new file mode 100644 index 00000000..51fa0666 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SocketStream.extension/instance/greaseNext.putAll.startingAt..st @@ -0,0 +1,13 @@ +*grease-squeak5-core +greaseNext: anInteger putAll: aCollection startingAt: startIndex + "Put a String or a ByteArray onto the stream starting at the given position. + Currently a large collection will allocate a large buffer." + + | toPut | + anInteger = 0 ifTrue: [ + ^ aCollection ]. + toPut := binary ifTrue: [ aCollection asByteArray ] ifFalse: [ aCollection asString ]. + self adjustOutBuffer: anInteger. + outBuffer replaceFrom: outNextToWrite to: outNextToWrite + anInteger - 1 with: toPut startingAt: startIndex. + outNextToWrite := outNextToWrite + anInteger. + self checkFlush \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/SocketStream.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/SocketStream.extension/methodProperties.json new file mode 100644 index 00000000..8f430aea --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SocketStream.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseNext:putAll:startingAt:" : "pmm 5/23/2010 08:17" } } diff --git a/repository/Grease-Squeak5-Core.package/SocketStream.extension/properties.json b/repository/Grease-Squeak5-Core.package/SocketStream.extension/properties.json new file mode 100644 index 00000000..4800d84e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/SocketStream.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "SocketStream" } diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimBoth..st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimBoth..st new file mode 100644 index 00000000..7f13e09e --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimBoth..st @@ -0,0 +1,5 @@ +*grease-squeak5-core +trimBoth: aBlock + "Trim characters satisfying the condition given in aBlock from both sides of the receiving string." + + ^ self trimLeft: aBlock right: aBlock \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimBoth.st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimBoth.st new file mode 100644 index 00000000..9e11a5c4 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimBoth.st @@ -0,0 +1,5 @@ +*grease-squeak5-core +trimBoth + "Trim separators from both sides of the receiving string." + + ^ self trimBoth: [ :char | char isSeparator ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft..st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft..st new file mode 100644 index 00000000..5671847f --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft..st @@ -0,0 +1,5 @@ +*grease-squeak5-core +trimLeft: aBlock + "Trim characters satisfying the condition given in aBlock from the left side of the receiving string." + + ^ self trimLeft: aBlock right: [ :char | false ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft.right..st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft.right..st new file mode 100644 index 00000000..eabf7e62 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft.right..st @@ -0,0 +1,12 @@ +*grease-squeak5-core +trimLeft: aLeftBlock right: aRightBlock + "Trim characters satisfying the condition given in aLeftBlock from the left side and aRightBlock from the right sides of the receiving string." + + | left right | + left := 1. + right := self size. + [ left <= right and: [ aLeftBlock value: (self at: left) ] ] + whileTrue: [ left := left + 1 ]. + [ left <= right and: [ aRightBlock value: (self at: right) ] ] + whileTrue: [ right := right - 1 ]. + ^ self copyFrom: left to: right \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft.st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft.st new file mode 100644 index 00000000..3e588f1a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimLeft.st @@ -0,0 +1,5 @@ +*grease-squeak5-core +trimLeft + "Trim separators from the left side of the receiving string." + + ^ self trimLeft: [ :char | char isSeparator ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimRight..st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimRight..st new file mode 100644 index 00000000..b0ae73c0 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimRight..st @@ -0,0 +1,5 @@ +*grease-squeak5-core +trimRight: aBlock + "Trim characters satisfying the condition given in aBlock from the right side of the receiving string." + + ^ self trimLeft: [ :char | false ] right: aBlock \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/instance/trimRight.st b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimRight.st new file mode 100644 index 00000000..dbaffc71 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/instance/trimRight.st @@ -0,0 +1,5 @@ +*grease-squeak5-core +trimRight + "Trim separators from the right side of the receiving string." + + ^ self trimRight: [ :char | char isSeparator ] \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/String.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/String.extension/methodProperties.json new file mode 100644 index 00000000..2661c833 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/methodProperties.json @@ -0,0 +1,11 @@ +{ + "class" : { + }, + "instance" : { + "trimBoth" : "lr 10/25/2009 11:13", + "trimBoth:" : "lr 10/25/2009 11:11", + "trimLeft" : "lr 10/25/2009 11:14", + "trimLeft:" : "lr 10/25/2009 11:11", + "trimLeft:right:" : "lr 10/25/2009 11:15", + "trimRight" : "lr 10/25/2009 11:14", + "trimRight:" : "lr 10/25/2009 11:11" } } diff --git a/repository/Grease-Squeak5-Core.package/String.extension/properties.json b/repository/Grease-Squeak5-Core.package/String.extension/properties.json new file mode 100644 index 00000000..c2138507 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/String.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "String" } diff --git a/repository/Grease-Squeak5-Core.package/WriteStream.extension/instance/greaseNext.putAll.startingAt..st b/repository/Grease-Squeak5-Core.package/WriteStream.extension/instance/greaseNext.putAll.startingAt..st new file mode 100644 index 00000000..d428cd84 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/WriteStream.extension/instance/greaseNext.putAll.startingAt..st @@ -0,0 +1,4 @@ +*grease-squeak5-core +greaseNext: anInteger putAll: aCollection startingAt: startIndex + "Store the next anInteger elements from the given collection." + ^ self next: anInteger putAll: aCollection startingAt: startIndex \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/WriteStream.extension/methodProperties.json b/repository/Grease-Squeak5-Core.package/WriteStream.extension/methodProperties.json new file mode 100644 index 00000000..e8241b94 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/WriteStream.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "greaseNext:putAll:startingAt:" : "jf 5/22/2010 20:26" } } diff --git a/repository/Grease-Squeak5-Core.package/WriteStream.extension/properties.json b/repository/Grease-Squeak5-Core.package/WriteStream.extension/properties.json new file mode 100644 index 00000000..239b3632 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/WriteStream.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "WriteStream" } diff --git a/repository/Grease-Squeak5-Core.package/monticello.meta/categories.st b/repository/Grease-Squeak5-Core.package/monticello.meta/categories.st new file mode 100644 index 00000000..00eecc3b --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/monticello.meta/categories.st @@ -0,0 +1 @@ +SystemOrganization addCategory: #'Grease-Squeak5-Core'! diff --git a/repository/Grease-Squeak5-Core.package/monticello.meta/initializers.st b/repository/Grease-Squeak5-Core.package/monticello.meta/initializers.st new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Squeak5-Core.package/monticello.meta/package b/repository/Grease-Squeak5-Core.package/monticello.meta/package new file mode 100644 index 00000000..a486f745 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/monticello.meta/package @@ -0,0 +1 @@ +(name 'Grease-Squeak5-Core') \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/monticello.meta/version b/repository/Grease-Squeak5-Core.package/monticello.meta/version new file mode 100644 index 00000000..b3d8cde1 --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/monticello.meta/version @@ -0,0 +1 @@ +(name 'Grease-Squeak5-Core-JB.8' message 'New package from Squeak5 onwards' id 'e3b34f8f-b14d-4fb1-95b8-86670bb48ed6' date '11 November 2015' time '1:12:31.115 pm' author 'JB' ancestors ((name 'Grease-Squeak-Core-JB.7' message 'Moved methods from Pharo-Core to Squeak-Core' id 'd870beb8-0de8-4e72-a73b-5f7e569fd859' date '11 November 2015' time '1:07:25.226 pm' author 'JB' ancestors ((name 'Grease-Squeak-Core-JohanBrichau.6' message 'Object>>#sizeInMemory asks #isCompact to determine the number of bytes, but this has been removed from Squeak. Thanks Chris Muller' id '5899d218-fe39-41b2-880a-d052b41d0d63' date '24 October 2015' time '5:24:10.125 pm' author 'JB' ancestors ((name 'Grease-Squeak-Core-pmm.5' message '- add #sizeInMemory to Squeak' id '407fc250-3664-4ffb-ae92-17102efa6e47' date '15 July 2015' time '6:09:33.359 pm' author 'pmm' ancestors ((name 'Grease-Squeak-Core-pmm.4' message '- add more missing methods' id '1e5dee9a-f686-43eb-91e2-5942fe6143d5' date '15 July 2015' time '3:34:35.74 pm' author 'pmm' ancestors ((name 'Grease-Squeak-Core-pmm.3' message '- implement missing method' id '3683851e-6da7-4972-afa0-f4928390b3a9' date '15 July 2015' time '2:48:40.968 pm' author 'pmm' ancestors ((name 'Grease-Squeak-Core-JohnMcKeon.2' message '-add override of class initialize method' id '22c9a55a-0754-2a4c-8028-482fa4ffc669' date '19 March 2015' time '10:18:53.936 pm' author 'JohnMcKeon' ancestors ((name 'Grease-Squeak-Core-JohnMcKeon.1' message '-grease for squeak' id '76e50246-7376-7f43-9e50-daa9d7108db6' date '16 March 2015' time '9:14:49.119 pm' author 'JohnMcKeon' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Squeak5-Core.package/properties.json b/repository/Grease-Squeak5-Core.package/properties.json new file mode 100644 index 00000000..f037444a --- /dev/null +++ b/repository/Grease-Squeak5-Core.package/properties.json @@ -0,0 +1,2 @@ +{ + } diff --git a/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/instance/setUp.st b/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/instance/setUp.st index 732990d8..c5decc38 100644 --- a/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/instance/setUp.st +++ b/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/instance/setUp.st @@ -1,4 +1,5 @@ running setUp + | codecStream | codecStream := ((GRCodec forEncoding: 'utf-8') encoderFor: (WriteStream on: String new)). countingStream := GRCountingStream on: codecStream \ No newline at end of file diff --git a/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/methodProperties.json b/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/methodProperties.json index 50b0d5da..f7876d85 100644 --- a/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/methodProperties.json +++ b/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/methodProperties.json @@ -2,7 +2,7 @@ "class" : { }, "instance" : { - "setUp" : "pmm 8/19/2014 09:37", + "setUp" : "pmm 7/16/2015 16:32", "testInitialSize" : "pmm 6/25/2012 20:51", "testNextPut" : "pmm 8/19/2014 09:29", "testNextPutAll" : "pmm 8/19/2014 09:29", diff --git a/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/properties.json b/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/properties.json index e150a105..f9424d2a 100644 --- a/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/properties.json +++ b/repository/Grease-Tests-Core.package/GRCountingStreamTest.class/properties.json @@ -6,8 +6,7 @@ ], "commentStamp" : "", "instvars" : [ - "countingStream", - "codecStream" ], + "countingStream" ], "name" : "GRCountingStreamTest", "pools" : [ ], diff --git a/repository/Grease-Tests-Core.package/GRPlatformTest.class/instance/testGreaseString.st b/repository/Grease-Tests-Core.package/GRPlatformTest.class/instance/testGreaseString.st index c28d0928..7e646c23 100644 --- a/repository/Grease-Tests-Core.package/GRPlatformTest.class/instance/testGreaseString.st +++ b/repository/Grease-Tests-Core.package/GRPlatformTest.class/instance/testGreaseString.st @@ -25,5 +25,5 @@ testGreaseString self assert: Object new greaseString isString. "Printing scaled decimals (https://github.com/SeasideSt/Grease/issues/1)" self assert: 1.21s3 greaseString = '1.210'. - self assert: -1.21s3 greaseString = '-1.210'. + self assert: -1.21s3 greaseString = '-1.210' \ No newline at end of file diff --git a/repository/Grease-Tests-Core.package/GRPlatformTest.class/methodProperties.json b/repository/Grease-Tests-Core.package/GRPlatformTest.class/methodProperties.json index 9e1f08a6..6e94090a 100644 --- a/repository/Grease-Tests-Core.package/GRPlatformTest.class/methodProperties.json +++ b/repository/Grease-Tests-Core.package/GRPlatformTest.class/methodProperties.json @@ -23,7 +23,7 @@ "testGreaseIntegerOnCharacterSmp" : "pmm 12/26/2010 21:16", "testGreaseIntegerOnNumber" : "jf 9/30/2009 01:07", "testGreaseIntegerOnString" : "jf 9/30/2009 01:08", - "testGreaseString" : "JohanBrichau 5/25/2015 09:04", + "testGreaseString" : "pmm 7/16/2015 15:58", "testIfNil" : "pmm 11/10/2007 17:19", "testIfTrueIfFalse" : "lr 12/3/2009 10:54", "testIsCharacter" : "pmm 5/2/2009 17:18", diff --git a/repository/Grease-Tests-Core.package/monticello.meta/version b/repository/Grease-Tests-Core.package/monticello.meta/version index ff0b638f..62c1a949 100644 --- a/repository/Grease-Tests-Core.package/monticello.meta/version +++ b/repository/Grease-Tests-Core.package/monticello.meta/version @@ -1 +1 @@ -(name 'Grease-Tests-Core-JohanBrichau.101' message 'merge Grease-Tests-Core-pmm.100 and Grease-Tests-Core-JohanBrichau.100' id '343a249d-795e-4ed3-9637-5a649c3aec65' date '12 July 2015' time '2:50:54.640379 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-JohanBrichau.100' message 'Missing sign on ScaledDecimal>>greaseString (https://github.com/SeasideSt/Grease/issues/1) Thanks Hilaire!' id '73065b17-0bbd-48b8-8d9a-35e534049cbe' date '25 May 2015' time '9:05:19.861467 am' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-pmm.99' message '- lint fixes' id 'de282121-6c1f-4f8f-8f29-de7977548fd4' date '19 August 2014' time '10:35:49 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.98' message '- lint fixes' id 'edc3c406-4a97-44c1-900b-54e4ff5190bd' date '19 August 2014' time '9:56:19 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.97' message '- lint fixes' id 'f2fcf488-679e-4158-8c4f-3130c1b17a87' date '19 August 2014' time '9:39:15 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.96' message '- lint fixes' id '01da883d-049c-4dbd-b27b-16ca2d35067f' date '19 August 2014' time '9:31:16 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.95' message 'move GRCountingStream from Pharo-only package to Core' id '6950e220-fdb9-41e8-9251-2e3164ad7632' date '16 February 2014' time '9:29:30.735687 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-pmm.94' message '- revert #shouldnt:raise: changes' id '3f89ddf2-bc1d-460f-9c1d-c5337ebb1152' date '19 December 2013' time '12:23:23 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.93' message 'Rename #packages to #grPackages (triggered to prevent a name collision in Pharo3.0)' id '1c33a36a-0a81-43cf-b84e-5421e0f5acc3' date '15 December 2013' time '6:32:02.572 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-DamienCassou.92' message '- Use #shouldnt:raise: only with specific errors, or evaluate the given expression directly' id 'e2787f2b-de0e-44c7-b494-effdced8d930' date '17 October 2013' time '3:05:30.690328 pm' author 'DamienCassou' ancestors ((name 'Grease-Tests-Core-pmm.91' message '- add tests for non-immediate integers' id '9b2b04fb-379e-43c4-9030-ac4bef824811' date '15 September 2013' time '12:19:07 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.90' message '- formatting' id '44dd54a7-09fe-4e50-9c20-860bf24d7a45' date '14 September 2013' time '4:38:07 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.89' message '- spelling' id 'fd25ace7-b543-47ef-9add-55ce516e4ef6' date '14 September 2013' time '4:14:24 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.88' message 'use #position to get the contents size of the stream because #reset does not empty the stream and #size would return the original contents size' id 'dcbcd589-0839-4bd0-8471-fde528e71c98' date '14 September 2013' time '12:36:50.178 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-pmm.87' message '- fix URLs' id 'd995b84b-ab28-4b9d-940e-21ff5b687835' date '12 September 2013' time '4:01:38.884179 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.86' message '- Slime fixes, mostly recategorizations' id '18ddf175-b7f9-4f01-bd6e-383d86d121cc' date '3 September 2012' time '4:35:02 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.85' message '- formatting Nazis from outer space' id 'b04c9269-43b9-4e71-8335-60d614195e96' date '1 September 2012' time '5:02:23 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.84' message '- add test for #respondsTo:' id 'c3750f57-764b-4252-9dee-b75e1b5f24a6' date '29 March 2012' time '7:50:58 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.83' message '- merge Pharo 1.4 fixes from 3.0 branch' id '02d62f6f-9e09-4785-bfe3-0261d7027734' date '6 March 2012' time '7:58:22 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.82' message '- formatting nazis from outer space' id 'd2d3266d-f979-47af-9562-83e73de22d93' date '22 January 2012' time '5:15:48 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.81' message '- formatting nazis from outer space' id '3a4a717e-0791-452b-8791-fe9f084dad6c' date '22 January 2012' time '4:48:23 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.80' message '- merge with trunk' id '53b849bc-762a-4ab3-afe0-4325f9e0f5dc' date '28 September 2011' time '5:53:20 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.79' message '- merge with trunk' id 'f801c4e3-10d7-41ac-ba3c-a27e43efde46' date '28 August 2011' time '12:22:54 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.77' message '- Issue 676: response generators have to reset the response before generating a new one - add infrastructure to reset streams, work around Pharo stream bugs' id '4b1e0c9b-fe4f-4d58-9c66-77db529e289c' date '26 August 2011' time '10:00:36 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.76' message '- merge with trunk' id '381ce6a9-0019-4e80-9b38-fc1bc8ff9d7f' date '25 August 2011' time '9:18:41 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.74' message '- Issue 626: Allow platforms to implement custom encoders for speed - remove #includesUnsafeUrlCharacter: and #includesUnsafeXmlCharacter: from GRPlatform, these were just speed hacks for Pharo, they are now encapsulated in a platform specific class' id '7b719044-d34a-4f63-8352-1b4585b3575d' date '15 August 2011' time '9:41:43 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.73' message '- Issue 672: SequenceableCollection>>#endsWith: is not portable - remove tests that are already in GRAbstractSequenceableCollectionTest and friends' id '4aaa728d-9213-4f25-a547-e4d96b8dd263' date '8 August 2011' time '7:59:40 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.72' message '- Issue 672: SequenceableCollection>>#endsWith: is not portable - add tests for SequenceableCollection>>#beginsWithSubCollection:' id 'eec3a137-28d6-4eab-98c4-f4432c37e845' date '5 August 2011' time '11:20:24 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.71' message '- Issue 672: SequenceableCollection>>#endsWith: is not portable - add tests for SequenceableCollection>>#endsWithSubCollection:' id 'ec82bb59-c56a-4f4f-9c61-4148c79cc181' date '5 August 2011' time '11:02:25 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-jok.70' message 'Issue 672: SequenceableCollection>>#endsWith: is not portable - remove GRPlatformTest>>#testEndsWith:' id '75fa4887-f54f-a142-868c-1ca7283213dd' date '3 August 2011' time '9:46:45 am' author 'jok' ancestors ((name 'Grease-Tests-Core-lr.69' message '- fixed formatting of return message' id '7774d2b6-85f7-4249-8631-b01f6f68d821' date '25 July 2011' time '8:25:40 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.68' message '- fixed spacing in blocks' id '262d74fe-6113-49b7-937d-27d917c50f91' date '25 July 2011' time '7:21:17 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.67' message '- fixed formatting of temporaries' id '6d232518-1847-4631-8e2e-b26c98fb1372' date '25 July 2011' time '6:31:45 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.66' message '- unified formatting of parentheses' id '8b786bc1-6964-4da0-9165-179db414aee0' date '25 July 2011' time '6:26:37 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-pmm.65' message '- went for a simple X-Sendfile design that does not use auto deploy and does not require files to be deployed in image folder' id 'cbcd0fc7-cf62-42f6-820b-79bc6ee16034' date '5 February 2011' time '5:39:06 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.64' message '- split decoding tests accoriding to character range so platforms that don''t support full Unicode can more selectively disable some' id '810c0294-30ff-4eea-9f3e-ca859d01b668' date '26 December 2010' time '9:19:24 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.63' message '- Issue 612: subscript out of bounds when encoding a single 0 character to UTF-8 - http://code.google.com/p/seaside/issues/detail?id=612' id 'cff0b51f-efb3-4e84-a7c9-3ad497615d8a' date '17 November 2010' time '10:44:31 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.62' message '- try to massage test so that it works on VW and GST *crosses fingers*' id 'b363ae54-d371-4feb-a11e-093edd766d5d' date '25 October 2010' time '6:53:44 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.61' message '- remove #hash, #= and #isDictionary from GRSmallDictionary' id '3ef177e8-8cfe-4220-8ec9-c6465a2ca0a3' date '7 October 2010' time '3:56:34 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.60' message '- add #= and #hash to GRSmallDictionary' id 'e946e1ae-bf98-4e40-8ed4-edd6a74a5e59' date '6 September 2010' time '11:36:23 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-lr.59' message '- removed unused variables' id '2f67ce57-f819-4325-a755-83702fdb99c5' date '22 August 2010' time '3:32:41 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-DaleHenrichs.58' message '- adjust grease tests for GemStone Interval implementation; replace #= with #keysAndValuesDo: ' id 'eee22a4f-f247-40b3-adce-1506e74e1e11' date '4 June 1910' time '3:29:41 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Tests-Core-DaleHenrichs.57' message '- extend test coverage for GRStringTest>>testSubStrings to validate case when delimiters appear at beginning or end of the string' id 'b7655d05-7166-4820-8cbb-ea991289c39a' date '3 June 1910' time '3:15:58 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Tests-Core-pmm.56' message '- replace #asByteArray with #greaseString - should really be portable now' id 'cad9705d-3e88-4e69-ac26-a484be26479d' date '27 May 1910' time '10:58:27 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.55' message '- Issue 569: Encoding information doesn''t get included in the response - http://code.google.com/p/seaside/issues/detail?id=569 - add accessor for null codec name' id '23a05e94-8f3c-4eff-902e-158dbd154be9' date '26 May 1910' time '9:42:20 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.54' message '- add test for #includesUnsafeXmlCharacter: - add test for #includesUnsafeUrlCharacter:' id 'fb6ba21e-b2b5-4ece-b424-fd6ca2b4ada8' date '24 May 1910' time '6:29:48 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.53' message '- merge' id 'f82eb617-261d-4e44-89ac-b7f8543f8229' date '23 May 1910' time '8:06:26 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-jf.52' message 'Bump version numbers in preparation for an RC release' id 'de65bd6c-092f-4b90-83be-448847c95c4d' date '22 May 1910' time '11:46:52 pm' author 'jf' ancestors () stepChildren ())(name 'Grease-Tests-Core-NDA.52' message 'Fixed failing testCodecUtf8. Seemed that Michael had changed the test to check the codec name against the case of the encoding string. However Pharo GRPharoUtf8Codec>>name always returns a hardcoded ''utf-8'' resulting in a failing test on Pharo. It seemed unnecessary to store the case in an instance variable in GRPharoUtf8Codec so we changed the test to ignore case.' id 'bd5d325a-9c4c-496d-8f4e-f8e3cfc4d225' date '22 May 1910' time '4:26:32 pm' author 'NDA' ancestors ((name 'Grease-Tests-Core-mls.51' message '+ changed testCodecUtf8 to not assume the encoding name would always be lowercase. This is inconsistent with testCodecLatin1 which assumes the encoding name will be the same as the request name.' id '14cf1775-3b62-4151-8c52-bf50199c41ea' date '19 May 1910' time '2:47:45 pm' author 'mls' ancestors ((name 'Grease-Tests-Core-lr.50' message '- removed a part of a test that is marked as "might be incorrect" and that fails in Pharo 1.1' id '35c5195d-6aae-486f-9067-e1fafab8c22f' date '13 May 1910' time '3:56:34 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.49' message '- added a #newline accessor to GRPlatform that returns a string with the default newline character (sequence) - moved implementation of #convertToSmalltalkNewlines: to OBPlatform as it can now be implemented in terms of #newline and doesn''t need to be provided by other platforms anymore' id '0f564e1c-14bf-4721-b656-b81e89595f4e' date '15 April 1910' time '7:31:50 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-pmm.48' message '- formatting' id 'eec2686d-d081-43e8-911d-bf8aa7914c77' date '11 April 1910' time '7:50:13 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.47' message '- Issue 559: codec tests cannot really work outside Pharo - http://code.google.com/p/seaside/issues/detail?id=559 - merge PaoloBozini.46' id 'c3da2a26-3053-4607-a70b-3a03a0b0188c' date '11 April 1910' time '7:46:22 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.46' message '- Issue 561: remove GRCodecStream >> #binary - http://code.google.com/p/seaside/issues/detail?id=561' id '08ec86fa-2cba-41d6-9b2e-9ceb5acfdccc' date '11 April 1910' time '6:22:43 pm' author 'pmm' ancestors () stepChildren ())(name 'Grease-Tests-Core-PaoloBonzini.46' message 'codec fixes for gnu smalltalk - GRPlatform>>#decodeUtf8Character: fails in gst because (Character codePoint: NNN) can only be placed in a String for 0<=NNN<=127. Above 127 it returns a UnicodeCharacter. A portable application would use a codec on a ByteArray, which is what the proposed implementation does. - GRUtf8CodecTest>>#testCodecUtf8ShortestForm: allow raising an error. In fact, I believe the #deny: is not necessary, and the expected behavior should be to raise an error always. The test is currently XFAILed on Squeak. - other changes: compare the result of #decode: against a string literal instead of a Latin-1 string. Before comparing the result of #encode:, convert to ByteArray (gst doesn''t know the encodings, so it tries to convert the encoded string from UTF-8 to Unicode; this leads to failure)' id '4c6a8fed-7c43-41a9-995f-a346eb69106b' date '7 April 1910' time '9:41:45 am' author 'PaoloBonzini' ancestors ((name 'Grease-Tests-Core-jok.45' message 'Remove GRPlatformTest>>#testAsSeconds since it duplicates part of GRDurationTest>>#testConversions' id '113a8b36-960a-5040-ad4f-993cf555449e' date '5 April 1910' time '4:21:36 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-lr.44' message '- renamed all #testing protocols in TestCase classes with test methods to #tests or #tests-*, as discussed in the mailing list: #testing is for predicate methods, not unit tests. I''ve been moving them to #tests or #tests-* gradually but it might be good to do a sweeping change if others agree with me.' id 'b4e1b8dc-b3da-4949-aeb5-a18c4e34d13e' date '30 March 1910' time '8:59:03 am' author 'lr' ancestors ((name 'Grease-Tests-Core-jok.43' message 'VA Smalltalk doesn''t support ''Symbol new'' to create an empty collection; use #'''' instead' id 'b106192d-5a90-a041-87e6-fb80e59d79e8' date '29 March 1910' time '2:30:19 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.42' message '- fix remaining tests (and add a few) from Issue 555 - revert category from testing to tests' id 'd4ad3f84-f2f1-9b4f-bb62-318770590527' date '29 March 1910' time '2:14:29 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.41' message 'fix the broken tests' id '02128e77-76d6-7f43-a894-eabe4796310c' date '25 March 1910' time '4:19:03 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.40' message '- http://code.google.com/p/seaside/issues/detail?id=555 - add #beginsWithSubCollection: and #endsWithSubCollection:' id '59d04e3f-ec91-fa43-bfbf-b2ead78e0d87' date '25 March 1910' time '10:49:30 am' author 'jok' ancestors ((name 'Grease-Tests-Core-pmm.39' message '- Issue 546: GCCodecEncoderStream>>next gives different types on different platforms - http://code.google.com/p/seaside/issues/detail?id=546' id 'e7af7ec0-0d90-4ca5-ba0a-e7fda7a8c4e4' date '17 February 1910' time '8:12:07 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-lr.38' message '- added explicit repository url' id '5888b879-f025-4db4-861d-325c6c07e2aa' date '17 February 1910' time '3:53:56 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.37' message '- fixed some lint issues' id '7831ac5d-d4fd-43b5-9611-f4bd9e67f931' date '16 February 1910' time '9:16:38 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.36' message '- run protocol cleanup script' id '3178c569-6efb-4905-b297-2e732a274c6e' date '16 February 1910' time '7:59:38 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-jf.35' message 'move Collection isCollection tests on GRCollectionTest' id 'aecb109c-7d01-48ce-a598-d6afe38bd359' date '15 February 1910' time '11:07:05 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.34' message '#addAll: and #withAll: on dictionaries should take a Dictionary parameter, not a collection of Associations (according to ANSI)' id 'b37729a9-ab26-4c16-b525-65dc4d5a6461' date '15 February 1910' time '11:02:11 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.33' message 'add tests for IdentityDictionary and move testAssociationsDo: down so it only runs for dictionaries' id '7699143b-c170-48b7-88fc-8d5d0c9a0e02' date '15 February 1910' time '10:45:50 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.32' message 'Properly fix http://code.google.com/p/seaside/issues/detail?id=544 I introduce a GROrderedMultiMap which specifically allows duplicate keys (GRSmallDictionary no longer does). This is used to implement WARequestFields, which is used throughtout for storing GET and POST fields. #at: will return the first matching field and #allAt: will return all matching values. Various renamings, fixes to callbacks, and to unit and functional tests. I also had to fix the Swazoo and Comanche server adaptors to correctly create WARequestFields instances for the POST fields and to correctly include the raw POST body in all cases (but it seems to be a ByteArray in Swazoo''s case and a ByteString or String for Comanche... seems not ideal)' id 'c6c1f5f9-a7e2-4904-83a0-9dba70498b4a' date '15 February 1910' time '9:31:49 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-lr.31' message '- add an url to the package' id '0c35af12-5a97-411f-8c81-de1608752fa7' date '10 February 1910' time '11:33:39 am' author 'lr' ancestors ((name 'Grease-Tests-Core-jf.30' message 'The copyUpTo* tests were a bit harsh for Interval. Interval gets dispensation from ANSI to return any sequenced collection from its "copy" methods so we might as well follow the same practice for these methods. Also add comments throughout the Collection test case.' id 'ddd90b0d-50e9-4ed5-bb34-11f9002052d1' date '9 February 1910' time '12:22:44 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jok.29' message 'A string literals is immutable; don''t try to change it' id '2dc239fe-59bb-5640-a92a-b126969ca1a3' date '9 February 1910' time '1:23:22 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jf.28' message 'http://code.google.com/p/seaside/issues/detail?id=503 Implement GRVersion as a (fairly) simple version number class.' id 'd97fcc1b-7389-4f03-8510-c326011c1ef3' date '9 February 1910' time '1:04:41 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.27' message 'merge' id 'dbaacd90-8945-4aae-98d4-45138b0d954b' date '6 February 1910' time '4:42:15 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.26' message 'add tests for #sorted and #sorted: and set up the Collection test suite to use a subclass for each Collection class. The latter should help ensure better test coverage of the various ANSI collection types. Note, there are a couple of failing tests on Pharo.' id '6c4eb454-5ff4-488f-867c-64fd8b2a2453' date '6 February 1910' time '4:41:02 am' author 'jf' ancestors () stepChildren ())(name 'Grease-Tests-Core-lr.26' message 'merged' id '13779a68-fb50-4739-930f-57068faa30d2' date '6 February 1910' time '11:16:32 am' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.24' message '- pushed test coverage to 94%' id 'cdaee068-9ae1-409a-b94e-1cf309f0656c' date '6 February 1910' time '11:14:30 am' author 'lr' ancestors ((name 'Grease-Tests-Core-jf.23' message 'remove tests for singular forms of Duration helpers on Integer Discussions with platforms have formed agreement around supporting the plural forms, but not the singulars.' id '2dffff72-403c-4422-ae36-a27b7e6621bc' date '5 February 1910' time '11:11:59 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jok.22' message 'http://code.google.com/p/seaside/issues/detail?id=535 - remove test for #new:withAll: since Slime rewrote all senders' id 'bbb7f836-a0cd-cd4e-882e-a9d2b1d60685' date '26 January 1910' time '10:59:38 am' author 'jok' ancestors ((name 'Grease-Tests-Core-jf.21' message 'http://code.google.com/p/seaside/issues/detail?id=488 Revert part of Grease-Tests-Core-dkh.4' id 'db971bf6-e519-4a10-99a2-5c3f76a1ee93' date '26 January 1910' time '2:01:29 am' author 'jf' ancestors ((name 'Grease-Tests-Core-lr.20' message '- fixing some slime issues' id 'b26bcc1a-bea2-405e-bd47-f0bbafe102b8' date '25 January 1910' time '11:36:53 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-jok.19' message 'http://code.google.com/p/seaside/issues/detail?id=536 - add Slime rule for keysSortedSafely - transform keysSortedSafely -> keys asSortedCollection - remove Grease test for keysSortedSafely' id '3f7bb47e-a8b6-bc47-ba3a-a50e63bd650b' date '25 January 1910' time '2:40:58 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-lr.18' message '- refactor character intervals $a to: $c to ''abc''' id 'd2f77b1f-a5a4-4505-bba2-6a8a234ebe77' date '23 January 1910' time '1:39:33 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-jok.17' message '#atRandom and #atRandom: are not portable (and not used by Seaside) -- remove their tests. ' id 'ecc16f0f-c81c-e043-807b-3f6dcfb1bea0' date '22 January 1910' time '12:21:53 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.16' message 'remove #testCount since senders of #count: have been changed to use #inject:into:' id 'b26328f6-8376-2e46-8ffe-4ea480d1c0f8' date '8 January 1910' time '9:22:28 am' author 'jok' ancestors ((name 'Grease-Tests-Core-jf.15' message 'oops, forgot to remove this test' id '133a52a8-43b2-4fcf-9774-4610c0c84991' date '31 December 2009' time '11:26:16 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.14' message 'Write some more Slime rules and tests and apply them.' id '45b4b787-3546-4b20-8748-42b851064628' date '29 December 2009' time '8:54:04 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.13' message 'http://code.google.com/p/seaside/issues/detail?id=519 #findTokens: is not portable and has the same behaviour as ANSI''s #subStrings:, except that the parameter *must* be a collection of Characters (#findTokens: allows a single Character as wel)' id '09102181-eb65-4bcd-bd25-d07b2448468b' date '29 December 2009' time '2:29:41 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.12' message 'No need to test MessageSend for all platforms. VA doesn''t even have it and we have the GRDelayedSend classes that we use internally. Move the tests of the valuable protocol on MessageSend into the Pharo platform tests.' id 'a3775eb0-b1f1-45ca-81aa-613cf3e92c25' date '18 December 2009' time '12:31:37 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.11' message 'don''t need #printStringBase as you can use GRNumberPrinter' id 'ae4e8377-36a1-4d93-ab6a-6d3080a27451' date '18 December 2009' time '11:48:54 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.10' message 'Stop using #daysInMonthNumber:forYear:, which is different than the method that VA already has. Some discussion on this needs to be had by all platforms but for now it can be worked around using #daysInMonth:year: and #nameOfMonth:' id '3cb235a1-d352-4a08-91c8-917de33653e2' date '18 December 2009' time '10:32:44 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.9' message 'Stop using #newDay:monthNumber:year:, which is only in VW and can be worked around using #newDay:month:year: and #nameOfMonth:' id '0a84d54c-2d6d-4c0a-b509-121230344db8' date '18 December 2009' time '10:17:51 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.8' message 'this is only sent by platform code anyway - let''s revisit string comparison some time with an eye to having a *nice* API...' id '872c0fd5-c22f-4525-a022-57a00f6c6fb1' date '17 December 2009' time '11:05:17 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.7' message 'rename test method for accuracy' id 'c1a18a9a-a265-402c-a2b0-68f80542a2f1' date '7 December 2009' time '11:30:55 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-lr.6' message '- fixed some lint rules' id 'ca6a3c3c-a010-4f08-a44e-36ba0d4c8047' date '3 December 2009' time '1:12:45 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-pmm.5' message '- support ''UTF-8'' has a codec name as well' id '5a82da52-86dd-40a4-9445-16b680e3dff4' date '15 November 2009' time '11:07:53 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-dkh.4' message '- fix bug http://code.google.com/p/seaside/issues/detail?id=488' id '916eae54-cdea-4628-8985-18ecd61ff50e' date '13 November 2009' time '3:47:58 pm' author 'dkh' ancestors ((name 'Grease-Tests-Core-dkh.3' message '- in GemStone the block arg for #on:do: must always have an argument ... fixed that in the new tests' id 'ed95f1d6-fc4d-4e27-b7c6-fc59c10388b7' date '13 November 2009' time '11:21:04 am' author 'dkh' ancestors ((name 'Grease-Tests-Core-jf.2' message 'VA Smalltalk had differing behaviour when an exception handler block ran to completion (depending on the exception type, sometimes it returned and sometimes it resumed). However, I have since discovered that the correct behaviour (returning in all cases) is defined in ANSI 5.5.15.2 and John has fixed the bug in the latest VASt 8.0.1. So I''m replacing the Slime rules with Grease tests.' id '81584859-a50b-474c-a75d-6e8a86632acf' date '3 November 2009' time '1:00:22 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.1' message 'Rename Seaside-Platform to Grease in order to help make clear that it is not Seaside-specific and can be used by other projects as a compatibility layer. This was spawned by discussions when I started porting Magritte to VAST using the Platform layer.' id '17fcc910-612b-4ee7-9d53-f93459751997' date '30 September 2009' time '10:47:28 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-jf.25' message 'add tests for #any on empty collections' id 'b541cf88-64d9-490a-9e07-770006ba9c80' date '6 February 1910' time '1:28:40 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.24' message 'Remove usage of non-Grease methods #nameOfDay:, #anyOne, and several Squeak-specific Duration selectors. Add Grease tests for Duration protocols discussed with platforms. Also test for #any.' id 'd8df12f4-821a-42ef-8c62-21ff964856dc' date '6 February 1910' time '1:15:51 am' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.75' message '- 1 / 0 results in a load time error in Smalltalk/X, use a #perform: to get around it' id '5a4f24bf-854a-4149-9e74-c85827bf8aca' date '24 August 2011' time '12:53:53 pm' author 'pmm' ancestors ((id '4aaa728d-9213-4f25-a547-e4d96b8dd263')) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.78' message '- add base64 test' id 'b2c98f48-1985-4c77-a231-c092b9a9a7a9' date '27 August 2011' time '3:15:26 pm' author 'pmm' ancestors ((id '5a4f24bf-854a-4149-9e74-c85827bf8aca')) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-lr.79' message '- add test for GRCodecStream>>#print:' id 'fbd38ae4-6daa-4712-926f-2893774a0c96' date '25 September 2011' time '10:19:41 am' author 'lr' ancestors ((id 'b2c98f48-1985-4c77-a231-c092b9a9a7a9')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.80' message '- kick #isFraction test' id 'cbcc68f0-8f2e-49db-b36e-bfe6a80af781' date '6 March 2012' time '7:35:36 pm' author 'pmm' ancestors ((id 'fbd38ae4-6daa-4712-926f-2893774a0c96')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-DamienCassou.81' message '- Use #shouldnt:raise: only with specific errors, or evaluate the given expression directly' id '8a4e2f51-3488-4cdd-bb23-b09cad4bd366' date '17 October 2013' time '2:01:41.211867 pm' author 'DamienCassou' ancestors ((id 'cbcc68f0-8f2e-49db-b36e-bfe6a80af781')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.100' message '#820 Configurations should not hold on to classes' id '2ef5713e-79bb-4e2c-951e-7ad6511940ec' date '12 July 2015' time '10:24:17 am' author 'pmm' ancestors ((id 'de282121-6c1f-4f8f-8f29-de7977548fd4')) stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'Grease-Tests-Core-pmm.104' message '- lint fixes' id 'ab4ab731-004c-4f4a-a01b-f073e9349785' date '16 July 2015' time '4:33:14 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.103' message '- lint fixes' id '98d1d5b9-3acb-4886-a6d3-eafd9d5bd5ad' date '16 July 2015' time '4:30:16 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.102' message '- lint fixes' id 'e6a8c34c-d286-4acf-b2bd-8343fa661998' date '16 July 2015' time '3:59:40 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.101' message 'merge Grease-Tests-Core-pmm.100 and Grease-Tests-Core-JohanBrichau.100' id '343a249d-795e-4ed3-9637-5a649c3aec65' date '12 July 2015' time '2:50:54.640379 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-JohanBrichau.100' message 'Missing sign on ScaledDecimal>>greaseString (https://github.com/SeasideSt/Grease/issues/1) Thanks Hilaire!' id '73065b17-0bbd-48b8-8d9a-35e534049cbe' date '25 May 2015' time '9:05:19.861467 am' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-pmm.99' message '- lint fixes' id 'de282121-6c1f-4f8f-8f29-de7977548fd4' date '19 August 2014' time '10:35:49 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.98' message '- lint fixes' id 'edc3c406-4a97-44c1-900b-54e4ff5190bd' date '19 August 2014' time '9:56:19 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.97' message '- lint fixes' id 'f2fcf488-679e-4158-8c4f-3130c1b17a87' date '19 August 2014' time '9:39:15 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.96' message '- lint fixes' id '01da883d-049c-4dbd-b27b-16ca2d35067f' date '19 August 2014' time '9:31:16 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.95' message 'move GRCountingStream from Pharo-only package to Core' id '6950e220-fdb9-41e8-9251-2e3164ad7632' date '16 February 2014' time '9:29:30.735687 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-pmm.94' message '- revert #shouldnt:raise: changes' id '3f89ddf2-bc1d-460f-9c1d-c5337ebb1152' date '19 December 2013' time '12:23:23 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.93' message 'Rename #packages to #grPackages (triggered to prevent a name collision in Pharo3.0)' id '1c33a36a-0a81-43cf-b84e-5421e0f5acc3' date '15 December 2013' time '6:32:02.572 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-DamienCassou.92' message '- Use #shouldnt:raise: only with specific errors, or evaluate the given expression directly' id 'e2787f2b-de0e-44c7-b494-effdced8d930' date '17 October 2013' time '3:05:30.690328 pm' author 'DamienCassou' ancestors ((name 'Grease-Tests-Core-pmm.91' message '- add tests for non-immediate integers' id '9b2b04fb-379e-43c4-9030-ac4bef824811' date '15 September 2013' time '12:19:07 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.90' message '- formatting' id '44dd54a7-09fe-4e50-9c20-860bf24d7a45' date '14 September 2013' time '4:38:07 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.89' message '- spelling' id 'fd25ace7-b543-47ef-9add-55ce516e4ef6' date '14 September 2013' time '4:14:24 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-JohanBrichau.88' message 'use #position to get the contents size of the stream because #reset does not empty the stream and #size would return the original contents size' id 'dcbcd589-0839-4bd0-8471-fde528e71c98' date '14 September 2013' time '12:36:50.178 pm' author 'JohanBrichau' ancestors ((name 'Grease-Tests-Core-pmm.87' message '- fix URLs' id 'd995b84b-ab28-4b9d-940e-21ff5b687835' date '12 September 2013' time '4:01:38.884179 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.86' message '- Slime fixes, mostly recategorizations' id '18ddf175-b7f9-4f01-bd6e-383d86d121cc' date '3 September 2012' time '4:35:02 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.85' message '- formatting Nazis from outer space' id 'b04c9269-43b9-4e71-8335-60d614195e96' date '1 September 2012' time '5:02:23 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.84' message '- add test for #respondsTo:' id 'c3750f57-764b-4252-9dee-b75e1b5f24a6' date '29 March 2012' time '7:50:58 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.83' message '- merge Pharo 1.4 fixes from 3.0 branch' id '02d62f6f-9e09-4785-bfe3-0261d7027734' date '6 March 2012' time '7:58:22 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.82' message '- formatting nazis from outer space' id 'd2d3266d-f979-47af-9562-83e73de22d93' date '22 January 2012' time '5:15:48 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.81' message '- formatting nazis from outer space' id '3a4a717e-0791-452b-8791-fe9f084dad6c' date '22 January 2012' time '4:48:23 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.80' message '- merge with trunk' id '53b849bc-762a-4ab3-afe0-4325f9e0f5dc' date '28 September 2011' time '5:53:20 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.79' message '- merge with trunk' id 'f801c4e3-10d7-41ac-ba3c-a27e43efde46' date '28 August 2011' time '12:22:54 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.77' message '- Issue 676: response generators have to reset the response before generating a new one - add infrastructure to reset streams, work around Pharo stream bugs' id '4b1e0c9b-fe4f-4d58-9c66-77db529e289c' date '26 August 2011' time '10:00:36 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.76' message '- merge with trunk' id '381ce6a9-0019-4e80-9b38-fc1bc8ff9d7f' date '25 August 2011' time '9:18:41 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.74' message '- Issue 626: Allow platforms to implement custom encoders for speed - remove #includesUnsafeUrlCharacter: and #includesUnsafeXmlCharacter: from GRPlatform, these were just speed hacks for Pharo, they are now encapsulated in a platform specific class' id '7b719044-d34a-4f63-8352-1b4585b3575d' date '15 August 2011' time '9:41:43 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.73' message '- Issue 672: SequenceableCollection>>#endsWith: is not portable - remove tests that are already in GRAbstractSequenceableCollectionTest and friends' id '4aaa728d-9213-4f25-a547-e4d96b8dd263' date '8 August 2011' time '7:59:40 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.72' message '- Issue 672: SequenceableCollection>>#endsWith: is not portable - add tests for SequenceableCollection>>#beginsWithSubCollection:' id 'eec3a137-28d6-4eab-98c4-f4432c37e845' date '5 August 2011' time '11:20:24 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.71' message '- Issue 672: SequenceableCollection>>#endsWith: is not portable - add tests for SequenceableCollection>>#endsWithSubCollection:' id 'ec82bb59-c56a-4f4f-9c61-4148c79cc181' date '5 August 2011' time '11:02:25 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-jok.70' message 'Issue 672: SequenceableCollection>>#endsWith: is not portable - remove GRPlatformTest>>#testEndsWith:' id '75fa4887-f54f-a142-868c-1ca7283213dd' date '3 August 2011' time '9:46:45 am' author 'jok' ancestors ((name 'Grease-Tests-Core-lr.69' message '- fixed formatting of return message' id '7774d2b6-85f7-4249-8631-b01f6f68d821' date '25 July 2011' time '8:25:40 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.68' message '- fixed spacing in blocks' id '262d74fe-6113-49b7-937d-27d917c50f91' date '25 July 2011' time '7:21:17 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.67' message '- fixed formatting of temporaries' id '6d232518-1847-4631-8e2e-b26c98fb1372' date '25 July 2011' time '6:31:45 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.66' message '- unified formatting of parentheses' id '8b786bc1-6964-4da0-9165-179db414aee0' date '25 July 2011' time '6:26:37 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-pmm.65' message '- went for a simple X-Sendfile design that does not use auto deploy and does not require files to be deployed in image folder' id 'cbcd0fc7-cf62-42f6-820b-79bc6ee16034' date '5 February 2011' time '5:39:06 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.64' message '- split decoding tests accoriding to character range so platforms that don''t support full Unicode can more selectively disable some' id '810c0294-30ff-4eea-9f3e-ca859d01b668' date '26 December 2010' time '9:19:24 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.63' message '- Issue 612: subscript out of bounds when encoding a single 0 character to UTF-8 - http://code.google.com/p/seaside/issues/detail?id=612' id 'cff0b51f-efb3-4e84-a7c9-3ad497615d8a' date '17 November 2010' time '10:44:31 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.62' message '- try to massage test so that it works on VW and GST *crosses fingers*' id 'b363ae54-d371-4feb-a11e-093edd766d5d' date '25 October 2010' time '6:53:44 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.61' message '- remove #hash, #= and #isDictionary from GRSmallDictionary' id '3ef177e8-8cfe-4220-8ec9-c6465a2ca0a3' date '7 October 2010' time '3:56:34 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.60' message '- add #= and #hash to GRSmallDictionary' id 'e946e1ae-bf98-4e40-8ed4-edd6a74a5e59' date '6 September 2010' time '11:36:23 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-lr.59' message '- removed unused variables' id '2f67ce57-f819-4325-a755-83702fdb99c5' date '22 August 2010' time '3:32:41 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-DaleHenrichs.58' message '- adjust grease tests for GemStone Interval implementation; replace #= with #keysAndValuesDo: ' id 'eee22a4f-f247-40b3-adce-1506e74e1e11' date '4 June 1910' time '3:29:41 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Tests-Core-DaleHenrichs.57' message '- extend test coverage for GRStringTest>>testSubStrings to validate case when delimiters appear at beginning or end of the string' id 'b7655d05-7166-4820-8cbb-ea991289c39a' date '3 June 1910' time '3:15:58 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Tests-Core-pmm.56' message '- replace #asByteArray with #greaseString - should really be portable now' id 'cad9705d-3e88-4e69-ac26-a484be26479d' date '27 May 1910' time '10:58:27 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.55' message '- Issue 569: Encoding information doesn''t get included in the response - http://code.google.com/p/seaside/issues/detail?id=569 - add accessor for null codec name' id '23a05e94-8f3c-4eff-902e-158dbd154be9' date '26 May 1910' time '9:42:20 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.54' message '- add test for #includesUnsafeXmlCharacter: - add test for #includesUnsafeUrlCharacter:' id 'fb6ba21e-b2b5-4ece-b424-fd6ca2b4ada8' date '24 May 1910' time '6:29:48 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.53' message '- merge' id 'f82eb617-261d-4e44-89ac-b7f8543f8229' date '23 May 1910' time '8:06:26 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-jf.52' message 'Bump version numbers in preparation for an RC release' id 'de65bd6c-092f-4b90-83be-448847c95c4d' date '22 May 1910' time '11:46:52 pm' author 'jf' ancestors () stepChildren ())(name 'Grease-Tests-Core-NDA.52' message 'Fixed failing testCodecUtf8. Seemed that Michael had changed the test to check the codec name against the case of the encoding string. However Pharo GRPharoUtf8Codec>>name always returns a hardcoded ''utf-8'' resulting in a failing test on Pharo. It seemed unnecessary to store the case in an instance variable in GRPharoUtf8Codec so we changed the test to ignore case.' id 'bd5d325a-9c4c-496d-8f4e-f8e3cfc4d225' date '22 May 1910' time '4:26:32 pm' author 'NDA' ancestors ((name 'Grease-Tests-Core-mls.51' message '+ changed testCodecUtf8 to not assume the encoding name would always be lowercase. This is inconsistent with testCodecLatin1 which assumes the encoding name will be the same as the request name.' id '14cf1775-3b62-4151-8c52-bf50199c41ea' date '19 May 1910' time '2:47:45 pm' author 'mls' ancestors ((name 'Grease-Tests-Core-lr.50' message '- removed a part of a test that is marked as "might be incorrect" and that fails in Pharo 1.1' id '35c5195d-6aae-486f-9067-e1fafab8c22f' date '13 May 1910' time '3:56:34 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.49' message '- added a #newline accessor to GRPlatform that returns a string with the default newline character (sequence) - moved implementation of #convertToSmalltalkNewlines: to OBPlatform as it can now be implemented in terms of #newline and doesn''t need to be provided by other platforms anymore' id '0f564e1c-14bf-4721-b656-b81e89595f4e' date '15 April 1910' time '7:31:50 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-pmm.48' message '- formatting' id 'eec2686d-d081-43e8-911d-bf8aa7914c77' date '11 April 1910' time '7:50:13 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.47' message '- Issue 559: codec tests cannot really work outside Pharo - http://code.google.com/p/seaside/issues/detail?id=559 - merge PaoloBozini.46' id 'c3da2a26-3053-4607-a70b-3a03a0b0188c' date '11 April 1910' time '7:46:22 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.46' message '- Issue 561: remove GRCodecStream >> #binary - http://code.google.com/p/seaside/issues/detail?id=561' id '08ec86fa-2cba-41d6-9b2e-9ceb5acfdccc' date '11 April 1910' time '6:22:43 pm' author 'pmm' ancestors () stepChildren ())(name 'Grease-Tests-Core-PaoloBonzini.46' message 'codec fixes for gnu smalltalk - GRPlatform>>#decodeUtf8Character: fails in gst because (Character codePoint: NNN) can only be placed in a String for 0<=NNN<=127. Above 127 it returns a UnicodeCharacter. A portable application would use a codec on a ByteArray, which is what the proposed implementation does. - GRUtf8CodecTest>>#testCodecUtf8ShortestForm: allow raising an error. In fact, I believe the #deny: is not necessary, and the expected behavior should be to raise an error always. The test is currently XFAILed on Squeak. - other changes: compare the result of #decode: against a string literal instead of a Latin-1 string. Before comparing the result of #encode:, convert to ByteArray (gst doesn''t know the encodings, so it tries to convert the encoded string from UTF-8 to Unicode; this leads to failure)' id '4c6a8fed-7c43-41a9-995f-a346eb69106b' date '7 April 1910' time '9:41:45 am' author 'PaoloBonzini' ancestors ((name 'Grease-Tests-Core-jok.45' message 'Remove GRPlatformTest>>#testAsSeconds since it duplicates part of GRDurationTest>>#testConversions' id '113a8b36-960a-5040-ad4f-993cf555449e' date '5 April 1910' time '4:21:36 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-lr.44' message '- renamed all #testing protocols in TestCase classes with test methods to #tests or #tests-*, as discussed in the mailing list: #testing is for predicate methods, not unit tests. I''ve been moving them to #tests or #tests-* gradually but it might be good to do a sweeping change if others agree with me.' id 'b4e1b8dc-b3da-4949-aeb5-a18c4e34d13e' date '30 March 1910' time '8:59:03 am' author 'lr' ancestors ((name 'Grease-Tests-Core-jok.43' message 'VA Smalltalk doesn''t support ''Symbol new'' to create an empty collection; use #'''' instead' id 'b106192d-5a90-a041-87e6-fb80e59d79e8' date '29 March 1910' time '2:30:19 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.42' message '- fix remaining tests (and add a few) from Issue 555 - revert category from testing to tests' id 'd4ad3f84-f2f1-9b4f-bb62-318770590527' date '29 March 1910' time '2:14:29 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.41' message 'fix the broken tests' id '02128e77-76d6-7f43-a894-eabe4796310c' date '25 March 1910' time '4:19:03 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.40' message '- http://code.google.com/p/seaside/issues/detail?id=555 - add #beginsWithSubCollection: and #endsWithSubCollection:' id '59d04e3f-ec91-fa43-bfbf-b2ead78e0d87' date '25 March 1910' time '10:49:30 am' author 'jok' ancestors ((name 'Grease-Tests-Core-pmm.39' message '- Issue 546: GCCodecEncoderStream>>next gives different types on different platforms - http://code.google.com/p/seaside/issues/detail?id=546' id 'e7af7ec0-0d90-4ca5-ba0a-e7fda7a8c4e4' date '17 February 1910' time '8:12:07 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-lr.38' message '- added explicit repository url' id '5888b879-f025-4db4-861d-325c6c07e2aa' date '17 February 1910' time '3:53:56 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.37' message '- fixed some lint issues' id '7831ac5d-d4fd-43b5-9611-f4bd9e67f931' date '16 February 1910' time '9:16:38 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.36' message '- run protocol cleanup script' id '3178c569-6efb-4905-b297-2e732a274c6e' date '16 February 1910' time '7:59:38 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-jf.35' message 'move Collection isCollection tests on GRCollectionTest' id 'aecb109c-7d01-48ce-a598-d6afe38bd359' date '15 February 1910' time '11:07:05 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.34' message '#addAll: and #withAll: on dictionaries should take a Dictionary parameter, not a collection of Associations (according to ANSI)' id 'b37729a9-ab26-4c16-b525-65dc4d5a6461' date '15 February 1910' time '11:02:11 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.33' message 'add tests for IdentityDictionary and move testAssociationsDo: down so it only runs for dictionaries' id '7699143b-c170-48b7-88fc-8d5d0c9a0e02' date '15 February 1910' time '10:45:50 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.32' message 'Properly fix http://code.google.com/p/seaside/issues/detail?id=544 I introduce a GROrderedMultiMap which specifically allows duplicate keys (GRSmallDictionary no longer does). This is used to implement WARequestFields, which is used throughtout for storing GET and POST fields. #at: will return the first matching field and #allAt: will return all matching values. Various renamings, fixes to callbacks, and to unit and functional tests. I also had to fix the Swazoo and Comanche server adaptors to correctly create WARequestFields instances for the POST fields and to correctly include the raw POST body in all cases (but it seems to be a ByteArray in Swazoo''s case and a ByteString or String for Comanche... seems not ideal)' id 'c6c1f5f9-a7e2-4904-83a0-9dba70498b4a' date '15 February 1910' time '9:31:49 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-lr.31' message '- add an url to the package' id '0c35af12-5a97-411f-8c81-de1608752fa7' date '10 February 1910' time '11:33:39 am' author 'lr' ancestors ((name 'Grease-Tests-Core-jf.30' message 'The copyUpTo* tests were a bit harsh for Interval. Interval gets dispensation from ANSI to return any sequenced collection from its "copy" methods so we might as well follow the same practice for these methods. Also add comments throughout the Collection test case.' id 'ddd90b0d-50e9-4ed5-bb34-11f9002052d1' date '9 February 1910' time '12:22:44 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jok.29' message 'A string literals is immutable; don''t try to change it' id '2dc239fe-59bb-5640-a92a-b126969ca1a3' date '9 February 1910' time '1:23:22 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jf.28' message 'http://code.google.com/p/seaside/issues/detail?id=503 Implement GRVersion as a (fairly) simple version number class.' id 'd97fcc1b-7389-4f03-8510-c326011c1ef3' date '9 February 1910' time '1:04:41 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.27' message 'merge' id 'dbaacd90-8945-4aae-98d4-45138b0d954b' date '6 February 1910' time '4:42:15 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.26' message 'add tests for #sorted and #sorted: and set up the Collection test suite to use a subclass for each Collection class. The latter should help ensure better test coverage of the various ANSI collection types. Note, there are a couple of failing tests on Pharo.' id '6c4eb454-5ff4-488f-867c-64fd8b2a2453' date '6 February 1910' time '4:41:02 am' author 'jf' ancestors () stepChildren ())(name 'Grease-Tests-Core-lr.26' message 'merged' id '13779a68-fb50-4739-930f-57068faa30d2' date '6 February 1910' time '11:16:32 am' author 'lr' ancestors ((name 'Grease-Tests-Core-lr.24' message '- pushed test coverage to 94%' id 'cdaee068-9ae1-409a-b94e-1cf309f0656c' date '6 February 1910' time '11:14:30 am' author 'lr' ancestors ((name 'Grease-Tests-Core-jf.23' message 'remove tests for singular forms of Duration helpers on Integer Discussions with platforms have formed agreement around supporting the plural forms, but not the singulars.' id '2dffff72-403c-4422-ae36-a27b7e6621bc' date '5 February 1910' time '11:11:59 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jok.22' message 'http://code.google.com/p/seaside/issues/detail?id=535 - remove test for #new:withAll: since Slime rewrote all senders' id 'bbb7f836-a0cd-cd4e-882e-a9d2b1d60685' date '26 January 1910' time '10:59:38 am' author 'jok' ancestors ((name 'Grease-Tests-Core-jf.21' message 'http://code.google.com/p/seaside/issues/detail?id=488 Revert part of Grease-Tests-Core-dkh.4' id 'db971bf6-e519-4a10-99a2-5c3f76a1ee93' date '26 January 1910' time '2:01:29 am' author 'jf' ancestors ((name 'Grease-Tests-Core-lr.20' message '- fixing some slime issues' id 'b26bcc1a-bea2-405e-bd47-f0bbafe102b8' date '25 January 1910' time '11:36:53 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-jok.19' message 'http://code.google.com/p/seaside/issues/detail?id=536 - add Slime rule for keysSortedSafely - transform keysSortedSafely -> keys asSortedCollection - remove Grease test for keysSortedSafely' id '3f7bb47e-a8b6-bc47-ba3a-a50e63bd650b' date '25 January 1910' time '2:40:58 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-lr.18' message '- refactor character intervals $a to: $c to ''abc''' id 'd2f77b1f-a5a4-4505-bba2-6a8a234ebe77' date '23 January 1910' time '1:39:33 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-jok.17' message '#atRandom and #atRandom: are not portable (and not used by Seaside) -- remove their tests. ' id 'ecc16f0f-c81c-e043-807b-3f6dcfb1bea0' date '22 January 1910' time '12:21:53 pm' author 'jok' ancestors ((name 'Grease-Tests-Core-jok.16' message 'remove #testCount since senders of #count: have been changed to use #inject:into:' id 'b26328f6-8376-2e46-8ffe-4ea480d1c0f8' date '8 January 1910' time '9:22:28 am' author 'jok' ancestors ((name 'Grease-Tests-Core-jf.15' message 'oops, forgot to remove this test' id '133a52a8-43b2-4fcf-9774-4610c0c84991' date '31 December 2009' time '11:26:16 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.14' message 'Write some more Slime rules and tests and apply them.' id '45b4b787-3546-4b20-8748-42b851064628' date '29 December 2009' time '8:54:04 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.13' message 'http://code.google.com/p/seaside/issues/detail?id=519 #findTokens: is not portable and has the same behaviour as ANSI''s #subStrings:, except that the parameter *must* be a collection of Characters (#findTokens: allows a single Character as wel)' id '09102181-eb65-4bcd-bd25-d07b2448468b' date '29 December 2009' time '2:29:41 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.12' message 'No need to test MessageSend for all platforms. VA doesn''t even have it and we have the GRDelayedSend classes that we use internally. Move the tests of the valuable protocol on MessageSend into the Pharo platform tests.' id 'a3775eb0-b1f1-45ca-81aa-613cf3e92c25' date '18 December 2009' time '12:31:37 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.11' message 'don''t need #printStringBase as you can use GRNumberPrinter' id 'ae4e8377-36a1-4d93-ab6a-6d3080a27451' date '18 December 2009' time '11:48:54 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.10' message 'Stop using #daysInMonthNumber:forYear:, which is different than the method that VA already has. Some discussion on this needs to be had by all platforms but for now it can be worked around using #daysInMonth:year: and #nameOfMonth:' id '3cb235a1-d352-4a08-91c8-917de33653e2' date '18 December 2009' time '10:32:44 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.9' message 'Stop using #newDay:monthNumber:year:, which is only in VW and can be worked around using #newDay:month:year: and #nameOfMonth:' id '0a84d54c-2d6d-4c0a-b509-121230344db8' date '18 December 2009' time '10:17:51 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.8' message 'this is only sent by platform code anyway - let''s revisit string comparison some time with an eye to having a *nice* API...' id '872c0fd5-c22f-4525-a022-57a00f6c6fb1' date '17 December 2009' time '11:05:17 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.7' message 'rename test method for accuracy' id 'c1a18a9a-a265-402c-a2b0-68f80542a2f1' date '7 December 2009' time '11:30:55 pm' author 'jf' ancestors ((name 'Grease-Tests-Core-lr.6' message '- fixed some lint rules' id 'ca6a3c3c-a010-4f08-a44e-36ba0d4c8047' date '3 December 2009' time '1:12:45 pm' author 'lr' ancestors ((name 'Grease-Tests-Core-pmm.5' message '- support ''UTF-8'' has a codec name as well' id '5a82da52-86dd-40a4-9445-16b680e3dff4' date '15 November 2009' time '11:07:53 am' author 'pmm' ancestors ((name 'Grease-Tests-Core-dkh.4' message '- fix bug http://code.google.com/p/seaside/issues/detail?id=488' id '916eae54-cdea-4628-8985-18ecd61ff50e' date '13 November 2009' time '3:47:58 pm' author 'dkh' ancestors ((name 'Grease-Tests-Core-dkh.3' message '- in GemStone the block arg for #on:do: must always have an argument ... fixed that in the new tests' id 'ed95f1d6-fc4d-4e27-b7c6-fc59c10388b7' date '13 November 2009' time '11:21:04 am' author 'dkh' ancestors ((name 'Grease-Tests-Core-jf.2' message 'VA Smalltalk had differing behaviour when an exception handler block ran to completion (depending on the exception type, sometimes it returned and sometimes it resumed). However, I have since discovered that the correct behaviour (returning in all cases) is defined in ANSI 5.5.15.2 and John has fixed the bug in the latest VASt 8.0.1. So I''m replacing the Slime rules with Grease tests.' id '81584859-a50b-474c-a75d-6e8a86632acf' date '3 November 2009' time '1:00:22 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.1' message 'Rename Seaside-Platform to Grease in order to help make clear that it is not Seaside-specific and can be used by other projects as a compatibility layer. This was spawned by discussions when I started porting Magritte to VAST using the Platform layer.' id '17fcc910-612b-4ee7-9d53-f93459751997' date '30 September 2009' time '10:47:28 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-jf.25' message 'add tests for #any on empty collections' id 'b541cf88-64d9-490a-9e07-770006ba9c80' date '6 February 1910' time '1:28:40 am' author 'jf' ancestors ((name 'Grease-Tests-Core-jf.24' message 'Remove usage of non-Grease methods #nameOfDay:, #anyOne, and several Squeak-specific Duration selectors. Add Grease tests for Duration protocols discussed with platforms. Also test for #any.' id 'd8df12f4-821a-42ef-8c62-21ff964856dc' date '6 February 1910' time '1:15:51 am' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.75' message '- 1 / 0 results in a load time error in Smalltalk/X, use a #perform: to get around it' id '5a4f24bf-854a-4149-9e74-c85827bf8aca' date '24 August 2011' time '12:53:53 pm' author 'pmm' ancestors ((id '4aaa728d-9213-4f25-a547-e4d96b8dd263')) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.78' message '- add base64 test' id 'b2c98f48-1985-4c77-a231-c092b9a9a7a9' date '27 August 2011' time '3:15:26 pm' author 'pmm' ancestors ((id '5a4f24bf-854a-4149-9e74-c85827bf8aca')) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-lr.79' message '- add test for GRCodecStream>>#print:' id 'fbd38ae4-6daa-4712-926f-2893774a0c96' date '25 September 2011' time '10:19:41 am' author 'lr' ancestors ((id 'b2c98f48-1985-4c77-a231-c092b9a9a7a9')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.80' message '- kick #isFraction test' id 'cbcc68f0-8f2e-49db-b36e-bfe6a80af781' date '6 March 2012' time '7:35:36 pm' author 'pmm' ancestors ((id 'fbd38ae4-6daa-4712-926f-2893774a0c96')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-DamienCassou.81' message '- Use #shouldnt:raise: only with specific errors, or evaluate the given expression directly' id '8a4e2f51-3488-4cdd-bb23-b09cad4bd366' date '17 October 2013' time '2:01:41.211867 pm' author 'DamienCassou' ancestors ((id 'cbcc68f0-8f2e-49db-b36e-bfe6a80af781')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Tests-Core-pmm.100' message '#820 Configurations should not hold on to classes' id '2ef5713e-79bb-4e2c-951e-7ad6511940ec' date '12 July 2015' time '10:24:17 am' author 'pmm' ancestors ((id 'de282121-6c1f-4f8f-8f29-de7977548fd4')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/.filetree b/repository/Grease-Tests-Squeak5-Core.package/.filetree new file mode 100644 index 00000000..8998102c --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/.filetree @@ -0,0 +1,4 @@ +{ + "noMethodMetaData" : true, + "separateMethodMetaAndSource" : false, + "useCypressPropertiesFile" : true } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/class/greaseTestsSqueak5Core.st b/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/class/greaseTestsSqueak5Core.st new file mode 100644 index 00000000..a7966bb7 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/class/greaseTestsSqueak5Core.st @@ -0,0 +1,9 @@ +*grease-tests-squeak5-core +greaseTestsSqueak5Core + ^ self new + name: 'Grease-Tests-Squeak5-Core'; + description: 'Unit tests for the package Grease-Squeak5-Core.'; + addDependency: 'Grease-Squeak5-Core'; + addDependency: 'Grease-Tests-Core'; + url: #seasideUrl; + yourself \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/methodProperties.json new file mode 100644 index 00000000..d751fc6a --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + "greaseTestsSqueak5Core" : "JB 2/27/2016 13:28" }, + "instance" : { + } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/properties.json new file mode 100644 index 00000000..dd2faaf0 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPackage.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "GRPackage" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/README.md b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/assert.next.startingAt.gives..st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/assert.next.startingAt.gives..st new file mode 100644 index 00000000..8ff0ff41 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/assert.next.startingAt.gives..st @@ -0,0 +1,7 @@ +private +assert: aString next: anInteger startingAt: startIndex gives: anEncodedString + | actual | + actual := String streamContents: [ :stream | + ((GRCodec forEncoding: 'utf-8') encoderFor: stream) + greaseNext: anInteger putAll: aString startingAt: startIndex ]. + self assert: actual = anEncodedString \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/assertEncodingIgnoresLanguageTat..st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/assertEncodingIgnoresLanguageTat..st new file mode 100644 index 00000000..622b446b --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/assertEncodingIgnoresLanguageTat..st @@ -0,0 +1,7 @@ +private +assertEncodingIgnoresLanguageTat: aStringWithLanguageTag + | codec withLanguageTag withoutLanguageTag | + codec := GRCodec forEncoding: 'utf-8'. + withLanguageTag := codec encode: aStringWithLanguageTag. + withoutLanguageTag := codec encode: (self stripLeadingCharFrom: aStringWithLanguageTag). + self assert: withLanguageTag = withoutLanguageTag \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/stripLeadingCharFrom..st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/stripLeadingCharFrom..st new file mode 100644 index 00000000..8f85d506 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/stripLeadingCharFrom..st @@ -0,0 +1,8 @@ +private +stripLeadingCharFrom: aString + "strips the leadingChar from every character in the given string" + ^ String streamContents: [ :stream | + aString do: [ :each | + stream nextPut: (Character + leadingChar: 0 + code: each greaseInteger) ] ] \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testAllCodesIncludesIso88591.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testAllCodesIncludesIso88591.st new file mode 100644 index 00000000..3922305f --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testAllCodesIncludesIso88591.st @@ -0,0 +1,4 @@ +tests +testAllCodesIncludesIso88591 + self assert: (GRCodec allCodecs anySatisfy: [ :each | + each name = 'iso-8859-1' ]) \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testGreaseNextPutAllStartingAt.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testGreaseNextPutAllStartingAt.st new file mode 100644 index 00000000..dba72236 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testGreaseNextPutAllStartingAt.st @@ -0,0 +1,13 @@ +tests +testGreaseNextPutAllStartingAt + | umlaut encodedUmlaut | + umlaut := String with: (Character codePoint: 228). + encodedUmlaut := String with: (Character codePoint: 195) with: (Character codePoint: 164). + self assert: 'ab' next: 1 startingAt: 1 gives: 'a'. + self assert: 'a', umlaut, 'b' next: 1 startingAt: 1 gives: 'a'. + self assert: 'ab', umlaut next: 1 startingAt: 1 gives: 'a'. + self assert: 'a', umlaut, 'b' next: 2 startingAt: 1gives: 'a', encodedUmlaut. + self assert: 'a', umlaut, 'b' next: 1 startingAt: 2 gives: encodedUmlaut. + self assert: 'a', umlaut, 'b' next: 2 startingAt: 2 gives: encodedUmlaut, 'b'. + self assert: 'a', umlaut, umlaut next: 2 startingAt: 2 gives: encodedUmlaut, encodedUmlaut. + self assert: 'ab', umlaut, 'b', umlaut next: 3 startingAt: 2 gives: 'b', encodedUmlaut, 'b' \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testLanguageTag.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testLanguageTag.st new file mode 100644 index 00000000..57a2a02c --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/instance/testLanguageTag.st @@ -0,0 +1,16 @@ +tests +testLanguageTag + "this makes sure the encoder doesn't fall on the nose with unicode" + "Make Japanese String from unicode. see http://www.unicode.org/charts/PDF/U3040.pdf" + | leading hiraA hiraO hiraAO | + leading := (Smalltalk classNamed: #JapaneseEnvironment) leadingChar. + hiraA := (Character + leadingChar: leading + code: 12354) greaseString. "HIRAGANA LETTER A" + hiraO := (Character + leadingChar: leading + code: 12362) greaseString. "HIRAGANA LETTER O" + hiraAO := hiraA , hiraO. + self assertEncodingIgnoresLanguageTat: hiraA. + self assertEncodingIgnoresLanguageTat: hiraO. + self assertEncodingIgnoresLanguageTat: hiraAO \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/methodProperties.json new file mode 100644 index 00000000..f6f5a240 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/methodProperties.json @@ -0,0 +1,10 @@ +{ + "class" : { + }, + "instance" : { + "assert:next:startingAt:gives:" : "pmm 4/21/2012 20:54", + "assertEncodingIgnoresLanguageTat:" : "pmm 12/26/2010 22:24", + "stripLeadingCharFrom:" : "pmm 12/26/2010 22:13", + "testAllCodesIncludesIso88591" : "pmm 8/16/2010 00:24", + "testGreaseNextPutAllStartingAt" : "pmm 5/21/2014 21:09", + "testLanguageTag" : "pmm 12/26/2010 22:25" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/properties.json new file mode 100644 index 00000000..752708a7 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoCodecTest.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Tests-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRPharoCodecTest", + "pools" : [ + ], + "super" : "TestCase", + "type" : "normal" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/README.md b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/expectedFailures.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/expectedFailures.st new file mode 100644 index 00000000..197de855 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/expectedFailures.st @@ -0,0 +1,3 @@ +testing +expectedFailures + ^ #(testFromStringThreeDigit) \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testAllColors.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testAllColors.st new file mode 100644 index 00000000..b483e1a5 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testAllColors.st @@ -0,0 +1,12 @@ +testing +testAllColors + | toTest | + toTest := #( + 16r000000 16r000001 16r000101 16r010101 16r010100 16r010000 16r001001 16r101001 + 16r001122 16r334455 16r667788 16r99AABB 16rCCDDEE 16rFF0011 + 16r123456 16r789ABC 16rDEFEDC + 16rFEFEEF 16rFEFEFF 16rFEFEFE 16rFFFEFE 16rFFFFFE 16rFFFFFF). + toTest do: [ :int | + | hex | + hex := int printPaddedWith: $0 to: 6 base: 16. + self assert: (Color fromString: hex) asHTMLColor asLowercase = ('#', hex) asLowercase ] \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testColorAsHtmlColor.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testColorAsHtmlColor.st new file mode 100644 index 00000000..fcb5dcbb --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testColorAsHtmlColor.st @@ -0,0 +1,19 @@ +testing +testColorAsHtmlColor + "test for: + Color >> #hex + | aStream | + aStream := (String new: 6) writeStream. + aStream nextPutAll: (((self red * 255) asInteger printStringBase: 16) + padded: #left to: 2 with: $0). + aStream nextPutAll: (((self green * 255) asInteger printStringBase: 16) + padded: #left to: 2 with: $0). + aStream nextPutAll: (((self blue * 255) asInteger printStringBase: 16) + padded: #left to: 2 with: $0). + ^ aStream contents + + Color >> #asHTMLColor + ^ '#', self hex" + self assert: (#('#ffffff' '#FFFFFF' ) includes: Color white asHTMLColor). + self assert: (Color black asHTMLColor = '#000000'). + self assert: (#('#ff0000' '#FF0000' ) includes: Color red asHTMLColor) \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromSixDigit.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromSixDigit.st new file mode 100644 index 00000000..639a183a --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromSixDigit.st @@ -0,0 +1,6 @@ +testing +testFromSixDigit + self assert: (Color fromString: 'ff0000') = Color red. + self assert: (Color fromString: 'FF0000') = Color red. + self assert: (Color fromString: '#ff0000') = Color red. + self assert: (Color fromString: '#FF0000') = Color red diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringName.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringName.st new file mode 100644 index 00000000..821c945e --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringName.st @@ -0,0 +1,6 @@ +testing +testFromStringName + self assert: (Color fromString: 'red') = Color red. + self assert: (Color fromString: 'RED') = Color red. + self assert: (Color fromString: '#red') = Color red. + self assert: (Color fromString: '#RED') = Color red diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringSixDigit.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringSixDigit.st new file mode 100644 index 00000000..e9b720fc --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringSixDigit.st @@ -0,0 +1,6 @@ +testing +testFromStringSixDigit + self assert: (Color fromString: 'ff0000') = Color red. + self assert: (Color fromString: 'FF0000') = Color red. + self assert: (Color fromString: '#ff0000') = Color red. + self assert: (Color fromString: '#FF0000') = Color red diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringThreeDigit.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringThreeDigit.st new file mode 100644 index 00000000..3ae0aeac --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/instance/testFromStringThreeDigit.st @@ -0,0 +1,6 @@ +testing +testFromStringThreeDigit + self assert: (Color fromString: 'f00') = Color red. + self assert: (Color fromString: 'F00') = Color red. + self assert: (Color fromString: '#f00') = Color red. + self assert: (Color fromString: '#F00') = Color red \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/methodProperties.json new file mode 100644 index 00000000..04f10d1b --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/methodProperties.json @@ -0,0 +1,11 @@ +{ + "class" : { + }, + "instance" : { + "expectedFailures" : "lr 7/25/2011 19:51", + "testAllColors" : "lr 7/25/2011 18:34", + "testColorAsHtmlColor" : "MAD 8/29/2008 15:36", + "testFromSixDigit" : "pmm 11/20/2008 22:00", + "testFromStringName" : "pmm 9/1/2012 15:32", + "testFromStringSixDigit" : "pmm 11/20/2008 22:01", + "testFromStringThreeDigit" : "pmm 9/1/2012 15:32" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/properties.json new file mode 100644 index 00000000..7500bb50 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoColorTest.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Tests-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRPharoColorTest", + "pools" : [ + ], + "super" : "TestCase", + "type" : "normal" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/README.md b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/instance/testNoAmbiguities.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/instance/testNoAmbiguities.st new file mode 100644 index 00000000..28ee8c57 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/instance/testNoAmbiguities.st @@ -0,0 +1,6 @@ +tests +testNoAmbiguities + #('utf-8' 'UTF-8' 'utf8') do: [ :each | + self deny: (GRPharoGenericCodec supportsEncoding: each) ]. + GRPharoLatin1Codec supportedEncodingNames do: [ :each | + self deny: (GRPharoGenericCodec supportsEncoding: each) ] \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/methodProperties.json new file mode 100644 index 00000000..a58c2b7c --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "testNoAmbiguities" : "pmm 8/16/2010 00:47" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/properties.json new file mode 100644 index 00000000..f80e34e4 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoGenericCodecTest.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Tests-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRPharoGenericCodecTest", + "pools" : [ + ], + "super" : "TestCase", + "type" : "normal" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/README.md b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testCompileIntoClassified.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testCompileIntoClassified.st new file mode 100644 index 00000000..9af1697f --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testCompileIntoClassified.st @@ -0,0 +1,15 @@ +tests +testCompileIntoClassified + | source protocol selectors selector | + source := 'aMethod + ^ ''a result'''. + protocol := 'a-protocol'. + selector := #aMethod. + GRPlatform current + compile: source + into: self class + classified: protocol. + + [ self assert: (self class selectors includes: selector). + selectors := self class organization listAtCategoryNamed: protocol. + self assert: selectors = (Array with: selector) ] ensure: [ self class removeSelectorSilently: selector ] \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testFullName.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testFullName.st new file mode 100644 index 00000000..18bfc31b --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testFullName.st @@ -0,0 +1,3 @@ +tests +testFullName + self assert: Object fullName = 'Object' \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testGreaseIntegerOnCharacter.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testGreaseIntegerOnCharacter.st new file mode 100644 index 00000000..b62275e7 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testGreaseIntegerOnCharacter.st @@ -0,0 +1,14 @@ +tests +testGreaseIntegerOnCharacter + | character | + character := Character codePoint: 19982. + self assert: character greaseInteger = 19982. + character := Unicode value: 19982. + self assert: character greaseInteger = 19982. + LanguageEnvironment allSubclassesDo: [ :each | + (each class selectors includes: #leadingChar) ifTrue: [ + "fuck me gently with a chainsaw" + character := Character + leadingChar: each leadingChar + code: 19982. + self assert: character greaseInteger = 19982 ] ] \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testMessageSendValueWithPossibleArguments.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testMessageSendValueWithPossibleArguments.st new file mode 100644 index 00000000..d2d7a808 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testMessageSendValueWithPossibleArguments.st @@ -0,0 +1,35 @@ +tests +testMessageSendValueWithPossibleArguments + | send | + send := MessageSend receiver: 1 selector: #+. + self assert: (send valueWithPossibleArguments: (Array with: 2)) = 3. + self assert: (send valueWithArguments: (Array with: 2)) = 3. + self assert: (send value: 2) = 3. + + send := MessageSend receiver: false selector: #not. + self assert: (send valueWithPossibleArguments: (Array with: 3)). + + send := MessageSend receiver: 1 selector: #+ arguments: #(2). + self assert: (send valueWithPossibleArguments: (Array with: 4)) = 3. + self assert: send value = 3. + + send := MessageSend receiver: Array selector: #with:with: arguments: #(1). + self assert: (send valueWithPossibleArguments: (Array with: 2)) size = 2. + + send := MessageSend receiver: Array selector: #with:with:. + self assert: (send value: 1 value: 2) size = 2. + + send := MessageSend + receiver: 1 + selector: #+. + self assert: send argumentCount = 1. + self assert: send arguments size = 0. + self assert: send fixCallbackTemps == send. + + send := MessageSend + receiver: 1 + selector: #+ + argument: 2. + self assert: send argumentCount isZero. + self assert: send arguments size = 1. + self assert: send fixCallbackTemps == send \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testWriteToFileInFolderBinary.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testWriteToFileInFolderBinary.st new file mode 100644 index 00000000..d9e95032 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testWriteToFileInFolderBinary.st @@ -0,0 +1,3 @@ +tests +testWriteToFileInFolderBinary + self writeToFile: #(80 104 39 110 103 108 117 105 32 109 103 108 119 39 110 97 102 104 32 67 116 104 117 108 104 117 32 82 39 108 121 101 104 32 119 103 97 104 39 110 97 103 108 32 102 104 116 97 103 110) asByteArray \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testWriteToFileInFolderText.st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testWriteToFileInFolderText.st new file mode 100644 index 00000000..0d513815 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/testWriteToFileInFolderText.st @@ -0,0 +1,3 @@ +tests +testWriteToFileInFolderText + self writeToFile: 'Ph''nglui mglw''nafh Cthulhu R''lyeh wgah''nagl fhtagn' \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/writeToFile..st b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/writeToFile..st new file mode 100644 index 00000000..f773658a --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/instance/writeToFile..st @@ -0,0 +1,11 @@ +private +writeToFile: aStringOrByteArray + | fileName directory | + fileName := 'GRPharoPlatformTest'. + directory := FileDirectory default. + [ GRPlatform current + write: aStringOrByteArray + toFile: fileName + inFolder: directory pathName + ] ensure: [ + directory deleteFileNamed: fileName ] \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/methodProperties.json new file mode 100644 index 00000000..77ca0b72 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/methodProperties.json @@ -0,0 +1,11 @@ +{ + "class" : { + }, + "instance" : { + "testCompileIntoClassified" : "jf 9/30/2009 00:19", + "testFullName" : "jf 10/6/2008 14:37", + "testGreaseIntegerOnCharacter" : "pmm 12/26/2010 21:44", + "testMessageSendValueWithPossibleArguments" : "jf 12/18/2009 12:29", + "testWriteToFileInFolderBinary" : "pmm 1/22/2012 16:09", + "testWriteToFileInFolderText" : "pmm 1/22/2012 15:54", + "writeToFile:" : "pmm 1/22/2012 15:57" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/properties.json new file mode 100644 index 00000000..3ceb357c --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPharoPlatformTest.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Tests-Squeak5-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRPharoPlatformTest", + "pools" : [ + ], + "super" : "TestCase", + "type" : "normal" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/instance/testScaledDecimalGreaseString.st b/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/instance/testScaledDecimalGreaseString.st new file mode 100644 index 00000000..569e9ce3 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/instance/testScaledDecimalGreaseString.st @@ -0,0 +1,5 @@ +*grease-tests-squeak5-core +testScaledDecimalGreaseString + self assert: 123.4s1 greaseString = '123.4'. + self assert: 123.4s2 greaseString = '123.40'. + self assert: 123s0 greaseString = '123' \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/methodProperties.json new file mode 100644 index 00000000..09cf1de3 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "testScaledDecimalGreaseString" : "pmm 9/15/2013 12:00" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/properties.json new file mode 100644 index 00000000..ab3f269a --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPlatformTest.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "GRPlatformTest" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/instance/testScaledDecimalPrinter.st b/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/instance/testScaledDecimalPrinter.st new file mode 100644 index 00000000..aeee46dd --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/instance/testScaledDecimalPrinter.st @@ -0,0 +1,19 @@ +*grease-tests-squeak5-core +testScaledDecimalPrinter + | converter | + converter := GRNumberPrinter new precision: 2. + self assert: (converter print: 1.009s3) = '1.01'. + self assert: (converter print: 1.01s2) = '1.01'. + self assert: (converter print: 1.019s3) = '1.02'. + self assert: (converter print: 1.25s2) = '1.25'. + self assert: (converter print: 1.254s3) = '1.25'. + self assert: (converter print: 1.256s3) = '1.26'. + self assert: (converter print: 1.009s3) = '1.01'. + self assert: (converter print: 0.9s1) = '0.90'. + self assert: (converter print: 0.99s2) = '0.99'. + self assert: (converter print: 0.999s3) = '1.00'. + self assert: (converter print: 0.9999s4) = '1.00'. + self assert: (converter print: -0.9s1) = '0.90'. + self assert: (converter print: -0.99s2) = '0.99'. + self assert: (converter print: -0.999s3) = '1.00'. + self assert: (converter print: -0.9999s4) = '1.00' \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/methodProperties.json new file mode 100644 index 00000000..4738d7db --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "testScaledDecimalPrinter" : "pmm 9/15/2013 11:35" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/properties.json new file mode 100644 index 00000000..125a8c96 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRPrinterTest.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "GRPrinterTest" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/instance/expectedFailures.st b/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/instance/expectedFailures.st new file mode 100644 index 00000000..6be346ad --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/instance/expectedFailures.st @@ -0,0 +1,3 @@ +*grease-tests-squeak5-core +expectedFailures + ^ #(testCodecUtf8ShortestForm) \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/methodProperties.json b/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/methodProperties.json new file mode 100644 index 00000000..e948a56d --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "expectedFailures" : "lr 7/25/2011 19:52" } } diff --git a/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/properties.json b/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/properties.json new file mode 100644 index 00000000..8b1a3361 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/GRUtf8CodecTest.extension/properties.json @@ -0,0 +1,2 @@ +{ + "name" : "GRUtf8CodecTest" } diff --git a/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/categories.st b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/categories.st new file mode 100644 index 00000000..ea0af9be --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/categories.st @@ -0,0 +1 @@ +SystemOrganization addCategory: #'Grease-Tests-Squeak5-Core'! diff --git a/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/initializers.st b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/initializers.st new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/package b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/package new file mode 100644 index 00000000..335d47b8 --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/package @@ -0,0 +1 @@ +(name 'Grease-Tests-Squeak5-Core') \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/version b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/version new file mode 100644 index 00000000..2394de1b --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/monticello.meta/version @@ -0,0 +1 @@ +(name 'Grease-Tests-Squeak5-Core-JohanBrichau.1' message 'Fork from Grease-Tests-Pharo-Core' id '94394a2e-404c-42c5-a4fb-9ed8241da254' date '27 February 2016' time '1:33:07.959 pm' author 'JB' ancestors () stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Tests-Squeak5-Core.package/properties.json b/repository/Grease-Tests-Squeak5-Core.package/properties.json new file mode 100644 index 00000000..f037444a --- /dev/null +++ b/repository/Grease-Tests-Squeak5-Core.package/properties.json @@ -0,0 +1,2 @@ +{ + }