From 1770e7be0f94892ab066b76a12ee20c032ee9305 Mon Sep 17 00:00:00 2001 From: carolahp Date: Tue, 27 Nov 2018 16:44:56 +0100 Subject: [PATCH 1/7] update pharo 7 --- bootstrap/src/.DS_Store | Bin 0 -> 6148 bytes .../instance/bindingOf..st | 20 ------------------ .../instance/innerBindingOf..st | 20 ++++++++++++++++++ .../instance/bindingOf..st | 9 ++++++++ .../instance/initializeImage.st | 5 ++--- 5 files changed, 31 insertions(+), 23 deletions(-) create mode 100644 bootstrap/src/.DS_Store delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/bindingOf..st create mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st create mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st diff --git a/bootstrap/src/.DS_Store b/bootstrap/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..56f66c03a7ac5bfc872f4ac3269f3da814b8b21d GIT binary patch literal 6148 zcmeH~y-veW426%OLnW4u9q$t$5HD~QwL20oK-waZs1!uoJzHP9$3LJ(DU1xrmVCcl z$G%a{5XS(dIc)BM8GtEWiK8xK)BEZpyNZaAbe_@S0e5J~Zj^mFptW;6;tef62ladG zuxG5r2X5&t)_CXoikHo9y7^1QhIl#SCGu*pcX~M_h7XA+ zOH3$YPv`l?(jnEEYbuZm3>CQc?M(aslK#W|KP<{!Dv%2ND+Oe-cv>`krRc4rm(yNb t=+E>oW3Huhu~tl4E9OR9@%${W=r!-xVDGeY#;u&p9|6@REfx3+1y0>C89)F4 literal 0 HcmV?d00001 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/bindingOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/bindingOf..st deleted file mode 100644 index 7412faa969c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/bindingOf..st +++ /dev/null @@ -1,20 +0,0 @@ -accessing -bindingOf: aString - (self definesClassVariable: aString asSymbol) - ifTrue: [ ^ EPClassVariableBinding new - name: aString asSymbol - ownerName: self name - objectSpace: bootstrapEnvironment; - yourself ]. - self sharedPools - do: - [ :pool | (pool bindingOf: aString) ifNotNil: [ :binding | ^ binding ] ]. - (self superclass bindingOf: aString) - ifNotNil: [ :binding | ^ binding ]. - (bootstrapEnvironment includesClassNamed: aString) - ifTrue: [ ^ EPGlobalBinding new - name: aString objectSpace: bootstrapEnvironment; - yourself ]. - - "If it is a temp or an instance variable" - ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st new file mode 100644 index 00000000000..7dce5d7fc5c --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st @@ -0,0 +1,20 @@ +accessing +innerBindingOf: aString + + (self definesClassVariable: aString asSymbol) + ifTrue: [ ^ EPClassVariableBinding new + name: aString asSymbol + ownerName: self name + objectSpace: bootstrapEnvironment; + yourself ]. + + self sharedPools + do: + [ :pool | (pool innerBindingOf: aString) ifNotNil: [ :binding | ^ binding ] ]. + + self superclass ifNotNil:[ + (self superclass innerBindingOf: aString) + ifNotNil: [ :binding | ^ binding ]]. + + "If it is a temp or an instance variable" + ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st new file mode 100644 index 00000000000..743e9abf913 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st @@ -0,0 +1,9 @@ +accessing instances and variables +bindingOf: aName + + (self includesClassNamed: aName) + ifTrue: [ ^ EPGlobalBinding new + name: aName objectSpace: self; + yourself ]. + + ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st index d90b92b6f75..0fddd0aa367 100644 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st +++ b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st @@ -17,7 +17,6 @@ initializeImage process := objectSpace createProcessWithPriority: 40 - "doing: self bootstrapInitialProcessCode." doing: ('PharoBootstrapInitialization initializeImageOfType: ''Pharo'' major: {major} @@ -47,8 +46,8 @@ initializeImage (#(#fullGC #compactImage #doScavenge:) includes: ex signalerContext sender selector) ifTrue: [ex resume] ifFalse: [ex pass]]] on: AssertionFailure do: [ :e | - ((e signalerContext method selector == #assert:) - and: [ e signalerContext sender method selector = #mapStackPages ]) + ((e signalerContext sender method selector == #assert:) + and: [ e signalerContext sender sender method selector = #mapStackPages ]) ifTrue: [ e resume ] ifFalse: [ e pass ]] . From a8b47057f89e2b372cf0211015d3f870adb3e890 Mon Sep 17 00:00:00 2001 From: carolahp Date: Wed, 28 Nov 2018 16:43:16 +0100 Subject: [PATCH 2/7] Moving the extension method to be a real extension method --- bootstrap/scripts/prepare_image.st | 24 ------------------- .../instance/asRing2EnvironmentWith..st | 23 ++++++++++++++++++ .../TonelRepository.extension/properties.json | 3 +++ 3 files changed, 26 insertions(+), 24 deletions(-) create mode 100644 bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st create mode 100644 bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json diff --git a/bootstrap/scripts/prepare_image.st b/bootstrap/scripts/prepare_image.st index 0667488db44..e3e9ca1f618 100644 --- a/bootstrap/scripts/prepare_image.st +++ b/bootstrap/scripts/prepare_image.st @@ -9,27 +9,3 @@ repository: 'filetree://', repositoryPathString; load. ] on: Warning do: #resume. - -! !TonelRepository methodsFor: 'converting' stamp: 'PabloTesone 01/11/2017 12:00'! -asRing2EnvironmentWith: packageNames - - | aRG2Environment | - aRG2Environment := RG2Environment new. - aRG2Environment announcer suspendAllWhile: [ - (packageNames) do: [ :pn | - | snap defs package version | - package := aRG2Environment ensurePackageNamed: pn asSymbol. - version := self versionWithInfo: (self versionInfoFromVersionNamed: pn). - snap := version snapshot. - - defs := snap definitions. - defs do: [ :each | - each ensureRing2DefinitionIn: aRG2Environment package: package ] - displayingProgress: 'snap'.] - displayingProgress: 'version'. - ]. - - aRG2Environment clean. - aRG2Environment behaviorsDo: [ :beh | - beh superclass == beh ifTrue: [ beh superclass: nil. ] ]. - ^ aRG2Environment! diff --git a/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st b/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st new file mode 100644 index 00000000000..1b360b475bf --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st @@ -0,0 +1,23 @@ +*Pharo30Bootstrap +asRing2EnvironmentWith: packageNames + + | aRG2Environment | + aRG2Environment := RGEnvironment new. + aRG2Environment announcer suspendAllWhile: [ + (packageNames) do: [ :pn | + | snap defs package version | + package := aRG2Environment ensurePackageNamed: pn asSymbol. + version := self versionWithInfo: (self versionInfoFromVersionNamed: pn). + snap := version snapshot. + + defs := snap definitions. + defs do: [ :each | + each ensureRingDefinitionIn: aRG2Environment package: package ] + displayingProgress: 'snap'.] + displayingProgress: 'version'. + ]. + + aRG2Environment clean. + aRG2Environment behaviorsDo: [ :beh | + beh superclass == beh ifTrue: [ beh superclass: nil. ] ]. + ^ aRG2Environment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json b/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json new file mode 100644 index 00000000000..069913f4cff --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json @@ -0,0 +1,3 @@ +{ + "name" : "TonelRepository" +} \ No newline at end of file From 59c20b31bc90d2950a1cf05054b83b1e7dd17b18 Mon Sep 17 00:00:00 2001 From: carolahp Date: Wed, 28 Nov 2018 17:03:57 +0100 Subject: [PATCH 3/7] Update of espell and hermes tags --- .../instance/baseline..st | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st index e920985d657..056d019f6b0 100644 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st @@ -7,11 +7,11 @@ baseline: spec spec baseline: 'Tonel' with: [ spec repository: 'github://pharo-vcs/tonel:v1.0.11' ]. spec baseline: 'Hermes' with: [ spec - repository: 'github://tesonep/hermes:v2.4.1'; + repository: 'github://tesonep/hermes:v2.5.0'; loads: 'core' ]. spec package: 'Pharo30Bootstrap'. spec baseline: 'Ring2' with: [ spec - repository: 'github://tesonep/Ring2:production-dev/src'; + repository: 'github://carolahp/Ring2:master/src'; loads: 'bootstrap' ]. ] \ No newline at end of file From 606e5cb1c1af9c31aa59eb75ca1904e3a51c1586 Mon Sep 17 00:00:00 2001 From: carolahp Date: Wed, 28 Nov 2018 17:09:08 +0100 Subject: [PATCH 4/7] Update bootstrapImage.zip to new version in tesonep repo --- bootstrap/scripts/2-download.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bootstrap/scripts/2-download.sh b/bootstrap/scripts/2-download.sh index 5b7ad7232bc..ff5788fff4e 100755 --- a/bootstrap/scripts/2-download.sh +++ b/bootstrap/scripts/2-download.sh @@ -11,8 +11,8 @@ SCRIPTS="$(cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P)" mkdir -p "${BOOTSTRAP_CACHE}" #required to generate hermes files -${BOOTSTRAP_REPOSITORY}/bootstrap/scripts/getPharoVM.sh 61 -wget https://github.com/guillep/PharoBootstrap/releases/download/v1.5.0/bootstrapImage.zip +${BOOTSTRAP_REPOSITORY}/bootstrap/scripts/getPharoVM.sh 70 +wget https://github.com/tesonep/PharoBootstrap/releases/download/v1.6.0/bootstrapImage.zip unzip bootstrapImage.zip cd "${BOOTSTRAP_CACHE}" From 1e23deb29ea0a93e3852fbb2134f25225a3464cc Mon Sep 17 00:00:00 2001 From: carolahp Date: Wed, 12 Dec 2018 18:10:37 +0100 Subject: [PATCH 5/7] updating hermes and bootstrapImage.zip. Fixing ensureCr bug --- bootstrap/scripts/2-download.sh | 2 +- .../instance/baseline..st | 2 +- .../NonInteractiveTranscript.extension/instance/ensureCr.st | 3 +++ .../NonInteractiveTranscript.extension/properties.json | 3 +++ 4 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st create mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json diff --git a/bootstrap/scripts/2-download.sh b/bootstrap/scripts/2-download.sh index ff5788fff4e..1bad3705437 100755 --- a/bootstrap/scripts/2-download.sh +++ b/bootstrap/scripts/2-download.sh @@ -12,7 +12,7 @@ SCRIPTS="$(cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P)" mkdir -p "${BOOTSTRAP_CACHE}" #required to generate hermes files ${BOOTSTRAP_REPOSITORY}/bootstrap/scripts/getPharoVM.sh 70 -wget https://github.com/tesonep/PharoBootstrap/releases/download/v1.6.0/bootstrapImage.zip +wget https://github.com/carolahp/PharoBootstrap/releases/download/v1.7.0/bootstrapImage.zip unzip bootstrapImage.zip cd "${BOOTSTRAP_CACHE}" diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st index 056d019f6b0..d9696498070 100644 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st @@ -7,7 +7,7 @@ baseline: spec spec baseline: 'Tonel' with: [ spec repository: 'github://pharo-vcs/tonel:v1.0.11' ]. spec baseline: 'Hermes' with: [ spec - repository: 'github://tesonep/hermes:v2.5.0'; + repository: 'github://tesonep/hermes:v2.5.1'; loads: 'core' ]. spec package: 'Pharo30Bootstrap'. diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st new file mode 100644 index 00000000000..76bb06247ad --- /dev/null +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st @@ -0,0 +1,3 @@ +*BaselineOfPharoBootstrapProcess +ensureCr + self stream cr \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json new file mode 100644 index 00000000000..6a085cdecf3 --- /dev/null +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json @@ -0,0 +1,3 @@ +{ + "name" : "NonInteractiveTranscript" +} \ No newline at end of file From 98f370813213c24ee5bc31f8be9bcb6a49e2ccee Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Wed, 11 Sep 2019 14:20:48 +0200 Subject: [PATCH 6/7] Synch with Pharo 8 + migrate to tonel --- bootstrap/scripts/prepare_image.st | 2 +- bootstrap/src/.filetree | 2 - bootstrap/src/.properties | 3 + .../.filetree | 5 - .../README.md | 5 - .../instance/baseline..st | 17 - .../properties.json | 11 - .../instance/ensureCr.st | 3 - .../properties.json | 3 - .../monticello.meta/categories.st | 1 - .../monticello.meta/initializers.st | 0 .../monticello.meta/package | 1 - .../properties.json | 1 - .../BaselineOfPharoBootstrapProcess.class.st | 31 + .../NonInteractiveTranscript.extension.st | 6 + .../package.st | 1 + .../src/Pharo30Bootstrap.package/.filetree | 5 - .../properties.json | 3 - .../PBBootstrap.class/README.md | 0 .../PBBootstrap.class/class/for32Bits.st | 4 - .../PBBootstrap.class/class/for64Bits.st | 4 - .../class/forArchitecture..st | 6 - .../class/fromCommandLine.st | 23 - .../PBBootstrap.class/class/new.st | 4 - .../class/repositoryLocation.st | 6 - .../instance/allPackagesForHermes.st | 4 - .../instance/architecture..st | 4 - .../PBBootstrap.class/instance/bootstrap.st | 11 - .../instance/bootstrapCacheDirectory.st | 4 - .../instance/buildNumber..st | 4 - .../PBBootstrap.class/instance/buildNumber.st | 4 - .../PBBootstrap.class/instance/createImage.st | 12 - .../ensureBaselineOfPharoBootstrap.st | 6 - .../instance/exportAllPackagesIntoMcz.st | 6 - .../instance/exportIntoMcz..st | 4 - .../instance/exportKernelPackageNames.st | 7 - .../instance/exportKernelProtocols.st | 7 - .../instance/exportMonticelloInStFile.st | 22 - .../instance/exportPackageNamesFor.to..st | 8 - .../instance/exportPackages.intoFile..st | 7 - ...ackages.usingInitializeScript.intoFile..st | 9 - ...Methods.usingInitializeScript.intoFile..st | 21 - .../instance/exportProtocolsFor.to..st | 20 - .../instance/generateHermesFiles.st | 13 - .../instance/hermesPackageNames.st | 3 - .../PBBootstrap.class/instance/imageName..st | 4 - .../PBBootstrap.class/instance/initialize.st | 6 - .../instance/initializeImage.st | 3 - .../instance/kernelPackageNames.st | 5 - .../PBBootstrap.class/instance/mczCache.st | 4 - .../instance/monticelloNetworkPackageNames.st | 12 - .../instance/monticelloPackageNames.st | 4 - .../instance/originRepository.st | 9 - .../instance/packagesToExportAsMCZ.st | 4 - .../instance/prepareBootstrap.st | 12 - .../instance/prepareEnvironmentForExport.st | 21 - .../instance/prepareEnvironmentForHermes.st | 6 - .../instance/repositoryLocation.st | 4 - .../instance/sUnitPackageNames.st | 5 - .../instance/versionInfo..st | 3 - .../PBBootstrap.class/instance/versionInfo.st | 3 - .../PBBootstrap.class/properties.json | 18 - .../PBBootstrap30.class/README.md | 0 .../PBBootstrap30.class/class/bootstrap..st | 4 - .../PBBootstrap30.class/class/bootstrap.st | 4 - .../class/bootstrap.toFileNamed..st | 49 -- .../instance/behaviorFrom..st | 3 - .../instance/bindingOf..st | 12 - .../instance/bindingOfGlobal..st | 12 - .../instance/bindingOfMetaclassNamed..st | 8 - .../PBBootstrap30.class/instance/bootstrap.st | 9 - .../instance/bootstrapEnvironment.st | 4 - .../instance/bootstrapInterpreter.st | 4 - .../instance/builtClassNames.st | 4 - .../instance/checkpoint..st | 6 - .../instance/classForClassMirror..st | 4 - .../instance/classLoader.st | 3 - .../instance/classNamed..st | 4 - .../compactClassIndexForClassNamed..st | 35 - .../instance/createBehaviorFromDefinition..st | 4 - .../instance/createClasses.st | 19 - .../instance/createFalse.st | 5 - .../instance/createInitialObjects.st | 72 -- .../PBBootstrap30.class/instance/createNil.st | 10 - .../instance/createStubForClassNamed..st | 4 - .../instance/createTrue.st | 5 - .../instance/createVMStubs.st | 25 - .../instance/definitionNamed..st | 4 - .../instance/globalNamed..st | 6 - .../instance/globalNamed.put..st | 4 - .../instance/includesClassNamed..st | 4 - .../instance/includesGlobalNamed..st | 5 - .../instance/initialize.st | 9 - .../initializeBootstrapEnvironment.st | 22 - .../instance/initializeImage.st | 4 - .../instance/initializeSystemDefinition..st | 5 - .../instance/installMethods.st | 10 - ...llMethodsInBehaviorDefinition.prefixed..st | 15 - ...ehaviorMapping.using.onMirror.prefixed..st | 17 - .../PBBootstrap30.class/instance/isMeta..st | 4 - .../PBBootstrap30.class/instance/log..st | 4 - .../instance/metaclassForClassMirror..st | 4 - .../instance/methodBuilder.st | 3 - .../instance/objectSpace.st | 3 - .../instance/visitClass..st | 5 - .../instance/visitTrait..st | 5 - .../PBBootstrap30.class/properties.json | 19 - .../PBBootstrapLogger.class/README.md | 0 .../instance/basicLog..st | 4 - .../instance/initialize.st | 6 - .../PBBootstrapLogger.class/instance/log..st | 7 - .../PBBootstrapLogger.class/properties.json | 14 - .../PBBootstrapStatistics.class/README.md | 0 .../instance/addCompilationTime..st | 4 - .../instance/addMethodTime..st | 4 - .../instance/initialize.st | 5 - .../properties.json | 14 - .../PBClassDefinition.class/README.md | 0 .../class/on.environment..st | 6 - .../instance/allSlots.st | 4 - .../instance/definesClassVariable..st | 4 - .../instance/initializeOn.environment..st | 5 - .../instance/innerBindingOf..st | 20 - .../PBClassDefinition.class/instance/name.st | 4 - .../instance/sharedPools.st | 5 - .../instance/superclass.st | 5 - .../instance/usesClassVariable..st | 4 - .../PBClassDefinition.class/properties.json | 14 - .../PBClassLoader.class/README.md | 0 .../PBClassLoader.class/instance/builder..st | 4 - .../instance/classDefinitionFor..st | 41 - .../instance/classForClassMirror..st | 4 - .../instance/classNamed..st | 8 - .../instance/compactClassIndexForClass..st | 4 - .../instance/createBehaviorFromDefinition..st | 24 - .../instance/createClassStubForDefinition..st | 10 - .../instance/createJustStubs.st | 4 - .../instance/createStubForClassNamed..st | 11 - .../instance/createTraitFromDefinition..st | 7 - .../instance/environment..st | 4 - .../instance/executeDefinitionFor..st | 11 - .../instance/formatOfClass..st | 3 - .../instance/initialize.st | 13 - .../instance/initializeClassNamed..st | 8 - .../instance/initializeClassPool..st | 21 - .../instance/initializeClassPools.st | 7 - .../instance/initializeTraitNamed..st | 6 - .../instance/isClassDefinition..st | 7 - .../instance/isFullyLoadedClassNamed..st | 4 - .../instance/loadClassNamed..st | 7 - .../instance/loadedClassNamed..st | 4 - .../instance/loadedClassNames.st | 4 - .../PBClassLoader.class/instance/map.with..st | 10 - .../instance/metaclassClass.st | 26 - .../instance/migrateOldClass.to..st | 20 - .../PBClassLoader.class/instance/next.st | 4 - .../instance/registerClass.named..st | 4 - .../registerClass.named.fullyLoaded..st | 18 - .../registerTrait.named.fullyLoaded..st | 17 - .../instance/systemDefinition..st | 3 - .../instance/useClassBuilder.st | 4 - .../PBClassLoader.class/properties.json | 22 - .../PBDefinitionFetcher.class/README.md | 1 - .../instance/majorVersion.st | 4 - .../instance/minorVersion.st | 4 - .../instance/updateNumber.st | 4 - .../PBDefinitionFetcher.class/properties.json | 11 - .../PBImageBuilder50.class/README.md | 4 - .../instance/behaviorFrom..st | 3 - .../instance/bindingOf..st | 9 - .../instance/bootstrap.st | 12 - .../instance/bootstrapEnvironment.st | 4 - .../instance/bootstrapInitialProcess.st | 53 -- .../instance/bootstrapInitialProcessCode.st | 5 - .../instance/bootstrapInterpreter.st | 4 - .../bootstrapWithResumableDebugger.st | 8 - .../instance/buildNumber..st | 4 - .../instance/builtClassNames.st | 4 - .../instance/classForClassMirror..st | 4 - .../instance/classInstanceVariableIndexAt..st | 4 - .../instance/classLoader.st | 3 - .../instance/classNamed..st | 5 - .../compactClassIndexForClassNamed..st | 27 - .../instance/createBehaviorFromDefinition..st | 4 - .../instance/createClasses.st | 21 - .../instance/createFalse.st | 5 - .../instance/createInitialObjects.st | 87 -- .../instance/createNil.st | 10 - .../instance/createStubForClassNamed..st | 4 - .../instance/createTrue.st | 5 - .../instance/createVMStubs.st | 39 - .../instance/definitionNamed..st | 4 - .../instance/environment.st | 4 - .../instance/espellBackend..st | 3 - .../instance/espellBackend.st | 3 - .../instance/formatOfClass..st | 25 - .../instance/globalNamed..st | 6 - .../instance/globalNamed.put..st | 4 - .../instance/imageFileReference..st | 4 - .../instance/includesClassNamed..st | 4 - .../instance/includesGlobalNamed..st | 5 - .../instance/initialize.st | 11 - .../instance/initializeBackend.st | 4 - .../initializeBootstrapEnvironment.st | 22 - .../instance/initializeImage.st | 59 -- .../instance/initializeSpecialObjectArray.st | 8 - .../instance/installExtensionMethods.st | 12 - .../installExtensionMethodsOf.prefixed..st | 23 - .../instance/installMethod.inBehavior..st | 12 - .../instance/installMethods.st | 12 - ...llMethodsInBehaviorDefinition.prefixed..st | 14 - ...ehaviorMapping.using.onMirror.prefixed..st | 12 - .../instance/instantiateClassLoader.st | 4 - .../instance/isMeta..st | 4 - .../PBImageBuilder50.class/instance/log..st | 4 - .../instance/metaclassForClassMirror..st | 4 - .../instance/methodBuilder.st | 3 - .../instance/objectSpace.st | 3 - .../instance/statistics.st | 4 - .../instance/systemDefinition..st | 3 - .../instance/systemDefinition.st | 4 - .../instance/versionInfo..st | 3 - .../instance/versionInfo.st | 3 - .../instance/visitClass..st | 5 - .../instance/visitTrait..st | 5 - .../PBImageBuilder50.class/properties.json | 22 - .../PBImageBuilderSpur50.class/README.md | 1 - .../class/example5617.st | 14 - .../class/forArchitecture..st | 12 - .../instance/allocateClassTable.st | 51 -- .../instance/allocateFreeLists.st | 18 - .../instance/arrayClassIndex.st | 4 - .../instance/compactImage.st | 11 - .../instance/createBehaviorFromDefinition..st | 7 - .../instance/createFalse.st | 10 - .../instance/createNil.st | 10 - .../instance/createTrue.st | 10 - .../instance/createVMStubs.st | 54 -- .../instance/errorMessagesArray.st | 15 - .../instance/firstOrdinaryClassIndex.st | 4 - .../instance/flushNewSpace.st | 29 - .../instance/followForwardingPointers.st | 14 - .../instance/formatOfClass..st | 16 - .../instance/freeForwarders.st | 21 - .../instance/instSpecOfClass..st | 28 - .../instance/instantiateClassLoader.st | 4 - .../instance/newSpecialObjectsArray.st | 53 -- .../instance/nextOrdinaryClassIndex.st | 8 - .../instance/objectMemory.st | 4 - .../instance/prepareSimulatorForExecution.st | 16 - .../instance/reportSizes.st | 19 - ...ransformedImage.headerFlags.screenSize..st | 30 - .../properties.json | 14 - .../PBImageBuilderSpur5032bit.class/README.md | 1 - .../instance/initializeBackend.st | 4 - .../properties.json | 11 - .../PBImageBuilderSpur5064bit.class/README.md | 1 - .../instance/createVMStubs.st | 5 - .../instance/initializeBackend.st | 4 - .../properties.json | 11 - .../PBInstanceVariableMapping.class/README.md | 0 .../class/onEnvironment..st | 6 - .../instance/allSlotsOf..st | 4 - .../instance/classFormatIndex.st | 3 - .../classInstanceVariableNamesIndex.st | 3 - .../instance/classMethodDictionaryIndex.st | 3 - .../instance/classNameIndex.st | 3 - .../instance/classNumberOfVariables.st | 3 - .../instance/classPoolIndex.st | 3 - .../instance/classSharedPoolsIndex.st | 3 - .../instance/classSuperclassIndex.st | 3 - .../instance/contextClosureOrNilIndex.st | 3 - .../instance/contextMethodIndex.st | 3 - .../instance/contextPcIndex.st | 3 - .../instance/contextReceiverIndex.st | 3 - .../instance/contextSenderIndex.st | 3 - .../instance/contextStackpIndex.st | 3 - .../instance/dictionaryArrayIndex.st | 3 - .../instance/environment..st | 3 - .../instance/environment.st | 3 - .../instance/initializeIndexes.st | 30 - .../instance/listOfClassSlots.st | 3 - .../instance/lookup.in..st | 10 - .../instance/numberOfInstanceVariablesOf..st | 3 - .../instance/processContextIndex.st | 3 - .../instance/processNameIndex.st | 3 - .../instance/processNextLinkIndex.st | 3 - .../instance/processPriorityIndex.st | 3 - .../instance/processPriorityListIndex.st | 3 - .../processSchedulerActiveProcessIndex.st | 3 - .../instance/smalltalkImageGlobalsIndex.st | 3 - .../instance/traitClassTraitIndex.st | 3 - .../instance/traitMethodDictionaryIndex.st | 3 - .../instance/traitNameIndex.st | 3 - .../properties.json | 39 - .../PBMethodCompiler.class/README.md | 0 .../instance/buildPackagesList.st | 8 - .../instance/builder..st | 3 - .../instance/createNewMethod..st | 14 - .../instance/methodsForBehavior..st | 6 - .../instance/methodsFromDefinition..st | 5 - .../instance/packages.st | 3 - .../instance/shouldMethodBeRemoved..st | 22 - .../PBMethodCompiler.class/properties.json | 14 - .../PBOldExtendedBootstrap.class/README.md | 0 .../instance/bootstrap.st | 7 - .../instance/bootstrapImageDo..st | 13 - .../instance/bootstrapImageEval..st | 4 - .../instance/bootstrapImageEval.save.quit..st | 9 - .../instance/bootstrapImageEvalFile..st | 4 - .../bootstrapImageEvalFile.save.quit..st | 8 - .../instance/bootstrapMonticello.st | 4 - .../instance/initializeClasses.st | 17 - .../instance/initializeImage.st | 88 -- .../instance/initializeRPackages.st | 72 -- .../instance/initializeSessionManager.st | 40 - .../instance/patchUnhandledErrorManagement.st | 22 - .../instance/prepareBootstrap.st | 8 - .../properties.json | 11 - .../PBSignal.class/README.md | 0 .../PBSignal.class/properties.json | 11 - .../PBSpurClassLoader.class/README.md | 0 .../instance/classDefinitionFor..st | 41 - .../instance/map.with..st | 22 - .../instance/newClassIndex.st | 5 - .../registerClass.named.fullyLoaded..st | 23 - .../PBSpurClassLoader.class/properties.json | 13 - .../PBStepFinishedSignal.class/README.md | 0 .../properties.json | 11 - .../PBStepStartedSignal.class/README.md | 0 .../PBStepStartedSignal.class/properties.json | 11 - .../PBSubStepFinishedSignal.class/README.md | 0 .../properties.json | 11 - .../PBVersionInfo.class/README.md | 11 - .../class/fromLongGitDescribe..st | 12 - .../class/fromSemanticVersion..st | 6 - .../class/invalidMajorVersion..st | 4 - .../PBVersionInfo.class/class/major..st | 6 - .../PBVersionInfo.class/class/new.st | 4 - .../instance/buildNumber..st | 3 - .../instance/buildNumber.st | 3 - .../instance/commitHash..st | 3 - .../instance/commitHash.st | 3 - .../instance/fromSemanticVersion..st | 25 - .../instance/invalidMajorVersion..st | 4 - .../PBVersionInfo.class/instance/major..st | 5 - .../PBVersionInfo.class/instance/major.st | 3 - .../instance/majorVersion.st | 3 - .../PBVersionInfo.class/instance/minor..st | 3 - .../PBVersionInfo.class/instance/minor.st | 3 - .../instance/minorVersion.st | 3 - .../PBVersionInfo.class/instance/patch..st | 4 - .../PBVersionInfo.class/instance/patch.st | 3 - .../instance/repository..st | 3 - .../instance/repository.st | 3 - .../PBVersionInfo.class/instance/suffix..st | 3 - .../PBVersionInfo.class/instance/suffix.st | 4 - .../instance/validateMajorVersion..st | 6 - .../PBVersionInfo.class/properties.json | 19 - .../PBVersionInfoTest.class/README.md | 1 - .../instance/testDefaultBuildIsUnknown.st | 6 - .../testDefaultCommitHashIsUnknown.st | 6 - .../instance/testDefaultMinorVersionIsZero.st | 6 - .../instance/testDefaultPatchVersionIsZero.st | 6 - .../instance/testDefaultSuffixIsEmpty.st | 6 - ...mIncompleteSemanticVersionStartingWithV.st | 10 - ...beWithNumberOfCommitsExtractsCommitHash.st | 6 - ...hNumberOfCommitsExtractsSemanticVersion.st | 11 - .../testFromLongDescribeWithSuffix.st | 11 - .../testFromSemanticVersionStartingWithV.st | 10 - ...testFromSemanticVersionStartingWithoutV.st | 10 - ...romSemanticVersionWithInvalidMajorFails.st | 4 - .../testFromSemanticVersionWithoutSuffix.st | 10 - .../instance/testGivenBuildIsGiven.st | 7 - .../instance/testGivenCommitHashIsGiven.st | 7 - .../instance/testGivenMinorVersionIsGiven.st | 7 - .../instance/testGivenPatchVersionIsGiven.st | 7 - .../instance/testGivenSuffixIsGiven.st | 7 - .../instance/testNilMajorVersionFails.st | 4 - .../testNoDefaultMajorVersionFails.st | 4 - .../testProvidedMajorVersionIsStored.st | 6 - .../PBVersionInfoTest.class/properties.json | 11 - .../TonelRepository.extension/properties.json | 3 - .../monticello.meta/categories.st | 3 - .../monticello.meta/initializers.st | 0 .../monticello.meta/package | 1 - .../Pharo30Bootstrap.package/properties.json | 1 - .../MCClassDefinition.extension.st} | 9 +- .../src/Pharo30Bootstrap/PBBootstrap.class.st | 428 ++++++++++ .../Pharo30Bootstrap/PBBootstrap30.class.st | 542 +++++++++++++ .../PBBootstrapLogger.class.st | 32 + .../PBBootstrapStatistics.class.st | 28 + .../PBClassDefinition.class.st | 84 ++ .../Pharo30Bootstrap/PBClassLoader.class.st | 403 +++++++++ .../PBDefinitionFetcher.class.st | 26 + .../PBImageBuilder50.class.st | 762 ++++++++++++++++++ .../PBImageBuilderSpur50.class.st | 526 ++++++++++++ .../PBImageBuilderSpur5032bit.class.st | 14 + .../PBImageBuilderSpur5064bit.class.st | 21 + .../PBInstanceVariableMapping.class.st | 237 ++++++ .../PBMethodCompiler.class.st | 84 ++ .../PBOldExtendedBootstrap.class.st | 328 ++++++++ .../src/Pharo30Bootstrap/PBSignal.class.st | 5 + .../PBSpurClassLoader.class.st | 107 +++ .../PBStepFinishedSignal.class.st | 5 + .../PBStepStartedSignal.class.st | 5 + .../PBSubStepFinishedSignal.class.st | 5 + .../Pharo30Bootstrap/PBVersionInfo.class.st | 194 +++++ .../PBVersionInfoTest.class.st | 201 +++++ .../TonelRepository.extension.st} | 9 +- bootstrap/src/Pharo30Bootstrap/package.st | 1 + 411 files changed, 4092 insertions(+), 3558 deletions(-) delete mode 100644 bootstrap/src/.filetree create mode 100644 bootstrap/src/.properties delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/.filetree delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/README.md delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/properties.json delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/categories.st delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/initializers.st delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/package delete mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess.package/properties.json create mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess/BaselineOfPharoBootstrapProcess.class.st create mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess/NonInteractiveTranscript.extension.st create mode 100644 bootstrap/src/BaselineOfPharoBootstrapProcess/package.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/.filetree delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for32Bits.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for64Bits.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/forArchitecture..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/fromCommandLine.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/new.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/repositoryLocation.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/allPackagesForHermes.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/architecture..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrapCacheDirectory.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/createImage.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/ensureBaselineOfPharoBootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportAllPackagesIntoMcz.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportIntoMcz..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelPackageNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelProtocols.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportMonticelloInStFile.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackageNamesFor.to..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.intoFile..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.usingInitializeScript.intoFile..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.withBlacklistedClasses.withBlacklistedMethods.usingInitializeScript.intoFile..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportProtocolsFor.to..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/generateHermesFiles.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/hermesPackageNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/imageName..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initialize.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initializeImage.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/kernelPackageNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/mczCache.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloNetworkPackageNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloPackageNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/originRepository.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/packagesToExportAsMCZ.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareBootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForExport.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForHermes.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/repositoryLocation.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/sUnitPackageNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.toFileNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/behaviorFrom..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOf..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfGlobal..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfMetaclassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapEnvironment.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapInterpreter.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/builtClassNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/checkpoint..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classForClassMirror..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classLoader.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/compactClassIndexForClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createBehaviorFromDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createClasses.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createFalse.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createInitialObjects.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createNil.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createStubForClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createTrue.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createVMStubs.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/definitionNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed.put..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesGlobalNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initialize.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeBootstrapEnvironment.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeImage.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeSystemDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethods.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorDefinition.prefixed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/isMeta..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/log..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/metaclassForClassMirror..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/methodBuilder.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/objectSpace.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitTrait..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/basicLog..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/initialize.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/log..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addCompilationTime..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addMethodTime..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/initialize.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/class/on.environment..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/allSlots.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/definesClassVariable..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/initializeOn.environment..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/name.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/sharedPools.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/superclass.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/usesClassVariable..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/builder..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classDefinitionFor..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classForClassMirror..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/compactClassIndexForClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createBehaviorFromDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createClassStubForDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createJustStubs.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createStubForClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createTraitFromDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/environment..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/executeDefinitionFor..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/formatOfClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initialize.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPool..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPools.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeTraitNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isClassDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isFullyLoadedClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/map.with..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/metaclassClass.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/migrateOldClass.to..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/next.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named.fullyLoaded..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerTrait.named.fullyLoaded..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/systemDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/useClassBuilder.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/majorVersion.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/minorVersion.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/updateNumber.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/behaviorFrom..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapEnvironment.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcess.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcessCode.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInterpreter.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapWithResumableDebugger.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/buildNumber..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/builtClassNames.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classForClassMirror..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classInstanceVariableIndexAt..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classLoader.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/compactClassIndexForClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createBehaviorFromDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createClasses.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createFalse.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createInitialObjects.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createNil.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createStubForClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createTrue.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createVMStubs.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/definitionNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/environment.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/formatOfClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed.put..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/imageFileReference..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesClassNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesGlobalNamed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initialize.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBackend.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBootstrapEnvironment.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeSpecialObjectArray.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethods.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethodsOf.prefixed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethod.inBehavior..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethods.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorDefinition.prefixed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/instantiateClassLoader.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/isMeta..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/log..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/metaclassForClassMirror..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/methodBuilder.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/objectSpace.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/statistics.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitTrait..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/example5617.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/forArchitecture..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateClassTable.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateFreeLists.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/arrayClassIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/compactImage.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createBehaviorFromDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createFalse.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createNil.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createTrue.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createVMStubs.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/errorMessagesArray.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/firstOrdinaryClassIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/flushNewSpace.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/followForwardingPointers.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/formatOfClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/freeForwarders.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instSpecOfClass..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instantiateClassLoader.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/newSpecialObjectsArray.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/nextOrdinaryClassIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/objectMemory.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/prepareSimulatorForExecution.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/reportSizes.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/writeSnapshot.ofTransformedImage.headerFlags.screenSize..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/instance/initializeBackend.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/createVMStubs.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/initializeBackend.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/class/onEnvironment..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/allSlotsOf..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classFormatIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classInstanceVariableNamesIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classMethodDictionaryIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNameIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNumberOfVariables.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classPoolIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSharedPoolsIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSuperclassIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextClosureOrNilIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextMethodIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextPcIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextReceiverIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextSenderIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextStackpIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/dictionaryArrayIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/initializeIndexes.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/listOfClassSlots.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/lookup.in..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/numberOfInstanceVariablesOf..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processContextIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNameIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNextLinkIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityListIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processSchedulerActiveProcessIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/smalltalkImageGlobalsIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitClassTraitIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitMethodDictionaryIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitNameIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/buildPackagesList.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/builder..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/createNewMethod..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsForBehavior..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsFromDefinition..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/packages.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/shouldMethodBeRemoved..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageDo..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval.save.quit..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile.save.quit..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapMonticello.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeClasses.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeImage.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeRPackages.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeSessionManager.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/patchUnhandledErrorManagement.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/prepareBootstrap.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/classDefinitionFor..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/map.with..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/newClassIndex.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/registerClass.named.fullyLoaded..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromLongGitDescribe..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromSemanticVersion..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/invalidMajorVersion..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/major..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/new.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/fromSemanticVersion..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/invalidMajorVersion..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/majorVersion.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minorVersion.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/validateMajorVersion..st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/README.md delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultBuildIsUnknown.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultCommitHashIsUnknown.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultMinorVersionIsZero.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultPatchVersionIsZero.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultSuffixIsEmpty.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromIncompleteSemanticVersionStartingWithV.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsCommitHash.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsSemanticVersion.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithSuffix.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithV.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithoutV.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithInvalidMajorFails.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithoutSuffix.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenBuildIsGiven.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenCommitHashIsGiven.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenMinorVersionIsGiven.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenPatchVersionIsGiven.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenSuffixIsGiven.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNilMajorVersionFails.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNoDefaultMajorVersionFails.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testProvidedMajorVersionIsStored.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/monticello.meta/categories.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/monticello.meta/initializers.st delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/monticello.meta/package delete mode 100644 bootstrap/src/Pharo30Bootstrap.package/properties.json rename bootstrap/src/{Pharo30Bootstrap.package/MCClassDefinition.extension/instance/kindOfSubclass.st => Pharo30Bootstrap/MCClassDefinition.extension.st} (72%) create mode 100644 bootstrap/src/Pharo30Bootstrap/PBBootstrap.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBBootstrap30.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBBootstrapLogger.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBBootstrapStatistics.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBClassDefinition.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBClassLoader.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBDefinitionFetcher.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBImageBuilder50.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur50.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5032bit.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5064bit.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBInstanceVariableMapping.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBMethodCompiler.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBOldExtendedBootstrap.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBSignal.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBSpurClassLoader.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBStepFinishedSignal.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBStepStartedSignal.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBSubStepFinishedSignal.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBVersionInfo.class.st create mode 100644 bootstrap/src/Pharo30Bootstrap/PBVersionInfoTest.class.st rename bootstrap/src/{Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st => Pharo30Bootstrap/TonelRepository.extension.st} (81%) create mode 100644 bootstrap/src/Pharo30Bootstrap/package.st diff --git a/bootstrap/scripts/prepare_image.st b/bootstrap/scripts/prepare_image.st index e3e9ca1f618..a6b24d2717f 100644 --- a/bootstrap/scripts/prepare_image.st +++ b/bootstrap/scripts/prepare_image.st @@ -6,6 +6,6 @@ repositoryPathString := ((Smalltalk os environment at: 'BOOTSTRAP_REPOSITORY' ifAbsent: ['.']) asFileReference / 'bootstrap' / 'src') fullName. Metacello new baseline: 'PharoBootstrapProcess'; - repository: 'filetree://', repositoryPathString; + repository: 'tonel://', repositoryPathString; load. ] on: Warning do: #resume. diff --git a/bootstrap/src/.filetree b/bootstrap/src/.filetree deleted file mode 100644 index c6704e5144c..00000000000 --- a/bootstrap/src/.filetree +++ /dev/null @@ -1,2 +0,0 @@ -{"packageExtension" : ".package", -"propertyFileExtension" : ".json" } \ No newline at end of file diff --git a/bootstrap/src/.properties b/bootstrap/src/.properties new file mode 100644 index 00000000000..ad0471ded9e --- /dev/null +++ b/bootstrap/src/.properties @@ -0,0 +1,3 @@ +{ + #format : #tonel +} \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/.filetree b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/.filetree deleted file mode 100644 index 57a67973703..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/.filetree +++ /dev/null @@ -1,5 +0,0 @@ -{ - "separateMethodMetaAndSource" : false, - "noMethodMetaData" : true, - "useCypressPropertiesFile" : true -} \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/README.md b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/README.md deleted file mode 100644 index 333cb1e1671..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/README.md +++ /dev/null @@ -1,5 +0,0 @@ -I'm the configuration used to load everything needed to perform the bootstrap proces: -- ConfigurationOfPharoBootstrap: the definition of the Pharo packages to bootstrap -- Espell : is basic to run the bootstrap -- Ficus: is the meta model we use to load the code to bootstrap -- Cargo: the package manager that will give us Monticello definitions for Ficus \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st deleted file mode 100644 index ce8d754e3d2..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/instance/baseline..st +++ /dev/null @@ -1,17 +0,0 @@ -baselines -baseline: spec - - - spec for: #common do: [ - spec blessing: #baseline. - spec baseline: 'Tonel' with: [ spec - repository: 'github://pharo-vcs/tonel:v1.0.13' ]. - spec baseline: 'Hermes' with: [ spec - repository: 'github://tesonep/hermes:v2.5.1'; - loads: 'core' ]. - spec - package: 'Pharo30Bootstrap'. - spec baseline: 'Ring2' with: [ spec - repository: 'github://carolahp/Ring2:master/src'; - loads: 'bootstrap' ]. -] \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/properties.json b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/properties.json deleted file mode 100644 index 459c4d246e0..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/BaselineOfPharoBootstrapProcess.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "ChristopheDemarey 6/30/2016 15:02", - "super" : "BaselineOf", - "category" : "BaselineOfPharoBootstrapProcess", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "BaselineOfPharoBootstrapProcess", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st deleted file mode 100644 index 76bb06247ad..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/instance/ensureCr.st +++ /dev/null @@ -1,3 +0,0 @@ -*BaselineOfPharoBootstrapProcess -ensureCr - self stream cr \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json deleted file mode 100644 index 6a085cdecf3..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/NonInteractiveTranscript.extension/properties.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "name" : "NonInteractiveTranscript" -} \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/categories.st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/categories.st deleted file mode 100644 index 2a2cb84012d..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/categories.st +++ /dev/null @@ -1 +0,0 @@ -SystemOrganization addCategory: #BaselineOfPharoBootstrapProcess! diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/initializers.st b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/initializers.st deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/package b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/package deleted file mode 100644 index 595fa88ff40..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/monticello.meta/package +++ /dev/null @@ -1 +0,0 @@ -(name 'BaselineOfPharoBootstrapProcess') \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/properties.json b/bootstrap/src/BaselineOfPharoBootstrapProcess.package/properties.json deleted file mode 100644 index 6f31cf5a2e6..00000000000 --- a/bootstrap/src/BaselineOfPharoBootstrapProcess.package/properties.json +++ /dev/null @@ -1 +0,0 @@ -{ } \ No newline at end of file diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess/BaselineOfPharoBootstrapProcess.class.st b/bootstrap/src/BaselineOfPharoBootstrapProcess/BaselineOfPharoBootstrapProcess.class.st new file mode 100644 index 00000000000..c5657c7522b --- /dev/null +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess/BaselineOfPharoBootstrapProcess.class.st @@ -0,0 +1,31 @@ +" +I'm the configuration used to load everything needed to perform the bootstrap proces: +- ConfigurationOfPharoBootstrap: the definition of the Pharo packages to bootstrap +- Espell : is basic to run the bootstrap +- Ficus: is the meta model we use to load the code to bootstrap +- Cargo: the package manager that will give us Monticello definitions for Ficus +" +Class { + #name : #BaselineOfPharoBootstrapProcess, + #superclass : #BaselineOf, + #category : 'BaselineOfPharoBootstrapProcess' +} + +{ #category : #baselines } +BaselineOfPharoBootstrapProcess >> baseline: spec [ + + + spec for: #common do: [ + spec blessing: #baseline. + spec baseline: 'Tonel' with: [ spec + repository: 'github://pharo-vcs/tonel:v1.0.13' ]. + spec baseline: 'Hermes' with: [ spec + repository: 'github://tesonep/hermes:v2.5.1'; + loads: 'core' ]. + spec + package: 'Pharo30Bootstrap'. + spec baseline: 'Ring2' with: [ spec + repository: 'github://carolahp/Ring2:master/src'; + loads: 'bootstrap' ]. +] +] diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess/NonInteractiveTranscript.extension.st b/bootstrap/src/BaselineOfPharoBootstrapProcess/NonInteractiveTranscript.extension.st new file mode 100644 index 00000000000..173d851e568 --- /dev/null +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess/NonInteractiveTranscript.extension.st @@ -0,0 +1,6 @@ +Extension { #name : #NonInteractiveTranscript } + +{ #category : #'*BaselineOfPharoBootstrapProcess' } +NonInteractiveTranscript >> ensureCr [ + self stream cr +] diff --git a/bootstrap/src/BaselineOfPharoBootstrapProcess/package.st b/bootstrap/src/BaselineOfPharoBootstrapProcess/package.st new file mode 100644 index 00000000000..2348f994a57 --- /dev/null +++ b/bootstrap/src/BaselineOfPharoBootstrapProcess/package.st @@ -0,0 +1 @@ +Package { #name : #BaselineOfPharoBootstrapProcess } diff --git a/bootstrap/src/Pharo30Bootstrap.package/.filetree b/bootstrap/src/Pharo30Bootstrap.package/.filetree deleted file mode 100644 index 57a67973703..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/.filetree +++ /dev/null @@ -1,5 +0,0 @@ -{ - "separateMethodMetaAndSource" : false, - "noMethodMetaData" : true, - "useCypressPropertiesFile" : true -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/properties.json b/bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/properties.json deleted file mode 100644 index 634ef030a9c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/properties.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "name" : "MCClassDefinition" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for32Bits.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for32Bits.st deleted file mode 100644 index 44d45639217..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for32Bits.st +++ /dev/null @@ -1,4 +0,0 @@ -instance creation -for32Bits - - ^ self forArchitecture: '32' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for64Bits.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for64Bits.st deleted file mode 100644 index d7090f006d9..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/for64Bits.st +++ /dev/null @@ -1,4 +0,0 @@ -instance creation -for64Bits - - ^ self forArchitecture: '64' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/forArchitecture..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/forArchitecture..st deleted file mode 100644 index 0bf2c679878..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/forArchitecture..st +++ /dev/null @@ -1,6 +0,0 @@ -instance creation -forArchitecture: architecture - - ^ super new - architecture: architecture; - yourself \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/fromCommandLine.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/fromCommandLine.st deleted file mode 100644 index 128988e7ef4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/fromCommandLine.st +++ /dev/null @@ -1,23 +0,0 @@ -instance creation -fromCommandLine - | options architecture buildNumber versionInfo | - options := CommandLineArguments new. - architecture := options optionAt: 'ARCH' ifAbsent: [ '32' ]. - buildNumber := options optionAt: 'BUILD_NUMBER' - ifPresent: [ :read | Number readFrom: read ifFail: [ -1 ] ] - ifAbsent: [ -1 ]. - versionInfo := options optionAt: 'VERSION_INFO' ifAbsent: [ self error: 'Must provide VERSION_INFO in the form of a git describe --long' ]. - - ('Architecture: ' , architecture) logCr. - ('BuildNumber: ' , buildNumber) logCr. - ('VersionInfo: ' , versionInfo) logCr. - - versionInfo := (PBVersionInfo fromLongGitDescribe: versionInfo) - buildNumber: buildNumber; - yourself. - - ^ super new - architecture: architecture; - versionInfo: versionInfo; - imageName: 'bootstrap.image'; - yourself \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/new.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/new.st deleted file mode 100644 index 09b2f4881ef..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/new.st +++ /dev/null @@ -1,4 +0,0 @@ -instance creation -new - - self error: 'Please use one of the factory methods #for32Bits or #for64Bits' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/repositoryLocation.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/repositoryLocation.st deleted file mode 100644 index 02a59140e34..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/class/repositoryLocation.st +++ /dev/null @@ -1,6 +0,0 @@ -instance creation -repositoryLocation - - ^ (Smalltalk os environment - at: 'BOOTSTRAP_REPOSITORY' - ifAbsent: [ '.' ]) asFileReference \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/allPackagesForHermes.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/allPackagesForHermes.st deleted file mode 100644 index a43cb60384b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/allPackagesForHermes.st +++ /dev/null @@ -1,4 +0,0 @@ -package-names -allPackagesForHermes - - ^ #BaselineOfPharoBootstrap asClass allPackageNames , #BaselineOfTraits asClass allPackageNames \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/architecture..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/architecture..st deleted file mode 100644 index d2d83f203db..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/architecture..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -architecture: aString - - architecture := aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrap.st deleted file mode 100644 index 3a5051a1dba..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrap.st +++ /dev/null @@ -1,11 +0,0 @@ -bootstrapping -bootstrap - - PBStepStartedSignal log: 'Starting Process.'. - - self prepareBootstrap. - [self createImage ] on:AssertionFailure do: [ :e | e resume ]. - self initializeImage. - - PBStepFinishedSignal log: 'Process ended.' - \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrapCacheDirectory.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrapCacheDirectory.st deleted file mode 100644 index 48a962a51a9..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/bootstrapCacheDirectory.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -bootstrapCacheDirectory - - ^ (Smalltalk os environment at: 'BOOTSTRAP_CACHE' ifAbsent: ['bootstrap-cache']) asFileReference ensureCreateDirectory \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber..st deleted file mode 100644 index ef0fea32ab2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buildNumber: aBuildNumber - - buildNumber := aBuildNumber \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber.st deleted file mode 100644 index dbbabbc4d47..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/buildNumber.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buildNumber - - ^ buildNumber \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/createImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/createImage.st deleted file mode 100644 index fc7bcdaef92..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/createImage.st +++ /dev/null @@ -1,12 +0,0 @@ -bootstrapping -createImage - - | builder | - - builder := PBImageBuilderSpur50 forArchitecture: architecture. - builder versionInfo: versionInfo. - builder imageFileReference: imageReference. - builder systemDefinition: ringEnvironment. - builder espellBackend instanceVariableMapping: (PBInstanceVariableMapping onEnvironment: ringEnvironment ). - - builder bootstrap \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/ensureBaselineOfPharoBootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/ensureBaselineOfPharoBootstrap.st deleted file mode 100644 index 87316510128..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/ensureBaselineOfPharoBootstrap.st +++ /dev/null @@ -1,6 +0,0 @@ -pre-requisites -ensureBaselineOfPharoBootstrap - (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'Metacello-PharoExtensions')) load. - (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'BaselineOfPharoBootstrap')) load. - (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'BaselineOfTraits')) load. - (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'BaselineOfMetacello')) load. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportAllPackagesIntoMcz.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportAllPackagesIntoMcz.st deleted file mode 100644 index 06182e32e7b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportAllPackagesIntoMcz.st +++ /dev/null @@ -1,6 +0,0 @@ -preparation -exportAllPackagesIntoMcz - - self mczCache directory ensureDeleteAll; ensureCreateDirectory. - self packagesToExportAsMCZ do: [ :packageName | - self exportIntoMcz: packageName ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportIntoMcz..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportIntoMcz..st deleted file mode 100644 index cd9a7196e9c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportIntoMcz..st +++ /dev/null @@ -1,4 +0,0 @@ -preparation -exportIntoMcz: aPackageName - - self mczCache storeVersion: (self originRepository loadVersionFromFileNamed: aPackageName). \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelPackageNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelPackageNames.st deleted file mode 100644 index 7994c8c74f2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelPackageNames.st +++ /dev/null @@ -1,7 +0,0 @@ -preparation -exportKernelPackageNames - "Export list of kernel package names for RPackage initialization to a file" - - self exportPackageNamesFor: self kernelPackageNames to: self bootstrapCacheDirectory / 'packagesKernel.txt'. - - \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelProtocols.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelProtocols.st deleted file mode 100644 index 525189d4209..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportKernelProtocols.st +++ /dev/null @@ -1,7 +0,0 @@ -preparation -exportKernelProtocols - "This method exports all protocols of the methots in the kernel in a single text file to be easily readed and imported from the 'in-midst of initialization' image." - - self exportProtocolsFor: self kernelPackageNames to: self bootstrapCacheDirectory / 'protocolsKernel.txt'. - - \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportMonticelloInStFile.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportMonticelloInStFile.st deleted file mode 100644 index e941fe5841f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportMonticelloInStFile.st +++ /dev/null @@ -1,22 +0,0 @@ -preparation -exportMonticelloInStFile - - self - exportPackages: self monticelloPackageNames - usingInitializeScript: ' - ChangeSet initialize. - - ZipConstants initialize. - ZipFileConstants initialize. - ZipWriteStream initialize. - GZipConstants initialize. - InflateStream initialize. - FastInflateStream initialize. - - MCCacheRepository initialize. - MCPackageManager initialize. - MCLazyVersionInfo initialize. - MCMethodDefinition initialize. - MCDataStream initialize. - MCWorkingCopy initialize.' - intoFile: 'Monticello.st' diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackageNamesFor.to..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackageNamesFor.to..st deleted file mode 100644 index 564842c46a3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackageNamesFor.to..st +++ /dev/null @@ -1,8 +0,0 @@ -exporting -exportPackageNamesFor: packageNames to: aTextFile - - "export list of packages for the RPackage initialization. Eech package on standalone line" - - aTextFile ensureDelete. - aTextFile writeStreamDo: [:stream | - packageNames do: [ :each | stream nextPutAll: each; cr ]]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.intoFile..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.intoFile..st deleted file mode 100644 index 869c6e4c99f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.intoFile..st +++ /dev/null @@ -1,7 +0,0 @@ -exporting -exportPackages: packageList intoFile: aFileName - - self - exportPackages: packageList - usingInitializeScript: '' - intoFile: aFileName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.usingInitializeScript.intoFile..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.usingInitializeScript.intoFile..st deleted file mode 100644 index 93b3035042e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.usingInitializeScript.intoFile..st +++ /dev/null @@ -1,9 +0,0 @@ -exporting -exportPackages: packageList usingInitializeScript: aScriptString intoFile: aFileName - - self - exportPackages: packageList - withBlacklistedClasses: #() - withBlacklistedMethods: #() - usingInitializeScript: aScriptString - intoFile: aFileName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.withBlacklistedClasses.withBlacklistedMethods.usingInitializeScript.intoFile..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.withBlacklistedClasses.withBlacklistedMethods.usingInitializeScript.intoFile..st deleted file mode 100644 index 2db7dc2ea0c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportPackages.withBlacklistedClasses.withBlacklistedMethods.usingInitializeScript.intoFile..st +++ /dev/null @@ -1,21 +0,0 @@ -exporting -exportPackages: packageList withBlacklistedClasses: blacklistedClasses withBlacklistedMethods: methods usingInitializeScript: aString intoFile: aFileName - - | mcst | - mcst := (self bootstrapCacheDirectory / 'st-cache' / aFileName) asFileReference. - mcst ensureDelete. - mcst parent ensureCreateDirectory. - mcst writeStreamDo: [ :stream | | writer version | - writer := MCStWriter on: stream. - writer writeInitializers: false. - - packageList do: [ :packageName | - | definitions | - version := (self originRepository loadVersionFromFileNamed: packageName). - definitions := version snapshot definitions. - definitions := definitions reject: [:def | blacklistedClasses includes: def className ]. - definitions := definitions reject: [:def | def isMethodDefinition and: [methods includes: def selector] ]. - writer writeDefinitions: definitions ]. - "Write initialization instructions" - stream nextPutAll: aString. - ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportProtocolsFor.to..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportProtocolsFor.to..st deleted file mode 100644 index 172bf7a1010..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/exportProtocolsFor.to..st +++ /dev/null @@ -1,20 +0,0 @@ -preparation -exportProtocolsFor: packageNames to: protocolsFile - - "This methods takes the packages from the (filetree) origin repository, reads all methods in these packages and export the their protocols in a single text file with the following format: - [className]\tab[class is meta?]\tab[selector]\tab[protocol]." - - | originRepository | - originRepository := self originRepository. - protocolsFile ensureDelete. - protocolsFile writeStreamDo: [:stream | | versions | - versions := originRepository directory directories sorted. - versions - select: [ :file | packageNames includes: file basenameWithoutExtension ] - thenDo: [:file | | version | - version := originRepository versionWithInfo: (originRepository versionInfoFromVersionNamed: file basenameWithoutExtension). - (version snapshot definitions select: #isMethodDefinition) do: [:def | - stream nextPutAll: def className asString; tab. - stream nextPutAll: def classIsMeta asString; tab. - stream nextPutAll: def selector asString; tab. - stream nextPutAll: def category asString; cr ]]] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/generateHermesFiles.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/generateHermesFiles.st deleted file mode 100644 index 18c63e4b241..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/generateHermesFiles.st +++ /dev/null @@ -1,13 +0,0 @@ -preparation -generateHermesFiles - | oldPackage hePackage writer | - self hermesPackageNames - do: [ :packageName | - oldPackage := ringEnvironment ask packageNamed: packageName. - hePackage := HERing2ToHermesBuilder new visitPackage: oldPackage. - writer := HEBinaryReaderWriter new - stream: (File openForWriteFileNamed: (self bootstrapCacheDirectory / packageName , 'hermes') fullName); - yourself. - hePackage writeInto: writer. - writer flush. - writer close] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/hermesPackageNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/hermesPackageNames.st deleted file mode 100644 index c1254b77a9f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/hermesPackageNames.st +++ /dev/null @@ -1,3 +0,0 @@ -package-names -hermesPackageNames - ^ #BaselineOfPharoBootstrap asClass packagesToExportWithHermes , #BaselineOfTraits asClass allPackageNames \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/imageName..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/imageName..st deleted file mode 100644 index f103927ef1f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/imageName..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -imageName: aString - - imageReference := (self bootstrapCacheDirectory / aString) asFileReference \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initialize.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initialize.st deleted file mode 100644 index 13a7621cc6c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initialize.st +++ /dev/null @@ -1,6 +0,0 @@ -initialization -initialize - "Initialize the logging" - - (CustomStringStreamBeacon with: FileStream stdout) - startFor: PBStepStartedSignal , PBStepFinishedSignal \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initializeImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initializeImage.st deleted file mode 100644 index 51db5c14e86..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/initializeImage.st +++ /dev/null @@ -1,3 +0,0 @@ -initialization -initializeImage - \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/kernelPackageNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/kernelPackageNames.st deleted file mode 100644 index 2d10721503b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/kernelPackageNames.st +++ /dev/null @@ -1,5 +0,0 @@ -package-names -kernelPackageNames - - self ensureBaselineOfPharoBootstrap. - ^ #BaselineOfPharoBootstrap asClass kernelPackageNames \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/mczCache.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/mczCache.st deleted file mode 100644 index 1e166e54f40..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/mczCache.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -mczCache - - ^ MCDirectoryRepository new directory: (self bootstrapCacheDirectory / 'pharo-local' / 'package-cache') ensureCreateDirectory \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloNetworkPackageNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloNetworkPackageNames.st deleted file mode 100644 index 7e7f7edd1b1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloNetworkPackageNames.st +++ /dev/null @@ -1,12 +0,0 @@ -package-names -monticelloNetworkPackageNames - - ^ #('Network-Kernel' - 'Network-MIME' - 'Network-Protocols' - - 'MonticelloRemoteRepositories' - - 'Zinc-HTTP' - 'Zinc-FileSystem' - 'Zodiac-Core') \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloPackageNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloPackageNames.st deleted file mode 100644 index cebb1ea035c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/monticelloPackageNames.st +++ /dev/null @@ -1,4 +0,0 @@ -package-names -monticelloPackageNames - - ^ #('System-Model' 'Ring-OldChunkImporter' 'Zinc-Resource-Meta-Core' 'System-Changes' 'Ring-Definitions-Core' 'Ring-Definitions-Containers' 'Compression' 'Monticello' 'Ring-Definitions-Monticello' ) \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/originRepository.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/originRepository.st deleted file mode 100644 index 320fe5a02de..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/originRepository.st +++ /dev/null @@ -1,9 +0,0 @@ -accessing -originRepository - | repositoryReference | - repositoryReference := self repositoryLocation / 'src'. - - ^ originRepository - ifNil: [ originRepository := TonelRepository new - directory: repositoryReference; - yourself] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/packagesToExportAsMCZ.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/packagesToExportAsMCZ.st deleted file mode 100644 index 010080ea6c8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/packagesToExportAsMCZ.st +++ /dev/null @@ -1,4 +0,0 @@ -package-names -packagesToExportAsMCZ - - ^ #(BaselineOfMetacello) , (#BaselineOfMetacello asClass allPackageNames) , self monticelloPackageNames , self hermesPackageNames, self kernelPackageNames , self monticelloNetworkPackageNames \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareBootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareBootstrap.st deleted file mode 100644 index 13bdb64a05c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareBootstrap.st +++ /dev/null @@ -1,12 +0,0 @@ -preparation -prepareBootstrap - - self - exportKernelProtocols; - exportKernelPackageNames; - exportAllPackagesIntoMcz; - exportMonticelloInStFile; - - prepareEnvironmentForHermes; - generateHermesFiles; - prepareEnvironmentForExport. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForExport.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForExport.st deleted file mode 100644 index 469b35e5604..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForExport.st +++ /dev/null @@ -1,21 +0,0 @@ -preparation -prepareEnvironmentForExport - | allPackages | - - allPackages := ringEnvironment packages collect: #name. - - (allPackages reject: [ :x | #BaselineOfPharoBootstrap asClass kernelPackageNames includes: x ]) - do: [ :x | - | p | - p := ringEnvironment ask packageNamed: x. - p extensionMethods do: [ :e | e methodClass removeLocalMethod: e ]. - p definedBehaviors - do: [ :e | - ringEnvironment removeBehavior: e. - ringEnvironment removeBehavior: e classSide - ]. - ringEnvironment removePackage: p]. - - ringEnvironment cleanGlobalVariables. - ringEnvironment addGlobalsNamed: #(#Smalltalk #SourceFiles #Transcript #Undeclared #Display #TextConstants #Sensor #Processor #SystemOrganization). - ringEnvironment clean diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForHermes.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForHermes.st deleted file mode 100644 index 5c037862a76..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/prepareEnvironmentForHermes.st +++ /dev/null @@ -1,6 +0,0 @@ -preparation -prepareEnvironmentForHermes - ringEnvironment := self originRepository asRing2EnvironmentWith: self allPackagesForHermes. - ringEnvironment fixProtoObjectClassSuperclass. - ringEnvironment addGlobalsNamed: #(Smalltalk Transcript FileStream MacRomanTextConverter ChangeSet Character SourceFiles Processor Display Sensor UTF8TextConverter SystemOrganization Undeclared TextConstants). - ringEnvironment clean \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/repositoryLocation.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/repositoryLocation.st deleted file mode 100644 index 660d0dfb15c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/repositoryLocation.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -repositoryLocation - - ^ self class repositoryLocation \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/sUnitPackageNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/sUnitPackageNames.st deleted file mode 100644 index 8d0dbe5b729..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/sUnitPackageNames.st +++ /dev/null @@ -1,5 +0,0 @@ -package-names -sUnitPackageNames - - self ensureBaselineOfPharoBootstrap. - ^ #BaselineOfPharoBootstrap asClass sUnitPackageNames diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo..st deleted file mode 100644 index 81e03df0a89..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -versionInfo: anObject - versionInfo := anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo.st deleted file mode 100644 index 28f1f452694..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/instance/versionInfo.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -versionInfo - ^ versionInfo \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/properties.json deleted file mode 100644 index 748e5eb5b98..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap.class/properties.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "architecture", - "imageReference", - "buildNumber", - "originRepository", - "ringEnvironment", - "versionInfo" - ], - "name" : "PBBootstrap", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap..st deleted file mode 100644 index 9c341bcefa1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap..st +++ /dev/null @@ -1,4 +0,0 @@ -bootstrapping -bootstrap: version - - self bootstrap: version toFileNamed: version, '.image' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.st deleted file mode 100644 index 6667dca40e4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.st +++ /dev/null @@ -1,4 +0,0 @@ -bootstrapping -bootstrap - - self bootstrap: '3.864' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.toFileNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.toFileNamed..st deleted file mode 100644 index 4a870a14346..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/class/bootstrap.toFileNamed..st +++ /dev/null @@ -1,49 +0,0 @@ -bootstrapping -bootstrap: version toFileNamed: aFileName - - | definition bootstrap edit | - definition := (FiMetacelloWriter new written: (ConfigurationOfPharoBootstrap project version: version)). - - edit := definition ficusPackages - editAtPath: FiPath root / #Slot / #contents / #SlotClassBuilder / #methods - do: [ :elem | elem editInclude: (FiMethod sourceCode: 'validateClassName') ]. - definition := (definition ficusPackages resultOf: edit) asRFiEnvironment. - - edit := definition ficusPackages - editAtPath: FiPath root / #Traits / #contents / #TClass / #methods - do: [ :elem | elem editInclude: (FiMethod sourceCode: 'setName: aSymbol andRegisterInCategory: categorySymbol environment: aSystemDictionary - (self environment == aSystemDictionary - and: [self name = aSymbol - and: [self category = categorySymbol]]) ifTrue: [^self]. - - (self environment notNil and: [self name notNil and: [self name ~= aSymbol]]) ifTrue: [ - self environment renameClass: self as: aSymbol]. - - self name: aSymbol. - self environment: aSystemDictionary. - self environment at: self name put: self. - self environment organization classify: self name under: categorySymbol. - ^ true') ]. - definition := (definition ficusPackages resultOf: edit) asRFiEnvironment. - - edit := definition ficusPackages - editAtPath: FiPath root / #Traits / #contents / #TBehavior / #methods - do: [ :elem | elem editInclude: (FiMethod sourceCode: 'addTraitSelector: aSymbol withMethod: aCompiledMethod - | source method | - method := aCompiledMethod copy. - method selector: aSymbol. - method methodClass: self. - self isTrait ifFalse: [ method properties at: #traitSource put: aCompiledMethod ]. - self basicAddSelector: aSymbol withMethod: method') ]. - definition := (definition ficusPackages resultOf: edit) asRFiEnvironment. - - bootstrap := self basicNew - initializeSystemDefinition: definition; - initializeBootstrapEnvironment; - createVMStubs; - createInitialObjects; - createClasses; - installMethods; - initializeImage. - - bootstrap objectSpace serializeInFileNamed: aFileName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/behaviorFrom..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/behaviorFrom..st deleted file mode 100644 index 50ceae3901e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/behaviorFrom..st +++ /dev/null @@ -1,3 +0,0 @@ -visiting -behaviorFrom: aRFiClassOrTrait - ^ aRFiClassOrTrait accept: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOf..st deleted file mode 100644 index 10ba6d54ee3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOf..st +++ /dev/null @@ -1,12 +0,0 @@ -bootstrapping-bindings -bindingOf: aString - - self halt. - ^ bootstrappedBindingCache - at: aString - ifAbsentPut: [ - | association | - association := (self classNamed: #Association) mirror basicNew. - association instanceVariableAtIndex: 1 put: self objectSpace nilObject. - association instanceVariableAtIndex: 2 put: (self classNamed: aString) mirror. - association ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfGlobal..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfGlobal..st deleted file mode 100644 index 25b504f5331..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfGlobal..st +++ /dev/null @@ -1,12 +0,0 @@ -bootstrapping-bindings -bindingOfGlobal: aString - - self halt. - ^ bootstrappedBindingCache - at: aString - ifAbsentPut: [ - | association | - association := (self classNamed: #Association) basicNew. - association instanceVariableAtIndex: 1 put: self objectSpace nilObject. - association instanceVariableAtIndex: 2 put: (self classNamed: aString). - association ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfMetaclassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfMetaclassNamed..st deleted file mode 100644 index 197eac2462b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bindingOfMetaclassNamed..st +++ /dev/null @@ -1,8 +0,0 @@ -accessing -bindingOfMetaclassNamed: aBehaviorName - - ^remoteMetaclassBindings - at: aBehaviorName - ifAbsentPut: [ objectSpace - newAssociationWithKey: objectSpace nilObject - andValue: (bootstrapEnvironment at: aBehaviorName) basicClass ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrap.st deleted file mode 100644 index 43494d3d2a7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrap.st +++ /dev/null @@ -1,9 +0,0 @@ -running -bootstrap - - self initializeBootstrapEnvironment. - self createVMStubs. - self createInitialObjects. - self createClasses. - self installMethods. - self initializeImage. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapEnvironment.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapEnvironment.st deleted file mode 100644 index 853e3732477..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapEnvironment.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -bootstrapEnvironment - - ^ bootstrapEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapInterpreter.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapInterpreter.st deleted file mode 100644 index 22b5ba83bb8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/bootstrapInterpreter.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -bootstrapInterpreter - - ^ bootstrapInterpreter \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/builtClassNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/builtClassNames.st deleted file mode 100644 index 321f6cea4e4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/builtClassNames.st +++ /dev/null @@ -1,4 +0,0 @@ -class-loader -builtClassNames - - ^ classLoader loadedClassNames \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/checkpoint..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/checkpoint..st deleted file mode 100644 index a2726c8c1a3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/checkpoint..st +++ /dev/null @@ -1,6 +0,0 @@ -helpers -checkpoint: name - - | isNewSession | - isNewSession := Smalltalk saveAs: name. - isNewSession ifTrue: [ UIManager default defer: [ self halt ]] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classForClassMirror..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classForClassMirror..st deleted file mode 100644 index f4f9ea134e4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classForClassMirror..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -classForClassMirror: anEPClassMirror - - ^ classLoader classForClassMirror: anEPClassMirror \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classLoader.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classLoader.st deleted file mode 100644 index 31fd849da69..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classLoader.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classLoader - ^ classLoader \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classNamed..st deleted file mode 100644 index 4ce5d5048ee..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/classNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -class-loader -classNamed: aString - - ^ EPRemoteClass on: (classLoader classNamed: aString) environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/compactClassIndexForClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/compactClassIndexForClassNamed..st deleted file mode 100644 index 0a4fc960507..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/compactClassIndexForClassNamed..st +++ /dev/null @@ -1,35 +0,0 @@ -helpers -compactClassIndexForClassNamed: aName - - ^ #( - CompiledMethod - Slot - Array - LargeNegativeInteger - LargePositiveInteger - Float - Protocol - Association - Point - Rectangle - ByteString - BlockClosure - nil - MethodContext - nil - Bitmap - nil - nil - nil - nil - nil - nil - nil - nil - nil - nil - nil - nil - nil - nil - nil) indexOf: aName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createBehaviorFromDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createBehaviorFromDefinition..st deleted file mode 100644 index 78d28b64d52..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createBehaviorFromDefinition..st +++ /dev/null @@ -1,4 +0,0 @@ -running -createBehaviorFromDefinition: aRFiDefinition - - ^ classLoader createBehaviorFromDefinition: aRFiDefinition \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createClasses.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createClasses.st deleted file mode 100644 index 5fcd6254aef..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createClasses.st +++ /dev/null @@ -1,19 +0,0 @@ -running -createClasses - | definitions total smalltalkInstance | - definitions := systemDefinition allClassesAndTraits sorted: [ :a :b | a name < b name ]. - total := definitions size. - definitions - withIndexDo: [ :aClassDefinition :index | | time | - time := [self createBehaviorFromDefinition: aClassDefinition.] timeToRun. - - self log: ((index printPaddedWith: $0 to: 3), '/' , - total asString, ' - ', - time asString ,': Built behavior ', - aClassDefinition name). ]. - - smalltalkInstance := bootstrapEnvironment at: #Smalltalk. - objectSpace interpreter: bootstrapInterpreter. - objectSpace backend smalltalkInstance: smalltalkInstance. - objectSpace environment: ((EPSystemDictionary withSystemDictionary: objectSpace backend systemDictionary) objectSpace: objectSpace; yourself). - self checkpoint: 'created_classes'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createFalse.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createFalse.st deleted file mode 100644 index 4ad57dc5d5a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createFalse.st +++ /dev/null @@ -1,5 +0,0 @@ -running -createFalse - - objectSpace falseObject: (self createStubForClassNamed: #False) basicNew. - ^ objectSpace falseObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createInitialObjects.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createInitialObjects.st deleted file mode 100644 index 3419aebb020..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createInitialObjects.st +++ /dev/null @@ -1,72 +0,0 @@ -running -createInitialObjects - - | characterTable | - "We add the main globals that will be later needed for compilation" - self log: 'initializing globals'. - self bootstrapEnvironment at: #Processor put: objectSpace nilObject. - self bootstrapEnvironment at: #Smalltalk put: objectSpace nilObject. - self bootstrapEnvironment at: #Undeclared put: objectSpace nilObject. - - "We initialize the hash table sizes by hand. - The AST interpreter is too slow for it" - self log: 'initializing hash table sizes'. - (self classNamed: #HashTableSizes) mirror - instanceVariableAtIndex: 15 - put: (objectSpace newArrayWithAll: (HashTableSizes sizes collect: [:each | objectSpace objectMirrorOn: each ])). - - self log: 'preparing class builder'. - self bootstrapInterpreter evaluateCode: 'DangerousClassNotifier disable'. - self bootstrapInterpreter evaluateCode: 'Undeclared := Dictionary new.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk := SmalltalkImage basicNew.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk instVarAt: 1 put: (SystemDictionary withOrganizer: SystemOrganizer new).'. - self bootstrapInterpreter evaluateCode: 'Smalltalk at: #Smalltalk put: Smalltalk.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk at: #Undeclared put: Undeclared.'. - - self log: 'class loader now creates class pools'. - classLoader initializeClassPools. - - self log: 'Initializing StartUp list'. - self bootstrapInterpreter evaluateCode: 'SmalltalkImage initialize.'. - - self log: 'Initializing Character Table'. - self bootstrapInterpreter evaluateCode: 'Character initialize.'. - characterTable := (EPInternalCharacterTable new objectSpace: objectSpace). - objectSpace backend characterTable: ((self classNamed: #Character) classPool at: #CharacterTable). - objectSpace characterTable: characterTable. - - self log: 'Initializing Character Table'. - self bootstrapInterpreter evaluateCode: 'String classPool at: #AsciiOrder put: ((0 to: 255) as: ByteArray).'. - - self log: 'Initializing Date and Time constants'. - self bootstrapInterpreter evaluateCode: 'DateAndTime initialize.'. - self bootstrapInterpreter evaluateCode: 'ChronologyConstants initialize.'. - - self log: 'Initializing object dependent fields'. - self bootstrapInterpreter evaluateCode: 'Object initialize.'. - - self log: 'Installing symbol table'. - self bootstrapInterpreter evaluateCode: 'Symbol initialize. - Symbol classPool at: #SymbolTable put: (WeakSet withAll: ByteSymbol allInstances)'. - objectSpace symbolTable: (EPInternalSymbolTable new objectSpace: objectSpace). - - self log: 'Bootstrapping class layouts'. - bootstrapInterpreter evaluateCode: - '| superLayout | - superLayout := EmptyLayout instance. - Class - instVarAt: 4 - put: (FixedLayout - extending: superLayout - scope: (superLayout slotScope extend: #(superclass methodDict format layout instanceVariables organization subclasses name classPool sharedPools environment category traitComposition localSelectors)) - host: Class). - Class - instVarAt: 5 put: #(superclass methodDict format layout instanceVariables organization subclasses name classPool sharedPools environment category traitComposition localSelectors). - - SmallInteger - instVarAt: 4 - put: (SmallIntegerLayout new).'. - - self log: 'Class builder ready to create classes'. - classLoader useClassBuilder. - self checkpoint: 'created_initial_objects'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createNil.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createNil.st deleted file mode 100644 index 566a6983082..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createNil.st +++ /dev/null @@ -1,10 +0,0 @@ -running -createNil - - "Temporal nil: it is needed so the nil stub class can be initialized with it" - objectSpace nilObject: (objectSpace objectMirrorOn: (UndefinedObject basicNew)). - - "We create the real nil and become it" - objectSpace nilObject becomeInto: (self createStubForClassNamed: #UndefinedObject) basicNew. - - ^ objectSpace nilObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createStubForClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createStubForClassNamed..st deleted file mode 100644 index 5fbd6b40619..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createStubForClassNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -class-loader -createStubForClassNamed: aString - - ^ classLoader createStubForClassNamed: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createTrue.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createTrue.st deleted file mode 100644 index faf295f5374..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createTrue.st +++ /dev/null @@ -1,5 +0,0 @@ -running -createTrue - - objectSpace trueObject: (self createStubForClassNamed: #True) basicNew. - ^ objectSpace trueObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createVMStubs.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createVMStubs.st deleted file mode 100644 index 5413ae13d42..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/createVMStubs.st +++ /dev/null @@ -1,25 +0,0 @@ -running -createVMStubs - - self log: 'creating initial Objects needed by the VM'. - - objectSpace backend specialObjectsArray: (objectSpace objectMirrorOn: (Array new: 59)). - self createNil. - 1 to: 59 do: [ :i | - objectSpace backend specialObjectsArray at: i put: objectSpace nilObject ]. - - self createFalse. - self createTrue. - objectSpace backend smallIntegerClass: (self createStubForClassNamed: #SmallInteger). - objectSpace backend characterClass: (self createStubForClassNamed: #Character). - objectSpace backend byteSymbolClass: (self createStubForClassNamed: #ByteSymbol). - objectSpace backend byteStringClass: (self createStubForClassNamed: #ByteString). - objectSpace backend byteArrayClass: (self createStubForClassNamed: #ByteArray). - objectSpace backend associationClass: (self createStubForClassNamed: #Association). - objectSpace backend arrayClass: (self createStubForClassNamed: #Array). - objectSpace backend symbolTableClass: (self createStubForClassNamed: #Symbol). - objectSpace backend largeNegativeIntegerClass: (self createStubForClassNamed: #LargeNegativeInteger). - objectSpace backend largePositiveIntegerClass: (self createStubForClassNamed: #LargePositiveInteger). - objectSpace backend methodClass: (self createStubForClassNamed: #CompiledMethod). - objectSpace backend floatClass: (self createStubForClassNamed: #Float). - self checkpoint: 'created_vm_objects'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/definitionNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/definitionNamed..st deleted file mode 100644 index 9dfaefdd228..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/definitionNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -running -definitionNamed: aName - - ^ systemDefinition classNamed: aName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed..st deleted file mode 100644 index b4de1e2c3e0..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed..st +++ /dev/null @@ -1,6 +0,0 @@ -accessing -globalNamed: aString - - (self includesClassNamed: aString) - ifTrue: [ ^ (self classNamed: aString) mirror ]. - self halt. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed.put..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed.put..st deleted file mode 100644 index 04327f55439..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/globalNamed.put..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -globalNamed: aString put: aValue - - bootstrapEnvironment at: aString put: aValue \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesClassNamed..st deleted file mode 100644 index 729abcae3f6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesClassNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -testing -includesClassNamed: aString - - ^ systemDefinition includesClassNamed: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesGlobalNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesGlobalNamed..st deleted file mode 100644 index e7773737d95..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/includesGlobalNamed..st +++ /dev/null @@ -1,5 +0,0 @@ -testing -includesGlobalNamed: aString - - "It is a global if we have it in our system definition" - ^ systemDefinition includesClassNamed: aString. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initialize.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initialize.st deleted file mode 100644 index 54fd83a420d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initialize.st +++ /dev/null @@ -1,9 +0,0 @@ -running -initialize - - super initialize. - systemDefinition ifNil: [ - systemDefinition := (FiMetacelloWriter new written: - (ConfigurationOfPharoBootstrap project version: '3.864')) ]. - bootstrappedBindingCache := EPDictionary new. - remoteMetaclassBindings := EPDictionary new. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeBootstrapEnvironment.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeBootstrapEnvironment.st deleted file mode 100644 index 07c5cf3a96c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeBootstrapEnvironment.st +++ /dev/null @@ -1,22 +0,0 @@ -running -initializeBootstrapEnvironment - - bootstrapEnvironment := Dictionary new. - - "We initialize the object space with a boot symbol table and character table. - We will later replace them by real ones." - objectSpace := EPObjectSpace new. - objectSpace backend: EPOzVMBackend new. - objectSpace characterTable: (EPExternalCharacterTable new objectSpace: objectSpace; yourself). - objectSpace symbolTable: (EPExternalSymbolTable new objectSpace: objectSpace; yourself). - - classLoader createJustStubs. - classLoader environment: bootstrapEnvironment. - classLoader systemDefinition: systemDefinition. - classLoader builder: self. - - bootstrapInterpreter := EPASTEvaluator new. - bootstrapInterpreter codeProvider: self. - bootstrapInterpreter environment: self. - bootstrapInterpreter objectSpace: objectSpace. - objectSpace interpreter: bootstrapInterpreter. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeImage.st deleted file mode 100644 index 92ca7da0bb5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeImage.st +++ /dev/null @@ -1,4 +0,0 @@ -running -initializeImage - self halt: 'should migrate this method'. - self checkpoint: 'Image initialized'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeSystemDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeSystemDefinition..st deleted file mode 100644 index fc67d559940..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/initializeSystemDefinition..st +++ /dev/null @@ -1,5 +0,0 @@ -running -initializeSystemDefinition: aSystemDefinition - - systemDefinition := aSystemDefinition. - self initialize. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethods.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethods.st deleted file mode 100644 index bfbed47b9c9..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethods.st +++ /dev/null @@ -1,10 +0,0 @@ -running -installMethods - - | definitions total | - definitions := systemDefinition allClassesAndTraits sorted: [ :a :b | a name > b name ]. - total := definitions size. - definitions withIndexDo: [ :aClassDefinition :index | - self installMethodsInBehaviorDefinition: aClassDefinition prefixed: (index printPaddedWith: $0 to: 3), '/' , total asString. - ]. - self checkpoint: 'installed_methods'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorDefinition.prefixed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorDefinition.prefixed..st deleted file mode 100644 index 0b89141f447..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorDefinition.prefixed..st +++ /dev/null @@ -1,15 +0,0 @@ -running -installMethodsInBehaviorDefinition: behaviorDefinition prefixed: aPrefix - | behaviorMirror | - behaviorMirror := bootstrapEnvironment at: behaviorDefinition name. -" 1haltIf: [ behaviorMirror isKindOf: EPTraitMirror ] ." - self - installMethodsInBehaviorMapping: behaviorDefinition - using: self methodBuilder - onMirror: behaviorMirror - prefixed: aPrefix. - self - installMethodsInBehaviorMapping: behaviorDefinition classSide - using: self methodBuilder - onMirror: behaviorMirror basicClass - prefixed: aPrefix. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st deleted file mode 100644 index d3e839df183..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st +++ /dev/null @@ -1,17 +0,0 @@ -running -installMethodsInBehaviorMapping: aBehaviorMapping using: aMethodBuilder onMirror: mirror prefixed: aPrefix - | newMethods theClass | - newMethods := aMethodBuilder methodsFromDefinition: aBehaviorMapping. - newMethods := newMethods sorted: [ :m1 :m2 | m1 selector < m2 selector ]. - theClass := (self classNamed: aBehaviorMapping theNonMetaClass name) mirror. - aBehaviorMapping isMeta ifTrue: [ theClass := theClass basicClass ]. - newMethods do: [ :m | - self log: aPrefix, ': Installing method ', - aBehaviorMapping name, '>>', m selector. - self objectSpace interpreter - evaluateCode: 'theBehavior addSelectorSilently: selector withMethod: compiledMethod' - withTemps: { - 'theBehavior' -> theClass. - 'selector' -> (m selector asLiteralInObjectSpace: objectSpace). - 'compiledMethod' -> m } - ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/isMeta..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/isMeta..st deleted file mode 100644 index 69e0190e0df..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/isMeta..st +++ /dev/null @@ -1,4 +0,0 @@ -testing -isMeta: aMirror - - ^ (self classNamed: #Metaclass) mirror = aMirror basicClass \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/log..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/log..st deleted file mode 100644 index 1e5b0584996..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/log..st +++ /dev/null @@ -1,4 +0,0 @@ -helpers -log: aString - - FileStream stdout nextPutAll: aString;cr. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/metaclassForClassMirror..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/metaclassForClassMirror..st deleted file mode 100644 index a083e59c88a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/metaclassForClassMirror..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -metaclassForClassMirror: anEPClassMirror - - ^ EPRemoteMetaClass on: anEPClassMirror environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/methodBuilder.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/methodBuilder.st deleted file mode 100644 index bc3275a2f93..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/methodBuilder.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -methodBuilder - ^ PBMethodCompiler new builder: self; yourself. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/objectSpace.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/objectSpace.st deleted file mode 100644 index 42df9445e34..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/objectSpace.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -objectSpace - ^ objectSpace \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitClass..st deleted file mode 100644 index fbc54f1b981..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitClass..st +++ /dev/null @@ -1,5 +0,0 @@ -visiting -visitClass: aRFiClass - ^ EPRemoteClass - on: (classLoader classNamed: aRFiClass name) - environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitTrait..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitTrait..st deleted file mode 100644 index 9dacd56b657..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/instance/visitTrait..st +++ /dev/null @@ -1,5 +0,0 @@ -visiting -visitTrait: aRFiTrait - ^ EPRemoteTrait - on: (classLoader classNamed: aRFiTrait name) - environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/properties.json deleted file mode 100644 index 27bcbbb8f26..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrap30.class/properties.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "objectSpace", - "classLoader", - "systemDefinition", - "bootstrapInterpreter", - "bootstrappedBindingCache", - "bootstrapEnvironment", - "remoteMetaclassBindings" - ], - "name" : "PBBootstrap30", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/basicLog..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/basicLog..st deleted file mode 100644 index 72a76cd699d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/basicLog..st +++ /dev/null @@ -1,4 +0,0 @@ -logging-Deprecated -basicLog: anItem - - FileStream stdout nextPutAll: anItem value asString ;cr. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/initialize.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/initialize.st deleted file mode 100644 index eda8685ba7e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/initialize.st +++ /dev/null @@ -1,6 +0,0 @@ -logging-Deprecated -initialize - - super initialize. - queue := AtomicSharedQueue new. - logging := false. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/log..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/log..st deleted file mode 100644 index c3282e51a15..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/instance/log..st +++ /dev/null @@ -1,7 +0,0 @@ -logging-Deprecated -log: aLogStatement - - queue nextPut: aLogStatement. - logging ifFalse: [ - logging := true. - [ [ self basicLog: queue next ] repeat ] fork ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/properties.json deleted file mode 100644 index 413aecdef6e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapLogger.class/properties.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "queue", - "logging" - ], - "name" : "PBBootstrapLogger", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addCompilationTime..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addCompilationTime..st deleted file mode 100644 index c7bd7316e43..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addCompilationTime..st +++ /dev/null @@ -1,4 +0,0 @@ -adding -addCompilationTime: aTime - - compilationTimes add: aTime. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addMethodTime..st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addMethodTime..st deleted file mode 100644 index caa55bc195e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/addMethodTime..st +++ /dev/null @@ -1,4 +0,0 @@ -adding -addMethodTime: aTime - - methodTimes add: aTime. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/initialize.st b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/initialize.st deleted file mode 100644 index f3324e01c4e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/instance/initialize.st +++ /dev/null @@ -1,5 +0,0 @@ -adding -initialize - super initialize. - methodTimes := OrderedCollection new. - compilationTimes := OrderedCollection new. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/properties.json deleted file mode 100644 index 5d1b0098495..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBBootstrapStatistics.class/properties.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "methodTimes", - "compilationTimes" - ], - "name" : "PBBootstrapStatistics", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/class/on.environment..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/class/on.environment..st deleted file mode 100644 index 72a5bcb2dd3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/class/on.environment..st +++ /dev/null @@ -1,6 +0,0 @@ -instance-creation -on: classDefinition environment: aBootstrapEnvironment - - ^ self new - initializeOn: classDefinition environment: aBootstrapEnvironment; - yourself \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/allSlots.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/allSlots.st deleted file mode 100644 index c2a8da572e9..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/allSlots.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -allSlots - - ^ classDefinition allSlots \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/definesClassVariable..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/definesClassVariable..st deleted file mode 100644 index 5206bd1d975..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/definesClassVariable..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -definesClassVariable: aString - - ^ classDefinition instanceSide classVarNames includes: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/initializeOn.environment..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/initializeOn.environment..st deleted file mode 100644 index 7f679c364a7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/initializeOn.environment..st +++ /dev/null @@ -1,5 +0,0 @@ -initialize-release -initializeOn: aClassDefinition environment: aBootstrapEnvironment - - classDefinition := aClassDefinition. - bootstrapEnvironment := aBootstrapEnvironment. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st deleted file mode 100644 index 7dce5d7fc5c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/innerBindingOf..st +++ /dev/null @@ -1,20 +0,0 @@ -accessing -innerBindingOf: aString - - (self definesClassVariable: aString asSymbol) - ifTrue: [ ^ EPClassVariableBinding new - name: aString asSymbol - ownerName: self name - objectSpace: bootstrapEnvironment; - yourself ]. - - self sharedPools - do: - [ :pool | (pool innerBindingOf: aString) ifNotNil: [ :binding | ^ binding ] ]. - - self superclass ifNotNil:[ - (self superclass innerBindingOf: aString) - ifNotNil: [ :binding | ^ binding ]]. - - "If it is a temp or an instance variable" - ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/name.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/name.st deleted file mode 100644 index d3bbad3a9b1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/name.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -name - - ^ classDefinition instanceSide name \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/sharedPools.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/sharedPools.st deleted file mode 100644 index c5ab1e53abe..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/sharedPools.st +++ /dev/null @@ -1,5 +0,0 @@ -accessing -sharedPools - - ^ classDefinition instanceSide sharedPools collect: [ :pool | - PBClassDefinition on: pool environment: bootstrapEnvironment ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/superclass.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/superclass.st deleted file mode 100644 index 0075f3f91d1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/superclass.st +++ /dev/null @@ -1,5 +0,0 @@ -accessing -superclass - - classDefinition superclass ifNil: [ ^ nil ]. - ^ PBClassDefinition on: classDefinition superclass environment: bootstrapEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/usesClassVariable..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/usesClassVariable..st deleted file mode 100644 index e2d002678a5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/instance/usesClassVariable..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -usesClassVariable: aString - - ^ classDefinition instanceSide allClassVarNames includes: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/properties.json deleted file mode 100644 index d1571315705..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassDefinition.class/properties.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "classDefinition", - "bootstrapEnvironment" - ], - "name" : "PBClassDefinition", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/builder..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/builder..st deleted file mode 100644 index ec8a6d38f21..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/builder..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -builder: aBuilder - - builder := aBuilder \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classDefinitionFor..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classDefinitionFor..st deleted file mode 100644 index ea5c36d0023..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classDefinitionFor..st +++ /dev/null @@ -1,41 +0,0 @@ -class-loading -classDefinitionFor: aClass - "Answer a String that defines the receiver." - - | type | - type := aClass isWeak - ifTrue: [ 'WeakLayout' ] - ifFalse: [ aClass isPointers - ifTrue: [ aClass isVariable - ifTrue: [ 'VariableLayout' ] - ifFalse: [ 'FixedLayout' ] - ] - ifFalse: [ aClass isCompiledMethod - ifTrue: [ 'CompiledMethodLayout' ] - ifFalse: [ aClass isWords - ifTrue: [ 'WordLayout' ] - ifFalse: [ 'ByteLayout' ]]]]. - ^ '| newClass | - newClass := ShiftClassInstaller make: [ :builder | - builder - superclass: {superClass}; - name: ''{name}''; - layoutClass: {type}; - slots: ''{instanceVariablesString}'' asSlotCollection; - sharedVariablesFromString: ''{classVariablesString}''; - sharedPools: ''{sharedPoolsString}''; - category: ''{category}''; - environment: {superClass} environment; - classSlots: ''{classInstanceVariablesString}'' asSlotCollection ]. - newClass layout compactClassIndex: {compactIndex}. - newClass' - format: { - 'superClass' -> aClass superclass name. - 'name' -> aClass name. - 'type' -> type. - 'instanceVariablesString' -> (' ' join: aClass instVarNames). - 'classVariablesString' -> aClass classVariablesString. - 'sharedPoolsString' -> aClass sharedPoolsString. - 'category' -> aClass category asString. - 'classInstanceVariablesString' -> (' ' join: aClass classSide instVarNames). - 'compactIndex' -> (self compactClassIndexForClass: aClass) } asDictionary. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classForClassMirror..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classForClassMirror..st deleted file mode 100644 index 0a52bcd821a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classForClassMirror..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -classForClassMirror: anEPClassMirror - - ^ mirrorDefinitionMap at: anEPClassMirror ifAbsent: [ systemDefinition classNamed: #Class ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classNamed..st deleted file mode 100644 index 3abdb5cc2a2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/classNamed..st +++ /dev/null @@ -1,8 +0,0 @@ -class-loading -classNamed: aString - - | class | - (self loadedClassNamed: aString) - ifTrue: [ ^ environment at: aString ]. - class := self loadClassNamed: aString. - ^ class \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/compactClassIndexForClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/compactClassIndexForClass..st deleted file mode 100644 index 227a60c1d82..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/compactClassIndexForClass..st +++ /dev/null @@ -1,4 +0,0 @@ -stubs -compactClassIndexForClass: aRFiClass - - ^ builder compactClassIndexForClassNamed: aRFiClass name. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createBehaviorFromDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createBehaviorFromDefinition..st deleted file mode 100644 index 1231299fd6a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createBehaviorFromDefinition..st +++ /dev/null @@ -1,24 +0,0 @@ -class-loading -createBehaviorFromDefinition: aRFiDefinition - - | newBehavior | - (self isFullyLoadedClassNamed: aRFiDefinition name) ifTrue: [ ^ self ]. - - aRFiDefinition isBehavior ifTrue: [ - "We ensure a class with that name already exists" - environment at: aRFiDefinition name ifAbsent: [ self createStubForClassNamed: aRFiDefinition name ]]. - - newBehavior := self executeDefinitionFor: aRFiDefinition. - - "Once the class is created we set a new method dictionary with a size that will make it grow less afterwards" - builder bootstrapInterpreter - evaluateCode: 'theBehavior methodDictionary: (MethodDictionary new: capacity)' - withTemps: { - 'capacity' -> (aRFiDefinition methods size asLiteralInObjectSpace: builder objectSpace). - 'theBehavior' -> newBehavior }. - - aRFiDefinition isBehavior ifTrue: [ - self registerClass: newBehavior asClassMirror named: aRFiDefinition name fullyLoaded: true. - ] ifFalse: [ - self registerTrait: newBehavior asTraitMirror named: aRFiDefinition name fullyLoaded: true. - ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createClassStubForDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createClassStubForDefinition..st deleted file mode 100644 index 42481ef5432..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createClassStubForDefinition..st +++ /dev/null @@ -1,10 +0,0 @@ -stubs -createClassStubForDefinition: aClassDefinition - - | class metaclass | - metaclass := self metaclassClass basicNew asClassMirror. - metaclass format: (self formatOfClass: aClassDefinition classSide). - - class := metaclass basicNew asClassMirror. - class format: (self formatOfClass: aClassDefinition). - ^ class \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createJustStubs.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createJustStubs.st deleted file mode 100644 index e6fc6037e84..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createJustStubs.st +++ /dev/null @@ -1,4 +0,0 @@ -stages -createJustStubs - - shouldInitializeClassPool := false. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createStubForClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createStubForClassNamed..st deleted file mode 100644 index 63d422833c4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createStubForClassNamed..st +++ /dev/null @@ -1,11 +0,0 @@ -stubs -createStubForClassNamed: aSymbol - - | class stub | - class := systemDefinition classNamed: aSymbol. - ^ class isBehavior - ifTrue: [ - stub := self createClassStubForDefinition: class. - self registerClass: stub named: aSymbol. - stub ] - ifFalse: [ Error signal ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createTraitFromDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createTraitFromDefinition..st deleted file mode 100644 index 2ce525ca324..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/createTraitFromDefinition..st +++ /dev/null @@ -1,7 +0,0 @@ -class-loading -createTraitFromDefinition: aTrait - - | newTrait | - newTrait := builder objectSpace interpreter evaluateCode: aTrait definition. - self registerTrait: newTrait named: aTrait name. - ^ newTrait \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/environment..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/environment..st deleted file mode 100644 index 328751b3b6e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/environment..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -environment: anEnvironment - - environment := anEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/executeDefinitionFor..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/executeDefinitionFor..st deleted file mode 100644 index 73c5793525f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/executeDefinitionFor..st +++ /dev/null @@ -1,11 +0,0 @@ -class-loading -executeDefinitionFor: aRFiDefinition - - | definition | - definition := aRFiDefinition isBehavior ifTrue: [ - self classDefinitionFor: aRFiDefinition. - ] ifFalse: [ - aRFiDefinition definition. - ]. - - ^ builder bootstrapInterpreter evaluateCode: definition. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/formatOfClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/formatOfClass..st deleted file mode 100644 index 630404eb8d3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/formatOfClass..st +++ /dev/null @@ -1,3 +0,0 @@ -stubs -formatOfClass: aRFiClass - ^ builder formatOfClass: aRFiClass \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initialize.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initialize.st deleted file mode 100644 index d562d4d46b7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initialize.st +++ /dev/null @@ -1,13 +0,0 @@ -initialization -initialize - - super initialize. - initializedClasses := Set new. - compactClasses := EPDictionary new. - definitionMirrorMap := EPDictionary new. - mirrorDefinitionMap := EPDictionary new. - - "maybe we could use a state pattern but for now this is so simple" - useClassBuilder := false. - - fullyLoaded := Dictionary new \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassNamed..st deleted file mode 100644 index 4501041295c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassNamed..st +++ /dev/null @@ -1,8 +0,0 @@ -initialization -initializeClassNamed: aClassName - - (self shouldInitializeClassNamed: aClassName) ifFalse: [ ^ self ]. - - self doInitializeClassNamed: aClassName. - initializedClasses add: aClassName. - self postInitializeClassNamed: aClassName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPool..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPool..st deleted file mode 100644 index 10a63907c93..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPool..st +++ /dev/null @@ -1,21 +0,0 @@ -stubs -initializeClassPool: aClassName - - | definition class classPool classVariableBindings | - definition := systemDefinition classNamed: aClassName. - classVariableBindings := definition classVarNames collect: [ :each | | classVar | - classVar := (self classNamed: #ClassVariable) basicNew. - classVar instanceVariableAtIndex: 1 put: (each asLiteralInObjectSpace: builder objectSpace) ]. - - class := environment at: aClassName. - classPool := builder bootstrapInterpreter - evaluateCode: 'aClassVariableNamesCollection asDictionary' - withTemps: { - 'aClassVariableNamesCollection' -> (builder objectSpace newArrayWithAll: classVariableBindings) - }. - - "Force the creation of the symbol using the object space class table." - self flag: #bug. "If we do not use basicSetClassName, we duplicate symbols" - class basicSetClassName: (aClassName asLiteralInObjectSpace: builder objectSpace). - class classPool: classPool. - ^ class \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPools.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPools.st deleted file mode 100644 index 283c72ca761..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeClassPools.st +++ /dev/null @@ -1,7 +0,0 @@ -stages -initializeClassPools - - shouldInitializeClassPool := true. - environment keysDo: [ :name | - (systemDefinition classNamed: name) isBehavior - ifTrue: [ self initializeClassPool: name ] ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeTraitNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeTraitNamed..st deleted file mode 100644 index 3b7280bc027..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/initializeTraitNamed..st +++ /dev/null @@ -1,6 +0,0 @@ -initialization -initializeTraitNamed: aClassName - - (self shouldInitializeClassNamed: aClassName) ifFalse: [ ^ self ]. - self doInitializeTraitNamed: aClassName. - initializedClasses add: aClassName. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isClassDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isClassDefinition..st deleted file mode 100644 index 75e29e68568..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isClassDefinition..st +++ /dev/null @@ -1,7 +0,0 @@ -class-loading -isClassDefinition: aString - - ^ aString beginsWith: '| newClass | - newClass := ShiftClassInstaller make: [ :builder | - builder - superclass: '. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isFullyLoadedClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isFullyLoadedClassNamed..st deleted file mode 100644 index c842eb4287a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/isFullyLoadedClassNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -initialization -isFullyLoadedClassNamed: aClassName - - ^ fullyLoaded at: aClassName ifAbsent: [ false ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadClassNamed..st deleted file mode 100644 index 4816494abb5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadClassNamed..st +++ /dev/null @@ -1,7 +0,0 @@ -class-loading -loadClassNamed: aString - | class | - class := self createStubForClassNamed: aString. - shouldInitializeClassPool - ifTrue: [ self initializeClassPool: aString ]. - ^ class \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNamed..st deleted file mode 100644 index 55597975ce9..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -stubs -loadedClassNamed: aString - - ^ environment includesKey: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNames.st deleted file mode 100644 index 18fc6275e7f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/loadedClassNames.st +++ /dev/null @@ -1,4 +0,0 @@ -stubs -loadedClassNames - - ^ environment keys \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/map.with..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/map.with..st deleted file mode 100644 index 39bf341950a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/map.with..st +++ /dev/null @@ -1,10 +0,0 @@ -registration -map: aClassMirror with: aDefinition - - "We create a mapping between the real classes and their definitions for later" - - mirrorDefinitionMap at: aClassMirror put: aDefinition. - definitionMirrorMap at: aDefinition put: aClassMirror. - - mirrorDefinitionMap at: aClassMirror basicClass put: aDefinition classSide. - definitionMirrorMap at: aDefinition classSide put: aClassMirror basicClass \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/metaclassClass.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/metaclassClass.st deleted file mode 100644 index 7bd5fdf029c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/metaclassClass.st +++ /dev/null @@ -1,26 +0,0 @@ -stubs -metaclassClass - - "Base case for recursion on class creation. - Ok, so here we really go down and create the metaclass from nothing. We will use this metaclass to create all the others" - | aClassMapping theNewMetaclass theNewMetaclassClass classFormat metaclassFormat | - - environment at: #Metaclass ifPresent: [ :aClass | ^ aClass ]. - - aClassMapping := systemDefinition classNamed: #Metaclass. - classFormat := self formatOfClass: aClassMapping. - metaclassFormat := self formatOfClass: aClassMapping classSide. - - theNewMetaclass := builder objectSpace - createClassWithFormat: metaclassFormat - forInstancesOfFormat: classFormat. - - theNewMetaclassClass := builder objectSpace - createClassWithFormat: classFormat - forInstancesOfFormat: metaclassFormat. - - theNewMetaclass setClass: theNewMetaclassClass. - theNewMetaclassClass setClass: theNewMetaclass. - - self registerClass: theNewMetaclass named: aClassMapping name. - ^ theNewMetaclass \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/migrateOldClass.to..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/migrateOldClass.to..st deleted file mode 100644 index 8dce8c34f22..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/migrateOldClass.to..st +++ /dev/null @@ -1,20 +0,0 @@ -registration -migrateOldClass: oldClass to: newClass - - | oldClassMetaclass | - - "We migrate the class pools" - oldClass asClassMirror classPool isNilObject ifFalse: [ - newClass asClassMirror classPool: oldClass asClassMirror classPool ]. - - "We migrate the class instance variables" - "A class has at least 14 instances variables (cf class description, behavior). Starting from 15, we get user defined class instances variables." - ((newClass instanceVariableMapping classNumberOfVariables) + 1) to: oldClass fixedSize do: [ :index | - newClass instanceVariableAtIndex: index put: (oldClass instanceVariableAtIndex: index). - ]. - - "We become the old class and metaclass into the new ones" - oldClassMetaclass := oldClass basicClass. - oldClass becomeInto: newClass. - oldClassMetaclass target == Metaclass - ifFalse:[ oldClassMetaclass becomeInto: newClass basicClass ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/next.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/next.st deleted file mode 100644 index ef9357db1c3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/next.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -next - - self subclassResponsibility \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named..st deleted file mode 100644 index 5626854a001..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named..st +++ /dev/null @@ -1,4 +0,0 @@ -registration -registerClass: aClassMirror named: aName - - ^ self registerClass: aClassMirror named: aName fullyLoaded: false \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named.fullyLoaded..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named.fullyLoaded..st deleted file mode 100644 index 87a7f55a0d0..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerClass.named.fullyLoaded..st +++ /dev/null @@ -1,18 +0,0 @@ -registration -registerClass: aClassMirror named: aName fullyLoaded: aBoolean - - "If it existed before, we migrate its state" - (environment includesKey: aName) - ifTrue: [ - self migrateOldClass: (environment at: aName) to: aClassMirror ]. - - "We register it and keep up to date our compact class index" - environment at: aName put: aClassMirror. - aClassMirror asClassMirror compactClassIndex = 0 ifFalse: [ - builder objectSpace backend compactClassAt: aClassMirror asClassMirror compactClassIndex put: aClassMirror ]. - - "We create a mapping between the real classes and their definitions for later" - self map: aClassMirror with: (systemDefinition classNamed: aName). - - "We reset the class map of the ast interpreter" - fullyLoaded at: aName put: aBoolean \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerTrait.named.fullyLoaded..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerTrait.named.fullyLoaded..st deleted file mode 100644 index af21bffb3c1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/registerTrait.named.fullyLoaded..st +++ /dev/null @@ -1,17 +0,0 @@ -registration -registerTrait: aTraitMirror named: aName fullyLoaded: aBoolean - - (environment includesKey: aName) - ifTrue: [ | oldClass | - oldClass := environment at: aName. - oldClass becomeInto: aTraitMirror. - "oldClassMetaclass target handle == Metaclass - ifFalse:[ oldClassMetaclass becomeInto: aClassMirror classSide ] "]. - - environment at: aName put: aTraitMirror. - fullyLoaded at: aName put: aBoolean - "aClassMirror compactClassIndex = 0 ifFalse: [ - compactClasses at: aClassMirror compactClassIndex put: aClassMirror ]. - - objectSpace interpreter resetClassMap. -" \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/systemDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/systemDefinition..st deleted file mode 100644 index cc41bb4167a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/systemDefinition..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -systemDefinition: aRFiEnvironment - systemDefinition := aRFiEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/useClassBuilder.st b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/useClassBuilder.st deleted file mode 100644 index 2a934fe7274..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/instance/useClassBuilder.st +++ /dev/null @@ -1,4 +0,0 @@ -stages -useClassBuilder - - useClassBuilder := true \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/properties.json deleted file mode 100644 index 4daaa32ad54..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBClassLoader.class/properties.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "builder", - "initializedClasses", - "environment", - "systemDefinition", - "compactClasses", - "shouldInitializeClassPool", - "useClassBuilder", - "fullyLoaded", - "definitionMirrorMap", - "mirrorDefinitionMap" - ], - "name" : "PBClassLoader", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/README.md deleted file mode 100644 index aec4b47c34c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/README.md +++ /dev/null @@ -1 +0,0 @@ -Base class used to fetch Monticello definitions (classes, methods) that will be used to create a boostraped image \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/majorVersion.st b/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/majorVersion.st deleted file mode 100644 index a7a1a795cca..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/majorVersion.st +++ /dev/null @@ -1,4 +0,0 @@ -versioning -majorVersion - - ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/minorVersion.st b/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/minorVersion.st deleted file mode 100644 index f3827d54475..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/minorVersion.st +++ /dev/null @@ -1,4 +0,0 @@ -versioning -minorVersion - - ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/updateNumber.st b/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/updateNumber.st deleted file mode 100644 index e503a015d32..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/instance/updateNumber.st +++ /dev/null @@ -1,4 +0,0 @@ -versioning -updateNumber - - ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/properties.json deleted file mode 100644 index f704115ef6b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBDefinitionFetcher.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "ChristopheDemarey 7/6/2016 11:31", - "super" : "Object", - "category" : "Pharo30Bootstrap-Deprecated", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBDefinitionFetcher", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/README.md deleted file mode 100644 index a31988f0224..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/README.md +++ /dev/null @@ -1,4 +0,0 @@ -I'm the process performing the bootstrap of a Pharo 5.0 version. - - PBBootstrap50 bootstrap: '5.392' - \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/behaviorFrom..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/behaviorFrom..st deleted file mode 100644 index 50ceae3901e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/behaviorFrom..st +++ /dev/null @@ -1,3 +0,0 @@ -visiting -behaviorFrom: aRFiClassOrTrait - ^ aRFiClassOrTrait accept: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st deleted file mode 100644 index 743e9abf913..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bindingOf..st +++ /dev/null @@ -1,9 +0,0 @@ -accessing instances and variables -bindingOf: aName - - (self includesClassNamed: aName) - ifTrue: [ ^ EPGlobalBinding new - name: aName objectSpace: self; - yourself ]. - - ^ nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrap.st deleted file mode 100644 index 6f3dfc3529e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrap.st +++ /dev/null @@ -1,12 +0,0 @@ -running -bootstrap - - self - initializeBootstrapEnvironment; - createVMStubs; - flushNewSpace; - createInitialObjects; - createClasses; - installMethods; - installExtensionMethods; - initializeImage \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapEnvironment.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapEnvironment.st deleted file mode 100644 index 853e3732477..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapEnvironment.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -bootstrapEnvironment - - ^ bootstrapEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcess.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcess.st deleted file mode 100644 index ce46a51e9ce..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcess.st +++ /dev/null @@ -1,53 +0,0 @@ -running -bootstrapInitialProcess - Smalltalk snapshotPrimitive. - ProcessorScheduler initialize. - - Delay initialize. - SmallInteger initialize. - - ProcessorScheduler startUp. - - OSPlatform startUp: true. - - "2 following lines are used to initialize Unicode tag constants. - Must be replaced by an uptodate version of Unicode class>>#initializeTagConstants and a call to it" - #(#Cc #Cf #Co #Cs #Ll #Lm #Lo #Lt #Lu #Mc #Me #Mn #Nd #Nl #No #Pc #Pd #Pe #Pf #Pi #Po #Ps #Sc #Sk #Sm #So #Zl #Zp #Zs) - doWithIndex: [ :each :index | Unicode classPool at: each put: index ]. -Unicode classPool at: #Cn put: 0. - (Smalltalk globals at: #UnicodeDefinitions) initializeUnicodeClass. - EncodedCharSet initialize. - String initialize. - ByteString initialize. "needed by TextConverter to install LineEnd convention (called by Smalltalk openLog)" - - "Weak array class initialization 2 lines" - Smalltalk specialObjectsArray at: 42 put: Semaphore new."to put in EPObjectSpace>>#createSpecialObjectsArray?" - WeakArray restartFinalizationProcess. - - DiskStore useFilePlugin "initialize". - FileStream initialize. - FileStream classVarNamed: 'TheStdioHandles' put: FileStream stdioHandles. "FileStream startup" - ByteTextConverter initialize. - MultiByteFileStream initialize. - ASTCache default: ASTCache new. "ASTCache initialize, neeeded to print stack on error" - FileLocator startUp: true. "FileLocator initialize" - - Smalltalk globals - at: #Transcript - put: (NonInteractiveTranscript stdout install). - CompilationContext initialize. - Float initialize. - ZipConstants initialize. - ZipWriteStream initialize. - - UIManager classVarNamed: 'Default' put: NonInteractiveUIManager new. - UIManager default activate. - - Smalltalk sourceFileVersionString: 'PharoV40'. - (Smalltalk class classVariableNamed: 'LastImagePath') value: Smalltalk imagePath. "set the default value" - SourceFiles := SourceFileArray new ensureOpen. "needed to get source from a compiled method, used to log an error." - Smalltalk openSourceFiles. - - BasicCommandLineHandler new activate. "BasicCommandLineHandler startUp:" - UIManager default inform: 'Alive!'. - Processor terminateActive. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcessCode.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcessCode.st deleted file mode 100644 index 1e8e6e36640..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInitialProcessCode.st +++ /dev/null @@ -1,5 +0,0 @@ -running -bootstrapInitialProcessCode - | instructions | - instructions := (self class>>#bootstrapInitialProcess) sourceCode. - ^ instructions allButFirst: (instructions indexOf: Character cr) "remove method name" \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInterpreter.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInterpreter.st deleted file mode 100644 index 22b5ba83bb8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapInterpreter.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -bootstrapInterpreter - - ^ bootstrapInterpreter \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapWithResumableDebugger.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapWithResumableDebugger.st deleted file mode 100644 index 11eeb1926d6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/bootstrapWithResumableDebugger.st +++ /dev/null @@ -1,8 +0,0 @@ -running -bootstrapWithResumableDebugger - "If we do not fork the process, we get a post-mortem debugger" - [ self bootstrap ] - on: Error, Halt - fork: [ :ex | - Smalltalk logError: ex description inContext: nil. - ex pass ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/buildNumber..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/buildNumber..st deleted file mode 100644 index c8bc0036641..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/buildNumber..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buildNumber: aNumber - - buildNumber := aNumber \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/builtClassNames.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/builtClassNames.st deleted file mode 100644 index 321f6cea4e4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/builtClassNames.st +++ /dev/null @@ -1,4 +0,0 @@ -class-loader -builtClassNames - - ^ classLoader loadedClassNames \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classForClassMirror..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classForClassMirror..st deleted file mode 100644 index f4f9ea134e4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classForClassMirror..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -classForClassMirror: anEPClassMirror - - ^ classLoader classForClassMirror: anEPClassMirror \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classInstanceVariableIndexAt..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classInstanceVariableIndexAt..st deleted file mode 100644 index 75583ba974d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classInstanceVariableIndexAt..st +++ /dev/null @@ -1,4 +0,0 @@ -running -classInstanceVariableIndexAt: anIndex - "number of instances variables of the class Class. Classes that have more than this number in their fixed size have their own instance class variable that we should probably take care of." - ^ (self classNamed: #Class) mirror fixedSize + anIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classLoader.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classLoader.st deleted file mode 100644 index 31fd849da69..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classLoader.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classLoader - ^ classLoader \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classNamed..st deleted file mode 100644 index 5f61638387f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/classNamed..st +++ /dev/null @@ -1,5 +0,0 @@ -class-loader -classNamed: aString - - ^ (classLoader classNamed: aString) - asRemoteClassOrTraitFromEnvironment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/compactClassIndexForClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/compactClassIndexForClassNamed..st deleted file mode 100644 index 0c1f225680d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/compactClassIndexForClassNamed..st +++ /dev/null @@ -1,27 +0,0 @@ -helpers -compactClassIndexForClassNamed: aName - "To recompute, use the following expression in the image you want to bootstrap. For example, to boostrap pharo 50193, execute the expression in a pharo 50193 image. - (Smalltalk specialObjectsArray at: 29) - collect: [ :each | each ifNotNil: [ each name ] ] - The order is really important, do not change it! - " - ^ #( - #CompiledMethod - #Slot - #Array - #LargeNegativeInteger - #LargePositiveInteger - #Float - #Protocol - #Association - #Point - #Rectangle - #ByteString - #BlockClosure - #GlobalVariable - #Context - #ClassVariable - #Bitmap - #EndianDetector - nil nil nil nil nil nil nil nil nil nil nil nil nil nil) - indexOf: aName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createBehaviorFromDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createBehaviorFromDefinition..st deleted file mode 100644 index 78d28b64d52..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createBehaviorFromDefinition..st +++ /dev/null @@ -1,4 +0,0 @@ -running -createBehaviorFromDefinition: aRFiDefinition - - ^ classLoader createBehaviorFromDefinition: aRFiDefinition \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createClasses.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createClasses.st deleted file mode 100644 index 6a02edd1aca..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createClasses.st +++ /dev/null @@ -1,21 +0,0 @@ -running -createClasses - | definitions total smalltalkInstance | - definitions := self systemDefinition allClassesAndTraits sorted: [ :a :b | a name < b name ]. - total := definitions size. - definitions - withIndexDo: [ :aClassDefinition :index | | time | - time := [self createBehaviorFromDefinition: aClassDefinition.] timeToRun. - - PBSubStepFinishedSignal log: ((index printPaddedWith: $0 to: 3), '/' , - total asString, ' - ', - time asString ,': Built behavior ', - aClassDefinition name). ]. - - smalltalkInstance := bootstrapEnvironment at: #Smalltalk. - objectSpace interpreter: bootstrapInterpreter. - objectSpace backend smalltalkInstance: smalltalkInstance. - objectSpace environment: ((EPSystemDictionary withSystemDictionary: objectSpace backend systemDictionary) objectSpace: objectSpace; yourself). - - PBStepFinishedSignal log: 'Classes created'. - self checkpoint: 'created_classes'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createFalse.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createFalse.st deleted file mode 100644 index 4ad57dc5d5a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createFalse.st +++ /dev/null @@ -1,5 +0,0 @@ -running -createFalse - - objectSpace falseObject: (self createStubForClassNamed: #False) basicNew. - ^ objectSpace falseObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createInitialObjects.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createInitialObjects.st deleted file mode 100644 index 6b5299fc494..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createInitialObjects.st +++ /dev/null @@ -1,87 +0,0 @@ -running -createInitialObjects - - | characterTable | - "We add the main globals in the bootstrap environment before a system dictionary exists. These globals are needed to create a system dictionary, and will be used by the AST interpreter" - PBStepFinishedSignal log: 'initializing globals'. - self bootstrapEnvironment at: #Smalltalk put: objectSpace nilObject. - self bootstrapEnvironment at: #Undeclared put: objectSpace nilObject. - - "We initialize the hash table sizes by hand. - The AST interpreter is too slow to interpret HashTableSizes>>#initialize" - PBSubStepFinishedSignal log: 'initializing hash table sizes'. - - (self classNamed: #HashTableSizes) mirror - instanceVariableAtIndex: (self classInstanceVariableIndexAt: 1) - put: (objectSpace newArrayWithAll: (HashTableSizes sizes collect: [:each | objectSpace backend smallIntegerMirrorOn: each ])). - - PBSubStepFinishedSignal log: 'preparing class builder'. - self bootstrapInterpreter evaluateCode: 'DangerousClassNotifier disable'. - - self bootstrapInterpreter evaluateCode: 'Undeclared := Dictionary new.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk := SmalltalkImage basicNew.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk instVarAt: 1 put: (SystemDictionary withOrganizer: SystemOrganizer new).'. - self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Smalltalk put: Smalltalk.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Undeclared put: Undeclared.'. - - "Initialize the globals of the system. Careful: The AST interpreter will not know about these if we do not put them in the bootstrapEnvironment." - self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Processor put: nil.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Transcript put: nil.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #SystemOrganisation put: nil.'. - self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #SourceFiles put: nil.'. - - - PBSubStepFinishedSignal log: 'class loader now creates class pools'. - classLoader initializeClassPools. - - PBSubStepFinishedSignal log: 'Initializing StartUp list'. - self bootstrapInterpreter evaluateCode: 'SmalltalkImage initialize.'. - - PBSubStepFinishedSignal log: 'Initializing Character Table'. - self bootstrapInterpreter evaluateCode: 'Character initialize.'. - characterTable := (EPInternalCharacterTable new objectSpace: objectSpace). - objectSpace backend characterTable: ((self classNamed: #Character) classPool at: #CharacterTable). - objectSpace characterTable: characterTable. - - PBSubStepFinishedSignal log: 'Initializing String AsciiTable'. - self bootstrapInterpreter evaluateCode: 'String classPool at: #AsciiOrder put: ((0 to: 255) as: ByteArray).'. - - PBSubStepFinishedSignal log: 'Initializing SmallInteger constants'. - self bootstrapInterpreter evaluateCode: 'SmallInteger instVarAt: ' , (self classInstanceVariableIndexAt: 1) asString ,' put: -16r40000000.' "minVal". - self bootstrapInterpreter evaluateCode: 'SmallInteger instVarAt: ' , (self classInstanceVariableIndexAt: 2) asString ,' put: 16r3FFFFFFF.' "maxVal". - - PBSubStepFinishedSignal log: 'Initializing Date and Time constants'. - self bootstrapInterpreter evaluateCode: 'DateAndTime initialize.'. - self bootstrapInterpreter evaluateCode: 'ChronologyConstants initialize.'. - - PBSubStepFinishedSignal log: 'Initializing CompiledMethod constants'. - self bootstrapInterpreter evaluateCode: 'CompiledMethod initialize.'. - - PBSubStepFinishedSignal log: 'Initializing object dependent fields'. - self bootstrapInterpreter evaluateCode: 'Object initialize.'. - - PBSubStepFinishedSignal log: 'Installing symbol table'. - self bootstrapInterpreter evaluateCode: 'Symbol initialize. - Symbol classPool at: #SymbolTable put: (WeakSet withAll: ByteSymbol allInstances)'. - objectSpace symbolTable: (EPInternalSymbolTable new objectSpace: objectSpace). - - - PBSubStepFinishedSignal log: 'Bootstrapping class layouts'. - bootstrapInterpreter evaluateCode: - ('| superLayout | - superLayout := EmptyLayout instance. - Class - instVarAt: 4 - put: (FixedLayout - extending: superLayout - scope: (superLayout slotScope extend: #({1})) - host: Class). - - SmallInteger - instVarAt: 4 - put: (ImmediateLayout new).' format: {self espellBackend instanceVariableMapping listOfClassSlots}). - - PBStepFinishedSignal log: 'Class builder ready to create classes'. - classLoader useClassBuilder. - - self checkpoint: 'created_initial_objects'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createNil.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createNil.st deleted file mode 100644 index 566a6983082..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createNil.st +++ /dev/null @@ -1,10 +0,0 @@ -running -createNil - - "Temporal nil: it is needed so the nil stub class can be initialized with it" - objectSpace nilObject: (objectSpace objectMirrorOn: (UndefinedObject basicNew)). - - "We create the real nil and become it" - objectSpace nilObject becomeInto: (self createStubForClassNamed: #UndefinedObject) basicNew. - - ^ objectSpace nilObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createStubForClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createStubForClassNamed..st deleted file mode 100644 index 5fbd6b40619..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createStubForClassNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -class-loader -createStubForClassNamed: aString - - ^ classLoader createStubForClassNamed: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createTrue.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createTrue.st deleted file mode 100644 index faf295f5374..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createTrue.st +++ /dev/null @@ -1,5 +0,0 @@ -running -createTrue - - objectSpace trueObject: (self createStubForClassNamed: #True) basicNew. - ^ objectSpace trueObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createVMStubs.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createVMStubs.st deleted file mode 100644 index f6bc681f55e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/createVMStubs.st +++ /dev/null @@ -1,39 +0,0 @@ -running -createVMStubs - - PBStepStartedSignal log: 'creating initial Objects needed by the VM'. - - objectSpace backend specialObjectsArray: (objectSpace createObjectWithFormat: (Array format) withSize: 59). - self createNil. - 1 to: 59 do: [ :i | - objectSpace backend specialObjectsArray at: i put: objectSpace nilObject ]. - - self createFalse. - self createTrue. - - "try to move nil, true and false to the new space" - espellBackend objectMemory flushNewSpace. - - objectSpace backend smallIntegerClass: (self createStubForClassNamed: #SmallInteger). - objectSpace backend characterClass: (self createStubForClassNamed: #Character). - objectSpace backend byteSymbolClass: (self createStubForClassNamed: #ByteSymbol). - objectSpace backend byteStringClass: (self createStubForClassNamed: #ByteString). - objectSpace backend byteArrayClass: (self createStubForClassNamed: #ByteArray). - objectSpace backend associationClass: (self createStubForClassNamed: #Association). - objectSpace backend arrayClass: (self createStubForClassNamed: #Array). - objectSpace backend symbolTableClass: (self createStubForClassNamed: #Symbol). - objectSpace backend largeNegativeIntegerClass: (self createStubForClassNamed: #LargeNegativeInteger). - objectSpace backend largePositiveIntegerClass: (self createStubForClassNamed: #LargePositiveInteger). - objectSpace backend methodClass: (self createStubForClassNamed: #CompiledMethod). - objectSpace backend floatClass: (self createStubForClassNamed: #Float). - objectSpace backend contextClass: (self createStubForClassNamed: #Context). - objectSpace backend processClass: (self createStubForClassNamed: #Process). - objectSpace backend blockClass: (self createStubForClassNamed: #BlockClosure). - objectSpace backend fullBlockClass: (self createStubForClassNamed: #FullBlockClosure). - objectSpace backend messageClass: (self createStubForClassNamed: #Message). - objectSpace backend semaphoreClass: (self createStubForClassNamed: #Semaphore). - - "Point is required in the special objects array because it is used to instantiate point objects faster. - If we do not put it here, the VM will crash. - Lots of tests in kernel use it." - objectSpace backend pointClass: (self createStubForClassNamed: #Point). \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/definitionNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/definitionNamed..st deleted file mode 100644 index 9eb1799b181..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/definitionNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -definitionNamed: aName - - ^ self systemDefinition classNamed: aName \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/environment.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/environment.st deleted file mode 100644 index 86adf0fe1c8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/environment.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -environment - - ^ bootstrapEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend..st deleted file mode 100644 index 06777d690b2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -espellBackend: anObject - espellBackend := anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend.st deleted file mode 100644 index 17ca8fbfac1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/espellBackend.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -espellBackend - ^ espellBackend \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/formatOfClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/formatOfClass..st deleted file mode 100644 index 3b6228a2a89..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/formatOfClass..st +++ /dev/null @@ -1,25 +0,0 @@ -format -formatOfClass: aRFiClass - - "A class format is composed by" - "<2 bits of size><5 bits of compact class index><4 bits of inst spec><6 bits of size><1 bit with a 0>" - - | size1 instSpec size2 compactClassIndex | - size1 := (aRFiClass allInstVarNames size + 1 // 64) bitAnd: 16r3. - instSpec := aRFiClass isCompiledMethod - ifTrue: [ 12 ] - ifFalse: [aRFiClass isWeak - ifTrue:[ 4 ] - ifFalse:[aRFiClass isPointers - ifTrue: [ aRFiClass isVariable - ifTrue: [ aRFiClass allInstVarNames size > 0 ifTrue: [ 3 ] ifFalse: [ 2 ] ] - ifFalse: [ aRFiClass allInstVarNames size > 0 ifTrue: [ 1 ] ifFalse: [ 0 ] ] - ] - ifFalse: [ aRFiClass isWords ifTrue: [ 6 ] ifFalse: [ 8 ] ] - ] - ]. - size2 := (aRFiClass allInstVarNames size + 1 \\ 64) bitAnd: 16r3F. - - compactClassIndex := self compactClassIndexForClass: aRFiClass. - - ^(size1 bitShift: 16) + (compactClassIndex bitShift: 11) + (instSpec bitShift: 7) + (size2 bitShift: 1) \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed..st deleted file mode 100644 index b4de1e2c3e0..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed..st +++ /dev/null @@ -1,6 +0,0 @@ -accessing -globalNamed: aString - - (self includesClassNamed: aString) - ifTrue: [ ^ (self classNamed: aString) mirror ]. - self halt. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed.put..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed.put..st deleted file mode 100644 index 04327f55439..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/globalNamed.put..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -globalNamed: aString put: aValue - - bootstrapEnvironment at: aString put: aValue \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/imageFileReference..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/imageFileReference..st deleted file mode 100644 index a0365a35cc7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/imageFileReference..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -imageFileReference: aFileReference - - imageFileReference := aFileReference \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesClassNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesClassNamed..st deleted file mode 100644 index 4c70c8f4a55..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesClassNamed..st +++ /dev/null @@ -1,4 +0,0 @@ -testing -includesClassNamed: aString - - ^ self systemDefinition includesClassNamed: aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesGlobalNamed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesGlobalNamed..st deleted file mode 100644 index 914918c7c68..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/includesGlobalNamed..st +++ /dev/null @@ -1,5 +0,0 @@ -testing -includesGlobalNamed: aString - - "It is a global if we have it in our system definition" - ^ self systemDefinition includesClassNamed: aString. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initialize.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initialize.st deleted file mode 100644 index 1366f9bc813..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initialize.st +++ /dev/null @@ -1,11 +0,0 @@ -initialize-release -initialize - - super initialize. - statistics := PBBootstrapStatistics new. - logger := PBBootstrapLogger new. - imageFileReference := 'bootstrap.image' asFileReference. - - "the default espell backend for the bootstrap" - self initializeBackend. - self instantiateClassLoader. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBackend.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBackend.st deleted file mode 100644 index aa5d4b6d031..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBackend.st +++ /dev/null @@ -1,4 +0,0 @@ -initialize-release -initializeBackend - - self subclassResponsibility \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBootstrapEnvironment.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBootstrapEnvironment.st deleted file mode 100644 index 971592b8ff5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeBootstrapEnvironment.st +++ /dev/null @@ -1,22 +0,0 @@ -running -initializeBootstrapEnvironment - - bootstrapEnvironment := Dictionary new. - - "We initialize the object space with a boot symbol table and character table. - We will later replace them by real ones." - objectSpace := EPObjectSpace new. - objectSpace backend: espellBackend. - objectSpace characterTable: (EPExternalCharacterTable new objectSpace: objectSpace; yourself). - objectSpace symbolTable: (EPExternalSymbolTable new objectSpace: objectSpace; yourself). - - classLoader createJustStubs. - classLoader environment: bootstrapEnvironment. - classLoader systemDefinition: self systemDefinition. - classLoader builder: self. - - bootstrapInterpreter := EPASTEvaluator new. - bootstrapInterpreter codeProvider: self. - bootstrapInterpreter environment: self. - bootstrapInterpreter objectSpace: objectSpace. - objectSpace interpreter: bootstrapInterpreter. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st deleted file mode 100644 index 37e5cfdfcf3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeImage.st +++ /dev/null @@ -1,59 +0,0 @@ -running -initializeImage - | process | - - self flag: 'should migrate this method'. - self checkpoint: 'image_initialization'. - - self initializeSpecialObjectArray. - - self bootstrapInterpreter evaluateCode: ' - Smalltalk at: #Processor put: (ProcessorScheduler basicNew). - (Smalltalk at: #Processor) instVarAt: 1 put: ((1 to: 80) collect: [ :i | ProcessList new ])'. - - "Initialize the processor association for the special objects array. - Enchancement possible: This should be automatically managed by the createVMStubs method" - objectSpace backend processorAssociation: (self bootstrapInterpreter evaluateCode: 'Smalltalk globals associationAt: #Processor.'). - - process := objectSpace - createProcessWithPriority: 40 - doing: ('PharoBootstrapInitialization - initializeImageOfType: ''Pharo'' - major: {major} - minor: {minor} - patch: {patch} - suffix: ''{suffix}'' - build: {build} - commitHash: ''{hash}''.' - format: { - 'major' -> versionInfo major. - 'minor' -> versionInfo minor. - 'patch' -> versionInfo patch. - 'suffix' -> (versionInfo suffix ifNil: [ '' ]). - 'build' -> versionInfo buildNumber. - 'hash' -> versionInfo commitHash. - } asDictionary). - objectSpace installAsActiveProcess: process. - - self followForwardingPointers. - -" espellBackend simulator stackPages pages do: [ :page | espellBackend simulator stackPages freeStackPage: page ]. - espellBackend simulator freeUntracedStackPages." - [[ espellBackend objectMemory flushNewSpace. ] - on: Halt - do: [:ex| - "suppress halts from the usual suspects (development time halts)" - (#(#fullGC #compactImage #doScavenge:) includes: ex signalerContext sender selector) - ifTrue: [ex resume] - ifFalse: [ex pass]]] on: AssertionFailure do: [ :e | - ((e signalerContext sender method selector == #assert:) - and: [ e signalerContext sender sender method selector = #mapStackPages ]) - ifTrue: [ e resume ] - ifFalse: [ e pass ]] . - - self freeForwarders. - self compactImage. - self reportSizes. - - self writeSnapshot: imageFileReference fullName ofTransformedImage: espellBackend simulator objectMemory headerFlags: 0 screenSize: 0. - PBStepFinishedSignal log: 'Installed extension methods'. diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeSpecialObjectArray.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeSpecialObjectArray.st deleted file mode 100644 index 66ae970a4be..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/initializeSpecialObjectArray.st +++ /dev/null @@ -1,8 +0,0 @@ -running -initializeSpecialObjectArray -" objectSpace mustRebuildSpecialObjectsArray. -" objectSpace specialObjectsArray: self newSpecialObjectsArray. - - self bootstrapInterpreter - evaluateCode: 'Smalltalk specialObjectsArray: newArray.' - withTemps: { 'newArray' -> objectSpace backend specialObjectsArray }. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethods.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethods.st deleted file mode 100644 index 6c2feb1f647..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethods.st +++ /dev/null @@ -1,12 +0,0 @@ -running -installExtensionMethods - - | definitions total | - definitions := self systemDefinition packages sorted: [ :a :b | a name < b name ]. - total := definitions size. - definitions withIndexDo: [ :aPackageDefinition :index | - self installExtensionMethodsOf: aPackageDefinition prefixed: (index printPaddedWith: $0 to: 3), '/' , total asString. - ]. - - PBStepFinishedSignal log: 'Installed extension methods'. - self checkpoint: 'installed_extension_methods'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethodsOf.prefixed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethodsOf.prefixed..st deleted file mode 100644 index 280a5e4bd4b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installExtensionMethodsOf.prefixed..st +++ /dev/null @@ -1,23 +0,0 @@ -running -installExtensionMethodsOf: aPackageDefinition prefixed: aPrefix - aPackageDefinition extensionMethods - doWithIndex: [ :methodDefinition :index | | compiledMethod behaviorMirror methodClass logMessage | - methodClass := methodDefinition methodClass. - compiledMethod := self methodBuilder createNewMethod: methodDefinition. - behaviorMirror := bootstrapEnvironment at: methodClass theNonMetaClass name. - methodClass isMeta ifTrue: [ behaviorMirror := behaviorMirror classSide ]. - - logMessage := String streamContents: [ :stream | - stream - nextPutAll: aPrefix; - nextPut: $-; - nextPutAll: index asString; - nextPut: $/; - nextPutAll: aPackageDefinition extensionMethods size asString; - nextPutAll: ': Installing extension method '; - nextPutAll: methodClass name; - nextPutAll: '>>'; - nextPutAll: methodDefinition selector ]. - PBSubStepFinishedSignal log: logMessage. - - self installMethod: compiledMethod inBehavior: behaviorMirror ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethod.inBehavior..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethod.inBehavior..st deleted file mode 100644 index 6ff644cef31..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethod.inBehavior..st +++ /dev/null @@ -1,12 +0,0 @@ -running -installMethod: method inBehavior: theClass - - | timePerMethod | - timePerMethod := [self objectSpace interpreter - evaluateCode: 'theBehavior addSelectorSilently: selector withMethod: compiledMethod' - withTemps: { - 'theBehavior' -> theClass. - 'selector' -> (method selector asLiteralInObjectSpace: objectSpace). - 'compiledMethod' -> method }] timeToRun. - - statistics addMethodTime: timePerMethod. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethods.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethods.st deleted file mode 100644 index 81fc3297c10..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethods.st +++ /dev/null @@ -1,12 +0,0 @@ -running -installMethods - - | definitions total | - definitions := self systemDefinition allClassesAndTraits sorted: [ :a :b | a name < b name ]. - total := definitions size. - definitions withIndexDo: [ :aClassDefinition :index | - "self checkpoint: 'installed_methods_wip'." - self installMethodsInBehaviorDefinition: aClassDefinition prefixed: (index printPaddedWith: $0 to: 3), '/' , total asString. - ]. - PBStepFinishedSignal log: 'installed_methods'. - self checkpoint: 'installed_methods'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorDefinition.prefixed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorDefinition.prefixed..st deleted file mode 100644 index bb75db13ddf..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorDefinition.prefixed..st +++ /dev/null @@ -1,14 +0,0 @@ -running -installMethodsInBehaviorDefinition: behaviorDefinition prefixed: aPrefix - | behaviorMirror | - behaviorMirror := bootstrapEnvironment at: behaviorDefinition name. - self - installMethodsInBehaviorMapping: behaviorDefinition - using: self methodBuilder - onMirror: behaviorMirror - prefixed: aPrefix. - self - installMethodsInBehaviorMapping: behaviorDefinition classSide - using: self methodBuilder - onMirror: behaviorMirror basicClass - prefixed: aPrefix. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st deleted file mode 100644 index 703e56d6db4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/installMethodsInBehaviorMapping.using.onMirror.prefixed..st +++ /dev/null @@ -1,12 +0,0 @@ -running -installMethodsInBehaviorMapping: aBehaviorMapping using: aMethodBuilder onMirror: mirror prefixed: aPrefix - | newMethods theClass | - newMethods := (aMethodBuilder methodsFromDefinition: aBehaviorMapping) sorted: [ :a :b | a selector < b selector ]. - theClass := (self classNamed: aBehaviorMapping theNonMetaClass name) mirror. - aBehaviorMapping isMeta ifTrue: [ theClass := theClass classSide ]. - newMethods doWithIndex: [ :method :index | - PBSubStepFinishedSignal log: aPrefix, ' - ', index asString, '/', newMethods size asString, ': Installing method ', - aBehaviorMapping name, '>>', method selector. - - self installMethod: method inBehavior: theClass. - ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/instantiateClassLoader.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/instantiateClassLoader.st deleted file mode 100644 index a49839d51fc..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/instantiateClassLoader.st +++ /dev/null @@ -1,4 +0,0 @@ -initialize-release -instantiateClassLoader - - classLoader := PBClassLoader new. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/isMeta..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/isMeta..st deleted file mode 100644 index 69e0190e0df..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/isMeta..st +++ /dev/null @@ -1,4 +0,0 @@ -testing -isMeta: aMirror - - ^ (self classNamed: #Metaclass) mirror = aMirror basicClass \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/log..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/log..st deleted file mode 100644 index d12d121c342..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/log..st +++ /dev/null @@ -1,4 +0,0 @@ -helpers -log: aLogStatement - - logger log: aLogStatement \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/metaclassForClassMirror..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/metaclassForClassMirror..st deleted file mode 100644 index a083e59c88a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/metaclassForClassMirror..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -metaclassForClassMirror: anEPClassMirror - - ^ EPRemoteMetaClass on: anEPClassMirror environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/methodBuilder.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/methodBuilder.st deleted file mode 100644 index bc3275a2f93..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/methodBuilder.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -methodBuilder - ^ PBMethodCompiler new builder: self; yourself. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/objectSpace.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/objectSpace.st deleted file mode 100644 index 42df9445e34..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/objectSpace.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -objectSpace - ^ objectSpace \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/statistics.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/statistics.st deleted file mode 100644 index af0d92fecfe..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/statistics.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -statistics - - ^ statistics \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition..st deleted file mode 100644 index 3780e231b9c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -systemDefinition: anObject - systemDefinition := anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition.st deleted file mode 100644 index 6a10de65a7c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/systemDefinition.st +++ /dev/null @@ -1,4 +0,0 @@ -definition -systemDefinition - - ^ systemDefinition \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo..st deleted file mode 100644 index 81e03df0a89..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -versionInfo: anObject - versionInfo := anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo.st deleted file mode 100644 index 28f1f452694..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/versionInfo.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -versionInfo - ^ versionInfo \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitClass..st deleted file mode 100644 index eff63d7c07a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitClass..st +++ /dev/null @@ -1,5 +0,0 @@ -visiting -visitClass: aRFiClass - ^ EPRemoteClass - on: (classLoader classNamed: aRFiClass name) - environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitTrait..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitTrait..st deleted file mode 100644 index 9dacd56b657..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/instance/visitTrait..st +++ /dev/null @@ -1,5 +0,0 @@ -visiting -visitTrait: aRFiTrait - ^ EPRemoteTrait - on: (classLoader classNamed: aRFiTrait name) - environment: self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/properties.json deleted file mode 100644 index 5a68c5d54dd..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilder50.class/properties.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "commentStamp" : "ChristopheDemarey 10/20/2015 11:37", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "objectSpace", - "classLoader", - "systemDefinition", - "bootstrapInterpreter", - "bootstrapEnvironment", - "espellBackend", - "statistics", - "logger", - "imageFileReference", - "versionInfo" - ], - "name" : "PBImageBuilder50", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/README.md deleted file mode 100644 index 2afa134fe99..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/README.md +++ /dev/null @@ -1 +0,0 @@ -I implement the initial image building for Spur VMs. I'm an abstract class. My subclasses implement specifics about 32 and 64 bit images. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/example5617.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/example5617.st deleted file mode 100644 index bdc6190cbcc..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/example5617.st +++ /dev/null @@ -1,14 +0,0 @@ -examples -example5617 - - | vm om | - vm := StackInterpreterSimulator newWithOptions: #(#ObjectMemory #Spur32BitMemoryManager ). - om := vm objectMemory. - vm desiredNumStackPages: 8. "Makes simulation faster by creating fewer stack pages." - vm instVarNamed: 'assertVEPAES' put: false. - vm initStackPages. - PBImageBuilderSpur50 new - version: '5.617'; - espellBackend: (EPSimulatorBackend simulator: vm) - forBootstrap; - bootstrap. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/forArchitecture..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/forArchitecture..st deleted file mode 100644 index 6d40c1c11bd..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/class/forArchitecture..st +++ /dev/null @@ -1,12 +0,0 @@ -instance-creation -forArchitecture: architecture - - | candidates | - candidates := self subclasses select: [ :sc | sc name endsWith: architecture, 'bit' ]. - - candidates - ifEmpty: [ self error: 'No candidates for architecture: ', architecture ]. - candidates size > 1 - ifTrue: [ self error: 'More than one candidate for architecture: ', architecture ]. - - ^ candidates anyOne new \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateClassTable.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateClassTable.st deleted file mode 100644 index b4d5cd03179..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateClassTable.st +++ /dev/null @@ -1,51 +0,0 @@ -as yet unclassified -allocateClassTable - "Allocate the root of the classTable plus enough pages to accomodate all classes in - the classToIndex map. Don't fill in the entries yet; the classes have yet to be cloned." - | tableRoot page maxSize numPages newHeap newOop | - newHeap := objectSpace backend simulator objectMemory. - tableRoot := newHeap - allocateSlots: newHeap classTableRootSlots + newHeap hiddenRootSlots - format: newHeap arrayFormat - classIndex: newHeap arrayClassIndexPun. - newOop := tableRoot. - self haltIf: [ newOop = 4239888 ]. - self assert: (newHeap numSlotsOf: tableRoot) = (newHeap classTableRootSlots + newHeap hiddenRootSlots). - self assert: (newHeap formatOf: tableRoot) = newHeap arrayFormat. - self assert: (newHeap classIndexOf: tableRoot) = newHeap arrayClassIndexPun. - newHeap nilFieldsOf: tableRoot. - "first page is strong" - page := newHeap - allocateSlots: newHeap classTablePageSize - format: newHeap arrayFormat - classIndex: newHeap arrayClassIndexPun. - self assert: (newHeap numSlotsOf: page) = newHeap classTablePageSize. - self assert: (newHeap formatOf: tableRoot) = newHeap arrayFormat. - self assert: (newHeap classIndexOf: tableRoot) = newHeap arrayClassIndexPun. - self assert: (newHeap objectAfter: tableRoot limit: newHeap freeStart) = page. - "lastClassTablePage := page." - newHeap nilFieldsOf: page. - newHeap storePointer: 0 ofObject: tableRoot withValue: page. - newHeap setHiddenRootsObj: tableRoot. - - "this should actually take into account special indexes and immediate classes. - Skipped for the moment" - maxSize := (1 << self objectMemory classTableMajorIndexShift) + (self systemDefinition allClasses size * 2). - - numPages := (maxSize + newHeap classTableMinorIndexMask / newHeap classTablePageSize) truncated. - 2 to: numPages do: - [:i| - page := newHeap - allocateSlots: newHeap classTablePageSize - format: newHeap arrayFormat - classIndex: newHeap arrayClassIndexPun. - self assert: (newHeap numSlotsOf: page) = newHeap classTablePageSize. - self assert: (newHeap formatOf: page) = newHeap arrayFormat. - self assert: (newHeap classIndexOf: page) = newHeap arrayClassIndexPun. - newHeap fillObj: page numSlots: newHeap classTablePageSize with: newHeap nilObject. - newHeap storePointer: i - 1 ofObject: tableRoot withValue: page. - self assert: (newHeap objectAfter: (newHeap fetchPointer: i - 2 ofObject: tableRoot) limit: newHeap freeStart) = page. - "lastClassTablePage := page"]. - "and once again to recompute numClassTablePages post building the class table." - newHeap instVarNamed: 'numClassTablePages' put: nil. - newHeap setHiddenRootsObj: tableRoot \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateFreeLists.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateFreeLists.st deleted file mode 100644 index c08dc522451..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/allocateFreeLists.st +++ /dev/null @@ -1,18 +0,0 @@ -running -allocateFreeLists - "Allocate the freeLists array." - | newOop | - freeListsOop := self objectMemory - allocateSlots: objectSpace backend simulator objectMemory numFreeLists - format: objectSpace backend simulator objectMemory wordIndexableFormat - classIndex: objectSpace backend simulator objectMemory wordSizeClassIndexPun. - self assert: (self objectMemory objectAfter: objectSpace backend trueObject target address) = freeListsOop. - newOop := freeListsOop. - self haltIf: [ newOop = 4239888 ]. - 0 to: objectSpace backend simulator objectMemory numFreeLists - 1 do: - [:i| - self objectMemory - storePointerUnchecked: i - ofObject: freeListsOop - withValue: 0]. - self objectMemory initializeFreeSpacePostLoad: freeListsOop. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/arrayClassIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/arrayClassIndex.st deleted file mode 100644 index 089d149c0b2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/arrayClassIndex.st +++ /dev/null @@ -1,4 +0,0 @@ -class-indexes -arrayClassIndex - - ^ self objectMemory arrayClassIndexPun \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/compactImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/compactImage.st deleted file mode 100644 index 3593a24828f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/compactImage.st +++ /dev/null @@ -1,11 +0,0 @@ -final steps -compactImage - | firstFree lastUsed newHeap | - newHeap := espellBackend objectMemory. - newHeap allHeapEntitiesDo: - [:o| - (newHeap isFreeObject: o) - ifTrue: [firstFree ifNil: [firstFree := o]] - ifFalse: [lastUsed := o]]. - lastUsed < firstFree ifTrue: "nothing to do" - [^self]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createBehaviorFromDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createBehaviorFromDefinition..st deleted file mode 100644 index f760aad596b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createBehaviorFromDefinition..st +++ /dev/null @@ -1,7 +0,0 @@ -running -createBehaviorFromDefinition: aRFiDefinition - - [ ^ super createBehaviorFromDefinition: aRFiDefinition ] - on: AssertionFailure do: [ :e | - ((e signalerContext method selector == #assert:) - and: [ e signalerContext sender method selector = #mapStackPages ]) ifFalse: [ e pass ]] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createFalse.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createFalse.st deleted file mode 100644 index d9de08ce603..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createFalse.st +++ /dev/null @@ -1,10 +0,0 @@ -running -createFalse - - "False format should be changed and calculated depending on the image" - | falseClassIndex falseObject newOop | - falseClassIndex := self nextOrdinaryClassIndex. - falseObject := self objectSpace backend - createObjectWithFormat: False format withSize: 0 classIndex: falseClassIndex. - objectSpace falseObject: falseObject. - ^ objectSpace falseObject diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createNil.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createNil.st deleted file mode 100644 index 92fcd064e8a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createNil.st +++ /dev/null @@ -1,10 +0,0 @@ -running -createNil - - "UndefinedObject format should be changed and calculated depending on the image" - | undefinedObjectClassIndex nilObject newOop | - undefinedObjectClassIndex := self nextOrdinaryClassIndex. - nilObject := self objectSpace backend - createObjectWithFormat: UndefinedObject format withSize: 0 classIndex: undefinedObjectClassIndex. - objectSpace nilObject: nilObject. - ^ objectSpace nilObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createTrue.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createTrue.st deleted file mode 100644 index cda14951275..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createTrue.st +++ /dev/null @@ -1,10 +0,0 @@ -running -createTrue - - "True format should be changed and calculated depending on the image" - | trueClassIndex trueObject newOop | - trueClassIndex := self nextOrdinaryClassIndex. - trueObject := self objectSpace backend - createObjectWithFormat: True format withSize: 0 classIndex: trueClassIndex. - objectSpace trueObject: trueObject. - ^ objectSpace trueObject diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createVMStubs.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createVMStubs.st deleted file mode 100644 index b626ae8d468..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/createVMStubs.st +++ /dev/null @@ -1,54 +0,0 @@ -running -createVMStubs - - | specialObjectsArray | - super log: 'creating initial Objects needed by the VM'. - - self createNil. - self createFalse. - self createTrue. - - self allocateFreeLists. - self allocateClassTable. - - specialObjectsArray := self objectSpace backend - createObjectWithFormat: Array format withSize: 60 classIndex: self arrayClassIndex. - objectSpace specialObjectsArray: specialObjectsArray. - objectSpace nilObject: objectSpace nilObject. - objectSpace falseObject: objectSpace falseObject. - objectSpace trueObject: objectSpace trueObject. - - objectSpace nilObject setClass: (self createStubForClassNamed: #UndefinedObject). - objectSpace falseObject setClass: (self createStubForClassNamed: #False). - objectSpace trueObject setClass: (self createStubForClassNamed: #True). - - - objectSpace backend smallIntegerClass: (self createStubForClassNamed: #SmallInteger). - objectSpace backend characterClass: (self createStubForClassNamed: #Character). - objectSpace backend byteSymbolClass: (self createStubForClassNamed: #ByteSymbol). - objectSpace backend byteStringClass: (self createStubForClassNamed: #ByteString). - objectSpace backend byteArrayClass: (self createStubForClassNamed: #ByteArray). - objectSpace backend associationClass: (self createStubForClassNamed: #Association). - objectSpace backend arrayClass: (self createStubForClassNamed: #Array). - objectSpace backend symbolTableClass: (self createStubForClassNamed: #Symbol). - objectSpace backend largeNegativeIntegerClass: (self createStubForClassNamed: #LargeNegativeInteger). - objectSpace backend largePositiveIntegerClass: (self createStubForClassNamed: #LargePositiveInteger). - objectSpace backend methodClass: (self createStubForClassNamed: #CompiledMethod). - objectSpace backend floatClass: (self createStubForClassNamed: #BoxedFloat64). - objectSpace backend contextClass: (self createStubForClassNamed: #Context). - objectSpace backend processClass: (self createStubForClassNamed: #Process). - objectSpace backend blockClass: (self createStubForClassNamed: #BlockClosure). - objectSpace backend fullBlockClass: (self createStubForClassNamed: #FullBlockClosure). - objectSpace backend messageClass: (self createStubForClassNamed: #Message). - objectSpace backend semaphoreClass: (self createStubForClassNamed: #Semaphore). - - "Point is required in the special objects array because it is used to instantiate point objects faster. - If we do not put it here, the VM will crash. - Lots of tests in kernel use it." - objectSpace backend pointClass: (self createStubForClassNamed: #Point). - - objectSpace backend processorAssociation: (self classNamed: #Association) mirror basicNew. - objectSpace backend processorAssociation - instanceVariableAtIndex: 2 put: (self createStubForClassNamed: #ProcessorScheduler) basicNew. - - objectSpace backend specialSelectors: ((self classNamed: #Array) mirror basicNew: 64) \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/errorMessagesArray.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/errorMessagesArray.st deleted file mode 100644 index 1ad67044957..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/errorMessagesArray.st +++ /dev/null @@ -1,15 +0,0 @@ -as yet unclassified -errorMessagesArray - - "return objects for error messages - special objects array at index 52" - - ^ {nil "nil => generic error". - #'bad receiver'. #'bad argument'. #'bad index'. - #'bad number of arguments'. - #'inappropriate operation'. #'unsupported operation'. - #'no modification'. #'insufficient object memory'. - #'insufficient C memory'. #'not found'. #'bad method'. - #'internal error in named primitive machinery'. - #'object may move'. #'resource limit exceeded'. - #'object is pinned'. #'primitive write beyond end of object'. - #'object moved'. #'object not pinned'. #'callback error'} asLiteralInObjectSpace: objectSpace \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/firstOrdinaryClassIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/firstOrdinaryClassIndex.st deleted file mode 100644 index 6cd38269f9a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/firstOrdinaryClassIndex.st +++ /dev/null @@ -1,4 +0,0 @@ -as yet unclassified -firstOrdinaryClassIndex - - ^ self objectMemory classTablePageSize \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/flushNewSpace.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/flushNewSpace.st deleted file mode 100644 index 804747fadef..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/flushNewSpace.st +++ /dev/null @@ -1,29 +0,0 @@ -running -flushNewSpace - - | newHeap | - self checkpoint: 'created_vm_objects'. - - newHeap := espellBackend objectMemory. - newHeap initializePostBootstrap. - - espellBackend simulator initializeInterpreter: 0. - espellBackend simulator instVarNamed: 'methodDictLinearSearchLimit' put: SmallInteger maxVal. - - "try to move nil, true and false to the new space" - newHeap flushNewSpace. - - self - assert: (espellBackend simulator objectMemory objectStartingAt: espellBackend simulator objectMemory oldSpaceStart) - = objectSpace nilObject target address. - - self - assert: (espellBackend simulator objectMemory objectAfter: objectSpace nilObject target address) - = objectSpace falseObject target address. - - self - assert: (espellBackend simulator objectMemory objectAfter: objectSpace falseObject target address) - = objectSpace trueObject target address. - - objectSpace backend initializeExecutionContext. - self prepareSimulatorForExecution. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/followForwardingPointers.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/followForwardingPointers.st deleted file mode 100644 index 1a8619f5fc3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/followForwardingPointers.st +++ /dev/null @@ -1,14 +0,0 @@ -final steps -followForwardingPointers - | newHeap | - newHeap := espellBackend objectMemory. - newHeap allObjectsDo: [:o| - (newHeap isForwarded: o) ifFalse: - [0 to: (newHeap numPointerSlotsOf: o) - 1 do: - [:i| | field | - field := newHeap fetchPointer: i ofObject: o. - (newHeap isOopForwarded: field) ifTrue: - [newHeap - storePointer: i - ofObject: o - withValue: (newHeap followForwarded: field)]]]]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/formatOfClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/formatOfClass..st deleted file mode 100644 index 4a662b204c5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/formatOfClass..st +++ /dev/null @@ -1,16 +0,0 @@ -as yet unclassified -formatOfClass: aRFiClass - - "A class format is composed by" - "<5 bits inst spec><16 bits inst size>" - | newHeap instSize newInstSpec | - - newHeap := objectSpace backend simulator objectMemory. - - ((aRFiClass name = 'SmallInteger') - or: [(aRFiClass name = 'Character') - or: [aRFiClass name = 'SmallFloat64']]) ifTrue: - [^ newHeap integerObjectOf: newHeap instSpecForImmediateClasses << 16]. - instSize := aRFiClass instSize. - newInstSpec := self instSpecOfClass: aRFiClass. - ^newInstSpec << 16 + instSize \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/freeForwarders.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/freeForwarders.st deleted file mode 100644 index 5c62cbbd71a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/freeForwarders.st +++ /dev/null @@ -1,21 +0,0 @@ -final step -freeForwarders - "Check that all forwarders have been followed. Then free them." - | numForwarders numFreed newHeap | - numForwarders := numFreed := 0. - newHeap := espellBackend objectMemory. - newHeap allObjectsDo: - [:o| - (newHeap isForwarded: o) - ifTrue: [numForwarders := numForwarders + 1] - ifFalse: - [0 to: (newHeap numPointerSlotsOf: o) - 1 do: - [:i| - self assert: (newHeap isOopForwarded: (newHeap fetchPointer: i ofObject: o)) not]]]. - Transcript cr; nextPutAll: 'freeing '; print: numForwarders; nextPutAll: ' forwarders'; cr; flush. - newHeap allObjectsDo: - [:o| - (newHeap isForwarded: o) ifTrue: - [numFreed := numFreed + 1. - newHeap freeObject: o]]. - self assert: numFreed = numForwarders \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instSpecOfClass..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instSpecOfClass..st deleted file mode 100644 index b2ce6c9bca8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instSpecOfClass..st +++ /dev/null @@ -1,28 +0,0 @@ -as yet unclassified -instSpecOfClass: aRFiClass - - "NEW: - 0 = 0 sized objects (UndefinedObject True False et al) - 1 = non-indexable objects with inst vars (Point et al) - 2 = indexable objects with no inst vars (Array et al) - 3 = indexable objects with inst vars (MethodContext AdditionalMethodState et al) - 4 = weak indexable objects with inst vars (WeakArray et al) - 5 = weak non-indexable objects with inst vars (ephemerons) (Ephemeron) - 6 = reserved - 7 = forwarder format (also immediate class format) - 9 64-bit indexable - 10 - 11 32-bit indexable - 12 - 15 16-bit indexable - 16 - 23 byte indexable - 24 - 31 compiled method" - (aRFiClass isBytes) ifTrue: [ ^ 16 ]. - (aRFiClass isWords) ifTrue: [ ^ 10 ]. - (aRFiClass isCompiledMethod) ifTrue: [ ^ 24 ]. - (aRFiClass isEphemeron) ifTrue: [ ^ 5 ]. - (aRFiClass instSize = 0 and: [ aRFiClass isVariable not ]) ifTrue: [ ^ 0 ]. - (aRFiClass instSize > 0 and: [ aRFiClass isVariable not ]) ifTrue: [ ^ 1 ]. - (aRFiClass instSize = 0 and: [ aRFiClass isVariable ]) ifTrue: [ ^ 2 ]. - (aRFiClass instSize > 0 and: [ aRFiClass isVariable ]) ifTrue: [ ^ 3 ]. - (aRFiClass instSize > 0 and: [ aRFiClass isVariable and: [ aRFiClass isWeak ] ]) ifTrue: [ ^ 4 ]. - (aRFiClass instSize > 0 and: [ aRFiClass isVariable not and: [ aRFiClass isWeak ] ]) ifTrue: [ ^ 5 ]. - self error: 'illegal old format' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instantiateClassLoader.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instantiateClassLoader.st deleted file mode 100644 index 87a43056290..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/instantiateClassLoader.st +++ /dev/null @@ -1,4 +0,0 @@ -as yet unclassified -instantiateClassLoader - - classLoader := PBSpurClassLoader new. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/newSpecialObjectsArray.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/newSpecialObjectsArray.st deleted file mode 100644 index 606fbadf859..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/newSpecialObjectsArray.st +++ /dev/null @@ -1,53 +0,0 @@ -instance creation -newSpecialObjectsArray - | newSpecialObjectsArray | - newSpecialObjectsArray := espellBackend arrayClass asClassMirror basicNew: 60. - newSpecialObjectsArray at: 1 put: espellBackend nilObject. - newSpecialObjectsArray at: 2 put: espellBackend falseObject. - newSpecialObjectsArray at: 3 put: espellBackend trueObject. - newSpecialObjectsArray - at: 4 - put: espellBackend processorAssociation. - newSpecialObjectsArray at: 5 put: espellBackend nilObject. - newSpecialObjectsArray at: 6 put: espellBackend smallIntegerClass. - newSpecialObjectsArray at: 7 put: espellBackend byteStringClass. - newSpecialObjectsArray at: 8 put: espellBackend arrayClass. - newSpecialObjectsArray at: 9 put: espellBackend smalltalkInstance. - newSpecialObjectsArray at: 10 put: espellBackend floatClass. - newSpecialObjectsArray at: 11 put: espellBackend contextClass. - newSpecialObjectsArray at: 12 put: espellBackend nilObject. - newSpecialObjectsArray at: 13 put: espellBackend pointClass. - newSpecialObjectsArray at: 14 put: espellBackend largePositiveIntegerClass. - newSpecialObjectsArray at: 15 put: espellBackend nilObject. - newSpecialObjectsArray at: 16 put: espellBackend messageClass. - newSpecialObjectsArray at: 17 put: espellBackend methodClass. - newSpecialObjectsArray at: 18 put: espellBackend nilObject. - newSpecialObjectsArray at: 19 put: espellBackend semaphoreClass. - newSpecialObjectsArray at: 20 put: espellBackend characterClass. - newSpecialObjectsArray at: 21 put: (#doesNotUnderstand: asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 22 put: (#cannotReturn: asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 23 put: espellBackend nilObject. - newSpecialObjectsArray at: 24 put: (#(#+ 1 #- 1 #< 1 #> 1 #'<=' 1 #'>=' 1 #= 1 #'~=' 1 #* 1 #/ 1 #'\\' 1 #@ 1 #bitShift: 1 #'//' 1 #bitAnd: 1 #bitOr: 1 #at: 1 #at:put: 2 #size 0 #next 0 #nextPut: 1 #atEnd 0 #'==' 1 nil 0 #'~~' 1 #value 0 #value: 1 #do: 1 #new 0 #new: 1 #x 0 #y 0) asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray - at: 25 - put: espellBackend characterTable. "character table" - newSpecialObjectsArray at: 26 put: (#mustBeBoolean asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 27 put: espellBackend byteArrayClass. - newSpecialObjectsArray at: 28 put: espellBackend processClass. - newSpecialObjectsArray at: 29 put: (espellBackend arrayClass basicNew: 0). - 30 to: 56 do: [ :idx | newSpecialObjectsArray at: idx put: espellBackend nilObject ]. - newSpecialObjectsArray at: 37 put: espellBackend blockClass. - "External semaphore table" - newSpecialObjectsArray at: 39 put: (espellBackend arrayClass asClassMirror basicNew: 20 ). - newSpecialObjectsArray at: 43 put: espellBackend largeNegativeIntegerClass. - newSpecialObjectsArray at: 49 put: (#aboutToReturn:through: asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 50 put: (#run:with:in: asLiteralInObjectSpace: objectSpace). - self flag: #'add WeakFinalization list'. - newSpecialObjectsArray at: 51 put: (#attemptToAssign:withIndex: asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 52 put: self errorMessagesArray. - newSpecialObjectsArray at: 54 put: (#invokeCallbackContext: asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 58 put: (#unusedBytecode asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 59 put: (#conditionalBranchCounterTrippedOn: asLiteralInObjectSpace: objectSpace). - newSpecialObjectsArray at: 60 put: (#classTrapFor: asLiteralInObjectSpace: objectSpace). - - ^newSpecialObjectsArray. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/nextOrdinaryClassIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/nextOrdinaryClassIndex.st deleted file mode 100644 index 7e3ff1fe7c2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/nextOrdinaryClassIndex.st +++ /dev/null @@ -1,8 +0,0 @@ -as yet unclassified -nextOrdinaryClassIndex - - | result | - nextOrdinaryClassIndex ifNil: [ nextOrdinaryClassIndex := self firstOrdinaryClassIndex ]. - result := nextOrdinaryClassIndex. - nextOrdinaryClassIndex := nextOrdinaryClassIndex + 1. - ^ result \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/objectMemory.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/objectMemory.st deleted file mode 100644 index 0228c3b52a2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/objectMemory.st +++ /dev/null @@ -1,4 +0,0 @@ -as yet unclassified -objectMemory - - ^ espellBackend simulator objectMemory \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/prepareSimulatorForExecution.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/prepareSimulatorForExecution.st deleted file mode 100644 index b35f106fcc6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/prepareSimulatorForExecution.st +++ /dev/null @@ -1,16 +0,0 @@ -as yet unclassified -prepareSimulatorForExecution - - | savedEndOfMemory | - self objectMemory initializePostBootstrap. - - "savedEndOfMemory := self objectMemory endOfMemory. - self objectMemory setEndOfMemory: self objectMemory freeOldSpaceStart. - self objectMemory setEndOfMemory: savedEndOfMemory." -" self objectMemory interpreter initializeInterpreter: 0. -" self objectMemory - initializeNewSpaceVariables; - bootstrapping: false; - assimilateNewSegment: (self objectMemory segmentManager segments at: 0); - setCheckForLeaks: 0; - runLeakCheckerForFullGC. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/reportSizes.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/reportSizes.st deleted file mode 100644 index 4d2cb589604..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/reportSizes.st +++ /dev/null @@ -1,19 +0,0 @@ -final steps -reportSizes - | oldAvgBytes "newAvgBytes" newHeapSize newHeap | - newHeapSize := 20 * 1024 * 1024. - newHeap := espellBackend objectMemory. - Transcript - nextPutAll: 'done.'; cr; - nextPutAll: 'initial heap size: '; nextPutAll: newHeapSize asStringWithCommas; cr; -" nextPutAll: 'change: '; print: change * 100.0 maxDecimalPlaces: 2; nextPut: $%; cr;" - flush. - newHeapSize := newHeap endOfMemory - - newHeap scavenger eden limit - - newHeap totalFreeListBytes. -" newAvgBytes := newHeapSize asFloat / newHeapNumObjs." - Transcript - nextPutAll: 'final new heap size: '; nextPutAll: newHeapSize asStringWithCommas; tab; - " nextPutAll: ' (avg obj bytes '; print: newAvgBytes maxDecimalPlaces: 2; nextPutAll: ' words '; print: newAvgBytes / self wordSize maxDecimalPlaces: 2; nextPut: $); cr; -"" nextPutAll: 'change: '; print: change * 100.0 maxDecimalPlaces: 2; nextPut: $%; cr;" - flush \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/writeSnapshot.ofTransformedImage.headerFlags.screenSize..st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/writeSnapshot.ofTransformedImage.headerFlags.screenSize..st deleted file mode 100644 index b00916c783d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/instance/writeSnapshot.ofTransformedImage.headerFlags.screenSize..st +++ /dev/null @@ -1,30 +0,0 @@ -as yet unclassified -writeSnapshot: imageFileName ofTransformedImage: spurHeap headerFlags: headerFlags screenSize: screenSizeInteger - "The bootstrapped image typically contains a few big free chunks and one huge free chunk. - Test snapshot writing and loading by turning the largest non-huge chunks into segment bridges - and saving." - | penultimate ultimate sim | -" [ spurHeap flushNewSpace. ] - on: Halt - do: [:ex|" - "suppress halts from the usual suspects (development time halts)" -" (#(#fullGC #compactImage #doScavenge:) includes: ex signalerContext sender selector) - ifTrue: [ex resume] - ifFalse: [ex pass]]." - sim := spurHeap coInterpreter. - sim bootstrapping: true. - spurHeap - setEndOfMemory: spurHeap endOfMemory + spurHeap bridgeSize. "hack; initializeInterpreter: cuts it back by bridgeSize" - sim initializeInterpreter: 0; - setImageHeaderFlagsFrom: headerFlags; - setSavedWindowSize: (800<<16)+600; - setDisplayForm: nil. - spurHeap allOldSpaceEntitiesDo: [:e| penultimate := ultimate. ultimate := e]. - "Check that we've left behind the old, pre-pigCompact segmented save" - self assert: (spurHeap isFreeObject: penultimate) not. - spurHeap checkFreeSpace. - spurHeap runLeakCheckerForFullGC. - sim bereaveAllMarriedContextsForSnapshotFlushingExternalPrimitivesIf: true. - sim imageName: imageFileName. - sim writeImageFileIO. - Transcript cr; show: 'Done!' \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/properties.json deleted file mode 100644 index a99238ee49b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur50.class/properties.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "commentStamp" : "GuillermoPolito 12/12/2016 16:56", - "super" : "PBImageBuilder50", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "nextOrdinaryClassIndex", - "freeListsOop" - ], - "name" : "PBImageBuilderSpur50", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/README.md deleted file mode 100644 index 1fa1ee76cf5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/README.md +++ /dev/null @@ -1 +0,0 @@ -I create pharo images for Spur VMs in 32bit format. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/instance/initializeBackend.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/instance/initializeBackend.st deleted file mode 100644 index 0bc9df2559f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/instance/initializeBackend.st +++ /dev/null @@ -1,4 +0,0 @@ -initialization -initializeBackend - - espellBackend := EPSimulatorBackend for32Bit forBootstrap \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/properties.json deleted file mode 100644 index bc6e313a008..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5032bit.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "GuillermoPolito 12/12/2016 16:56", - "super" : "PBImageBuilderSpur50", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBImageBuilderSpur5032bit", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/README.md deleted file mode 100644 index 08fe1a99893..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/README.md +++ /dev/null @@ -1 +0,0 @@ -I create pharo images for Spur VMs in 64bit format. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/createVMStubs.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/createVMStubs.st deleted file mode 100644 index d616a8cd4ad..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/createVMStubs.st +++ /dev/null @@ -1,5 +0,0 @@ -running -createVMStubs - - super createVMStubs. - objectSpace backend smallFloatClass: (self createStubForClassNamed: #SmallFloat64). \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/initializeBackend.st b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/initializeBackend.st deleted file mode 100644 index 50e2080708a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/instance/initializeBackend.st +++ /dev/null @@ -1,4 +0,0 @@ -initialization -initializeBackend - - espellBackend := EPSimulatorBackend for64Bit forBootstrap \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/properties.json deleted file mode 100644 index 8b8884736a8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBImageBuilderSpur5064bit.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "GuillermoPolito 12/12/2016 16:56", - "super" : "PBImageBuilderSpur50", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBImageBuilderSpur5064bit", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/class/onEnvironment..st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/class/onEnvironment..st deleted file mode 100644 index 5e1c5796b7f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/class/onEnvironment..st +++ /dev/null @@ -1,6 +0,0 @@ -instance-creation -onEnvironment: aRingEnvironment - ^ self new - environment: aRingEnvironment; - initializeIndexes; - yourself. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/allSlotsOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/allSlotsOf..st deleted file mode 100644 index 058bdc0531c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/allSlotsOf..st +++ /dev/null @@ -1,4 +0,0 @@ -initialization -allSlotsOf: aClassName - - ^ ((environment classNamed: aClassName) allSlots collect: [ :e | e name ]) joinUsing: ' '. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classFormatIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classFormatIndex.st deleted file mode 100644 index 94b785a95b3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classFormatIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classFormatIndex - ^ classFormatIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classInstanceVariableNamesIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classInstanceVariableNamesIndex.st deleted file mode 100644 index 1b490341c40..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classInstanceVariableNamesIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classInstanceVariableNamesIndex - ^ classInstanceVariableNamesIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classMethodDictionaryIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classMethodDictionaryIndex.st deleted file mode 100644 index 815f7e96d2a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classMethodDictionaryIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classMethodDictionaryIndex - ^ classMethodDictionaryIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNameIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNameIndex.st deleted file mode 100644 index 3917e25a686..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNameIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classNameIndex - ^ classNameIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNumberOfVariables.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNumberOfVariables.st deleted file mode 100644 index 096e75f80a6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classNumberOfVariables.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classNumberOfVariables - ^ classNumberOfVariables \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classPoolIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classPoolIndex.st deleted file mode 100644 index 1172aad9cdc..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classPoolIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classPoolIndex - ^ classPoolIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSharedPoolsIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSharedPoolsIndex.st deleted file mode 100644 index e73f1111488..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSharedPoolsIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classSharedPoolsIndex - ^ classSharedPoolsIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSuperclassIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSuperclassIndex.st deleted file mode 100644 index 6a0543498cc..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/classSuperclassIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -classSuperclassIndex - ^ classSuperclassIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextClosureOrNilIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextClosureOrNilIndex.st deleted file mode 100644 index d337c00e658..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextClosureOrNilIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -contextClosureOrNilIndex - ^ contextClosureOrNilIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextMethodIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextMethodIndex.st deleted file mode 100644 index 206f1769421..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextMethodIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -contextMethodIndex - ^ contextMethodIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextPcIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextPcIndex.st deleted file mode 100644 index 108a5a3407e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextPcIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -contextPcIndex - ^ contextPcIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextReceiverIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextReceiverIndex.st deleted file mode 100644 index 586af916432..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextReceiverIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -contextReceiverIndex - ^ contextReceiverIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextSenderIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextSenderIndex.st deleted file mode 100644 index 07333c5aba2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextSenderIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -contextSenderIndex - ^ contextSenderIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextStackpIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextStackpIndex.st deleted file mode 100644 index 9be1626f91d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/contextStackpIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -contextStackpIndex - ^ contextStackpIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/dictionaryArrayIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/dictionaryArrayIndex.st deleted file mode 100644 index d00d5c189c3..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/dictionaryArrayIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -dictionaryArrayIndex - ^ dictionaryArrayIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment..st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment..st deleted file mode 100644 index b86be6d3ccf..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -environment: aRingEnvironment - environment := aRingEnvironment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment.st deleted file mode 100644 index 2c629b8e5d1..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/environment.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -environment - ^ environment \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/initializeIndexes.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/initializeIndexes.st deleted file mode 100644 index 4a4313606df..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/initializeIndexes.st +++ /dev/null @@ -1,30 +0,0 @@ -initialization -initializeIndexes - contextPcIndex := self lookup: #pc in: #Context. - contextReceiverIndex := self lookup: #receiver in: #Context. - processContextIndex := self lookup: #suspendedContext in: #Process. - classMethodDictionaryIndex := self lookup: #methodDict in: #Class. - classSuperclassIndex := self lookup: #superclass in: #Class. - processNameIndex := self lookup: #name in: #Process. - traitClassTraitIndex := self lookup: #classTrait in: #Trait. - traitMethodDictionaryIndex := self lookup: #methodDict in: #Trait. - contextSenderIndex := self lookup: #sender in: #Context. - classPoolIndex := self lookup: #classPool in: #Class. - contextStackpIndex := self lookup: #stackp in: #Context. - contextMethodIndex := self lookup: #method in: #Context. - classNameIndex := self lookup: #name in: #Class. - processSchedulerActiveProcessIndex := self lookup: #activeProcess in: #ProcessorScheduler. - processPriorityIndex := self lookup: #priority in: #Process. - contextClosureOrNilIndex := self lookup: #closureOrNil in: #Context. - classFormatIndex := self lookup: #format in: #Class. - processPriorityListIndex := self lookup: #myList in: #Process. - processNextLinkIndex := self lookup: #nextLink in: #Process. - traitNameIndex := self lookup: #name in: #Trait. - - smalltalkImageGlobalsIndex := self lookup: #globals in: #SmalltalkImage. - classSharedPoolsIndex := self lookup: #sharedPools in: #Class. - classNumberOfVariables := self numberOfInstanceVariablesOf: #Class. - classInstanceVariableNamesIndex := self lookup: #instanceVariableNames in: #Class. - dictionaryArrayIndex := self lookup: #array in: #Dictionary. - - listOfClassSlots := self allSlotsOf: #Class. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/listOfClassSlots.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/listOfClassSlots.st deleted file mode 100644 index 0b9bb3da2cd..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/listOfClassSlots.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -listOfClassSlots - ^ listOfClassSlots \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/lookup.in..st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/lookup.in..st deleted file mode 100644 index d1929d50d22..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/lookup.in..st +++ /dev/null @@ -1,10 +0,0 @@ -initialization -lookup: anInstanceVariable in: aClass - | slot | - - "I lookup the indices in the RGEnvironment, if one of the classes does not exists (like Traits) I put nil, I should not explode. - If it explode we have a problem." - slot := (environment ask behaviorNamed: aClass ifAbsent: [ ^nil ]) allSlots - detect: [ :x | x name = anInstanceVariable ] - ifNone: [ ^ nil ]. - ^ slot index \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/numberOfInstanceVariablesOf..st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/numberOfInstanceVariablesOf..st deleted file mode 100644 index 5c4f62ca1ac..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/numberOfInstanceVariablesOf..st +++ /dev/null @@ -1,3 +0,0 @@ -initialize -numberOfInstanceVariablesOf: aClassName - ^ (environment classNamed: aClassName) allSlots size \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processContextIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processContextIndex.st deleted file mode 100644 index 6546f67afa2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processContextIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -processContextIndex - ^ processContextIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNameIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNameIndex.st deleted file mode 100644 index 064d67feac0..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNameIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -processNameIndex - ^ processNameIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNextLinkIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNextLinkIndex.st deleted file mode 100644 index 7070269d248..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processNextLinkIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -processNextLinkIndex - ^ processNextLinkIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityIndex.st deleted file mode 100644 index 668b6130ae8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -processPriorityIndex - ^ processPriorityIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityListIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityListIndex.st deleted file mode 100644 index 6ea7e9b3983..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processPriorityListIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -processPriorityListIndex - ^ processPriorityListIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processSchedulerActiveProcessIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processSchedulerActiveProcessIndex.st deleted file mode 100644 index 7c21cac5a72..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/processSchedulerActiveProcessIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -processSchedulerActiveProcessIndex - ^ processSchedulerActiveProcessIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/smalltalkImageGlobalsIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/smalltalkImageGlobalsIndex.st deleted file mode 100644 index b936eaa5c62..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/smalltalkImageGlobalsIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -smalltalkImageGlobalsIndex - ^ smalltalkImageGlobalsIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitClassTraitIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitClassTraitIndex.st deleted file mode 100644 index b428999abf7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitClassTraitIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -traitClassTraitIndex - ^ traitClassTraitIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitMethodDictionaryIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitMethodDictionaryIndex.st deleted file mode 100644 index 88fcee2f3e8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitMethodDictionaryIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -traitMethodDictionaryIndex - ^ traitMethodDictionaryIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitNameIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitNameIndex.st deleted file mode 100644 index 77e0e60a451..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/instance/traitNameIndex.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -traitNameIndex - ^ traitNameIndex \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/properties.json deleted file mode 100644 index 2d29357c808..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBInstanceVariableMapping.class/properties.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "environment", - "contextPcIndex", - "contextReceiverIndex", - "processContextIndex", - "classMethodDictionaryIndex", - "classSuperclassIndex", - "processNameIndex", - "traitClassTraitIndex", - "traitMethodDictionaryIndex", - "contextSenderIndex", - "classPoolIndex", - "contextStackpIndex", - "contextMethodIndex", - "classNameIndex", - "processSchedulerActiveProcessIndex", - "processPriorityIndex", - "contextClosureOrNilIndex", - "classFormatIndex", - "processPriorityListIndex", - "processNextLinkIndex", - "traitNameIndex", - "smalltalkImageGlobalsIndex", - "classSharedPoolsIndex", - "classNumberOfVariables", - "classInstanceVariableNamesIndex", - "dictionaryArrayIndex", - "listOfClassSlots" - ], - "name" : "PBInstanceVariableMapping", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/buildPackagesList.st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/buildPackagesList.st deleted file mode 100644 index 317755dfe06..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/buildPackagesList.st +++ /dev/null @@ -1,8 +0,0 @@ -selection -buildPackagesList - | classes | - classes := builder behaviorDefinitions. - ^((Smalltalk at: #MCWorkingCopy ifAbsent: [ ^#() ] ) - allManagers - select: [ :m | classes anySatisfy: [ :c | m packageInfo includesClassNamed: c name ] ] - thenCollect: [ :m | m packageInfo packageName asUppercase ]) asSet asOrderedCollection. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/builder..st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/builder..st deleted file mode 100644 index 9fb2344d18a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/builder..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -builder: aBuilder - builder := aBuilder \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/createNewMethod..st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/createNewMethod..st deleted file mode 100644 index eeaeb84254f..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/createNewMethod..st +++ /dev/null @@ -1,14 +0,0 @@ -method-compiling -createNewMethod: aMethodDefinition - -" | ownerClass | -"" ownerClass := builder behaviorFrom: aMethodDefinition methodClass theNonMetaClass." -" aMethodDefinition methodClass isMeta ifTrue: [ ownerClass := ownerClass classSide ]. -" - | method timeToCompile | - timeToCompile := [ method := builder objectSpace crossCompiler - compile: aMethodDefinition sourceCode - forClass: aMethodDefinition methodClass - inEnvironment: builder] timeToRun. - builder statistics addCompilationTime: timeToCompile. - ^ method \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsForBehavior..st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsForBehavior..st deleted file mode 100644 index b2b43c2a292..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsForBehavior..st +++ /dev/null @@ -1,6 +0,0 @@ -method-compiling -methodsForBehavior: aBehavior - "Get all the methods we consider we want from the current environment and return a copy, binded to the new class" - ^ aBehavior methods - reject: [ :m | (self shouldMethodBeRemoved: m) or: [m selector = #trace:on:] ] - thenCollect: [ :m | self createNewMethod: m ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsFromDefinition..st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsFromDefinition..st deleted file mode 100644 index 173ca668d3e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/methodsFromDefinition..st +++ /dev/null @@ -1,5 +0,0 @@ -method-compiling -methodsFromDefinition: aBehaviorDefinition - "Get all the methods we consider we want from the current environment and return a copy, binded to the new class" - ^ aBehaviorDefinition localMethods - collect: [ :m | self createNewMethod: m ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/packages.st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/packages.st deleted file mode 100644 index de086ade797..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/packages.st +++ /dev/null @@ -1,3 +0,0 @@ -selection -packages - ^packages ifNil: [packages := self buildPackagesList] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/shouldMethodBeRemoved..st b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/shouldMethodBeRemoved..st deleted file mode 100644 index 0fdb76d7ca2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/instance/shouldMethodBeRemoved..st +++ /dev/null @@ -1,22 +0,0 @@ -selection -shouldMethodBeRemoved: aMethod - | category | - - category := aMethod category ifNil: [ ^false ]. - - (category asUppercase beginsWith: '*ImageWriter' asUppercase) ifTrue: [ ^false ]. - - Smalltalk at: #MCWorkingCopy ifAbsent: [ ^false ]. - - "Remove bad extensions" - (category beginsWith: '*') ifTrue: [ | copy | - copy := category allButFirst. - [ - (self packages anySatisfy: [ :cat | copy asUppercase beginsWith: cat asUppercase ]) - ifTrue: [ ^ false ]. - copy := '-' join: (copy subStrings: '-') allButLast. - ] doWhileTrue: [ copy notEmpty ]. - ^true - ]. - - ^ false \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/properties.json deleted file mode 100644 index d3ae6864de2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBMethodCompiler.class/properties.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "commentStamp" : "", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "builder", - "packages" - ], - "name" : "PBMethodCompiler", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrap.st deleted file mode 100644 index 0dfc91e3b0c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrap.st +++ /dev/null @@ -1,7 +0,0 @@ -bootstrap -bootstrap - - self - prepareBootstrap; - createImage; - initializeImage. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageDo..st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageDo..st deleted file mode 100644 index 5c015ff0c01..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageDo..st +++ /dev/null @@ -1,13 +0,0 @@ -image-management -bootstrapImageDo: arguments - OSSUnixSubprocess new - command: 'pharo-vm/pharo'; - arguments: { '--nodisplay'. imageReference fullName }, arguments; - redirectStdout; - redirectStderr; - runAndWaitPollingEvery: 50 milliSeconds - retrievingStreams: true - onExitDo: [ :process :outString :errString | - process isSuccess - ifTrue: [ ^ outString ] - ifFalse: [ self error: outString , errString ] ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval..st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval..st deleted file mode 100644 index d28ca74d0ba..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval..st +++ /dev/null @@ -1,4 +0,0 @@ -image-management -bootstrapImageEval: aString - - ^ self bootstrapImageEval: aString save: false quit: false \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval.save.quit..st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval.save.quit..st deleted file mode 100644 index ac0ab64077e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEval.save.quit..st +++ /dev/null @@ -1,9 +0,0 @@ -image-management -bootstrapImageEval: aString save: save quit: quit - - | arguments | - arguments := { 'eval' } asOrderedCollection. - save ifTrue: [ arguments addLast: '--save' ]. - quit ifTrue: [ arguments addLast: '--quit' ]. - arguments add: aString. - ^ self bootstrapImageDo: arguments asArray \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile..st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile..st deleted file mode 100644 index c2eedd76747..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile..st +++ /dev/null @@ -1,4 +0,0 @@ -image-management -bootstrapImageEvalFile: aString - - ^ self bootstrapImageEvalFile: aString save: false quit: false \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile.save.quit..st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile.save.quit..st deleted file mode 100644 index 875aa1c611c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapImageEvalFile.save.quit..st +++ /dev/null @@ -1,8 +0,0 @@ -image-management -bootstrapImageEvalFile: aString save: save quit: quit - - | arguments | - arguments := { 'st' . aString } asOrderedCollection. - save ifTrue: [ arguments addLast: '--save' ]. - quit ifTrue: [ arguments addLast: '--quit' ]. - ^ self bootstrapImageDo: arguments asArray \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapMonticello.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapMonticello.st deleted file mode 100644 index c6d2091b412..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/bootstrapMonticello.st +++ /dev/null @@ -1,4 +0,0 @@ -monticello -bootstrapMonticello - - self bootstrapImageEvalFile: 'Monticello.st' save: true quit: true. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeClasses.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeClasses.st deleted file mode 100644 index e906c34f7ab..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeClasses.st +++ /dev/null @@ -1,17 +0,0 @@ -bootstrap -initializeClasses - - self bootstrapImageEval: '#(#ISOLanguageDefinition #Delay #DangerousClassNotifier #ISO885915TextConverter #EndianDetector - #DigitalSignatureAlgorithm #ChangeSet #Float #OSPlatform #Behavior #OCASTTranslator #ExternalSemaphoreTable - #ProcessSpecificVariable #LiteralVariable #ByteTextConverter #FileHandle - #WeakFinalizationList #RPackageOrganizer #Slot #DateAndTime #HashTableSizes #DiskStore #SHA1 #CP1252TextConverter - #ProcessorScheduler #Categorizer #CCompilationContext #SetElement #Deprecation #ZnMimeType #TraitBehavior - #AsyncFile #RPackage #Stdio #FileStream #ASTCache #MacRomanTextConverter - #CompiledMethod #ISO88592TextConverter #UUIDGenerator #Locale #Symbol - #BISimpleFormatter #TemporaryVariable #MD5NonPrimitive #ChronologyConstants - #BasicCommandLineHandler #CompilationContext #FileLocator #LanguageEnvironment #Character #SmalltalkImage - #EncodedCharSet #ByteString #String #WeakArray #Object #Latin9Environment - #Latin2Environment #Key #ZnBase64Encoder #UIManagerSessionHandler #MultiByteFileStream - #Latin1 #RBScanner #CP1250TextConverter #WeakAnnouncementSubscription #ZnUTF8Encoder #Context #Unicode - #ZnSimplifiedByteEncoder) - do: [:cn | (Smalltalk at: cn) initialize]' save: true quit: true. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeImage.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeImage.st deleted file mode 100644 index 6daf5df6581..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeImage.st +++ /dev/null @@ -1,88 +0,0 @@ -bootstrap -initializeImage - - ['script.st' asFileReference writeStreamDo: [ :stream | - stream nextPutAll: '#(#ISOLanguageDefinition #Delay #DangerousClassNotifier #ISO885915TextConverter #EndianDetector -#DigitalSignatureAlgorithm #ChangeSet #Float #OSPlatform #Behavior #OCASTTranslator #ExternalSemaphoreTable -#ProcessSpecificVariable #LiteralVariable #ByteTextConverter #FileHandle -#WeakFinalizationList #RPackageOrganizer #Slot #DateAndTime #HashTableSizes #DiskStore #SHA1 #CP1252TextConverter -#ProcessorScheduler #Categorizer #CCompilationContext #SetElement #Deprecation #ZnMimeType #TraitBehavior -#AsyncFile #RPackage #Stdio #FileStream #ASTCache #MacRomanTextConverter -#CompiledMethod #ISO88592TextConverter #UUIDGenerator #Locale #Symbol -#BISimpleFormatter #TemporaryVariable #MD5NonPrimitive #ChronologyConstants -#BasicCommandLineHandler #CompilationContext #FileLocator #LanguageEnvironment #Character #SmalltalkImage -#EncodedCharSet #ByteString #String #WeakArray #Object #Latin9Environment - #Latin2Environment #Key #ZnBase64Encoder #UIManagerSessionHandler #MultiByteFileStream -#Latin1 #RBScanner #CP1250TextConverter #WeakAnnouncementSubscription #ZnUTF8Encoder #Context #Unicode -#ZnSimplifiedByteEncoder) - do: [:cn | - (Smalltalk at: cn) initialize].! - - -''From Pharo6.0 of 13 May 2016 [Latest update: #60267] on 25 October 2016 at 10:12:07.2002 am''! - -!WorkingSession methodsFor: ''initialization'' stamp: ''ChristopheDemarey 12/4/2015 11:43''! -initialize - super initialize. - deferredStartupActions := OrderedCollection new. - creationTime := DateAndTime now. - id := DateAndTime now hash.! ! - - -SessionManager classPool at: #Default put: SessionManager new. - -SessionManager default installNewSession. - - -SessionManager default - registerSystemClassNamed: #SmallInteger atPriority: 10; "system - 10" - registerSystemClassNamed: #Delay atPriority: 20; "System - 20" - registerSystemClassNamed: #ProcessorScheduler atPriority: 30; "System - 30" - registerSystemClassNamed: #OSPlatform atPriority: 50; "System - 50" - - registerSystemClassNamed: #FileLocator atPriority: 90; "System - 90" - - registerSystemClassNamed: #Stdio; "System" - registerSystemClassNamed: #LanguageEnvironment ; "System" - registerSystemClassNamed: #DiskStore; "System" - registerSystemClassNamed: #SmalltalkImage; "System" - registerSystemClassNamed: #WeakFinalizationList; "System" - registerSystemClassNamed: #Symbol; "System" - registerSystemClassNamed: #Locale; "System" - registerSystemClassNamed: #MultiByteFileStream; "System" - registerSystemClassNamed: #WeakArray; "System" - registerSystemClassNamed: #FileStream; "System" - registerSystemClassNamed: #BasicCommandLineHandler; "System" - registerSystemClassNamed: #NonInteractiveTranscript; "System" - registerSystemClassNamed: #ASTCache; "System" - registerSystemClassNamed: #EndianDetector. "System" - - - ! - - -''From Pharo6.0 of 13 May 2016 [Latest update: #60069] on 13 July 2016 at 2:53:22.90776 pm''! - -!UnhandledError methodsFor: ''priv handling'' stamp: ''ChristopheDemarey 8/14/2015 16:06''! -defaultAction - -| rep | - rep := FileStream forceNewFileNamed: ''PharoDebug.log''. - rep nextPutAll: ''Error:''; cr. - rep nextPutAll: exception asString; cr. - rep nextPutAll: thisContext stack size asString. - thisContext stack copy withIndexDo: [:stck :i | - [rep nextPutAll: i asString; space; nextPutAll: stck asString; cr] ifError: []]. - rep close. - Smalltalk exitFailure -! ! - -SmalltalkImage classPool at: #SpecialSelectors put: #(#+ #- #< #> #'<=' #'>=' #= #'~=' #* #/ #'\\' #@ #bitShift: #'//' #bitAnd: #bitOr: #at: #at:put: #size #next #nextPut: #atEnd #'==' nil "class" #'~~' #value #value: #do: #new #new: #x #y). - -Class instVarNamed: #subclasses put: (Array with: ProtoObject class). -ProtoObject class classLayout slotScope parentScope: Class classLayout slotScope. - -RBProgramNode classPool at: #FormatterClass put: BISimpleFormatter.' ]. - - self bootstrapImageEvalFile: 'script.st' save: true quit: true. - ] ensure: ['script.st' asFileReference ensureDelete] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeRPackages.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeRPackages.st deleted file mode 100644 index 31aa565147b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeRPackages.st +++ /dev/null @@ -1,72 +0,0 @@ -bootstrap -initializeRPackages - - ['script.st' asFileReference writeStreamDo: [ :stream | - stream nextPutAll: '''From Pharo5.0 of 16 April 2015 [Latest update: #50656] on 22 March 2016 at 2:53:22.880903 pm''! - -!RPackageOrganizer methodsFor: ''private registration'' stamp: ''EstebanLorenzano 2/21/2014 12:56''! -basicRegisterPackage: aPackage - "A new package is now available and declared in the receiver. Note that it is a low level implementation method since it does not deal with package contained information and does not update the related mapping tables." - - packages - at: aPackage name asSymbol - put: aPackage. - "register mc package" - "MCWorkingCopy forPackage: (MCPackage named: aPackage name)." - - ^ aPackage! ! - -!RPackageOrganizer methodsFor: ''private registration'' stamp: ''MarcusDenker 7/16/2014 17:25''! -basicUnregisterPackage: aPackage - "Unregister the specified package from the list of registered packages. Raise the announcement RPackageUnregistered. This is a low level action. It does not unregister the back pointer from classes to packages or any other information managed by the organizer" - - packages - removeKey: aPackage name asSymbol - ifAbsent: [ self reportExtraRemovalOf: aPackage ]. - "unregister also mc package" - "aPackage mcPackage - ifNotNil: [ :mcPackage | mcPackage workingCopy unregister ]."! ! - - -''protocols.txt'' asFileReference readStreamDo: [:stream | - [stream atEnd] whileFalse: [ - | line | - line := stream upTo: Character cr. - items := line findTokens: String tab. - items logCr. - class := (items second = ''true'') - ifTrue: [(Smalltalk classOrTraitNamed: items first) class] - ifFalse: [Smalltalk classOrTraitNamed: items first]. - selector := items third asSymbol. - - (class localSelectors includes: selector) - ifTrue: [class organization classify: selector under: items fourth] - ifFalse: [].. - -]]. - - -RPackageOrganizer default basicInitializeFromPackagesList: #( - ''Kernel'' ''Collections-Strings'' ''Collections-Weak'' ''System-Support'' ''Files'' - ''AST-Core'' - ''Announcements-Core'' ''CodeExport'' - ''CodeImport'' ''CodeImportCommandLineHandlers'' ''Collections-Abstract'' - ''Collections-Arithmetic'' ''Collections-Atomic'' ''Collections-Native'' - ''Collections-Sequenceable'' ''Collections-Stack'' ''Collections-Streams'' - ''Collections-Support'' ''Collections-Unordered'' - ''FileSystem-Core'' ''FileSystem-Disk'' - ''Jobs'' ''Multilingual-Encodings'' ''Multilingual-Languages'' - ''Multilingual-TextConversion'' ''Network-UUID'' ''OpalCompiler-Core'' ''Random-Core'' ''RPackage-Core'' - ''Ring-Definitions-Containers'' ''Ring-Definitions-Core'' ''Ring-OldChunkImporter'' - ''Slot'' ''System-Announcements'' ''System-BasicCommandLineHandler'' ''System-Changes'' - ''System-CommandLine'' ''System-CommandLineHandler'' ''System-Finalization'' - ''System-Hashing'' ''System-Localization'' ''System-Model'' ''System-Platforms'' - ''System-Sources'' ''Traits'' ''Transcript'' ''UIManager'' - ''Zinc-Character-Encoding-Core'' ''Zinc-Resource-Meta-Core'' ''NonInteractiveTranscript'' - ''System-SessionManager'' - ''PharoBootstrap-Initialization'' ''Colors'' -). - -RPackageOrganizer registerInterestToSystemAnnouncement.'. ]. - self bootstrapImageEvalFile: 'script.st' save: true quit: true - ] ensure: ['script.st' asFileReference ensureDelete] diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeSessionManager.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeSessionManager.st deleted file mode 100644 index 69b664003f6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/initializeSessionManager.st +++ /dev/null @@ -1,40 +0,0 @@ -bootstrap -initializeSessionManager - - [ 'script.st' asFileReference writeStreamDo: [ :str | - str nextPutAll: '''From Pharo6.0 of 13 May 2016 [Latest update: #60267] on 25 October 2016 at 10:12:07.2002 am''! - -!WorkingSession methodsFor: ''initialization'' stamp: ''ChristopheDemarey 12/4/2015 11:43''! -initialize - super initialize. - deferredStartupActions := OrderedCollection new. - creationTime := DateAndTime now. - id := DateAndTime now hash.! ! - - -SessionManager classPool at: #Default put: SessionManager new. -SessionManager default installNewSession. - -SessionManager default - registerSystemClassNamed: #SmallInteger atPriority: 10; "system - 10" - registerSystemClassNamed: #Delay atPriority: 20; "System - 20" - registerSystemClassNamed: #ProcessorScheduler atPriority: 30; "System - 30" - registerSystemClassNamed: #OSPlatform atPriority: 50; "System - 50" - registerSystemClassNamed: #FileLocator atPriority: 90; "System - 90" - registerSystemClassNamed: #Stdio; "System" - registerSystemClassNamed: #LanguageEnvironment ; "System" - registerSystemClassNamed: #DiskStore; "System" - registerSystemClassNamed: #SmalltalkImage; "System" - registerSystemClassNamed: #WeakFinalizationList; "System" - registerSystemClassNamed: #Symbol; "System" - registerSystemClassNamed: #Locale; "System" - registerSystemClassNamed: #MultiByteFileStream; "System" - registerSystemClassNamed: #WeakArray; "System" - registerSystemClassNamed: #FileStream; "System" - registerSystemClassNamed: #BasicCommandLineHandler; "System" - registerSystemClassNamed: #NonInteractiveTranscript; "System" - registerSystemClassNamed: #ASTCache; "System" - registerSystemClassNamed: #EndianDetector. "System"']. - - self bootstrapImageEvalFile: 'script.st' save: true quit: true. - ] ensure: [ 'script.st' asFileReference ensureDelete ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/patchUnhandledErrorManagement.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/patchUnhandledErrorManagement.st deleted file mode 100644 index c5b982af25d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/patchUnhandledErrorManagement.st +++ /dev/null @@ -1,22 +0,0 @@ -bootstrap -patchUnhandledErrorManagement - - [ 'script.st' asFileReference writeStreamDo: [ :str | - str nextPutAll: '''From Pharo6.0 of 13 May 2016 [Latest update: #60267] on 25 October 2016 at 10:12:07.2002 am''! - -!UnhandledError methodsFor: ''priv handling'' stamp: ''ChristopheDemarey 8/14/2015 16:06''! -defaultAction - -| rep | - rep := FileStream forceNewFileNamed: ''PharoDebug.log''. - rep nextPutAll: ''Error:''; cr. - rep nextPutAll: exception asString; cr. - rep nextPutAll: thisContext stack size asString. - thisContext stack copy withIndexDo: [:stck :i | - [rep nextPutAll: i asString; space; nextPutAll: stck asString; cr] ifError: []]. - rep close. - Smalltalk exitFailure -! !']. - - self bootstrapImageEvalFile: 'script.st' save: true quit: true. - ] ensure: [ 'script.st' asFileReference ensureDelete ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/prepareBootstrap.st b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/prepareBootstrap.st deleted file mode 100644 index 153fc267e68..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/instance/prepareBootstrap.st +++ /dev/null @@ -1,8 +0,0 @@ -preparation -prepareBootstrap - - self - exportKernelProtocols; - exportKernelPackageNames; - exportAllPackagesIntoMcz; - exportMonticelloInStFile. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/properties.json deleted file mode 100644 index 0010847747b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBOldExtendedBootstrap.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "", - "super" : "PBBootstrap", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBOldExtendedBootstrap", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/properties.json deleted file mode 100644 index 200d099be19..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSignal.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "", - "super" : "StringSignal", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBSignal", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/classDefinitionFor..st b/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/classDefinitionFor..st deleted file mode 100644 index bd2359d1187..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/classDefinitionFor..st +++ /dev/null @@ -1,41 +0,0 @@ -as yet unclassified -classDefinitionFor: aClass - "Answer a String that defines the receiver." - - | type | - type := aClass isWeak - ifTrue: [ 'WeakLayout' ] - ifFalse: [ aClass isPointers - ifTrue: [ aClass isVariable - ifTrue: [ 'VariableLayout' ] - ifFalse: [ 'FixedLayout' ] - ] - ifFalse: [ aClass isCompiledMethod - ifTrue: [ 'CompiledMethodLayout' ] - ifFalse: [ aClass isWords - ifTrue: [ 'WordLayout' ] - ifFalse: [ 'ByteLayout' ]]]]. - ^ '| newClass | - newClass := ShiftClassInstaller make: [ :builder | - builder - superclass: {superClass}; - name: ''{name}''; - layoutClass: {type}; - slots: ''{instanceVariablesString}'' asSlotCollection; - sharedVariablesFromString: ''{classVariablesString}''; - sharedPools: ''{sharedPoolsString}''; - category: ''{category}''; - environment: {superClass} environment; - classSlots: ''{classInstanceVariablesString}'' asSlotCollection ]. - "newClass setTraitComposition: {aTraitComposition} asTraitComposition." - newClass' - format: { - 'superClass' -> (aClass superclass ifNil: ['nil'] ifNotNil: [ :superclass | superclass name ]). - 'name' -> aClass name. - 'type' -> type. - 'instanceVariablesString' -> (' ' join: aClass instVarNames). - 'classVariablesString' -> aClass classVariablesString. - 'sharedPoolsString' -> aClass sharedPoolsString. - 'category' -> aClass category asString. - 'classInstanceVariablesString' -> (' ' join: aClass classSide instVarNames). - 'aTraitComposition' -> aClass traitCompositionString } asDictionary. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/map.with..st b/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/map.with..st deleted file mode 100644 index ceb4b702e28..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/map.with..st +++ /dev/null @@ -1,22 +0,0 @@ -as yet unclassified -map: aClassMirror with: aDefinition - - "We create a mapping between the real classes and their definitions for later" - - | classSideMirror | - self assert: (aClassMirror target isKindOf: EPSimulatorHandle). - (aClassMirror backend simulator objectMemory classTableRootObj) ifNotNil: [ - self assert: aClassMirror target asClassIndexHandle address notNil. - aClassMirror target: (aClassMirror target asClassIndexHandle) ]. - - mirrorDefinitionMap at: aClassMirror put: aDefinition. - definitionMirrorMap at: aDefinition put: aClassMirror. - - classSideMirror := aClassMirror basicClass. - "only valid for Spur simulator bootstrap by now" - (aClassMirror backend simulator objectMemory classTableRootObj) ifNotNil: [ - self assert: classSideMirror target asClassIndexHandle address notNil. - classSideMirror target: (classSideMirror target asClassIndexHandle) ]. - - mirrorDefinitionMap at: classSideMirror put: aDefinition classSide. - definitionMirrorMap at: aDefinition classSide put: classSideMirror. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/newClassIndex.st b/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/newClassIndex.st deleted file mode 100644 index 0cdfa230ff8..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/newClassIndex.st +++ /dev/null @@ -1,5 +0,0 @@ -as yet unclassified -newClassIndex - - nextClassIndex ifNil: [ nextClassIndex := 1024 ]. - ^ nextClassIndex := nextClassIndex + 1 \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/registerClass.named.fullyLoaded..st b/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/registerClass.named.fullyLoaded..st deleted file mode 100644 index 44663dd6c82..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/instance/registerClass.named.fullyLoaded..st +++ /dev/null @@ -1,23 +0,0 @@ -as yet unclassified -registerClass: aClassMirror named: aName fullyLoaded: aBoolean - - "If it existed before, we migrate its state" - (environment includesKey: aName) - ifTrue: [ - self migrateOldClass: (environment at: aName) to: aClassMirror ]. - - "We register it and keep up to date our compact class index" - environment at: aName put: aClassMirror. - aClassMirror asClassMirror compactClassIndex = 0 ifFalse: [ - builder objectSpace backend compactClassAt: aClassMirror asClassMirror compactClassIndex put: aClassMirror ]. - - "We create a mapping between the real classes and their definitions for later" - self map: aClassMirror with: (systemDefinition classNamed: aName). - - "We say the simulator that this class is a root, possible becomes can come into it. THIS IS ONLY VALID FOR SPUR SIMULATOR BOOTSTRAP. REFACTOR ME". - self flag: #refactorMe. - builder objectSpace backend addExtraRoot: aClassMirror. - builder objectSpace backend addExtraRoot: aClassMirror classSide. - - "We reset the class map of the ast interpreter" - fullyLoaded at: aName put: aBoolean \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/properties.json deleted file mode 100644 index 4132435c760..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSpurClassLoader.class/properties.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "commentStamp" : "", - "super" : "PBClassLoader", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "nextClassIndex" - ], - "name" : "PBSpurClassLoader", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/properties.json deleted file mode 100644 index cf55d4120e4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBStepFinishedSignal.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "", - "super" : "PBSignal", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBStepFinishedSignal", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/properties.json deleted file mode 100644 index f48598bdbdd..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBStepStartedSignal.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "", - "super" : "PBSignal", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBStepStartedSignal", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/README.md deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/properties.json deleted file mode 100644 index e3c6cf34849..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBSubStepFinishedSignal.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "", - "super" : "PBSignal", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBSubStepFinishedSignal", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/README.md deleted file mode 100644 index f6fbeec34ff..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/README.md +++ /dev/null @@ -1,11 +0,0 @@ -I represent the version of the pharo image to build. -I contain - - - major version (mandatory) - - minor version (optional, 0 if absent) - - patch version (optional, 0 if absent) - - suffix (optional, nil if absent) - - commit hash (optional, 'UNKNOWN_COMMIT' if absent) - - build number (optional, 'UNKNOWN_BUILD' if absent) - -I am used during the bootstrap process to parse this information and include it in the generated binary image. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromLongGitDescribe..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromLongGitDescribe..st deleted file mode 100644 index ba794338965..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromLongGitDescribe..st +++ /dev/null @@ -1,12 +0,0 @@ -instance-creation -fromLongGitDescribe: aString - - | parts commitish semanticVersion | - parts := aString substrings: '-'. - commitish := parts last allButFirst. - semanticVersion := (parts allButLast: 2) joinUsing: '-'. - - ^ self basicNew - fromSemanticVersion: semanticVersion; - commitHash: commitish; - yourself \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromSemanticVersion..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromSemanticVersion..st deleted file mode 100644 index 63f755771cc..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/fromSemanticVersion..st +++ /dev/null @@ -1,6 +0,0 @@ -instance-creation -fromSemanticVersion: aString - - ^ self basicNew - fromSemanticVersion: aString; - yourself \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/invalidMajorVersion..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/invalidMajorVersion..st deleted file mode 100644 index a2243148d2a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/invalidMajorVersion..st +++ /dev/null @@ -1,4 +0,0 @@ -instance creation -invalidMajorVersion: anObject - - self error: 'Invalid major version: ', anObject printString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/major..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/major..st deleted file mode 100644 index c2ed1054162..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/major..st +++ /dev/null @@ -1,6 +0,0 @@ -instance-creation -major: anInteger - - ^ self basicNew - major: anInteger; - initialize \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/new.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/new.st deleted file mode 100644 index 08970a1c14a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/class/new.st +++ /dev/null @@ -1,4 +0,0 @@ -instance creation -new - - self invalidMajorVersion: nil \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber..st deleted file mode 100644 index 6cf531929fb..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -buildNumber: anObject - buildNumber := anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber.st deleted file mode 100644 index 7969037550d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/buildNumber.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -buildNumber - ^ buildNumber ifNil: [ -1 ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash..st deleted file mode 100644 index 13475a055b5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -commitHash: aString - commitHash := aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash.st deleted file mode 100644 index 88dc503741a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/commitHash.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -commitHash - ^ commitHash ifNil: [ 'UNKNOWN_COMMIT' ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/fromSemanticVersion..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/fromSemanticVersion..st deleted file mode 100644 index 42d4c7c7267..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/fromSemanticVersion..st +++ /dev/null @@ -1,25 +0,0 @@ -configuration -fromSemanticVersion: aString - - | version versionAndSuffix partsWithoutSuffix | - version := aString. - (version beginsWith: 'v') - ifTrue: [ version := version allButFirst ]. - - versionAndSuffix := version substrings: '-'. - partsWithoutSuffix := versionAndSuffix first substrings: '.'. - - partsWithoutSuffix size < 1 - ifTrue: [ self invalidMajorVersion: version ]. - self major: partsWithoutSuffix first. - - partsWithoutSuffix size > 1 - ifTrue: [ self minor: partsWithoutSuffix second ]. - - partsWithoutSuffix size > 2 - ifTrue: [ self patch: partsWithoutSuffix third ]. - - versionAndSuffix size > 1 - ifTrue: [ self suffix: versionAndSuffix second ]. - - ^ self \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/invalidMajorVersion..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/invalidMajorVersion..st deleted file mode 100644 index 463c94fbb8a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/invalidMajorVersion..st +++ /dev/null @@ -1,4 +0,0 @@ -validating -invalidMajorVersion: anObject - - ^ self class invalidMajorVersion: anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major..st deleted file mode 100644 index 415d16ca946..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major..st +++ /dev/null @@ -1,5 +0,0 @@ -accessing -major: anObject - - self validateMajorVersion: anObject. - major := anObject asInteger \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major.st deleted file mode 100644 index 789465424cd..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/major.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -major - ^ major \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/majorVersion.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/majorVersion.st deleted file mode 100644 index 82b434e9a7e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/majorVersion.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -majorVersion - ^ major \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor..st deleted file mode 100644 index 0cc84b78796..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -minor: anObject - minor := anObject asInteger \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor.st deleted file mode 100644 index 5e3cbdc2c96..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minor.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -minor - ^ minor ifNil: [ 0 ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minorVersion.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minorVersion.st deleted file mode 100644 index 67efac9af64..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/minorVersion.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -minorVersion - ^ minor \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch..st deleted file mode 100644 index e966c6c109a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -patch: anObject - - patch := anObject asInteger \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch.st deleted file mode 100644 index ee37c8037a5..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/patch.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -patch - ^ patch ifNil: [ 0 ] \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository..st deleted file mode 100644 index 4fcd72fb51a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -repository: anObject - repository := anObject \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository.st deleted file mode 100644 index 5be9763862a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/repository.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -repository - ^ repository \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix..st deleted file mode 100644 index 9f47d3d6ff6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -suffix: aString - suffix := aString \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix.st deleted file mode 100644 index 2e821685822..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/suffix.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -suffix - - ^ suffix \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/validateMajorVersion..st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/validateMajorVersion..st deleted file mode 100644 index 9bac3cac9bb..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/instance/validateMajorVersion..st +++ /dev/null @@ -1,6 +0,0 @@ -validating -validateMajorVersion: anObject - - | majorNumber | - majorNumber := anObject asInteger. - majorNumber ifNil: [ self invalidMajorVersion: anObject ]. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/properties.json deleted file mode 100644 index 410a8bd8fde..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfo.class/properties.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "commentStamp" : "GuillermoPolito 9/19/2018 14:47", - "super" : "Object", - "category" : "Pharo30Bootstrap", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ - "repository", - "commitHash", - "buildNumber", - "major", - "minor", - "patch", - "suffix" - ], - "name" : "PBVersionInfo", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/README.md b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/README.md deleted file mode 100644 index eaeb309dcf4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/README.md +++ /dev/null @@ -1 +0,0 @@ -A PBVersionInfoTest is a test class for testing the behavior of PBVersionInfo \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultBuildIsUnknown.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultBuildIsUnknown.st deleted file mode 100644 index ba6cc222790..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultBuildIsUnknown.st +++ /dev/null @@ -1,6 +0,0 @@ -test-default-values -testDefaultBuildIsUnknown - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - self assert: versionInfo buildNumber equals: -1 \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultCommitHashIsUnknown.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultCommitHashIsUnknown.st deleted file mode 100644 index 43eb1543597..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultCommitHashIsUnknown.st +++ /dev/null @@ -1,6 +0,0 @@ -test-default-values -testDefaultCommitHashIsUnknown - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - self assert: versionInfo commitHash equals: 'UNKNOWN_COMMIT'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultMinorVersionIsZero.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultMinorVersionIsZero.st deleted file mode 100644 index ba7ee110a20..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultMinorVersionIsZero.st +++ /dev/null @@ -1,6 +0,0 @@ -test-default-values -testDefaultMinorVersionIsZero - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - self assert: versionInfo minor equals: 0. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultPatchVersionIsZero.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultPatchVersionIsZero.st deleted file mode 100644 index cad4e93210a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultPatchVersionIsZero.st +++ /dev/null @@ -1,6 +0,0 @@ -test-default-values -testDefaultPatchVersionIsZero - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - self assert: versionInfo patch equals: 0. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultSuffixIsEmpty.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultSuffixIsEmpty.st deleted file mode 100644 index 8307107aec2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testDefaultSuffixIsEmpty.st +++ /dev/null @@ -1,6 +0,0 @@ -test-default-values -testDefaultSuffixIsEmpty - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - self assert: versionInfo suffix equals: nil. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromIncompleteSemanticVersionStartingWithV.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromIncompleteSemanticVersionStartingWithV.st deleted file mode 100644 index 9b3f17eb9d7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromIncompleteSemanticVersionStartingWithV.st +++ /dev/null @@ -1,10 +0,0 @@ -test-semantic-version -testFromIncompleteSemanticVersionStartingWithV - - | versionInfo | - versionInfo := PBVersionInfo fromSemanticVersion: 'v70-alpha'. - - self assert: versionInfo major equals: 70. - self assert: versionInfo minor equals: 0. - self assert: versionInfo patch equals: 0. - self assert: versionInfo suffix equals: 'alpha'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsCommitHash.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsCommitHash.st deleted file mode 100644 index 23e1f5efca9..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsCommitHash.st +++ /dev/null @@ -1,6 +0,0 @@ -test-git-long-describe -testFromLongDescribeWithNumberOfCommitsExtractsCommitHash - - | versionInfo | - versionInfo := PBVersionInfo fromLongGitDescribe: 'v1.5.3-21-g975b'. - self assert: versionInfo commitHash equals: '975b'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsSemanticVersion.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsSemanticVersion.st deleted file mode 100644 index d9d096bfeda..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithNumberOfCommitsExtractsSemanticVersion.st +++ /dev/null @@ -1,11 +0,0 @@ -test-git-long-describe -testFromLongDescribeWithNumberOfCommitsExtractsSemanticVersion - - | versionInfo | - versionInfo := PBVersionInfo fromLongGitDescribe: 'v1.5.3-21-g975b'. - - self assert: versionInfo major equals: 1. - self assert: versionInfo minor equals: 5. - self assert: versionInfo patch equals: 3. - self assert: versionInfo suffix equals: nil. - self assert: versionInfo commitHash equals: '975b'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithSuffix.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithSuffix.st deleted file mode 100644 index 22c42237cf2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromLongDescribeWithSuffix.st +++ /dev/null @@ -1,11 +0,0 @@ -test-git-long-describe -testFromLongDescribeWithSuffix - - | versionInfo | - versionInfo := PBVersionInfo fromLongGitDescribe: 'v1.5.3-suffix-21-g975b'. - - self assert: versionInfo major equals: 1. - self assert: versionInfo minor equals: 5. - self assert: versionInfo patch equals: 3. - self assert: versionInfo suffix equals: 'suffix'. - self assert: versionInfo commitHash equals: '975b'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithV.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithV.st deleted file mode 100644 index c312011f10d..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithV.st +++ /dev/null @@ -1,10 +0,0 @@ -test-semantic-version -testFromSemanticVersionStartingWithV - - | versionInfo | - versionInfo := PBVersionInfo fromSemanticVersion: 'v1.2.3-alpha'. - - self assert: versionInfo major equals: 1. - self assert: versionInfo minor equals: 2. - self assert: versionInfo patch equals: 3. - self assert: versionInfo suffix equals: 'alpha'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithoutV.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithoutV.st deleted file mode 100644 index 09f962f91fd..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionStartingWithoutV.st +++ /dev/null @@ -1,10 +0,0 @@ -test-semantic-version -testFromSemanticVersionStartingWithoutV - - | versionInfo | - versionInfo := PBVersionInfo fromSemanticVersion: '1.2.3-alpha'. - - self assert: versionInfo major equals: 1. - self assert: versionInfo minor equals: 2. - self assert: versionInfo patch equals: 3. - self assert: versionInfo suffix equals: 'alpha'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithInvalidMajorFails.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithInvalidMajorFails.st deleted file mode 100644 index 061d827402b..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithInvalidMajorFails.st +++ /dev/null @@ -1,4 +0,0 @@ -test-semantic-version -testFromSemanticVersionWithInvalidMajorFails - - self should: [ PBVersionInfo fromSemanticVersion: 'Invalid-alpha' ] raise: Error. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithoutSuffix.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithoutSuffix.st deleted file mode 100644 index 05e0bacc626..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testFromSemanticVersionWithoutSuffix.st +++ /dev/null @@ -1,10 +0,0 @@ -test-semantic-version -testFromSemanticVersionWithoutSuffix - - | versionInfo | - versionInfo := PBVersionInfo fromSemanticVersion: 'v1.2.3'. - - self assert: versionInfo major equals: 1. - self assert: versionInfo minor equals: 2. - self assert: versionInfo patch equals: 3. - self assert: versionInfo suffix equals: nil. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenBuildIsGiven.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenBuildIsGiven.st deleted file mode 100644 index 7ada883100a..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenBuildIsGiven.st +++ /dev/null @@ -1,7 +0,0 @@ -tests -testGivenBuildIsGiven - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - versionInfo buildNumber: 200. - self assert: versionInfo buildNumber equals: 200. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenCommitHashIsGiven.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenCommitHashIsGiven.st deleted file mode 100644 index 4ec7b490aa7..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenCommitHashIsGiven.st +++ /dev/null @@ -1,7 +0,0 @@ -tests -testGivenCommitHashIsGiven - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - versionInfo commitHash: 'abcabcabcabcabcabc'. - self assert: versionInfo commitHash equals: 'abcabcabcabcabcabc'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenMinorVersionIsGiven.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenMinorVersionIsGiven.st deleted file mode 100644 index 33fd7eb7b23..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenMinorVersionIsGiven.st +++ /dev/null @@ -1,7 +0,0 @@ -tests -testGivenMinorVersionIsGiven - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - versionInfo minor: 17. - self assert: versionInfo minor equals: 17. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenPatchVersionIsGiven.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenPatchVersionIsGiven.st deleted file mode 100644 index adb88526c01..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenPatchVersionIsGiven.st +++ /dev/null @@ -1,7 +0,0 @@ -tests -testGivenPatchVersionIsGiven - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - versionInfo patch: 88. - self assert: versionInfo patch equals: 88. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenSuffixIsGiven.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenSuffixIsGiven.st deleted file mode 100644 index ca8a373f68c..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testGivenSuffixIsGiven.st +++ /dev/null @@ -1,7 +0,0 @@ -tests -testGivenSuffixIsGiven - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - versionInfo suffix: 'SNAPSHOT'. - self assert: versionInfo suffix equals: 'SNAPSHOT'. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNilMajorVersionFails.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNilMajorVersionFails.st deleted file mode 100644 index 94671930033..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNilMajorVersionFails.st +++ /dev/null @@ -1,4 +0,0 @@ -tests -testNilMajorVersionFails - - self should: [ PBVersionInfo major: nil ] raise: Error \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNoDefaultMajorVersionFails.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNoDefaultMajorVersionFails.st deleted file mode 100644 index 67b1f5ddf5e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testNoDefaultMajorVersionFails.st +++ /dev/null @@ -1,4 +0,0 @@ -test-default-values -testNoDefaultMajorVersionFails - - self should: [ PBVersionInfo new ] raise: Error \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testProvidedMajorVersionIsStored.st b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testProvidedMajorVersionIsStored.st deleted file mode 100644 index 50452a0d4af..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/instance/testProvidedMajorVersionIsStored.st +++ /dev/null @@ -1,6 +0,0 @@ -tests -testProvidedMajorVersionIsStored - - | versionInfo | - versionInfo := PBVersionInfo major: 7. - self assert: versionInfo major equals: 7. \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/properties.json b/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/properties.json deleted file mode 100644 index b5977ed927e..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/PBVersionInfoTest.class/properties.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "commentStamp" : "", - "super" : "TestCase", - "category" : "Pharo30Bootstrap-Tests", - "classinstvars" : [ ], - "pools" : [ ], - "classvars" : [ ], - "instvars" : [ ], - "name" : "PBVersionInfoTest", - "type" : "normal" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json b/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json deleted file mode 100644 index 069913f4cff..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/properties.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "name" : "TonelRepository" -} \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/categories.st b/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/categories.st deleted file mode 100644 index b403c9a27d4..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/categories.st +++ /dev/null @@ -1,3 +0,0 @@ -SystemOrganization addCategory: #Pharo30Bootstrap! -SystemOrganization addCategory: 'Pharo30Bootstrap-Deprecated'! -SystemOrganization addCategory: 'Pharo30Bootstrap-Tests'! diff --git a/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/initializers.st b/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/initializers.st deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/package b/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/package deleted file mode 100644 index 864e433a9f2..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/monticello.meta/package +++ /dev/null @@ -1 +0,0 @@ -(name 'Pharo30Bootstrap') \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/properties.json b/bootstrap/src/Pharo30Bootstrap.package/properties.json deleted file mode 100644 index 6f31cf5a2e6..00000000000 --- a/bootstrap/src/Pharo30Bootstrap.package/properties.json +++ /dev/null @@ -1 +0,0 @@ -{ } \ No newline at end of file diff --git a/bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/instance/kindOfSubclass.st b/bootstrap/src/Pharo30Bootstrap/MCClassDefinition.extension.st similarity index 72% rename from bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/instance/kindOfSubclass.st rename to bootstrap/src/Pharo30Bootstrap/MCClassDefinition.extension.st index dd2146fba7d..ef4c46ec964 100644 --- a/bootstrap/src/Pharo30Bootstrap.package/MCClassDefinition.extension/instance/kindOfSubclass.st +++ b/bootstrap/src/Pharo30Bootstrap/MCClassDefinition.extension.st @@ -1,5 +1,7 @@ -*Pharo30Bootstrap -kindOfSubclass +Extension { #name : #MCClassDefinition } + +{ #category : #'*Pharo30Bootstrap' } +MCClassDefinition >> kindOfSubclass [ type = #normal ifTrue: [^ ' subclass: ']. type = #words ifTrue: [^ ' variableWordSubclass: ']. type = #variable ifTrue: [^ ' variableSubclass: ']. @@ -8,4 +10,5 @@ kindOfSubclass type = #compiledMethod ifTrue: [^ ' variableByteSubclass: ' ]. type = #immediate ifTrue: [ ^ ' immediateSubclass: ' ]. type = #ephemeron ifTrue: [ ^ 'ephemeronSubclass:' ]. - self error: 'Unrecognized class type' \ No newline at end of file + self error: 'Unrecognized class type' +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBBootstrap.class.st b/bootstrap/src/Pharo30Bootstrap/PBBootstrap.class.st new file mode 100644 index 00000000000..8adf5ef0eff --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBBootstrap.class.st @@ -0,0 +1,428 @@ +Class { + #name : #PBBootstrap, + #superclass : #Object, + #instVars : [ + 'architecture', + 'imageReference', + 'buildNumber', + 'originRepository', + 'ringEnvironment', + 'versionInfo' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #'instance creation' } +PBBootstrap class >> for32Bits [ + + ^ self forArchitecture: '32' +] + +{ #category : #'instance creation' } +PBBootstrap class >> for64Bits [ + + ^ self forArchitecture: '64' +] + +{ #category : #'instance creation' } +PBBootstrap class >> forArchitecture: architecture [ + + ^ super new + architecture: architecture; + yourself +] + +{ #category : #'instance creation' } +PBBootstrap class >> fromCommandLine [ + | options architecture buildNumber versionInfo | + options := CommandLineArguments new. + architecture := options optionAt: 'ARCH' ifAbsent: [ '32' ]. + buildNumber := options optionAt: 'BUILD_NUMBER' + ifPresent: [ :read | Number readFrom: read ifFail: [ -1 ] ] + ifAbsent: [ -1 ]. + versionInfo := options optionAt: 'VERSION_INFO' ifAbsent: [ self error: 'Must provide VERSION_INFO in the form of a git describe --long' ]. + + ('Architecture: ' , architecture) logCr. + ('BuildNumber: ' , buildNumber) logCr. + ('VersionInfo: ' , versionInfo) logCr. + + versionInfo := (PBVersionInfo fromLongGitDescribe: versionInfo) + buildNumber: buildNumber; + yourself. + + ^ super new + architecture: architecture; + versionInfo: versionInfo; + imageName: 'bootstrap.image'; + yourself +] + +{ #category : #'instance creation' } +PBBootstrap class >> new [ + + self error: 'Please use one of the factory methods #for32Bits or #for64Bits' +] + +{ #category : #'instance creation' } +PBBootstrap class >> repositoryLocation [ + + ^ (Smalltalk os environment + at: 'BOOTSTRAP_REPOSITORY' + ifAbsent: [ '.' ]) asFileReference +] + +{ #category : #'package-names' } +PBBootstrap >> allPackagesForHermes [ + + ^ #BaselineOfPharoBootstrap asClass allPackageNames , #BaselineOfTraits asClass allPackageNames +] + +{ #category : #accessing } +PBBootstrap >> architecture: aString [ + + architecture := aString +] + +{ #category : #bootstrapping } +PBBootstrap >> bootstrap [ + + PBStepStartedSignal log: 'Starting Process.'. + + self prepareBootstrap. + [self createImage ] on:AssertionFailure do: [ :e | e resume ]. + self initializeImage. + + PBStepFinishedSignal log: 'Process ended.' + +] + +{ #category : #accessing } +PBBootstrap >> bootstrapCacheDirectory [ + + ^ (Smalltalk os environment at: 'BOOTSTRAP_CACHE' ifAbsent: ['bootstrap-cache']) asFileReference ensureCreateDirectory +] + +{ #category : #accessing } +PBBootstrap >> buildNumber [ + + ^ buildNumber +] + +{ #category : #accessing } +PBBootstrap >> buildNumber: aBuildNumber [ + + buildNumber := aBuildNumber +] + +{ #category : #bootstrapping } +PBBootstrap >> createImage [ + + | builder | + + builder := PBImageBuilderSpur50 forArchitecture: architecture. + builder versionInfo: versionInfo. + builder imageFileReference: imageReference. + builder systemDefinition: ringEnvironment. + builder espellBackend instanceVariableMapping: (PBInstanceVariableMapping onEnvironment: ringEnvironment ). + + builder bootstrap +] + +{ #category : #'pre-requisites' } +PBBootstrap >> ensureBaselineOfPharoBootstrap [ + (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'Metacello-PharoExtensions')) load. + (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'BaselineOfPharoBootstrap')) load. + (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'BaselineOfTraits')) load. + (self originRepository versionWithInfo: (self originRepository versionInfoFromVersionNamed: 'BaselineOfMetacello')) load. +] + +{ #category : #preparation } +PBBootstrap >> exportAllPackagesIntoMcz [ + + self mczCache directory ensureDeleteAll; ensureCreateDirectory. + self packagesToExportAsMCZ do: [ :packageName | + self exportIntoMcz: packageName ]. +] + +{ #category : #preparation } +PBBootstrap >> exportIntoMcz: aPackageName [ + + self mczCache storeVersion: (self originRepository loadVersionFromFileNamed: aPackageName). +] + +{ #category : #preparation } +PBBootstrap >> exportKernelPackageNames [ + "Export list of kernel package names for RPackage initialization to a file" + + self exportPackageNamesFor: self kernelPackageNames to: self bootstrapCacheDirectory / 'packagesKernel.txt'. + + +] + +{ #category : #preparation } +PBBootstrap >> exportKernelProtocols [ + "This method exports all protocols of the methots in the kernel in a single text file to be easily readed and imported from the 'in-midst of initialization' image." + + self exportProtocolsFor: self kernelPackageNames to: self bootstrapCacheDirectory / 'protocolsKernel.txt'. + + +] + +{ #category : #preparation } +PBBootstrap >> exportMonticelloInStFile [ + + self + exportPackages: self monticelloPackageNames + usingInitializeScript: ' + ChangeSet initialize. + + ZipConstants initialize. + ZipFileConstants initialize. + ZipWriteStream initialize. + GZipConstants initialize. + InflateStream initialize. + FastInflateStream initialize. + + MCCacheRepository initialize. + MCPackageManager initialize. + MCLazyVersionInfo initialize. + MCMethodDefinition initialize. + MCDataStream initialize. + MCWorkingCopy initialize.' + intoFile: 'Monticello.st' + +] + +{ #category : #exporting } +PBBootstrap >> exportPackageNamesFor: packageNames to: aTextFile [ + + "export list of packages for the RPackage initialization. Eech package on standalone line" + + aTextFile ensureDelete. + aTextFile writeStreamDo: [:stream | + packageNames do: [ :each | stream nextPutAll: each; cr ]]. +] + +{ #category : #exporting } +PBBootstrap >> exportPackages: packageList intoFile: aFileName [ + + self + exportPackages: packageList + usingInitializeScript: '' + intoFile: aFileName +] + +{ #category : #exporting } +PBBootstrap >> exportPackages: packageList usingInitializeScript: aScriptString intoFile: aFileName [ + + self + exportPackages: packageList + withBlacklistedClasses: #() + withBlacklistedMethods: #() + usingInitializeScript: aScriptString + intoFile: aFileName +] + +{ #category : #exporting } +PBBootstrap >> exportPackages: packageList withBlacklistedClasses: blacklistedClasses withBlacklistedMethods: methods usingInitializeScript: aString intoFile: aFileName [ + + | mcst | + mcst := (self bootstrapCacheDirectory / 'st-cache' / aFileName) asFileReference. + mcst ensureDelete. + mcst parent ensureCreateDirectory. + mcst writeStreamDo: [ :stream | | writer version | + writer := MCStWriter on: stream. + writer writeInitializers: false. + + packageList do: [ :packageName | + | definitions | + version := (self originRepository loadVersionFromFileNamed: packageName). + definitions := version snapshot definitions. + definitions := definitions reject: [:def | blacklistedClasses includes: def className ]. + definitions := definitions reject: [:def | def isMethodDefinition and: [methods includes: def selector] ]. + writer writeDefinitions: definitions ]. + "Write initialization instructions" + stream nextPutAll: aString. + ]. +] + +{ #category : #preparation } +PBBootstrap >> exportProtocolsFor: packageNames to: protocolsFile [ + + "This methods takes the packages from the (filetree) origin repository, reads all methods in these packages and export the their protocols in a single text file with the following format: + [className]\tab[class is meta?]\tab[selector]\tab[protocol]." + + | originRepository | + originRepository := self originRepository. + protocolsFile ensureDelete. + protocolsFile writeStreamDo: [:stream | | versions | + versions := originRepository directory directories sorted. + versions + select: [ :file | packageNames includes: file basenameWithoutExtension ] + thenDo: [:file | | version | + version := originRepository versionWithInfo: (originRepository versionInfoFromVersionNamed: file basenameWithoutExtension). + (version snapshot definitions select: #isMethodDefinition) do: [:def | + stream nextPutAll: def className asString; tab. + stream nextPutAll: def classIsMeta asString; tab. + stream nextPutAll: def selector asString; tab. + stream nextPutAll: def category asString; cr ]]] +] + +{ #category : #preparation } +PBBootstrap >> generateHermesFiles [ + | oldPackage hePackage writer | + self hermesPackageNames + do: [ :packageName | + oldPackage := ringEnvironment ask packageNamed: packageName. + hePackage := HERing2ToHermesBuilder new visitPackage: oldPackage. + writer := HEBinaryReaderWriter new + stream: (File openForWriteFileNamed: (self bootstrapCacheDirectory / packageName , 'hermes') fullName); + yourself. + hePackage writeInto: writer. + writer flush. + writer close] +] + +{ #category : #'package-names' } +PBBootstrap >> hermesPackageNames [ + ^ #BaselineOfPharoBootstrap asClass packagesToExportWithHermes , #BaselineOfTraits asClass allPackageNames +] + +{ #category : #accessing } +PBBootstrap >> imageName: aString [ + + imageReference := (self bootstrapCacheDirectory / aString) asFileReference +] + +{ #category : #initialization } +PBBootstrap >> initialize [ + "Initialize the logging" + + (CustomStringStreamBeacon with: FileStream stdout) + startFor: PBStepStartedSignal , PBStepFinishedSignal +] + +{ #category : #initialization } +PBBootstrap >> initializeImage [ + +] + +{ #category : #'package-names' } +PBBootstrap >> kernelPackageNames [ + + self ensureBaselineOfPharoBootstrap. + ^ #BaselineOfPharoBootstrap asClass kernelPackageNames +] + +{ #category : #accessing } +PBBootstrap >> mczCache [ + + ^ MCDirectoryRepository new directory: (self bootstrapCacheDirectory / 'pharo-local' / 'package-cache') ensureCreateDirectory +] + +{ #category : #'package-names' } +PBBootstrap >> monticelloNetworkPackageNames [ + + ^ #('Network-Kernel' + 'Network-MIME' + 'Network-Protocols' + + 'MonticelloRemoteRepositories' + + 'Zinc-HTTP' + 'Zinc-FileSystem' + 'Zodiac-Core') +] + +{ #category : #'package-names' } +PBBootstrap >> monticelloPackageNames [ + + ^ #('System-Model' 'Ring-OldChunkImporter' 'Zinc-Resource-Meta-Core' 'System-Changes' 'Ring-Definitions-Core' 'Ring-Definitions-Containers' 'Compression' 'Monticello' 'Ring-Definitions-Monticello' ) +] + +{ #category : #accessing } +PBBootstrap >> originRepository [ + | repositoryReference | + repositoryReference := self repositoryLocation / 'src'. + + ^ originRepository + ifNil: [ originRepository := TonelRepository new + directory: repositoryReference; + yourself] +] + +{ #category : #'package-names' } +PBBootstrap >> packagesToExportAsMCZ [ + + ^ #(BaselineOfMetacello) , (#BaselineOfMetacello asClass allPackageNames) , self monticelloPackageNames , self hermesPackageNames, self kernelPackageNames , self monticelloNetworkPackageNames +] + +{ #category : #preparation } +PBBootstrap >> prepareBootstrap [ + + self + exportKernelProtocols; + exportKernelPackageNames; + exportAllPackagesIntoMcz; + exportMonticelloInStFile; + + prepareEnvironmentForHermes; + generateHermesFiles; + prepareEnvironmentForExport. +] + +{ #category : #preparation } +PBBootstrap >> prepareEnvironmentForExport [ + | allPackages | + + allPackages := ringEnvironment packages collect: #name. + + (allPackages reject: [ :x | #BaselineOfPharoBootstrap asClass kernelPackageNames includes: x ]) + do: [ :x | + | p | + p := ringEnvironment ask packageNamed: x. + p extensionMethods do: [ :e | e methodClass removeLocalMethod: e ]. + p definedBehaviors + do: [ :e | + ringEnvironment removeBehavior: e. + ringEnvironment removeBehavior: e classSide + ]. + ringEnvironment removePackage: p]. + + ringEnvironment cleanGlobalVariables. + ringEnvironment addGlobalsNamed: #(#Smalltalk #SourceFiles #Transcript #Undeclared #Display #TextConstants #Sensor #Processor #SystemOrganization). + ringEnvironment clean + +] + +{ #category : #preparation } +PBBootstrap >> prepareEnvironmentForHermes [ + ringEnvironment := self originRepository asRing2EnvironmentWith: self allPackagesForHermes. + ringEnvironment fixProtoObjectClassSuperclass. + ringEnvironment addGlobalsNamed: #(Smalltalk Transcript FileStream MacRomanTextConverter ChangeSet Character SourceFiles Processor Display Sensor UTF8TextConverter SystemOrganization Undeclared TextConstants). + ringEnvironment clean +] + +{ #category : #accessing } +PBBootstrap >> repositoryLocation [ + + ^ self class repositoryLocation +] + +{ #category : #'package-names' } +PBBootstrap >> sUnitPackageNames [ + + self ensureBaselineOfPharoBootstrap. + ^ #BaselineOfPharoBootstrap asClass sUnitPackageNames + +] + +{ #category : #accessing } +PBBootstrap >> versionInfo [ + ^ versionInfo +] + +{ #category : #accessing } +PBBootstrap >> versionInfo: anObject [ + versionInfo := anObject +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBBootstrap30.class.st b/bootstrap/src/Pharo30Bootstrap/PBBootstrap30.class.st new file mode 100644 index 00000000000..6474177e4b7 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBBootstrap30.class.st @@ -0,0 +1,542 @@ +Class { + #name : #PBBootstrap30, + #superclass : #Object, + #instVars : [ + 'objectSpace', + 'classLoader', + 'systemDefinition', + 'bootstrapInterpreter', + 'bootstrappedBindingCache', + 'bootstrapEnvironment', + 'remoteMetaclassBindings' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #bootstrapping } +PBBootstrap30 class >> bootstrap [ + + self bootstrap: '3.864' +] + +{ #category : #bootstrapping } +PBBootstrap30 class >> bootstrap: version [ + + self bootstrap: version toFileNamed: version, '.image' +] + +{ #category : #bootstrapping } +PBBootstrap30 class >> bootstrap: version toFileNamed: aFileName [ + + | definition bootstrap edit | + definition := (FiMetacelloWriter new written: (ConfigurationOfPharoBootstrap project version: version)). + + edit := definition ficusPackages + editAtPath: FiPath root / #Slot / #contents / #SlotClassBuilder / #methods + do: [ :elem | elem editInclude: (FiMethod sourceCode: 'validateClassName') ]. + definition := (definition ficusPackages resultOf: edit) asRFiEnvironment. + + edit := definition ficusPackages + editAtPath: FiPath root / #Traits / #contents / #TClass / #methods + do: [ :elem | elem editInclude: (FiMethod sourceCode: 'setName: aSymbol andRegisterInCategory: categorySymbol environment: aSystemDictionary + (self environment == aSystemDictionary + and: [self name = aSymbol + and: [self category = categorySymbol]]) ifTrue: [^self]. + + (self environment notNil and: [self name notNil and: [self name ~= aSymbol]]) ifTrue: [ + self environment renameClass: self as: aSymbol]. + + self name: aSymbol. + self environment: aSystemDictionary. + self environment at: self name put: self. + self environment organization classify: self name under: categorySymbol. + ^ true') ]. + definition := (definition ficusPackages resultOf: edit) asRFiEnvironment. + + edit := definition ficusPackages + editAtPath: FiPath root / #Traits / #contents / #TBehavior / #methods + do: [ :elem | elem editInclude: (FiMethod sourceCode: 'addTraitSelector: aSymbol withMethod: aCompiledMethod + | source method | + method := aCompiledMethod copy. + method selector: aSymbol. + method methodClass: self. + self isTrait ifFalse: [ method properties at: #traitSource put: aCompiledMethod ]. + self basicAddSelector: aSymbol withMethod: method') ]. + definition := (definition ficusPackages resultOf: edit) asRFiEnvironment. + + bootstrap := self basicNew + initializeSystemDefinition: definition; + initializeBootstrapEnvironment; + createVMStubs; + createInitialObjects; + createClasses; + installMethods; + initializeImage. + + bootstrap objectSpace serializeInFileNamed: aFileName +] + +{ #category : #visiting } +PBBootstrap30 >> behaviorFrom: aRFiClassOrTrait [ + ^ aRFiClassOrTrait accept: self +] + +{ #category : #'bootstrapping-bindings' } +PBBootstrap30 >> bindingOf: aString [ + + self halt. + ^ bootstrappedBindingCache + at: aString + ifAbsentPut: [ + | association | + association := (self classNamed: #Association) mirror basicNew. + association instanceVariableAtIndex: 1 put: self objectSpace nilObject. + association instanceVariableAtIndex: 2 put: (self classNamed: aString) mirror. + association ] +] + +{ #category : #'bootstrapping-bindings' } +PBBootstrap30 >> bindingOfGlobal: aString [ + + self halt. + ^ bootstrappedBindingCache + at: aString + ifAbsentPut: [ + | association | + association := (self classNamed: #Association) basicNew. + association instanceVariableAtIndex: 1 put: self objectSpace nilObject. + association instanceVariableAtIndex: 2 put: (self classNamed: aString). + association ] +] + +{ #category : #accessing } +PBBootstrap30 >> bindingOfMetaclassNamed: aBehaviorName [ + + ^remoteMetaclassBindings + at: aBehaviorName + ifAbsentPut: [ objectSpace + newAssociationWithKey: objectSpace nilObject + andValue: (bootstrapEnvironment at: aBehaviorName) basicClass ] +] + +{ #category : #running } +PBBootstrap30 >> bootstrap [ + + self initializeBootstrapEnvironment. + self createVMStubs. + self createInitialObjects. + self createClasses. + self installMethods. + self initializeImage. +] + +{ #category : #accessing } +PBBootstrap30 >> bootstrapEnvironment [ + + ^ bootstrapEnvironment +] + +{ #category : #accessing } +PBBootstrap30 >> bootstrapInterpreter [ + + ^ bootstrapInterpreter +] + +{ #category : #'class-loader' } +PBBootstrap30 >> builtClassNames [ + + ^ classLoader loadedClassNames +] + +{ #category : #helpers } +PBBootstrap30 >> checkpoint: name [ + + | isNewSession | + isNewSession := Smalltalk saveAs: name. + isNewSession ifTrue: [ UIManager default defer: [ self halt ]] +] + +{ #category : #accessing } +PBBootstrap30 >> classForClassMirror: anEPClassMirror [ + + ^ classLoader classForClassMirror: anEPClassMirror +] + +{ #category : #accessing } +PBBootstrap30 >> classLoader [ + ^ classLoader +] + +{ #category : #'class-loader' } +PBBootstrap30 >> classNamed: aString [ + + ^ EPRemoteClass on: (classLoader classNamed: aString) environment: self +] + +{ #category : #helpers } +PBBootstrap30 >> compactClassIndexForClassNamed: aName [ + + ^ #( + CompiledMethod + Slot + Array + LargeNegativeInteger + LargePositiveInteger + Float + Protocol + Association + Point + Rectangle + ByteString + BlockClosure + nil + MethodContext + nil + Bitmap + nil + nil + nil + nil + nil + nil + nil + nil + nil + nil + nil + nil + nil + nil + nil) indexOf: aName +] + +{ #category : #running } +PBBootstrap30 >> createBehaviorFromDefinition: aRFiDefinition [ + + ^ classLoader createBehaviorFromDefinition: aRFiDefinition +] + +{ #category : #running } +PBBootstrap30 >> createClasses [ + | definitions total smalltalkInstance | + definitions := systemDefinition allClassesAndTraits sorted: [ :a :b | a name < b name ]. + total := definitions size. + definitions + withIndexDo: [ :aClassDefinition :index | | time | + time := [self createBehaviorFromDefinition: aClassDefinition.] timeToRun. + + self log: ((index printPaddedWith: $0 to: 3), '/' , + total asString, ' - ', + time asString ,': Built behavior ', + aClassDefinition name). ]. + + smalltalkInstance := bootstrapEnvironment at: #Smalltalk. + objectSpace interpreter: bootstrapInterpreter. + objectSpace backend smalltalkInstance: smalltalkInstance. + objectSpace environment: ((EPSystemDictionary withSystemDictionary: objectSpace backend systemDictionary) objectSpace: objectSpace; yourself). + self checkpoint: 'created_classes'. +] + +{ #category : #running } +PBBootstrap30 >> createFalse [ + + objectSpace falseObject: (self createStubForClassNamed: #False) basicNew. + ^ objectSpace falseObject +] + +{ #category : #running } +PBBootstrap30 >> createInitialObjects [ + + | characterTable | + "We add the main globals that will be later needed for compilation" + self log: 'initializing globals'. + self bootstrapEnvironment at: #Processor put: objectSpace nilObject. + self bootstrapEnvironment at: #Smalltalk put: objectSpace nilObject. + self bootstrapEnvironment at: #Undeclared put: objectSpace nilObject. + + "We initialize the hash table sizes by hand. + The AST interpreter is too slow for it" + self log: 'initializing hash table sizes'. + (self classNamed: #HashTableSizes) mirror + instanceVariableAtIndex: 15 + put: (objectSpace newArrayWithAll: (HashTableSizes sizes collect: [:each | objectSpace objectMirrorOn: each ])). + + self log: 'preparing class builder'. + self bootstrapInterpreter evaluateCode: 'DangerousClassNotifier disable'. + self bootstrapInterpreter evaluateCode: 'Undeclared := Dictionary new.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk := SmalltalkImage basicNew.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk instVarAt: 1 put: (SystemDictionary withOrganizer: SystemOrganizer new).'. + self bootstrapInterpreter evaluateCode: 'Smalltalk at: #Smalltalk put: Smalltalk.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk at: #Undeclared put: Undeclared.'. + + self log: 'class loader now creates class pools'. + classLoader initializeClassPools. + + self log: 'Initializing StartUp list'. + self bootstrapInterpreter evaluateCode: 'SmalltalkImage initialize.'. + + self log: 'Initializing Character Table'. + self bootstrapInterpreter evaluateCode: 'Character initialize.'. + characterTable := (EPInternalCharacterTable new objectSpace: objectSpace). + objectSpace backend characterTable: ((self classNamed: #Character) classPool at: #CharacterTable). + objectSpace characterTable: characterTable. + + self log: 'Initializing Character Table'. + self bootstrapInterpreter evaluateCode: 'String classPool at: #AsciiOrder put: ((0 to: 255) as: ByteArray).'. + + self log: 'Initializing Date and Time constants'. + self bootstrapInterpreter evaluateCode: 'DateAndTime initialize.'. + self bootstrapInterpreter evaluateCode: 'ChronologyConstants initialize.'. + + self log: 'Initializing object dependent fields'. + self bootstrapInterpreter evaluateCode: 'Object initialize.'. + + self log: 'Installing symbol table'. + self bootstrapInterpreter evaluateCode: 'Symbol initialize. + Symbol classPool at: #SymbolTable put: (WeakSet withAll: ByteSymbol allInstances)'. + objectSpace symbolTable: (EPInternalSymbolTable new objectSpace: objectSpace). + + self log: 'Bootstrapping class layouts'. + bootstrapInterpreter evaluateCode: + '| superLayout | + superLayout := EmptyLayout instance. + Class + instVarAt: 4 + put: (FixedLayout + extending: superLayout + scope: (superLayout slotScope extend: #(superclass methodDict format layout instanceVariables organization subclasses name classPool sharedPools environment category traitComposition localSelectors)) + host: Class). + Class + instVarAt: 5 put: #(superclass methodDict format layout instanceVariables organization subclasses name classPool sharedPools environment category traitComposition localSelectors). + + SmallInteger + instVarAt: 4 + put: (SmallIntegerLayout new).'. + + self log: 'Class builder ready to create classes'. + classLoader useClassBuilder. + self checkpoint: 'created_initial_objects'. +] + +{ #category : #running } +PBBootstrap30 >> createNil [ + + "Temporal nil: it is needed so the nil stub class can be initialized with it" + objectSpace nilObject: (objectSpace objectMirrorOn: (UndefinedObject basicNew)). + + "We create the real nil and become it" + objectSpace nilObject becomeInto: (self createStubForClassNamed: #UndefinedObject) basicNew. + + ^ objectSpace nilObject +] + +{ #category : #'class-loader' } +PBBootstrap30 >> createStubForClassNamed: aString [ + + ^ classLoader createStubForClassNamed: aString +] + +{ #category : #running } +PBBootstrap30 >> createTrue [ + + objectSpace trueObject: (self createStubForClassNamed: #True) basicNew. + ^ objectSpace trueObject +] + +{ #category : #running } +PBBootstrap30 >> createVMStubs [ + + self log: 'creating initial Objects needed by the VM'. + + objectSpace backend specialObjectsArray: (objectSpace objectMirrorOn: (Array new: 59)). + self createNil. + 1 to: 59 do: [ :i | + objectSpace backend specialObjectsArray at: i put: objectSpace nilObject ]. + + self createFalse. + self createTrue. + objectSpace backend smallIntegerClass: (self createStubForClassNamed: #SmallInteger). + objectSpace backend characterClass: (self createStubForClassNamed: #Character). + objectSpace backend byteSymbolClass: (self createStubForClassNamed: #ByteSymbol). + objectSpace backend byteStringClass: (self createStubForClassNamed: #ByteString). + objectSpace backend byteArrayClass: (self createStubForClassNamed: #ByteArray). + objectSpace backend associationClass: (self createStubForClassNamed: #Association). + objectSpace backend arrayClass: (self createStubForClassNamed: #Array). + objectSpace backend symbolTableClass: (self createStubForClassNamed: #Symbol). + objectSpace backend largeNegativeIntegerClass: (self createStubForClassNamed: #LargeNegativeInteger). + objectSpace backend largePositiveIntegerClass: (self createStubForClassNamed: #LargePositiveInteger). + objectSpace backend methodClass: (self createStubForClassNamed: #CompiledMethod). + objectSpace backend floatClass: (self createStubForClassNamed: #Float). + self checkpoint: 'created_vm_objects'. +] + +{ #category : #running } +PBBootstrap30 >> definitionNamed: aName [ + + ^ systemDefinition classNamed: aName +] + +{ #category : #accessing } +PBBootstrap30 >> globalNamed: aString [ + + (self includesClassNamed: aString) + ifTrue: [ ^ (self classNamed: aString) mirror ]. + self halt. +] + +{ #category : #accessing } +PBBootstrap30 >> globalNamed: aString put: aValue [ + + bootstrapEnvironment at: aString put: aValue +] + +{ #category : #testing } +PBBootstrap30 >> includesClassNamed: aString [ + + ^ systemDefinition includesClassNamed: aString +] + +{ #category : #testing } +PBBootstrap30 >> includesGlobalNamed: aString [ + + "It is a global if we have it in our system definition" + ^ systemDefinition includesClassNamed: aString. +] + +{ #category : #running } +PBBootstrap30 >> initialize [ + + super initialize. + systemDefinition ifNil: [ + systemDefinition := (FiMetacelloWriter new written: + (ConfigurationOfPharoBootstrap project version: '3.864')) ]. + bootstrappedBindingCache := EPDictionary new. + remoteMetaclassBindings := EPDictionary new. +] + +{ #category : #running } +PBBootstrap30 >> initializeBootstrapEnvironment [ + + bootstrapEnvironment := Dictionary new. + + "We initialize the object space with a boot symbol table and character table. + We will later replace them by real ones." + objectSpace := EPObjectSpace new. + objectSpace backend: EPOzVMBackend new. + objectSpace characterTable: (EPExternalCharacterTable new objectSpace: objectSpace; yourself). + objectSpace symbolTable: (EPExternalSymbolTable new objectSpace: objectSpace; yourself). + + classLoader createJustStubs. + classLoader environment: bootstrapEnvironment. + classLoader systemDefinition: systemDefinition. + classLoader builder: self. + + bootstrapInterpreter := EPASTEvaluator new. + bootstrapInterpreter codeProvider: self. + bootstrapInterpreter environment: self. + bootstrapInterpreter objectSpace: objectSpace. + objectSpace interpreter: bootstrapInterpreter. +] + +{ #category : #running } +PBBootstrap30 >> initializeImage [ + self halt: 'should migrate this method'. + self checkpoint: 'Image initialized'. +] + +{ #category : #running } +PBBootstrap30 >> initializeSystemDefinition: aSystemDefinition [ + + systemDefinition := aSystemDefinition. + self initialize. +] + +{ #category : #running } +PBBootstrap30 >> installMethods [ + + | definitions total | + definitions := systemDefinition allClassesAndTraits sorted: [ :a :b | a name > b name ]. + total := definitions size. + definitions withIndexDo: [ :aClassDefinition :index | + self installMethodsInBehaviorDefinition: aClassDefinition prefixed: (index printPaddedWith: $0 to: 3), '/' , total asString. + ]. + self checkpoint: 'installed_methods'. +] + +{ #category : #running } +PBBootstrap30 >> installMethodsInBehaviorDefinition: behaviorDefinition prefixed: aPrefix [ + | behaviorMirror | + behaviorMirror := bootstrapEnvironment at: behaviorDefinition name. +" 1haltIf: [ behaviorMirror isKindOf: EPTraitMirror ] ." + self + installMethodsInBehaviorMapping: behaviorDefinition + using: self methodBuilder + onMirror: behaviorMirror + prefixed: aPrefix. + self + installMethodsInBehaviorMapping: behaviorDefinition classSide + using: self methodBuilder + onMirror: behaviorMirror basicClass + prefixed: aPrefix. +] + +{ #category : #running } +PBBootstrap30 >> installMethodsInBehaviorMapping: aBehaviorMapping using: aMethodBuilder onMirror: mirror prefixed: aPrefix [ + | newMethods theClass | + newMethods := aMethodBuilder methodsFromDefinition: aBehaviorMapping. + newMethods := newMethods sorted: [ :m1 :m2 | m1 selector < m2 selector ]. + theClass := (self classNamed: aBehaviorMapping theNonMetaClass name) mirror. + aBehaviorMapping isMeta ifTrue: [ theClass := theClass basicClass ]. + newMethods do: [ :m | + self log: aPrefix, ': Installing method ', + aBehaviorMapping name, '>>', m selector. + self objectSpace interpreter + evaluateCode: 'theBehavior addSelectorSilently: selector withMethod: compiledMethod' + withTemps: { + 'theBehavior' -> theClass. + 'selector' -> (m selector asLiteralInObjectSpace: objectSpace). + 'compiledMethod' -> m } + ]. +] + +{ #category : #testing } +PBBootstrap30 >> isMeta: aMirror [ + + ^ (self classNamed: #Metaclass) mirror = aMirror basicClass +] + +{ #category : #helpers } +PBBootstrap30 >> log: aString [ + + FileStream stdout nextPutAll: aString;cr. +] + +{ #category : #accessing } +PBBootstrap30 >> metaclassForClassMirror: anEPClassMirror [ + + ^ EPRemoteMetaClass on: anEPClassMirror environment: self +] + +{ #category : #accessing } +PBBootstrap30 >> methodBuilder [ + ^ PBMethodCompiler new builder: self; yourself. +] + +{ #category : #accessing } +PBBootstrap30 >> objectSpace [ + ^ objectSpace +] + +{ #category : #visiting } +PBBootstrap30 >> visitClass: aRFiClass [ + ^ EPRemoteClass + on: (classLoader classNamed: aRFiClass name) + environment: self +] + +{ #category : #visiting } +PBBootstrap30 >> visitTrait: aRFiTrait [ + ^ EPRemoteTrait + on: (classLoader classNamed: aRFiTrait name) + environment: self +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBBootstrapLogger.class.st b/bootstrap/src/Pharo30Bootstrap/PBBootstrapLogger.class.st new file mode 100644 index 00000000000..2db827725e3 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBBootstrapLogger.class.st @@ -0,0 +1,32 @@ +Class { + #name : #PBBootstrapLogger, + #superclass : #Object, + #instVars : [ + 'queue', + 'logging' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #'logging-Deprecated' } +PBBootstrapLogger >> basicLog: anItem [ + + FileStream stdout nextPutAll: anItem value asString ;cr. +] + +{ #category : #'logging-Deprecated' } +PBBootstrapLogger >> initialize [ + + super initialize. + queue := AtomicSharedQueue new. + logging := false. +] + +{ #category : #'logging-Deprecated' } +PBBootstrapLogger >> log: aLogStatement [ + + queue nextPut: aLogStatement. + logging ifFalse: [ + logging := true. + [ [ self basicLog: queue next ] repeat ] fork ]. +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBBootstrapStatistics.class.st b/bootstrap/src/Pharo30Bootstrap/PBBootstrapStatistics.class.st new file mode 100644 index 00000000000..428ca1a0f4c --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBBootstrapStatistics.class.st @@ -0,0 +1,28 @@ +Class { + #name : #PBBootstrapStatistics, + #superclass : #Object, + #instVars : [ + 'methodTimes', + 'compilationTimes' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #adding } +PBBootstrapStatistics >> addCompilationTime: aTime [ + + compilationTimes add: aTime. +] + +{ #category : #adding } +PBBootstrapStatistics >> addMethodTime: aTime [ + + methodTimes add: aTime. +] + +{ #category : #adding } +PBBootstrapStatistics >> initialize [ + super initialize. + methodTimes := OrderedCollection new. + compilationTimes := OrderedCollection new. +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBClassDefinition.class.st b/bootstrap/src/Pharo30Bootstrap/PBClassDefinition.class.st new file mode 100644 index 00000000000..400221706bf --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBClassDefinition.class.st @@ -0,0 +1,84 @@ +Class { + #name : #PBClassDefinition, + #superclass : #Object, + #instVars : [ + 'classDefinition', + 'bootstrapEnvironment' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #'instance-creation' } +PBClassDefinition class >> on: classDefinition environment: aBootstrapEnvironment [ + + ^ self new + initializeOn: classDefinition environment: aBootstrapEnvironment; + yourself +] + +{ #category : #accessing } +PBClassDefinition >> allSlots [ + + ^ classDefinition allSlots +] + +{ #category : #accessing } +PBClassDefinition >> definesClassVariable: aString [ + + ^ classDefinition instanceSide classVarNames includes: aString +] + +{ #category : #'initialize-release' } +PBClassDefinition >> initializeOn: aClassDefinition environment: aBootstrapEnvironment [ + + classDefinition := aClassDefinition. + bootstrapEnvironment := aBootstrapEnvironment. +] + +{ #category : #accessing } +PBClassDefinition >> innerBindingOf: aString [ + + (self definesClassVariable: aString asSymbol) + ifTrue: [ ^ EPClassVariableBinding new + name: aString asSymbol + ownerName: self name + objectSpace: bootstrapEnvironment; + yourself ]. + + self sharedPools + do: + [ :pool | (pool innerBindingOf: aString) ifNotNil: [ :binding | ^ binding ] ]. + + self superclass ifNotNil:[ + (self superclass innerBindingOf: aString) + ifNotNil: [ :binding | ^ binding ]]. + + "If it is a temp or an instance variable" + ^ nil +] + +{ #category : #accessing } +PBClassDefinition >> name [ + + ^ classDefinition instanceSide name +] + +{ #category : #accessing } +PBClassDefinition >> sharedPools [ + + ^ classDefinition instanceSide sharedPools collect: [ :pool | + PBClassDefinition on: pool environment: bootstrapEnvironment ] +] + +{ #category : #accessing } +PBClassDefinition >> superclass [ + + classDefinition superclass ifNil: [ ^ nil ]. + ^ PBClassDefinition on: classDefinition superclass environment: bootstrapEnvironment +] + +{ #category : #accessing } +PBClassDefinition >> usesClassVariable: aString [ + + ^ classDefinition instanceSide allClassVarNames includes: aString +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBClassLoader.class.st b/bootstrap/src/Pharo30Bootstrap/PBClassLoader.class.st new file mode 100644 index 00000000000..4fe32ead408 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBClassLoader.class.st @@ -0,0 +1,403 @@ +Class { + #name : #PBClassLoader, + #superclass : #Object, + #instVars : [ + 'builder', + 'initializedClasses', + 'environment', + 'systemDefinition', + 'compactClasses', + 'shouldInitializeClassPool', + 'useClassBuilder', + 'fullyLoaded', + 'definitionMirrorMap', + 'mirrorDefinitionMap' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #accessing } +PBClassLoader >> builder: aBuilder [ + + builder := aBuilder +] + +{ #category : #'class-loading' } +PBClassLoader >> classDefinitionFor: aClass [ + "Answer a String that defines the receiver." + + | type | + type := aClass isWeak + ifTrue: [ 'WeakLayout' ] + ifFalse: [ aClass isPointers + ifTrue: [ aClass isVariable + ifTrue: [ 'VariableLayout' ] + ifFalse: [ 'FixedLayout' ] + ] + ifFalse: [ aClass isCompiledMethod + ifTrue: [ 'CompiledMethodLayout' ] + ifFalse: [ aClass isWords + ifTrue: [ 'WordLayout' ] + ifFalse: [ 'ByteLayout' ]]]]. + ^ '| newClass | + newClass := ShiftClassInstaller make: [ :builder | + builder + superclass: {superClass}; + name: ''{name}''; + layoutClass: {type}; + slots: ''{instanceVariablesString}'' asSlotCollection; + sharedVariablesFromString: ''{classVariablesString}''; + sharedPools: ''{sharedPoolsString}''; + category: ''{category}''; + environment: {superClass} environment; + classSlots: ''{classInstanceVariablesString}'' asSlotCollection ]. + newClass layout compactClassIndex: {compactIndex}. + newClass' + format: { + 'superClass' -> aClass superclass name. + 'name' -> aClass name. + 'type' -> type. + 'instanceVariablesString' -> (' ' join: aClass instVarNames). + 'classVariablesString' -> aClass classVariablesString. + 'sharedPoolsString' -> aClass sharedPoolsString. + 'category' -> aClass category asString. + 'classInstanceVariablesString' -> (' ' join: aClass classSide instVarNames). + 'compactIndex' -> (self compactClassIndexForClass: aClass) } asDictionary. +] + +{ #category : #accessing } +PBClassLoader >> classForClassMirror: anEPClassMirror [ + + ^ mirrorDefinitionMap at: anEPClassMirror ifAbsent: [ systemDefinition classNamed: #Class ] +] + +{ #category : #'class-loading' } +PBClassLoader >> classNamed: aString [ + + | class | + (self loadedClassNamed: aString) + ifTrue: [ ^ environment at: aString ]. + class := self loadClassNamed: aString. + ^ class +] + +{ #category : #stubs } +PBClassLoader >> compactClassIndexForClass: aRFiClass [ + + ^ builder compactClassIndexForClassNamed: aRFiClass name. +] + +{ #category : #'class-loading' } +PBClassLoader >> createBehaviorFromDefinition: aRFiDefinition [ + + | newBehavior | + (self isFullyLoadedClassNamed: aRFiDefinition name) ifTrue: [ ^ self ]. + + aRFiDefinition isBehavior ifTrue: [ + "We ensure a class with that name already exists" + environment at: aRFiDefinition name ifAbsent: [ self createStubForClassNamed: aRFiDefinition name ]]. + + newBehavior := self executeDefinitionFor: aRFiDefinition. + + "Once the class is created we set a new method dictionary with a size that will make it grow less afterwards" + builder bootstrapInterpreter + evaluateCode: 'theBehavior methodDictionary: (MethodDictionary new: capacity)' + withTemps: { + 'capacity' -> (aRFiDefinition methods size asLiteralInObjectSpace: builder objectSpace). + 'theBehavior' -> newBehavior }. + + aRFiDefinition isBehavior ifTrue: [ + self registerClass: newBehavior asClassMirror named: aRFiDefinition name fullyLoaded: true. + ] ifFalse: [ + self registerTrait: newBehavior asTraitMirror named: aRFiDefinition name fullyLoaded: true. + ] +] + +{ #category : #stubs } +PBClassLoader >> createClassStubForDefinition: aClassDefinition [ + + | class metaclass | + metaclass := self metaclassClass basicNew asClassMirror. + metaclass format: (self formatOfClass: aClassDefinition classSide). + + class := metaclass basicNew asClassMirror. + class format: (self formatOfClass: aClassDefinition). + ^ class +] + +{ #category : #stages } +PBClassLoader >> createJustStubs [ + + shouldInitializeClassPool := false. +] + +{ #category : #stubs } +PBClassLoader >> createStubForClassNamed: aSymbol [ + + | class stub | + class := systemDefinition classNamed: aSymbol. + ^ class isBehavior + ifTrue: [ + stub := self createClassStubForDefinition: class. + self registerClass: stub named: aSymbol. + stub ] + ifFalse: [ Error signal ]. +] + +{ #category : #'class-loading' } +PBClassLoader >> createTraitFromDefinition: aTrait [ + + | newTrait | + newTrait := builder objectSpace interpreter evaluateCode: aTrait definition. + self registerTrait: newTrait named: aTrait name. + ^ newTrait +] + +{ #category : #accessing } +PBClassLoader >> environment: anEnvironment [ + + environment := anEnvironment +] + +{ #category : #'class-loading' } +PBClassLoader >> executeDefinitionFor: aRFiDefinition [ + + | definition | + definition := aRFiDefinition isBehavior ifTrue: [ + self classDefinitionFor: aRFiDefinition. + ] ifFalse: [ + aRFiDefinition definition. + ]. + + ^ builder bootstrapInterpreter evaluateCode: definition. +] + +{ #category : #stubs } +PBClassLoader >> formatOfClass: aRFiClass [ + ^ builder formatOfClass: aRFiClass +] + +{ #category : #initialization } +PBClassLoader >> initialize [ + + super initialize. + initializedClasses := Set new. + compactClasses := EPDictionary new. + definitionMirrorMap := EPDictionary new. + mirrorDefinitionMap := EPDictionary new. + + "maybe we could use a state pattern but for now this is so simple" + useClassBuilder := false. + + fullyLoaded := Dictionary new +] + +{ #category : #initialization } +PBClassLoader >> initializeClassNamed: aClassName [ + + (self shouldInitializeClassNamed: aClassName) ifFalse: [ ^ self ]. + + self doInitializeClassNamed: aClassName. + initializedClasses add: aClassName. + self postInitializeClassNamed: aClassName +] + +{ #category : #stubs } +PBClassLoader >> initializeClassPool: aClassName [ + + | definition class classPool classVariableBindings | + definition := systemDefinition classNamed: aClassName. + classVariableBindings := definition classVarNames collect: [ :each | | classVar | + classVar := (self classNamed: #ClassVariable) basicNew. + classVar instanceVariableAtIndex: 1 put: (each asLiteralInObjectSpace: builder objectSpace) ]. + + class := environment at: aClassName. + classPool := builder bootstrapInterpreter + evaluateCode: 'aClassVariableNamesCollection asDictionary' + withTemps: { + 'aClassVariableNamesCollection' -> (builder objectSpace newArrayWithAll: classVariableBindings) + }. + + "Force the creation of the symbol using the object space class table." + self flag: #bug. "If we do not use basicSetClassName, we duplicate symbols" + class basicSetClassName: (aClassName asLiteralInObjectSpace: builder objectSpace). + class classPool: classPool. + ^ class +] + +{ #category : #stages } +PBClassLoader >> initializeClassPools [ + + shouldInitializeClassPool := true. + environment keysDo: [ :name | + (systemDefinition classNamed: name) isBehavior + ifTrue: [ self initializeClassPool: name ] ]. +] + +{ #category : #initialization } +PBClassLoader >> initializeTraitNamed: aClassName [ + + (self shouldInitializeClassNamed: aClassName) ifFalse: [ ^ self ]. + self doInitializeTraitNamed: aClassName. + initializedClasses add: aClassName. +] + +{ #category : #'class-loading' } +PBClassLoader >> isClassDefinition: aString [ + + ^ aString beginsWith: '| newClass | + newClass := ShiftClassInstaller make: [ :builder | + builder + superclass: '. +] + +{ #category : #initialization } +PBClassLoader >> isFullyLoadedClassNamed: aClassName [ + + ^ fullyLoaded at: aClassName ifAbsent: [ false ] +] + +{ #category : #'class-loading' } +PBClassLoader >> loadClassNamed: aString [ + | class | + class := self createStubForClassNamed: aString. + shouldInitializeClassPool + ifTrue: [ self initializeClassPool: aString ]. + ^ class +] + +{ #category : #stubs } +PBClassLoader >> loadedClassNamed: aString [ + + ^ environment includesKey: aString +] + +{ #category : #stubs } +PBClassLoader >> loadedClassNames [ + + ^ environment keys +] + +{ #category : #registration } +PBClassLoader >> map: aClassMirror with: aDefinition [ + + "We create a mapping between the real classes and their definitions for later" + + mirrorDefinitionMap at: aClassMirror put: aDefinition. + definitionMirrorMap at: aDefinition put: aClassMirror. + + mirrorDefinitionMap at: aClassMirror basicClass put: aDefinition classSide. + definitionMirrorMap at: aDefinition classSide put: aClassMirror basicClass +] + +{ #category : #stubs } +PBClassLoader >> metaclassClass [ + + "Base case for recursion on class creation. + Ok, so here we really go down and create the metaclass from nothing. We will use this metaclass to create all the others" + | aClassMapping theNewMetaclass theNewMetaclassClass classFormat metaclassFormat | + + environment at: #Metaclass ifPresent: [ :aClass | ^ aClass ]. + + aClassMapping := systemDefinition classNamed: #Metaclass. + classFormat := self formatOfClass: aClassMapping. + metaclassFormat := self formatOfClass: aClassMapping classSide. + + theNewMetaclass := builder objectSpace + createClassWithFormat: metaclassFormat + forInstancesOfFormat: classFormat. + + theNewMetaclassClass := builder objectSpace + createClassWithFormat: classFormat + forInstancesOfFormat: metaclassFormat. + + theNewMetaclass setClass: theNewMetaclassClass. + theNewMetaclassClass setClass: theNewMetaclass. + + self registerClass: theNewMetaclass named: aClassMapping name. + ^ theNewMetaclass +] + +{ #category : #registration } +PBClassLoader >> migrateOldClass: oldClass to: newClass [ + + | oldClassMetaclass | + + "We migrate the class pools" + oldClass asClassMirror classPool isNilObject ifFalse: [ + newClass asClassMirror classPool: oldClass asClassMirror classPool ]. + + "We migrate the class instance variables" + "A class has at least 14 instances variables (cf class description, behavior). Starting from 15, we get user defined class instances variables." + ((newClass instanceVariableMapping classNumberOfVariables) + 1) to: oldClass fixedSize do: [ :index | + newClass instanceVariableAtIndex: index put: (oldClass instanceVariableAtIndex: index). + ]. + + "We become the old class and metaclass into the new ones" + oldClassMetaclass := oldClass basicClass. + oldClass becomeInto: newClass. + oldClassMetaclass target == Metaclass + ifFalse:[ oldClassMetaclass becomeInto: newClass basicClass ] +] + +{ #category : #accessing } +PBClassLoader >> next [ + + self subclassResponsibility +] + +{ #category : #registration } +PBClassLoader >> registerClass: aClassMirror named: aName [ + + ^ self registerClass: aClassMirror named: aName fullyLoaded: false +] + +{ #category : #registration } +PBClassLoader >> registerClass: aClassMirror named: aName fullyLoaded: aBoolean [ + + "If it existed before, we migrate its state" + (environment includesKey: aName) + ifTrue: [ + self migrateOldClass: (environment at: aName) to: aClassMirror ]. + + "We register it and keep up to date our compact class index" + environment at: aName put: aClassMirror. + aClassMirror asClassMirror compactClassIndex = 0 ifFalse: [ + builder objectSpace backend compactClassAt: aClassMirror asClassMirror compactClassIndex put: aClassMirror ]. + + "We create a mapping between the real classes and their definitions for later" + self map: aClassMirror with: (systemDefinition classNamed: aName). + + "We reset the class map of the ast interpreter" + fullyLoaded at: aName put: aBoolean +] + +{ #category : #registration } +PBClassLoader >> registerTrait: aTraitMirror named: aName fullyLoaded: aBoolean [ + + (environment includesKey: aName) + ifTrue: [ | oldClass | + oldClass := environment at: aName. + oldClass becomeInto: aTraitMirror. + "oldClassMetaclass target handle == Metaclass + ifFalse:[ oldClassMetaclass becomeInto: aClassMirror classSide ] "]. + + environment at: aName put: aTraitMirror. + fullyLoaded at: aName put: aBoolean + "aClassMirror compactClassIndex = 0 ifFalse: [ + compactClasses at: aClassMirror compactClassIndex put: aClassMirror ]. + + objectSpace interpreter resetClassMap. +" +] + +{ #category : #accessing } +PBClassLoader >> systemDefinition: aRFiEnvironment [ + systemDefinition := aRFiEnvironment +] + +{ #category : #stages } +PBClassLoader >> useClassBuilder [ + + useClassBuilder := true +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBDefinitionFetcher.class.st b/bootstrap/src/Pharo30Bootstrap/PBDefinitionFetcher.class.st new file mode 100644 index 00000000000..b5482a31bc6 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBDefinitionFetcher.class.st @@ -0,0 +1,26 @@ +" +Base class used to fetch Monticello definitions (classes, methods) that will be used to create a boostraped image +" +Class { + #name : #PBDefinitionFetcher, + #superclass : #Object, + #category : 'Pharo30Bootstrap-Deprecated' +} + +{ #category : #versioning } +PBDefinitionFetcher >> majorVersion [ + + ^ nil +] + +{ #category : #versioning } +PBDefinitionFetcher >> minorVersion [ + + ^ nil +] + +{ #category : #versioning } +PBDefinitionFetcher >> updateNumber [ + + ^ nil +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBImageBuilder50.class.st b/bootstrap/src/Pharo30Bootstrap/PBImageBuilder50.class.st new file mode 100644 index 00000000000..9e50643720c --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBImageBuilder50.class.st @@ -0,0 +1,762 @@ +" +I'm the process performing the bootstrap of a Pharo 5.0 version. + + PBBootstrap50 bootstrap: '5.392' + +" +Class { + #name : #PBImageBuilder50, + #superclass : #Object, + #instVars : [ + 'objectSpace', + 'classLoader', + 'systemDefinition', + 'bootstrapInterpreter', + 'bootstrapEnvironment', + 'espellBackend', + 'statistics', + 'logger', + 'imageFileReference', + 'versionInfo' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #visiting } +PBImageBuilder50 >> behaviorFrom: aRFiClassOrTrait [ + ^ aRFiClassOrTrait accept: self +] + +{ #category : #'accessing instances and variables' } +PBImageBuilder50 >> bindingOf: aName [ + + (self includesClassNamed: aName) + ifTrue: [ ^ EPGlobalBinding new + name: aName objectSpace: self; + yourself ]. + + ^ nil +] + +{ #category : #running } +PBImageBuilder50 >> bootstrap [ + + self + initializeBootstrapEnvironment; + createVMStubs; + flushNewSpace; + createInitialObjects; + createClasses; + installMethods; + installExtensionMethods; + initializeImage +] + +{ #category : #accessing } +PBImageBuilder50 >> bootstrapEnvironment [ + + ^ bootstrapEnvironment +] + +{ #category : #running } +PBImageBuilder50 >> bootstrapInitialProcess [ + Smalltalk snapshotPrimitive. + ProcessorScheduler initialize. + + Delay initialize. + SmallInteger initialize. + + ProcessorScheduler startUp. + + OSPlatform startUp: true. + + "2 following lines are used to initialize Unicode tag constants. + Must be replaced by an uptodate version of Unicode class>>#initializeTagConstants and a call to it" + #(#Cc #Cf #Co #Cs #Ll #Lm #Lo #Lt #Lu #Mc #Me #Mn #Nd #Nl #No #Pc #Pd #Pe #Pf #Pi #Po #Ps #Sc #Sk #Sm #So #Zl #Zp #Zs) + doWithIndex: [ :each :index | Unicode classPool at: each put: index ]. +Unicode classPool at: #Cn put: 0. + (Smalltalk globals at: #UnicodeDefinitions) initializeUnicodeClass. + EncodedCharSet initialize. + String initialize. + ByteString initialize. "needed by TextConverter to install LineEnd convention (called by Smalltalk openLog)" + + "Weak array class initialization 2 lines" + Smalltalk specialObjectsArray at: 42 put: Semaphore new."to put in EPObjectSpace>>#createSpecialObjectsArray?" + WeakArray restartFinalizationProcess. + + DiskStore useFilePlugin "initialize". + FileStream initialize. + FileStream classVarNamed: 'TheStdioHandles' put: FileStream stdioHandles. "FileStream startup" + ByteTextConverter initialize. + MultiByteFileStream initialize. + ASTCache default: ASTCache new. "ASTCache initialize, neeeded to print stack on error" + FileLocator startUp: true. "FileLocator initialize" + + Smalltalk globals + at: #Transcript + put: (NonInteractiveTranscript stdout install). + CompilationContext initialize. + Float initialize. + ZipConstants initialize. + ZipWriteStream initialize. + + UIManager classVarNamed: 'Default' put: NonInteractiveUIManager new. + UIManager default activate. + + Smalltalk sourceFileVersionString: 'PharoV40'. + (Smalltalk class classVariableNamed: 'LastImagePath') value: Smalltalk imagePath. "set the default value" + SourceFiles := SourceFileArray new ensureOpen. "needed to get source from a compiled method, used to log an error." + Smalltalk openSourceFiles. + + BasicCommandLineHandler new activate. "BasicCommandLineHandler startUp:" + UIManager default inform: 'Alive!'. + Processor terminateActive. +] + +{ #category : #running } +PBImageBuilder50 >> bootstrapInitialProcessCode [ + | instructions | + instructions := (self class>>#bootstrapInitialProcess) sourceCode. + ^ instructions allButFirst: (instructions indexOf: Character cr) "remove method name" +] + +{ #category : #accessing } +PBImageBuilder50 >> bootstrapInterpreter [ + + ^ bootstrapInterpreter +] + +{ #category : #running } +PBImageBuilder50 >> bootstrapWithResumableDebugger [ + "If we do not fork the process, we get a post-mortem debugger" + [ self bootstrap ] + on: Error, Halt + fork: [ :ex | + Smalltalk logError: ex description inContext: nil. + ex pass ] +] + +{ #category : #accessing } +PBImageBuilder50 >> buildNumber: aNumber [ + + buildNumber := aNumber +] + +{ #category : #'class-loader' } +PBImageBuilder50 >> builtClassNames [ + + ^ classLoader loadedClassNames +] + +{ #category : #accessing } +PBImageBuilder50 >> classForClassMirror: anEPClassMirror [ + + ^ classLoader classForClassMirror: anEPClassMirror +] + +{ #category : #running } +PBImageBuilder50 >> classInstanceVariableIndexAt: anIndex [ + "number of instances variables of the class Class. Classes that have more than this number in their fixed size have their own instance class variable that we should probably take care of." + ^ (self classNamed: #Class) mirror fixedSize + anIndex +] + +{ #category : #accessing } +PBImageBuilder50 >> classLoader [ + ^ classLoader +] + +{ #category : #'class-loader' } +PBImageBuilder50 >> classNamed: aString [ + + ^ (classLoader classNamed: aString) + asRemoteClassOrTraitFromEnvironment: self +] + +{ #category : #helpers } +PBImageBuilder50 >> compactClassIndexForClassNamed: aName [ + "To recompute, use the following expression in the image you want to bootstrap. For example, to boostrap pharo 50193, execute the expression in a pharo 50193 image. + (Smalltalk specialObjectsArray at: 29) + collect: [ :each | each ifNotNil: [ each name ] ] + The order is really important, do not change it! + " + ^ #( + #CompiledMethod + #Slot + #Array + #LargeNegativeInteger + #LargePositiveInteger + #Float + #Protocol + #Association + #Point + #Rectangle + #ByteString + #BlockClosure + #GlobalVariable + #Context + #ClassVariable + #Bitmap + #EndianDetector + nil nil nil nil nil nil nil nil nil nil nil nil nil nil) + indexOf: aName +] + +{ #category : #running } +PBImageBuilder50 >> createBehaviorFromDefinition: aRFiDefinition [ + + ^ classLoader createBehaviorFromDefinition: aRFiDefinition +] + +{ #category : #running } +PBImageBuilder50 >> createClasses [ + | definitions total smalltalkInstance | + definitions := self systemDefinition allClassesAndTraits sorted: [ :a :b | a name < b name ]. + total := definitions size. + definitions + withIndexDo: [ :aClassDefinition :index | | time | + time := [self createBehaviorFromDefinition: aClassDefinition.] timeToRun. + + PBSubStepFinishedSignal log: ((index printPaddedWith: $0 to: 3), '/' , + total asString, ' - ', + time asString ,': Built behavior ', + aClassDefinition name). ]. + + smalltalkInstance := bootstrapEnvironment at: #Smalltalk. + objectSpace interpreter: bootstrapInterpreter. + objectSpace backend smalltalkInstance: smalltalkInstance. + objectSpace environment: ((EPSystemDictionary withSystemDictionary: objectSpace backend systemDictionary) objectSpace: objectSpace; yourself). + + PBStepFinishedSignal log: 'Classes created'. + self checkpoint: 'created_classes'. +] + +{ #category : #running } +PBImageBuilder50 >> createFalse [ + + objectSpace falseObject: (self createStubForClassNamed: #False) basicNew. + ^ objectSpace falseObject +] + +{ #category : #running } +PBImageBuilder50 >> createInitialObjects [ + + | characterTable | + "We add the main globals in the bootstrap environment before a system dictionary exists. These globals are needed to create a system dictionary, and will be used by the AST interpreter" + PBStepFinishedSignal log: 'initializing globals'. + self bootstrapEnvironment at: #Smalltalk put: objectSpace nilObject. + self bootstrapEnvironment at: #Undeclared put: objectSpace nilObject. + + "We initialize the hash table sizes by hand. + The AST interpreter is too slow to interpret HashTableSizes>>#initialize" + PBSubStepFinishedSignal log: 'initializing hash table sizes'. + + (self classNamed: #HashTableSizes) mirror + instanceVariableAtIndex: (self classInstanceVariableIndexAt: 1) + put: (objectSpace newArrayWithAll: (HashTableSizes sizes collect: [:each | objectSpace backend smallIntegerMirrorOn: each ])). + + PBSubStepFinishedSignal log: 'preparing class builder'. + self bootstrapInterpreter evaluateCode: 'DangerousClassNotifier disable'. + + self bootstrapInterpreter evaluateCode: 'Undeclared := Dictionary new.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk := SmalltalkImage basicNew.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk instVarAt: 1 put: (SystemDictionary withOrganizer: SystemOrganizer new).'. + self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Smalltalk put: Smalltalk.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Undeclared put: Undeclared.'. + + "Initialize the globals of the system. Careful: The AST interpreter will not know about these if we do not put them in the bootstrapEnvironment." + self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Processor put: nil.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #Transcript put: nil.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #SystemOrganisation put: nil.'. + self bootstrapInterpreter evaluateCode: 'Smalltalk globals at: #SourceFiles put: nil.'. + + + PBSubStepFinishedSignal log: 'class loader now creates class pools'. + classLoader initializeClassPools. + + PBSubStepFinishedSignal log: 'Initializing StartUp list'. + self bootstrapInterpreter evaluateCode: 'SmalltalkImage initialize.'. + + PBSubStepFinishedSignal log: 'Initializing Character Table'. + self bootstrapInterpreter evaluateCode: 'Character initialize.'. + characterTable := (EPInternalCharacterTable new objectSpace: objectSpace). + objectSpace backend characterTable: ((self classNamed: #Character) classPool at: #CharacterTable). + objectSpace characterTable: characterTable. + + PBSubStepFinishedSignal log: 'Initializing String AsciiTable'. + self bootstrapInterpreter evaluateCode: 'String classPool at: #AsciiOrder put: ((0 to: 255) as: ByteArray).'. + + PBSubStepFinishedSignal log: 'Initializing SmallInteger constants'. + self bootstrapInterpreter evaluateCode: 'SmallInteger instVarAt: ' , (self classInstanceVariableIndexAt: 1) asString ,' put: -16r40000000.' "minVal". + self bootstrapInterpreter evaluateCode: 'SmallInteger instVarAt: ' , (self classInstanceVariableIndexAt: 2) asString ,' put: 16r3FFFFFFF.' "maxVal". + + PBSubStepFinishedSignal log: 'Initializing Date and Time constants'. + self bootstrapInterpreter evaluateCode: 'DateAndTime initialize.'. + self bootstrapInterpreter evaluateCode: 'ChronologyConstants initialize.'. + + PBSubStepFinishedSignal log: 'Initializing CompiledMethod constants'. + self bootstrapInterpreter evaluateCode: 'CompiledMethod initialize.'. + + PBSubStepFinishedSignal log: 'Initializing object dependent fields'. + self bootstrapInterpreter evaluateCode: 'Object initialize.'. + + PBSubStepFinishedSignal log: 'Installing symbol table'. + self bootstrapInterpreter evaluateCode: 'Symbol initialize. + Symbol classPool at: #SymbolTable put: (WeakSet withAll: ByteSymbol allInstances)'. + objectSpace symbolTable: (EPInternalSymbolTable new objectSpace: objectSpace). + + + PBSubStepFinishedSignal log: 'Bootstrapping class layouts'. + bootstrapInterpreter evaluateCode: + ('| superLayout | + superLayout := EmptyLayout instance. + Class + instVarAt: 4 + put: (FixedLayout + extending: superLayout + scope: (superLayout slotScope extend: #({1})) + host: Class). + + SmallInteger + instVarAt: 4 + put: (ImmediateLayout new).' format: {self espellBackend instanceVariableMapping listOfClassSlots}). + + PBStepFinishedSignal log: 'Class builder ready to create classes'. + classLoader useClassBuilder. + + self checkpoint: 'created_initial_objects'. +] + +{ #category : #running } +PBImageBuilder50 >> createNil [ + + "Temporal nil: it is needed so the nil stub class can be initialized with it" + objectSpace nilObject: (objectSpace objectMirrorOn: (UndefinedObject basicNew)). + + "We create the real nil and become it" + objectSpace nilObject becomeInto: (self createStubForClassNamed: #UndefinedObject) basicNew. + + ^ objectSpace nilObject +] + +{ #category : #'class-loader' } +PBImageBuilder50 >> createStubForClassNamed: aString [ + + ^ classLoader createStubForClassNamed: aString +] + +{ #category : #running } +PBImageBuilder50 >> createTrue [ + + objectSpace trueObject: (self createStubForClassNamed: #True) basicNew. + ^ objectSpace trueObject +] + +{ #category : #running } +PBImageBuilder50 >> createVMStubs [ + + PBStepStartedSignal log: 'creating initial Objects needed by the VM'. + + objectSpace backend specialObjectsArray: (objectSpace createObjectWithFormat: (Array format) withSize: 59). + self createNil. + 1 to: 59 do: [ :i | + objectSpace backend specialObjectsArray at: i put: objectSpace nilObject ]. + + self createFalse. + self createTrue. + + "try to move nil, true and false to the new space" + espellBackend objectMemory flushNewSpace. + + objectSpace backend smallIntegerClass: (self createStubForClassNamed: #SmallInteger). + objectSpace backend characterClass: (self createStubForClassNamed: #Character). + objectSpace backend byteSymbolClass: (self createStubForClassNamed: #ByteSymbol). + objectSpace backend byteStringClass: (self createStubForClassNamed: #ByteString). + objectSpace backend byteArrayClass: (self createStubForClassNamed: #ByteArray). + objectSpace backend associationClass: (self createStubForClassNamed: #Association). + objectSpace backend arrayClass: (self createStubForClassNamed: #Array). + objectSpace backend symbolTableClass: (self createStubForClassNamed: #Symbol). + objectSpace backend largeNegativeIntegerClass: (self createStubForClassNamed: #LargeNegativeInteger). + objectSpace backend largePositiveIntegerClass: (self createStubForClassNamed: #LargePositiveInteger). + objectSpace backend methodClass: (self createStubForClassNamed: #CompiledMethod). + objectSpace backend floatClass: (self createStubForClassNamed: #Float). + objectSpace backend contextClass: (self createStubForClassNamed: #Context). + objectSpace backend processClass: (self createStubForClassNamed: #Process). + objectSpace backend blockClass: (self createStubForClassNamed: #BlockClosure). + objectSpace backend fullBlockClass: (self createStubForClassNamed: #FullBlockClosure). + objectSpace backend messageClass: (self createStubForClassNamed: #Message). + objectSpace backend semaphoreClass: (self createStubForClassNamed: #Semaphore). + + "Point is required in the special objects array because it is used to instantiate point objects faster. + If we do not put it here, the VM will crash. + Lots of tests in kernel use it." + objectSpace backend pointClass: (self createStubForClassNamed: #Point). +] + +{ #category : #accessing } +PBImageBuilder50 >> definitionNamed: aName [ + + ^ self systemDefinition classNamed: aName +] + +{ #category : #accessing } +PBImageBuilder50 >> environment [ + + ^ bootstrapEnvironment +] + +{ #category : #accessing } +PBImageBuilder50 >> espellBackend [ + ^ espellBackend +] + +{ #category : #accessing } +PBImageBuilder50 >> espellBackend: anObject [ + espellBackend := anObject +] + +{ #category : #format } +PBImageBuilder50 >> formatOfClass: aRFiClass [ + + "A class format is composed by" + "<2 bits of size><5 bits of compact class index><4 bits of inst spec><6 bits of size><1 bit with a 0>" + + | size1 instSpec size2 compactClassIndex | + size1 := (aRFiClass allInstVarNames size + 1 // 64) bitAnd: 16r3. + instSpec := aRFiClass isCompiledMethod + ifTrue: [ 12 ] + ifFalse: [aRFiClass isWeak + ifTrue:[ 4 ] + ifFalse:[aRFiClass isPointers + ifTrue: [ aRFiClass isVariable + ifTrue: [ aRFiClass allInstVarNames size > 0 ifTrue: [ 3 ] ifFalse: [ 2 ] ] + ifFalse: [ aRFiClass allInstVarNames size > 0 ifTrue: [ 1 ] ifFalse: [ 0 ] ] + ] + ifFalse: [ aRFiClass isWords ifTrue: [ 6 ] ifFalse: [ 8 ] ] + ] + ]. + size2 := (aRFiClass allInstVarNames size + 1 \\ 64) bitAnd: 16r3F. + + compactClassIndex := self compactClassIndexForClass: aRFiClass. + + ^(size1 bitShift: 16) + (compactClassIndex bitShift: 11) + (instSpec bitShift: 7) + (size2 bitShift: 1) +] + +{ #category : #accessing } +PBImageBuilder50 >> globalNamed: aString [ + + (self includesClassNamed: aString) + ifTrue: [ ^ (self classNamed: aString) mirror ]. + self halt. +] + +{ #category : #accessing } +PBImageBuilder50 >> globalNamed: aString put: aValue [ + + bootstrapEnvironment at: aString put: aValue +] + +{ #category : #accessing } +PBImageBuilder50 >> imageFileReference: aFileReference [ + + imageFileReference := aFileReference +] + +{ #category : #testing } +PBImageBuilder50 >> includesClassNamed: aString [ + + ^ self systemDefinition includesClassNamed: aString +] + +{ #category : #testing } +PBImageBuilder50 >> includesGlobalNamed: aString [ + + "It is a global if we have it in our system definition" + ^ self systemDefinition includesClassNamed: aString. +] + +{ #category : #'initialize-release' } +PBImageBuilder50 >> initialize [ + + super initialize. + statistics := PBBootstrapStatistics new. + logger := PBBootstrapLogger new. + imageFileReference := 'bootstrap.image' asFileReference. + + "the default espell backend for the bootstrap" + self initializeBackend. + self instantiateClassLoader. +] + +{ #category : #'initialize-release' } +PBImageBuilder50 >> initializeBackend [ + + self subclassResponsibility +] + +{ #category : #running } +PBImageBuilder50 >> initializeBootstrapEnvironment [ + + bootstrapEnvironment := Dictionary new. + + "We initialize the object space with a boot symbol table and character table. + We will later replace them by real ones." + objectSpace := EPObjectSpace new. + objectSpace backend: espellBackend. + objectSpace characterTable: (EPExternalCharacterTable new objectSpace: objectSpace; yourself). + objectSpace symbolTable: (EPExternalSymbolTable new objectSpace: objectSpace; yourself). + + classLoader createJustStubs. + classLoader environment: bootstrapEnvironment. + classLoader systemDefinition: self systemDefinition. + classLoader builder: self. + + bootstrapInterpreter := EPASTEvaluator new. + bootstrapInterpreter codeProvider: self. + bootstrapInterpreter environment: self. + bootstrapInterpreter objectSpace: objectSpace. + objectSpace interpreter: bootstrapInterpreter. +] + +{ #category : #running } +PBImageBuilder50 >> initializeImage [ + | process | + + self flag: 'should migrate this method'. + self checkpoint: 'image_initialization'. + + self initializeSpecialObjectArray. + + self bootstrapInterpreter evaluateCode: ' + Smalltalk at: #Processor put: (ProcessorScheduler basicNew). + (Smalltalk at: #Processor) instVarAt: 1 put: ((1 to: 80) collect: [ :i | ProcessList new ])'. + + "Initialize the processor association for the special objects array. + Enchancement possible: This should be automatically managed by the createVMStubs method" + objectSpace backend processorAssociation: (self bootstrapInterpreter evaluateCode: 'Smalltalk globals associationAt: #Processor.'). + + process := objectSpace + createProcessWithPriority: 40 + doing: ('PharoBootstrapInitialization + initializeImageOfType: ''Pharo'' + major: {major} + minor: {minor} + patch: {patch} + suffix: ''{suffix}'' + build: {build} + commitHash: ''{hash}''.' + format: { + 'major' -> versionInfo major. + 'minor' -> versionInfo minor. + 'patch' -> versionInfo patch. + 'suffix' -> (versionInfo suffix ifNil: [ '' ]). + 'build' -> versionInfo buildNumber. + 'hash' -> versionInfo commitHash. + } asDictionary). + objectSpace installAsActiveProcess: process. + + self followForwardingPointers. + +" espellBackend simulator stackPages pages do: [ :page | espellBackend simulator stackPages freeStackPage: page ]. + espellBackend simulator freeUntracedStackPages." + [[ espellBackend objectMemory flushNewSpace. ] + on: Halt + do: [:ex| + "suppress halts from the usual suspects (development time halts)" + (#(#fullGC #compactImage #doScavenge:) includes: ex signalerContext sender selector) + ifTrue: [ex resume] + ifFalse: [ex pass]]] on: AssertionFailure do: [ :e | + ((e signalerContext sender method selector == #assert:) + and: [ e signalerContext sender sender method selector = #mapStackPages ]) + ifTrue: [ e resume ] + ifFalse: [ e pass ]] . + + self freeForwarders. + self compactImage. + self reportSizes. + + self writeSnapshot: imageFileReference fullName ofTransformedImage: espellBackend simulator objectMemory headerFlags: 0 screenSize: 0. + PBStepFinishedSignal log: 'Installed extension methods'. + +] + +{ #category : #running } +PBImageBuilder50 >> initializeSpecialObjectArray [ +" objectSpace mustRebuildSpecialObjectsArray. +" objectSpace specialObjectsArray: self newSpecialObjectsArray. + + self bootstrapInterpreter + evaluateCode: 'Smalltalk specialObjectsArray: newArray.' + withTemps: { 'newArray' -> objectSpace backend specialObjectsArray }. +] + +{ #category : #running } +PBImageBuilder50 >> installExtensionMethods [ + + | definitions total | + definitions := self systemDefinition packages sorted: [ :a :b | a name < b name ]. + total := definitions size. + definitions withIndexDo: [ :aPackageDefinition :index | + self installExtensionMethodsOf: aPackageDefinition prefixed: (index printPaddedWith: $0 to: 3), '/' , total asString. + ]. + + PBStepFinishedSignal log: 'Installed extension methods'. + self checkpoint: 'installed_extension_methods'. +] + +{ #category : #running } +PBImageBuilder50 >> installExtensionMethodsOf: aPackageDefinition prefixed: aPrefix [ + aPackageDefinition extensionMethods + doWithIndex: [ :methodDefinition :index | | compiledMethod behaviorMirror methodClass logMessage | + methodClass := methodDefinition methodClass. + compiledMethod := self methodBuilder createNewMethod: methodDefinition. + behaviorMirror := bootstrapEnvironment at: methodClass theNonMetaClass name. + methodClass isMeta ifTrue: [ behaviorMirror := behaviorMirror classSide ]. + + logMessage := String streamContents: [ :stream | + stream + nextPutAll: aPrefix; + nextPut: $-; + nextPutAll: index asString; + nextPut: $/; + nextPutAll: aPackageDefinition extensionMethods size asString; + nextPutAll: ': Installing extension method '; + nextPutAll: methodClass name; + nextPutAll: '>>'; + nextPutAll: methodDefinition selector ]. + PBSubStepFinishedSignal log: logMessage. + + self installMethod: compiledMethod inBehavior: behaviorMirror ] +] + +{ #category : #running } +PBImageBuilder50 >> installMethod: method inBehavior: theClass [ + + | timePerMethod | + timePerMethod := [self objectSpace interpreter + evaluateCode: 'theBehavior addSelectorSilently: selector withMethod: compiledMethod' + withTemps: { + 'theBehavior' -> theClass. + 'selector' -> (method selector asLiteralInObjectSpace: objectSpace). + 'compiledMethod' -> method }] timeToRun. + + statistics addMethodTime: timePerMethod. +] + +{ #category : #running } +PBImageBuilder50 >> installMethods [ + + | definitions total | + definitions := self systemDefinition allClassesAndTraits sorted: [ :a :b | a name < b name ]. + total := definitions size. + definitions withIndexDo: [ :aClassDefinition :index | + "self checkpoint: 'installed_methods_wip'." + self installMethodsInBehaviorDefinition: aClassDefinition prefixed: (index printPaddedWith: $0 to: 3), '/' , total asString. + ]. + PBStepFinishedSignal log: 'installed_methods'. + self checkpoint: 'installed_methods'. +] + +{ #category : #running } +PBImageBuilder50 >> installMethodsInBehaviorDefinition: behaviorDefinition prefixed: aPrefix [ + | behaviorMirror | + behaviorMirror := bootstrapEnvironment at: behaviorDefinition name. + self + installMethodsInBehaviorMapping: behaviorDefinition + using: self methodBuilder + onMirror: behaviorMirror + prefixed: aPrefix. + self + installMethodsInBehaviorMapping: behaviorDefinition classSide + using: self methodBuilder + onMirror: behaviorMirror basicClass + prefixed: aPrefix. +] + +{ #category : #running } +PBImageBuilder50 >> installMethodsInBehaviorMapping: aBehaviorMapping using: aMethodBuilder onMirror: mirror prefixed: aPrefix [ + | newMethods theClass | + newMethods := (aMethodBuilder methodsFromDefinition: aBehaviorMapping) sorted: [ :a :b | a selector < b selector ]. + theClass := (self classNamed: aBehaviorMapping theNonMetaClass name) mirror. + aBehaviorMapping isMeta ifTrue: [ theClass := theClass classSide ]. + newMethods doWithIndex: [ :method :index | + PBSubStepFinishedSignal log: aPrefix, ' - ', index asString, '/', newMethods size asString, ': Installing method ', + aBehaviorMapping name, '>>', method selector. + + self installMethod: method inBehavior: theClass. + ]. +] + +{ #category : #'initialize-release' } +PBImageBuilder50 >> instantiateClassLoader [ + + classLoader := PBClassLoader new. +] + +{ #category : #testing } +PBImageBuilder50 >> isMeta: aMirror [ + + ^ (self classNamed: #Metaclass) mirror = aMirror basicClass +] + +{ #category : #helpers } +PBImageBuilder50 >> log: aLogStatement [ + + logger log: aLogStatement +] + +{ #category : #accessing } +PBImageBuilder50 >> metaclassForClassMirror: anEPClassMirror [ + + ^ EPRemoteMetaClass on: anEPClassMirror environment: self +] + +{ #category : #accessing } +PBImageBuilder50 >> methodBuilder [ + ^ PBMethodCompiler new builder: self; yourself. +] + +{ #category : #accessing } +PBImageBuilder50 >> objectSpace [ + ^ objectSpace +] + +{ #category : #accessing } +PBImageBuilder50 >> statistics [ + + ^ statistics +] + +{ #category : #definition } +PBImageBuilder50 >> systemDefinition [ + + ^ systemDefinition +] + +{ #category : #accessing } +PBImageBuilder50 >> systemDefinition: anObject [ + systemDefinition := anObject +] + +{ #category : #accessing } +PBImageBuilder50 >> versionInfo [ + ^ versionInfo +] + +{ #category : #accessing } +PBImageBuilder50 >> versionInfo: anObject [ + versionInfo := anObject +] + +{ #category : #visiting } +PBImageBuilder50 >> visitClass: aRFiClass [ + ^ EPRemoteClass + on: (classLoader classNamed: aRFiClass name) + environment: self +] + +{ #category : #visiting } +PBImageBuilder50 >> visitTrait: aRFiTrait [ + ^ EPRemoteTrait + on: (classLoader classNamed: aRFiTrait name) + environment: self +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur50.class.st b/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur50.class.st new file mode 100644 index 00000000000..d4a381dd3ce --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur50.class.st @@ -0,0 +1,526 @@ +" +I implement the initial image building for Spur VMs. I'm an abstract class. My subclasses implement specifics about 32 and 64 bit images. +" +Class { + #name : #PBImageBuilderSpur50, + #superclass : #PBImageBuilder50, + #instVars : [ + 'nextOrdinaryClassIndex', + 'freeListsOop' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #examples } +PBImageBuilderSpur50 class >> example5617 [ + + | vm om | + vm := StackInterpreterSimulator newWithOptions: #(#ObjectMemory #Spur32BitMemoryManager ). + om := vm objectMemory. + vm desiredNumStackPages: 8. "Makes simulation faster by creating fewer stack pages." + vm instVarNamed: 'assertVEPAES' put: false. + vm initStackPages. + PBImageBuilderSpur50 new + version: '5.617'; + espellBackend: (EPSimulatorBackend simulator: vm) + forBootstrap; + bootstrap. +] + +{ #category : #'instance-creation' } +PBImageBuilderSpur50 class >> forArchitecture: architecture [ + + | candidates | + candidates := self subclasses select: [ :sc | sc name endsWith: architecture, 'bit' ]. + + candidates + ifEmpty: [ self error: 'No candidates for architecture: ', architecture ]. + candidates size > 1 + ifTrue: [ self error: 'More than one candidate for architecture: ', architecture ]. + + ^ candidates anyOne new +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> allocateClassTable [ + "Allocate the root of the classTable plus enough pages to accomodate all classes in + the classToIndex map. Don't fill in the entries yet; the classes have yet to be cloned." + | tableRoot page maxSize numPages newHeap newOop | + newHeap := objectSpace backend simulator objectMemory. + tableRoot := newHeap + allocateSlots: newHeap classTableRootSlots + newHeap hiddenRootSlots + format: newHeap arrayFormat + classIndex: newHeap arrayClassIndexPun. + newOop := tableRoot. + self haltIf: [ newOop = 4239888 ]. + self assert: (newHeap numSlotsOf: tableRoot) = (newHeap classTableRootSlots + newHeap hiddenRootSlots). + self assert: (newHeap formatOf: tableRoot) = newHeap arrayFormat. + self assert: (newHeap classIndexOf: tableRoot) = newHeap arrayClassIndexPun. + newHeap nilFieldsOf: tableRoot. + "first page is strong" + page := newHeap + allocateSlots: newHeap classTablePageSize + format: newHeap arrayFormat + classIndex: newHeap arrayClassIndexPun. + self assert: (newHeap numSlotsOf: page) = newHeap classTablePageSize. + self assert: (newHeap formatOf: tableRoot) = newHeap arrayFormat. + self assert: (newHeap classIndexOf: tableRoot) = newHeap arrayClassIndexPun. + self assert: (newHeap objectAfter: tableRoot limit: newHeap freeStart) = page. + "lastClassTablePage := page." + newHeap nilFieldsOf: page. + newHeap storePointer: 0 ofObject: tableRoot withValue: page. + newHeap setHiddenRootsObj: tableRoot. + + "this should actually take into account special indexes and immediate classes. + Skipped for the moment" + maxSize := (1 << self objectMemory classTableMajorIndexShift) + (self systemDefinition allClasses size * 2). + + numPages := (maxSize + newHeap classTableMinorIndexMask / newHeap classTablePageSize) truncated. + 2 to: numPages do: + [:i| + page := newHeap + allocateSlots: newHeap classTablePageSize + format: newHeap arrayFormat + classIndex: newHeap arrayClassIndexPun. + self assert: (newHeap numSlotsOf: page) = newHeap classTablePageSize. + self assert: (newHeap formatOf: page) = newHeap arrayFormat. + self assert: (newHeap classIndexOf: page) = newHeap arrayClassIndexPun. + newHeap fillObj: page numSlots: newHeap classTablePageSize with: newHeap nilObject. + newHeap storePointer: i - 1 ofObject: tableRoot withValue: page. + self assert: (newHeap objectAfter: (newHeap fetchPointer: i - 2 ofObject: tableRoot) limit: newHeap freeStart) = page. + "lastClassTablePage := page"]. + "and once again to recompute numClassTablePages post building the class table." + newHeap instVarNamed: 'numClassTablePages' put: nil. + newHeap setHiddenRootsObj: tableRoot +] + +{ #category : #running } +PBImageBuilderSpur50 >> allocateFreeLists [ + "Allocate the freeLists array." + | newOop | + freeListsOop := self objectMemory + allocateSlots: objectSpace backend simulator objectMemory numFreeLists + format: objectSpace backend simulator objectMemory wordIndexableFormat + classIndex: objectSpace backend simulator objectMemory wordSizeClassIndexPun. + self assert: (self objectMemory objectAfter: objectSpace backend trueObject target address) = freeListsOop. + newOop := freeListsOop. + self haltIf: [ newOop = 4239888 ]. + 0 to: objectSpace backend simulator objectMemory numFreeLists - 1 do: + [:i| + self objectMemory + storePointerUnchecked: i + ofObject: freeListsOop + withValue: 0]. + self objectMemory initializeFreeSpacePostLoad: freeListsOop. +] + +{ #category : #'class-indexes' } +PBImageBuilderSpur50 >> arrayClassIndex [ + + ^ self objectMemory arrayClassIndexPun +] + +{ #category : #'final steps' } +PBImageBuilderSpur50 >> compactImage [ + | firstFree lastUsed newHeap | + newHeap := espellBackend objectMemory. + newHeap allHeapEntitiesDo: + [:o| + (newHeap isFreeObject: o) + ifTrue: [firstFree ifNil: [firstFree := o]] + ifFalse: [lastUsed := o]]. + lastUsed < firstFree ifTrue: "nothing to do" + [^self]. +] + +{ #category : #running } +PBImageBuilderSpur50 >> createBehaviorFromDefinition: aRFiDefinition [ + + [ ^ super createBehaviorFromDefinition: aRFiDefinition ] + on: AssertionFailure do: [ :e | + ((e signalerContext method selector == #assert:) + and: [ e signalerContext sender method selector = #mapStackPages ]) ifFalse: [ e pass ]] +] + +{ #category : #running } +PBImageBuilderSpur50 >> createFalse [ + + "False format should be changed and calculated depending on the image" + | falseClassIndex falseObject newOop | + falseClassIndex := self nextOrdinaryClassIndex. + falseObject := self objectSpace backend + createObjectWithFormat: False format withSize: 0 classIndex: falseClassIndex. + objectSpace falseObject: falseObject. + ^ objectSpace falseObject + +] + +{ #category : #running } +PBImageBuilderSpur50 >> createNil [ + + "UndefinedObject format should be changed and calculated depending on the image" + | undefinedObjectClassIndex nilObject newOop | + undefinedObjectClassIndex := self nextOrdinaryClassIndex. + nilObject := self objectSpace backend + createObjectWithFormat: UndefinedObject format withSize: 0 classIndex: undefinedObjectClassIndex. + objectSpace nilObject: nilObject. + ^ objectSpace nilObject +] + +{ #category : #running } +PBImageBuilderSpur50 >> createTrue [ + + "True format should be changed and calculated depending on the image" + | trueClassIndex trueObject newOop | + trueClassIndex := self nextOrdinaryClassIndex. + trueObject := self objectSpace backend + createObjectWithFormat: True format withSize: 0 classIndex: trueClassIndex. + objectSpace trueObject: trueObject. + ^ objectSpace trueObject + +] + +{ #category : #running } +PBImageBuilderSpur50 >> createVMStubs [ + + | specialObjectsArray | + super log: 'creating initial Objects needed by the VM'. + + self createNil. + self createFalse. + self createTrue. + + self allocateFreeLists. + self allocateClassTable. + + specialObjectsArray := self objectSpace backend + createObjectWithFormat: Array format withSize: 60 classIndex: self arrayClassIndex. + objectSpace specialObjectsArray: specialObjectsArray. + objectSpace nilObject: objectSpace nilObject. + objectSpace falseObject: objectSpace falseObject. + objectSpace trueObject: objectSpace trueObject. + + objectSpace nilObject setClass: (self createStubForClassNamed: #UndefinedObject). + objectSpace falseObject setClass: (self createStubForClassNamed: #False). + objectSpace trueObject setClass: (self createStubForClassNamed: #True). + + + objectSpace backend smallIntegerClass: (self createStubForClassNamed: #SmallInteger). + objectSpace backend characterClass: (self createStubForClassNamed: #Character). + objectSpace backend byteSymbolClass: (self createStubForClassNamed: #ByteSymbol). + objectSpace backend byteStringClass: (self createStubForClassNamed: #ByteString). + objectSpace backend byteArrayClass: (self createStubForClassNamed: #ByteArray). + objectSpace backend associationClass: (self createStubForClassNamed: #Association). + objectSpace backend arrayClass: (self createStubForClassNamed: #Array). + objectSpace backend symbolTableClass: (self createStubForClassNamed: #Symbol). + objectSpace backend largeNegativeIntegerClass: (self createStubForClassNamed: #LargeNegativeInteger). + objectSpace backend largePositiveIntegerClass: (self createStubForClassNamed: #LargePositiveInteger). + objectSpace backend methodClass: (self createStubForClassNamed: #CompiledMethod). + objectSpace backend floatClass: (self createStubForClassNamed: #BoxedFloat64). + objectSpace backend contextClass: (self createStubForClassNamed: #Context). + objectSpace backend processClass: (self createStubForClassNamed: #Process). + objectSpace backend blockClass: (self createStubForClassNamed: #BlockClosure). + objectSpace backend fullBlockClass: (self createStubForClassNamed: #FullBlockClosure). + objectSpace backend messageClass: (self createStubForClassNamed: #Message). + objectSpace backend semaphoreClass: (self createStubForClassNamed: #Semaphore). + + "Point is required in the special objects array because it is used to instantiate point objects faster. + If we do not put it here, the VM will crash. + Lots of tests in kernel use it." + objectSpace backend pointClass: (self createStubForClassNamed: #Point). + + objectSpace backend processorAssociation: (self classNamed: #Association) mirror basicNew. + objectSpace backend processorAssociation + instanceVariableAtIndex: 2 put: (self createStubForClassNamed: #ProcessorScheduler) basicNew. + + objectSpace backend specialSelectors: ((self classNamed: #Array) mirror basicNew: 64) +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> errorMessagesArray [ + + "return objects for error messages - special objects array at index 52" + + ^ {nil "nil => generic error". + #'bad receiver'. #'bad argument'. #'bad index'. + #'bad number of arguments'. + #'inappropriate operation'. #'unsupported operation'. + #'no modification'. #'insufficient object memory'. + #'insufficient C memory'. #'not found'. #'bad method'. + #'internal error in named primitive machinery'. + #'object may move'. #'resource limit exceeded'. + #'object is pinned'. #'primitive write beyond end of object'. + #'object moved'. #'object not pinned'. #'callback error'} asLiteralInObjectSpace: objectSpace +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> firstOrdinaryClassIndex [ + + ^ self objectMemory classTablePageSize +] + +{ #category : #running } +PBImageBuilderSpur50 >> flushNewSpace [ + + | newHeap | + self checkpoint: 'created_vm_objects'. + + newHeap := espellBackend objectMemory. + newHeap initializePostBootstrap. + + espellBackend simulator initializeInterpreter: 0. + espellBackend simulator instVarNamed: 'methodDictLinearSearchLimit' put: SmallInteger maxVal. + + "try to move nil, true and false to the new space" + newHeap flushNewSpace. + + self + assert: (espellBackend simulator objectMemory objectStartingAt: espellBackend simulator objectMemory oldSpaceStart) + = objectSpace nilObject target address. + + self + assert: (espellBackend simulator objectMemory objectAfter: objectSpace nilObject target address) + = objectSpace falseObject target address. + + self + assert: (espellBackend simulator objectMemory objectAfter: objectSpace falseObject target address) + = objectSpace trueObject target address. + + objectSpace backend initializeExecutionContext. + self prepareSimulatorForExecution. +] + +{ #category : #'final steps' } +PBImageBuilderSpur50 >> followForwardingPointers [ + | newHeap | + newHeap := espellBackend objectMemory. + newHeap allObjectsDo: [:o| + (newHeap isForwarded: o) ifFalse: + [0 to: (newHeap numPointerSlotsOf: o) - 1 do: + [:i| | field | + field := newHeap fetchPointer: i ofObject: o. + (newHeap isOopForwarded: field) ifTrue: + [newHeap + storePointer: i + ofObject: o + withValue: (newHeap followForwarded: field)]]]]. +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> formatOfClass: aRFiClass [ + + "A class format is composed by" + "<5 bits inst spec><16 bits inst size>" + | newHeap instSize newInstSpec | + + newHeap := objectSpace backend simulator objectMemory. + + ((aRFiClass name = 'SmallInteger') + or: [(aRFiClass name = 'Character') + or: [aRFiClass name = 'SmallFloat64']]) ifTrue: + [^ newHeap integerObjectOf: newHeap instSpecForImmediateClasses << 16]. + instSize := aRFiClass instSize. + newInstSpec := self instSpecOfClass: aRFiClass. + ^newInstSpec << 16 + instSize +] + +{ #category : #'final step' } +PBImageBuilderSpur50 >> freeForwarders [ + "Check that all forwarders have been followed. Then free them." + | numForwarders numFreed newHeap | + numForwarders := numFreed := 0. + newHeap := espellBackend objectMemory. + newHeap allObjectsDo: + [:o| + (newHeap isForwarded: o) + ifTrue: [numForwarders := numForwarders + 1] + ifFalse: + [0 to: (newHeap numPointerSlotsOf: o) - 1 do: + [:i| + self assert: (newHeap isOopForwarded: (newHeap fetchPointer: i ofObject: o)) not]]]. + Transcript cr; nextPutAll: 'freeing '; print: numForwarders; nextPutAll: ' forwarders'; cr; flush. + newHeap allObjectsDo: + [:o| + (newHeap isForwarded: o) ifTrue: + [numFreed := numFreed + 1. + newHeap freeObject: o]]. + self assert: numFreed = numForwarders +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> instSpecOfClass: aRFiClass [ + + "NEW: + 0 = 0 sized objects (UndefinedObject True False et al) + 1 = non-indexable objects with inst vars (Point et al) + 2 = indexable objects with no inst vars (Array et al) + 3 = indexable objects with inst vars (MethodContext AdditionalMethodState et al) + 4 = weak indexable objects with inst vars (WeakArray et al) + 5 = weak non-indexable objects with inst vars (ephemerons) (Ephemeron) + 6 = reserved + 7 = forwarder format (also immediate class format) + 9 64-bit indexable + 10 - 11 32-bit indexable + 12 - 15 16-bit indexable + 16 - 23 byte indexable + 24 - 31 compiled method" + (aRFiClass isBytes) ifTrue: [ ^ 16 ]. + (aRFiClass isWords) ifTrue: [ ^ 10 ]. + (aRFiClass isCompiledMethod) ifTrue: [ ^ 24 ]. + (aRFiClass isEphemeron) ifTrue: [ ^ 5 ]. + (aRFiClass instSize = 0 and: [ aRFiClass isVariable not ]) ifTrue: [ ^ 0 ]. + (aRFiClass instSize > 0 and: [ aRFiClass isVariable not ]) ifTrue: [ ^ 1 ]. + (aRFiClass instSize = 0 and: [ aRFiClass isVariable ]) ifTrue: [ ^ 2 ]. + (aRFiClass instSize > 0 and: [ aRFiClass isVariable ]) ifTrue: [ ^ 3 ]. + (aRFiClass instSize > 0 and: [ aRFiClass isVariable and: [ aRFiClass isWeak ] ]) ifTrue: [ ^ 4 ]. + (aRFiClass instSize > 0 and: [ aRFiClass isVariable not and: [ aRFiClass isWeak ] ]) ifTrue: [ ^ 5 ]. + self error: 'illegal old format' +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> instantiateClassLoader [ + + classLoader := PBSpurClassLoader new. +] + +{ #category : #'instance creation' } +PBImageBuilderSpur50 >> newSpecialObjectsArray [ + | newSpecialObjectsArray | + newSpecialObjectsArray := espellBackend arrayClass asClassMirror basicNew: 60. + newSpecialObjectsArray at: 1 put: espellBackend nilObject. + newSpecialObjectsArray at: 2 put: espellBackend falseObject. + newSpecialObjectsArray at: 3 put: espellBackend trueObject. + newSpecialObjectsArray + at: 4 + put: espellBackend processorAssociation. + newSpecialObjectsArray at: 5 put: espellBackend nilObject. + newSpecialObjectsArray at: 6 put: espellBackend smallIntegerClass. + newSpecialObjectsArray at: 7 put: espellBackend byteStringClass. + newSpecialObjectsArray at: 8 put: espellBackend arrayClass. + newSpecialObjectsArray at: 9 put: espellBackend smalltalkInstance. + newSpecialObjectsArray at: 10 put: espellBackend floatClass. + newSpecialObjectsArray at: 11 put: espellBackend contextClass. + newSpecialObjectsArray at: 12 put: espellBackend nilObject. + newSpecialObjectsArray at: 13 put: espellBackend pointClass. + newSpecialObjectsArray at: 14 put: espellBackend largePositiveIntegerClass. + newSpecialObjectsArray at: 15 put: espellBackend nilObject. + newSpecialObjectsArray at: 16 put: espellBackend messageClass. + newSpecialObjectsArray at: 17 put: espellBackend methodClass. + newSpecialObjectsArray at: 18 put: espellBackend nilObject. + newSpecialObjectsArray at: 19 put: espellBackend semaphoreClass. + newSpecialObjectsArray at: 20 put: espellBackend characterClass. + newSpecialObjectsArray at: 21 put: (#doesNotUnderstand: asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 22 put: (#cannotReturn: asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 23 put: espellBackend nilObject. + newSpecialObjectsArray at: 24 put: (#(#+ 1 #- 1 #< 1 #> 1 #'<=' 1 #'>=' 1 #= 1 #'~=' 1 #* 1 #/ 1 #'\\' 1 #@ 1 #bitShift: 1 #'//' 1 #bitAnd: 1 #bitOr: 1 #at: 1 #at:put: 2 #size 0 #next 0 #nextPut: 1 #atEnd 0 #'==' 1 nil 0 #'~~' 1 #value 0 #value: 1 #do: 1 #new 0 #new: 1 #x 0 #y 0) asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray + at: 25 + put: espellBackend characterTable. "character table" + newSpecialObjectsArray at: 26 put: (#mustBeBoolean asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 27 put: espellBackend byteArrayClass. + newSpecialObjectsArray at: 28 put: espellBackend processClass. + newSpecialObjectsArray at: 29 put: (espellBackend arrayClass basicNew: 0). + 30 to: 56 do: [ :idx | newSpecialObjectsArray at: idx put: espellBackend nilObject ]. + newSpecialObjectsArray at: 37 put: espellBackend blockClass. + "External semaphore table" + newSpecialObjectsArray at: 39 put: (espellBackend arrayClass asClassMirror basicNew: 20 ). + newSpecialObjectsArray at: 43 put: espellBackend largeNegativeIntegerClass. + newSpecialObjectsArray at: 49 put: (#aboutToReturn:through: asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 50 put: (#run:with:in: asLiteralInObjectSpace: objectSpace). + self flag: #'add WeakFinalization list'. + newSpecialObjectsArray at: 51 put: (#attemptToAssign:withIndex: asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 52 put: self errorMessagesArray. + newSpecialObjectsArray at: 54 put: (#invokeCallbackContext: asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 58 put: (#unusedBytecode asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 59 put: (#conditionalBranchCounterTrippedOn: asLiteralInObjectSpace: objectSpace). + newSpecialObjectsArray at: 60 put: (#classTrapFor: asLiteralInObjectSpace: objectSpace). + + ^newSpecialObjectsArray. +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> nextOrdinaryClassIndex [ + + | result | + nextOrdinaryClassIndex ifNil: [ nextOrdinaryClassIndex := self firstOrdinaryClassIndex ]. + result := nextOrdinaryClassIndex. + nextOrdinaryClassIndex := nextOrdinaryClassIndex + 1. + ^ result +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> objectMemory [ + + ^ espellBackend simulator objectMemory +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> prepareSimulatorForExecution [ + + | savedEndOfMemory | + self objectMemory initializePostBootstrap. + + "savedEndOfMemory := self objectMemory endOfMemory. + self objectMemory setEndOfMemory: self objectMemory freeOldSpaceStart. + self objectMemory setEndOfMemory: savedEndOfMemory." +" self objectMemory interpreter initializeInterpreter: 0. +" self objectMemory + initializeNewSpaceVariables; + bootstrapping: false; + assimilateNewSegment: (self objectMemory segmentManager segments at: 0); + setCheckForLeaks: 0; + runLeakCheckerForFullGC. +] + +{ #category : #'final steps' } +PBImageBuilderSpur50 >> reportSizes [ + | oldAvgBytes "newAvgBytes" newHeapSize newHeap | + newHeapSize := 20 * 1024 * 1024. + newHeap := espellBackend objectMemory. + Transcript + nextPutAll: 'done.'; cr; + nextPutAll: 'initial heap size: '; nextPutAll: newHeapSize asStringWithCommas; cr; +" nextPutAll: 'change: '; print: change * 100.0 maxDecimalPlaces: 2; nextPut: $%; cr;" + flush. + newHeapSize := newHeap endOfMemory + - newHeap scavenger eden limit + - newHeap totalFreeListBytes. +" newAvgBytes := newHeapSize asFloat / newHeapNumObjs." + Transcript + nextPutAll: 'final new heap size: '; nextPutAll: newHeapSize asStringWithCommas; tab; + " nextPutAll: ' (avg obj bytes '; print: newAvgBytes maxDecimalPlaces: 2; nextPutAll: ' words '; print: newAvgBytes / self wordSize maxDecimalPlaces: 2; nextPut: $); cr; +"" nextPutAll: 'change: '; print: change * 100.0 maxDecimalPlaces: 2; nextPut: $%; cr;" + flush +] + +{ #category : #'as yet unclassified' } +PBImageBuilderSpur50 >> writeSnapshot: imageFileName ofTransformedImage: spurHeap headerFlags: headerFlags screenSize: screenSizeInteger [ + "The bootstrapped image typically contains a few big free chunks and one huge free chunk. + Test snapshot writing and loading by turning the largest non-huge chunks into segment bridges + and saving." + | penultimate ultimate sim | +" [ spurHeap flushNewSpace. ] + on: Halt + do: [:ex|" + "suppress halts from the usual suspects (development time halts)" +" (#(#fullGC #compactImage #doScavenge:) includes: ex signalerContext sender selector) + ifTrue: [ex resume] + ifFalse: [ex pass]]." + sim := spurHeap coInterpreter. + sim bootstrapping: true. + spurHeap + setEndOfMemory: spurHeap endOfMemory + spurHeap bridgeSize. "hack; initializeInterpreter: cuts it back by bridgeSize" + sim initializeInterpreter: 0; + setImageHeaderFlagsFrom: headerFlags; + setSavedWindowSize: (800<<16)+600; + setDisplayForm: nil. + spurHeap allOldSpaceEntitiesDo: [:e| penultimate := ultimate. ultimate := e]. + "Check that we've left behind the old, pre-pigCompact segmented save" + self assert: (spurHeap isFreeObject: penultimate) not. + spurHeap checkFreeSpace. + spurHeap runLeakCheckerForFullGC. + sim bereaveAllMarriedContextsForSnapshotFlushingExternalPrimitivesIf: true. + sim imageName: imageFileName. + sim writeImageFileIO. + Transcript cr; show: 'Done!' +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5032bit.class.st b/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5032bit.class.st new file mode 100644 index 00000000000..b6c11a28c4e --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5032bit.class.st @@ -0,0 +1,14 @@ +" +I create pharo images for Spur VMs in 32bit format. +" +Class { + #name : #PBImageBuilderSpur5032bit, + #superclass : #PBImageBuilderSpur50, + #category : 'Pharo30Bootstrap' +} + +{ #category : #initialization } +PBImageBuilderSpur5032bit >> initializeBackend [ + + espellBackend := EPSimulatorBackend for32Bit forBootstrap +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5064bit.class.st b/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5064bit.class.st new file mode 100644 index 00000000000..cf9748f31af --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBImageBuilderSpur5064bit.class.st @@ -0,0 +1,21 @@ +" +I create pharo images for Spur VMs in 64bit format. +" +Class { + #name : #PBImageBuilderSpur5064bit, + #superclass : #PBImageBuilderSpur50, + #category : 'Pharo30Bootstrap' +} + +{ #category : #running } +PBImageBuilderSpur5064bit >> createVMStubs [ + + super createVMStubs. + objectSpace backend smallFloatClass: (self createStubForClassNamed: #SmallFloat64). +] + +{ #category : #initialization } +PBImageBuilderSpur5064bit >> initializeBackend [ + + espellBackend := EPSimulatorBackend for64Bit forBootstrap +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBInstanceVariableMapping.class.st b/bootstrap/src/Pharo30Bootstrap/PBInstanceVariableMapping.class.st new file mode 100644 index 00000000000..84429e2b985 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBInstanceVariableMapping.class.st @@ -0,0 +1,237 @@ +Class { + #name : #PBInstanceVariableMapping, + #superclass : #Object, + #instVars : [ + 'environment', + 'contextPcIndex', + 'contextReceiverIndex', + 'processContextIndex', + 'classMethodDictionaryIndex', + 'classSuperclassIndex', + 'processNameIndex', + 'traitClassTraitIndex', + 'traitMethodDictionaryIndex', + 'contextSenderIndex', + 'classPoolIndex', + 'contextStackpIndex', + 'contextMethodIndex', + 'classNameIndex', + 'processSchedulerActiveProcessIndex', + 'processPriorityIndex', + 'contextClosureOrNilIndex', + 'classFormatIndex', + 'processPriorityListIndex', + 'processNextLinkIndex', + 'traitNameIndex', + 'smalltalkImageGlobalsIndex', + 'classSharedPoolsIndex', + 'classNumberOfVariables', + 'classInstanceVariableNamesIndex', + 'dictionaryArrayIndex', + 'listOfClassSlots' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #'instance-creation' } +PBInstanceVariableMapping class >> onEnvironment: aRingEnvironment [ + ^ self new + environment: aRingEnvironment; + initializeIndexes; + yourself. +] + +{ #category : #initialization } +PBInstanceVariableMapping >> allSlotsOf: aClassName [ + + ^ ((environment classNamed: aClassName) allSlots collect: [ :e | e name ]) joinUsing: ' '. +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classFormatIndex [ + ^ classFormatIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classInstanceVariableNamesIndex [ + ^ classInstanceVariableNamesIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classMethodDictionaryIndex [ + ^ classMethodDictionaryIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classNameIndex [ + ^ classNameIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classNumberOfVariables [ + ^ classNumberOfVariables +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classPoolIndex [ + ^ classPoolIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classSharedPoolsIndex [ + ^ classSharedPoolsIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> classSuperclassIndex [ + ^ classSuperclassIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> contextClosureOrNilIndex [ + ^ contextClosureOrNilIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> contextMethodIndex [ + ^ contextMethodIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> contextPcIndex [ + ^ contextPcIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> contextReceiverIndex [ + ^ contextReceiverIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> contextSenderIndex [ + ^ contextSenderIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> contextStackpIndex [ + ^ contextStackpIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> dictionaryArrayIndex [ + ^ dictionaryArrayIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> environment [ + ^ environment +] + +{ #category : #accessing } +PBInstanceVariableMapping >> environment: aRingEnvironment [ + environment := aRingEnvironment +] + +{ #category : #initialization } +PBInstanceVariableMapping >> initializeIndexes [ + contextPcIndex := self lookup: #pc in: #Context. + contextReceiverIndex := self lookup: #receiver in: #Context. + processContextIndex := self lookup: #suspendedContext in: #Process. + classMethodDictionaryIndex := self lookup: #methodDict in: #Class. + classSuperclassIndex := self lookup: #superclass in: #Class. + processNameIndex := self lookup: #name in: #Process. + traitClassTraitIndex := self lookup: #classTrait in: #Trait. + traitMethodDictionaryIndex := self lookup: #methodDict in: #Trait. + contextSenderIndex := self lookup: #sender in: #Context. + classPoolIndex := self lookup: #classPool in: #Class. + contextStackpIndex := self lookup: #stackp in: #Context. + contextMethodIndex := self lookup: #method in: #Context. + classNameIndex := self lookup: #name in: #Class. + processSchedulerActiveProcessIndex := self lookup: #activeProcess in: #ProcessorScheduler. + processPriorityIndex := self lookup: #priority in: #Process. + contextClosureOrNilIndex := self lookup: #closureOrNil in: #Context. + classFormatIndex := self lookup: #format in: #Class. + processPriorityListIndex := self lookup: #myList in: #Process. + processNextLinkIndex := self lookup: #nextLink in: #Process. + traitNameIndex := self lookup: #name in: #Trait. + + smalltalkImageGlobalsIndex := self lookup: #globals in: #SmalltalkImage. + classSharedPoolsIndex := self lookup: #sharedPools in: #Class. + classNumberOfVariables := self numberOfInstanceVariablesOf: #Class. + classInstanceVariableNamesIndex := self lookup: #instanceVariableNames in: #Class. + dictionaryArrayIndex := self lookup: #array in: #Dictionary. + + listOfClassSlots := self allSlotsOf: #Class. +] + +{ #category : #accessing } +PBInstanceVariableMapping >> listOfClassSlots [ + ^ listOfClassSlots +] + +{ #category : #initialization } +PBInstanceVariableMapping >> lookup: anInstanceVariable in: aClass [ + | slot | + + "I lookup the indices in the RGEnvironment, if one of the classes does not exists (like Traits) I put nil, I should not explode. + If it explode we have a problem." + slot := (environment ask behaviorNamed: aClass ifAbsent: [ ^nil ]) allSlots + detect: [ :x | x name = anInstanceVariable ] + ifNone: [ ^ nil ]. + ^ slot index +] + +{ #category : #initialize } +PBInstanceVariableMapping >> numberOfInstanceVariablesOf: aClassName [ + ^ (environment classNamed: aClassName) allSlots size +] + +{ #category : #accessing } +PBInstanceVariableMapping >> processContextIndex [ + ^ processContextIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> processNameIndex [ + ^ processNameIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> processNextLinkIndex [ + ^ processNextLinkIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> processPriorityIndex [ + ^ processPriorityIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> processPriorityListIndex [ + ^ processPriorityListIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> processSchedulerActiveProcessIndex [ + ^ processSchedulerActiveProcessIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> smalltalkImageGlobalsIndex [ + ^ smalltalkImageGlobalsIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> traitClassTraitIndex [ + ^ traitClassTraitIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> traitMethodDictionaryIndex [ + ^ traitMethodDictionaryIndex +] + +{ #category : #accessing } +PBInstanceVariableMapping >> traitNameIndex [ + ^ traitNameIndex +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBMethodCompiler.class.st b/bootstrap/src/Pharo30Bootstrap/PBMethodCompiler.class.st new file mode 100644 index 00000000000..a2ec6391439 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBMethodCompiler.class.st @@ -0,0 +1,84 @@ +Class { + #name : #PBMethodCompiler, + #superclass : #Object, + #instVars : [ + 'builder', + 'packages' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #selection } +PBMethodCompiler >> buildPackagesList [ + | classes | + classes := builder behaviorDefinitions. + ^((Smalltalk at: #MCWorkingCopy ifAbsent: [ ^#() ] ) + allManagers + select: [ :m | classes anySatisfy: [ :c | m packageInfo includesClassNamed: c name ] ] + thenCollect: [ :m | m packageInfo packageName asUppercase ]) asSet asOrderedCollection. +] + +{ #category : #accessing } +PBMethodCompiler >> builder: aBuilder [ + builder := aBuilder +] + +{ #category : #'method-compiling' } +PBMethodCompiler >> createNewMethod: aMethodDefinition [ + +" | ownerClass | +"" ownerClass := builder behaviorFrom: aMethodDefinition methodClass theNonMetaClass." +" aMethodDefinition methodClass isMeta ifTrue: [ ownerClass := ownerClass classSide ]. +" + | method timeToCompile | + timeToCompile := [ method := builder objectSpace crossCompiler + compile: aMethodDefinition sourceCode + forClass: aMethodDefinition methodClass + inEnvironment: builder] timeToRun. + builder statistics addCompilationTime: timeToCompile. + ^ method +] + +{ #category : #'method-compiling' } +PBMethodCompiler >> methodsForBehavior: aBehavior [ + "Get all the methods we consider we want from the current environment and return a copy, binded to the new class" + ^ aBehavior methods + reject: [ :m | (self shouldMethodBeRemoved: m) or: [m selector = #trace:on:] ] + thenCollect: [ :m | self createNewMethod: m ]. +] + +{ #category : #'method-compiling' } +PBMethodCompiler >> methodsFromDefinition: aBehaviorDefinition [ + "Get all the methods we consider we want from the current environment and return a copy, binded to the new class" + ^ aBehaviorDefinition localMethods + collect: [ :m | self createNewMethod: m ]. +] + +{ #category : #selection } +PBMethodCompiler >> packages [ + ^packages ifNil: [packages := self buildPackagesList] +] + +{ #category : #selection } +PBMethodCompiler >> shouldMethodBeRemoved: aMethod [ + | category | + + category := aMethod category ifNil: [ ^false ]. + + (category asUppercase beginsWith: '*ImageWriter' asUppercase) ifTrue: [ ^false ]. + + Smalltalk at: #MCWorkingCopy ifAbsent: [ ^false ]. + + "Remove bad extensions" + (category beginsWith: '*') ifTrue: [ | copy | + copy := category allButFirst. + [ + (self packages anySatisfy: [ :cat | copy asUppercase beginsWith: cat asUppercase ]) + ifTrue: [ ^ false ]. + copy := '-' join: (copy subStrings: '-') allButLast. + ] doWhileTrue: [ copy notEmpty ]. + ^true + ]. + + ^ false +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBOldExtendedBootstrap.class.st b/bootstrap/src/Pharo30Bootstrap/PBOldExtendedBootstrap.class.st new file mode 100644 index 00000000000..3d8e23c1d88 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBOldExtendedBootstrap.class.st @@ -0,0 +1,328 @@ +Class { + #name : #PBOldExtendedBootstrap, + #superclass : #PBBootstrap, + #category : 'Pharo30Bootstrap' +} + +{ #category : #bootstrap } +PBOldExtendedBootstrap >> bootstrap [ + + self + prepareBootstrap; + createImage; + initializeImage. +] + +{ #category : #'image-management' } +PBOldExtendedBootstrap >> bootstrapImageDo: arguments [ + OSSUnixSubprocess new + command: 'pharo-vm/pharo'; + arguments: { '--nodisplay'. imageReference fullName }, arguments; + redirectStdout; + redirectStderr; + runAndWaitPollingEvery: 50 milliSeconds + retrievingStreams: true + onExitDo: [ :process :outString :errString | + process isSuccess + ifTrue: [ ^ outString ] + ifFalse: [ self error: outString , errString ] ] +] + +{ #category : #'image-management' } +PBOldExtendedBootstrap >> bootstrapImageEval: aString [ + + ^ self bootstrapImageEval: aString save: false quit: false +] + +{ #category : #'image-management' } +PBOldExtendedBootstrap >> bootstrapImageEval: aString save: save quit: quit [ + + | arguments | + arguments := { 'eval' } asOrderedCollection. + save ifTrue: [ arguments addLast: '--save' ]. + quit ifTrue: [ arguments addLast: '--quit' ]. + arguments add: aString. + ^ self bootstrapImageDo: arguments asArray +] + +{ #category : #'image-management' } +PBOldExtendedBootstrap >> bootstrapImageEvalFile: aString [ + + ^ self bootstrapImageEvalFile: aString save: false quit: false +] + +{ #category : #'image-management' } +PBOldExtendedBootstrap >> bootstrapImageEvalFile: aString save: save quit: quit [ + + | arguments | + arguments := { 'st' . aString } asOrderedCollection. + save ifTrue: [ arguments addLast: '--save' ]. + quit ifTrue: [ arguments addLast: '--quit' ]. + ^ self bootstrapImageDo: arguments asArray +] + +{ #category : #monticello } +PBOldExtendedBootstrap >> bootstrapMonticello [ + + self bootstrapImageEvalFile: 'Monticello.st' save: true quit: true. +] + +{ #category : #bootstrap } +PBOldExtendedBootstrap >> initializeClasses [ + + self bootstrapImageEval: '#(#ISOLanguageDefinition #Delay #DangerousClassNotifier #ISO885915TextConverter #EndianDetector + #DigitalSignatureAlgorithm #ChangeSet #Float #OSPlatform #Behavior #OCASTTranslator #ExternalSemaphoreTable + #ProcessSpecificVariable #LiteralVariable #ByteTextConverter #FileHandle + #WeakFinalizationList #RPackageOrganizer #Slot #DateAndTime #HashTableSizes #DiskStore #SHA1 #CP1252TextConverter + #ProcessorScheduler #Categorizer #CCompilationContext #SetElement #Deprecation #ZnMimeType #TraitBehavior + #AsyncFile #RPackage #Stdio #FileStream #ASTCache #MacRomanTextConverter + #CompiledMethod #ISO88592TextConverter #UUIDGenerator #Locale #Symbol + #BISimpleFormatter #TemporaryVariable #MD5NonPrimitive #ChronologyConstants + #BasicCommandLineHandler #CompilationContext #FileLocator #LanguageEnvironment #Character #SmalltalkImage + #EncodedCharSet #ByteString #String #WeakArray #Object #Latin9Environment + #Latin2Environment #Key #ZnBase64Encoder #UIManagerSessionHandler #MultiByteFileStream + #Latin1 #RBScanner #CP1250TextConverter #WeakAnnouncementSubscription #ZnUTF8Encoder #Context #Unicode + #ZnSimplifiedByteEncoder) + do: [:cn | (Smalltalk at: cn) initialize]' save: true quit: true. +] + +{ #category : #bootstrap } +PBOldExtendedBootstrap >> initializeImage [ + + ['script.st' asFileReference writeStreamDo: [ :stream | + stream nextPutAll: '#(#ISOLanguageDefinition #Delay #DangerousClassNotifier #ISO885915TextConverter #EndianDetector +#DigitalSignatureAlgorithm #ChangeSet #Float #OSPlatform #Behavior #OCASTTranslator #ExternalSemaphoreTable +#ProcessSpecificVariable #LiteralVariable #ByteTextConverter #FileHandle +#WeakFinalizationList #RPackageOrganizer #Slot #DateAndTime #HashTableSizes #DiskStore #SHA1 #CP1252TextConverter +#ProcessorScheduler #Categorizer #CCompilationContext #SetElement #Deprecation #ZnMimeType #TraitBehavior +#AsyncFile #RPackage #Stdio #FileStream #ASTCache #MacRomanTextConverter +#CompiledMethod #ISO88592TextConverter #UUIDGenerator #Locale #Symbol +#BISimpleFormatter #TemporaryVariable #MD5NonPrimitive #ChronologyConstants +#BasicCommandLineHandler #CompilationContext #FileLocator #LanguageEnvironment #Character #SmalltalkImage +#EncodedCharSet #ByteString #String #WeakArray #Object #Latin9Environment + #Latin2Environment #Key #ZnBase64Encoder #UIManagerSessionHandler #MultiByteFileStream +#Latin1 #RBScanner #CP1250TextConverter #WeakAnnouncementSubscription #ZnUTF8Encoder #Context #Unicode +#ZnSimplifiedByteEncoder) + do: [:cn | + (Smalltalk at: cn) initialize].! + + +''From Pharo6.0 of 13 May 2016 [Latest update: #60267] on 25 October 2016 at 10:12:07.2002 am''! + +!WorkingSession methodsFor: ''initialization'' stamp: ''ChristopheDemarey 12/4/2015 11:43''! +initialize + super initialize. + deferredStartupActions := OrderedCollection new. + creationTime := DateAndTime now. + id := DateAndTime now hash.! ! + + +SessionManager classPool at: #Default put: SessionManager new. + +SessionManager default installNewSession. + + +SessionManager default + registerSystemClassNamed: #SmallInteger atPriority: 10; "system - 10" + registerSystemClassNamed: #Delay atPriority: 20; "System - 20" + registerSystemClassNamed: #ProcessorScheduler atPriority: 30; "System - 30" + registerSystemClassNamed: #OSPlatform atPriority: 50; "System - 50" + + registerSystemClassNamed: #FileLocator atPriority: 90; "System - 90" + + registerSystemClassNamed: #Stdio; "System" + registerSystemClassNamed: #LanguageEnvironment ; "System" + registerSystemClassNamed: #DiskStore; "System" + registerSystemClassNamed: #SmalltalkImage; "System" + registerSystemClassNamed: #WeakFinalizationList; "System" + registerSystemClassNamed: #Symbol; "System" + registerSystemClassNamed: #Locale; "System" + registerSystemClassNamed: #MultiByteFileStream; "System" + registerSystemClassNamed: #WeakArray; "System" + registerSystemClassNamed: #FileStream; "System" + registerSystemClassNamed: #BasicCommandLineHandler; "System" + registerSystemClassNamed: #NonInteractiveTranscript; "System" + registerSystemClassNamed: #ASTCache; "System" + registerSystemClassNamed: #EndianDetector. "System" + + + ! + + +''From Pharo6.0 of 13 May 2016 [Latest update: #60069] on 13 July 2016 at 2:53:22.90776 pm''! + +!UnhandledError methodsFor: ''priv handling'' stamp: ''ChristopheDemarey 8/14/2015 16:06''! +defaultAction + +| rep | + rep := FileStream forceNewFileNamed: ''PharoDebug.log''. + rep nextPutAll: ''Error:''; cr. + rep nextPutAll: exception asString; cr. + rep nextPutAll: thisContext stack size asString. + thisContext stack copy withIndexDo: [:stck :i | + [rep nextPutAll: i asString; space; nextPutAll: stck asString; cr] ifError: []]. + rep close. + Smalltalk exitFailure +! ! + +SmalltalkImage classPool at: #SpecialSelectors put: #(#+ #- #< #> #'<=' #'>=' #= #'~=' #* #/ #'\\' #@ #bitShift: #'//' #bitAnd: #bitOr: #at: #at:put: #size #next #nextPut: #atEnd #'==' nil "class" #'~~' #value #value: #do: #new #new: #x #y). + +Class instVarNamed: #subclasses put: (Array with: ProtoObject class). +ProtoObject class classLayout slotScope parentScope: Class classLayout slotScope. + +RBProgramNode classPool at: #FormatterClass put: BISimpleFormatter.' ]. + + self bootstrapImageEvalFile: 'script.st' save: true quit: true. + ] ensure: ['script.st' asFileReference ensureDelete] +] + +{ #category : #bootstrap } +PBOldExtendedBootstrap >> initializeRPackages [ + + ['script.st' asFileReference writeStreamDo: [ :stream | + stream nextPutAll: '''From Pharo5.0 of 16 April 2015 [Latest update: #50656] on 22 March 2016 at 2:53:22.880903 pm''! + +!RPackageOrganizer methodsFor: ''private registration'' stamp: ''EstebanLorenzano 2/21/2014 12:56''! +basicRegisterPackage: aPackage + "A new package is now available and declared in the receiver. Note that it is a low level implementation method since it does not deal with package contained information and does not update the related mapping tables." + + packages + at: aPackage name asSymbol + put: aPackage. + "register mc package" + "MCWorkingCopy forPackage: (MCPackage named: aPackage name)." + + ^ aPackage! ! + +!RPackageOrganizer methodsFor: ''private registration'' stamp: ''MarcusDenker 7/16/2014 17:25''! +basicUnregisterPackage: aPackage + "Unregister the specified package from the list of registered packages. Raise the announcement RPackageUnregistered. This is a low level action. It does not unregister the back pointer from classes to packages or any other information managed by the organizer" + + packages + removeKey: aPackage name asSymbol + ifAbsent: [ self reportExtraRemovalOf: aPackage ]. + "unregister also mc package" + "aPackage mcPackage + ifNotNil: [ :mcPackage | mcPackage workingCopy unregister ]."! ! + + +''protocols.txt'' asFileReference readStreamDo: [:stream | + [stream atEnd] whileFalse: [ + | line | + line := stream upTo: Character cr. + items := line findTokens: String tab. + items logCr. + class := (items second = ''true'') + ifTrue: [(Smalltalk classOrTraitNamed: items first) class] + ifFalse: [Smalltalk classOrTraitNamed: items first]. + selector := items third asSymbol. + + (class localSelectors includes: selector) + ifTrue: [class organization classify: selector under: items fourth] + ifFalse: [].. + +]]. + + +RPackageOrganizer default basicInitializeFromPackagesList: #( + ''Kernel'' ''Collections-Strings'' ''Collections-Weak'' ''System-Support'' ''Files'' + ''AST-Core'' + ''Announcements-Core'' ''CodeExport'' + ''CodeImport'' ''CodeImportCommandLineHandlers'' ''Collections-Abstract'' + ''Collections-Arithmetic'' ''Collections-Atomic'' ''Collections-Native'' + ''Collections-Sequenceable'' ''Collections-Stack'' ''Collections-Streams'' + ''Collections-Support'' ''Collections-Unordered'' + ''FileSystem-Core'' ''FileSystem-Disk'' + ''Jobs'' ''Multilingual-Encodings'' ''Multilingual-Languages'' + ''Multilingual-TextConversion'' ''Network-UUID'' ''OpalCompiler-Core'' ''Random-Core'' ''RPackage-Core'' + ''Ring-Definitions-Containers'' ''Ring-Definitions-Core'' ''Ring-OldChunkImporter'' + ''Slot'' ''System-Announcements'' ''System-BasicCommandLineHandler'' ''System-Changes'' + ''System-CommandLine'' ''System-CommandLineHandler'' ''System-Finalization'' + ''System-Hashing'' ''System-Localization'' ''System-Model'' ''System-Platforms'' + ''System-Sources'' ''Traits'' ''Transcript'' ''UIManager'' + ''Zinc-Character-Encoding-Core'' ''Zinc-Resource-Meta-Core'' ''NonInteractiveTranscript'' + ''System-SessionManager'' + ''PharoBootstrap-Initialization'' ''Colors'' +). + +RPackageOrganizer registerInterestToSystemAnnouncement.'. ]. + self bootstrapImageEvalFile: 'script.st' save: true quit: true + ] ensure: ['script.st' asFileReference ensureDelete] + +] + +{ #category : #bootstrap } +PBOldExtendedBootstrap >> initializeSessionManager [ + + [ 'script.st' asFileReference writeStreamDo: [ :str | + str nextPutAll: '''From Pharo6.0 of 13 May 2016 [Latest update: #60267] on 25 October 2016 at 10:12:07.2002 am''! + +!WorkingSession methodsFor: ''initialization'' stamp: ''ChristopheDemarey 12/4/2015 11:43''! +initialize + super initialize. + deferredStartupActions := OrderedCollection new. + creationTime := DateAndTime now. + id := DateAndTime now hash.! ! + + +SessionManager classPool at: #Default put: SessionManager new. +SessionManager default installNewSession. + +SessionManager default + registerSystemClassNamed: #SmallInteger atPriority: 10; "system - 10" + registerSystemClassNamed: #Delay atPriority: 20; "System - 20" + registerSystemClassNamed: #ProcessorScheduler atPriority: 30; "System - 30" + registerSystemClassNamed: #OSPlatform atPriority: 50; "System - 50" + registerSystemClassNamed: #FileLocator atPriority: 90; "System - 90" + registerSystemClassNamed: #Stdio; "System" + registerSystemClassNamed: #LanguageEnvironment ; "System" + registerSystemClassNamed: #DiskStore; "System" + registerSystemClassNamed: #SmalltalkImage; "System" + registerSystemClassNamed: #WeakFinalizationList; "System" + registerSystemClassNamed: #Symbol; "System" + registerSystemClassNamed: #Locale; "System" + registerSystemClassNamed: #MultiByteFileStream; "System" + registerSystemClassNamed: #WeakArray; "System" + registerSystemClassNamed: #FileStream; "System" + registerSystemClassNamed: #BasicCommandLineHandler; "System" + registerSystemClassNamed: #NonInteractiveTranscript; "System" + registerSystemClassNamed: #ASTCache; "System" + registerSystemClassNamed: #EndianDetector. "System"']. + + self bootstrapImageEvalFile: 'script.st' save: true quit: true. + ] ensure: [ 'script.st' asFileReference ensureDelete ] +] + +{ #category : #bootstrap } +PBOldExtendedBootstrap >> patchUnhandledErrorManagement [ + + [ 'script.st' asFileReference writeStreamDo: [ :str | + str nextPutAll: '''From Pharo6.0 of 13 May 2016 [Latest update: #60267] on 25 October 2016 at 10:12:07.2002 am''! + +!UnhandledError methodsFor: ''priv handling'' stamp: ''ChristopheDemarey 8/14/2015 16:06''! +defaultAction + +| rep | + rep := FileStream forceNewFileNamed: ''PharoDebug.log''. + rep nextPutAll: ''Error:''; cr. + rep nextPutAll: exception asString; cr. + rep nextPutAll: thisContext stack size asString. + thisContext stack copy withIndexDo: [:stck :i | + [rep nextPutAll: i asString; space; nextPutAll: stck asString; cr] ifError: []]. + rep close. + Smalltalk exitFailure +! !']. + + self bootstrapImageEvalFile: 'script.st' save: true quit: true. + ] ensure: [ 'script.st' asFileReference ensureDelete ] +] + +{ #category : #preparation } +PBOldExtendedBootstrap >> prepareBootstrap [ + + self + exportKernelProtocols; + exportKernelPackageNames; + exportAllPackagesIntoMcz; + exportMonticelloInStFile. +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBSignal.class.st b/bootstrap/src/Pharo30Bootstrap/PBSignal.class.st new file mode 100644 index 00000000000..aeed9696f27 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBSignal.class.st @@ -0,0 +1,5 @@ +Class { + #name : #PBSignal, + #superclass : #StringSignal, + #category : 'Pharo30Bootstrap' +} diff --git a/bootstrap/src/Pharo30Bootstrap/PBSpurClassLoader.class.st b/bootstrap/src/Pharo30Bootstrap/PBSpurClassLoader.class.st new file mode 100644 index 00000000000..6a8f4f00876 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBSpurClassLoader.class.st @@ -0,0 +1,107 @@ +Class { + #name : #PBSpurClassLoader, + #superclass : #PBClassLoader, + #instVars : [ + 'nextClassIndex' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #'as yet unclassified' } +PBSpurClassLoader >> classDefinitionFor: aClass [ + "Answer a String that defines the receiver." + + | type | + type := aClass isWeak + ifTrue: [ 'WeakLayout' ] + ifFalse: [ aClass isPointers + ifTrue: [ aClass isVariable + ifTrue: [ 'VariableLayout' ] + ifFalse: [ 'FixedLayout' ] + ] + ifFalse: [ aClass isCompiledMethod + ifTrue: [ 'CompiledMethodLayout' ] + ifFalse: [ aClass isWords + ifTrue: [ 'WordLayout' ] + ifFalse: [ 'ByteLayout' ]]]]. + ^ '| newClass | + newClass := ShiftClassInstaller make: [ :builder | + builder + superclass: {superClass}; + name: ''{name}''; + layoutClass: {type}; + slots: ''{instanceVariablesString}'' asSlotCollection; + sharedVariablesFromString: ''{classVariablesString}''; + sharedPools: ''{sharedPoolsString}''; + category: ''{category}''; + environment: {superClass} environment; + classSlots: ''{classInstanceVariablesString}'' asSlotCollection ]. + "newClass setTraitComposition: {aTraitComposition} asTraitComposition." + newClass' + format: { + 'superClass' -> (aClass superclass ifNil: ['nil'] ifNotNil: [ :superclass | superclass name ]). + 'name' -> aClass name. + 'type' -> type. + 'instanceVariablesString' -> (' ' join: aClass instVarNames). + 'classVariablesString' -> aClass classVariablesString. + 'sharedPoolsString' -> aClass sharedPoolsString. + 'category' -> aClass category asString. + 'classInstanceVariablesString' -> (' ' join: aClass classSide instVarNames). + 'aTraitComposition' -> aClass traitCompositionString } asDictionary. +] + +{ #category : #'as yet unclassified' } +PBSpurClassLoader >> map: aClassMirror with: aDefinition [ + + "We create a mapping between the real classes and their definitions for later" + + | classSideMirror | + self assert: (aClassMirror target isKindOf: EPSimulatorHandle). + (aClassMirror backend simulator objectMemory classTableRootObj) ifNotNil: [ + self assert: aClassMirror target asClassIndexHandle address notNil. + aClassMirror target: (aClassMirror target asClassIndexHandle) ]. + + mirrorDefinitionMap at: aClassMirror put: aDefinition. + definitionMirrorMap at: aDefinition put: aClassMirror. + + classSideMirror := aClassMirror basicClass. + "only valid for Spur simulator bootstrap by now" + (aClassMirror backend simulator objectMemory classTableRootObj) ifNotNil: [ + self assert: classSideMirror target asClassIndexHandle address notNil. + classSideMirror target: (classSideMirror target asClassIndexHandle) ]. + + mirrorDefinitionMap at: classSideMirror put: aDefinition classSide. + definitionMirrorMap at: aDefinition classSide put: classSideMirror. +] + +{ #category : #'as yet unclassified' } +PBSpurClassLoader >> newClassIndex [ + + nextClassIndex ifNil: [ nextClassIndex := 1024 ]. + ^ nextClassIndex := nextClassIndex + 1 +] + +{ #category : #'as yet unclassified' } +PBSpurClassLoader >> registerClass: aClassMirror named: aName fullyLoaded: aBoolean [ + + "If it existed before, we migrate its state" + (environment includesKey: aName) + ifTrue: [ + self migrateOldClass: (environment at: aName) to: aClassMirror ]. + + "We register it and keep up to date our compact class index" + environment at: aName put: aClassMirror. + aClassMirror asClassMirror compactClassIndex = 0 ifFalse: [ + builder objectSpace backend compactClassAt: aClassMirror asClassMirror compactClassIndex put: aClassMirror ]. + + "We create a mapping between the real classes and their definitions for later" + self map: aClassMirror with: (systemDefinition classNamed: aName). + + "We say the simulator that this class is a root, possible becomes can come into it. THIS IS ONLY VALID FOR SPUR SIMULATOR BOOTSTRAP. REFACTOR ME". + self flag: #refactorMe. + builder objectSpace backend addExtraRoot: aClassMirror. + builder objectSpace backend addExtraRoot: aClassMirror classSide. + + "We reset the class map of the ast interpreter" + fullyLoaded at: aName put: aBoolean +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBStepFinishedSignal.class.st b/bootstrap/src/Pharo30Bootstrap/PBStepFinishedSignal.class.st new file mode 100644 index 00000000000..3f212885013 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBStepFinishedSignal.class.st @@ -0,0 +1,5 @@ +Class { + #name : #PBStepFinishedSignal, + #superclass : #PBSignal, + #category : 'Pharo30Bootstrap' +} diff --git a/bootstrap/src/Pharo30Bootstrap/PBStepStartedSignal.class.st b/bootstrap/src/Pharo30Bootstrap/PBStepStartedSignal.class.st new file mode 100644 index 00000000000..6eb480eca26 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBStepStartedSignal.class.st @@ -0,0 +1,5 @@ +Class { + #name : #PBStepStartedSignal, + #superclass : #PBSignal, + #category : 'Pharo30Bootstrap' +} diff --git a/bootstrap/src/Pharo30Bootstrap/PBSubStepFinishedSignal.class.st b/bootstrap/src/Pharo30Bootstrap/PBSubStepFinishedSignal.class.st new file mode 100644 index 00000000000..0ad8abeb706 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBSubStepFinishedSignal.class.st @@ -0,0 +1,5 @@ +Class { + #name : #PBSubStepFinishedSignal, + #superclass : #PBSignal, + #category : 'Pharo30Bootstrap' +} diff --git a/bootstrap/src/Pharo30Bootstrap/PBVersionInfo.class.st b/bootstrap/src/Pharo30Bootstrap/PBVersionInfo.class.st new file mode 100644 index 00000000000..ee9d9b1a83d --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBVersionInfo.class.st @@ -0,0 +1,194 @@ +" +I represent the version of the pharo image to build. +I contain + + - major version (mandatory) + - minor version (optional, 0 if absent) + - patch version (optional, 0 if absent) + - suffix (optional, nil if absent) + - commit hash (optional, 'UNKNOWN_COMMIT' if absent) + - build number (optional, 'UNKNOWN_BUILD' if absent) + +I am used during the bootstrap process to parse this information and include it in the generated binary image. +" +Class { + #name : #PBVersionInfo, + #superclass : #Object, + #instVars : [ + 'repository', + 'commitHash', + 'buildNumber', + 'major', + 'minor', + 'patch', + 'suffix' + ], + #category : 'Pharo30Bootstrap' +} + +{ #category : #'instance-creation' } +PBVersionInfo class >> fromLongGitDescribe: aString [ + + | parts commitish semanticVersion | + parts := aString substrings: '-'. + commitish := parts last allButFirst. + semanticVersion := (parts allButLast: 2) joinUsing: '-'. + + ^ self basicNew + fromSemanticVersion: semanticVersion; + commitHash: commitish; + yourself +] + +{ #category : #'instance-creation' } +PBVersionInfo class >> fromSemanticVersion: aString [ + + ^ self basicNew + fromSemanticVersion: aString; + yourself +] + +{ #category : #'instance creation' } +PBVersionInfo class >> invalidMajorVersion: anObject [ + + self error: 'Invalid major version: ', anObject printString +] + +{ #category : #'instance-creation' } +PBVersionInfo class >> major: anInteger [ + + ^ self basicNew + major: anInteger; + initialize +] + +{ #category : #'instance creation' } +PBVersionInfo class >> new [ + + self invalidMajorVersion: nil +] + +{ #category : #accessing } +PBVersionInfo >> buildNumber [ + ^ buildNumber ifNil: [ -1 ] +] + +{ #category : #accessing } +PBVersionInfo >> buildNumber: anObject [ + buildNumber := anObject +] + +{ #category : #accessing } +PBVersionInfo >> commitHash [ + ^ commitHash ifNil: [ 'UNKNOWN_COMMIT' ] +] + +{ #category : #accessing } +PBVersionInfo >> commitHash: aString [ + commitHash := aString +] + +{ #category : #configuration } +PBVersionInfo >> fromSemanticVersion: aString [ + + | version versionAndSuffix partsWithoutSuffix | + version := aString. + (version beginsWith: 'v') + ifTrue: [ version := version allButFirst ]. + + versionAndSuffix := version substrings: '-'. + partsWithoutSuffix := versionAndSuffix first substrings: '.'. + + partsWithoutSuffix size < 1 + ifTrue: [ self invalidMajorVersion: version ]. + self major: partsWithoutSuffix first. + + partsWithoutSuffix size > 1 + ifTrue: [ self minor: partsWithoutSuffix second ]. + + partsWithoutSuffix size > 2 + ifTrue: [ self patch: partsWithoutSuffix third ]. + + versionAndSuffix size > 1 + ifTrue: [ self suffix: versionAndSuffix second ]. + + ^ self +] + +{ #category : #validating } +PBVersionInfo >> invalidMajorVersion: anObject [ + + ^ self class invalidMajorVersion: anObject +] + +{ #category : #accessing } +PBVersionInfo >> major [ + ^ major +] + +{ #category : #accessing } +PBVersionInfo >> major: anObject [ + + self validateMajorVersion: anObject. + major := anObject asInteger +] + +{ #category : #accessing } +PBVersionInfo >> majorVersion [ + ^ major +] + +{ #category : #accessing } +PBVersionInfo >> minor [ + ^ minor ifNil: [ 0 ] +] + +{ #category : #accessing } +PBVersionInfo >> minor: anObject [ + minor := anObject asInteger +] + +{ #category : #accessing } +PBVersionInfo >> minorVersion [ + ^ minor +] + +{ #category : #accessing } +PBVersionInfo >> patch [ + ^ patch ifNil: [ 0 ] +] + +{ #category : #accessing } +PBVersionInfo >> patch: anObject [ + + patch := anObject asInteger +] + +{ #category : #accessing } +PBVersionInfo >> repository [ + ^ repository +] + +{ #category : #accessing } +PBVersionInfo >> repository: anObject [ + repository := anObject +] + +{ #category : #accessing } +PBVersionInfo >> suffix [ + + ^ suffix +] + +{ #category : #accessing } +PBVersionInfo >> suffix: aString [ + suffix := aString +] + +{ #category : #validating } +PBVersionInfo >> validateMajorVersion: anObject [ + + | majorNumber | + majorNumber := anObject asInteger. + majorNumber ifNil: [ self invalidMajorVersion: anObject ]. +] diff --git a/bootstrap/src/Pharo30Bootstrap/PBVersionInfoTest.class.st b/bootstrap/src/Pharo30Bootstrap/PBVersionInfoTest.class.st new file mode 100644 index 00000000000..649bf4f1abd --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/PBVersionInfoTest.class.st @@ -0,0 +1,201 @@ +" +A PBVersionInfoTest is a test class for testing the behavior of PBVersionInfo +" +Class { + #name : #PBVersionInfoTest, + #superclass : #TestCase, + #category : 'Pharo30Bootstrap-Tests' +} + +{ #category : #'test-default-values' } +PBVersionInfoTest >> testDefaultBuildIsUnknown [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + self assert: versionInfo buildNumber equals: -1 +] + +{ #category : #'test-default-values' } +PBVersionInfoTest >> testDefaultCommitHashIsUnknown [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + self assert: versionInfo commitHash equals: 'UNKNOWN_COMMIT'. +] + +{ #category : #'test-default-values' } +PBVersionInfoTest >> testDefaultMinorVersionIsZero [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + self assert: versionInfo minor equals: 0. +] + +{ #category : #'test-default-values' } +PBVersionInfoTest >> testDefaultPatchVersionIsZero [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + self assert: versionInfo patch equals: 0. +] + +{ #category : #'test-default-values' } +PBVersionInfoTest >> testDefaultSuffixIsEmpty [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + self assert: versionInfo suffix equals: nil. +] + +{ #category : #'test-semantic-version' } +PBVersionInfoTest >> testFromIncompleteSemanticVersionStartingWithV [ + + | versionInfo | + versionInfo := PBVersionInfo fromSemanticVersion: 'v70-alpha'. + + self assert: versionInfo major equals: 70. + self assert: versionInfo minor equals: 0. + self assert: versionInfo patch equals: 0. + self assert: versionInfo suffix equals: 'alpha'. +] + +{ #category : #'test-git-long-describe' } +PBVersionInfoTest >> testFromLongDescribeWithNumberOfCommitsExtractsCommitHash [ + + | versionInfo | + versionInfo := PBVersionInfo fromLongGitDescribe: 'v1.5.3-21-g975b'. + self assert: versionInfo commitHash equals: '975b'. +] + +{ #category : #'test-git-long-describe' } +PBVersionInfoTest >> testFromLongDescribeWithNumberOfCommitsExtractsSemanticVersion [ + + | versionInfo | + versionInfo := PBVersionInfo fromLongGitDescribe: 'v1.5.3-21-g975b'. + + self assert: versionInfo major equals: 1. + self assert: versionInfo minor equals: 5. + self assert: versionInfo patch equals: 3. + self assert: versionInfo suffix equals: nil. + self assert: versionInfo commitHash equals: '975b'. +] + +{ #category : #'test-git-long-describe' } +PBVersionInfoTest >> testFromLongDescribeWithSuffix [ + + | versionInfo | + versionInfo := PBVersionInfo fromLongGitDescribe: 'v1.5.3-suffix-21-g975b'. + + self assert: versionInfo major equals: 1. + self assert: versionInfo minor equals: 5. + self assert: versionInfo patch equals: 3. + self assert: versionInfo suffix equals: 'suffix'. + self assert: versionInfo commitHash equals: '975b'. +] + +{ #category : #'test-semantic-version' } +PBVersionInfoTest >> testFromSemanticVersionStartingWithV [ + + | versionInfo | + versionInfo := PBVersionInfo fromSemanticVersion: 'v1.2.3-alpha'. + + self assert: versionInfo major equals: 1. + self assert: versionInfo minor equals: 2. + self assert: versionInfo patch equals: 3. + self assert: versionInfo suffix equals: 'alpha'. +] + +{ #category : #'test-semantic-version' } +PBVersionInfoTest >> testFromSemanticVersionStartingWithoutV [ + + | versionInfo | + versionInfo := PBVersionInfo fromSemanticVersion: '1.2.3-alpha'. + + self assert: versionInfo major equals: 1. + self assert: versionInfo minor equals: 2. + self assert: versionInfo patch equals: 3. + self assert: versionInfo suffix equals: 'alpha'. +] + +{ #category : #'test-semantic-version' } +PBVersionInfoTest >> testFromSemanticVersionWithInvalidMajorFails [ + + self should: [ PBVersionInfo fromSemanticVersion: 'Invalid-alpha' ] raise: Error. +] + +{ #category : #'test-semantic-version' } +PBVersionInfoTest >> testFromSemanticVersionWithoutSuffix [ + + | versionInfo | + versionInfo := PBVersionInfo fromSemanticVersion: 'v1.2.3'. + + self assert: versionInfo major equals: 1. + self assert: versionInfo minor equals: 2. + self assert: versionInfo patch equals: 3. + self assert: versionInfo suffix equals: nil. +] + +{ #category : #tests } +PBVersionInfoTest >> testGivenBuildIsGiven [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + versionInfo buildNumber: 200. + self assert: versionInfo buildNumber equals: 200. +] + +{ #category : #tests } +PBVersionInfoTest >> testGivenCommitHashIsGiven [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + versionInfo commitHash: 'abcabcabcabcabcabc'. + self assert: versionInfo commitHash equals: 'abcabcabcabcabcabc'. +] + +{ #category : #tests } +PBVersionInfoTest >> testGivenMinorVersionIsGiven [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + versionInfo minor: 17. + self assert: versionInfo minor equals: 17. +] + +{ #category : #tests } +PBVersionInfoTest >> testGivenPatchVersionIsGiven [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + versionInfo patch: 88. + self assert: versionInfo patch equals: 88. +] + +{ #category : #tests } +PBVersionInfoTest >> testGivenSuffixIsGiven [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + versionInfo suffix: 'SNAPSHOT'. + self assert: versionInfo suffix equals: 'SNAPSHOT'. +] + +{ #category : #tests } +PBVersionInfoTest >> testNilMajorVersionFails [ + + self should: [ PBVersionInfo major: nil ] raise: Error +] + +{ #category : #'test-default-values' } +PBVersionInfoTest >> testNoDefaultMajorVersionFails [ + + self should: [ PBVersionInfo new ] raise: Error +] + +{ #category : #tests } +PBVersionInfoTest >> testProvidedMajorVersionIsStored [ + + | versionInfo | + versionInfo := PBVersionInfo major: 7. + self assert: versionInfo major equals: 7. +] diff --git a/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st b/bootstrap/src/Pharo30Bootstrap/TonelRepository.extension.st similarity index 81% rename from bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st rename to bootstrap/src/Pharo30Bootstrap/TonelRepository.extension.st index 1b360b475bf..9d3bbf0a2cd 100644 --- a/bootstrap/src/Pharo30Bootstrap.package/TonelRepository.extension/instance/asRing2EnvironmentWith..st +++ b/bootstrap/src/Pharo30Bootstrap/TonelRepository.extension.st @@ -1,5 +1,7 @@ -*Pharo30Bootstrap -asRing2EnvironmentWith: packageNames +Extension { #name : #TonelRepository } + +{ #category : #'*Pharo30Bootstrap' } +TonelRepository >> asRing2EnvironmentWith: packageNames [ | aRG2Environment | aRG2Environment := RGEnvironment new. @@ -20,4 +22,5 @@ asRing2EnvironmentWith: packageNames aRG2Environment clean. aRG2Environment behaviorsDo: [ :beh | beh superclass == beh ifTrue: [ beh superclass: nil. ] ]. - ^ aRG2Environment \ No newline at end of file + ^ aRG2Environment +] diff --git a/bootstrap/src/Pharo30Bootstrap/package.st b/bootstrap/src/Pharo30Bootstrap/package.st new file mode 100644 index 00000000000..687c9c85226 --- /dev/null +++ b/bootstrap/src/Pharo30Bootstrap/package.st @@ -0,0 +1 @@ +Package { #name : #Pharo30Bootstrap } From f2c6f762bb259f379c6b8f2126b20ca9bb44b5e6 Mon Sep 17 00:00:00 2001 From: Caro Date: Wed, 11 Sep 2019 14:34:28 +0200 Subject: [PATCH 7/7] Delete .DS_Store --- bootstrap/src/.DS_Store | Bin 6148 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 bootstrap/src/.DS_Store diff --git a/bootstrap/src/.DS_Store b/bootstrap/src/.DS_Store deleted file mode 100644 index 56f66c03a7ac5bfc872f4ac3269f3da814b8b21d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~y-veW426%OLnW4u9q$t$5HD~QwL20oK-waZs1!uoJzHP9$3LJ(DU1xrmVCcl z$G%a{5XS(dIc)BM8GtEWiK8xK)BEZpyNZaAbe_@S0e5J~Zj^mFptW;6;tef62ladG zuxG5r2X5&t)_CXoikHo9y7^1QhIl#SCGu*pcX~M_h7XA+ zOH3$YPv`l?(jnEEYbuZm3>CQc?M(aslK#W|KP<{!Dv%2ND+Oe-cv>`krRc4rm(yNb t=+E>oW3Huhu~tl4E9OR9@%${W=r!-xVDGeY#;u&p9|6@REfx3+1y0>C89)F4