Skip to content

Commit b575b9a

Browse files
Merge pull request #225 from OpenSmock/dev-p13
add pharo 13 CI + update readme file
2 parents 7bc5e1e + 6233d93 commit b575b9a

83 files changed

Lines changed: 233 additions & 147 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,33 @@
1-
name: 'Pharo 11 CI'
2-
3-
env:
4-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5-
6-
on:
7-
push:
8-
branches:
9-
- 'main'
10-
pull_request:
11-
types: [assigned, opened, synchronize, reopened]
12-
13-
jobs:
14-
build:
15-
strategy:
16-
matrix:
17-
os: [ ubuntu-latest, macos-latest, windows-latest ]
18-
smalltalk: [ Pharo64-11 ]
19-
runs-on: ${{ matrix.os }}
20-
name: ${{ matrix.smalltalk }} on ${{ matrix.os }}
21-
steps:
22-
- uses: actions/checkout@v3
23-
- uses: hpi-swa/setup-smalltalkCI@v1
24-
with:
25-
smalltalk-image: ${{ matrix.smalltalk }}
26-
- name: Load in New Image and Run Tests
27-
run: smalltalkci -s ${{ matrix.smalltalk }} ${{ matrix.ston }}
28-
shell: bash
29-
timeout-minutes: 15
1+
name: 'CI'
2+
3+
env:
4+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5+
6+
on:
7+
push:
8+
branches:
9+
- 'main'
10+
pull_request:
11+
types: [assigned, opened, synchronize, reopened]
12+
13+
jobs:
14+
test:
15+
strategy:
16+
matrix:
17+
os: [ ubuntu-latest, macos-latest, windows-latest ]
18+
smalltalk: [ Pharo64-11, Pharo64-12, Pharo64-13 ]
19+
ston: [ .smalltalkci.default.ston ]
20+
runs-on: ${{ matrix.os }}
21+
name: >
22+
${{ matrix.smalltalk }} • ${{ matrix.os }}
23+
steps:
24+
- uses: actions/checkout@v3
25+
26+
- uses: hpi-swa/setup-smalltalkCI@v1
27+
with:
28+
smalltalk-image: ${{ matrix.smalltalk }}
29+
30+
- name: Run ${{ matrix.ston == '.smalltalkci.default.ston' && 'Full' || 'Core' }} tests
31+
run: smalltalkci -s ${{ matrix.smalltalk }} ${{ matrix.ston }}
32+
shell: bash
33+
timeout-minutes: 30

.github/workflows/Pharo12CI.yml

Lines changed: 0 additions & 29 deletions
This file was deleted.
Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,14 @@ SmalltalkCISpec {
77
#baseline : 'Pyramid',
88
#directory : 'src',
99
#onConflict : #useLoaded,
10+
#onUpgrade : #useLoaded,
11+
#onWarningLog : true,
1012
#platforms : [ #pharo ]
1113
}
1214
],
1315
#testing : {
1416
#categories : [ 'Pyramid*' ],
15-
#packages : [ 'Bloc-Serialization.*' ]
17+
#packages : [ 'Bloc-Serialization.*' ],
18+
#packages : [ 'Toplo-Serialization.*' ]
1619
}
17-
}
20+
}

README.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1-
[![License](https://img.shields.io/github/license/openSmock/Pyramid.svg)](./LICENSE)
2-
[![Pharo 11 CI](https://github.com/OpenSmock/Pyramid/actions/workflows/Pharo11CI.yml/badge.svg)](https://github.com/OpenSmock/Pyramid/actions/workflows/Pharo11CI.yml)
3-
[![Pharo 12 CI](https://github.com/OpenSmock/Pyramid/actions/workflows/Pharo12CI.yml/badge.svg)](https://github.com/OpenSmock/Pyramid/actions/workflows/Pharo12CI.yml)
1+
[![Pharo 11](https://img.shields.io/badge/Pharo-11-%23aac9ff.svg)](https://pharo.org/download)
2+
[![Pharo 12](https://img.shields.io/badge/Pharo-12-%23aac9ff.svg)](https://pharo.org/download)
3+
[![Pharo 13](https://img.shields.io/badge/Pharo-13-%23aac9ff.svg)](https://pharo.org/download)
4+
5+
[![License](https://img.shields.io/github/license/OpenSmock/Pyramid.svg)](./LICENSE)
6+
[![Unit tests](https://github.com/OpenSmock/Pyramid/actions/workflows/CI.yml/badge.svg)](https://github.com/OpenSmock/Pyramid/actions/workflows/CI.yml)
47

58
# Pyramid
69

@@ -145,6 +148,8 @@ https://github.com/OpenSmock/Pyramid/assets/49183340/0c66a3ac-7bea-48c1-b1e8-0b0
145148
- [STON](https://github.com/svenvc/ston) - serializer for Pharo objects to Smalltalk Object Notation format.
146149
- [Stash](https://github.com/Nyan11/Stash) - serializer for Pharo objects to source code format.
147150

151+
**Pharo 12 compatibility:** On Pharo 12, [PharoBackwardCompatibility](https://github.com/jecisc/PharoBackwardCompatibility) is automatically loaded via the baseline to ensure compatibility.
152+
148153
## <img src="/assets/PyramidPinPtah.svg" width="75" height="75" align="bottom"> License
149154

150155
<picture>

src/BaselineOfPyramid/BaselineOfPyramid.class.st

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ BaselineOfPyramid >> baseline: spec [
99

1010
<baseline>
1111
"Common baseline for all Pharo versions"
12-
spec for: #common do: [ self baselineForCommon: spec ]
12+
spec for: #common do: [ self baselineForCommon: spec ]
1313
]
1414

1515
{ #category : #baselines }
@@ -19,6 +19,11 @@ BaselineOfPyramid >> baselineForCommon: spec [
1919
spec preLoadDoIt: #preload:package:.
2020
spec postLoadDoIt: #postload:package:.
2121

22+
"Pharo backward compatibility: to preserve running from previous versions of Pharo"
23+
spec
24+
baseline: 'PharoBackwardCompatibility'
25+
with: [ spec repository: 'github://jecisc/PharoBackwardCompatibility:master/src' ].
26+
2227
"Dependencies"
2328
self blocDependencies: spec.
2429
self toploDependencies: spec.
@@ -79,7 +84,9 @@ BaselineOfPyramid >> preload: loader package: packageSpec [
7984
{ #category : #packages }
8085
BaselineOfPyramid >> pyramidPackages: spec [
8186

82-
spec package: 'Pyramid'.
87+
spec
88+
package: 'Pyramid'
89+
with:[ spec requires: #( 'PharoBackwardCompatibility' ) ].
8390
spec
8491
package: 'Pyramid-IDE'
8592
with: [ spec requires: #( 'Pyramid' ) ].
@@ -100,7 +107,7 @@ BaselineOfPyramid >> toploPackages: spec [
100107

101108
spec
102109
package: 'Pyramid-Toplo'
103-
with: [ spec requires: #( 'ToploSerialization') ].
110+
with: [ spec requires: #( 'ToploSerialization' ) ].
104111

105112
spec
106113
package: 'Pyramid-Toplo-Tests'

src/Pyramid-Bloc/PyramidSaveModelVerifier.class.st

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,10 @@ PyramidSaveModelVerifier class >> classPackageIsEqual [
4747
PyramidSaveModelVerifier class >> methodIsValid [
4848

4949
^ self new
50-
verifyBlock: [ :model | model savingMethodName isValidSelector ];
50+
verifyBlock: [ :model |
51+
model savingMethodName isValidSelector ];
5152
showBlock: [ :view | view showMethodIsNotValidError ];
52-
yourself.
53-
53+
yourself
5454
]
5555

5656
{ #category : #constructor }

src/Pyramid-Bloc/PyramidSavingService.class.st

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ PyramidSavingService class >> stash [
6363
classifier: #'pyramid-serialized-bloc';
6464
comment: [
6565
'This class has been generated using Pyramid.<r><r><t>By: <1s><r><t><2s> <3s>'
66-
expandMacrosWith: Author uniqueInstance fullName
66+
expandMacrosWith: ''
6767
with: Date today yyyymmdd
6868
with: Time now print24 ];
6969
pragma: 'pyStash';
@@ -81,9 +81,9 @@ PyramidSavingService class >> ston [
8181
classifier: #'pyramid-serialized-bloc';
8282
comment: [
8383
'This class has been generated using Pyramid.<r><r><t>By: <1s><r><t><2s> <3s>'
84-
expandMacrosWith: Author uniqueInstance fullName
85-
with: Date today yyyymmdd
86-
with: Time now print24 ];
84+
expandMacrosWith: ''
85+
with: Date today yyyymmdd
86+
with: Time now print24 ];
8787
pragma: 'pySTON';
8888
serializeBlock: [ :collection |
8989
'<1p>' expandMacrosWith:

src/Pyramid-Tests/PyramidColorInputMultiLinesPresenterTest.class.st

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ PyramidColorInputMultiLinesPresenterTest >> makeNewInput [
3737
{ #category : #'as yet unclassified' }
3838
PyramidColorInputMultiLinesPresenterTest >> triggerValueChangedOf: anInput [
3939

40+
anInput hexaInput hexInput textInput ensureInternalActions
41+
decoratedGroup entries do: [ :bind | bind execute ]
42+
]
43+
44+
{ #category : #'as yet unclassified' }
45+
PyramidColorInputMultiLinesPresenterTest >> triggerValueChangedOfForPharo12AndBelow: anInput [
46+
4047
anInput hexaInput hexInput textInput contextKeyBindings keymaps do: [ :bind |
4148
bind action value ]
4249
]

src/Pyramid-Tests/PyramidColorInputSingleLinePresenterTest.class.st

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ PyramidColorInputSingleLinePresenterTest >> makeNewInput [
3737
{ #category : #'as yet unclassified' }
3838
PyramidColorInputSingleLinePresenterTest >> triggerValueChangedOf: anInput [
3939

40+
anInput hexInput textInput ensureInternalActions decoratedGroup
41+
entries do: [ :bind | bind execute ]
42+
]
43+
44+
{ #category : #'as yet unclassified' }
45+
PyramidColorInputSingleLinePresenterTest >> triggerValueChangedOfForPharo12AndBelow: anInput [
46+
4047
anInput hexInput textInput contextKeyBindings keymaps do: [ :bind |
4148
bind action value ]
4249
]

src/Pyramid-Tests/PyramidColorInputSingleLineWithPickupButtonPresenterTest.class.st

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ PyramidColorInputSingleLineWithPickupButtonPresenterTest >> makeNewInput [
3737
{ #category : #'as yet unclassified' }
3838
PyramidColorInputSingleLineWithPickupButtonPresenterTest >> triggerValueChangedOf: anInput [
3939

40+
anInput singleLineInput hexInput textInput ensureInternalActions
41+
decoratedGroup entries do: [ :bind | bind execute ]
42+
]
43+
44+
{ #category : #'as yet unclassified' }
45+
PyramidColorInputSingleLineWithPickupButtonPresenterTest >> triggerValueChangedOfForPharo12AndBelow: anInput [
46+
4047
anInput singleLineInput hexInput textInput contextKeyBindings keymaps do: [ :bind |
4148
bind action value ]
4249
]

0 commit comments

Comments
 (0)