diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 733dd1ef1..f06bbd2ee 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,7 +8,7 @@ jobs: strategy: fail-fast: false matrix: - smalltalk: [ Pharo64-11, Pharo64-10, Pharo64-9.0, Pharo64-8.0, Pharo64-7.0, GemStone64-3.7.0, GemStone64-3.6.6, GemStone64-3.5.7 ] + smalltalk: [ Pharo64-11, Pharo64-10, Pharo64-9.0, Pharo64-8.0, GemStone64-3.7.1, GemStone64-3.6.8, GemStone64-3.5.7 ] experimental: [ false ] include: - smalltalk: Pharo64-12 @@ -47,6 +47,7 @@ jobs: name: Screenshots Test Failures ${{ matrix.smalltalk }} path: ${{ env.SMALLTALK_CI_BUILD }}/*.png - name: Upload coverage to Codecov - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 with: name: ${{ matrix.smalltalk }} + token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.smalltalk.ston b/.smalltalk.ston index d8328688a..47b543ed3 100644 --- a/.smalltalk.ston +++ b/.smalltalk.ston @@ -27,6 +27,10 @@ SmalltalkCISpec { #platforms : [ #gemstone ] } ], + #preTesting : SCICustomScript { + #path : 'scripts/preTestingPharo.st', + #platforms : [ #pharo ] + }, #testing : { #defaultTimeout : 30, #exclude : { diff --git a/repository/Seaside-Pharo110-Slime.package/WAChangesStateWhileRenderingRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WAChangesStateWhileRenderingRule.class/instance/afterCheck.mappings..st index 000f2516d..ab4e81938 100644 --- a/repository/Seaside-Pharo110-Slime.package/WAChangesStateWhileRenderingRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WAChangesStateWhileRenderingRule.class/instance/afterCheck.mappings..st @@ -1,7 +1,7 @@ hooks afterCheck: aNode mappings: dict - aNode methodNode method isRenderingMethod ifFalse: [ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse: [ ^ false ]. aNode isWrite ifFalse: [ ^ false ]. (WASlime isWithinCallback: aNode) ifTrue:[ ^ false ]. diff --git a/repository/Seaside-Pharo110-Slime.package/WADoNotUseWhileRenderingRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WADoNotUseWhileRenderingRule.class/instance/afterCheck.mappings..st index f9f265d7d..cffed377c 100644 --- a/repository/Seaside-Pharo110-Slime.package/WADoNotUseWhileRenderingRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WADoNotUseWhileRenderingRule.class/instance/afterCheck.mappings..st @@ -1,6 +1,6 @@ hooks afterCheck: aNode mappings: dict - aNode methodNode method isRenderingMethod ifFalse: [ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse: [ ^ false ]. (WASlime isWithinCallback: aNode) ifTrue: [ ^ false ]. ^ true \ No newline at end of file diff --git a/repository/Seaside-Pharo110-Slime.package/WADoNotUseWithinCallbackRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WADoNotUseWithinCallbackRule.class/instance/afterCheck.mappings..st index 03ab3336d..8bbfa7bdd 100644 --- a/repository/Seaside-Pharo110-Slime.package/WADoNotUseWithinCallbackRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WADoNotUseWithinCallbackRule.class/instance/afterCheck.mappings..st @@ -1,6 +1,6 @@ hooks afterCheck: aNode mappings: dict - aNode methodNode method isRenderingMethod ifFalse: [ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse: [ ^ false ]. (WASlime isWithinCallback: aNode) ifFalse: [ ^ false ]. ^ true \ No newline at end of file diff --git a/repository/Seaside-Pharo110-Slime.package/WAInstantiatesComponentWhileRenderingRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WAInstantiatesComponentWhileRenderingRule.class/instance/afterCheck.mappings..st index 68d517659..e0e263129 100644 --- a/repository/Seaside-Pharo110-Slime.package/WAInstantiatesComponentWhileRenderingRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WAInstantiatesComponentWhileRenderingRule.class/instance/afterCheck.mappings..st @@ -2,7 +2,7 @@ hooks afterCheck: aNode mappings: dict | class | - aNode methodNode method isRenderingMethod ifFalse: [ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse: [ ^ false ]. class := Smalltalk classNamed: aNode receiver name. class ifNil: [ ^ false ]. ^ class isBehavior and: [ diff --git a/repository/Seaside-Pharo110-Slime.package/WASequencedAsynchronousCallsRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WASequencedAsynchronousCallsRule.class/instance/afterCheck.mappings..st index 1058f3782..133d00257 100644 --- a/repository/Seaside-Pharo110-Slime.package/WASequencedAsynchronousCallsRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WASequencedAsynchronousCallsRule.class/instance/afterCheck.mappings..st @@ -2,7 +2,7 @@ hooks afterCheck: aNode mappings: dict | owner | - aNode methodNode method isRenderingMethod ifFalse:[ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse:[ ^ false ]. owner := aNode isCascaded ifTrue: [ aNode parent parent ] ifFalse: [ aNode parent ]. diff --git a/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryBlockPassedToBrushRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryBlockPassedToBrushRule.class/instance/afterCheck.mappings..st index 2d6f1e678..3f16edd17 100644 --- a/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryBlockPassedToBrushRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryBlockPassedToBrushRule.class/instance/afterCheck.mappings..st @@ -1,7 +1,7 @@ hooks afterCheck: aNode mappings: dict - aNode methodNode method isRenderingMethod ifFalse:[ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse:[ ^ false ]. ^ (aNode selector = #with:) ifTrue: [ WASlime isBrushSelector: aNode receiver selector ] ifFalse: [ WASlime isBrushSelector: aNode selector ] \ No newline at end of file diff --git a/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryWithSentToBrushRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryWithSentToBrushRule.class/instance/afterCheck.mappings..st index a5a8ee311..647749043 100644 --- a/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryWithSentToBrushRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WAUnnecessaryWithSentToBrushRule.class/instance/afterCheck.mappings..st @@ -1,7 +1,7 @@ hooks afterCheck: aNode mappings: dict - aNode methodNode method isRenderingMethod ifFalse: [ ^ false ]. + aNode methodNode compiledMethod isRenderingMethod ifFalse: [ ^ false ]. ^ (aNode parent isCascade not) and: [ (WASlime isBrushSelector: aNode receiver selector) and: [ (WASlime isBrushSelector: aNode receiver selector , ':') diff --git a/repository/Seaside-Pharo110-Slime.package/WAWithHasToBeLastMessageInCascadeRule.class/instance/afterCheck.mappings..st b/repository/Seaside-Pharo110-Slime.package/WAWithHasToBeLastMessageInCascadeRule.class/instance/afterCheck.mappings..st index 60062d00e..fce5255d6 100644 --- a/repository/Seaside-Pharo110-Slime.package/WAWithHasToBeLastMessageInCascadeRule.class/instance/afterCheck.mappings..st +++ b/repository/Seaside-Pharo110-Slime.package/WAWithHasToBeLastMessageInCascadeRule.class/instance/afterCheck.mappings..st @@ -1,7 +1,7 @@ hooks afterCheck: aNode mappings: dict - ^ aNode methodNode method isRenderingMethod and: [ + ^ aNode methodNode compiledMethod isRenderingMethod and: [ aNode parent isCascade and: [ aNode parent messages last ~= aNode and: [ WASlime isBrushSelector: aNode receiver selector ] ] ] \ No newline at end of file diff --git a/repository/Seaside-Pharo110-Slime.package/monticello.meta/categories.st b/repository/Seaside-Pharo110-Slime.package/monticello.meta/categories.st index ad6e15187..4df585ef5 100644 --- a/repository/Seaside-Pharo110-Slime.package/monticello.meta/categories.st +++ b/repository/Seaside-Pharo110-Slime.package/monticello.meta/categories.st @@ -1 +1 @@ -SystemOrganization addCategory: #'Seaside-Pharo110-Slime'! +self packageOrganizer ensurePackage: #'Seaside-Pharo110-Slime' withTags: #()! diff --git a/repository/Seaside-Tests-Pharo-Core.package/WAPharoFileLibraryTest.class/instance/testAddAllFilesIn.st b/repository/Seaside-Tests-Pharo-Core.package/WAPharoFileLibraryTest.class/instance/testAddAllFilesIn.st index 221ca0418..5f73419aa 100644 --- a/repository/Seaside-Tests-Pharo-Core.package/WAPharoFileLibraryTest.class/instance/testAddAllFilesIn.st +++ b/repository/Seaside-Tests-Pharo-Core.package/WAPharoFileLibraryTest.class/instance/testAddAllFilesIn.st @@ -11,12 +11,11 @@ testAddAllFilesIn (directory / '.Seaside_Store') ensureCreateFile . (directory / 'foo') ensureCreateFile. GRPlatform current doSilently: [ - library := WAFileLibrary - subclass: #XXXTestFileLibrary - instanceVariableNames: '' - classVariableNames: '' - poolDictionaries: '' - category: 'Uncategorized'. + library := WAFileLibrary classInstaller make: [ :builder | + builder + superclass: WAFileLibrary; + name: #XXXTestFileLibrary; + environment: WAFileLibrary environment ]. [ library addAllFilesIn: directory fullName. self assert: library selectors size = 1 ] "reject .Seaside_Store" ensure: [ library removeFromSystem ] ] ] diff --git a/repository/Seaside-Tests-Pharo-Core.package/monticello.meta/categories.st b/repository/Seaside-Tests-Pharo-Core.package/monticello.meta/categories.st index 183e77c13..2b61aee6a 100644 --- a/repository/Seaside-Tests-Pharo-Core.package/monticello.meta/categories.st +++ b/repository/Seaside-Tests-Pharo-Core.package/monticello.meta/categories.st @@ -1 +1 @@ -SystemOrganization addCategory: #'Seaside-Tests-Pharo-Core'! +self packageOrganizer ensurePackage: #'Seaside-Tests-Pharo-Core' withTags: #()! diff --git a/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/README.md b/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/README.md deleted file mode 100644 index fd6845e86..000000000 --- a/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/README.md +++ /dev/null @@ -1 +0,0 @@ -I ensure that there are no two versions with the same UUID. I'm a regression test for a bug in the Pharo/Squeak/Cog VM. \ No newline at end of file diff --git a/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/instance/testNoDuplicateUuids.st b/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/instance/testNoDuplicateUuids.st deleted file mode 100644 index 2044b2e05..000000000 --- a/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/instance/testNoDuplicateUuids.st +++ /dev/null @@ -1,14 +0,0 @@ -tests -testNoDuplicateUuids - | workingCopies versionAncestries uuidsToVersion | - workingCopies := WADevelopment allGRPackages - collect: [ :each | WADevelopment workingCopyFor: each ]. - versionAncestries := workingCopies - gather: [ :each | each ancestry breadthFirstAncestors ]. - uuidsToVersion := Dictionary new: versionAncestries size. - versionAncestries do: [ :version | - | uuid | - uuid := version id. - (uuidsToVersion includesKey: uuid) - ifTrue: [ self signalFailure: version name, ' and ', (uuidsToVersion at: uuid) name , ' have duplicated UUIDs' ]. - uuidsToVersion at: uuid put: version ] \ No newline at end of file diff --git a/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/properties.json b/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/properties.json deleted file mode 100644 index 23beaf51c..000000000 --- a/repository/Seaside-Tests-Pharo-Development.package/WANoDuplicateUuidsTest.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "pmm 7/23/2011 21:24", - "super" : "TestCase", - "category" : "Seaside-Tests-Pharo-Development", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "WANoDuplicateUuidsTest", - "type" : "normal" -} \ No newline at end of file diff --git a/repository/Seaside-Tests-Pharo-Development.package/monticello.meta/categories.st b/repository/Seaside-Tests-Pharo-Development.package/monticello.meta/categories.st index 4fefcab4f..25ad125e4 100644 --- a/repository/Seaside-Tests-Pharo-Development.package/monticello.meta/categories.st +++ b/repository/Seaside-Tests-Pharo-Development.package/monticello.meta/categories.st @@ -1 +1 @@ -SystemOrganization addCategory: #'Seaside-Tests-Pharo-Development'! +self packageOrganizer ensurePackage: #'Seaside-Tests-Pharo-Development' withTags: #()! diff --git a/repository/Seaside-Tests-Pharo-Email.package/GRPharoPlatformTest.extension/instance/testSeasideSmtpServer.st b/repository/Seaside-Tests-Pharo-Email.package/GRPharoPlatformTest.extension/instance/testSeasideSmtpServer.st index e99efa93d..1cbbd011f 100644 --- a/repository/Seaside-Tests-Pharo-Email.package/GRPharoPlatformTest.extension/instance/testSeasideSmtpServer.st +++ b/repository/Seaside-Tests-Pharo-Email.package/GRPharoPlatformTest.extension/instance/testSeasideSmtpServer.st @@ -1,8 +1,9 @@ *seaside-tests-pharo-email testSeasideSmtpServer - | seasideSmtpServer | - seasideSmtpServer := [ GRPlatform current seasideSmtpServer ] - on: ProvideAnswerNotification - do: [ :e | e resume: '1.2.3.4' ]. + | seasideSmtpServer oldSmtpServer | + oldSmtpServer := [ MailComposition smtpServer ] on: Error do: [ :e | "If the smtpServer was not set, an error is thrown. Set it back to nil afterwards." nil ]. + MailComposition setSmtpServer: '1.2.3.4'. + [ seasideSmtpServer := GRPlatform current seasideSmtpServer ] + ensure: [ MailComposition setSmtpServer: oldSmtpServer ]. self assert: seasideSmtpServer isString \ No newline at end of file diff --git a/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/categories.st b/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/categories.st index f39ce090f..068f2e494 100644 --- a/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/categories.st +++ b/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/categories.st @@ -1 +1 @@ -SystemOrganization addCategory: #'Seaside-Tests-Pharo-Email'! +self packageOrganizer ensurePackage: #'Seaside-Tests-Pharo-Email' withTags: #()! diff --git a/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/version b/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/version deleted file mode 100644 index dcd81f4a2..000000000 --- a/repository/Seaside-Tests-Pharo-Email.package/monticello.meta/version +++ /dev/null @@ -1 +0,0 @@ -(name 'Seaside-Tests-Pharo-Email-pmm.2' message 'Mail sending broken in Pharo - #898' id '06bab1a1-f814-0d00-adc7-c94a0b5b45a6' date '7 September 2017' time '12:26:34.463013 pm' author 'pmm' ancestors ((name 'Seaside-Tests-Pharo-Email-pmm.1' message '- Issue 646: GRPharoPlatform>>isIpAddress broken - http://code.google.com/p/seaside/issues/detail?id=646' id 'fe4d33d6-8cc5-4d57-aa38-c5cc506f3d21' date '25 February 2011' time '7:33:26 am' author 'pmm' ancestors () stepChildren ())) stepChildren ()) \ No newline at end of file diff --git a/repository/Seaside-Zinc-Core.package/ZnZincServerAdaptor.class/instance/convertMultipartStreamingEntity.with..st b/repository/Seaside-Zinc-Core.package/ZnZincServerAdaptor.class/instance/convertMultipartStreamingEntity.with..st index 44f8ee696..9810e6e59 100644 --- a/repository/Seaside-Zinc-Core.package/ZnZincServerAdaptor.class/instance/convertMultipartStreamingEntity.with..st +++ b/repository/Seaside-Zinc-Core.package/ZnZincServerAdaptor.class/instance/convertMultipartStreamingEntity.with..st @@ -9,9 +9,7 @@ convertMultipartStreamingEntity: anEntity with: aMultiValueDictionary partsDecodeWith: [ :znMimePart | aMultiValueDictionary at: znMimePart fieldName - add: (self codec url decode: (znMimePart hasEntity - ifTrue: [ znMimePart fieldValueString ] - ifFalse: [ '' ])) ] + add: (self codec url decode: (znMimePart hasEntity ifTrue: [ znMimePart fieldValueString ] ifFalse: [ '' ])) ] decodeFilesWith: [ :znMimePart :filePath | "Empty file + empty filename means that the file form field did not contain a value (no file was selected)." diff --git a/repository/Seaside-Zinc-Core.package/monticello.meta/categories.st b/repository/Seaside-Zinc-Core.package/monticello.meta/categories.st index 43806c615..dc2603941 100644 --- a/repository/Seaside-Zinc-Core.package/monticello.meta/categories.st +++ b/repository/Seaside-Zinc-Core.package/monticello.meta/categories.st @@ -1 +1 @@ -SystemOrganization addCategory: #'Seaside-Zinc-Core'! +self packageOrganizer ensurePackage: #'Seaside-Zinc-Core' withTags: #()! diff --git a/scripts/preTestingPharo.st b/scripts/preTestingPharo.st new file mode 100644 index 000000000..0ea2d0728 --- /dev/null +++ b/scripts/preTestingPharo.st @@ -0,0 +1 @@ +Deprecation activateTransformations: false. \ No newline at end of file