From 3ca918d09e0d008022a7bc8bb4b821b65397f026 Mon Sep 17 00:00:00 2001 From: Philippe Marschall Date: Fri, 26 Aug 2016 16:02:45 +0200 Subject: [PATCH] Synch 2016-08-26 --- .../GROrderedMultiMap.class/instance/add..st | 2 +- .../instance/addAll..st | 1 + .../instance/allAt..st | 5 ++- .../instance/at.add..st | 2 +- .../instance/keysAndAllValuesDo..st | 4 +-- .../instance/privateAllAt.startingAt..st | 10 +++--- .../instance/removeKey.ifAbsent..st | 2 +- .../methodProperties.json | 10 +++--- .../GROrderedMultiMap2.class/README.md | 1 + .../GROrderedMultiMap2.class/instance/add..st | 4 +++ .../instance/addAll..st | 5 +++ .../instance/allAt..st | 3 ++ .../instance/allAt.ifAbsent..st | 7 ++++ .../instance/at.add..st | 6 ++++ .../instance/keysAndAllValuesDo..st | 12 +++++++ .../instance/privateAllAt.startingAt..st | 6 ++++ .../instance/removeKey.ifAbsent..st | 13 +++++++ .../methodProperties.json | 12 +++++++ .../GROrderedMultiMap2.class/properties.json | 14 ++++++++ .../GRSmallDictionary.class/README.md | 2 +- .../GRSmallDictionary.class/instance/add..st | 2 +- .../instance/at.ifAbsent..st | 2 +- .../instance/at.ifAbsentPut..st | 2 +- .../instance/at.ifPresent..st | 2 +- .../instance/at.put..st | 2 +- .../GRSmallDictionary.class/instance/do..st | 3 +- .../instance/findIndexFor..st | 4 +-- .../GRSmallDictionary.class/instance/grow.st | 14 ++++---- .../instance/initialize..st | 3 +- .../GRSmallDictionary.class/instance/keys.st | 9 +---- .../instance/keysAndValuesDo..st | 5 +-- .../instance/keysDo..st | 3 +- .../instance/postCopy.st | 3 +- .../instance/privateAt.put..st | 8 ++--- .../instance/removeIndex..st | 12 ++++--- .../instance/removeKey..st | 2 +- .../instance/removeKey.ifAbsent..st | 2 +- .../instance/values.st | 9 +---- .../methodProperties.json | 32 ++++++++--------- .../GRSmallDictionary.class/properties.json | 5 +-- .../GRSmallDictionary2.class/README.md | 1 + .../GRSmallDictionary2.class/class/new..st | 3 ++ .../GRSmallDictionary2.class/class/new.st | 3 ++ .../class/withAll..st | 5 +++ .../GRSmallDictionary2.class/instance/add..st | 4 +++ .../instance/addAll..st | 4 +++ .../instance/associations.st | 8 +++++ .../instance/associationsDo..st | 3 ++ .../GRSmallDictionary2.class/instance/at..st | 5 +++ .../instance/at.ifAbsent..st | 9 +++++ .../instance/at.ifAbsentPut..st | 9 +++++ .../instance/at.ifPresent..st | 7 ++++ .../instance/at.put..st | 9 +++++ .../GRSmallDictionary2.class/instance/do..st | 4 +++ .../instance/errorKeyNotFound.st | 3 ++ .../instance/findIndexFor..st | 6 ++++ .../GRSmallDictionary2.class/instance/grow.st | 8 +++++ .../instance/includesKey..st | 5 +++ .../instance/initialize..st | 5 +++ .../instance/isCollection.st | 3 ++ .../instance/isEmpty.st | 3 ++ .../GRSmallDictionary2.class/instance/keys.st | 10 ++++++ .../instance/keysAndValuesDo..st | 6 ++++ .../instance/keysDo..st | 4 +++ .../instance/postCopy.st | 4 +++ .../instance/printOn..st | 23 +++++++++++++ .../instance/privateAt.put..st | 7 ++++ .../instance/removeIndex..st | 10 ++++++ .../instance/removeKey..st | 5 +++ .../instance/removeKey.ifAbsent..st | 8 +++++ .../GRSmallDictionary2.class/instance/size.st | 3 ++ .../instance/values.st | 10 ++++++ .../methodProperties.json | 34 +++++++++++++++++++ .../GRSmallDictionary2.class/properties.json | 15 ++++++++ .../instance/isCollection.st | 3 ++ .../methodProperties.json | 1 + .../monticello.meta/version | 4 +-- .../instance/encodeOn..st | 5 +++ .../methodProperties.json | 1 + .../monticello.meta/version | 2 +- .../GROrderedMultiMap2Test.class/README.md | 0 .../instance/collectionClass.st | 3 ++ .../methodProperties.json | 5 +++ .../properties.json | 14 ++++++++ .../GRSmallDictionary2Test.class/README.md | 0 .../instance/collectionClass.st | 3 ++ .../methodProperties.json | 5 +++ .../properties.json | 14 ++++++++ .../monticello.meta/version | 2 +- 89 files changed, 463 insertions(+), 90 deletions(-) create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/README.md create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/add..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/addAll..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt.ifAbsent..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/at.add..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/keysAndAllValuesDo..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/privateAllAt.startingAt..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/instance/removeKey.ifAbsent..st create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/methodProperties.json create mode 100644 repository/Grease-Core.package/GROrderedMultiMap2.class/properties.json create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/README.md create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/class/new..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/class/new.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/class/withAll..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/add..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/addAll..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/associations.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/associationsDo..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/at..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsent..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsentPut..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifPresent..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.put..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/do..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/errorKeyNotFound.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/findIndexFor..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/grow.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/includesKey..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/initialize..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/isCollection.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/isEmpty.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/keys.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysAndValuesDo..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysDo..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/postCopy.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/printOn..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/privateAt.put..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeIndex..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey.ifAbsent..st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/size.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/instance/values.st create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/methodProperties.json create mode 100644 repository/Grease-Core.package/GRSmallDictionary2.class/properties.json create mode 100644 repository/Grease-Core.package/GRSmallOrderedSet.class/instance/isCollection.st create mode 100644 repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/instance/encodeOn..st create mode 100644 repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/README.md create mode 100644 repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/instance/collectionClass.st create mode 100644 repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/methodProperties.json create mode 100644 repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/properties.json create mode 100644 repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/README.md create mode 100644 repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/instance/collectionClass.st create mode 100644 repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/methodProperties.json create mode 100644 repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/properties.json diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/add..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/add..st index 1960e4e7..475c5952 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/add..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/add..st @@ -1,4 +1,4 @@ -adding +accessing add: anAssociation self privateAt: anAssociation key put: anAssociation value. ^ anAssociation \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/addAll..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/addAll..st index 1e47cd76..c865b67f 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/addAll..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/addAll..st @@ -1,4 +1,5 @@ adding +"protocol: adding" addAll: aDictionary aDictionary keysAndValuesDo: [ :key :value | self privateAt: key put: value ]. diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/allAt..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/allAt..st index 3a9b82fc..f0d803b4 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/allAt..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/allAt..st @@ -1,3 +1,6 @@ accessing allAt: aKey - ^ self privateAllAt: aKey startingAt: 1 \ No newline at end of file + ^ Array streamContents: [ :stream | + 1 to: size do: [ :index | + (keys at: index) = aKey + ifTrue: [ stream nextPut: (values at: index) ] ] ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/at.add..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/at.add..st index 2e6255d6..38f1ff12 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/at.add..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/at.add..st @@ -1,4 +1,4 @@ -adding +accessing at: aKey add: aValue "Add an association between aKey and aValue. Do not replace existing values with the same key." diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/keysAndAllValuesDo..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/keysAndAllValuesDo..st index 7bc75341..bba36c9d 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/keysAndAllValuesDo..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/keysAndAllValuesDo..st @@ -2,9 +2,9 @@ enumerating keysAndAllValuesDo: aTwoArgumentBlock | seenKeys | seenKeys := GRSmallOrderedSet new. - 1 to: size * 2 - 1 by: 2 do: [ :index | + 1 to: size do: [ :index | | key | - key := table at: index. + key := keys at: index. (seenKeys includes: key) ifFalse: [ aTwoArgumentBlock value: key diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/privateAllAt.startingAt..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/privateAllAt.startingAt..st index fa5b4251..86228ff6 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/privateAllAt.startingAt..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/privateAllAt.startingAt..st @@ -1,6 +1,6 @@ -private -privateAllAt: aKey startingAt: index +private +privateAllAt: aKey startingAt: aStartInteger ^ Array new: 2 streamContents: [ :stream | - index to: size * 2 - 1 by: 2 do: [ :i | - (table at: i) = aKey - ifTrue: [ stream nextPut: (table at: i + 1) ] ] ] \ No newline at end of file + aStartInteger to: size do: [ :index | + (keys at: index) = aKey + ifTrue: [ stream nextPut: (values at: index) ] ] ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/removeKey.ifAbsent..st b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/removeKey.ifAbsent..st index 421590f8..4768961a 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/instance/removeKey.ifAbsent..st +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/instance/removeKey.ifAbsent..st @@ -1,4 +1,4 @@ -removing +accessing removeKey: aKey ifAbsent: aBlock "Remove aKey from the receiver, evaluate aBlock if the element is missing." diff --git a/repository/Grease-Core.package/GROrderedMultiMap.class/methodProperties.json b/repository/Grease-Core.package/GROrderedMultiMap.class/methodProperties.json index 466947a4..0d6d9890 100644 --- a/repository/Grease-Core.package/GROrderedMultiMap.class/methodProperties.json +++ b/repository/Grease-Core.package/GROrderedMultiMap.class/methodProperties.json @@ -3,10 +3,10 @@ }, "instance" : { "add:" : "lr 7/25/2011 19:52", - "addAll:" : "pmm 8/25/2016 12:32", - "allAt:" : "pmm 8/25/2016 15:09", + "addAll:" : "pmm 8/26/2016 15:57", + "allAt:" : "jf 2/15/2010 15:39", "allAt:ifAbsent:" : "jf 2/15/2010 15:39", "at:add:" : "jf 2/15/2010 13:24", - "keysAndAllValuesDo:" : "pmm 8/25/2016 15:12", - "privateAllAt:startingAt:" : "pmm 8/25/2016 15:08", - "removeKey:ifAbsent:" : "pmm 8/22/2016 12:10" } } + "keysAndAllValuesDo:" : "pmm 8/26/2016 15:52", + "privateAllAt:startingAt:" : "pmm 8/26/2016 15:52", + "removeKey:ifAbsent:" : "pmm 8/26/2016 15:56" } } diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/README.md b/repository/Grease-Core.package/GROrderedMultiMap2.class/README.md new file mode 100644 index 00000000..ced4b383 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/README.md @@ -0,0 +1 @@ +I am an implementation of an ordered multi-map. I allow multiple values to be associated with the same key and maintain the order of addition. #at: and its derivatives all operate on the first matching key, while #allAt: returns the complete list of values for a key in the order they were added. \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/add..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/add..st new file mode 100644 index 00000000..1960e4e7 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/add..st @@ -0,0 +1,4 @@ +adding +add: anAssociation + self privateAt: anAssociation key put: anAssociation value. + ^ anAssociation \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/addAll..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/addAll..st new file mode 100644 index 00000000..1e47cd76 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/addAll..st @@ -0,0 +1,5 @@ +adding +addAll: aDictionary + aDictionary keysAndValuesDo: [ :key :value | + self privateAt: key put: value ]. + ^ aDictionary \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt..st new file mode 100644 index 00000000..3a9b82fc --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt..st @@ -0,0 +1,3 @@ +accessing +allAt: aKey + ^ self privateAllAt: aKey startingAt: 1 \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt.ifAbsent..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt.ifAbsent..st new file mode 100644 index 00000000..8fa2ea0e --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/allAt.ifAbsent..st @@ -0,0 +1,7 @@ +accessing +allAt: aKey ifAbsent: absentBlock + | results | + results := self allAt: aKey. + ^ results isEmpty + ifTrue: [ absentBlock value ] + ifFalse: [ results ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/at.add..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/at.add..st new file mode 100644 index 00000000..2e6255d6 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/at.add..st @@ -0,0 +1,6 @@ +adding +at: aKey add: aValue + "Add an association between aKey and aValue. Do not replace existing + values with the same key." + + ^ self privateAt: aKey put: aValue \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/keysAndAllValuesDo..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/keysAndAllValuesDo..st new file mode 100644 index 00000000..7bc75341 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/keysAndAllValuesDo..st @@ -0,0 +1,12 @@ +enumerating +keysAndAllValuesDo: aTwoArgumentBlock + | seenKeys | + seenKeys := GRSmallOrderedSet new. + 1 to: size * 2 - 1 by: 2 do: [ :index | + | key | + key := table at: index. + (seenKeys includes: key) ifFalse: [ + aTwoArgumentBlock + value: key + value: (self privateAllAt: key startingAt: index). + seenKeys add: key ] ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/privateAllAt.startingAt..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/privateAllAt.startingAt..st new file mode 100644 index 00000000..fa5b4251 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/privateAllAt.startingAt..st @@ -0,0 +1,6 @@ +private +privateAllAt: aKey startingAt: index + ^ Array new: 2 streamContents: [ :stream | + index to: size * 2 - 1 by: 2 do: [ :i | + (table at: i) = aKey + ifTrue: [ stream nextPut: (table at: i + 1) ] ] ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/removeKey.ifAbsent..st b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/removeKey.ifAbsent..st new file mode 100644 index 00000000..421590f8 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/instance/removeKey.ifAbsent..st @@ -0,0 +1,13 @@ +removing +removeKey: aKey ifAbsent: aBlock + "Remove aKey from the receiver, evaluate aBlock if the element is missing." + + "This is inefficient and could be optimized." + | removed | + removed := Array new: 2 streamContents: [ :stream | + | index | + [ (index := self findIndexFor: aKey) = 0 ] whileFalse: [ + stream nextPut: (self removeIndex: index) ] ]. + ^ removed isEmpty + ifTrue: [ aBlock value ] + ifFalse: [ removed ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/methodProperties.json b/repository/Grease-Core.package/GROrderedMultiMap2.class/methodProperties.json new file mode 100644 index 00000000..466947a4 --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/methodProperties.json @@ -0,0 +1,12 @@ +{ + "class" : { + }, + "instance" : { + "add:" : "lr 7/25/2011 19:52", + "addAll:" : "pmm 8/25/2016 12:32", + "allAt:" : "pmm 8/25/2016 15:09", + "allAt:ifAbsent:" : "jf 2/15/2010 15:39", + "at:add:" : "jf 2/15/2010 13:24", + "keysAndAllValuesDo:" : "pmm 8/25/2016 15:12", + "privateAllAt:startingAt:" : "pmm 8/25/2016 15:08", + "removeKey:ifAbsent:" : "pmm 8/22/2016 12:10" } } diff --git a/repository/Grease-Core.package/GROrderedMultiMap2.class/properties.json b/repository/Grease-Core.package/GROrderedMultiMap2.class/properties.json new file mode 100644 index 00000000..19872e9e --- /dev/null +++ b/repository/Grease-Core.package/GROrderedMultiMap2.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Core-Collections", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "jf 2/15/2010 16:04", + "instvars" : [ + ], + "name" : "GROrderedMultiMap2", + "pools" : [ + ], + "super" : "GRSmallDictionary2", + "type" : "normal" } diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/README.md b/repository/Grease-Core.package/GRSmallDictionary.class/README.md index 6eea01b2..2665b2d5 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/README.md +++ b/repository/Grease-Core.package/GRSmallDictionary.class/README.md @@ -1 +1 @@ -I am an implementation of a dictionary. Compared to other dictionaries I am very efficient for small sizes, speed- and space-wise. I also mantain the order in which elements are added when iterating. My implementation features some ideas from the RefactoringBrowser and others from Eclipse Collections. \ No newline at end of file +I am an implementation of a dictionary. Compared to other dictionaries I am very efficient for small sizes, speed- and space-wise. I also mantain the order in which elements are added when iterating. My implementation features some ideas from the RefactoringBrowser. \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/add..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/add..st index 40efe4a3..ba30aeaa 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/add..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/add..st @@ -1,4 +1,4 @@ -adding +accessing add: anAssociation self at: anAssociation key put: anAssociation value. ^ anAssociation \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsent..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsent..st index c0ba7e46..4072e999 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsent..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsent..st @@ -5,5 +5,5 @@ at: aKey ifAbsent: aBlock | index | index := self findIndexFor: aKey. ^ index = 0 - ifFalse: [ table at: index + 1 ] + ifFalse: [ values at: index ] ifTrue: [ aBlock value ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsentPut..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsentPut..st index 2ab70073..9cd278fc 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsentPut..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifAbsentPut..st @@ -5,5 +5,5 @@ at: aKey ifAbsentPut: aBlock | index | index := self findIndexFor: aKey. ^ index = 0 - ifFalse: [ table at: index + 1 ] + ifFalse: [ values at: index ] ifTrue: [ self privateAt: aKey put: aBlock value ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifPresent..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifPresent..st index cb051317..fee365a1 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifPresent..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.ifPresent..st @@ -4,4 +4,4 @@ at: aKey ifPresent: aBlock | index | index := self findIndexFor: aKey. - ^ index = 0 ifFalse: [ aBlock value: (table at: index + 1) ] \ No newline at end of file + ^ index = 0 ifFalse: [ aBlock value: (values at: index) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.put..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.put..st index 097781a5..4668c1ad 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.put..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/at.put..st @@ -5,5 +5,5 @@ at: aKey put: aValue | index | index := self findIndexFor: aKey. ^ index = 0 - ifFalse: [ table at: index + 1 put: aValue ] + ifFalse: [ values at: index put: aValue ] ifTrue: [ self privateAt: aKey put: aValue ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/do..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/do..st index 2bd3792c..3e48ad0e 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/do..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/do..st @@ -1,4 +1,3 @@ enumerating do: aBlock - 2 to: size * 2 by: 2 do: [ :index | - aBlock value: (table at: index) ] \ No newline at end of file + 1 to: size do: [ :index | aBlock value: (values at: index) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/findIndexFor..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/findIndexFor..st index 0de814e5..755866d2 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/findIndexFor..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/findIndexFor..st @@ -1,6 +1,6 @@ private findIndexFor: aKey - 1 to: size * 2 - 1 by: 2 do: [ :index | - (table at: index) = aKey + 1 to: size do: [ :index | + (keys at: index) = aKey ifTrue: [ ^ index ] ]. ^ 0 \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/grow.st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/grow.st index 9fac4654..81ad326d 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/grow.st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/grow.st @@ -1,8 +1,10 @@ private grow - | newTable | - "#replaceFrom:to:with:startingAt: would be better but not portable" - newTable := Array new: 4 * size. - 1 to: size * 2 do: [ :index | - newTable at: index put: (table at: index) ]. - table := newTable \ No newline at end of file + | newKeys newValues | + newKeys := Array new: 2 * size. + newValues := Array new: 2 * size. + 1 to: size do: [ :index | + newKeys at: index put: (keys at: index). + newValues at: index put: (values at: index) ]. + keys := newKeys. + values := newValues \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/initialize..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/initialize..st index 21ab9452..a1ce52f4 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/initialize..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/initialize..st @@ -2,4 +2,5 @@ initialization initialize: anInteger self initialize. size := 0. - table := Array new: anInteger * 2 \ No newline at end of file + keys := Array new: anInteger. + values := Array new: anInteger \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/keys.st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/keys.st index 95ff3bf7..b672b6c8 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/keys.st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/keys.st @@ -1,10 +1,3 @@ enumerating keys - | keys i | - size = 0 ifTrue: [ ^ #() ]. - i := 1. - keys := Array new: size. - 1 to: size * 2 - 1 by: 2 do: [ :index | - keys at: i put: (table at: index). - i := i + 1 ]. - ^ keys \ No newline at end of file + ^ keys copyFrom: 1 to: size \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysAndValuesDo..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysAndValuesDo..st index c7087a27..89ae762e 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysAndValuesDo..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysAndValuesDo..st @@ -1,6 +1,3 @@ enumerating keysAndValuesDo: aBlock - 1 to: size * 2 - 1 by: 2 do: [ :index | - aBlock - value: (table at: index) - value: (table at: index + 1) ] \ No newline at end of file + 1 to: size do: [ :index | aBlock value: (keys at: index) value: (values at: index) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysDo..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysDo..st index 6a712402..9ee85274 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysDo..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/keysDo..st @@ -1,4 +1,3 @@ enumerating keysDo: aBlock - 1 to: size * 2 - 1 by: 2 do: [ :index | - aBlock value: (table at: index) ] \ No newline at end of file + 1 to: size do: [ :each | aBlock value: (keys at: each) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/postCopy.st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/postCopy.st index 63a5f0d0..dd2bd295 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/postCopy.st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/postCopy.st @@ -1,4 +1,5 @@ copying postCopy super postCopy. - table := table copy \ No newline at end of file + keys := keys copy. + values := values copy \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/privateAt.put..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/privateAt.put..st index 12bce577..6c7f036f 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/privateAt.put..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/privateAt.put..st @@ -1,7 +1,5 @@ private privateAt: aKey put: aValue - size * 2 = table size ifTrue: [ self grow ]. - table at: (size * 2 + 1) put: aKey. - table at: (size * 2 + 2) put: aValue. - size := size + 1. - ^ aValue \ No newline at end of file + size = keys size ifTrue: [ self grow ]. + keys at: (size := size + 1) put: aKey. + ^ values at: size put: aValue \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeIndex..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeIndex..st index b22a6db0..872fceb8 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeIndex..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeIndex..st @@ -1,10 +1,12 @@ private removeIndex: index | value | - value := table at: index * 2. - index to: size * 2 - 2 do: [ :i | - table at: i put: (table at: i + 2) ]. - table at: size * 2 - 1 put: nil. - table at: size * 2 put: nil. + value := values at: index. + index to: size - 1 do: + [ :i | + keys at: i put: (keys at: i + 1). + values at: i put: (values at: i + 1) ]. + keys at: size put: nil. + values at: size put: nil. size := size - 1. ^ value \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey..st index 987c66f6..4ba43dbb 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey..st @@ -1,4 +1,4 @@ -removing +accessing removeKey: aKey "Remove aKey from the receiver, raise an exception if the element is missing." diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey.ifAbsent..st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey.ifAbsent..st index f1ab9aa6..06913a30 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey.ifAbsent..st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/removeKey.ifAbsent..st @@ -1,4 +1,4 @@ -removing +accessing removeKey: aKey ifAbsent: aBlock "Remove aKey from the receiver, evaluate aBlock if the element is missing." diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/instance/values.st b/repository/Grease-Core.package/GRSmallDictionary.class/instance/values.st index b9797de1..39f9464e 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/instance/values.st +++ b/repository/Grease-Core.package/GRSmallDictionary.class/instance/values.st @@ -1,10 +1,3 @@ enumerating values - | values i | - size = 0 ifTrue: [ ^ #() ]. - i := 1. - values := Array new: size. - 2 to: size * 2 by: 2 do: [ :index | - values at: i put: (table at: index). - i := i + 1 ]. - ^ values \ No newline at end of file + ^ values copyFrom: 1 to: size \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/methodProperties.json b/repository/Grease-Core.package/GRSmallDictionary.class/methodProperties.json index 8ce417f3..990bd67e 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/methodProperties.json +++ b/repository/Grease-Core.package/GRSmallDictionary.class/methodProperties.json @@ -5,30 +5,30 @@ "withAll:" : "jf 2/15/2010 22:50" }, "instance" : { "add:" : "lr 7/25/2011 19:51", - "addAll:" : "pmm 8/25/2016 12:31", + "addAll:" : "pmm 8/26/2016 15:59", "associations" : "lr 10/28/2007 14:42", "associationsDo:" : "lr 8/20/2007 13:45", "at:" : "lr 10/28/2007 14:42", - "at:ifAbsent:" : "pmm 8/22/2016 12:08", - "at:ifAbsentPut:" : "pmm 8/22/2016 12:09", - "at:ifPresent:" : "pmm 8/22/2016 12:09", - "at:put:" : "pmm 8/22/2016 12:09", - "do:" : "pmm 8/22/2016 12:02", + "at:ifAbsent:" : "lr 10/28/2007 14:42", + "at:ifAbsentPut:" : "lr 10/28/2007 14:42", + "at:ifPresent:" : "lr 10/28/2007 14:42", + "at:put:" : "lr 10/28/2007 14:42", + "do:" : "jf 12/29/2009 20:38", "errorKeyNotFound" : "lr 7/12/2007 13:18", - "findIndexFor:" : "pmm 8/22/2016 12:17", - "grow" : "pmm 8/25/2016 11:00", + "findIndexFor:" : "lr 10/28/2007 14:42", + "grow" : "lr 6/6/2007 19:12", "includesKey:" : "lr 10/28/2007 14:42", - "initialize:" : "pmm 8/22/2016 11:52", + "initialize:" : "jf 3/13/2009 17:48", "isCollection" : "jf 2/15/2010 15:47", "isEmpty" : "lr 7/9/2007 08:13", - "keys" : "pmm 8/22/2016 12:33", - "keysAndValuesDo:" : "pmm 8/25/2016 15:04", - "keysDo:" : "pmm 8/22/2016 12:18", - "postCopy" : "pmm 8/22/2016 11:56", + "keys" : "lr 7/9/2007 10:37", + "keysAndValuesDo:" : "lr 6/7/2007 08:04", + "keysDo:" : "lr 8/17/2007 11:52", + "postCopy" : "lr 7/9/2007 07:50", "printOn:" : "pmm 1/22/2012 16:32", - "privateAt:put:" : "pmm 8/22/2016 12:15", - "removeIndex:" : "pmm 8/22/2016 12:29", + "privateAt:put:" : "lr 6/6/2007 19:28", + "removeIndex:" : "jf 2/15/2010 14:33", "removeKey:" : "lr 7/12/2007 13:18", "removeKey:ifAbsent:" : "jf 2/15/2010 14:40", "size" : "lr 7/9/2007 10:38", - "values" : "pmm 8/22/2016 12:34" } } + "values" : "lr 7/9/2007 10:38" } } diff --git a/repository/Grease-Core.package/GRSmallDictionary.class/properties.json b/repository/Grease-Core.package/GRSmallDictionary.class/properties.json index 78b91215..5550a4ab 100644 --- a/repository/Grease-Core.package/GRSmallDictionary.class/properties.json +++ b/repository/Grease-Core.package/GRSmallDictionary.class/properties.json @@ -4,10 +4,11 @@ ], "classvars" : [ ], - "commentStamp" : "pmm 8/22/2016 11:49", + "commentStamp" : "jf 2/15/2010 15:51", "instvars" : [ "size", - "table" ], + "keys", + "values" ], "name" : "GRSmallDictionary", "pools" : [ ], diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/README.md b/repository/Grease-Core.package/GRSmallDictionary2.class/README.md new file mode 100644 index 00000000..6eea01b2 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/README.md @@ -0,0 +1 @@ +I am an implementation of a dictionary. Compared to other dictionaries I am very efficient for small sizes, speed- and space-wise. I also mantain the order in which elements are added when iterating. My implementation features some ideas from the RefactoringBrowser and others from Eclipse Collections. \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/class/new..st b/repository/Grease-Core.package/GRSmallDictionary2.class/class/new..st new file mode 100644 index 00000000..824ef34b --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/class/new..st @@ -0,0 +1,3 @@ +instance creation +new: anInteger + ^ self basicNew initialize: anInteger; yourself \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/class/new.st b/repository/Grease-Core.package/GRSmallDictionary2.class/class/new.st new file mode 100644 index 00000000..0b4df5ae --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/class/new.st @@ -0,0 +1,3 @@ +instance creation +new + ^ self new: 3 \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/class/withAll..st b/repository/Grease-Core.package/GRSmallDictionary2.class/class/withAll..st new file mode 100644 index 00000000..a9509fa0 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/class/withAll..st @@ -0,0 +1,5 @@ +instance creation +withAll: aDictionary + ^ (self new: aDictionary size) + addAll: aDictionary; + yourself \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/add..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/add..st new file mode 100644 index 00000000..40efe4a3 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/add..st @@ -0,0 +1,4 @@ +adding +add: anAssociation + self at: anAssociation key put: anAssociation value. + ^ anAssociation \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/addAll..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/addAll..st new file mode 100644 index 00000000..b1c0b1a7 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/addAll..st @@ -0,0 +1,4 @@ +adding +addAll: aDictionary + aDictionary keysAndValuesDo: [ :key :value | self at: key put: value ]. + ^ aDictionary \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/associations.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/associations.st new file mode 100644 index 00000000..040aeb70 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/associations.st @@ -0,0 +1,8 @@ +accessing +associations + "Answer a Collection containing the receiver's associations." + + | result | + result := WriteStream on: (Array new: self size). + self associationsDo: [ :assoc | result nextPut: assoc ]. + ^ result contents \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/associationsDo..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/associationsDo..st new file mode 100644 index 00000000..4d326cdb --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/associationsDo..st @@ -0,0 +1,3 @@ +enumerating +associationsDo: aBlock + self keysAndValuesDo: [ :key :value | aBlock value: key -> value ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at..st new file mode 100644 index 00000000..15d63bc0 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at..st @@ -0,0 +1,5 @@ +accessing +at: aKey + "Answer the value associated with aKey. Raise an exception, if no such key is defined." + + ^ self at: aKey ifAbsent: [ self errorKeyNotFound ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsent..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsent..st new file mode 100644 index 00000000..c0ba7e46 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsent..st @@ -0,0 +1,9 @@ +accessing +at: aKey ifAbsent: aBlock + "Answer the value associated with aKey. Evaluate aBlock, if no such key is defined." + + | index | + index := self findIndexFor: aKey. + ^ index = 0 + ifFalse: [ table at: index + 1 ] + ifTrue: [ aBlock value ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsentPut..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsentPut..st new file mode 100644 index 00000000..2ab70073 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifAbsentPut..st @@ -0,0 +1,9 @@ +accessing +at: aKey ifAbsentPut: aBlock + "Answer the value associated with aKey. Evaluate aBlock, if no such key is defined and store the return value." + + | index | + index := self findIndexFor: aKey. + ^ index = 0 + ifFalse: [ table at: index + 1 ] + ifTrue: [ self privateAt: aKey put: aBlock value ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifPresent..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifPresent..st new file mode 100644 index 00000000..cb051317 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.ifPresent..st @@ -0,0 +1,7 @@ +accessing +at: aKey ifPresent: aBlock + "Lookup aKey in the receiver. If it is present, answer the value of evaluating the given block with the value associated with the key. Otherwise, answer nil." + + | index | + index := self findIndexFor: aKey. + ^ index = 0 ifFalse: [ aBlock value: (table at: index + 1) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.put..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.put..st new file mode 100644 index 00000000..097781a5 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/at.put..st @@ -0,0 +1,9 @@ +accessing +at: aKey put: aValue + "Set the value of aKey to be aValue." + + | index | + index := self findIndexFor: aKey. + ^ index = 0 + ifFalse: [ table at: index + 1 put: aValue ] + ifTrue: [ self privateAt: aKey put: aValue ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/do..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/do..st new file mode 100644 index 00000000..2bd3792c --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/do..st @@ -0,0 +1,4 @@ +enumerating +do: aBlock + 2 to: size * 2 by: 2 do: [ :index | + aBlock value: (table at: index) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/errorKeyNotFound.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/errorKeyNotFound.st new file mode 100644 index 00000000..1158cdaa --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/errorKeyNotFound.st @@ -0,0 +1,3 @@ +private +errorKeyNotFound + self error: 'Key not found' \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/findIndexFor..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/findIndexFor..st new file mode 100644 index 00000000..0de814e5 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/findIndexFor..st @@ -0,0 +1,6 @@ +private +findIndexFor: aKey + 1 to: size * 2 - 1 by: 2 do: [ :index | + (table at: index) = aKey + ifTrue: [ ^ index ] ]. + ^ 0 \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/grow.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/grow.st new file mode 100644 index 00000000..9fac4654 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/grow.st @@ -0,0 +1,8 @@ +private +grow + | newTable | + "#replaceFrom:to:with:startingAt: would be better but not portable" + newTable := Array new: 4 * size. + 1 to: size * 2 do: [ :index | + newTable at: index put: (table at: index) ]. + table := newTable \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/includesKey..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/includesKey..st new file mode 100644 index 00000000..936a01fd --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/includesKey..st @@ -0,0 +1,5 @@ +testing +includesKey: aKey + "Answer whether the receiver has a key equal to aKey." + + ^ (self findIndexFor: aKey) ~= 0 \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/initialize..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/initialize..st new file mode 100644 index 00000000..21ab9452 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/initialize..st @@ -0,0 +1,5 @@ +initialization +initialize: anInteger + self initialize. + size := 0. + table := Array new: anInteger * 2 \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/isCollection.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/isCollection.st new file mode 100644 index 00000000..7678ef8e --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/isCollection.st @@ -0,0 +1,3 @@ +testing +isCollection + ^ true \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/isEmpty.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/isEmpty.st new file mode 100644 index 00000000..64734869 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/isEmpty.st @@ -0,0 +1,3 @@ +testing +isEmpty + ^ size = 0 \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keys.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keys.st new file mode 100644 index 00000000..95ff3bf7 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keys.st @@ -0,0 +1,10 @@ +enumerating +keys + | keys i | + size = 0 ifTrue: [ ^ #() ]. + i := 1. + keys := Array new: size. + 1 to: size * 2 - 1 by: 2 do: [ :index | + keys at: i put: (table at: index). + i := i + 1 ]. + ^ keys \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysAndValuesDo..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysAndValuesDo..st new file mode 100644 index 00000000..c7087a27 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysAndValuesDo..st @@ -0,0 +1,6 @@ +enumerating +keysAndValuesDo: aBlock + 1 to: size * 2 - 1 by: 2 do: [ :index | + aBlock + value: (table at: index) + value: (table at: index + 1) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysDo..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysDo..st new file mode 100644 index 00000000..6a712402 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/keysDo..st @@ -0,0 +1,4 @@ +enumerating +keysDo: aBlock + 1 to: size * 2 - 1 by: 2 do: [ :index | + aBlock value: (table at: index) ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/postCopy.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/postCopy.st new file mode 100644 index 00000000..63a5f0d0 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/postCopy.st @@ -0,0 +1,4 @@ +copying +postCopy + super postCopy. + table := table copy \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/printOn..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/printOn..st new file mode 100644 index 00000000..4bd38c36 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/printOn..st @@ -0,0 +1,23 @@ +printing +printOn: aStream + super printOn: aStream. + + aStream nextPut: $(. + self size <= 100 + ifTrue: [ + | first | + first := true. + self keysAndValuesDo: [ :key :value | + "keysAndValuesDo:separatedBy: would be nice" + first + ifTrue: [ first := false ] + ifFalse: [ aStream space ]. + aStream + print: key; + nextPutAll: '->'; + print: value ] ] + ifFalse: [ + aStream + nextPutAll: 'size '; + print: self size ]. + aStream nextPut: $) \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/privateAt.put..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/privateAt.put..st new file mode 100644 index 00000000..12bce577 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/privateAt.put..st @@ -0,0 +1,7 @@ +private +privateAt: aKey put: aValue + size * 2 = table size ifTrue: [ self grow ]. + table at: (size * 2 + 1) put: aKey. + table at: (size * 2 + 2) put: aValue. + size := size + 1. + ^ aValue \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeIndex..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeIndex..st new file mode 100644 index 00000000..b22a6db0 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeIndex..st @@ -0,0 +1,10 @@ +private +removeIndex: index + | value | + value := table at: index * 2. + index to: size * 2 - 2 do: [ :i | + table at: i put: (table at: i + 2) ]. + table at: size * 2 - 1 put: nil. + table at: size * 2 put: nil. + size := size - 1. + ^ value \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey..st new file mode 100644 index 00000000..987c66f6 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey..st @@ -0,0 +1,5 @@ +removing +removeKey: aKey + "Remove aKey from the receiver, raise an exception if the element is missing." + + ^ self removeKey: aKey ifAbsent: [ self errorKeyNotFound ] \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey.ifAbsent..st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey.ifAbsent..st new file mode 100644 index 00000000..f1ab9aa6 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/removeKey.ifAbsent..st @@ -0,0 +1,8 @@ +removing +removeKey: aKey ifAbsent: aBlock + "Remove aKey from the receiver, evaluate aBlock if the element is missing." + + | index | + index := self findIndexFor: aKey. + index = 0 ifTrue: [ ^ aBlock value ]. + ^ self removeIndex: index \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/size.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/size.st new file mode 100644 index 00000000..5936baf9 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/size.st @@ -0,0 +1,3 @@ +accessing +size + ^ size \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/instance/values.st b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/values.st new file mode 100644 index 00000000..b9797de1 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/instance/values.st @@ -0,0 +1,10 @@ +enumerating +values + | values i | + size = 0 ifTrue: [ ^ #() ]. + i := 1. + values := Array new: size. + 2 to: size * 2 by: 2 do: [ :index | + values at: i put: (table at: index). + i := i + 1 ]. + ^ values \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/methodProperties.json b/repository/Grease-Core.package/GRSmallDictionary2.class/methodProperties.json new file mode 100644 index 00000000..8ce417f3 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/methodProperties.json @@ -0,0 +1,34 @@ +{ + "class" : { + "new" : "lr 1/24/2008 12:34", + "new:" : "jf 3/13/2009 18:19", + "withAll:" : "jf 2/15/2010 22:50" }, + "instance" : { + "add:" : "lr 7/25/2011 19:51", + "addAll:" : "pmm 8/25/2016 12:31", + "associations" : "lr 10/28/2007 14:42", + "associationsDo:" : "lr 8/20/2007 13:45", + "at:" : "lr 10/28/2007 14:42", + "at:ifAbsent:" : "pmm 8/22/2016 12:08", + "at:ifAbsentPut:" : "pmm 8/22/2016 12:09", + "at:ifPresent:" : "pmm 8/22/2016 12:09", + "at:put:" : "pmm 8/22/2016 12:09", + "do:" : "pmm 8/22/2016 12:02", + "errorKeyNotFound" : "lr 7/12/2007 13:18", + "findIndexFor:" : "pmm 8/22/2016 12:17", + "grow" : "pmm 8/25/2016 11:00", + "includesKey:" : "lr 10/28/2007 14:42", + "initialize:" : "pmm 8/22/2016 11:52", + "isCollection" : "jf 2/15/2010 15:47", + "isEmpty" : "lr 7/9/2007 08:13", + "keys" : "pmm 8/22/2016 12:33", + "keysAndValuesDo:" : "pmm 8/25/2016 15:04", + "keysDo:" : "pmm 8/22/2016 12:18", + "postCopy" : "pmm 8/22/2016 11:56", + "printOn:" : "pmm 1/22/2012 16:32", + "privateAt:put:" : "pmm 8/22/2016 12:15", + "removeIndex:" : "pmm 8/22/2016 12:29", + "removeKey:" : "lr 7/12/2007 13:18", + "removeKey:ifAbsent:" : "jf 2/15/2010 14:40", + "size" : "lr 7/9/2007 10:38", + "values" : "pmm 8/22/2016 12:34" } } diff --git a/repository/Grease-Core.package/GRSmallDictionary2.class/properties.json b/repository/Grease-Core.package/GRSmallDictionary2.class/properties.json new file mode 100644 index 00000000..313b9fc6 --- /dev/null +++ b/repository/Grease-Core.package/GRSmallDictionary2.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "Grease-Core-Collections", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "pmm 8/22/2016 11:49", + "instvars" : [ + "size", + "table" ], + "name" : "GRSmallDictionary2", + "pools" : [ + ], + "super" : "GRObject", + "type" : "normal" } diff --git a/repository/Grease-Core.package/GRSmallOrderedSet.class/instance/isCollection.st b/repository/Grease-Core.package/GRSmallOrderedSet.class/instance/isCollection.st new file mode 100644 index 00000000..7678ef8e --- /dev/null +++ b/repository/Grease-Core.package/GRSmallOrderedSet.class/instance/isCollection.st @@ -0,0 +1,3 @@ +testing +isCollection + ^ true \ No newline at end of file diff --git a/repository/Grease-Core.package/GRSmallOrderedSet.class/methodProperties.json b/repository/Grease-Core.package/GRSmallOrderedSet.class/methodProperties.json index 4fc9dcf7..0ac3ad50 100644 --- a/repository/Grease-Core.package/GRSmallOrderedSet.class/methodProperties.json +++ b/repository/Grease-Core.package/GRSmallOrderedSet.class/methodProperties.json @@ -13,6 +13,7 @@ "grow" : "pmm 8/25/2016 14:27", "includes:" : "pmm 8/25/2016 14:15", "initialize:" : "pmm 8/25/2016 14:28", + "isCollection" : "pmm 8/26/2016 15:36", "isEmpty" : "pmm 8/25/2016 13:48", "postCopy" : "pmm 8/25/2016 14:47", "privateAdd:" : "pmm 8/25/2016 14:31", diff --git a/repository/Grease-Core.package/monticello.meta/version b/repository/Grease-Core.package/monticello.meta/version index 5d42348d..599ff7f7 100644 --- a/repository/Grease-Core.package/monticello.meta/version +++ b/repository/Grease-Core.package/monticello.meta/version @@ -1,4 +1,4 @@ -(name 'Grease-Core-pmm.106' message '- add GRSmallOrderedSet' id 'e7933307-f87d-4929-9a43-ecb800b71ebf' date '25 August 2016' time '3:36:09.938199 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.105' message '- add new #keysAndAllValuesDo:' id 'b8c3f92f-2bc1-4e13-820b-3fc6c84eb5d8' date '25 August 2016' time '3:23:48.853034 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.104' message '- fix #greaseInteger - add GRSmallOrderedSet' id '0cbaaf21-cd1f-4ec9-ae06-b5cd4b9f7d9a' date '25 August 2016' time '2:55:05.659616 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.103' message '- avoid association allocation in #addAll:' id '0c5392fa-dcef-4126-a29e-0ce5aaaa6ef7' date '25 August 2016' time '12:34:57.088428 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.102' message '- merge' id '145cda97-94f7-4983-9431-dbb190abaf5e' date '25 August 2016' time '12:22:52.508208 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.101' message '- lint fixes' id '4fb7fbee-57ad-4a6a-8995-fc771a1b550b' date '25 August 2016' time '11:31:09.647343 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.100' message '- lint fixes' id 'aa8715ac-cb26-48fa-9848-844663b95a0a' date '25 August 2016' time '11:03:09.006107 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.99' message 'Optimize GRSmallDictionary to a single array #875 - https://github.com/SeasideSt/Seaside/issues/875' id 'c93df209-d81b-4162-8f83-6e906d7cc04d' date '22 August 2016' time '12:39:19.148731 pm' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.98' message 'Updated the Grease version method (forgot this a year ago... )' id '4b366145-692f-4fc1-a2ae-e67f5a121eb1' date '5 May 2016' time '12:56:41.101881 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.97' message 'Added resolve for Pharo5 in GRPackage resolveWith:' id '868988c3-e68d-41f6-8932-c172c82904fa' date '26 March 2016' time '3:55:55.690691 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.96' message '- empty merge commit' id '022a5a23-c294-437c-adc1-9a613ccbd2bb' date '12 July 2015' time '10:28:08 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.95' message '- empty merge commit' id '9a9f3f50-c81b-4ed6-a41a-d0961b92c731' date '12 July 2015' time '10:26:31 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.92' message '#820 Configurations should not hold on to classes' id 'd65501a6-b884-4310-881d-ec25dc7b0002' date '12 July 2015' time '10:23:24 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.91' message '- lint fixes' id '6bbf6f41-4d71-47da-a07e-c7d630cfb445' date '19 August 2014' time '10:34:54 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.90' message '- lint fixes' id '4c1849aa-9f03-4eca-8f9f-f3e98a70e0a3' date '19 August 2014' time '9:37:58 am' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.89' message 'forgot the version number again...' id '6d882333-0356-45c9-851f-93312bce0b9e' date '20 July 2014' time '6:04:54.866362 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.88' message 'merged Grease-Core-JohanBrichau.87 and Grease-Core-StephanEggermont.87' id '8fc8f8bd-2317-4460-9abc-70752a9882b6' date '4 July 2014' time '10:54:46.225141 am' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.87' message 'updated the version method' id '1fb6ae91-5efa-4517-bd7e-5a929c7d710f' date '11 June 2014' time '7:46:26.136116 am' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.86' message 'merged Grease-Core-pmm.85 and Grease-Core-JohanBrichau.85' id '405a05a1-2041-4621-8412-9ff4b9842089' date '17 February 2014' time '6:51:26.464341 am' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.85' message 'move GRCountingStream from Pharo-only package to Core' id 'ac4a44c6-5fdf-40b5-844a-eb61bc6cca48' date '16 February 2014' time '9:30:16.525052 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.84' message '- fix comment' id 'cfd4a0a1-464c-44f7-9ebf-8cad9f9ad388' date '1 February 2014' time '3:14:07 pm' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.83' message 'Rename #packages to #grPackages (triggered to prevent a name collision in Pharo3.0)' id '33554268-7ad1-45f6-a0d9-4d0ed77d68d4' date '15 December 2013' time '6:30:54.565 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.82' message 'Issue 770: ScaledDecimal rendering support http://code.google.com/p/seaside/issues/detail?id=770 - avoid Float round trip' id 'd99de538-44b7-4e7f-9079-ac58dc69d64d' date '15 September 2013' time '12:06:53 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.81' message '- spelling' id '08e9c196-2dbe-4a14-8fb0-2cf958b4cfcf' date '14 September 2013' time '3:55:38 pm' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.80' 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 '1eaaa4e0-ee2e-4cca-ba16-6f0f694166d9' date '14 September 2013' time '12:37:49.21 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.79' message '- fix URLs' id '813fa3e7-99e3-4843-9b69-d4f5984d4057' date '12 September 2013' time '4:00:56.320007 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.78' message '- fallback for Pharo 2.0 and 3.0' id 'dab40930-15c6-461a-825b-dfab6db87792' date '12 September 2013' time '3:54:44.884557 pm' author 'pmm' ancestors ((name 'Grease-Core-MattSpr.77' message 'Removed Strin>>#trim* methods from Grease because they are in Pharo.' id 'fc12361f-de07-47bf-a6a9-990608482e9c' date '28 August 2013' time '11:06:58.459433 am' author 'MattSpr' ancestors ((name 'Grease-Core-pmm.76' message '- formatting Nazis from outer space' id '824e2ddb-fbfd-4ae3-b068-cf28c68ea3d3' date '1 September 2012' time '5:00:50 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.75' message '- Issue 733: multibyte characters broken when flushing a WAComboResponse - http://code.google.com/p/seaside/issues/detail?id=733' id '706bb981-4894-4376-a24b-75a532d8c2de' date '25 June 2012' time '9:05:23 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.74' message '- merge 3.0 trunk' id 'ded4ea2b-14d1-4f06-b667-a078f707ea79' date '29 March 2012' time '7:24:18 pm' author 'pmm' ancestors ((name 'Grease-Core-lr.73' message '- improved some class comments, fixed formatting and categorization' id 'a077ad47-9555-46cf-9989-19ffc66c6f47' date '19 February 2012' time '1:02:28 pm' author 'lr' ancestors ((name 'Grease-Core-lr.72' message '- added a class comment to GRPackage' id '07bb296f-e15f-4fa7-9cc1-c6fe2cf4718e' date '19 February 2012' time '12:39:49 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.71' message '- merge' id 'b7ff008a-8265-4e23-9a74-89072a785137' date '19 February 2012' time '10:55:36 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.70' message '- formatting nazis from outer space' id 'a74144e1-0aab-4565-b0dd-da9a51cf83b4' date '22 January 2012' time '4:47:07 pm' author 'pmm' ancestors ((name 'Grease-Core-lr.69' message '- we should also update the repository URLs when we change to a new repository, otherwise the scripts work with the old version' id '66e79d0b-2e4f-4995-add5-eb13a3b40c58' date '4 November 2011' time '9:20:43 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.68' message '- merge with trunk' id '7f35fdbd-efa6-474d-8e34-891fbc63bfc2' date '28 September 2011' time '5:50:09 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.67' message '- merge with trunk' id '3bacaa4e-9f4d-4d64-a37a-d9677b6eddf1' date '28 August 2011' time '12:18:34 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.66' 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 'ecdfbbb9-5bd3-4a37-9a07-06ee406b39f0' date '26 August 2011' time '9:57:26 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.65' 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 'cc93d214-e5a3-4bd0-98fb-7fc50e077a16' date '15 August 2011' time '9:38:38 pm' author 'pmm' ancestors ((name 'Grease-Core-MrCleaner.64' message '- bump version' id '18061a20-309b-4630-8e4c-bc030b4890f0' date '2 August 2011' time '8:15:56 pm' author 'MrCleaner' ancestors ((name 'Grease-Core-lr.63' message '- fixed formatting of return message' id 'f5804cb2-8a68-4da5-a744-6aec2bb22c5f' date '25 July 2011' time '8:19:35 pm' author 'lr' ancestors ((name 'Grease-Core-jf.62' message 'Make creation of GRDelayedSend with #new clearer by implementing #empty and having #new call it. This also allows senders that depend on it to be more explicit about what they expect.' id '85d50110-72de-4010-9459-ec91c6fccae0' date '10 July 2011' time '11:50:36 pm' author 'jf' ancestors ((name 'Grease-Core-jf.61' message 'Issue 662: Refactor GRDelayedSend to use composition and reduce duplicate Introduce new GRDelayedSendMessage and move the two subclasses of GRDelayedSend to be subclasses of this new class instead. Then rename them to match their new position and refactor to delegate to these subclasses.' id 'bb3214ae-96e5-495c-bc40-3e597c0e741a' date '10 July 2011' time '11:41:46 pm' author 'jf' ancestors ((name 'Grease-Core-jf.60' message 'Implement #new on GRDelayedSend. GRDelayedSend changes the designated initialization method, and so should override the inherited constructor.' id '62f29f87-a6d2-4204-b562-be045a2ed628' date '10 July 2011' time '10:52:23 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.59' message '- bump version' id 'b3ab66ab-d7ef-49fd-984a-ade1efdef0ef' date '17 May 2011' time '7:51:57 pm' author 'pmm' ancestors ((name 'Grease-Core-DaleHenrichs.58' message '- bump version to 1.0.4' id '3a6c7ed9-1ed7-41e6-b60b-b6b71ba733c5' date '11 February 2011' time '3:34:40 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Core-pmm.57' message '- formatting - remove trailing space in GRSmallDictionary print string' id '059f4662-ef8e-4310-85a8-6c4de4ac0d58' date '6 February 2011' time '12:03:27 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.56' message '- merged' id '3adcd19c-602e-4df3-ace4-cb7e8f3e2c94' date '5 February 2011' time '11:51:08 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.55' 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 '3c306912-4a6b-433d-adef-5bb851d286da' date '5 February 2011' time '11:50:22 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.54' message '- cosmetics' id 'c818dcbc-1ead-4a01-9a5b-1c73b160c8b7' date '26 December 2010' time '10:09:12 pm' author 'pmm' ancestors ((name 'Grease-Core-DaleHenrichs.53' message '- bump version to 1.0.3' id '2a5d9b5b-2dd3-4622-91d7-01b4e5add634' date '13 December 2010' time '2:38:51 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Core-pmm.52' message '- bump version for upcomming release' id '956ed3e6-6602-493a-b554-fa2e0ac31923' date '21 November 2010' time '12:31:33 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.51' message '- fix typo' id 'e18100b0-2f7d-4093-8304-670df747fc28' date '30 October 2010' time '6:57:02 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.50' message '- remove #hash, #= and #isDictionary from GRSmallDictionary' id 'f7a2ea64-9c10-4d83-8150-8ee633b85c1b' date '7 October 2010' time '3:56:06 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.49' message '- merged' id '2f42300e-cab9-4d0c-a21b-72997fd0d5a5' date '7 October 2010' time '11:29:43 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.48' message '- GRCodecStream #isStream' id '0b26e466-e77b-414a-ae1b-ecdd0e302acc' date '7 October 2010' time '11:28:58 am' author 'pmm' ancestors () stepChildren ())(name 'Grease-Core-lr.48' message '- correct, but worse implementation of GRSmallDictionary>>#hash - #isDictionary is not ANSI, avoid it in GRSmallDictionary>>#=' id '968fbb8c-5c1d-463b-8ac7-0c784cc79388' date '9 September 2010' time '12:18:03 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.47' message '- formatting' id '3be6d293-aa73-4047-8d1b-f6b043a64d5b' date '7 September 2010' time '9:14:05 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.46' message '- add #= and #hash to GRSmallDictionary' id '2948f094-8e4f-420d-9434-88224f1bfb20' date '6 September 2010' time '11:36:02 am' author 'pmm' ancestors ((name 'Grease-Core-jf.45' message 'Update version number for 1.0' id 'e765e791-5497-49e7-9413-8a54a0fe42bb' date '8 August 2010' time '9:53:45 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.44' message '- fixed seaside addons url' id '93b9c5fb-4d46-48e8-a958-bf1086e9a1ff' date '8 August 2010' time '11:24:37 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.42' 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 '2a422c1b-8310-4790-9185-fc7f522d01e1' date '26 May 2010' time '9:41:19 pm' author 'pmm' ancestors ((name 'Grease-Core-jf.41' message 'Bump version numbers in preparation for an RC release' id '1ff6239d-4612-4a10-b7cf-de249fc25b4d' date '22 May 2010' time '11:46:08 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.40' message '- make character testing methods return constant value for unchanged performance everywhere but Pharo' id 'bc934cc6-cf3a-441c-af13-23aa3e6b8902' date '22 May 2010' time '10:45:58 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.38' message '- add testing methods for unsafe characters' id '696e8a5c-8bc6-4f91-83c5-56f5d66970d6' date '20 May 2010' time '9:11:34 pm' author 'pmm' ancestors ((name 'Grease-Core-lr.37' message '- reverted back to #reverse (ANSI)' id 'c021b7f0-fdd1-44a6-989e-1db492961140' date '13 May 2010' time '3:57:08 pm' author 'lr' ancestors ((name 'Grease-Core-DaleHenrichs.36' message '- revert GRNumberPrinter>>digitsOf:base: to version that uses #reversed as #reverse is deprecated' id '820d8e2d-bbd4-4c25-8c92-1b36139b4cac' date '12 May 2010' time '5:00:48 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Core-pmm.35' message '- merged' id 'c2523a28-17ea-43e8-9701-d3144c49c7b0' date '7 May 2010' time '10:32:25 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.34' message '- add seasideAddonsUrl' id 'c4680460-d21f-4ccc-b225-0a1345f202bd' date '7 May 2010' time '10:30:05 pm' author 'pmm' ancestors () stepChildren ())(name 'Grease-Core-jok.34' message 'Use #reverse (ANSI) rather than #reversed' id 'fca590c1-b0d8-3f42-9b8b-412824c25a14' date '22 April 2010' time '5:33:34 pm' author 'jok' ancestors ((name 'Grease-Core-lr.33' 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 'f6a7e283-1f08-4147-947c-904f2bc304a3' date '15 April 2010' time '7:29:31 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.32' message '- Issue 561: remove GRCodecStream >> #binary - http://code.google.com/p/seaside/issues/detail?id=561' id '341014e3-fd90-4740-b777-716056f2cd7b' date '11 April 2010' time '6:16:33 pm' author 'pmm' ancestors ((name 'Grease-Core-jok.31' message '- http://code.google.com/p/seaside/issues/detail?id=555 - add #beginsWithSubCollection: and #endsWithSubCollection:' id 'b3a1f4c5-f496-b24e-bb0a-94395d447b1a' date '24 March 2010' time '12:30:33 pm' author 'jok' ancestors ((name 'Grease-Core-obi.30' message '- revert back to lr.28' id 'ff3d24e0-bea4-8642-aa70-0a8eaa509d55' date '22 February 2010' time '8:16:50 pm' author 'obi' ancestors ((name 'Grease-Core-obi.29' message '- add direct accessing method for url' id '79473ec4-083e-a144-aa40-4d100d2ab1e3' date '21 February 2010' time '6:43:17 pm' author 'obi' ancestors ((name 'Grease-Core-lr.28' message '- better error message when package dependencies cannot be reseolved' id 'be96fe5b-0af9-4937-8155-cafe37a0409f' date '18 February 2010' time '11:15:34 am' author 'lr' ancestors ((name 'Grease-Core-lr.27' message '- added explicit repository url' id '8a5b0209-3bc3-4ca1-b4d1-1f924d67ab47' date '17 February 2010' time '4:07:07 pm' author 'lr' ancestors ((name 'Grease-Core-lr.26' message '- do not initialize a default URL, that''s indeed too dangerous' id '231ee3c9-2dfb-491c-8c2c-c1c3f403d6cd' date '17 February 2010' time '3:09:07 pm' author 'lr' ancestors ((name 'Grease-Core-lr.25' message '- cleanup unused code' id '3ce14101-eb4d-40ca-ba28-3e82e896a957' date '17 February 2010' time '2:48:12 pm' author 'lr' ancestors ((name 'Grease-Core-lr.24' message '- fixed some lint issues' id '7b01c967-c2aa-441a-b26b-03cef0c944fe' date '16 February 2010' time '9:15:50 pm' author 'lr' ancestors ((name 'Grease-Core-jf.23' message 'Metacello version numbers for Grease have already gone up as high at 1.0a5, so let''s use 1.0a6 instead...' id '32b7d714-db34-4987-926c-c303b5cecee9' date '15 February 2010' time '11:19:48 pm' author 'jf' ancestors ((name 'Grease-Core-jf.22' message '#addAll: and #withAll: on dictionaries should take a Dictionary parameter, not a collection of Associations (according to ANSI)' id '8c843c34-4297-4448-abd7-f4092025ae07' date '15 February 2010' time '11:01:57 pm' author 'jf' ancestors ((name 'Grease-Core-jf.21' 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 '9a67e592-63f9-4aab-8799-ce92fd341205' date '15 February 2010' time '9:31:33 pm' author 'jf' ancestors ((name 'Grease-Core-lr.20' message '- add an url to the package' id '1ce86f1b-1e86-45bf-b755-9fcb4ffede6e' date '10 February 2010' time '11:33:14 am' author 'lr' ancestors ((name 'Grease-Core-jf.19' message 'Let''s set a good example by properly namespacing our extensions to GRPlatform. Also tidy up and remove unused methods.' id '4549ccc4-6218-4b5a-affb-5c2c1a0bf3bd' date '9 February 2010' time '1:52:55 am' author 'jf' ancestors ((name 'Grease-Core-jf.18' message 'http://code.google.com/p/seaside/issues/detail?id=503 Implement GRVersion as a (fairly) simple version number class.' id '75fc4f58-e849-447e-a1e9-d21cb20d1a02' date '9 February 2010' time '1:03:53 am' author 'jf' ancestors ((name 'Grease-Core-lr.17' message 'merged' id '1f83c10c-28b2-4f1f-ad0e-2a621262d18c' date '6 February 2010' time '7:04:07 pm' author 'lr' ancestors ((name 'Grease-Core-jf.16' 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 'd8afb489-de6a-424c-a94e-5c9eb50939ec' date '6 February 2010' time '1:21:59 am' author 'jf' ancestors () stepChildren ())(name 'Grease-Core-lr.16' message '- use accessors in initializers, that''s nicer - pushed test coverage to 94%' id 'd10c2b98-a79b-4ee5-b8bd-f9ec27a4ffa3' date '6 February 2010' time '11:13:58 am' author 'lr' ancestors ((name 'Grease-Core-jok.15' message 'http://code.google.com/p/seaside/issues/detail?id=535 - add Slime transformation for #new:withAll: and run it' id 'a3dbcab3-59b8-0b40-8128-8ff7a1f1d634' date '26 January 2010' time '10:57:57 am' author 'jok' ancestors ((name 'Grease-Core-jf.14' message 'merge' id 'e59ae7f2-6e21-4d7e-b53d-68e5b2406df9' date '11 January 2010' time '8:09:27 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.13' message '- Issue 513: RFC822 code in RSS package may be using obsolete code - http://code.google.com/p/seaside/issues/detail?id=513' id '86691819-8179-4e4e-a8db-2b0cbaa0bf9c' date '2 January 2010' time '5:07:58 pm' author 'pmm' ancestors ((name 'Grease-Core-jf.12' message 'Write some more Slime rules and tests and apply them.' id '4b9eaa57-bead-4961-8b61-ea0389e0676e' date '29 December 2009' time '8:59:12 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())(name 'Grease-Core-jf.11' message 'merge' id 'd560d898-8aab-4fdb-bee0-1e8eb8dde60c' date '29 December 2009' time '5:12:46 pm' author 'jf' ancestors ((name 'Grease-Core-jf.10' 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 '2938fcb6-3e91-4119-bbf5-9f8699144f45' date '29 December 2009' time '4:14:26 pm' author 'jf' ancestors ((name 'Grease-Core-dkh.8' message '- fix Issue 499: http://code.google.com/p/seaside/issues/detail?id=499' id '7cea52fb-d9e9-4441-8ad5-3fa51cadceae' date '23 November 2009' time '3:07:28 pm' author 'dkh' ancestors ((name 'Grease-Core-jf.7' message 'Move seaside-specific method out of Grease' id '1a22dbe1-3b92-4449-9584-0d0e99398eec' date '3 November 2009' time '12:09:14 am' author 'jf' ancestors ((name 'Grease-Core-lr.6' message '- never use #== unless really required' id '1805834a-1d95-4cfa-ae9b-3ea1d5e38d0b' date '28 October 2009' time '11:16:09 am' author 'lr' ancestors ((name 'Grease-Core-lr.5' message '- fixed argument names and some other formatting issues' id '35c4532c-a8a4-4dbd-a856-d15513dec823' date '25 October 2009' time '11:31:51 am' author 'lr' ancestors ((name 'Grease-Core-lr.4' message '- removed duplicated code from string extensions, properly commented all methods' id '3b3f3e4f-d3e6-4f60-8482-be11f9b82404' date '25 October 2009' time '11:20:38 am' author 'lr' ancestors ((name 'Grease-Core-obi.3' message '- add license attribute' id '11a247de-6598-8348-bdf9-9d2b1ab4175d' date '8 October 2009' time '8:32:08 am' author 'obi' ancestors ((name 'Grease-Core-jf.2' message 'recategorization' id 'ed41f639-a256-4ee6-a184-8555fd48a5ea' date '1 October 2009' time '12:45:27 am' author 'jf' ancestors ((name 'Grease-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 '8702f9cb-4c9f-49fe-9b8f-ed45cd2d444a' date '30 September 2009' time '10:47:12 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-jf.9' message '#findString: is not portable - use #indexOfSubCollection:' id '5ba7bcb1-ea63-4fc1-9de2-ea443edec864' date '17 December 2009' time '10:50:18 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 ())(name 'Grease-Core-NickAger.55' message 'added GRSmallDictionary>>#printOn:' id '5b995447-06d6-4525-966b-d22d45444ab9' date '5 February 2011' time '8:26:34 pm' author 'NickAger' ancestors ((id 'c818dcbc-1ead-4a01-9a5b-1c73b160c8b7')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-pmm.64' message '- add base64 comment' id 'c1fb5836-b648-46e8-b535-de41929a88ac' date '28 August 2011' time '9:58:40 am' author 'pmm' ancestors ((id 'f5804cb2-8a68-4da5-a744-6aec2bb22c5f')) stepChildren ())) stepChildren ())(name 'Grease-Core-lr.66' message '- add GRCodecStream>>#print:' id '0a3221fb-c5d8-4ce1-b139-0e6dc72481a2' date '25 September 2011' time '10:13:37 am' author 'lr' ancestors ((name 'Grease-Core-dkh.65' message '1.0.6 (dkh.153): +(name 'Grease-Core-pmm.107' message '- revert SmallDictionary changes for now' id '32077c22-cc68-4a2f-a7f3-050277bd0b63' date '26 August 2016' time '3:59:50.285037 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.106' message '- add GRSmallOrderedSet' id 'e7933307-f87d-4929-9a43-ecb800b71ebf' date '25 August 2016' time '3:36:09.938199 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.105' message '- add new #keysAndAllValuesDo:' id 'b8c3f92f-2bc1-4e13-820b-3fc6c84eb5d8' date '25 August 2016' time '3:23:48.853034 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.104' message '- fix #greaseInteger - add GRSmallOrderedSet' id '0cbaaf21-cd1f-4ec9-ae06-b5cd4b9f7d9a' date '25 August 2016' time '2:55:05.659616 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.103' message '- avoid association allocation in #addAll:' id '0c5392fa-dcef-4126-a29e-0ce5aaaa6ef7' date '25 August 2016' time '12:34:57.088428 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.102' message '- merge' id '145cda97-94f7-4983-9431-dbb190abaf5e' date '25 August 2016' time '12:22:52.508208 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.101' message '- lint fixes' id '4fb7fbee-57ad-4a6a-8995-fc771a1b550b' date '25 August 2016' time '11:31:09.647343 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.100' message '- lint fixes' id 'aa8715ac-cb26-48fa-9848-844663b95a0a' date '25 August 2016' time '11:03:09.006107 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.99' message 'Optimize GRSmallDictionary to a single array #875 - https://github.com/SeasideSt/Seaside/issues/875' id 'c93df209-d81b-4162-8f83-6e906d7cc04d' date '22 August 2016' time '12:39:19.148731 pm' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.98' message 'Updated the Grease version method (forgot this a year ago... )' id '4b366145-692f-4fc1-a2ae-e67f5a121eb1' date '5 May 2016' time '12:56:41.101881 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.97' message 'Added resolve for Pharo5 in GRPackage resolveWith:' id '868988c3-e68d-41f6-8932-c172c82904fa' date '26 March 2016' time '3:55:55.690691 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.96' message '- empty merge commit' id '022a5a23-c294-437c-adc1-9a613ccbd2bb' date '12 July 2015' time '10:28:08 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.95' message '- empty merge commit' id '9a9f3f50-c81b-4ed6-a41a-d0961b92c731' date '12 July 2015' time '10:26:31 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.92' message '#820 Configurations should not hold on to classes' id 'd65501a6-b884-4310-881d-ec25dc7b0002' date '12 July 2015' time '10:23:24 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.91' message '- lint fixes' id '6bbf6f41-4d71-47da-a07e-c7d630cfb445' date '19 August 2014' time '10:34:54 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.90' message '- lint fixes' id '4c1849aa-9f03-4eca-8f9f-f3e98a70e0a3' date '19 August 2014' time '9:37:58 am' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.89' message 'forgot the version number again...' id '6d882333-0356-45c9-851f-93312bce0b9e' date '20 July 2014' time '6:04:54.866362 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.88' message 'merged Grease-Core-JohanBrichau.87 and Grease-Core-StephanEggermont.87' id '8fc8f8bd-2317-4460-9abc-70752a9882b6' date '4 July 2014' time '10:54:46.225141 am' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.87' message 'updated the version method' id '1fb6ae91-5efa-4517-bd7e-5a929c7d710f' date '11 June 2014' time '7:46:26.136116 am' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.86' message 'merged Grease-Core-pmm.85 and Grease-Core-JohanBrichau.85' id '405a05a1-2041-4621-8412-9ff4b9842089' date '17 February 2014' time '6:51:26.464341 am' author 'JohanBrichau' ancestors ((name 'Grease-Core-JohanBrichau.85' message 'move GRCountingStream from Pharo-only package to Core' id 'ac4a44c6-5fdf-40b5-844a-eb61bc6cca48' date '16 February 2014' time '9:30:16.525052 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.84' message '- fix comment' id 'cfd4a0a1-464c-44f7-9ebf-8cad9f9ad388' date '1 February 2014' time '3:14:07 pm' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.83' message 'Rename #packages to #grPackages (triggered to prevent a name collision in Pharo3.0)' id '33554268-7ad1-45f6-a0d9-4d0ed77d68d4' date '15 December 2013' time '6:30:54.565 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.82' message 'Issue 770: ScaledDecimal rendering support http://code.google.com/p/seaside/issues/detail?id=770 - avoid Float round trip' id 'd99de538-44b7-4e7f-9079-ac58dc69d64d' date '15 September 2013' time '12:06:53 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.81' message '- spelling' id '08e9c196-2dbe-4a14-8fb0-2cf958b4cfcf' date '14 September 2013' time '3:55:38 pm' author 'pmm' ancestors ((name 'Grease-Core-JohanBrichau.80' 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 '1eaaa4e0-ee2e-4cca-ba16-6f0f694166d9' date '14 September 2013' time '12:37:49.21 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.79' message '- fix URLs' id '813fa3e7-99e3-4843-9b69-d4f5984d4057' date '12 September 2013' time '4:00:56.320007 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.78' message '- fallback for Pharo 2.0 and 3.0' id 'dab40930-15c6-461a-825b-dfab6db87792' date '12 September 2013' time '3:54:44.884557 pm' author 'pmm' ancestors ((name 'Grease-Core-MattSpr.77' message 'Removed Strin>>#trim* methods from Grease because they are in Pharo.' id 'fc12361f-de07-47bf-a6a9-990608482e9c' date '28 August 2013' time '11:06:58.459433 am' author 'MattSpr' ancestors ((name 'Grease-Core-pmm.76' message '- formatting Nazis from outer space' id '824e2ddb-fbfd-4ae3-b068-cf28c68ea3d3' date '1 September 2012' time '5:00:50 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.75' message '- Issue 733: multibyte characters broken when flushing a WAComboResponse - http://code.google.com/p/seaside/issues/detail?id=733' id '706bb981-4894-4376-a24b-75a532d8c2de' date '25 June 2012' time '9:05:23 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.74' message '- merge 3.0 trunk' id 'ded4ea2b-14d1-4f06-b667-a078f707ea79' date '29 March 2012' time '7:24:18 pm' author 'pmm' ancestors ((name 'Grease-Core-lr.73' message '- improved some class comments, fixed formatting and categorization' id 'a077ad47-9555-46cf-9989-19ffc66c6f47' date '19 February 2012' time '1:02:28 pm' author 'lr' ancestors ((name 'Grease-Core-lr.72' message '- added a class comment to GRPackage' id '07bb296f-e15f-4fa7-9cc1-c6fe2cf4718e' date '19 February 2012' time '12:39:49 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.71' message '- merge' id 'b7ff008a-8265-4e23-9a74-89072a785137' date '19 February 2012' time '10:55:36 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.70' message '- formatting nazis from outer space' id 'a74144e1-0aab-4565-b0dd-da9a51cf83b4' date '22 January 2012' time '4:47:07 pm' author 'pmm' ancestors ((name 'Grease-Core-lr.69' message '- we should also update the repository URLs when we change to a new repository, otherwise the scripts work with the old version' id '66e79d0b-2e4f-4995-add5-eb13a3b40c58' date '4 November 2011' time '9:20:43 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.68' message '- merge with trunk' id '7f35fdbd-efa6-474d-8e34-891fbc63bfc2' date '28 September 2011' time '5:50:09 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.67' message '- merge with trunk' id '3bacaa4e-9f4d-4d64-a37a-d9677b6eddf1' date '28 August 2011' time '12:18:34 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.66' 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 'ecdfbbb9-5bd3-4a37-9a07-06ee406b39f0' date '26 August 2011' time '9:57:26 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.65' 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 'cc93d214-e5a3-4bd0-98fb-7fc50e077a16' date '15 August 2011' time '9:38:38 pm' author 'pmm' ancestors ((name 'Grease-Core-MrCleaner.64' message '- bump version' id '18061a20-309b-4630-8e4c-bc030b4890f0' date '2 August 2011' time '8:15:56 pm' author 'MrCleaner' ancestors ((name 'Grease-Core-lr.63' message '- fixed formatting of return message' id 'f5804cb2-8a68-4da5-a744-6aec2bb22c5f' date '25 July 2011' time '8:19:35 pm' author 'lr' ancestors ((name 'Grease-Core-jf.62' message 'Make creation of GRDelayedSend with #new clearer by implementing #empty and having #new call it. This also allows senders that depend on it to be more explicit about what they expect.' id '85d50110-72de-4010-9459-ec91c6fccae0' date '10 July 2011' time '11:50:36 pm' author 'jf' ancestors ((name 'Grease-Core-jf.61' message 'Issue 662: Refactor GRDelayedSend to use composition and reduce duplicate Introduce new GRDelayedSendMessage and move the two subclasses of GRDelayedSend to be subclasses of this new class instead. Then rename them to match their new position and refactor to delegate to these subclasses.' id 'bb3214ae-96e5-495c-bc40-3e597c0e741a' date '10 July 2011' time '11:41:46 pm' author 'jf' ancestors ((name 'Grease-Core-jf.60' message 'Implement #new on GRDelayedSend. GRDelayedSend changes the designated initialization method, and so should override the inherited constructor.' id '62f29f87-a6d2-4204-b562-be045a2ed628' date '10 July 2011' time '10:52:23 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.59' message '- bump version' id 'b3ab66ab-d7ef-49fd-984a-ade1efdef0ef' date '17 May 2011' time '7:51:57 pm' author 'pmm' ancestors ((name 'Grease-Core-DaleHenrichs.58' message '- bump version to 1.0.4' id '3a6c7ed9-1ed7-41e6-b60b-b6b71ba733c5' date '11 February 2011' time '3:34:40 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Core-pmm.57' message '- formatting - remove trailing space in GRSmallDictionary print string' id '059f4662-ef8e-4310-85a8-6c4de4ac0d58' date '6 February 2011' time '12:03:27 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.56' message '- merged' id '3adcd19c-602e-4df3-ace4-cb7e8f3e2c94' date '5 February 2011' time '11:51:08 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.55' 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 '3c306912-4a6b-433d-adef-5bb851d286da' date '5 February 2011' time '11:50:22 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.54' message '- cosmetics' id 'c818dcbc-1ead-4a01-9a5b-1c73b160c8b7' date '26 December 2010' time '10:09:12 pm' author 'pmm' ancestors ((name 'Grease-Core-DaleHenrichs.53' message '- bump version to 1.0.3' id '2a5d9b5b-2dd3-4622-91d7-01b4e5add634' date '13 December 2010' time '2:38:51 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Core-pmm.52' message '- bump version for upcomming release' id '956ed3e6-6602-493a-b554-fa2e0ac31923' date '21 November 2010' time '12:31:33 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.51' message '- fix typo' id 'e18100b0-2f7d-4093-8304-670df747fc28' date '30 October 2010' time '6:57:02 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.50' message '- remove #hash, #= and #isDictionary from GRSmallDictionary' id 'f7a2ea64-9c10-4d83-8150-8ee633b85c1b' date '7 October 2010' time '3:56:06 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.49' message '- merged' id '2f42300e-cab9-4d0c-a21b-72997fd0d5a5' date '7 October 2010' time '11:29:43 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.48' message '- GRCodecStream #isStream' id '0b26e466-e77b-414a-ae1b-ecdd0e302acc' date '7 October 2010' time '11:28:58 am' author 'pmm' ancestors () stepChildren ())(name 'Grease-Core-lr.48' message '- correct, but worse implementation of GRSmallDictionary>>#hash - #isDictionary is not ANSI, avoid it in GRSmallDictionary>>#=' id '968fbb8c-5c1d-463b-8ac7-0c784cc79388' date '9 September 2010' time '12:18:03 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.47' message '- formatting' id '3be6d293-aa73-4047-8d1b-f6b043a64d5b' date '7 September 2010' time '9:14:05 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.46' message '- add #= and #hash to GRSmallDictionary' id '2948f094-8e4f-420d-9434-88224f1bfb20' date '6 September 2010' time '11:36:02 am' author 'pmm' ancestors ((name 'Grease-Core-jf.45' message 'Update version number for 1.0' id 'e765e791-5497-49e7-9413-8a54a0fe42bb' date '8 August 2010' time '9:53:45 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.44' message '- fixed seaside addons url' id '93b9c5fb-4d46-48e8-a958-bf1086e9a1ff' date '8 August 2010' time '11:24:37 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.42' 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 '2a422c1b-8310-4790-9185-fc7f522d01e1' date '26 May 2010' time '9:41:19 pm' author 'pmm' ancestors ((name 'Grease-Core-jf.41' message 'Bump version numbers in preparation for an RC release' id '1ff6239d-4612-4a10-b7cf-de249fc25b4d' date '22 May 2010' time '11:46:08 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.40' message '- make character testing methods return constant value for unchanged performance everywhere but Pharo' id 'bc934cc6-cf3a-441c-af13-23aa3e6b8902' date '22 May 2010' time '10:45:58 am' author 'pmm' ancestors ((name 'Grease-Core-pmm.38' message '- add testing methods for unsafe characters' id '696e8a5c-8bc6-4f91-83c5-56f5d66970d6' date '20 May 2010' time '9:11:34 pm' author 'pmm' ancestors ((name 'Grease-Core-lr.37' message '- reverted back to #reverse (ANSI)' id 'c021b7f0-fdd1-44a6-989e-1db492961140' date '13 May 2010' time '3:57:08 pm' author 'lr' ancestors ((name 'Grease-Core-DaleHenrichs.36' message '- revert GRNumberPrinter>>digitsOf:base: to version that uses #reversed as #reverse is deprecated' id '820d8e2d-bbd4-4c25-8c92-1b36139b4cac' date '12 May 2010' time '5:00:48 pm' author 'DaleHenrichs' ancestors ((name 'Grease-Core-pmm.35' message '- merged' id 'c2523a28-17ea-43e8-9701-d3144c49c7b0' date '7 May 2010' time '10:32:25 pm' author 'pmm' ancestors ((name 'Grease-Core-pmm.34' message '- add seasideAddonsUrl' id 'c4680460-d21f-4ccc-b225-0a1345f202bd' date '7 May 2010' time '10:30:05 pm' author 'pmm' ancestors () stepChildren ())(name 'Grease-Core-jok.34' message 'Use #reverse (ANSI) rather than #reversed' id 'fca590c1-b0d8-3f42-9b8b-412824c25a14' date '22 April 2010' time '5:33:34 pm' author 'jok' ancestors ((name 'Grease-Core-lr.33' 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 'f6a7e283-1f08-4147-947c-904f2bc304a3' date '15 April 2010' time '7:29:31 pm' author 'lr' ancestors ((name 'Grease-Core-pmm.32' message '- Issue 561: remove GRCodecStream >> #binary - http://code.google.com/p/seaside/issues/detail?id=561' id '341014e3-fd90-4740-b777-716056f2cd7b' date '11 April 2010' time '6:16:33 pm' author 'pmm' ancestors ((name 'Grease-Core-jok.31' message '- http://code.google.com/p/seaside/issues/detail?id=555 - add #beginsWithSubCollection: and #endsWithSubCollection:' id 'b3a1f4c5-f496-b24e-bb0a-94395d447b1a' date '24 March 2010' time '12:30:33 pm' author 'jok' ancestors ((name 'Grease-Core-obi.30' message '- revert back to lr.28' id 'ff3d24e0-bea4-8642-aa70-0a8eaa509d55' date '22 February 2010' time '8:16:50 pm' author 'obi' ancestors ((name 'Grease-Core-obi.29' message '- add direct accessing method for url' id '79473ec4-083e-a144-aa40-4d100d2ab1e3' date '21 February 2010' time '6:43:17 pm' author 'obi' ancestors ((name 'Grease-Core-lr.28' message '- better error message when package dependencies cannot be reseolved' id 'be96fe5b-0af9-4937-8155-cafe37a0409f' date '18 February 2010' time '11:15:34 am' author 'lr' ancestors ((name 'Grease-Core-lr.27' message '- added explicit repository url' id '8a5b0209-3bc3-4ca1-b4d1-1f924d67ab47' date '17 February 2010' time '4:07:07 pm' author 'lr' ancestors ((name 'Grease-Core-lr.26' message '- do not initialize a default URL, that''s indeed too dangerous' id '231ee3c9-2dfb-491c-8c2c-c1c3f403d6cd' date '17 February 2010' time '3:09:07 pm' author 'lr' ancestors ((name 'Grease-Core-lr.25' message '- cleanup unused code' id '3ce14101-eb4d-40ca-ba28-3e82e896a957' date '17 February 2010' time '2:48:12 pm' author 'lr' ancestors ((name 'Grease-Core-lr.24' message '- fixed some lint issues' id '7b01c967-c2aa-441a-b26b-03cef0c944fe' date '16 February 2010' time '9:15:50 pm' author 'lr' ancestors ((name 'Grease-Core-jf.23' message 'Metacello version numbers for Grease have already gone up as high at 1.0a5, so let''s use 1.0a6 instead...' id '32b7d714-db34-4987-926c-c303b5cecee9' date '15 February 2010' time '11:19:48 pm' author 'jf' ancestors ((name 'Grease-Core-jf.22' message '#addAll: and #withAll: on dictionaries should take a Dictionary parameter, not a collection of Associations (according to ANSI)' id '8c843c34-4297-4448-abd7-f4092025ae07' date '15 February 2010' time '11:01:57 pm' author 'jf' ancestors ((name 'Grease-Core-jf.21' 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 '9a67e592-63f9-4aab-8799-ce92fd341205' date '15 February 2010' time '9:31:33 pm' author 'jf' ancestors ((name 'Grease-Core-lr.20' message '- add an url to the package' id '1ce86f1b-1e86-45bf-b755-9fcb4ffede6e' date '10 February 2010' time '11:33:14 am' author 'lr' ancestors ((name 'Grease-Core-jf.19' message 'Let''s set a good example by properly namespacing our extensions to GRPlatform. Also tidy up and remove unused methods.' id '4549ccc4-6218-4b5a-affb-5c2c1a0bf3bd' date '9 February 2010' time '1:52:55 am' author 'jf' ancestors ((name 'Grease-Core-jf.18' message 'http://code.google.com/p/seaside/issues/detail?id=503 Implement GRVersion as a (fairly) simple version number class.' id '75fc4f58-e849-447e-a1e9-d21cb20d1a02' date '9 February 2010' time '1:03:53 am' author 'jf' ancestors ((name 'Grease-Core-lr.17' message 'merged' id '1f83c10c-28b2-4f1f-ad0e-2a621262d18c' date '6 February 2010' time '7:04:07 pm' author 'lr' ancestors ((name 'Grease-Core-jf.16' 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 'd8afb489-de6a-424c-a94e-5c9eb50939ec' date '6 February 2010' time '1:21:59 am' author 'jf' ancestors () stepChildren ())(name 'Grease-Core-lr.16' message '- use accessors in initializers, that''s nicer - pushed test coverage to 94%' id 'd10c2b98-a79b-4ee5-b8bd-f9ec27a4ffa3' date '6 February 2010' time '11:13:58 am' author 'lr' ancestors ((name 'Grease-Core-jok.15' message 'http://code.google.com/p/seaside/issues/detail?id=535 - add Slime transformation for #new:withAll: and run it' id 'a3dbcab3-59b8-0b40-8128-8ff7a1f1d634' date '26 January 2010' time '10:57:57 am' author 'jok' ancestors ((name 'Grease-Core-jf.14' message 'merge' id 'e59ae7f2-6e21-4d7e-b53d-68e5b2406df9' date '11 January 2010' time '8:09:27 pm' author 'jf' ancestors ((name 'Grease-Core-pmm.13' message '- Issue 513: RFC822 code in RSS package may be using obsolete code - http://code.google.com/p/seaside/issues/detail?id=513' id '86691819-8179-4e4e-a8db-2b0cbaa0bf9c' date '2 January 2010' time '5:07:58 pm' author 'pmm' ancestors ((name 'Grease-Core-jf.12' message 'Write some more Slime rules and tests and apply them.' id '4b9eaa57-bead-4961-8b61-ea0389e0676e' date '29 December 2009' time '8:59:12 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())(name 'Grease-Core-jf.11' message 'merge' id 'd560d898-8aab-4fdb-bee0-1e8eb8dde60c' date '29 December 2009' time '5:12:46 pm' author 'jf' ancestors ((name 'Grease-Core-jf.10' 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 '2938fcb6-3e91-4119-bbf5-9f8699144f45' date '29 December 2009' time '4:14:26 pm' author 'jf' ancestors ((name 'Grease-Core-dkh.8' message '- fix Issue 499: http://code.google.com/p/seaside/issues/detail?id=499' id '7cea52fb-d9e9-4441-8ad5-3fa51cadceae' date '23 November 2009' time '3:07:28 pm' author 'dkh' ancestors ((name 'Grease-Core-jf.7' message 'Move seaside-specific method out of Grease' id '1a22dbe1-3b92-4449-9584-0d0e99398eec' date '3 November 2009' time '12:09:14 am' author 'jf' ancestors ((name 'Grease-Core-lr.6' message '- never use #== unless really required' id '1805834a-1d95-4cfa-ae9b-3ea1d5e38d0b' date '28 October 2009' time '11:16:09 am' author 'lr' ancestors ((name 'Grease-Core-lr.5' message '- fixed argument names and some other formatting issues' id '35c4532c-a8a4-4dbd-a856-d15513dec823' date '25 October 2009' time '11:31:51 am' author 'lr' ancestors ((name 'Grease-Core-lr.4' message '- removed duplicated code from string extensions, properly commented all methods' id '3b3f3e4f-d3e6-4f60-8482-be11f9b82404' date '25 October 2009' time '11:20:38 am' author 'lr' ancestors ((name 'Grease-Core-obi.3' message '- add license attribute' id '11a247de-6598-8348-bdf9-9d2b1ab4175d' date '8 October 2009' time '8:32:08 am' author 'obi' ancestors ((name 'Grease-Core-jf.2' message 'recategorization' id 'ed41f639-a256-4ee6-a184-8555fd48a5ea' date '1 October 2009' time '12:45:27 am' author 'jf' ancestors ((name 'Grease-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 '8702f9cb-4c9f-49fe-9b8f-ed45cd2d444a' date '30 September 2009' time '10:47:12 pm' author 'jf' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-jf.9' message '#findString: is not portable - use #indexOfSubCollection:' id '5ba7bcb1-ea63-4fc1-9de2-ea443edec864' date '17 December 2009' time '10:50:18 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 ())(name 'Grease-Core-NickAger.55' message 'added GRSmallDictionary>>#printOn:' id '5b995447-06d6-4525-966b-d22d45444ab9' date '5 February 2011' time '8:26:34 pm' author 'NickAger' ancestors ((id 'c818dcbc-1ead-4a01-9a5b-1c73b160c8b7')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-pmm.64' message '- add base64 comment' id 'c1fb5836-b648-46e8-b535-de41929a88ac' date '28 August 2011' time '9:58:40 am' author 'pmm' ancestors ((id 'f5804cb2-8a68-4da5-a744-6aec2bb22c5f')) stepChildren ())) stepChildren ())(name 'Grease-Core-lr.66' message '- add GRCodecStream>>#print:' id '0a3221fb-c5d8-4ce1-b139-0e6dc72481a2' date '25 September 2011' time '10:13:37 am' author 'lr' ancestors ((name 'Grease-Core-dkh.65' message '1.0.6 (dkh.153): - open 1.0.6 for development - update to latest packages -- update GRPlatform version to 1.0.6' id '3da25c6b-c1ca-4143-ad35-116b50bea34b' date '1 September 2011' time '3:51:36 pm' author 'dkh' ancestors ((id 'c1fb5836-b648-46e8-b535-de41929a88ac')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-pmm.43' message '- Issue 591: WAComboResponse - a combined buffered / streaming response - http://code.google.com/p/seaside/issues/detail?id=591' id 'f7129542-f1fe-4bd2-82ee-f234e31d00e7' date '5 August 2010' time '7:09:54 am' author 'pmm' ancestors ((id '2a422c1b-8310-4790-9185-fc7f522d01e1')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-NickAger.70' message 'changed GRPlatform>>#version to 1.0.7' id 'd48abd90-86bb-4538-ac62-e492a7a4e3f0' date '23 March 2012' time '4:36:01 pm' author 'NickAger' ancestors ((name 'Grease-Core-NickAger.69' message 'further refined the comment to GRDelayedSend ' id 'cab12ed6-1527-4a89-8c41-70e40461806b' date '20 March 2012' time '9:05:29 am' author 'NickAger' ancestors ((name 'Grease-Core-NickAger.68' message 'improved commenting for GRDelayedSend and GRDelayedSendMessage - I was confused by the intent of the classes - hopefully the comments will help others with similar confusion.' id '350d84c7-722f-4318-96d6-d7854ed52047' date '19 March 2012' time '11:23:01 am' author 'NickAger' ancestors ((name 'Grease-Core-NickAger.67' message 'added a new method: GRPlatform>>#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 '364dcb92-0613-4caf-8058-a8c25d65249c' date '9 March 2012' time '2:52:30 pm' author 'NickAger' ancestors ((id '0a3221fb-c5d8-4ce1-b139-0e6dc72481a2')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-pmm.85' message 'Issue 781: Also catch platform deprecation signals - http://code.google.com/p/seaside/issues/detail?id=781' id '792050f8-aab9-4903-9d9d-64ef14554008' date '16 February 2014' time '11:16:53 pm' author 'pmm' ancestors ((id 'cfd4a0a1-464c-44f7-9ebf-8cad9f9ad388')) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-StephanEggermont.87' message 'Added resolve for Pharo4 in GRPackage resolveWith:' id 'fe861b91-7089-436d-98e4-06b764abe7fc' date '2 July 2014' time '7:03:08.283881 pm' author 'StephanEggermont' ancestors ((id '405a05a1-2041-4621-8412-9ff4b9842089')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-JohanBrichau.94' message 'additional file library methods' id '5283728c-3883-45c2-8b4a-0d99c65632ca' date '3 October 2014' time '8:07:43.645747 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.93' message 'Issue 827: GRPlatform >> #deprecationExceptionSet should use ExceptionSet' id '7e4068d6-301d-4e9f-a271-332e6c6adf21' date '6 September 2014' time '12:18:17 pm' author 'pmm' ancestors ((name 'Grease-Core-jok.92' message '' id '7e3bfc78-1fb0-8d43-b65f-050e9d1bf700' date '23 August 2014' time '11:02:48.249694 am' author 'jok' ancestors ((id '6bbf6f41-4d71-47da-a07e-c7d630cfb445')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-TravisCI.100' message 'h4x for Squeak' id '4ef84bab-74af-47fc-86ed-bc55367b9d2c' date '23 August 2016' time '11:02:57.719 am' author 'TravisCI' ancestors ((id 'c93df209-d81b-4162-8f83-6e906d7cc04d')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file +- update GRPlatform version to 1.0.6' id '3da25c6b-c1ca-4143-ad35-116b50bea34b' date '1 September 2011' time '3:51:36 pm' author 'dkh' ancestors ((id 'c1fb5836-b648-46e8-b535-de41929a88ac')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-pmm.43' message '- Issue 591: WAComboResponse - a combined buffered / streaming response - http://code.google.com/p/seaside/issues/detail?id=591' id 'f7129542-f1fe-4bd2-82ee-f234e31d00e7' date '5 August 2010' time '7:09:54 am' author 'pmm' ancestors ((id '2a422c1b-8310-4790-9185-fc7f522d01e1')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-NickAger.70' message 'changed GRPlatform>>#version to 1.0.7' id 'd48abd90-86bb-4538-ac62-e492a7a4e3f0' date '23 March 2012' time '4:36:01 pm' author 'NickAger' ancestors ((name 'Grease-Core-NickAger.69' message 'further refined the comment to GRDelayedSend ' id 'cab12ed6-1527-4a89-8c41-70e40461806b' date '20 March 2012' time '9:05:29 am' author 'NickAger' ancestors ((name 'Grease-Core-NickAger.68' message 'improved commenting for GRDelayedSend and GRDelayedSendMessage - I was confused by the intent of the classes - hopefully the comments will help others with similar confusion.' id '350d84c7-722f-4318-96d6-d7854ed52047' date '19 March 2012' time '11:23:01 am' author 'NickAger' ancestors ((name 'Grease-Core-NickAger.67' message 'added a new method: GRPlatform>>#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 '364dcb92-0613-4caf-8058-a8c25d65249c' date '9 March 2012' time '2:52:30 pm' author 'NickAger' ancestors ((id '0a3221fb-c5d8-4ce1-b139-0e6dc72481a2')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-pmm.85' message 'Issue 781: Also catch platform deprecation signals - http://code.google.com/p/seaside/issues/detail?id=781' id '792050f8-aab9-4903-9d9d-64ef14554008' date '16 February 2014' time '11:16:53 pm' author 'pmm' ancestors ((id 'cfd4a0a1-464c-44f7-9ebf-8cad9f9ad388')) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-StephanEggermont.87' message 'Added resolve for Pharo4 in GRPackage resolveWith:' id 'fe861b91-7089-436d-98e4-06b764abe7fc' date '2 July 2014' time '7:03:08.283881 pm' author 'StephanEggermont' ancestors ((id '405a05a1-2041-4621-8412-9ff4b9842089')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-JohanBrichau.94' message 'additional file library methods' id '5283728c-3883-45c2-8b4a-0d99c65632ca' date '3 October 2014' time '8:07:43.645747 pm' author 'JohanBrichau' ancestors ((name 'Grease-Core-pmm.93' message 'Issue 827: GRPlatform >> #deprecationExceptionSet should use ExceptionSet' id '7e4068d6-301d-4e9f-a271-332e6c6adf21' date '6 September 2014' time '12:18:17 pm' author 'pmm' ancestors ((name 'Grease-Core-jok.92' message '' id '7e3bfc78-1fb0-8d43-b65f-050e9d1bf700' date '23 August 2014' time '11:02:48.249694 am' author 'jok' ancestors ((id '6bbf6f41-4d71-47da-a07e-c7d630cfb445')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'Grease-Core-TravisCI.100' message 'h4x for Squeak' id '4ef84bab-74af-47fc-86ed-bc55367b9d2c' date '23 August 2016' time '11:02:57.719 am' author 'TravisCI' ancestors ((id 'c93df209-d81b-4162-8f83-6e906d7cc04d')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/instance/encodeOn..st b/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/instance/encodeOn..st new file mode 100644 index 00000000..5d361f76 --- /dev/null +++ b/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/instance/encodeOn..st @@ -0,0 +1,5 @@ +*Grease-Pharo30-Core +encodeOn: aDocument + | converter | + converter := GRSignPrinter new, (GRNumberPrinter new precision: self scale). + converter print: self on: aDocument \ No newline at end of file diff --git a/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/methodProperties.json b/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/methodProperties.json index 49a82b64..64d2292a 100644 --- a/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/methodProperties.json +++ b/repository/Grease-Pharo30-Core.package/ScaledDecimal.extension/methodProperties.json @@ -2,4 +2,5 @@ "class" : { }, "instance" : { + "encodeOn:" : "pmm 8/25/2016 18:52", "greaseString" : "JohanBrichau 5/25/2015 08:55" } } diff --git a/repository/Grease-Pharo30-Core.package/monticello.meta/version b/repository/Grease-Pharo30-Core.package/monticello.meta/version index d67a908c..f3eab2b5 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-pmm.20' message '- lint fixes' id 'ec123007-ffe6-483d-aba9-e36840b7a24c' date '25 August 2016' time '11:03:48.029702 am' author 'pmm' ancestors ((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 ())) stepChildren ()) \ No newline at end of file +(name 'Grease-Pharo30-Core-pmm.21' message '- direct rendering for ScaledDecimal' id 'db8b6a8e-ce95-4c7b-817a-0fc352c0c000' date '26 August 2016' time '8:56:20.501423 am' author 'pmm' ancestors ((name 'Grease-Pharo30-Core-pmm.20' message '- lint fixes' id 'ec123007-ffe6-483d-aba9-e36840b7a24c' date '25 August 2016' time '11:03:48.029702 am' author 'pmm' ancestors ((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 ())) stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/README.md b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/instance/collectionClass.st b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/instance/collectionClass.st new file mode 100644 index 00000000..4bf83132 --- /dev/null +++ b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/instance/collectionClass.st @@ -0,0 +1,3 @@ +configuration +collectionClass + ^ GROrderedMultiMap2 \ No newline at end of file diff --git a/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/methodProperties.json b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/methodProperties.json new file mode 100644 index 00000000..0f82ab58 --- /dev/null +++ b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "collectionClass" : "pmm 8/26/2016 15:38" } } diff --git a/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/properties.json b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/properties.json new file mode 100644 index 00000000..2444d848 --- /dev/null +++ b/repository/Grease-Tests-Core.package/GROrderedMultiMap2Test.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Tests-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GROrderedMultiMap2Test", + "pools" : [ + ], + "super" : "GROrderedMultiMapTest", + "type" : "normal" } diff --git a/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/README.md b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/README.md new file mode 100644 index 00000000..e69de29b diff --git a/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/instance/collectionClass.st b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/instance/collectionClass.st new file mode 100644 index 00000000..94c36b81 --- /dev/null +++ b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/instance/collectionClass.st @@ -0,0 +1,3 @@ +configuration +collectionClass + ^ GRSmallDictionary2 \ No newline at end of file diff --git a/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/methodProperties.json b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/methodProperties.json new file mode 100644 index 00000000..0f82ab58 --- /dev/null +++ b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + "collectionClass" : "pmm 8/26/2016 15:38" } } diff --git a/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/properties.json b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/properties.json new file mode 100644 index 00000000..81c57b1f --- /dev/null +++ b/repository/Grease-Tests-Core.package/GRSmallDictionary2Test.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "Grease-Tests-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "GRSmallDictionary2Test", + "pools" : [ + ], + "super" : "GRSmallDictionaryTest", + "type" : "normal" } diff --git a/repository/Grease-Tests-Core.package/monticello.meta/version b/repository/Grease-Tests-Core.package/monticello.meta/version index b9df2aea..175587dc 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-pmm.106' message '- add new #keysAndAllValuesDo:' id 'bfbbb90b-78dc-4c42-9f40-ce07352c9d53' date '25 August 2016' time '3:24:29.901974 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.105' message '- add GRSmallOrderedSet' id 'f0b315d3-0448-4764-8e28-96db57facb05' date '25 August 2016' time '2:55:37.243319 pm' author 'pmm' ancestors ((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 ())) stepChildren ())) stepChildren ()) \ No newline at end of file +(name 'Grease-Tests-Core-pmm.107' message '- revert SmallDictionary changes for now' id '8314abad-f651-49f1-9fd7-d8737b4c0f2e' date '26 August 2016' time '4:00:15.004248 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.106' message '- add new #keysAndAllValuesDo:' id 'bfbbb90b-78dc-4c42-9f40-ce07352c9d53' date '25 August 2016' time '3:24:29.901974 pm' author 'pmm' ancestors ((name 'Grease-Tests-Core-pmm.105' message '- add GRSmallOrderedSet' id 'f0b315d3-0448-4764-8e28-96db57facb05' date '25 August 2016' time '2:55:37.243319 pm' author 'pmm' ancestors ((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 ())) stepChildren ())) stepChildren ())) stepChildren ()) \ No newline at end of file