Nicolas Cellier uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-nice.847.mcz
==================== Summary ====================
Name: Tools-nice.847
Author: nice
Time: 7 May 2019, 9:38:06.649253 am
UUID: 58b94b2d-3cc1-42fc-ace2-c702f38295c8
Ancestors: Tools-dtl.846
Don't propose addLast:times: in MethodFinder, it's been deprecated
=============== Diff against Tools-dtl.846 ===============
Item was changed:
----- Method: MethodFinder>>initialize2 (in category 'initialize') -----
(excessive size, no diff calculated)
David T. Lewis uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-dtl.1062.mcz
==================== Summary ====================
Name: System-dtl.1062
Author: dtl
Time: 5 May 2019, 10:54:56.642077 pm
UUID: c527ef41-51fb-4e49-b00a-90a9a09a935d
Ancestors: System-cmm.1061
If CodeLoader is loading a script that begins with a Unix shebang line, then skip over line one of the script. This accomodates the case of an executable Unix shell script that starts a Squeak image, then feeds itself to Squeak as a start script. For example, an executable script file might contain this:
#!/usr/local/bin/squeak --
Transcript show: 'Hello, world'; cr.
=============== Diff against System-cmm.1061 ===============
Item was added:
+ ----- Method: CodeLoader>>allButShebangLine: (in category 'private') -----
+ allButShebangLine: contentsString
+ "If tontentsString begins with '#!!' then assume that it contains a Unix
+ shebang line should be skipped prior to evaluating the contents."
+
+ (contentsString beginsWith: '#!!')
+ ifTrue: [contentsString lineIndicesDo: [:line :end :endOfLine |
+ ^ contentsString allButFirst: endOfLine ]]
+ ifFalse: [^ contentsString]
+
+ " CodeLoader new allButShebangLine:
+ '#!!/usr/llocal/bin/squeak --
+ Transcript cr; show: ''Hello world!!''
+ ' "!
Item was changed:
----- Method: CodeLoader>>installSourceFile: (in category 'installing') -----
installSourceFile: aStream
"Install the previously loaded source file"
| contents trusted |
aStream ifNil:[^self error:'No content to install'].
trusted := SecurityManager default positionToSecureContentsOf: aStream.
trusted ifFalse:[(SecurityManager default enterRestrictedMode)
ifFalse:[ aStream close.
^ self error:'Insecure content encountered']].
+ contents := self allButShebangLine: aStream upToEnd unzipped asString.
- contents := aStream upToEnd unzipped asString.
(aStream respondsTo: #close) ifTrue:[aStream close].
^contents readStream fileIn!
Nicolas Cellier uploaded a new version of 60Deprecated to project The Trunk:
http://source.squeak.org/trunk/60Deprecated-nice.34.mcz
==================== Summary ====================
Name: 60Deprecated-nice.34
Author: nice
Time: 7 May 2019, 9:26:52.899828 am
UUID: 882e9027-6b0f-4ef4-9ab6-02e2dff2df3b
Ancestors: 60Deprecated-tpr.33
Deprecate RunArray>>addLast:times:
Companion change to Collections-nice.830/Collections-nice.499
=============== Diff against 60Deprecated-tpr.33 ===============
Item was added:
+ ----- Method: RunArray>>addLast:times: (in category '*60Deprecated') -----
+ addLast: value times: times
+ "Add value as the last element of the receiver, the given number of times"
+ self deprecated: 'use add:withOccurrences:'.
+ ^self add: value withOccurrences: times!
Nicolas Cellier uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-nice.830.mcz
==================== Summary ====================
Name: Collections-nice.830
Author: nice
Time: 7 May 2019, 9:25:17.144861 am
UUID: 3eccc0fe-9098-4c67-ad2b-78b02e5287e5
Ancestors: Collections-nice.829, Collections-nice.499
Merge: Collections-nice.829, Collections-nice.499
Rename RunArray unique selector #addLast:times: as #add:withOccurrences:
It's a bit less expressive but it's universal.
Deprecate #addLast:times:
After 6 years purgatory in inbox without further complaints, now is the last time I add an occurrence of this change.
=============== Diff against Collections-nice.829 ===============
Item was added:
+ ----- Method: RunArray>>add:withOccurrences: (in category 'adding') -----
+ add: value withOccurrences: times
+ "Add value as the last element of the receiver, the given number of times"
+ times = 0 ifTrue: [ ^self ].
+ lastIndex := nil. "flush access cache"
+ (runs size=0 or: [values last ~= value])
+ ifTrue:
+ [runs := runs copyWith: times.
+ values := values copyWith: value]
+ ifFalse:
+ [runs at: runs size put: runs last+times]!
Item was removed:
- ----- Method: RunArray>>addLast:times: (in category 'adding') -----
- addLast: value times: times
- "Add value as the last element of the receiver, the given number of times"
- times = 0 ifTrue: [ ^self ].
- lastIndex := nil. "flush access cache"
- (runs size=0 or: [values last ~= value])
- ifTrue:
- [runs := runs copyWith: times.
- values := values copyWith: value]
- ifFalse:
- [runs at: runs size put: runs last+times]!
Nicolas Cellier uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-nice.499.mcz
==================== Summary ====================
Name: Collections-nice.499
Author: nice
Time: 25 January 2013, 11:09:44.244 pm
UUID: a0703731-567b-4e87-9fbc-94cfbeed1534
Ancestors: Collections-bf.498
Rename RunArray unique selector #addLast:times: as #add:withOccurrences:
It's a bit less expressive but it's universal.
Deprecate #addLast:times:
=============== Diff against Collections-bf.498 ===============
Item was added:
+ ----- Method: RunArray>>add:withOccurrences: (in category 'adding') -----
+ add: value withOccurrences: times
+ "Add value as the last element of the receiver, the given number of times"
+ times = 0 ifTrue: [ ^self ].
+ lastIndex := nil. "flush access cache"
+ (runs size=0 or: [values last ~= value])
+ ifTrue:
+ [runs := runs copyWith: times.
+ values := values copyWith: value]
+ ifFalse:
+ [runs at: runs size put: runs last+times]!
Item was changed:
----- Method: RunArray>>addLast:times: (in category 'adding') -----
+ addLast: value times: times
- addLast: value times: times
"Add value as the last element of the receiver, the given number of times"
+ self deprecated: 'use add:withOccurrences:'.
+ ^self add: value withOccurrences: times!
- times = 0 ifTrue: [ ^self ].
- lastIndex := nil. "flush access cache"
- (runs size=0 or: [values last ~= value])
- ifTrue:
- [runs := runs copyWith: times.
- values := values copyWith: value]
- ifFalse:
- [runs at: runs size put: runs last+times]!