X Tutup
Skip to content

Commit da7e630

Browse files
author
Johan Brichau
committed
Merge commit 'c9f536d0d21474b376d8ea3e54d99bfccb43baa0' into dev
2 parents 439c46a + c9f536d commit da7e630

File tree

72 files changed

+372
-379
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+372
-379
lines changed

README.md

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1+
**IMPORTANT**: Since version 1.3.0, this is the main repository of Grease. Versions older than 1.1.9 can be found in the [Smalltalkhub repository](http://www.smalltalkhub.com/#!/~Seaside/Grease11). Check out the [releases list](https://github.com/SeasideSt/Grease/releases) for all version numbers in this repository.
2+
13
The Grease Portability Library [![Build Status](https://travis-ci.org/SeasideSt/Grease.png?branch=master)](https://travis-ci.org/SeasideSt/Grease)
24
======
3-
4-
The main repository of Grease is on Smalltalkhub: (http://www.smalltalkhub.com/#!/~Seaside/Grease11). This repository mirrors it.
5-
65
Grease enhances the ANSI Smalltalk standard. With only a few exceptions, we assume platforms are fully ANSI-compliant. Platforms want to support Seaside and standardization makes this easier for the project’s developers and its porters.
76

87
Grease defines expected APIs with unit tests. Platforms can quickly determine if they are compatible and users can examine the tests to determine exactly which behaviours they can count on.
@@ -28,26 +27,41 @@ The [Travis CI builds](https://travis-ci.org/SeasideSt/Grease) currently test Gr
2827

2928
## Installation
3029

31-
### Squeak and Pharo
30+
#### Prerequisite on Squeak and Pharo <3.0
31+
32+
Make sure you have the [MetacelloPreview version](https://github.com/dalehenrich/metacello-work), otherwise the load will not work.
33+
34+
### Squeak and Pharo >=3.0
3235

33-
Make sure you have the [MetacelloPreview version](https://github.com/dalehenrich/metacello-work), otherwise the load will not work. You have two options for loading: from Smalltalkhub or from Github.
36+
Load the latest code from master (i.e. stable):
3437

35-
Load from Smalltalkhub:
3638
```Smalltalk
3739
Metacello new
38-
configuration: 'Grease';
39-
repository: 'http://www.smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main';
40-
version: #stable;
40+
baseline: 'Grease';
41+
githubUser: 'SeasideSt' project: 'Grease' commitish: 'master' path: 'repository';
4142
load
4243
```
4344
-or-
44-
Load from: Github:
45+
46+
Load a specific version:
47+
4548
```Smalltalk
4649
Metacello new
4750
baseline: 'Grease';
48-
githubUser: 'SeasideSt' project: 'Grease' commitish: '' path: 'repository';
51+
githubUser: 'SeasideSt' project: 'Grease' commitish: 'v1.3.0' path: 'repository';
4952
load
5053
```
54+
-or-
55+
56+
Legacy: load from Smalltalkhub:
57+
```Smalltalk
58+
Metacello new
59+
configuration: 'Grease';
60+
repository: 'http://www.smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main';
61+
version: '1.0.0';
62+
load
63+
```
64+
5165
### GemStone
5266

5367
Grease is part of the GLASS setup. You can upgrade your version of Grease using [GsUpgrader](https://github.com/GsDevKit/gsUpgrader).

repository/BaselineOfGrease.package/BaselineOfGrease.class/instance/baseline..st

Lines changed: 7 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -15,81 +15,31 @@ baseline: spec
1515
group: 'Slime Tests' with: #('Core Tests');
1616
group: 'Tests' with: #('Core Tests' 'Slime Tests');
1717
group: 'default' with: #('Slime') ].
18-
spec
19-
for: #'squeak4.x'
20-
do: [
21-
spec
22-
package: 'Grease-Core'
23-
with: [ spec includes: #('Grease-Pharo-Core' 'Grease-Squeak-Core') ];
24-
package: 'Grease-Tests-Core'
25-
with: [ spec includes: #('Grease-Tests-Pharo-Core' 'Grease-Tests-Squeak-Core') ];
26-
package: 'Grease-Pharo-Core' with: [ spec requires: #('Grease-Core') ];
27-
package: 'Grease-Tests-Pharo-Core'
28-
with: [ spec requires: #('Grease-Tests-Core') ];
29-
package: 'Grease-Squeak-Core'
30-
with: [ spec requires: #('Grease-Pharo-Core') ];
31-
package: 'Grease-Tests-Squeak-Core'
32-
with: [ spec requires: #('Grease-Tests-Pharo-Core') ].
33-
self slimeForSqueakPharo1xPharo2x: spec ].
18+
3419
spec
3520
for: #'squeak5.x'
3621
do: [
3722
spec
3823
package: 'Grease-Core'
3924
with: [ spec includes: #('Grease-Squeak5-Core') ];
4025
package: 'Grease-Tests-Core'
41-
with: [ spec includes: #('Grease-Tests-Squeak-Core' 'Grease-Tests-Squeak5-Core') ];
26+
with: [ spec requires: #('Grease-Squeak5-Core'); includes: #('Grease-Tests-Squeak-Core' 'Grease-Tests-Squeak5-Core') ];
4227
package: 'Grease-Squeak5-Core'
4328
with: [ spec requires: #('Grease-Core') ];
4429
package: 'Grease-Tests-Squeak-Core'
4530
with: [ spec requires: #('Grease-Tests-Core') ];
4631
package: 'Grease-Tests-Squeak5-Core'
4732
with: [ spec requires: #('Grease-Tests-Squeak-Core') ].
4833
self slimeForSqueakPharo1xPharo2x: spec ].
49-
spec
50-
for: #'pharo1.0'
51-
do: [
52-
spec
53-
package: 'Grease-Pharo-Core'
54-
with: [ spec includes: #('Grease-Pharo10-Core' 'Grease-Pharo11-Core') ] ].
55-
spec
56-
for: #'pharo1.x'
57-
do: [
58-
spec
59-
package: 'Grease-Core' with: [ spec includes: #('Grease-Pharo-Core') ];
60-
package: 'Grease-Tests-Core'
61-
with: [ spec includes: #('Grease-Tests-Pharo-Core') ];
62-
package: 'Grease-Pharo-Core' with: [ spec requires: #('Grease-Core') ];
63-
package: 'Grease-Tests-Pharo-Core'
64-
with: [ spec requires: #('Grease-Tests-Core') ].
65-
self slimeForSqueakPharo1xPharo2x: spec ].
66-
spec
67-
for: #'pharo1.1'
68-
do: [
69-
spec
70-
package: 'Grease-Pharo-Core'
71-
with: [ spec includes: #('Grease-Pharo11-Core') ] ].
72-
spec
73-
for: #'pharo2.x'
74-
do: [
75-
spec
76-
package: 'Grease-Core'
77-
with: [ spec includes: #('Grease-Pharo20-Core') ];
78-
package: 'Grease-Tests-Core'
79-
with: [ spec includes: #('Grease-Tests-Pharo20-Core') ];
80-
package: 'Grease-Pharo20-Core'
81-
with: [ spec requires: #('Grease-Core') ];
82-
package: 'Grease-Tests-Pharo20-Core'
83-
with: [ spec requires: #('Grease-Tests-Core') ].
84-
self slimeForSqueakPharo1xPharo2x: spec ].
34+
8535
spec
8636
for: #'pharo3.x'
8737
do: [
8838
spec
8939
package: 'Grease-Core'
9040
with: [ spec includes: #('Grease-Pharo30-Core') ];
9141
package: 'Grease-Tests-Core'
92-
with: [ spec includes: #('Grease-Tests-Pharo20-Core') ];
42+
with: [ spec requires: #('Grease-Pharo30-Core'); includes: #('Grease-Tests-Pharo20-Core') ];
9343
package: 'Grease-Pharo30-Core'
9444
with: [ spec requires: #('Grease-Core') ];
9545
package: 'Grease-Tests-Pharo20-Core'
@@ -107,7 +57,7 @@ baseline: spec
10757
package: 'Grease-Core'
10858
with: [ spec includes: #('Grease-Pharo30-Core') ];
10959
package: 'Grease-Tests-Core'
110-
with: [ spec includes: #('Grease-Tests-Pharo20-Core') ];
60+
with: [ spec requires: #('Grease-Pharo30-Core'); includes: #('Grease-Tests-Pharo20-Core') ];
11161
package: 'Grease-Pharo30-Core'
11262
with: [ spec requires: #('Grease-Core') ];
11363
package: 'Grease-Tests-Pharo20-Core'
@@ -126,7 +76,7 @@ baseline: spec
12676
package: 'Grease-Core'
12777
with: [ spec includes: #('Grease-Pharo60-Core') ];
12878
package: 'Grease-Tests-Core'
129-
with: [ spec includes: #('Grease-Tests-Pharo20-Core') ];
79+
with: [ spec requires: #('Grease-Pharo60-Core'); includes: #('Grease-Tests-Pharo20-Core') ];
13080
package: 'Grease-Pharo60-Core'
13181
with: [ spec requires: #('Grease-Core') ];
13282
package: 'Grease-Tests-Pharo20-Core'
@@ -168,7 +118,7 @@ baseline: spec
168118
requires: #('GsCore');
169119
includes: #('Grease-GemStone-Core') ];
170120
package: 'Grease-Tests-Core'
171-
with: [ spec includes: #('Grease-Tests-GemStone-Core') ];
121+
with: [ spec requires: #('Grease-GemStone-Core'); includes: #('Grease-Tests-GemStone-Core') ];
172122
package: 'Grease-GemStone-Core'
173123
with: [
174124
spec

repository/BaselineOfGrease.package/BaselineOfGrease.class/methodProperties.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"instance" : {
33
"initializeLatin1ToUtf8Encodings" : "JohanBrichau 10/19/2014 10:00",
44
"slimeForSqueakPharo1xPharo2x:" : "JohanBrichau 02/16/2014 03:49",
5-
"baseline:" : "JohanBrichau 5/25/2017 12:45"
5+
"baseline:" : "JohanBrichau 7/23/2017 19:28"
66
},
77
"class" : { }
88
}

repository/BaselineOfGrease.package/monticello.meta/version

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
(name 'BaselineOfGrease-JohanBrichau.18' message 'Pharo 6 compatibility' id 'd2d614aa-b80c-0d00-b4b6-ae9900bfc9db' date '25 May 2017' time '12:46:04.246978 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.17' message 'Added pharo6' id '52335469-982c-483b-a975-4518820b9bcf' date '25 May 2017' time '11:20:35.004053 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-dkh.16' message 'merged by GitFileTree-MergeDriver' id '644ab134-dd42-4b9f-948b-c277cd963d5d' date '26 August 2016' time '5:20:50.221776 am' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.15' message 'merged by GitFileTree-MergeDriver' id '86b6f4f6-f95f-4bd7-9224-f31c5460e354' date '4 April 2016' time '9:40:53.04415 am' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.10' message 'update for GemStone 3.4 ...' id 'ad7f9331-d83f-4976-bf57-1d1e81111fc6' date '21 December 2015' time '3:07:11 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.9' message 'Update baseline for GemStone 3.3' id 'af9364dd-14bc-4e5e-9fc7-0abe08732ab2' date '26 May 2015' time '11:46:07 am' author 'dkh' ancestors ((name 'BaselineOfGrease-JohanBrichau.8' message 'separate package for Squeak' id '91c019c7-2b8b-40c3-97d9-2047a69512a7' date '22 March 2015' time '12:01:37 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.7' message 'included Pharo 4 and did some baseline formatting' id '3722041d-d4b5-4496-a25a-0e891fe9a945' date '8 November 2014' time '9:28:01 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.6' message 'added initializeLatin1ToUtf8Encodings' id '4d976044-1aa9-44b6-bab0-b66ac758b3cd' date '19 October 2014' time '10:05:25 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.6' message 'added initializeLatin1ToUtf8Encodings' id 'b4ac5766-d472-4557-beff-59e5b733bce0' date '19 October 2014' time '10:04:55 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-dkh.5' message 'typoe' id '93eb3230-7956-4a6e-85dc-243f3dd895a1' date '4 June 2014' time '3:13:26 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.4' message 'woops specified the package branch incorrectly ... I think I got it right this time...' id '3003ee31-9d17-4dd1-9b9a-f8a80e4f0ba1' date '4 June 2014' time '3:12:31 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-dkh.3' message 'add Grease-Tests-GemStone-Core.v32 to baseline' id '26f128ca-b62e-4295-9a58-a9758b670c37' date '4 June 2014' time '2:57:48 pm' author 'dkh' ancestors ((name 'BaselineOfGrease-JohanBrichau.2' message 'forgotten methods' id '38758da9-c922-4530-a19e-f8783900e787' date '16 February 2014' time '3:50:22 am' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.1' message 'first baseline' id 'b89398df-14c6-4b6a-a2ba-91ad806bb07f' date '16 February 2014' time '1:49:46 am' author 'JohanBrichau' ancestors () stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'BaselineOfGrease-JohanBrichau.14' message 'Ensure Squeak5 tests package is loaded in Squeak5' id 'abde1bd6-a8d6-45fc-a922-bcf63ec38f03' date '27 February 2016' time '1:47:23.046532 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.13' message 'Forked Grease-Tests-Pharo-Core into Grease-Tests-Squeak5-Core' id '3a01ebbc-8859-45db-ae5a-e5de8073d3a4' date '27 February 2016' time '1:40:18.726436 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.12' message 'added Pharo-Tests to Squeak5 load' id 'ffe11ade-e4f1-496d-ae59-74543cfad134' date '27 February 2016' time '1:21:56.832518 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.11' message 'added pharo5 platform to baseline' id '5c0332e9-ef4c-43cd-9066-7c9fe9ed6506' date '27 February 2016' time '12:12:12.067693 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.10' message 'added squeak 5 platform' id '18f9d568-869f-4550-804a-b0ba101f33f3' date '13 December 2015' time '8:36:25.150207 pm' author 'JohanBrichau' ancestors ((id 'af9364dd-14bc-4e5e-9fc7-0abe08732ab2')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())(name 'BaselineOfGrease-dkh.15' message 'merged by GitFileTree-MergeDriver' id '415af41c-2c3d-40a8-9f75-d9e8de921224' date '26 August 2016' time '2:19:29.551006 pm' author 'dkh' ancestors ((id 'ad7f9331-d83f-4976-bf57-1d1e81111fc6')(id 'abde1bd6-a8d6-45fc-a922-bcf63ec38f03')) stepChildren ())) stepChildren ())) stepChildren ())) stepChildren ())
1+
(name 'BaselineOfGrease-JohanBrichau.1496564071' message 'Fixed dependency of Grease-Tests-Core on the platform packages for GRDynamicVariableTest' id '6dd3612c-6111-0d00-8806-761908c307d1' date '23 July 2017' time '7:29:11.347398 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.1496564070' message '- Removed pharo1.x and 2.x from the baseline since no longer supported.- Fixed dependency of Grease-Tests-Core on the platform packages for GRDynamicVariableTest' id 'd3220dff-6011-0d00-8805-b8f708c307d1' date '23 July 2017' time '7:16:30.82261 pm' author 'JohanBrichau' ancestors ((name 'BaselineOfGrease-JohanBrichau.1496564069' message 'Updated load snippets [ci skip]
2+
' id '26eaf907-cb05-504d-b251-ce1bcf3132ec' date '4 June 2017' time '10:14:29 am' author 'JohanBrichau' ancestors () stepChildren ())) stepChildren ())) stepChildren ())
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
defaults
2+
default
3+
^ self defaultValue
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
defaults
2+
defaultValue
3+
^ nil
Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
accessing
22
use: anObject during: aBlock
3-
4-
| p oldValue result |
5-
"Proper implementation instead of use 'super value:during:' because that one does not return value, perhaps this should be fixed in DynamicVariable?"
6-
p := Processor activeProcess.
7-
oldValue := p environmentAt: self ifAbsent: [self default].
8-
[
9-
p environmentAt: self put: anObject.
10-
result := aBlock value.
11-
] ensure: [
12-
p environmentAt: self put: oldValue
13-
].
14-
^ result
3+
| p oldValue result |
4+
"Proper implementation instead of use 'super value:during:' because that one does not return value, perhaps this should be fixed in DynamicVariable?"
5+
p := Processor activeProcess.
6+
oldValue := p environmentAt: self.
7+
[
8+
p environmentAt: self put: anObject.
9+
result := aBlock value ]
10+
ensure: [ p environmentAt: self put: oldValue ].
11+
^ result
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
{
22
"class" : {
3-
"use:during:" : "JohanBrichau 05/25/2017 08:13" },
3+
"default" : "JohanBrichau 07/23/2017 09:48",
4+
"defaultValue" : "JohanBrichau 07/23/2017 09:47",
5+
"use:during:" : "JohanBrichau 07/23/2017 07:39" },
46
"instance" : {
57
} }

repository/Grease-GemStone-Core.package/monticello.meta/version

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
accessing
2+
defaultValue
3+
^ nil

0 commit comments

Comments
 (0)
X Tutup