[squeak-dev] The Trunk: Monticello-bf.540.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Nov 4 14:57:48 UTC 2020
Marcel Taeumel uploaded a new version of Monticello to project The Trunk:
http://source.squeak.org/trunk/Monticello-bf.540.mcz
==================== Summary ====================
Name: Monticello-bf.540
Author: bf
Time: 3 May 2013, 12:06:01.01 pm
UUID: 759525eb-5ca8-4ab2-9e4a-bddc7d0680dc
Ancestors: Monticello-bf.532, Monticello-fbs.539
This is my allow-partial-commits mod, improved to always diff to the target repository, and merged with the latest fbs.359 trunk version.
=============== Diff against Monticello-fbs.539 ===============
Item was added:
+ ----- Method: MCPatch>>ignoring: (in category 'accessing') -----
+ ignoring: ignoredOperations
+ ^ MCPatch operations: (operations difference: ignoredOperations)!
Item was added:
+ Notification subclass: #MCRepositoryRequest
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'Monticello-UI'!
Item was changed:
+ MCPatchBrowser subclass: #MCSaveVersionDialog
+ instanceVariableNames: 'name message ignore'
- MCTool subclass: #MCSaveVersionDialog
- instanceVariableNames: 'name message'
classVariableNames: ''
poolDictionaries: ''
category: 'Monticello-UI'!
Item was changed:
----- Method: MCSaveVersionDialog>>accept (in category 'as yet unclassified') -----
accept
self answer:
(Array
with: (self findTextMorph: #versionName) text asString
+ with: (self findTextMorph: #logMessage) text asString
+ with: ignore)
+ !
- with: (self findTextMorph: #logMessage) text asString)
- !
Item was changed:
----- Method: MCSaveVersionDialog>>defaultExtent (in category 'as yet unclassified') -----
defaultExtent
+ ^ 600 at 600!
- ^ 400 at 300!
Item was added:
+ ----- Method: MCSaveVersionDialog>>ignore (in category 'as yet unclassified') -----
+ ignore
+ ^ ignore ifNil: [ignore := Set new]!
Item was added:
+ ----- Method: MCSaveVersionDialog>>ignoreSelection (in category 'as yet unclassified') -----
+ ignoreSelection
+ selection
+ ifNil: [ignore size = items size
+ ifFalse: [ignore addAll: items]
+ ifTrue: [ignore removeAll]]
+ ifNotNil: [
+ ignore remove: selection ifAbsent: [
+ ignore add: selection].
+ self selection < items size
+ ifTrue: [self selection: self selection + 1]].
+ self changed: #list
+ !
Item was added:
+ ----- Method: MCSaveVersionDialog>>installSelection (in category 'as yet unclassified') -----
+ installSelection
+ super installSelection.
+ selection ifNotNil: [
+ ignore remove: selection ifAbsent: [].
+ self changed: #list].
+
+ !
Item was added:
+ ----- Method: MCSaveVersionDialog>>list (in category 'as yet unclassified') -----
+ list
+ ^ self items collect: [:ea |
+ (self ignore includes: ea)
+ ifFalse: [ea summary]
+ ifTrue: [Text string: '( ', ea summary, ' )' attribute: TextEmphasis struckOut ]]!
Item was added:
+ ----- Method: MCSaveVersionDialog>>methodListKey:from: (in category 'as yet unclassified') -----
+ methodListKey: aKeystroke from: aListMorph
+ aKeystroke caseOf: {
+ [$I] -> [self ignoreSelection].
+ } otherwise: [super methodListKey: aKeystroke from: aListMorph ]!
Item was added:
+ ----- Method: MCSaveVersionDialog>>methodListMenu: (in category 'as yet unclassified') -----
+ methodListMenu: aMenu
+ aMenu addList:#(
+ ('ignore (I)' ignoreSelection 'Do not include this change when saving')
+ -).
+ super methodListMenu: aMenu.
+ ^aMenu!
Item was added:
+ ----- Method: MCSaveVersionDialog>>revertSelection (in category 'as yet unclassified') -----
+ revertSelection
+ super revertSelection.
+ selection ifNotNil: [
+ ignore add: selection.
+ self changed: #list].
+ !
Item was changed:
----- Method: MCSaveVersionDialog>>widgetSpecs (in category 'as yet unclassified') -----
widgetSpecs
^ #(
((textMorph: versionName) (0 0 1 0) (0 0 0 30))
+ ((textMorph: logMessage) (0 0 1 0.3) (0 30 0 -30))
+ ((buttonRow) (0 0.3 1 0.3) (0 -40 0 0))
+ ((listMorph:selection:menu:keystroke: list selection methodListMenu: methodListKey:from:) (0 0.3 1 0.6) (0 0 0 0))
+ ((textMorph: text) (0 0.6 1 1) (0 0 0 0))
- ((textMorph: logMessage) (0 0 1 1) (0 30 0 -30))
- ((buttonRow) (0 1 1 1) (0 -40 0 0))
)!
Item was changed:
----- Method: MCTool>>showModally (in category 'morphic ui') -----
showModally
modalProcess := Processor activeProcess.
+ self window openInWorldExtent: self defaultExtent.
- self window openInWorldExtent: (400 at 400).
[self window world notNil] whileTrue: [
self window outermostWorldMorph doOneCycle.
].
morph := nil.
^ modalValue!
Item was changed:
Notification subclass: #MCVersionNameAndMessageRequest
+ instanceVariableNames: 'suggestion initialMessage patch'
- instanceVariableNames: 'suggestion initialMessage'
classVariableNames: ''
poolDictionaries: ''
category: 'Monticello-Versioning'!
Item was changed:
----- Method: MCVersionNameAndMessageRequest>>defaultAction (in category 'as yet unclassified') -----
defaultAction
^ MCSaveVersionDialog new
versionName: suggestion;
logMessage: initialMessage;
+ patch: patch;
showModally!
Item was added:
+ ----- Method: MCVersionNameAndMessageRequest>>patch (in category 'as yet unclassified') -----
+ patch
+ ^ patch!
Item was added:
+ ----- Method: MCVersionNameAndMessageRequest>>patch: (in category 'as yet unclassified') -----
+ patch: aPatch
+ patch := aPatch
+ !
Item was changed:
----- Method: MCWorkingCopy>>newVersion (in category 'operations') -----
newVersion
+ | packageSnapshot parentSnapshot patch |
+ parentSnapshot := self parentSnapshot.
+ packageSnapshot := package snapshot.
+ patch := packageSnapshot patchRelativeToBase: parentSnapshot.
^ (self requestVersionNameAndMessageWithSuggestion: self uniqueVersionName
+ initialMessage: self patchMessageDefault
+ patch: patch) ifNotNil:
+ [:tuple |
+ self newVersionWithName: tuple first withBlanksTrimmed
+ message: (self patchMessageStripped: tuple second)
+ snapshot: (tuple third
+ ifEmpty: [packageSnapshot]
+ ifNotEmpty: [
+ MCPatcher apply: (patch ignoring: tuple third)
+ to: parentSnapshot])]
- initialMessage: self patchMessageSuggestion) ifNotNil:
- [:pair |
- self newVersionWithName: pair first withBlanksTrimmed
- message: (self patchMessageStripped: pair last)].
!
Item was changed:
----- Method: MCWorkingCopy>>newVersionWithName:message: (in category 'operations') -----
newVersionWithName: nameString message: messageString
+ ^self newVersionWithName: nameString message: messageString snapshot: package snapshot!
- | info deps |
- info := ancestry infoWithName: nameString message: messageString.
- ancestry := MCWorkingAncestry new addAncestor: info.
- self modified: true; modified: false.
-
- deps := self requiredPackages collect:
- [:ea |
- MCVersionDependency
- package: ea
- info: ea workingCopy currentVersionInfo].
-
- ^ MCVersion
- package: package
- info: info
- snapshot: package snapshot
- dependencies: deps!
Item was added:
+ ----- Method: MCWorkingCopy>>newVersionWithName:message:snapshot: (in category 'operations') -----
+ newVersionWithName: nameString message: messageString snapshot: aSnapshot
+ | info deps clean |
+ info := ancestry infoWithName: nameString message: messageString.
+ ancestry := MCWorkingAncestry new addAncestor: info.
+ clean := (package snapshot patchRelativeToBase: aSnapshot) isEmpty.
+ self modified: clean; modified: clean not. "hack to ensure label is updated"
+
+ deps := self requiredPackages collect:
+ [:ea |
+ MCVersionDependency
+ package: ea
+ info: ea workingCopy currentVersionInfo].
+
+ ^ MCVersion
+ package: package
+ info: info
+ snapshot: aSnapshot
+ dependencies: deps!
Item was added:
+ ----- Method: MCWorkingCopy>>parentSnapshot (in category 'private') -----
+ parentSnapshot
+ "prefer parent in selected repository"
+ MCRepositoryRequest signal ifNotNil: [:repo |
+ self ancestors do: [:ancestor |
+ (repo versionWithInfo: ancestor)
+ ifNotNil: [:ver | ^ver snapshot]]].
+ "otherwise, look in all repositories"
+ self ancestors do: [:ancestor |
+ (self repositoryGroup versionWithInfo: ancestor)
+ ifNotNil: [:ver | ^ver snapshot]].
+ "otherwise"
+ ^MCSnapshot empty!
Item was changed:
----- Method: MCWorkingCopy>>patchMessageChanges (in category 'operations') -----
patchMessageChanges
+ | changes |
+ changes := package snapshot patchRelativeToBase: self parentSnapshot.
- | changes parentInfo parentSnapshot |
- parentInfo := self ancestors
- ifEmpty: [nil]
- ifNotEmpty: [self ancestors first].
- parentSnapshot := self findSnapshotWithVersionInfo: parentInfo.
- changes := package snapshot patchRelativeToBase: parentSnapshot.
^ (MCPatchMessage new patch: changes) message!
Item was removed:
- ----- Method: MCWorkingCopy>>requestVersionNameAndMessageWithSuggestion:initialMessage: (in category 'private') -----
- requestVersionNameAndMessageWithSuggestion: nameString initialMessage: msgString
- ^ (MCVersionNameAndMessageRequest new
- suggestedName: nameString;
- initialMessage: msgString
- ) signal!
Item was added:
+ ----- Method: MCWorkingCopy>>requestVersionNameAndMessageWithSuggestion:initialMessage:patch: (in category 'private') -----
+ requestVersionNameAndMessageWithSuggestion: nameString initialMessage: msgString patch: aPatch
+ ^ (MCVersionNameAndMessageRequest new
+ suggestedName: nameString;
+ initialMessage: msgString;
+ patch: aPatch
+ ) signal!
Item was changed:
----- Method: MCWorkingCopyBrowser>>saveVersion (in category 'actions') -----
saveVersion
| repo |
self canSave ifFalse: [^self].
self checkForNewerVersions ifFalse: [^self].
repo := self repository.
+ (self withRepository: repo do: [workingCopy newVersion]) ifNotNil:
- workingCopy newVersion ifNotNil:
[:v |
(MCVersionInspector new version: v) show.
Cursor wait showWhile: [repo storeVersion: v].
MCCacheRepository default cacheAllFileNamesDuring:
[repo cacheAllFileNamesDuring:
[v allAvailableDependenciesDo:
[:dep |
(repo includesVersionNamed: dep info name)
ifFalse: [repo storeVersion: dep]]]]]!
Item was added:
+ ----- Method: MCWorkingCopyBrowser>>withRepository:do: (in category 'actions') -----
+ withRepository: aRepository do: aBlock
+ ^aBlock
+ on: MCRepositoryRequest
+ do: [:req | req resume: aRepository]!
More information about the Squeak-dev
mailing list
|