diff --git a/SVS-Git.package/IceChangeSet.class/properties.json b/SVS-Git.package/IceChangeSet.class/properties.json index f31c1e7056..daee553390 100644 --- a/SVS-Git.package/IceChangeSet.class/properties.json +++ b/SVS-Git.package/IceChangeSet.class/properties.json @@ -6,9 +6,9 @@ ], "commentStamp" : "NicoPasserini 5/9/2016 18:11", "instvars" : [ - "elements" ], + ], "name" : "IceChangeSet", "pools" : [ ], - "super" : "Object", + "super" : "IceDiff", "type" : "normal" } diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/README.md b/SVS-Git.package/IceChangeSetChanged.class/README.md similarity index 100% rename from SVS-Git.package/IceRepositoryChangeSet.class/README.md rename to SVS-Git.package/IceChangeSetChanged.class/README.md diff --git a/SVS-Git.package/IceSimpleChangeSet.class/properties.json b/SVS-Git.package/IceChangeSetChanged.class/properties.json similarity index 66% rename from SVS-Git.package/IceSimpleChangeSet.class/properties.json rename to SVS-Git.package/IceChangeSetChanged.class/properties.json index 456917357f..1d4de6af43 100644 --- a/SVS-Git.package/IceSimpleChangeSet.class/properties.json +++ b/SVS-Git.package/IceChangeSetChanged.class/properties.json @@ -6,9 +6,9 @@ ], "commentStamp" : "", "instvars" : [ - "description" ], - "name" : "IceSimpleChangeSet", + ], + "name" : "IceChangeSetChanged", "pools" : [ ], - "super" : "IceChangeSet", + "super" : "Announcement", "type" : "normal" } diff --git a/SVS-Git.package/IceChangesTreeView.class/instance/initializeWidgets.st b/SVS-Git.package/IceChangesTreeView.class/instance/initializeWidgets.st index d549c651be..2d7fec67a2 100644 --- a/SVS-Git.package/IceChangesTreeView.class/instance/initializeWidgets.st +++ b/SVS-Git.package/IceChangesTreeView.class/instance/initializeWidgets.st @@ -8,7 +8,6 @@ initializeWidgets rootNodeHolder: [ :item | IceChangesTreeNodeModel new content: item; - children: [ tree childrenFor: item ]; yourself ]; yourself. diff --git a/SVS-Git.package/IceChangesTreeView.class/instance/model..st b/SVS-Git.package/IceChangesTreeView.class/instance/model..st index 85067d37b3..71d06b7f16 100644 --- a/SVS-Git.package/IceChangesTreeView.class/instance/model..st +++ b/SVS-Git.package/IceChangesTreeView.class/instance/model..st @@ -1,3 +1,4 @@ api -model: newModel - model value: newModel \ No newline at end of file +model: anIceChangeSet + model value: anIceChangeSet. + anIceChangeSet whenChangedDo: [ self tree updateTree. ] diff --git a/SVS-Git.package/IceClassChangeSet.class/class/class.operations..st b/SVS-Git.package/IceClassChangeSet.class/class/class.operations..st deleted file mode 100644 index d2e3688b26..0000000000 --- a/SVS-Git.package/IceClassChangeSet.class/class/class.operations..st +++ /dev/null @@ -1,3 +0,0 @@ -instance creation -class: aClass operations: aCollection - ^ self new targetClass: aClass; operations: aCollection; yourself. \ No newline at end of file diff --git a/SVS-Git.package/IceClassChangeSet.class/class/class.parent..st b/SVS-Git.package/IceClassChangeSet.class/class/class.parent..st new file mode 100644 index 0000000000..547d72d42d --- /dev/null +++ b/SVS-Git.package/IceClassChangeSet.class/class/class.parent..st @@ -0,0 +1,6 @@ +instance creation +class: aClass parent: anIcePackageChangeSet + ^ self new + targetClass: aClass; + parent: anIcePackageChangeSet; + yourself. \ No newline at end of file diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/analyseChanges.st b/SVS-Git.package/IceClassChangeSet.class/instance/analyseChanges.st new file mode 100644 index 0000000000..87a9432650 --- /dev/null +++ b/SVS-Git.package/IceClassChangeSet.class/instance/analyseChanges.st @@ -0,0 +1,14 @@ +private +analyseChanges + | newChanges | + newChanges := self parent changes select: [ :operation | + operation targetClass = self targetClass ]. + + newChanges + detect: [ :operation | operation definition isClassDefinition ] + ifFound: [ :classDef | + classDefinition := classDef. + changes := newChanges copyWithout: classDef. + ] + ifNone: [ changes := newChanges ]. + diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/changes.st b/SVS-Git.package/IceClassChangeSet.class/instance/changes.st new file mode 100644 index 0000000000..2a0b1ce96a --- /dev/null +++ b/SVS-Git.package/IceClassChangeSet.class/instance/changes.st @@ -0,0 +1,3 @@ +accessing +changes + ^ changes ifNil: [ self analyseChanges. changes ] diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/classDefinition.st b/SVS-Git.package/IceClassChangeSet.class/instance/classDefinition.st new file mode 100644 index 0000000000..a502452187 --- /dev/null +++ b/SVS-Git.package/IceClassChangeSet.class/instance/classDefinition.st @@ -0,0 +1,3 @@ +accessing +classDefinition + ^ classDefinition ifNil: [ self analyseChanges. classDefinition ] diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/initialElements.st b/SVS-Git.package/IceClassChangeSet.class/instance/initialElements.st index 530db5ed2c..4e0252cf49 100644 --- a/SVS-Git.package/IceClassChangeSet.class/instance/initialElements.st +++ b/SVS-Git.package/IceClassChangeSet.class/instance/initialElements.st @@ -1,3 +1,3 @@ initialization initialElements - ^ self operations collect: #asIceChangeSet \ No newline at end of file + ^ self changes collect: #asIceChangeSet \ No newline at end of file diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/operations..st b/SVS-Git.package/IceClassChangeSet.class/instance/operations..st deleted file mode 100644 index 3a1cf1ced9..0000000000 --- a/SVS-Git.package/IceClassChangeSet.class/instance/operations..st +++ /dev/null @@ -1,10 +0,0 @@ -accessing -operations: aCollection - aCollection - detect: [ :operation | operation definition isClassDefinition ] - ifFound: [ :classDef | - classDefinition := classDef. - operations := aCollection copyWithout: classDef. - ] - ifNone: [ operations := aCollection ]. - diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/operations.st b/SVS-Git.package/IceClassChangeSet.class/instance/operations.st deleted file mode 100644 index 27108c7cb5..0000000000 --- a/SVS-Git.package/IceClassChangeSet.class/instance/operations.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -operations - ^ operations \ No newline at end of file diff --git a/SVS-Git.package/IceClassChangeSet.class/instance/updateDiff..st b/SVS-Git.package/IceClassChangeSet.class/instance/updateDiff..st new file mode 100644 index 0000000000..78056737ef --- /dev/null +++ b/SVS-Git.package/IceClassChangeSet.class/instance/updateDiff..st @@ -0,0 +1,10 @@ +*SVS-Git-UI +updateDiff: aDiffModel + self classDefinition + ifNil: [ super updateDiff: aDiffModel ] + ifNotNil: [ :cd | + aDiffModel + contextClass: nil; + leftText: cd toSource; + rightText: cd fromSource + ] diff --git a/SVS-Git.package/IceClassChangeSet.class/properties.json b/SVS-Git.package/IceClassChangeSet.class/properties.json index ab57a9607b..ead3c85b41 100644 --- a/SVS-Git.package/IceClassChangeSet.class/properties.json +++ b/SVS-Git.package/IceClassChangeSet.class/properties.json @@ -7,8 +7,8 @@ "commentStamp" : "", "instvars" : [ "targetClass", - "operations", - "classDefinition" ], + "classDefinition", + "changes" ], "name" : "IceClassChangeSet", "pools" : [ ], diff --git a/SVS-Git.package/IceCommitModel.class/class/defaultSpec.st b/SVS-Git.package/IceCommitModel.class/class/defaultSpec.st index 02d006d8e7..59684f9e1c 100644 --- a/SVS-Git.package/IceCommitModel.class/class/defaultSpec.st +++ b/SVS-Git.package/IceCommitModel.class/class/defaultSpec.st @@ -5,5 +5,8 @@ defaultSpec ^ SpecLayout composed newColumn: [ :col | col add: #message; - add: #commitButton height: self toolbarHeight + newRow: [ :row | row + add: #commitButton; + add: #refreshButton + ] height: self toolbarHeight ] diff --git a/SVS-Git.package/IceCommitModel.class/instance/initializePresenter.st b/SVS-Git.package/IceCommitModel.class/instance/initializePresenter.st index 1f6e327d6c..8f2ff47c8e 100644 --- a/SVS-Git.package/IceCommitModel.class/instance/initializePresenter.st +++ b/SVS-Git.package/IceCommitModel.class/instance/initializePresenter.st @@ -1,5 +1,6 @@ initialization initializePresenter message acceptBlock: [ :text | - text ifNotEmpty: [ self model commitWithMessage: text asString ] ]. - commitButton action: [ message accept ] \ No newline at end of file + text ifNotEmpty: [ self model commitWithMessage: text asString. ] ]. + commitButton action: [ message accept ]. + refreshButton action: [ self model refresh ] \ No newline at end of file diff --git a/SVS-Git.package/IceCommitModel.class/instance/initializeWidgets.st b/SVS-Git.package/IceCommitModel.class/instance/initializeWidgets.st index 3c84d10a1b..c798aa3d7c 100644 --- a/SVS-Git.package/IceCommitModel.class/instance/initializeWidgets.st +++ b/SVS-Git.package/IceCommitModel.class/instance/initializeWidgets.st @@ -4,6 +4,10 @@ initializeWidgets commitButton := self newButton label: 'Commit'; yourself. + + refreshButton := self newButton + label: 'Refresh changes'; + yourself. self focusOrder add: message. \ No newline at end of file diff --git a/SVS-Git.package/IceCommitModel.class/instance/refreshButton.st b/SVS-Git.package/IceCommitModel.class/instance/refreshButton.st new file mode 100644 index 0000000000..709b5a8728 --- /dev/null +++ b/SVS-Git.package/IceCommitModel.class/instance/refreshButton.st @@ -0,0 +1,3 @@ +accessing +refreshButton + ^ refreshButton \ No newline at end of file diff --git a/SVS-Git.package/IceCommitModel.class/properties.json b/SVS-Git.package/IceCommitModel.class/properties.json index 31edc9841b..32af2c7938 100644 --- a/SVS-Git.package/IceCommitModel.class/properties.json +++ b/SVS-Git.package/IceCommitModel.class/properties.json @@ -8,7 +8,8 @@ "instvars" : [ "message", "commitButton", - "model" ], + "model", + "refreshButton" ], "name" : "IceCommitModel", "pools" : [ ], diff --git a/SVS-Git.package/IceDiff.class/README.md b/SVS-Git.package/IceDiff.class/README.md new file mode 100644 index 0000000000..7fc232abf4 --- /dev/null +++ b/SVS-Git.package/IceDiff.class/README.md @@ -0,0 +1 @@ +Parent class for any comparison between two versions of the code (working copy, commit or other) and comprising any level of granularity (a whole repository, a package, a class, etc.). \ No newline at end of file diff --git a/SVS-Git.package/IceStructuralChangeSet.class/instance/elements.st b/SVS-Git.package/IceDiff.class/instance/elements.st similarity index 100% rename from SVS-Git.package/IceStructuralChangeSet.class/instance/elements.st rename to SVS-Git.package/IceDiff.class/instance/elements.st diff --git a/SVS-Git.package/IceStructuralChangeSet.class/instance/initialElements.st b/SVS-Git.package/IceDiff.class/instance/initialElements.st similarity index 100% rename from SVS-Git.package/IceStructuralChangeSet.class/instance/initialElements.st rename to SVS-Git.package/IceDiff.class/instance/initialElements.st diff --git a/SVS-Git.package/IceDiff.class/instance/initialize.st b/SVS-Git.package/IceDiff.class/instance/initialize.st new file mode 100644 index 0000000000..776be12a04 --- /dev/null +++ b/SVS-Git.package/IceDiff.class/instance/initialize.st @@ -0,0 +1,4 @@ +initialization +initialize + super initialize. + announcer := Announcer new. \ No newline at end of file diff --git a/SVS-Git.package/IceDiff.class/instance/refresh.st b/SVS-Git.package/IceDiff.class/instance/refresh.st new file mode 100644 index 0000000000..4072798c76 --- /dev/null +++ b/SVS-Git.package/IceDiff.class/instance/refresh.st @@ -0,0 +1,4 @@ +actions +refresh + elements ifNotNil: [ elements do: #refresh ]. + announcer announce: IceChangeSetChanged new. diff --git a/SVS-Git.package/IceDiff.class/instance/whenChangedDo..st b/SVS-Git.package/IceDiff.class/instance/whenChangedDo..st new file mode 100644 index 0000000000..9241750c7c --- /dev/null +++ b/SVS-Git.package/IceDiff.class/instance/whenChangedDo..st @@ -0,0 +1,3 @@ +events +whenChangedDo: aBlock + announcer when: IceChangeSetChanged do: aBlock \ No newline at end of file diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/properties.json b/SVS-Git.package/IceDiff.class/properties.json similarity index 51% rename from SVS-Git.package/IceRepositoryChangeSet.class/properties.json rename to SVS-Git.package/IceDiff.class/properties.json index 3aeaeec805..ad20bf3146 100644 --- a/SVS-Git.package/IceRepositoryChangeSet.class/properties.json +++ b/SVS-Git.package/IceDiff.class/properties.json @@ -4,11 +4,12 @@ ], "classvars" : [ ], - "commentStamp" : "", + "commentStamp" : "NicoPasserini 5/12/2016 17:23", "instvars" : [ - "repository" ], - "name" : "IceRepositoryChangeSet", + "elements", + "announcer" ], + "name" : "IceDiff", "pools" : [ ], - "super" : "IceStructuralChangeSet", + "super" : "Object", "type" : "normal" } diff --git a/SVS-Git.package/IceExamples.class/class/exampleChangesTree2.st b/SVS-Git.package/IceExamples.class/class/exampleChangesTree2.st index 6f6bd0b60d..747a08c0b9 100644 --- a/SVS-Git.package/IceExamples.class/class/exampleChangesTree2.st +++ b/SVS-Git.package/IceExamples.class/class/exampleChangesTree2.st @@ -1,10 +1,10 @@ examples - change tree exampleChangesTree2 - | ds git changes | - git := Git new origin: 'git@github.com:npasserini/pharo-git.git'. - changes := IceRepositoryChangeSet fromRepository: git. + | repository changeSet ds | + repository := Git new origin: 'git@github.com:npasserini/pharo-git-test.git'. + changeSet := IceWorkingCopyDiff forRepository: repository. ds := FTTreeDataSource - roots: (changes elements sort: [ :a :b | a name < b name ]) + roots: (changeSet elements sort: [ :a :b | a name < b name ]) children: [ :data | data elements sort: [ :a :b | a name < b name ] ]. FTTableMorph new extent: 200 @ 400; diff --git a/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnIcebergPackage.st b/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnIcebergPackage.st index cfcf508cad..ed1fb4d78e 100644 --- a/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnIcebergPackage.st +++ b/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnIcebergPackage.st @@ -1,8 +1,8 @@ examples - change tree exampleChangesTreeOnIcebergPackage - | git changes | - git := Git new origin: 'git@github.com:npasserini/pharo-git.git'. - changes := IceRepositoryChangeSet fromRepository: git. + | repository changeSet | + repository := Git new origin: 'git@github.com:npasserini/pharo-git-test.git'. + changeSet := IceWorkingCopyDiff forRepository: repository. IceChangesTreeView new - model: changes; + model: changeSet; openWithSpec. diff --git a/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnTestPackage.st b/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnTestPackage.st index dc12098a05..5fdd0444d7 100644 --- a/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnTestPackage.st +++ b/SVS-Git.package/IceExamples.class/class/exampleChangesTreeOnTestPackage.st @@ -1,11 +1,10 @@ examples - change tree exampleChangesTreeOnTestPackage - | git changes | - Transcript show: '----------------------------------'; cr. - git := Git new origin: 'git@github.com:npasserini/pharo-git-test.git'. - changes := IceRepositoryChangeSet fromRepository: git. + | repository changeSet | + repository := Git new origin: 'git@github.com:npasserini/pharo-git-test.git'. + changeSet := IceWorkingCopyDiff forRepository: repository. IceChangesTreeView new - model: changes; + model: changeSet; openWithSpec. Transcript flush. \ No newline at end of file diff --git a/SVS-Git.package/IceExamples.class/class/exampleSynchronizer.st b/SVS-Git.package/IceExamples.class/class/exampleSynchronizer.st index f458d03f69..08bfc72385 100644 --- a/SVS-Git.package/IceExamples.class/class/exampleSynchronizer.st +++ b/SVS-Git.package/IceExamples.class/class/exampleSynchronizer.st @@ -1,8 +1,8 @@ examples - change tree exampleSynchronizer | repository changeSet | - repository := Git new origin: 'git@github.com:npasserini:repackaging/pharo-git.git'. - changeSet := IceRepositoryChangeSet fromRepository: repository. + repository := Git new origin: 'git@github.com:npasserini/pharo-git.git'; branch: 'newChangeSets'. + changeSet := IceWorkingCopyDiff forRepository: repository. IceSynchronizer new changeSet: changeSet; openWithSpec. diff --git a/SVS-Git.package/IceExamples.class/class/exampleSynchronizerRepackaging.st b/SVS-Git.package/IceExamples.class/class/exampleSynchronizerRepackaging.st deleted file mode 100644 index 35cfcd08a4..0000000000 --- a/SVS-Git.package/IceExamples.class/class/exampleSynchronizerRepackaging.st +++ /dev/null @@ -1,10 +0,0 @@ -examples - change tree -exampleSynchronizerRepackaging - | repository changeSet | - repository := Git new - origin: 'git@github.com:npasserini/pharo-git.git'; - branch: 'repackaging'. - changeSet := IceRepositoryChangeSet fromRepository: repository. - IceSynchronizer new - changeSet: changeSet; - openWithSpec. diff --git a/SVS-Git.package/IcePackageChangeSet.class/README.md b/SVS-Git.package/IcePackageChangeSet.class/README.md index e69de29bb2..e0983e9aca 100644 --- a/SVS-Git.package/IcePackageChangeSet.class/README.md +++ b/SVS-Git.package/IcePackageChangeSet.class/README.md @@ -0,0 +1 @@ +Provides a filtered version of a diff, restricted to a package. \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/class/fromWorkingCopy.toRepository..st b/SVS-Git.package/IcePackageChangeSet.class/class/fromWorkingCopy.toRepository..st deleted file mode 100644 index 622b0fe779..0000000000 --- a/SVS-Git.package/IcePackageChangeSet.class/class/fromWorkingCopy.toRepository..st +++ /dev/null @@ -1,7 +0,0 @@ -instance creation -fromWorkingCopy: aWorkingCopy toRepository: aRepository - ^ self new - package: aWorkingCopy package; - mine: aWorkingCopy snapshot; - theirs: (aRepository latestVersionForPackage: aWorkingCopy package) snapshot; - yourself \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/class/package.parent..st b/SVS-Git.package/IcePackageChangeSet.class/class/package.parent..st new file mode 100644 index 0000000000..3ef6f25171 --- /dev/null +++ b/SVS-Git.package/IcePackageChangeSet.class/class/package.parent..st @@ -0,0 +1,6 @@ +instance creation +package: aPackage parent: anIceDiff + ^ self new + package: aPackage; + parent: anIceDiff; + yourself \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/changedClasses.st b/SVS-Git.package/IcePackageChangeSet.class/instance/changedClasses.st new file mode 100644 index 0000000000..410d8287ff --- /dev/null +++ b/SVS-Git.package/IcePackageChangeSet.class/instance/changedClasses.st @@ -0,0 +1,3 @@ +initialization +changedClasses + ^ self changes collect: #targetClass as: Set \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/changes.st b/SVS-Git.package/IcePackageChangeSet.class/instance/changes.st new file mode 100644 index 0000000000..8574a4a00a --- /dev/null +++ b/SVS-Git.package/IcePackageChangeSet.class/instance/changes.st @@ -0,0 +1,4 @@ +initialization +changes + ^ self parent changes select: [ :change | + change targetClass notNil and: [ change targetClass package mcPackage = self package ] ] \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/initialElements.st b/SVS-Git.package/IcePackageChangeSet.class/instance/initialElements.st index 22cadac82d..c5e1ae845c 100644 --- a/SVS-Git.package/IcePackageChangeSet.class/instance/initialElements.st +++ b/SVS-Git.package/IcePackageChangeSet.class/instance/initialElements.st @@ -1,29 +1,3 @@ initialization initialElements - | changeSets localChanges extensionChanges | - - changeSets := (((self patch operations - "If class is nil it represents a package operation, - which is not persisted in current file format." - select: [ :op | op targetClass notNil ]) - groupedBy: #targetClass) - associations collect: [:assoc | - IceClassChangeSet class: assoc key operations: assoc value]) - groupedBy: [ :changeSet | self isExtension: changeSet ]. - - - localChanges := changeSets at: false ifAbsent: {}. - extensionChanges := changeSets at: true - ifPresent: [:extensions | - { IceSimpleChangeSet - description: '* extension methods' - elements: extensions }] - ifAbsent: {}. - - ^ localChanges, extensionChanges - -"[ :op | | targetClass | - targetClass := op targetClass. - targetClass package = self package correspondingRPackage - ifTrue: [targetClass] - ifFalse: ['* extension methods']]" \ No newline at end of file + ^ self changedClasses collect: [:class | IceClassChangeSet class: class parent: self ] diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/mine..st b/SVS-Git.package/IcePackageChangeSet.class/instance/mine..st deleted file mode 100644 index 8029775a10..0000000000 --- a/SVS-Git.package/IcePackageChangeSet.class/instance/mine..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -mine: anObject - mine := anObject \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/mine.st b/SVS-Git.package/IcePackageChangeSet.class/instance/mine.st deleted file mode 100644 index 2b901bae94..0000000000 --- a/SVS-Git.package/IcePackageChangeSet.class/instance/mine.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -mine - ^ mine \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/patch.st b/SVS-Git.package/IcePackageChangeSet.class/instance/patch.st deleted file mode 100644 index 795c5a7489..0000000000 --- a/SVS-Git.package/IcePackageChangeSet.class/instance/patch.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -patch - ^ patch ifNil: [ patch := MCPatch fromBase: theirs target: mine ] \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/refresh.st b/SVS-Git.package/IcePackageChangeSet.class/instance/refresh.st new file mode 100644 index 0000000000..7c04c8578f --- /dev/null +++ b/SVS-Git.package/IcePackageChangeSet.class/instance/refresh.st @@ -0,0 +1,4 @@ +actions +refresh + super refresh. + elements := nil. \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/theirs..st b/SVS-Git.package/IcePackageChangeSet.class/instance/theirs..st deleted file mode 100644 index 4771ab506c..0000000000 --- a/SVS-Git.package/IcePackageChangeSet.class/instance/theirs..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -theirs: anObject - theirs := anObject \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/instance/theirs.st b/SVS-Git.package/IcePackageChangeSet.class/instance/theirs.st deleted file mode 100644 index b87185dd38..0000000000 --- a/SVS-Git.package/IcePackageChangeSet.class/instance/theirs.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -theirs - ^ theirs \ No newline at end of file diff --git a/SVS-Git.package/IcePackageChangeSet.class/properties.json b/SVS-Git.package/IcePackageChangeSet.class/properties.json index 716d4544e6..526f560669 100644 --- a/SVS-Git.package/IcePackageChangeSet.class/properties.json +++ b/SVS-Git.package/IcePackageChangeSet.class/properties.json @@ -4,12 +4,9 @@ ], "classvars" : [ ], - "commentStamp" : "", + "commentStamp" : "NicoPasserini 5/12/2016 17:32", "instvars" : [ - "package", - "mine", - "theirs", - "patch" ], + "package" ], "name" : "IcePackageChangeSet", "pools" : [ ], diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/instance/initialElements.st b/SVS-Git.package/IceRepositoryChangeSet.class/instance/initialElements.st deleted file mode 100644 index a9403228b2..0000000000 --- a/SVS-Git.package/IceRepositoryChangeSet.class/instance/initialElements.st +++ /dev/null @@ -1,7 +0,0 @@ -initialization -initialElements - ^ (Ice workingCopiesForRepository: repository) - collect: [ :wc | - IcePackageChangeSet - fromWorkingCopy: wc - toRepository: repository ] \ No newline at end of file diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/instance/printOn..st b/SVS-Git.package/IceRepositoryChangeSet.class/instance/printOn..st deleted file mode 100644 index 9c07c5bae2..0000000000 --- a/SVS-Git.package/IceRepositoryChangeSet.class/instance/printOn..st +++ /dev/null @@ -1,3 +0,0 @@ -printing -printOn: aStream - aStream nextPutAll: repository origin \ No newline at end of file diff --git a/SVS-Git.package/IceSimpleChangeSet.class/README.md b/SVS-Git.package/IceSimpleChangeSet.class/README.md deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/SVS-Git.package/IceSimpleChangeSet.class/class/description.elements..st b/SVS-Git.package/IceSimpleChangeSet.class/class/description.elements..st deleted file mode 100644 index 9ce46f9353..0000000000 --- a/SVS-Git.package/IceSimpleChangeSet.class/class/description.elements..st +++ /dev/null @@ -1,6 +0,0 @@ -instance creation -description: aString elements: aCollectionOfChangeSets - ^ self new - description: aString; - elements: aCollectionOfChangeSets; - yourself \ No newline at end of file diff --git a/SVS-Git.package/IceSimpleChangeSet.class/instance/description..st b/SVS-Git.package/IceSimpleChangeSet.class/instance/description..st deleted file mode 100644 index 24c97bebce..0000000000 --- a/SVS-Git.package/IceSimpleChangeSet.class/instance/description..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -description: anObject - description := anObject \ No newline at end of file diff --git a/SVS-Git.package/IceSimpleChangeSet.class/instance/description.st b/SVS-Git.package/IceSimpleChangeSet.class/instance/description.st deleted file mode 100644 index c5ddedef1a..0000000000 --- a/SVS-Git.package/IceSimpleChangeSet.class/instance/description.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -description - ^ description \ No newline at end of file diff --git a/SVS-Git.package/IceSimpleChangeSet.class/instance/elements..st b/SVS-Git.package/IceSimpleChangeSet.class/instance/elements..st deleted file mode 100644 index 7e7ebd6af4..0000000000 --- a/SVS-Git.package/IceSimpleChangeSet.class/instance/elements..st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -elements: anObject - ^ elements := anObject \ No newline at end of file diff --git a/SVS-Git.package/IceSimpleChangeSet.class/instance/elements.st b/SVS-Git.package/IceSimpleChangeSet.class/instance/elements.st deleted file mode 100644 index 728e7ffc7e..0000000000 --- a/SVS-Git.package/IceSimpleChangeSet.class/instance/elements.st +++ /dev/null @@ -1,3 +0,0 @@ -accessing -elements - ^ elements \ No newline at end of file diff --git a/SVS-Git.package/IceSimpleChangeSet.class/instance/icon.st b/SVS-Git.package/IceSimpleChangeSet.class/instance/icon.st deleted file mode 100644 index 4b9a8979fc..0000000000 --- a/SVS-Git.package/IceSimpleChangeSet.class/instance/icon.st +++ /dev/null @@ -1,3 +0,0 @@ -*SVS-Git-UI -icon - ^ Smalltalk ui icons iconNamed: #dirtyPackage \ No newline at end of file diff --git a/SVS-Git.package/IceStructuralChangeSet.class/instance/parent..st b/SVS-Git.package/IceStructuralChangeSet.class/instance/parent..st new file mode 100644 index 0000000000..d52064f618 --- /dev/null +++ b/SVS-Git.package/IceStructuralChangeSet.class/instance/parent..st @@ -0,0 +1,3 @@ +accessing +parent: anObject + parent := anObject \ No newline at end of file diff --git a/SVS-Git.package/IceStructuralChangeSet.class/instance/parent.st b/SVS-Git.package/IceStructuralChangeSet.class/instance/parent.st new file mode 100644 index 0000000000..eface7d33a --- /dev/null +++ b/SVS-Git.package/IceStructuralChangeSet.class/instance/parent.st @@ -0,0 +1,3 @@ +accessing +parent + ^ parent \ No newline at end of file diff --git a/SVS-Git.package/IceStructuralChangeSet.class/properties.json b/SVS-Git.package/IceStructuralChangeSet.class/properties.json index 7c542bbe7e..d7d984826f 100644 --- a/SVS-Git.package/IceStructuralChangeSet.class/properties.json +++ b/SVS-Git.package/IceStructuralChangeSet.class/properties.json @@ -4,9 +4,9 @@ ], "classvars" : [ ], - "commentStamp" : "NicoPasserini 5/9/2016 18:10", + "commentStamp" : "", "instvars" : [ - ], + "parent" ], "name" : "IceStructuralChangeSet", "pools" : [ ], diff --git a/SVS-Git.package/IceSynchronizer.class/instance/changeSet..st b/SVS-Git.package/IceSynchronizer.class/instance/changeSet..st index 317ca20cdf..64c55e5765 100644 --- a/SVS-Git.package/IceSynchronizer.class/instance/changeSet..st +++ b/SVS-Git.package/IceSynchronizer.class/instance/changeSet..st @@ -2,3 +2,4 @@ api changeSet: anIceChangeSet commit model: anIceChangeSet. changes model: anIceChangeSet. + diff --git a/SVS-Git.package/IceWorkingCopyDiff.class/README.md b/SVS-Git.package/IceWorkingCopyDiff.class/README.md new file mode 100644 index 0000000000..84f57d7a8b --- /dev/null +++ b/SVS-Git.package/IceWorkingCopyDiff.class/README.md @@ -0,0 +1,16 @@ +I model (and track) the diff between the working copy and the last commit in a given repository. + +For the Collaborators Part: State my main collaborators and one line about how I interact with them. + +Public API and Key Messages + +- message one +- message two +- (for bonus points) how to create instances. + + One simple example is simply gorgeous. + +Internal Representation and Key Implementation Points. + + + Implementation Points \ No newline at end of file diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/class/fromRepository..st b/SVS-Git.package/IceWorkingCopyDiff.class/class/forRepository..st similarity index 70% rename from SVS-Git.package/IceRepositoryChangeSet.class/class/fromRepository..st rename to SVS-Git.package/IceWorkingCopyDiff.class/class/forRepository..st index 1ffa1b5fe3..b05dcbe1f8 100644 --- a/SVS-Git.package/IceRepositoryChangeSet.class/class/fromRepository..st +++ b/SVS-Git.package/IceWorkingCopyDiff.class/class/forRepository..st @@ -1,5 +1,5 @@ instance creation -fromRepository: aRepository +forRepository: aRepository ^ self new repository: aRepository; yourself. \ No newline at end of file diff --git a/SVS-Git.package/IceWorkingCopyDiff.class/instance/changes.st b/SVS-Git.package/IceWorkingCopyDiff.class/instance/changes.st new file mode 100644 index 0000000000..16432a696b --- /dev/null +++ b/SVS-Git.package/IceWorkingCopyDiff.class/instance/changes.st @@ -0,0 +1,11 @@ +querying +changes + ^ changes ifNil: [changes := + repository allPackages flatCollect: [ :package | + | workingCopy mine theirs patch | + workingCopy := Ice workingCopyForPackage: package. + mine := workingCopy snapshot. + theirs := (repository latestVersionForPackage: package) snapshot. + patch := MCPatch fromBase: theirs target: mine. + patch operations + ]] diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/instance/commitWithMessage..st b/SVS-Git.package/IceWorkingCopyDiff.class/instance/commitWithMessage..st similarity index 100% rename from SVS-Git.package/IceRepositoryChangeSet.class/instance/commitWithMessage..st rename to SVS-Git.package/IceWorkingCopyDiff.class/instance/commitWithMessage..st diff --git a/SVS-Git.package/IceWorkingCopyDiff.class/instance/initialElements.st b/SVS-Git.package/IceWorkingCopyDiff.class/instance/initialElements.st new file mode 100644 index 0000000000..5a09a19ff6 --- /dev/null +++ b/SVS-Git.package/IceWorkingCopyDiff.class/instance/initialElements.st @@ -0,0 +1,6 @@ +as yet unclassified +initialElements + ^ repository allPackages collect: [ :package | + IcePackageChangeSet + package: package + parent: self ] \ No newline at end of file diff --git a/SVS-Git.package/IceWorkingCopyDiff.class/instance/refresh.st b/SVS-Git.package/IceWorkingCopyDiff.class/instance/refresh.st new file mode 100644 index 0000000000..df1ea46ad5 --- /dev/null +++ b/SVS-Git.package/IceWorkingCopyDiff.class/instance/refresh.st @@ -0,0 +1,4 @@ +actions +refresh + super refresh. + changes := nil. \ No newline at end of file diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/instance/repository..st b/SVS-Git.package/IceWorkingCopyDiff.class/instance/repository..st similarity index 100% rename from SVS-Git.package/IceRepositoryChangeSet.class/instance/repository..st rename to SVS-Git.package/IceWorkingCopyDiff.class/instance/repository..st diff --git a/SVS-Git.package/IceRepositoryChangeSet.class/instance/repository.st b/SVS-Git.package/IceWorkingCopyDiff.class/instance/repository.st similarity index 100% rename from SVS-Git.package/IceRepositoryChangeSet.class/instance/repository.st rename to SVS-Git.package/IceWorkingCopyDiff.class/instance/repository.st diff --git a/SVS-Git.package/IceWorkingCopyDiff.class/properties.json b/SVS-Git.package/IceWorkingCopyDiff.class/properties.json new file mode 100644 index 0000000000..e74ced051b --- /dev/null +++ b/SVS-Git.package/IceWorkingCopyDiff.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "SVS-Git", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "NicoPasserini 5/12/2016 17:10", + "instvars" : [ + "repository", + "changes" ], + "name" : "IceWorkingCopyDiff", + "pools" : [ + ], + "super" : "IceDiff", + "type" : "normal" }