[Pkg] Installer: Installer-Core-kph.318.mcz
squeak-dev-noreply at lists.squeakfoundation.org
squeak-dev-noreply at lists.squeakfoundation.org
Mon Mar 30 00:44:27 UTC 2009
A new version of Installer-Core was added to project Installer:
http://www.squeaksource.com/Installer/Installer-Core-kph.318.mcz
==================== Summary ====================
Name: Installer-Core-kph.318
Author: kph
Time: 30 March 2009, 1:44:23 am
UUID: 5bb25884-929b-4c27-91cc-5f1d60493f8e
Ancestors: Installer-Core-kph.317
API change #bootstrap is now #fileInSource.
Also:
Installer ss
project: 'Some';
quietly;
install: 'Pkg'.
(Installer ss project: 'Some') silently install: 'Pkg'.
=============== Diff against Installer-Core-kph.317 ===============
Item was added:
+ ----- Method: Installer>>quietly (in category 'public interface') -----
+ quietly
+
+ noiseLevel := #quiet!
Item was changed:
----- Method: Installer>>bootstrap (in category 'public interface') -----
bootstrap
+ "keep for compatability"
+
+ self deprecatedApi.
+ useFileIn := true.
- isBootstrap := true.
self install.!
Item was changed:
----- Method: Installer class>>bootstrapTheRestOfInstaller (in category 'action report') -----
bootstrapTheRestOfInstaller
(Installer url: 'www.squeaksource.com/Installer/Installer-Scripts')
+ fileInSource;
- bootstrap;
logCR: 'installer bootstrap - loaded'.!
Item was added:
+ ----- Method: Installer>>fileInSource (in category 'public interface') -----
+ fileInSource
+
+ useFileIn := true.
+ self install.!
Item was changed:
----- Method: Installer>>installQuietly (in category 'public interface') -----
installQuietly
+ [ self installLogging ] on: Warning do: [ :ex | ex resume: true ].!
- [ self install ] on: Warning do: [ :ex | ex resume: true ].!
Item was added:
+ ----- Method: InstallerUrl>>fileInSource (in category 'accessing') -----
+ fileInSource
+
+ "
+ (Installer url: 'http://www.squeaksource.com/Sake/Sake-Core-kph.47.mcz') bootstrap.
+ "
+
+
+ | pkg splitPos repo getFileName fileName |
+
+ useFileIn := true.
+
+ splitPos := url lastIndexOf: $/.
+
+ pkg := url copyFrom: splitPos + 1 to: url size.
+ repo := url copyFrom: 1 to: splitPos.
+
+ getFileName := [ :pkgName | pkgName , ((HTTPSocket httpGet: repo) upToAll: pkgName; upTo: $") ].
+
+ fileName := getFileName value: pkg.
+
+ url := repo,fileName.
+
+ self install!
Item was added:
+ ----- Method: Installer>>installLogging (in category 'public interface') -----
+ installLogging
+
+ self logErrorDuring: [self basicInstall]!
Item was changed:
----- Method: Installer>>mcThing:from: (in category 'mantis') -----
mcThing: aFileName from: stream
"dont use monticello for .cs or for .st use monticello for .mcs"
| reader |
+ useFileIn ifTrue: [ ^ nil ].
- isBootstrap ifTrue: [ ^ nil ].
reader := self classMCReader readerClassForFileNamed: aFileName.
reader name = 'MCStReader' ifTrue: [ ^ nil ].
reader ifNil: [ ^ nil ].
(reader respondsTo: #on:fileName:)
ifTrue: [ reader := reader on: stream fileName: aFileName.
^ reader version ]
ifFalse: [ reader := reader on: stream.
^ reader snapshot ].!
Item was changed:
----- Method: Installer>>install (in category 'public interface') -----
install
+
+ noiseLevel = #quiet ifTrue: [ ^ self installQuietly ].
+ noiseLevel = #silent ifTrue: [ ^ self installSilently ].
+
+ ^ self installLogging!
- self logErrorDuring: [self basicInstall]!
Item was changed:
----- Method: Installer>>installSilently (in category 'public interface') -----
installSilently
+ SystemChangeNotifier uniqueInstance doSilently: [ self installLogging ]
- SystemChangeNotifier uniqueInstance doSilently: [ self install ]
!
Item was changed:
Object subclass: #Installer
+ instanceVariableNames: 'answers packages messagesToSuppress useFileIn noiseLevel'
- instanceVariableNames: 'answers packages messagesToSuppress isBootstrap'
classVariableNames: 'IsSetToTrapErrors Remembered SkipLoadingTests InstallerBindings ValidationBlock'
poolDictionaries: ''
category: 'Installer-Core'!
+ !Installer commentStamp: 'kph 3/30/2009 01:29' prior: 0!
- !Installer commentStamp: 'kph 2/24/2009 06:32' prior: 0!
Documentation now available at http://installer.pbwiki.com/Installer
+ useFileIn - flag to load source.st rather than using Monticello!
- isBootstrap - flag to load source.st rather than using Monticello!
Item was changed:
----- Method: Installer>>installQuietly: (in category 'public interface') -----
installQuietly: packageNameCollectionOrDetectBlock
+ self quietly install: packageNameCollectionOrDetectBlock.
+ !
- self package: packageNameCollectionOrDetectBlock.
- self installQuietly.!
Item was changed:
----- Method: Installer>>install:from: (in category 'mantis') -----
install: aFileName from: stream
| ext installSelector mcThing |
self log: ' installing...'.
self withAnswersDo: [
mcThing := self classMCReader ifNotNil: [ self mcThing: aFileName from: stream ].
mcThing
ifNotNil: [ (mcThing respondsTo: #install)
ifTrue: [ mcThing install ]
ifFalse: [ (mcThing respondsTo: #load) ifTrue: [ mcThing load ] ]
]
ifNil: [
ext := (aFileName copyAfterLast: $/) in: [ :path | path isEmpty ifTrue: [ aFileName ] ifFalse: [ path ] ].
ext := ext copyAfterLast: $..
ext = '' ifTrue: [ ext := 'st' ].
installSelector := ('install', ext asUppercase, ':from:') asSymbol.
+ useFileIn ifTrue: [
- isBootstrap ifTrue: [
[
SystemChangeNotifier uniqueInstance doSilently: [self install: aFileName from: stream using: installSelector ]]
on: Warning do: [ :ex | ex resume: true ].
] ifFalse: [
self install: aFileName from: stream using: installSelector.
]
]
].
self log: ' done.'
!
Item was changed:
----- Method: Installer>>initialize (in category 'public interface') -----
initialize
+ useFileIn := false..!
- isBootstrap := false.!
Item was added:
+ ----- Method: Installer>>silently (in category 'public interface') -----
+ silently
+
+ noiseLevel := #silent!
Item was removed:
- ----- Method: InstallerUrl>>bootstrap (in category 'accessing') -----
- bootstrap
-
- "
- (Installer url: 'http://www.squeaksource.com/Sake/Sake-Core-kph.47.mcz') bootstrap.
- "
-
-
- | pkg splitPos repo getFileName fileName |
-
- isBootstrap := true.
-
- splitPos := url lastIndexOf: $/.
-
- pkg := url copyFrom: splitPos + 1 to: url size.
- repo := url copyFrom: 1 to: splitPos.
-
- getFileName := [ :pkgName | pkgName , ((HTTPSocket httpGet: repo) upToAll: pkgName; upTo: $") ].
-
- fileName := getFileName value: pkg.
-
- url := repo,fileName.
-
- self install!
Item was removed:
- ----- Method: Installer>>inizialize (in category 'public interface') -----
- inizialize
-
- isBootstrap := false.!
More information about the Packages
mailing list