From 1778263bbcfd975c02c591be2d54b54c3a88a637 Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Mon, 4 Sep 2023 12:16:46 +0200 Subject: [PATCH 1/6] Unify snapshot method with Monticello Iceberg implemented its own MCPackage>>snapshot method to modify the one of Monticello. The method of Monticello was updated to use the same change as Iceberg but also it was updated to reduce the number of categories (package-tag) manipulations. I want to check here if we could use this new version for Iceberg too as a step toward getting rid of the categories in Pharo --- Iceberg/IceWorkingCopy.class.st | 2 +- Iceberg/MCPackage.extension.st | 20 -------------------- 2 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 Iceberg/MCPackage.extension.st diff --git a/Iceberg/IceWorkingCopy.class.st b/Iceberg/IceWorkingCopy.class.st index b1e6efe465..be188eb427 100644 --- a/Iceberg/IceWorkingCopy.class.st +++ b/Iceberg/IceWorkingCopy.class.st @@ -729,7 +729,7 @@ IceWorkingCopy >> snapshotFor: package [ IceWorkingCopy >> snapshotForPackage: aPackage [ ^ aPackage isLoaded - ifTrue: [ (MCPackage named: aPackage name) basicSnapshot ] + ifTrue: [ (MCPackage named: aPackage name) snapshot ] ifFalse: [ self referenceCommit snapshotForPackage: aPackage ] ] diff --git a/Iceberg/MCPackage.extension.st b/Iceberg/MCPackage.extension.st deleted file mode 100644 index 4f6709bb27..0000000000 --- a/Iceberg/MCPackage.extension.st +++ /dev/null @@ -1,20 +0,0 @@ -Extension { #name : #MCPackage } - -{ #category : #'*Iceberg' } -MCPackage >> basicSnapshot [ - | rPackageSet definitions categories | - rPackageSet := self packageSet. - definitions := OrderedCollection new. - categories := rPackageSet categoryNames asArray. - categories isEmpty - ifFalse: [ definitions add: (MCOrganizationDefinition categories: categories) ]. - - rPackageSet methods - do: [:ea | definitions add: ea asMCMethodDefinition]. - - rPackageSet definedClasses - do: [:ea | definitions addAll: ea classDefinitions]. - - ^ MCSnapshot fromDefinitions: definitions - -] From 034d567c38f61ebe4e6f6199a628f4d64183f2e0 Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Wed, 6 Sep 2023 15:19:31 +0200 Subject: [PATCH 2/6] Remove usage of categories in MCOrganizationDefinition Base the organization definition on packages and tags instead of categories. #ensureMCClassOrganisationHasCorrectStructure: has been simplified because now the organization knows the package and we do not need to do magic to ensure we have the right one IcePackageDefinition has been updated to use the package name and tag names instead of categories. This change includes https://github.com/pharo-vcs/iceberg/pull/1728 --- .../IceConvertFormatAction.class.st | 61 ++++----------- Iceberg/IceMCDefinitionImporter.class.st | 8 +- Iceberg/IcePackageDefinition.class.st | 77 +++++++++++-------- 3 files changed, 66 insertions(+), 80 deletions(-) diff --git a/Iceberg-Plugin-Migration/IceConvertFormatAction.class.st b/Iceberg-Plugin-Migration/IceConvertFormatAction.class.st index 554caf39f1..b7f0770e95 100644 --- a/Iceberg-Plugin-Migration/IceConvertFormatAction.class.st +++ b/Iceberg-Plugin-Migration/IceConvertFormatAction.class.st @@ -34,21 +34,9 @@ IceConvertFormatAction >> codeDirectoryWithDelim [ { #category : #private } IceConvertFormatAction >> ensureMCClassOrganisationHasCorrectStructure: mcVersion [ - | organisation | - organisation := mcVersion snapshot definitions - detect: [ :each | each isOrganizationDefinition ]. - - (organisation categories size = 1) ifFalse: [ | baseCategory | - baseCategory := self - obtainCommonCategory: organisation categories first - from: organisation categories. - baseCategory ifEmpty: [ - self error: 'I didn''t find a base category, something is wrong with the package definition' ]. - baseCategory = organisation categories first ifFalse: [ - organisation categories: (organisation categories copyWithFirst: baseCategory) ] ]. - - ^ mcVersion + (mcVersion snapshot definitions detect: [ :each | each isOrganizationDefinition ]) packageName ifNil: [ + self error: 'I have no package name in the organization definition' ] ] { #category : #private } @@ -57,16 +45,14 @@ IceConvertFormatAction >> ensureMCVersionWithClassOrganisation: mcVersion [ only for extensions, we need to ensure it has one, otherwise package creation will fail" - ^ mcVersion snapshot definitions - detect: [ :each | each isClassDefinition ] - ifFound: [ :each | mcVersion ] - ifNone: [ - MCVersion - package: mcVersion package - info: mcVersion info - snapshot: (MCSnapshot fromDefinitions: ( - { MCOrganizationDefinition categories: { mcVersion package name }}, - mcVersion snapshot definitions)) ] + ^ mcVersion snapshot definitions + detect: [ :each | each isClassDefinition ] + ifFound: [ :each | mcVersion ] + ifNone: [ + MCVersion + package: mcVersion package + info: mcVersion info + snapshot: (MCSnapshot fromDefinitions: { (MCOrganizationDefinition packageName: mcVersion package name) } , mcVersion snapshot definitions) ] ] { #category : #execution } @@ -103,22 +89,20 @@ IceConvertFormatAction >> mergeWithCurrentBranch: anObject [ { #category : #private } IceConvertFormatAction >> migratePackage: packageName commit: commit [ + | filetreePackage srcDir subDirWithDelim mcVersion | - srcDir := self codeDirectory. subDirWithDelim := self codeDirectoryWithDelim. - + mcVersion := (commit versionFor: packageName) mcVersion. mcVersion := self ensureMCVersionWithClassOrganisation: mcVersion. - mcVersion := self ensureMCClassOrganisationHasCorrectStructure: mcVersion. - self writerClass - forInternalStoreFileOut: mcVersion - on: repository. + self ensureMCClassOrganisationHasCorrectStructure: mcVersion. + self writerClass forInternalStoreFileOut: mcVersion on: repository. filetreePackage := commit writerClass directoryNameFor: packageName. (srcDir / filetreePackage) ensureDeleteAll. - self repository addFilesToIndex: { - subDirWithDelim, (IceLibgitTonelWriter directoryNameFor: packageName). - subDirWithDelim, (IceLibgitFiletreeWriter directoryNameFor: packageName) } + self repository addFilesToIndex: { + (subDirWithDelim , (IceLibgitTonelWriter directoryNameFor: packageName)). + (subDirWithDelim , (IceLibgitFiletreeWriter directoryNameFor: packageName)) } ] { #category : #private } @@ -152,17 +136,6 @@ IceConvertFormatAction >> migrateSources [ andParents: { commit }. ] -{ #category : #private } -IceConvertFormatAction >> obtainCommonCategory: aString from: aCollection [ - - ^ (aCollection allSatisfy: [ :each | each beginsWith: aString ]) - ifTrue: [ aString ] - ifFalse: [ - (aString includes: $-) - ifTrue: [ self obtainCommonCategory: (aString copyUpToLast: $-) from: aCollection ] - ifFalse: [ '' ] ] -] - { #category : #private } IceConvertFormatAction >> removeFiletreeRemnants [ "remove .filetree remaining" diff --git a/Iceberg/IceMCDefinitionImporter.class.st b/Iceberg/IceMCDefinitionImporter.class.st index d76421608b..1aea3ee983 100644 --- a/Iceberg/IceMCDefinitionImporter.class.st +++ b/Iceberg/IceMCDefinitionImporter.class.st @@ -123,9 +123,11 @@ IceMCDefinitionImporter >> visitMethodDefinition: aMCMethodDefinition [ ] { #category : #visiting } -IceMCDefinitionImporter >> visitOrganizationDefinition: aMCOrganizationDefinition [ - - packageNode value categories: aMCOrganizationDefinition categories +IceMCDefinitionImporter >> visitOrganizationDefinition: aMCOrganizationDefinition [ + + packageNode value + packageName: aMCOrganizationDefinition packageName; + tagNames: aMCOrganizationDefinition tagNames ] { #category : #visiting } diff --git a/Iceberg/IcePackageDefinition.class.st b/Iceberg/IcePackageDefinition.class.st index 771ac28641..a1392a0d5d 100644 --- a/Iceberg/IcePackageDefinition.class.st +++ b/Iceberg/IcePackageDefinition.class.st @@ -10,10 +10,11 @@ Class { #superclass : #IceDefinition, #instVars : [ 'package', - 'categories', - 'path' + 'path', + 'packageName', + 'tagNames' ], - #category : 'Iceberg-Changes' + #category : #'Iceberg-Changes' } { #category : #visiting } @@ -37,44 +38,30 @@ IcePackageDefinition >> addModification: anIceModification toPatcher: aMCPatcher { #category : #patching } IcePackageDefinition >> addToPatcher: aPatcher [ - - aPatcher addDefinition: (MCOrganizationDefinition categories: categories) -] - -{ #category : #accessing } -IcePackageDefinition >> asMCDefinition [ - - ^ MCOrganizationDefinition categories: categories -] -{ #category : #accessing } -IcePackageDefinition >> categories [ - ^ categories + aPatcher addDefinition: self asMCDefinition ] { #category : #accessing } -IcePackageDefinition >> categories: aCollection [ +IcePackageDefinition >> asMCDefinition [ - categories := aCollection + ^ MCOrganizationDefinition packageName: packageName tagNames: tagNames ] { #category : #accessing } IcePackageDefinition >> contents [ - - ^ String streamContents: [ :stream | - stream nextPutAll: 'Package tags: '. - categories do: [ :elem | - stream nextPutAll: String crlf; - nextPutAll: String tab; - nextPutAll: elem. - ]] -] -{ #category : #initialization } -IcePackageDefinition >> initialize [ - - super initialize. - categories := #() + ^ String streamContents: [ :stream | + stream + nextPutAll: 'Package: '; + nextPutAll: self packageName; + crlf; + nextPutAll: 'Tags: '. + self tagNames do: [ :tagName | + stream + nextPutAll: String crlf; + nextPutAll: String tab; + nextPutAll: tagName ] ] ] { #category : #testing } @@ -89,6 +76,18 @@ IcePackageDefinition >> package [ ^ package ] +{ #category : #accessing } +IcePackageDefinition >> packageName [ + + ^ packageName +] + +{ #category : #accessing } +IcePackageDefinition >> packageName: anObject [ + + packageName := anObject +] + { #category : #accessing } IcePackageDefinition >> path [ ^ path @@ -107,6 +106,18 @@ IcePackageDefinition >> removeFrom: aVisitor [ { #category : #patching } IcePackageDefinition >> removeFromPatcher: aPatcher [ - - aPatcher removeDefinition: (MCOrganizationDefinition categories: categories) + + aPatcher removeDefinition: self asMCDefinition +] + +{ #category : #accessing } +IcePackageDefinition >> tagNames [ + + ^ tagNames +] + +{ #category : #accessing } +IcePackageDefinition >> tagNames: anObject [ + + tagNames := anObject ] From 6efb431a97f473a6d6803e58ce9c29cf86c2d511 Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Wed, 6 Sep 2023 15:57:54 +0200 Subject: [PATCH 3/6] Fix tests --- .../RG2PackageDefinition.extension.st | 24 ++++++++++--------- Iceberg/IceMCPackageImporter.class.st | 17 +++++++------ 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/Iceberg-Tests/RG2PackageDefinition.extension.st b/Iceberg-Tests/RG2PackageDefinition.extension.st index 85dc06e54f..93d826948c 100644 --- a/Iceberg-Tests/RG2PackageDefinition.extension.st +++ b/Iceberg-Tests/RG2PackageDefinition.extension.st @@ -3,16 +3,18 @@ Extension { #name : #RG2PackageDefinition } { #category : #'*Iceberg-Tests' } RG2PackageDefinition >> asMCSnapshot [ - | definitions | - - definitions := ((((self definedBehaviors reject: #isMeta) sorted: [:a :b | a name < b name ]) collect: #asMCDefinition), (self extensionMethods collect: #asMCDefinition)) asOrderedCollection. - definitions addAll: ((self definedBehaviors select: [:each | each isTrait and: [each classSide hasTraitComposition]]) - collect: [:aTrait | aTrait classSide asMCDefinition]). - - definitions addAll: ((self definedBehaviors, (self definedBehaviors collect: #classSide)) flatCollect: [ :behavior | - (behavior localMethods reject: [:each | (each parent instanceSide package = each package) not]) - collect: [ :method | method asMCDefinition] ]). - definitions add: (MCOrganizationDefinition categories: {name}). + | definitions | + definitions := ((((self definedBehaviors reject: #isMeta) sorted: [ :a :b | a name < b name ]) collect: #asMCDefinition) + , (self extensionMethods collect: #asMCDefinition)) asOrderedCollection. + definitions addAll: (self definedBehaviors + select: [ :each | each isTrait and: [ each classSide hasTraitComposition ] ] + thenCollect: [ :aTrait | aTrait classSide asMCDefinition ]). - ^ MCSnapshot fromDefinitions: definitions. + definitions addAll: (self definedBehaviors , (self definedBehaviors collect: #classSide) flatCollect: [ :behavior | + behavior localMethods + select: [ :each | each parent instanceSide package = each package ] + thenCollect: [ :method | method asMCDefinition ] ]). + definitions add: (MCOrganizationDefinition packageName: name). + + ^ MCSnapshot fromDefinitions: definitions ] diff --git a/Iceberg/IceMCPackageImporter.class.st b/Iceberg/IceMCPackageImporter.class.st index 80e7617eb9..6440392218 100644 --- a/Iceberg/IceMCPackageImporter.class.st +++ b/Iceberg/IceMCPackageImporter.class.st @@ -13,22 +13,21 @@ Class { { #category : #importing } IceMCPackageImporter >> importOn: aNode [ - + | packageNode snapshot definition | "If the version does not include the package, we do not calculate a snapshot nor import it" - (version includesPackageNamed: self packageName) - ifFalse: [ ^ self ]. - + (version includesPackageNamed: self packageName) ifFalse: [ ^ self ]. + definition := IcePackageDefinition named: self packageName. packageNode := aNode addChild: definition. definition path: packageNode path. - + snapshot := self snapshot. - snapshot definitions do: [ :e | + snapshot definitions do: [ :e | e accept: (IceMCDefinitionImporter new - packageNode: packageNode; - snapshot: snapshot; - yourself) ]. + packageNode: packageNode; + snapshot: snapshot; + yourself) ]. ^ packageNode ] From 2f45ec9a7154bc9119b624dd95c43b792caad968 Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Fri, 15 Sep 2023 22:02:49 +0200 Subject: [PATCH 4/6] Fix ring working copy --- Iceberg-Memory/IceChangeImporter.extension.st | 4 +- Iceberg-Memory/IceMemoryChange.class.st | 17 +-- Iceberg-Memory/IceMemoryCommit.class.st | 47 ++++---- Iceberg-Memory/IceMemoryCommitWalk.class.st | 19 +-- Iceberg-Memory/IceMemoryIndex.class.st | 27 +++-- Iceberg-Memory/IceMemoryLocalBranch.class.st | 23 ++-- Iceberg-Memory/IceMemoryNoCommit.class.st | 9 +- Iceberg-Memory/IceMemoryProject.class.st | 27 +++-- Iceberg-Memory/IceMemoryRemote.class.st | 33 +++--- Iceberg-Memory/IceMemoryRemoteBranch.class.st | 17 +-- Iceberg-Memory/IceMemoryRepository.class.st | 111 +++++++++--------- Iceberg-Memory/IceMemoryUnbornBranch.class.st | 13 +- Iceberg-Memory/IceRingWorkingCopy.class.st | 51 ++++---- .../IceRingWorkingCopyChangerVisitor.class.st | 74 ++++++------ Iceberg-Memory/package.st | 2 +- 15 files changed, 241 insertions(+), 233 deletions(-) diff --git a/Iceberg-Memory/IceChangeImporter.extension.st b/Iceberg-Memory/IceChangeImporter.extension.st index fbf7d19754..0e606730b7 100644 --- a/Iceberg-Memory/IceChangeImporter.extension.st +++ b/Iceberg-Memory/IceChangeImporter.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #IceChangeImporter } +Extension { #name : 'IceChangeImporter' } -{ #category : #'*Iceberg-Memory' } +{ #category : '*Iceberg-Memory' } IceChangeImporter >> visitMemoryChange: anIceMemoryChange [ | importer | diff --git a/Iceberg-Memory/IceMemoryChange.class.st b/Iceberg-Memory/IceMemoryChange.class.st index bcdd5cf676..c376a941fa 100644 --- a/Iceberg-Memory/IceMemoryChange.class.st +++ b/Iceberg-Memory/IceMemoryChange.class.st @@ -1,13 +1,14 @@ Class { - #name : #IceMemoryChange, - #superclass : #IceChange, + #name : 'IceMemoryChange', + #superclass : 'IceChange', #instVars : [ 'package' ], - #category : #'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMemoryChange class >> on: anIcePackage [ ^ self new @@ -15,23 +16,23 @@ IceMemoryChange class >> on: anIcePackage [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceMemoryChange >> accept: aVisitor [ aVisitor visitMemoryChange: self ] -{ #category : #displaying } +{ #category : 'displaying' } IceMemoryChange >> displayingProgressString [ ^ 'Comparing memory changes of ' , self package name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryChange >> package [ ^ package ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryChange >> package: anIcePackage [ package := anIcePackage diff --git a/Iceberg-Memory/IceMemoryCommit.class.st b/Iceberg-Memory/IceMemoryCommit.class.st index df0142f81a..6566600ed9 100644 --- a/Iceberg-Memory/IceMemoryCommit.class.st +++ b/Iceberg-Memory/IceMemoryCommit.class.st @@ -3,22 +3,23 @@ I'm a commit that works on memory. I'm used for testing. " Class { - #name : #IceMemoryCommit, - #superclass : #IceCommit, + #name : 'IceMemoryCommit', + #superclass : 'IceCommit', #instVars : [ 'mcCommit' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #comparing } +{ #category : 'comparing' } IceMemoryCommit >> = aCommit [ ^ (self mcCommit dependencies asArray sort: [ :a :b | a timeStamp > b timeStamp ]) = (aCommit mcCommit dependencies asArray sort: [ :a :b | a timeStamp > b timeStamp ]) ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> ancestors [ ^ self mcCommit info ancestors collect: [ :parentMcCommitInfo | | iceCommit parentMcCommit | @@ -29,13 +30,13 @@ IceMemoryCommit >> ancestors [ iceCommit ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> author [ ^ mcCommit info author ] -{ #category : #'private-changes' } +{ #category : 'private-changes' } IceMemoryCommit >> changedPackagesToCommitInfo: aCommit [ | otherDependencies | @@ -47,20 +48,20 @@ IceMemoryCommit >> changedPackagesToCommitInfo: aCommit [ collect: [ :each | each package ] as: Array ] -{ #category : #'private-changes' } +{ #category : 'private-changes' } IceMemoryCommit >> changesFromCommit: anIceCommit [ ^ (anIceCommit changedPackagesToCommitInfo: self) collect: [ :package | IceMemoryChange on: package ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> comment [ ^ mcCommit info message ] -{ #category : #ancestry } +{ #category : 'ancestry' } IceMemoryCommit >> commonAncestorWithCommit: anIceMemoryCommit [ | ancestor ancestorInfo | @@ -74,13 +75,13 @@ IceMemoryCommit >> commonAncestorWithCommit: anIceMemoryCommit [ yourself ] -{ #category : #'private-monticello' } +{ #category : 'private-monticello' } IceMemoryCommit >> commonMCAncestorWith: anIceMemoryCommit [ ^ mcCommit info commonAncestorWith: anIceMemoryCommit mcCommit info ] -{ #category : #'API-tags' } +{ #category : 'API-tags' } IceMemoryCommit >> createTag: aString [ (self repository hasTagNamed: aString) ifTrue: [ @@ -91,13 +92,13 @@ IceMemoryCommit >> createTag: aString [ ^ IceTag named: aString inRepository: self repository. ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> datetime [ ^ self mcCommit info timeStamp ] -{ #category : #comparing } +{ #category : 'comparing' } IceMemoryCommit >> hash [ self mcCommit dependencies isEmpty ifTrue: [ ^ 0 hash ]. @@ -109,17 +110,17 @@ IceMemoryCommit >> hash [ fold: [ :a :b | a hash bitXor: b hash ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> id [ ^ self mcCommit info id asString ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> mcCommit [ ^ mcCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> mcCommit: aMCVersion [ self assert: (aMCVersion isKindOf: MCVersion). self assert: (aMCVersion dependencies allSatisfy: [ :each | @@ -127,25 +128,25 @@ IceMemoryCommit >> mcCommit: aMCVersion [ mcCommit := aMCVersion ] -{ #category : #merging } +{ #category : 'merging' } IceMemoryCommit >> mergeWith: anIceMemoryCommit [ ^ repository workingCopy mergeCommit: anIceMemoryCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> packageNames [ ^ (mcCommit dependencies collect: [ :each | each package name ]) asArray ] -{ #category : #'API-project' } +{ #category : 'API-project' } IceMemoryCommit >> project [ ^ IceMemoryProject onRepository: self repository commitish: self ] -{ #category : #'API-properties' } +{ #category : 'API-properties' } IceMemoryCommit >> properties [ ^ IceRepositoryProperties @@ -153,13 +154,13 @@ IceMemoryCommit >> properties [ commitish: self ] -{ #category : #TOMOVE } +{ #category : 'TOMOVE' } IceMemoryCommit >> snapshotFor: package [ ^ (self repository mcVersionFor: (self versionFor: package)) snapshot ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryCommit >> timeStamp [ ^ self mcCommit info timeStamp diff --git a/Iceberg-Memory/IceMemoryCommitWalk.class.st b/Iceberg-Memory/IceMemoryCommitWalk.class.st index 5617a5f69d..1eb2bb237a 100644 --- a/Iceberg-Memory/IceMemoryCommitWalk.class.st +++ b/Iceberg-Memory/IceMemoryCommitWalk.class.st @@ -1,43 +1,44 @@ Class { - #name : #IceMemoryCommitWalk, - #superclass : #IceAbstractCommitWalk, + #name : 'IceMemoryCommitWalk', + #superclass : 'IceAbstractCommitWalk', #instVars : [ 'startingPoint', 'queue' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #walking } +{ #category : 'walking' } IceMemoryCommitWalk >> commitsDo: aBlock [ self rawResultsDo: aBlock ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMemoryCommitWalk >> fromBranch: aBranch [ self fromCommit: aBranch commit ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMemoryCommitWalk >> fromCommit: anIceMemoryCommit [ queue add: anIceMemoryCommit ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMemoryCommitWalk >> fromTag: anIceTag [ self shouldBeImplemented. ] -{ #category : #initialization } +{ #category : 'initialization' } IceMemoryCommitWalk >> initialize [ super initialize. queue := OrderedCollection new ] -{ #category : #iterating } +{ #category : 'iterating' } IceMemoryCommitWalk >> rawResultsDo: aBlockClosure [ | current | diff --git a/Iceberg-Memory/IceMemoryIndex.class.st b/Iceberg-Memory/IceMemoryIndex.class.st index fe8d6f4031..334d7dee1f 100644 --- a/Iceberg-Memory/IceMemoryIndex.class.st +++ b/Iceberg-Memory/IceMemoryIndex.class.st @@ -1,13 +1,14 @@ Class { - #name : #IceMemoryIndex, - #superclass : #IceIndex, + #name : 'IceMemoryIndex', + #superclass : 'IceIndex', #instVars : [ 'modifiedVersions' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMemoryIndex class >> on: anIceMemoryRepository [ ^ self new @@ -15,13 +16,13 @@ IceMemoryIndex class >> on: anIceMemoryRepository [ yourself ] -{ #category : #adding } +{ #category : 'adding' } IceMemoryIndex >> addPackage: anIcePackageDefinition [ "Nothing, the package should be already added" ] -{ #category : #'API-commiting' } +{ #category : 'API-commiting' } IceMemoryIndex >> commitWithMessage: message andParents: parentCommits [ | newCommit versionInfos packageNames iceCommit head headCommit | @@ -60,39 +61,39 @@ IceMemoryIndex >> commitWithMessage: message andParents: parentCommits [ ] -{ #category : #initialization } +{ #category : 'initialization' } IceMemoryIndex >> initialize [ super initialize. modifiedVersions := Set new ] -{ #category : #testing } +{ #category : 'testing' } IceMemoryIndex >> isEmpty [ ^ modifiedVersions isEmpty ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryIndex >> modifiedVersions [ ^ modifiedVersions ] -{ #category : #storing } +{ #category : 'storing' } IceMemoryIndex >> storeMCVersion: aMCVersion [ repository internalStoreVersion: aMCVersion. modifiedVersions add: aMCVersion. ] -{ #category : #storing } +{ #category : 'storing' } IceMemoryIndex >> storeVersion: aMCVersion [ self storeMCVersion: aMCVersion ] -{ #category : #updating } +{ #category : 'updating' } IceMemoryIndex >> updateDiskWorkingCopy: anIceDiff [ anIceDiff tree @@ -103,7 +104,7 @@ IceMemoryIndex >> updateDiskWorkingCopy: anIceDiff [ diff: anIceDiff) ] -{ #category : #'as yet unclassified' } +{ #category : 'as yet unclassified' } IceMemoryIndex >> updateProject: anIceUnbornProject [ "Nothing for now" 1halt. diff --git a/Iceberg-Memory/IceMemoryLocalBranch.class.st b/Iceberg-Memory/IceMemoryLocalBranch.class.st index cf03020c2a..f128a634fe 100644 --- a/Iceberg-Memory/IceMemoryLocalBranch.class.st +++ b/Iceberg-Memory/IceMemoryLocalBranch.class.st @@ -1,32 +1,33 @@ Class { - #name : #IceMemoryLocalBranch, - #superclass : #IceLocalBranch, + #name : 'IceMemoryLocalBranch', + #superclass : 'IceLocalBranch', #instVars : [ 'commit', 'upstream' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryLocalBranch >> commit [ ^ commit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryLocalBranch >> commit: aCommit [ commit := aCommit ] -{ #category : #'API-remotes' } +{ #category : 'API-remotes' } IceMemoryLocalBranch >> hasUpstream [ ^ upstream notNil ] -{ #category : #merging } +{ #category : 'merging' } IceMemoryLocalBranch >> mergeWithBranch: anIceMemoryRemoteBranch [ "Ensure that all commits of the remote branch are in the local branch mc repository" @@ -38,25 +39,25 @@ IceMemoryLocalBranch >> mergeWithBranch: anIceMemoryRemoteBranch [ commit := self commit mergeWith: anIceMemoryRemoteBranch commit ] -{ #category : #'API-remotes' } +{ #category : 'API-remotes' } IceMemoryLocalBranch >> setUpstream: anIceMemoryRemoteBranch [ upstream := anIceMemoryRemoteBranch ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryLocalBranch >> trackedBranch [ ^ repository remoteTrackedBranches detect: [ :each | each name = name ] ] -{ #category : #tracking } +{ #category : 'tracking' } IceMemoryLocalBranch >> tracksRemoteBranch [ ^ repository remoteTrackedBranches anySatisfy: [ :branch | branch name = self name ] ] -{ #category : #'API-remotes' } +{ #category : 'API-remotes' } IceMemoryLocalBranch >> upstream [ ^ upstream ifNil: [ IceUpstreamNotConfigured signal ] diff --git a/Iceberg-Memory/IceMemoryNoCommit.class.st b/Iceberg-Memory/IceMemoryNoCommit.class.st index ae62275add..ea2800ee4a 100644 --- a/Iceberg-Memory/IceMemoryNoCommit.class.st +++ b/Iceberg-Memory/IceMemoryNoCommit.class.st @@ -1,10 +1,11 @@ Class { - #name : #IceMemoryNoCommit, - #superclass : #IceNoCommit, - #category : 'Iceberg-Memory' + #name : 'IceMemoryNoCommit', + #superclass : 'IceNoCommit', + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'API-properties' } +{ #category : 'API-properties' } IceMemoryNoCommit >> properties [ ^ IceRepositoryProperties fromDictionary: Dictionary new diff --git a/Iceberg-Memory/IceMemoryProject.class.st b/Iceberg-Memory/IceMemoryProject.class.st index dcb8c47c28..18e46b6163 100644 --- a/Iceberg-Memory/IceMemoryProject.class.st +++ b/Iceberg-Memory/IceMemoryProject.class.st @@ -1,14 +1,15 @@ Class { - #name : #IceMemoryProject, - #superclass : #Object, + #name : 'IceMemoryProject', + #superclass : 'Object', #instVars : [ 'repository', 'commitish' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'instance-creation' } +{ #category : 'instance-creation' } IceMemoryProject class >> onRepository: anIceMemoryRepository commitish: aCommitish [ ^ self new @@ -17,54 +18,54 @@ IceMemoryProject class >> onRepository: anIceMemoryRepository commitish: aCommit yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceMemoryProject >> = aMemoryProject [ ^ aMemoryProject isMemoryProject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryProject >> commitish: aCommitish [ commitish := aCommitish ] -{ #category : #testing } +{ #category : 'testing' } IceMemoryProject >> isDirty [ ^ repository workingCopy referenceCommit project ~= self ] -{ #category : #testing } +{ #category : 'testing' } IceMemoryProject >> isInvalid [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceMemoryProject >> isMemoryProject [ ^ true ] -{ #category : #'as yet unclassified' } +{ #category : 'as yet unclassified' } IceMemoryProject >> isUnbornProject [ ^ false ] -{ #category : #'API-projects' } +{ #category : 'API-projects' } IceMemoryProject >> packages [ ^ commitish packages ] -{ #category : #'API-packages' } +{ #category : 'API-packages' } IceMemoryProject >> packagesFrom: anIceMemoryCommit [ ^ anIceMemoryCommit packages ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryProject >> repository: anIceMemoryRepository [ repository := anIceMemoryRepository ] diff --git a/Iceberg-Memory/IceMemoryRemote.class.st b/Iceberg-Memory/IceMemoryRemote.class.st index 7a316a1325..ca63cf54c6 100644 --- a/Iceberg-Memory/IceMemoryRemote.class.st +++ b/Iceberg-Memory/IceMemoryRemote.class.st @@ -1,14 +1,15 @@ Class { - #name : #IceMemoryRemote, - #superclass : #IceRemote, + #name : 'IceMemoryRemote', + #superclass : 'IceRemote', #instVars : [ 'remoteRepository', 'branchRepository' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'instance-creation' } +{ #category : 'instance-creation' } IceMemoryRemote class >> name: aString remoteRepository: aRepository branchRepository: aMCBranchRepository [ ^ self new @@ -18,19 +19,19 @@ IceMemoryRemote class >> name: aString remoteRepository: aRepository branchRepos yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceMemoryRemote >> = anIceMemoryRemote [ ^ self species = anIceMemoryRemote species and: [ self remoteRepository = anIceMemoryRemote remoteRepository ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemote >> branchRepository: aMCDictionaryRepository [ branchRepository := aMCDictionaryRepository ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRemote >> branches [ ^ (self latestCommitsOf: branchRepository) @@ -47,7 +48,7 @@ IceMemoryRemote >> branches [ yourself ] ] -{ #category : #fetching } +{ #category : 'fetching' } IceMemoryRemote >> fetch [ self fetchCommitsThat: [ :each | true ]. @@ -56,13 +57,13 @@ IceMemoryRemote >> fetch [ localRepository postFetch. ] -{ #category : #fetching } +{ #category : 'fetching' } IceMemoryRemote >> fetchBranch: anIceMemoryRemoteBranch [ self fetchCommitsThat: [ :each | each name = anIceMemoryRemoteBranch name ] ] -{ #category : #fetching } +{ #category : 'fetching' } IceMemoryRemote >> fetchCommitsThat: aBlock [ "Really low level. @@ -85,7 +86,7 @@ IceMemoryRemote >> fetchCommitsThat: aBlock [ ifAbsent: [ localRepository codeRepository storeVersion: (remoteCodeRepository versionWithInfo: dependencyInfo) ] ] ] ] -{ #category : #'private-commits' } +{ #category : 'private-commits' } IceMemoryRemote >> latestCommitsOf: aMCDictionaryRepository [ ^ (aMCDictionaryRepository sortedVersionInfos @@ -95,7 +96,7 @@ IceMemoryRemote >> latestCommitsOf: aMCDictionaryRepository [ aMCDictionaryRepository versionWithInfo: versionInfo ] ] -{ #category : #'private-commits' } +{ #category : 'private-commits' } IceMemoryRemote >> latestMCVersionForBranchNamed: aName ifPresent: presentBlock ifAbsent: absentBlock [ | latestVersionInfo latestVersion branchCommits | @@ -110,7 +111,7 @@ IceMemoryRemote >> latestMCVersionForBranchNamed: aName ifPresent: presentBlock presentBlock value: latestVersion ] -{ #category : #printing } +{ #category : 'printing' } IceMemoryRemote >> printOn: aStream [ aStream @@ -120,7 +121,7 @@ IceMemoryRemote >> printOn: aStream [ nextPutAll: ')' ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRemote >> remoteBranchNamed: aName ifPresent: presentBlock ifAbsent: absentBlock [ ^ self @@ -138,12 +139,12 @@ IceMemoryRemote >> remoteBranchNamed: aName ifPresent: presentBlock ifAbsent: ab ifAbsent: absentBlock ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemote >> remoteRepository [ ^ remoteRepository ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemote >> remoteRepository: aRepository [ remoteRepository := aRepository ] diff --git a/Iceberg-Memory/IceMemoryRemoteBranch.class.st b/Iceberg-Memory/IceMemoryRemoteBranch.class.st index 4c78919fc8..e338e9b308 100644 --- a/Iceberg-Memory/IceMemoryRemoteBranch.class.st +++ b/Iceberg-Memory/IceMemoryRemoteBranch.class.st @@ -1,36 +1,37 @@ Class { - #name : #IceMemoryRemoteBranch, - #superclass : #IceRemoteBranch, + #name : 'IceMemoryRemoteBranch', + #superclass : 'IceRemoteBranch', #instVars : [ 'remote', 'commit' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemoteBranch >> commit [ ^ commit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemoteBranch >> commit: anIceMemoryCommit [ commit := anIceMemoryCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemoteBranch >> remote: anIceMemoryRemote [ remote := anIceMemoryRemote ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemoteBranch >> remoteName [ ^ remote name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRemoteBranch >> shortname [ ^ name diff --git a/Iceberg-Memory/IceMemoryRepository.class.st b/Iceberg-Memory/IceMemoryRepository.class.st index 579198b7b6..e07eae0d14 100644 --- a/Iceberg-Memory/IceMemoryRepository.class.st +++ b/Iceberg-Memory/IceMemoryRepository.class.st @@ -1,6 +1,6 @@ Class { - #name : #IceMemoryRepository, - #superclass : #IceRepository, + #name : 'IceMemoryRepository', + #superclass : 'IceRepository', #instVars : [ 'branchRepository', 'codeRepository', @@ -9,10 +9,11 @@ Class { 'remoteBranchRepository', 'tagDictionary' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #examples } +{ #category : 'examples' } IceMemoryRepository class >> exampleDetachedHead [ | repository | @@ -22,7 +23,7 @@ IceMemoryRepository class >> exampleDetachedHead [ ^ repository ] -{ #category : #examples } +{ #category : 'examples' } IceMemoryRepository class >> exampleDetachedWorkingCopy [ | repository | @@ -34,7 +35,7 @@ IceMemoryRepository class >> exampleDetachedWorkingCopy [ ^ repository ] -{ #category : #examples } +{ #category : 'examples' } IceMemoryRepository class >> exampleNotLoaded [ | repository | @@ -46,7 +47,7 @@ IceMemoryRepository class >> exampleNotLoaded [ ^ repository ] -{ #category : #examples } +{ #category : 'examples' } IceMemoryRepository class >> exampleUnbornRepository [ | repository | @@ -55,7 +56,7 @@ IceMemoryRepository class >> exampleUnbornRepository [ ^ repository ] -{ #category : #examples } +{ #category : 'examples' } IceMemoryRepository class >> exampleWithChanges [ | repository anotherPackageName | @@ -70,7 +71,7 @@ IceMemoryRepository class >> exampleWithChanges [ ^ repository ] -{ #category : #examples } +{ #category : 'examples' } IceMemoryRepository class >> exampleWithNoChanges [ | repository | @@ -80,7 +81,7 @@ IceMemoryRepository class >> exampleWithNoChanges [ ^ repository ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMemoryRepository class >> new [ | newRepository | @@ -91,7 +92,7 @@ IceMemoryRepository class >> new [ ^ newRepository ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> allBranches [ ^ self latestMCCommits collect: [ :latestVersion | @@ -106,14 +107,14 @@ IceMemoryRepository >> allBranches [ yourself ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRepository >> branch [ head validateIsBranch. ^ head ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> branchNamed: aName ifPresent: presentBlock ifAbsent: absentBlock [ ^ self @@ -131,23 +132,23 @@ IceMemoryRepository >> branchNamed: aName ifPresent: presentBlock ifAbsent: abse inBranchMCRepository: branchRepository ] -{ #category : #'private-accessing' } +{ #category : 'private-accessing' } IceMemoryRepository >> branchRepository [ ^ branchRepository ] -{ #category : #'API-registry' } +{ #category : 'API-registry' } IceMemoryRepository >> checkForRegistryConflicts [ "Nothing. I never create registry conflicts" ] -{ #category : #'private-accessing' } +{ #category : 'private-accessing' } IceMemoryRepository >> codeRepository [ ^ codeRepository ] -{ #category : #'private-commits' } +{ #category : 'private-commits' } IceMemoryRepository >> commitPackage: aMCPackage author: aString ancestors: ancestors dependencies: dependencies inInternalRepository: aRepository [ ^ self @@ -159,7 +160,7 @@ IceMemoryRepository >> commitPackage: aMCPackage author: aString ancestors: ance inInternalRepository: aRepository ] -{ #category : #'private-commits' } +{ #category : 'private-commits' } IceMemoryRepository >> commitPackage: aMCPackage author: authorString message: messageString ancestors: ancestors dependencies: dependencies inInternalRepository: aRepository [ | newCommit | @@ -179,14 +180,14 @@ IceMemoryRepository >> commitPackage: aMCPackage author: authorString message: m ^ newCommit ] -{ #category : #TOMOVE } +{ #category : 'TOMOVE' } IceMemoryRepository >> computeLoadedVersionOf: anIceSavedPackage [ ^ IceSavedPackageVersion fromCommit: head commit package: anIceSavedPackage ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> createBranch: branchName inCommit: aCommit [ | newBranchCommit iceCommit | @@ -217,7 +218,7 @@ IceMemoryRepository >> createBranch: branchName inCommit: aCommit [ yourself ] -{ #category : #testing } +{ #category : 'testing' } IceMemoryRepository >> hasBranchNamed: aString [ "This could be optimized at the cost of complicating a bit the code. @@ -226,19 +227,19 @@ IceMemoryRepository >> hasBranchNamed: aString [ [ self branchNamed: aString. ^ true ] on: IceBranchNotFound do: [ ^ false ] ] -{ #category : #'API-tags' } +{ #category : 'API-tags' } IceMemoryRepository >> hasTagNamed: aString [ ^ tagDictionary includesKey: aString ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRepository >> head [ ^ head ] -{ #category : #initialization } +{ #category : 'initialization' } IceMemoryRepository >> initialize [ super initialize. @@ -246,7 +247,7 @@ IceMemoryRepository >> initialize [ remotes := Dictionary new ] -{ #category : #'private-initialize-release' } +{ #category : 'private-initialize-release' } IceMemoryRepository >> initializeWithBranchRepository: aRepository initializeWithCodeRepository: anotherRepository [ branchRepository := aRepository. @@ -254,19 +255,19 @@ IceMemoryRepository >> initializeWithBranchRepository: aRepository initializeWit self setHead: (IceMemoryUnbornBranch inRepository: self named: 'master'). ] -{ #category : #'private-monticello' } +{ #category : 'private-monticello' } IceMemoryRepository >> internalStoreVersion: aMCVersion [ codeRepository storeVersion: aMCVersion ] -{ #category : #TOMOVE } +{ #category : 'TOMOVE' } IceMemoryRepository >> isPackageExported: anIceSavedPackage [ ^ head commit packageNames includes: anIceSavedPackage packageName ] -{ #category : #'private-commits' } +{ #category : 'private-commits' } IceMemoryRepository >> latestCommitsOf: aRepository [ self halt. ^ (aRepository sortedVersionInfos @@ -276,7 +277,7 @@ self halt. aRepository versionWithInfo: versionInfo ] ] -{ #category : #'private-commits' } +{ #category : 'private-commits' } IceMemoryRepository >> latestMCCommits [ ^ (branchRepository sortedVersionInfos @@ -286,7 +287,7 @@ IceMemoryRepository >> latestMCCommits [ branchRepository versionWithInfo: versionInfo ] ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> latestMCVersionForBranchNamed: aName ifPresent: presentBlock ifAbsent: absentBlock inBranchMCRepository: aBranchMCRepository [ | latestVersionInfo latestVersion branchCommits | @@ -301,7 +302,7 @@ IceMemoryRepository >> latestMCVersionForBranchNamed: aName ifPresent: presentBl presentBlock value: latestVersion ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> localBranches [ ^ (self latestCommitsOf: branchRepository) collect: [ :latestVersion | @@ -316,7 +317,7 @@ IceMemoryRepository >> localBranches [ yourself ] ] -{ #category : #TOMOVE } +{ #category : 'TOMOVE' } IceMemoryRepository >> mcVersionFor: iceVersion [ | branchCommit dependencyCommitInfo | @@ -332,7 +333,7 @@ IceMemoryRepository >> mcVersionFor: iceVersion [ ^ codeRepository versionWithInfo: dependencyCommitInfo ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> newBranchNamed: aString commit: aCommit [ ^ IceMemoryLocalBranch new @@ -342,62 +343,62 @@ IceMemoryRepository >> newBranchNamed: aString commit: aCommit [ yourself ] -{ #category : #commits } +{ #category : 'commits' } IceMemoryRepository >> newCommitWalk [ ^ IceMemoryCommitWalk forRepository: self ] -{ #category : #'private-changes' } +{ #category : 'private-changes' } IceMemoryRepository >> newIndex [ ^ IceMemoryIndex on: self ] -{ #category : #'API-commits' } +{ #category : 'API-commits' } IceMemoryRepository >> newNoCommit [ ^ IceMemoryNoCommit repository: self ] -{ #category : #'API-project' } +{ #category : 'API-project' } IceMemoryRepository >> newProjectFromCommit: aCommit [ ^ IceMemoryProject onRepository: self ] -{ #category : #'API-project' } +{ #category : 'API-project' } IceMemoryRepository >> newUnbornProject [ ^ IceMemoryProject onRepository: self commitish: workingCopy referenceCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRepository >> origin [ ^ self remoteNamed: 'origin' ] -{ #category : #'private-tags' } +{ #category : 'private-tags' } IceMemoryRepository >> peelTag: anIceTag [ ^ tagDictionary at: anIceTag name ] -{ #category : #printing } +{ #category : 'printing' } IceMemoryRepository >> printOn: aStream [ aStream nextPutAll: 'an'; nextPutAll: self class name ] -{ #category : #remotes } +{ #category : 'remotes' } IceMemoryRepository >> remoteAt: aString put: aRemote [ remotes at: aString put: aRemote ] -{ #category : #'remote-branches' } +{ #category : 'remote-branches' } IceMemoryRepository >> remoteBranchNamed: aName ifPresent: presentBlock ifAbsent: absentBlock [ self halt. @@ -416,74 +417,74 @@ IceMemoryRepository >> remoteBranchNamed: aName ifPresent: presentBlock ifAbsent inBranchMCRepository: remoteBranchRepository ] -{ #category : #'private-accessing' } +{ #category : 'private-accessing' } IceMemoryRepository >> remoteBranchRepository [ self halt. ^ remoteBranchRepository ] -{ #category : #'initialize-release' } +{ #category : 'initialize-release' } IceMemoryRepository >> remoteBranchRepository: aMCRepository [ self halt. remoteBranchRepository := aMCRepository ] -{ #category : #remotes } +{ #category : 'remotes' } IceMemoryRepository >> remoteNamed: aString ifAbsent: aBlockClosure [ ^ remotes at: aString ifAbsent: aBlockClosure ] -{ #category : #'remote-branches' } +{ #category : 'remote-branches' } IceMemoryRepository >> remoteTrackedBranches [ ^ remotes flatCollect: [ :each | each branches ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRepository >> remotes [ ^ remotes values ] -{ #category : #'API-tags' } +{ #category : 'API-tags' } IceMemoryRepository >> removeTag: aTag [ tagDictionary removeKey: aTag name ] -{ #category : #'private-head' } +{ #category : 'private-head' } IceMemoryRepository >> setHead: aCommitish [ head := aCommitish ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryRepository >> subdirectory [ "Required for compatibility with some diff utilities that expect a tree" ^ '' ] -{ #category : #'API-accessing' } +{ #category : 'API-accessing' } IceMemoryRepository >> subdirectoryPath [ ^ RelativePath new ] -{ #category : #branches } +{ #category : 'branches' } IceMemoryRepository >> switchToBranchNamed: aString onCommit: aCommit [ head := self newBranchNamed: aString commit: aCommit ] -{ #category : #'API-tags' } +{ #category : 'API-tags' } IceMemoryRepository >> tags [ ^ tagDictionary keys collect: [ :k | IceTag named: k inRepository: self ] ] -{ #category : #'private-tags' } +{ #category : 'private-tags' } IceMemoryRepository >> tagsAt: aString put: anIceMemoryCommit [ tagDictionary at: aString put: anIceMemoryCommit diff --git a/Iceberg-Memory/IceMemoryUnbornBranch.class.st b/Iceberg-Memory/IceMemoryUnbornBranch.class.st index e2013e3567..b7a9dc59d5 100644 --- a/Iceberg-Memory/IceMemoryUnbornBranch.class.st +++ b/Iceberg-Memory/IceMemoryUnbornBranch.class.st @@ -1,13 +1,14 @@ Class { - #name : #IceMemoryUnbornBranch, - #superclass : #IceUnbornBranch, + #name : 'IceMemoryUnbornBranch', + #superclass : 'IceUnbornBranch', #instVars : [ 'name' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'instance-creation' } +{ #category : 'instance-creation' } IceMemoryUnbornBranch class >> inRepository: anIceMemoryRepository named: aString [ ^ (super inRepository: anIceMemoryRepository) @@ -15,13 +16,13 @@ IceMemoryUnbornBranch class >> inRepository: anIceMemoryRepository named: aStrin yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryUnbornBranch >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMemoryUnbornBranch >> name: aString [ name := aString diff --git a/Iceberg-Memory/IceRingWorkingCopy.class.st b/Iceberg-Memory/IceRingWorkingCopy.class.st index b1a62346ee..c0571d4cd6 100644 --- a/Iceberg-Memory/IceRingWorkingCopy.class.st +++ b/Iceberg-Memory/IceRingWorkingCopy.class.st @@ -1,20 +1,21 @@ Class { - #name : #IceRingWorkingCopy, - #superclass : #IceWorkingCopy, + #name : 'IceRingWorkingCopy', + #superclass : 'IceWorkingCopy', #instVars : [ 'ringEnvironment' ], - #category : 'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> addClassVariable: aVariableName to: aClassName [ | class | class := ringEnvironment ensureClassNamed: aClassName. class addClassVariable: (RG2ClassVariableDefinition named: aVariableName asSymbol parent: class ). ] -{ #category : #'private-impacting-changes' } +{ #category : 'private-impacting-changes' } IceRingWorkingCopy >> applyDefinition: anIceDefinition inNode: aNode [ | visitor | @@ -22,14 +23,14 @@ IceRingWorkingCopy >> applyDefinition: anIceDefinition inNode: aNode [ aNode accept: visitor. ] -{ #category : #packages } +{ #category : 'packages' } IceRingWorkingCopy >> basicAddPackage: aPackage [ super basicAddPackage: aPackage. ringEnvironment ensurePackageNamed: aPackage name. ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createClass: className inPackage: packageName [ self @@ -38,7 +39,7 @@ IceRingWorkingCopy >> createClass: className inPackage: packageName [ with: [ :class | class superclass name: 'Object' ] ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createClass: className inPackage: packageName with: aBlock [ | package class | @@ -52,7 +53,7 @@ IceRingWorkingCopy >> createClass: className inPackage: packageName with: aBlock self markAsDirtyPackageNamed: package name ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createMethod: source extendingClass: aClassName inPackage: packageName [ | class method package | @@ -68,7 +69,7 @@ IceRingWorkingCopy >> createMethod: source extendingClass: aClassName inPackage: self markAsDirtyPackageNamed: packageName. ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createMethod: source inClass: aClassName [ | class method | @@ -79,7 +80,7 @@ IceRingWorkingCopy >> createMethod: source inClass: aClassName [ self markAsDirtyPackageNamed: class package name. ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createMethod: source inClass: aClassName isMeta: aBoolean [ | class method package | @@ -92,7 +93,7 @@ IceRingWorkingCopy >> createMethod: source inClass: aClassName isMeta: aBoolean self markAsDirtyPackageNamed: package name. ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createMethod: source tagged: tagName extendingClass: aClassName inPackage: packageName [ | class method package | @@ -108,13 +109,13 @@ IceRingWorkingCopy >> createMethod: source tagged: tagName extendingClass: aClas self markAsDirtyPackageNamed: packageName. ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createTrait: traitName inPackage: packageName [ ^ self createTrait: traitName inPackage: packageName with: [ :aTrait | ] ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> createTrait: traitName inPackage: packageName with: aBlock [ | package class | @@ -128,26 +129,26 @@ IceRingWorkingCopy >> createTrait: traitName inPackage: packageName with: aBlock self markAsDirtyPackageNamed: package name ] -{ #category : #accessing } +{ #category : 'accessing' } IceRingWorkingCopy >> environment [ ^ ringEnvironment ] -{ #category : #initialization } +{ #category : 'initialization' } IceRingWorkingCopy >> initialize [ super initialize. ringEnvironment := RG2Environment new. ] -{ #category : #packages } +{ #category : 'packages' } IceRingWorkingCopy >> isLoadedPackageNamed: aString [ ^ (ringEnvironment ask packageNamed: aString) notNil ] -{ #category : #'private-changes' } +{ #category : 'private-changes' } IceRingWorkingCopy >> loadChangesInWorkingCopy: aTree [ | visitor | @@ -159,7 +160,7 @@ IceRingWorkingCopy >> loadChangesInWorkingCopy: aTree [ ] -{ #category : #'private-monticello' } +{ #category : 'private-monticello' } IceRingWorkingCopy >> loadPackagesNamed: packageNames fromCommit: aCommit [ packageNames do: [ :packageName | | package snapshot | @@ -174,7 +175,7 @@ IceRingWorkingCopy >> loadPackagesNamed: packageNames fromCommit: aCommit [ self referenceCommit: aCommit ] -{ #category : #'private-impacting-changes' } +{ #category : 'private-impacting-changes' } IceRingWorkingCopy >> removeClassNamed: aString [ | class | @@ -185,7 +186,7 @@ IceRingWorkingCopy >> removeClassNamed: aString [ self markAsDirtyPackageNamed: class package name. ] -{ #category : #'private-impacting changes' } +{ #category : 'private-impacting changes' } IceRingWorkingCopy >> removeMethod: anIceMethodDefinition [ self @@ -193,7 +194,7 @@ IceRingWorkingCopy >> removeMethod: anIceMethodDefinition [ fromClass: anIceMethodDefinition ownerName ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> removeMethod: selector extendingClass: aClassName fromPackage: aPackageName [ | method class | @@ -203,7 +204,7 @@ IceRingWorkingCopy >> removeMethod: selector extendingClass: aClassName fromPack self markAsDirtyPackageNamed: aPackageName. ] -{ #category : #helpers } +{ #category : 'helpers' } IceRingWorkingCopy >> removeMethod: selector fromClass: aClassName [ | class method | @@ -213,13 +214,13 @@ IceRingWorkingCopy >> removeMethod: selector fromClass: aClassName [ self markAsDirtyPackageNamed: class package name. ] -{ #category : #actions } +{ #category : 'actions' } IceRingWorkingCopy >> snapshotForPackage: aPackage [ ^ (ringEnvironment ensurePackageNamed: aPackage name) asMCSnapshot. ] -{ #category : #'private-monticello' } +{ #category : 'private-monticello' } IceRingWorkingCopy >> unloadPackage: aPackage [ | package | diff --git a/Iceberg-Memory/IceRingWorkingCopyChangerVisitor.class.st b/Iceberg-Memory/IceRingWorkingCopyChangerVisitor.class.st index 5d17fb68da..188ba5bc1a 100644 --- a/Iceberg-Memory/IceRingWorkingCopyChangerVisitor.class.st +++ b/Iceberg-Memory/IceRingWorkingCopyChangerVisitor.class.st @@ -1,69 +1,70 @@ Class { - #name : #IceRingWorkingCopyChangerVisitor, - #superclass : #IceTreeVisitor, + #name : 'IceRingWorkingCopyChangerVisitor', + #superclass : 'IceTreeVisitor', #instVars : [ 'workingCopy' ], - #category : #'Iceberg-Memory' + #category : 'Iceberg-Memory', + #package : 'Iceberg-Memory' } -{ #category : #'instance-creation' } +{ #category : 'instance-creation' } IceRingWorkingCopyChangerVisitor class >> on: anIceRingWorkingCopy [ ^ self new workingCopy: anIceRingWorkingCopy; yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceRingWorkingCopyChangerVisitor >> environment [ ^ self workingCopy environment ] -{ #category : #accessing } +{ #category : 'accessing' } IceRingWorkingCopyChangerVisitor >> packages [ ^ self workingCopy packages ] -{ #category : #patching } +{ #category : 'patching' } IceRingWorkingCopyChangerVisitor >> removeClass: anIceClassDefinition [ workingCopy removeClassNamed: anIceClassDefinition name ] -{ #category : #operations } +{ #category : 'operations' } IceRingWorkingCopyChangerVisitor >> removeFile: anIceFileDefinition [ (workingCopy repository location resolvePath: anIceFileDefinition path) ensureDelete ] -{ #category : #actions } +{ #category : 'actions' } IceRingWorkingCopyChangerVisitor >> removeFileReferenceInPath: aRelativePath [ (workingCopy fileSystem resolve: aRelativePath) ensureDelete ] -{ #category : #patching } +{ #category : 'patching' } IceRingWorkingCopyChangerVisitor >> removeMethod: anIceMethodDefinition [ workingCopy removeMethod: anIceMethodDefinition selector fromClass: anIceMethodDefinition className. ] -{ #category : #patching } +{ #category : 'patching' } IceRingWorkingCopyChangerVisitor >> removePackage: anIcePackageDefinition [ workingCopy unloadPackage: anIcePackageDefinition ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitAddition: anIceAddition [ anIceAddition definition accept: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitClassDefinition: anIceClassDefinition [ | package | @@ -79,7 +80,7 @@ IceRingWorkingCopyChangerVisitor >> visitClassDefinition: anIceClassDefinition [ class instanceVariables: anIceClassDefinition asMCDefinition instVarNames ]. ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitConflictingOperation: anIceConflictingOperation [ anIceConflictingOperation isResolved @@ -88,25 +89,25 @@ IceRingWorkingCopyChangerVisitor >> visitConflictingOperation: anIceConflictingO ^ anIceConflictingOperation chosenOperation accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitDirectoryDefinition: anIceDirectoryDefinition [ "Do nothing for a ring working copy." ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitExtensionDefinition: anExtensionDefinition [ workingCopy environment ask behaviorNamed: anExtensionDefinition name ifAbsent: [ self error: 'Not found' ]. ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitFileNode: anIceFileDefinition [ "Nothing, there are no files in the working copy" ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitMethodNode: anIceMethodDefinition [ | isExtensionMethod | @@ -123,51 +124,46 @@ IceRingWorkingCopyChangerVisitor >> visitMethodNode: anIceMethodDefinition [ inClass: anIceMethodDefinition className ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitModification: aModification [ aModification leftDefinition accept: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitNoModification: anIceNoModification [ "Nothing with me. Just visit children" self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitNonConflictingOperation: anIceNonConflictingOperation [ anIceNonConflictingOperation chosenOperation accept: self. ] -{ #category : #visiting } -IceRingWorkingCopyChangerVisitor >> visitPackage: anIcePackageDefinition [ - - | visitor | - - anIcePackageDefinition categories do: [ :categoryName | - self workingCopy packages - detect: [ :package | categoryName beginsWith: package name ] - ifFound: [ :package | - (self environment ensurePackageNamed: package name) - addClassTag: categoryName ] - ifNone: [ self environment ensurePackageNamed: categoryName ] ]. - +{ #category : 'visiting' } +IceRingWorkingCopyChangerVisitor >> visitPackage: anIcePackageDefinition [ + + | visitor package | + package := self environment ensurePackageNamed: anIcePackageDefinition packageName. + + anIcePackageDefinition tagNames do: [ :tagName | package addClassTag: tagName ]. + visitor := IceRingWorkingCopyChangerVisitor on: self workingCopy. - currentNode childrenDo: [ :each | each accept: visitor ] + currentNode childrenDo: [ :each | each accept: visitor ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitRemoval: anIceRemoval [ anIceRemoval definition removeFrom: self. ] -{ #category : #visiting } +{ #category : 'visiting' } IceRingWorkingCopyChangerVisitor >> visitTraitDefinition: anIceTraitDefinition [ |package| @@ -192,13 +188,13 @@ IceRingWorkingCopyChangerVisitor >> visitTraitDefinition: anIceTraitDefinition [ transformations do: [ :each | composition addTransformation: each ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceRingWorkingCopyChangerVisitor >> workingCopy [ ^ workingCopy ] -{ #category : #accessing } +{ #category : 'accessing' } IceRingWorkingCopyChangerVisitor >> workingCopy: anIceRingWorkingCopy [ workingCopy := anIceRingWorkingCopy ] diff --git a/Iceberg-Memory/package.st b/Iceberg-Memory/package.st index f98bc5bba9..c0f6cda66d 100644 --- a/Iceberg-Memory/package.st +++ b/Iceberg-Memory/package.st @@ -1 +1 @@ -Package { #name : #'Iceberg-Memory' } +Package { #name : 'Iceberg-Memory' } From d5ae7a067abb07907bffa02f98ca74d73376aa4b Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Fri, 15 Sep 2023 22:08:22 +0200 Subject: [PATCH 5/6] Remove test of removed method --- .../IceConvertFormatActionTest.class.st | 47 ++++++------------- Iceberg-Plugin-Migration-Tests/package.st | 2 +- 2 files changed, 16 insertions(+), 33 deletions(-) diff --git a/Iceberg-Plugin-Migration-Tests/IceConvertFormatActionTest.class.st b/Iceberg-Plugin-Migration-Tests/IceConvertFormatActionTest.class.st index 8fa0a73263..de5a900d85 100644 --- a/Iceberg-Plugin-Migration-Tests/IceConvertFormatActionTest.class.st +++ b/Iceberg-Plugin-Migration-Tests/IceConvertFormatActionTest.class.st @@ -1,10 +1,11 @@ Class { - #name : #IceConvertFormatActionTest, - #superclass : #IceAbstractTestCase, - #category : 'Iceberg-Plugin-Migration-Tests' + #name : 'IceConvertFormatActionTest', + #superclass : 'IceAbstractTestCase', + #category : 'Iceberg-Plugin-Migration-Tests', + #package : 'Iceberg-Plugin-Migration-Tests' } -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> commitProjectFile [ | change1 change2 | @@ -24,12 +25,12 @@ IceConvertFormatActionTest >> commitProjectFile [ self repository commitWithMessage: 'Add project file'. ] -{ #category : #running } +{ #category : 'running' } IceConvertFormatActionTest >> newFixture [ ^ IceBasicRepositoryFixture inGit ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertEmptyRepositoryToFiletree [ self commitProjectFile. @@ -46,7 +47,7 @@ IceConvertFormatActionTest >> testConvertEmptyRepositoryToFiletree [ equals: IceLibgitFiletreeWriter ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertEmptyRepositoryToTonel [ self commitProjectFile. @@ -63,7 +64,7 @@ IceConvertFormatActionTest >> testConvertEmptyRepositoryToTonel [ equals: IceLibgitTonelWriter ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToFiletree [ self repository properties fileFormat: IceLibgitTonelWriter. self repository workingCopy addPackageNamed: self packageName1. @@ -89,7 +90,7 @@ IceConvertFormatActionTest >> testConvertToFiletree [ self assert: (self repository headCommit packageNames includes: self packageName1) ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToFiletreeDoesNotCorruptPropertiesFile [ self repository properties fileFormat: IceLibgitTonelWriter. self repository workingCopy addPackageNamed: self packageName1. @@ -116,7 +117,7 @@ IceConvertFormatActionTest >> testConvertToFiletreeDoesNotCorruptPropertiesFile }') ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToTonel [ self repository properties fileFormat: IceLibgitFiletreeWriter. self repository workingCopy addPackageNamed: self packageName1. @@ -142,7 +143,7 @@ IceConvertFormatActionTest >> testConvertToTonel [ self assert: (self repository headCommit packageNames includes: self packageName1) ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToTonelDoesNotCorruptPropertiesFile [ self repository properties fileFormat: IceLibgitFiletreeWriter. self repository workingCopy addPackageNamed: self packageName1. @@ -169,7 +170,7 @@ IceConvertFormatActionTest >> testConvertToTonelDoesNotCorruptPropertiesFile [ }') ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToTonelRemovesFiletreeMetadataFile [ self repository properties fileFormat: IceLibgitFiletreeWriter. self repository workingCopy addPackageNamed: self packageName1. @@ -199,7 +200,7 @@ IceConvertFormatActionTest >> testConvertToTonelRemovesFiletreeMetadataFile [ self deny: (self repository subdirectoryReference / '.filetree') exists ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToTonelUsesCorrectPackageName [ self repository properties fileFormat: IceLibgitFiletreeWriter. @@ -231,7 +232,7 @@ IceConvertFormatActionTest >> testConvertToTonelUsesCorrectPackageName [ self deny: (self repository headCommit packageNames includes: (self packageName1, '-Tagged')) ] -{ #category : #tests } +{ #category : 'tests' } IceConvertFormatActionTest >> testConvertToTonelUsesCorrectPackageNameWhenMethodExtensions [ self repository properties fileFormat: IceLibgitFiletreeWriter. @@ -263,21 +264,3 @@ IceConvertFormatActionTest >> testConvertToTonelUsesCorrectPackageNameWhenMethod self assert: (self repository headCommit packageNames includes: self packageName1). self deny: (self repository headCommit packageNames includes: (self packageName1, '-Tagged')) ] - -{ #category : #tests } -IceConvertFormatActionTest >> testObtainCommonCategoryFrom [ - | action categories | - - action := IceConvertFormatAction new. - categories := #('Seaside-Tests-Component-Stubs' 'Seaside-Tests-Component-Base'). - - self - assert: (action obtainCommonCategory: 'Seaside-Tests-Component-Stubs' from: categories) - equals: 'Seaside-Tests-Component'. - self - assert: (action obtainCommonCategory: 'Seaside-Tests' from: categories) - equals: 'Seaside-Tests'. - self - assert: (action obtainCommonCategory: 'NONE' from: categories) - equals: '' -] diff --git a/Iceberg-Plugin-Migration-Tests/package.st b/Iceberg-Plugin-Migration-Tests/package.st index 14e0f06dc6..70f8560e84 100644 --- a/Iceberg-Plugin-Migration-Tests/package.st +++ b/Iceberg-Plugin-Migration-Tests/package.st @@ -1 +1 @@ -Package { #name : #'Iceberg-Plugin-Migration-Tests' } +Package { #name : 'Iceberg-Plugin-Migration-Tests' } From bc11b6b027f13a4ca768d0f80c3f25906b0f99fa Mon Sep 17 00:00:00 2001 From: CyrilFerlicot Date: Sat, 16 Sep 2023 16:21:32 +0200 Subject: [PATCH 6/6] Remove dead code --- .../CannotIdentifyVersionForCommit.class.st | 8 +- Iceberg/DateAndTime.extension.st | 6 +- Iceberg/FileSystemDirectoryEntry.extension.st | 4 +- Iceberg/IceAbstractCommitWalk.class.st | 52 ++-- Iceberg/IceAbstractCredentials.class.st | 26 +- Iceberg/IceAbstractNode.class.st | 54 ++-- Iceberg/IceAbstractProject.class.st | 46 ++-- Iceberg/IceAddition.class.st | 28 +- Iceberg/IceAnnouncement.class.st | 10 +- Iceberg/IceAnnouncer.class.st | 22 +- Iceberg/IceAsDependencyVisitor.class.st | 22 +- ...eAttachedSingleVersionWorkingCopy.class.st | 26 +- Iceberg/IceAuthenticationError.class.st | 14 +- Iceberg/IceBackendWriterAdapter.class.st | 18 +- Iceberg/IceBasicProject.class.st | 64 ++--- Iceberg/IceBasicProjectReader.class.st | 12 +- Iceberg/IceBranch.class.st | 50 ++-- Iceberg/IceBranchAlreadyExists.class.st | 12 +- Iceberg/IceChange.class.st | 12 +- Iceberg/IceChangeImporter.class.st | 28 +- Iceberg/IceChangeSetChanged.class.st | 8 +- Iceberg/IceCheckoutAllPackages.class.st | 12 +- .../IceCheckoutAlreadyLoadedPackages.class.st | 14 +- Iceberg/IceCheckoutConflictError.class.st | 10 +- Iceberg/IceCheckoutDoNotLoadPackages.class.st | 12 +- Iceberg/IceCheckoutSelectedPackages.class.st | 16 +- Iceberg/IceCheckoutStrategy.class.st | 30 ++- Iceberg/IceCherrypicker.class.st | 54 ++-- Iceberg/IceCherrypickerDiffPruner.class.st | 22 +- ...ickerInitialDependenciesCollector.class.st | 30 ++- Iceberg/IceClassDefinition.class.st | 20 +- Iceberg/IceClassDependency.class.st | 24 +- Iceberg/IceCodeDefinition.class.st | 22 +- Iceberg/IceCommit.class.st | 88 +++---- Iceberg/IceCommited.class.st | 8 +- Iceberg/IceCommitish.class.st | 90 +++---- Iceberg/IceConflictingOperation.class.st | 42 +-- Iceberg/IceCredentialStore.class.st | 52 ++-- Iceberg/IceCredentialsProvider.class.st | 58 +++-- Iceberg/IceCritiquesVisitor.class.st | 36 +-- Iceberg/IceCypressPropertiesChange.class.st | 12 +- Iceberg/IceDefinedDependency.class.st | 24 +- Iceberg/IceDefinition.class.st | 46 ++-- Iceberg/IceDependency.class.st | 16 +- Iceberg/IceDependencyEnvironment.class.st | 26 +- Iceberg/IceDiff.class.st | 70 ++--- Iceberg/IceDirectoryDefinition.class.st | 14 +- Iceberg/IceDuplicatedRepository.class.st | 8 +- Iceberg/IceEmptyMerge.class.st | 12 +- Iceberg/IceEmptyNode.class.st | 40 +-- Iceberg/IceEmptyWorkingCopy.class.st | 16 +- Iceberg/IceError.class.st | 10 +- Iceberg/IceErrorVisitor.class.st | 34 +-- Iceberg/IceExtendedClassDependency.class.st | 22 +- Iceberg/IceExtensionDefinition.class.st | 32 +-- Iceberg/IceExternalJob.class.st | 32 +-- Iceberg/IceFileDefinition.class.st | 32 +-- Iceberg/IceFileSystemDefinition.class.st | 20 +- Iceberg/IceGenericError.class.st | 10 +- Iceberg/IceGitCheckoutProgress.class.st | 14 +- Iceberg/IceGitTransferProgress.class.st | 14 +- .../IceGitUsernameOrEmailNotFound.class.st | 14 +- Iceberg/IceHistory.class.st | 28 +- Iceberg/IceHistoryCommit.class.st | 40 +-- Iceberg/IceHttpsProtocol.class.st | 12 +- Iceberg/IceImageChange.class.st | 18 +- Iceberg/IceInMergeWorkingCopy.class.st | 18 +- Iceberg/IceIndex.class.st | 26 +- Iceberg/IceInvalidProject.class.st | 12 +- Iceberg/IceInvalidProjectReader.class.st | 14 +- Iceberg/IceLocalBranch.class.st | 58 +++-- Iceberg/IceLocalRepositoryMissing.class.st | 14 +- Iceberg/IceLog.class.st | 32 +-- Iceberg/IceLogVersion.class.st | 42 +-- Iceberg/IceMCDefinitionImporter.class.st | 30 ++- Iceberg/IceMCPackageImporter.class.st | 20 +- Iceberg/IceMCVersionInfo.class.st | 32 +-- Iceberg/IceMerge.class.st | 62 ++--- Iceberg/IceMergeAborted.class.st | 10 +- Iceberg/IceMergeResolutionRequest.class.st | 14 +- Iceberg/IceMergeToChangeTreeVisitor.class.st | 22 +- ...ceMetacelloDuplicatedNotification.class.st | 24 +- .../IceMetacelloProjectRegistration.class.st | 14 +- .../IceMetacelloRepositoryAdapter.class.st | 60 ++--- Iceberg/IceMetaclassDependency.class.st | 16 +- Iceberg/IceMethodContainerDefinition.class.st | 28 +- Iceberg/IceMethodDefinition.class.st | 54 ++-- Iceberg/IceMethodDependency.class.st | 28 +- Iceberg/IceMissingRepositoryEntry.class.st | 18 +- Iceberg/IceModification.class.st | 42 +-- Iceberg/IceNoCommit.class.st | 52 ++-- Iceberg/IceNoModification.class.st | 28 +- Iceberg/IceNoRemote.class.st | 8 +- Iceberg/IceNoRemoteBranch.class.st | 8 +- Iceberg/IceNode.class.st | 116 ++++----- Iceberg/IceNodeQuery.class.st | 42 +-- Iceberg/IceNonConflictingOperation.class.st | 40 +-- ...NonInteractiveCredentialsProvider.class.st | 14 +- Iceberg/IceNotInBranch.class.st | 8 +- Iceberg/IceNothingToCommit.class.st | 10 +- Iceberg/IceNullCommitWalk.class.st | 12 +- Iceberg/IceOperation.class.st | 66 ++--- Iceberg/IceOperationMerge.class.st | 44 ++-- Iceberg/IcePackage.class.st | 86 ++++--- Iceberg/IcePackageDefinition.class.st | 38 +-- Iceberg/IcePackageDependency.class.st | 20 +- Iceberg/IcePackageLoaded.class.st | 14 +- Iceberg/IcePackageUnloaded.class.st | 8 +- Iceberg/IcePlaintextCredentials.class.st | 28 +- Iceberg/IcePlaintextOtpCredentials.class.st | 12 +- Iceberg/IceProjectChange.class.st | 12 +- Iceberg/IceProjectReader.class.st | 18 +- Iceberg/IceProxyMCVersionInfo.class.st | 38 +-- Iceberg/IcePushTransferProgress.class.st | 16 +- Iceberg/IcePushed.class.st | 8 +- Iceberg/IceRemote.class.st | 66 ++--- Iceberg/IceRemoteAlreadyExistsError.class.st | 14 +- Iceberg/IceRemoteBranch.class.st | 26 +- Iceberg/IceRemoteDesynchronized.class.st | 20 +- Iceberg/IceRemoteNotFoundError.class.st | 12 +- Iceberg/IceRemoteWithOnlyHostname.class.st | 14 +- Iceberg/IceRemoval.class.st | 26 +- Iceberg/IceRepository.class.st | 240 +++++++++--------- Iceberg/IceRepositoryAnnouncement.class.st | 16 +- Iceberg/IceRepositoryCreated.class.st | 8 +- Iceberg/IceRepositoryForgotten.class.st | 8 +- Iceberg/IceRepositoryModified.class.st | 8 +- ...IceRepositoryRegistryAnnouncement.class.st | 10 +- .../IceRepositoryRegistryModified.class.st | 14 +- Iceberg/IceRootDefinition.class.st | 14 +- Iceberg/IceSSHProtocol.class.st | 12 +- Iceberg/IceSavedPackageVersion.class.st | 64 ++--- Iceberg/IceShouldCommitBeforePull.class.st | 12 +- Iceberg/IceSshCredentials.class.st | 46 ++-- Iceberg/IceSystemEventListener.class.st | 24 +- Iceberg/IceTag.class.st | 34 +-- Iceberg/IceTagAlreadyExists.class.st | 14 +- Iceberg/IceTagNotFound.class.st | 10 +- Iceberg/IceTipCommitSettings.class.st | 28 +- Iceberg/IceTokenCredentials.class.st | 28 +- Iceberg/IceTraitDefinition.class.st | 22 +- Iceberg/IceTraitDependency.class.st | 22 +- Iceberg/IceTreeMerger.class.st | 10 +- Iceberg/IceTreeVisitor.class.st | 20 +- Iceberg/IceUnbornBranch.class.st | 62 ++--- Iceberg/IceUnbornProject.class.st | 14 +- Iceberg/IceUnbornProjectReader.class.st | 14 +- Iceberg/IceUndefinedRemote.class.st | 20 +- Iceberg/IceUnknownCommit.class.st | 42 +-- Iceberg/IceUnknownVersionWorkingCopy.class.st | 14 +- Iceberg/IceUpstreamNotConfigured.class.st | 8 +- Iceberg/IceUrlBuilder.class.st | 28 +- Iceberg/IceUrlProtocol.class.st | 14 +- Iceberg/IceVersionDoesNotExist.class.st | 14 +- Iceberg/IceWorkingCopy.class.st | 180 ++++++------- Iceberg/IceWorkingCopyDesyncronized.class.st | 10 +- Iceberg/IceWorkingCopyPatcherVisitor.class.st | 50 ++-- Iceberg/IceWorkingCopyState.class.st | 38 +-- Iceberg/IceWrongUrl.class.st | 8 +- Iceberg/Iceberg.class.st | 48 ++-- Iceberg/LGitCommit.extension.st | 6 +- Iceberg/LGitCredentialsPlaintext.extension.st | 4 +- Iceberg/LGitCredentialsSSH.extension.st | 4 +- Iceberg/LGitDiff.extension.st | 8 +- Iceberg/LGitReturnCodeEnum.extension.st | 4 +- Iceberg/LGitTag.extension.st | 4 +- Iceberg/LGitTreeEntry.extension.st | 8 +- Iceberg/MCAddition.extension.st | 4 +- Iceberg/MCBitbucketRepository.extension.st | 6 +- Iceberg/MCClassDefinition.extension.st | 8 +- Iceberg/MCClassTraitDefinition.extension.st | 6 +- Iceberg/MCDefinition.extension.st | 8 +- .../MCGitBasedNetworkRepository.extension.st | 12 +- Iceberg/MCGitHubRepository.extension.st | 12 +- Iceberg/MCGitlabRepository.extension.st | 6 +- Iceberg/MCMethodDefinition.extension.st | 8 +- Iceberg/MCModification.extension.st | 6 +- Iceberg/MCOrganizationDefinition.extension.st | 15 +- Iceberg/MCPatchOperation.extension.st | 6 +- Iceberg/MCPatcher.extension.st | 4 +- Iceberg/MCPostscriptDefinition.extension.st | 4 +- Iceberg/MCRemoval.extension.st | 4 +- Iceberg/MCRepository.extension.st | 4 +- Iceberg/MCVersion.extension.st | 4 +- Iceberg/MCWorkingCopy.extension.st | 8 +- Iceberg/ManifestIceberg.class.st | 16 +- ...etacelloResolveProjectUpgrade.extension.st | 4 +- Iceberg/RPackage.extension.st | 4 +- Iceberg/RPackageSet.extension.st | 4 +- Iceberg/package.st | 2 +- 190 files changed, 2557 insertions(+), 2256 deletions(-) diff --git a/Iceberg/CannotIdentifyVersionForCommit.class.st b/Iceberg/CannotIdentifyVersionForCommit.class.st index 660634df59..6812be1847 100644 --- a/Iceberg/CannotIdentifyVersionForCommit.class.st +++ b/Iceberg/CannotIdentifyVersionForCommit.class.st @@ -4,7 +4,9 @@ This error is signaled when looking for a version in a commit (and its ancestry) This should not happen if the repository is consistent. " Class { - #name : #CannotIdentifyVersionForCommit, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'CannotIdentifyVersionForCommit', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/DateAndTime.extension.st b/Iceberg/DateAndTime.extension.st index 10804e5f4f..d6b5539b82 100644 --- a/Iceberg/DateAndTime.extension.st +++ b/Iceberg/DateAndTime.extension.st @@ -1,11 +1,11 @@ -Extension { #name : #DateAndTime } +Extension { #name : 'DateAndTime' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } DateAndTime >> asLocalStringYMDHM [ ^ self asLocal asStringYMDHM ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } DateAndTime >> asStringYMDHM [ ^ String streamContents: [ :aStream | self printYMDOn: aStream. diff --git a/Iceberg/FileSystemDirectoryEntry.extension.st b/Iceberg/FileSystemDirectoryEntry.extension.st index 3b7714e80d..87ca4a1a12 100644 --- a/Iceberg/FileSystemDirectoryEntry.extension.st +++ b/Iceberg/FileSystemDirectoryEntry.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #FileSystemDirectoryEntry } +Extension { #name : 'FileSystemDirectoryEntry' } -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } FileSystemDirectoryEntry >> packageName [ ^ self asFileReference basenameWithoutExtension diff --git a/Iceberg/IceAbstractCommitWalk.class.st b/Iceberg/IceAbstractCommitWalk.class.st index 34b061dd8f..a22455ad28 100644 --- a/Iceberg/IceAbstractCommitWalk.class.st +++ b/Iceberg/IceAbstractCommitWalk.class.st @@ -2,33 +2,35 @@ Base class for shared code between different commit walk implementations. " Class { - #name : #IceAbstractCommitWalk, - #superclass : #Object, + #name : 'IceAbstractCommitWalk', + #superclass : 'Object', #instVars : [ 'repository', 'modifyingPackage', 'maxNumber' ], - #category : 'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceAbstractCommitWalk class >> forRepository: repository [ ^ self new repository: repository; yourself ] -{ #category : #testing } +{ #category : 'testing' } IceAbstractCommitWalk class >> isAbstract [ ^ self == IceAbstractCommitWalk ] -{ #category : #private } +{ #category : 'private' } IceAbstractCommitWalk >> commitFrom: result [ ^ self repository commitFromGitCommit: result ] -{ #category : #walking } +{ #category : 'walking' } IceAbstractCommitWalk >> commits [ | commits | commits := OrderedCollection new. @@ -36,99 +38,99 @@ IceAbstractCommitWalk >> commits [ ^ commits ] -{ #category : #walking } +{ #category : 'walking' } IceAbstractCommitWalk >> commitsDo: aBlock [ self rawResultsDo: [ :result | aBlock value: (self commitFrom: result) ] ] -{ #category : #walking } +{ #category : 'walking' } IceAbstractCommitWalk >> firstCommit [ ^ self commitsDo: [ :commit | ^ commit ] ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceAbstractCommitWalk >> fromCommit: aCommit [ self subclassResponsibility ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceAbstractCommitWalk >> fromTag: anIceTag [ self subclassResponsibility ] -{ #category : #walking } +{ #category : 'walking' } IceAbstractCommitWalk >> includesCommit: aCommit [ self commitsDo: [ :commit | commit id = aCommit id ifTrue: [ ^ true ]]. ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCommitWalk >> maxNumber [ ^ maxNumber ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCommitWalk >> maxNumber: anObject [ maxNumber := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCommitWalk >> modifyingPackage [ ^ modifyingPackage ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCommitWalk >> modifyingPackage: anObject [ modifyingPackage := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCommitWalk >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCommitWalk >> repository: anObject [ repository := anObject ] -{ #category : #'walk definition' } +{ #category : 'walk definition' } IceAbstractCommitWalk >> upto: aCommitish [ self uptoCommit: aCommitish commit ] -{ #category : #'walk definition' } +{ #category : 'walk definition' } IceAbstractCommitWalk >> uptoBranch: anIceBranch [ self uptoCommit: anIceBranch lastCommit ] -{ #category : #'walk definition' } +{ #category : 'walk definition' } IceAbstractCommitWalk >> uptoBranches: branches [ ^ branches do: [ :branch | self uptoBranch: branch ] ] -{ #category : #'walk definition' } +{ #category : 'walk definition' } IceAbstractCommitWalk >> uptoCommits: commits [ commits do: [ :commit | self uptoCommit: commit ] ] -{ #category : #'walk definition' } +{ #category : 'walk definition' } IceAbstractCommitWalk >> uptoVersion: version [ version hideYourselfFromCommitWalk: self ] -{ #category : #walking } +{ #category : 'walking' } IceAbstractCommitWalk >> versionsFor: package [ self modifyingPackage: package. ^ self commits collect: [ :commit | commit versionFor: package ] ] -{ #category : #walking } +{ #category : 'walking' } IceAbstractCommitWalk >> versionsFor: package detect: selectBlock ifNone: ifNoneBlock [ self modifyingPackage: package. self commitsDo: [ :commit | diff --git a/Iceberg/IceAbstractCredentials.class.st b/Iceberg/IceAbstractCredentials.class.st index 849893a2a6..1f2cc9608a 100644 --- a/Iceberg/IceAbstractCredentials.class.st +++ b/Iceberg/IceAbstractCredentials.class.st @@ -2,57 +2,59 @@ I represent the common behavior of all iceberg credentials. " Class { - #name : #IceAbstractCredentials, - #superclass : #Object, + #name : 'IceAbstractCredentials', + #superclass : 'Object', #instVars : [ 'host' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #testing } +{ #category : 'testing' } IceAbstractCredentials class >> isAbstract [ ^ self == IceAbstractCredentials ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCredentials >> description [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCredentials >> host [ ^ host ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCredentials >> host: anObject [ host := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCredentials >> hostDescription [ ^ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceAbstractCredentials >> isDefault [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCredentials >> isPresent [ ^ self subclassResponsibility ] -{ #category : #'API - storing' } +{ #category : 'API - storing' } IceAbstractCredentials >> storeInto: aCredentialStore forHostname: aHost [ host := aHost. aCredentialStore storePlaintextCredential: self forHostname: aHost ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractCredentials >> type [ ^ self subclassResponsibility ] diff --git a/Iceberg/IceAbstractNode.class.st b/Iceberg/IceAbstractNode.class.st index 29cb839bf4..81c46749b8 100644 --- a/Iceberg/IceAbstractNode.class.st +++ b/Iceberg/IceAbstractNode.class.st @@ -2,30 +2,32 @@ My subclasses implement a tree used for diffing and merging. " Class { - #name : #IceAbstractNode, - #superclass : #Object, - #category : #'Iceberg-Changes' + #name : 'IceAbstractNode', + #superclass : 'Object', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #testing } +{ #category : 'testing' } IceAbstractNode class >> isAbstract [ ^ self == IceAbstractNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> accept: aVisitor [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> addTo: anotherNode [ ^ self subclassResponsibility ] -{ #category : #'accessing - children' } +{ #category : 'accessing - children' } IceAbstractNode >> allChildren [ | children | @@ -34,7 +36,7 @@ IceAbstractNode >> allChildren [ ^ children ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> allChildrenDo: aBlockClosure [ "Evaluate aBlockClosure with my direct and indirect children." @@ -43,113 +45,113 @@ IceAbstractNode >> allChildrenDo: aBlockClosure [ each allChildrenDo: aBlockClosure ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> anySatisfy: aBlockClosure [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> children [ "Answer the (direct) children of this node." ^ self subclassResponsibility ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceAbstractNode >> childrenDo: aBlockClosure [ self children do: aBlockClosure ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> collect: aBlockClosure [ "Collect the results of aBlockClosure on my value and the values of my children." ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> collectWithPath: aBlockClosure [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> do: aBlockClosure [ "Evaluate aBlockClosure on my value and the values of my children." ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> firstNodeSuchThat: conditionBlock [ ^ self firstNodeSuchThat: conditionBlock ifNone: [ NotFound signalFor: conditionBlock ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> firstNodeSuchThat: foundBlock ifNone: noneBlock [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> hasChanges [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> includesKey: anObject [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> isEmpty [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> isEmptyNode [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> mergeWith: anotherNode onLeft: leftBlock onRight: rightBlock onMerge: mergeBlock [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> notEmpty [ ^ self isEmpty not ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> path [ "Answer a RelativePath to the top parent." ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> resolve: aRelativePath ifPresent: presentBlock ifAbsent: absentBlock [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractNode >> select: aBlockClosure [ ^ self subclassResponsibility ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceAbstractNode >> withAllChildrenDo: aBlockClosure [ aBlockClosure value: self. diff --git a/Iceberg/IceAbstractProject.class.st b/Iceberg/IceAbstractProject.class.st index 2b5c88bece..65433921a5 100644 --- a/Iceberg/IceAbstractProject.class.st +++ b/Iceberg/IceAbstractProject.class.st @@ -2,21 +2,23 @@ Abstract superclass for projects " Class { - #name : #IceAbstractProject, - #superclass : #Object, + #name : 'IceAbstractProject', + #superclass : 'Object', #instVars : [ 'commitish' ], - #category : #'Iceberg-Project' + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #testing } +{ #category : 'testing' } IceAbstractProject class >> isAbstract [ ^ self == IceAbstractProject ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceAbstractProject class >> onCommitish: anIceCommitish [ ^ self new @@ -24,13 +26,13 @@ IceAbstractProject class >> onCommitish: anIceCommitish [ yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceAbstractProject class >> onRepository: aRepository [ ^ self onCommitish: aRepository workingCopy ] -{ #category : #comparing } +{ #category : 'comparing' } IceAbstractProject >> = anotherProject [ self species = anotherProject species ifFalse: [ ^ false ]. @@ -39,38 +41,38 @@ IceAbstractProject >> = anotherProject [ ^ true. ] -{ #category : #writing } +{ #category : 'writing' } IceAbstractProject >> addToChangeBuilder: anIceChangeImporter [ "Nothing by default" ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> commitish: anIceCommitish [ commitish := anIceCommitish ] -{ #category : #testing } +{ #category : 'testing' } IceAbstractProject >> isDirty [ "Compare against the project extracted from the HEAD commit. If the commit has no project, it will be an unborn project." ^ self repository workingCopy referenceCommit project ~= self readOnlyVersion ] -{ #category : #testing } +{ #category : 'testing' } IceAbstractProject >> isInvalid [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceAbstractProject >> isUnborn [ ^ false ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceAbstractProject >> packages [ self repository handleLibgitError: [ | writerClass sourceFileReference | @@ -85,7 +87,7 @@ IceAbstractProject >> packages [ IcePackage named: packageName repository: self repository ] ] ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceAbstractProject >> packagesFrom: aCommit [ self repository handleLibgitError: [ | writerClass sourceFileReference | @@ -100,31 +102,31 @@ IceAbstractProject >> packagesFrom: aCommit [ IcePackage named: packageName repository: self repository ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> properties [ ^ Dictionary new ] -{ #category : #testing } +{ #category : 'testing' } IceAbstractProject >> readOnlyVersion [ ^ self ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> repository [ ^ commitish repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> sourceDirectory [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> sourceDirectoryPath [ "API compatible both with Pharo6 and Pharo7. @@ -135,19 +137,19 @@ IceAbstractProject >> sourceDirectoryPath [ ^ (RelativePath withAll: (RelativePath canonicalizeElements: ($/ split: self sourceDirectory))) ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> sourceDirectoryReference [ ^ commitish fileSystem resolve: self sourceDirectoryPath ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> tags [ ^ #() ] -{ #category : #accessing } +{ #category : 'accessing' } IceAbstractProject >> writerClass [ ^ self repository properties writerClass diff --git a/Iceberg/IceAddition.class.st b/Iceberg/IceAddition.class.st index 4593b45ee0..318d617bf7 100644 --- a/Iceberg/IceAddition.class.st +++ b/Iceberg/IceAddition.class.st @@ -2,36 +2,38 @@ I am an addition in a tree. I contain the definition I'm adding. I know what is the icon for addition and how to calculate a conflict with other operations. " Class { - #name : #IceAddition, - #superclass : #IceOperation, - #category : 'Iceberg-Changes' + #name : 'IceAddition', + #superclass : 'IceOperation', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceAddition >> accept: aVisitor [ ^ aVisitor visitAddition: self ] -{ #category : #operations } +{ #category : 'operations' } IceAddition >> inverse [ ^ IceRemoval definition: definition ] -{ #category : #testing } +{ #category : 'testing' } IceAddition >> isAddition [ ^ true ] -{ #category : #contents } +{ #category : 'contents' } IceAddition >> leftContents [ ^ definition contents ] -{ #category : #merging } +{ #category : 'merging' } IceAddition >> mergeWithLeftAddition: anIceAddition [ "If the addition is the same, I can just keep any of them." @@ -41,7 +43,7 @@ IceAddition >> mergeWithLeftAddition: anIceAddition [ ^ IceConflictingOperation left: anIceAddition right: self ] -{ #category : #merging } +{ #category : 'merging' } IceAddition >> mergeWithLeftModification: anIceModification [ "This should not happen. If I represent an addition of a node, that means that the original definition did not exist on the base version. @@ -49,7 +51,7 @@ IceAddition >> mergeWithLeftModification: anIceModification [ self shouldNotImplement ] -{ #category : #merging } +{ #category : 'merging' } IceAddition >> mergeWithLeftNoOperation: anIceNoModification [ "This should not happen. If I represent an addition of a node, that means that the original definition did not exist on the base version. @@ -57,7 +59,7 @@ IceAddition >> mergeWithLeftNoOperation: anIceNoModification [ self shouldNotImplement ] -{ #category : #merging } +{ #category : 'merging' } IceAddition >> mergeWithLeftRemoval: anIceRemoval [ "This should not happen. If I represent an addition of a node, that means that the original definition did not exist on the base version. @@ -65,13 +67,13 @@ IceAddition >> mergeWithLeftRemoval: anIceRemoval [ self shouldNotImplement ] -{ #category : #merging } +{ #category : 'merging' } IceAddition >> mergeWithOperation: anOperation [ ^ anOperation mergeWithLeftAddition: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceAddition >> rightContents [ ^ '' diff --git a/Iceberg/IceAnnouncement.class.st b/Iceberg/IceAnnouncement.class.st index eb5a64b433..60edaa51af 100644 --- a/Iceberg/IceAnnouncement.class.st +++ b/Iceberg/IceAnnouncement.class.st @@ -2,12 +2,14 @@ I'm a generic announcement in the iceberg context. " Class { - #name : #IceAnnouncement, - #superclass : #Announcement, - #category : 'Iceberg-Announcements' + #name : 'IceAnnouncement', + #superclass : 'Announcement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } -{ #category : #testing } +{ #category : 'testing' } IceAnnouncement >> appliesToRepository: aRepository [ ^ false ] diff --git a/Iceberg/IceAnnouncer.class.st b/Iceberg/IceAnnouncer.class.st index c8b23a20d5..4ee406e100 100644 --- a/Iceberg/IceAnnouncer.class.st +++ b/Iceberg/IceAnnouncer.class.st @@ -6,23 +6,25 @@ In current implementation of Iceberg, I will be used mainly for the convenience " Class { - #name : #IceAnnouncer, - #superclass : #Announcer, + #name : 'IceAnnouncer', + #superclass : 'Announcer', #instVars : [ 'suspendedConditions', 'suspendAll' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #announce } +{ #category : 'announce' } IceAnnouncer >> announce: anAnnouncement [ (self isAnnouncementSuspended: anAnnouncement) ifTrue: [ ^ anAnnouncement asAnnouncement ]. ^ super announce: anAnnouncement ] -{ #category : #initialization } +{ #category : 'initialization' } IceAnnouncer >> initialize [ super initialize. @@ -30,7 +32,7 @@ IceAnnouncer >> initialize [ suspendedConditions := OrderedCollection new: 5 ] -{ #category : #testing } +{ #category : 'testing' } IceAnnouncer >> isAnnouncementSuspended: anAnnouncement [ suspendAll ifTrue: [ ^ true ]. @@ -39,13 +41,13 @@ IceAnnouncer >> isAnnouncementSuspended: anAnnouncement [ each value: anAnnouncement ] ] -{ #category : #testing } +{ #category : 'testing' } IceAnnouncer >> isSuspended [ ^ suspendAll ] -{ #category : #suspending } +{ #category : 'suspending' } IceAnnouncer >> suspendAllForRepository: aRepository while: aBlock [ ^ self @@ -53,14 +55,14 @@ IceAnnouncer >> suspendAllForRepository: aRepository while: aBlock [ while: aBlock ] -{ #category : #suspending } +{ #category : 'suspending' } IceAnnouncer >> suspendAllMatching: matchBlock while: aBlock [ suspendedConditions add: matchBlock. aBlock ensure: [ suspendedConditions remove: matchBlock ] ] -{ #category : #suspending } +{ #category : 'suspending' } IceAnnouncer >> suspendAllWhile: aBlock [ | previousSuspensionState | diff --git a/Iceberg/IceAsDependencyVisitor.class.st b/Iceberg/IceAsDependencyVisitor.class.st index fd6deace79..b26c4dcd38 100644 --- a/Iceberg/IceAsDependencyVisitor.class.st +++ b/Iceberg/IceAsDependencyVisitor.class.st @@ -1,18 +1,20 @@ Class { - #name : #IceAsDependencyVisitor, - #superclass : #Object, + #name : 'IceAsDependencyVisitor', + #superclass : 'Object', #instVars : [ 'cherrypicker' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #accessing } +{ #category : 'accessing' } IceAsDependencyVisitor >> cherrypicker: anIceCherrypicker [ cherrypicker := anIceCherrypicker ] -{ #category : #visiting } +{ #category : 'visiting' } IceAsDependencyVisitor >> visitClassDefinition: anIceClassDefinition [ ^ IceClassDependency new definition: anIceClassDefinition; @@ -20,7 +22,7 @@ IceAsDependencyVisitor >> visitClassDefinition: anIceClassDefinition [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceAsDependencyVisitor >> visitExtensionDefinition: anIceExtensionDefinition [ ^ IceExtendedClassDependency new definition: anIceExtensionDefinition; @@ -28,7 +30,7 @@ IceAsDependencyVisitor >> visitExtensionDefinition: anIceExtensionDefinition [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceAsDependencyVisitor >> visitMethodNode: anIceMethodDefinition [ ^ IceMethodDependency new definition: anIceMethodDefinition ; @@ -36,7 +38,7 @@ IceAsDependencyVisitor >> visitMethodNode: anIceMethodDefinition [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceAsDependencyVisitor >> visitPackage: anIcePackageDefinition [ ^ IcePackageDependency new definition: anIcePackageDefinition; @@ -44,7 +46,7 @@ IceAsDependencyVisitor >> visitPackage: anIcePackageDefinition [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceAsDependencyVisitor >> visitTraitDefinition: anIceTraitDefinition [ ^ IceTraitDependency new definition: anIceTraitDefinition; @@ -52,7 +54,7 @@ IceAsDependencyVisitor >> visitTraitDefinition: anIceTraitDefinition [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceAsDependencyVisitor >> visitTreeNode: anIceNode [ ^ anIceNode value definition accept: self ] diff --git a/Iceberg/IceAttachedSingleVersionWorkingCopy.class.st b/Iceberg/IceAttachedSingleVersionWorkingCopy.class.st index 0c9f1cc626..1e10b97f1d 100644 --- a/Iceberg/IceAttachedSingleVersionWorkingCopy.class.st +++ b/Iceberg/IceAttachedSingleVersionWorkingCopy.class.st @@ -2,12 +2,14 @@ I am a working copy whose packages were all loaded from the same single commit. " Class { - #name : #IceAttachedSingleVersionWorkingCopy, - #superclass : #IceWorkingCopyState, - #category : #'Iceberg-WorkingCopy' + #name : 'IceAttachedSingleVersionWorkingCopy', + #superclass : 'IceWorkingCopyState', + #category : 'Iceberg-WorkingCopy', + #package : 'Iceberg', + #tag : 'WorkingCopy' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceAttachedSingleVersionWorkingCopy class >> on: anIceCommit repository: aRepository [ ^ self new @@ -16,37 +18,37 @@ IceAttachedSingleVersionWorkingCopy class >> on: anIceCommit repository: aReposi yourself ] -{ #category : #displaying } +{ #category : 'displaying' } IceAttachedSingleVersionWorkingCopy >> description [ ^ self referenceCommit description ] -{ #category : #testing } +{ #category : 'testing' } IceAttachedSingleVersionWorkingCopy >> includesCommit: anIceCommit [ ^ self referenceCommit = anIceCommit ] -{ #category : #testing } +{ #category : 'testing' } IceAttachedSingleVersionWorkingCopy >> isCommitMerged: aCommit [ ^ aCommit isAncestorOf: self referenceCommit ] -{ #category : #testing } +{ #category : 'testing' } IceAttachedSingleVersionWorkingCopy >> isDetached [ ^ self referenceCommit ~= repository head commit ] -{ #category : #testing } +{ #category : 'testing' } IceAttachedSingleVersionWorkingCopy >> isSingleCommitState [ ^ true ] -{ #category : #merging } +{ #category : 'merging' } IceAttachedSingleVersionWorkingCopy >> mergeCommit: mergeCommit [ ^ IceMerge new @@ -55,13 +57,13 @@ IceAttachedSingleVersionWorkingCopy >> mergeCommit: mergeCommit [ execute. ] -{ #category : #accessing } +{ #category : 'accessing' } IceAttachedSingleVersionWorkingCopy >> singleCommit [ ^ self referenceCommit ] -{ #category : #validating } +{ #category : 'validating' } IceAttachedSingleVersionWorkingCopy >> validateCanCommit [ self isDetached diff --git a/Iceberg/IceAuthenticationError.class.st b/Iceberg/IceAuthenticationError.class.st index 07b9788398..c670e3b9bd 100644 --- a/Iceberg/IceAuthenticationError.class.st +++ b/Iceberg/IceAuthenticationError.class.st @@ -2,17 +2,19 @@ I indicate when an error trying to authenticate occurs (tipically, when cloning without credentials) " Class { - #name : #IceAuthenticationError, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceAuthenticationError', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceAuthenticationError >> acceptError: aVisitor [ aVisitor visitAuthenticationError: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceAuthenticationError >> defaultMessageText [ ^ 'There was an authentication error while trying to execute the operation: {1}. This happens usually because you didn''t provide a valid set of credentials. @@ -24,7 +26,7 @@ add your public and private keys). 3. using HTTPS instead SSH (Just use an url in the form HTTPS://etc.git)' ] -{ #category : #accessing } +{ #category : 'accessing' } IceAuthenticationError >> messageText [ ^ messageText ifNil: [self defaultMessageText format: { super messageText }] ] diff --git a/Iceberg/IceBackendWriterAdapter.class.st b/Iceberg/IceBackendWriterAdapter.class.st index a95d672968..7f28968015 100644 --- a/Iceberg/IceBackendWriterAdapter.class.st +++ b/Iceberg/IceBackendWriterAdapter.class.st @@ -2,35 +2,37 @@ Adapter for having MCFileTreeWriters being able to write into Iceberg backend repositories without introducing unpleasant modifications in them. " Class { - #name : #IceBackendWriterAdapter, - #superclass : #Object, + #name : 'IceBackendWriterAdapter', + #superclass : 'Object', #instVars : [ 'backend' ], - #category : #'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceBackendWriterAdapter class >> for: anIceBackend [ ^ self new backend: anIceBackend; yourself. ] -{ #category : #accessing } +{ #category : 'accessing' } IceBackendWriterAdapter >> backend [ ^ backend ] -{ #category : #accessing } +{ #category : 'accessing' } IceBackendWriterAdapter >> backend: anObject [ backend := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceBackendWriterAdapter >> directory [ ^ self backend codeDirectory ] -{ #category : #accessing } +{ #category : 'accessing' } IceBackendWriterAdapter >> propertyFileExtension [ ^ MCFileTreeRepository defaultPropertyFileExtension ] diff --git a/Iceberg/IceBasicProject.class.st b/Iceberg/IceBasicProject.class.st index 16ec8ef94a..ebaceb51bc 100644 --- a/Iceberg/IceBasicProject.class.st +++ b/Iceberg/IceBasicProject.class.st @@ -3,15 +3,17 @@ A basic project is the project defined in a .project file. It contains properties like sourceDirectory, format and tags. " Class { - #name : #IceBasicProject, - #superclass : #IceAbstractProject, + #name : 'IceBasicProject', + #superclass : 'IceAbstractProject', #instVars : [ 'properties' ], - #category : #'Iceberg-Project' + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceBasicProject class >> onProperties: properties commitish: aCommitish [ ^ self basicNew @@ -21,7 +23,7 @@ IceBasicProject class >> onProperties: properties commitish: aCommitish [ yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceBasicProject class >> onRepository: aRepository [ ^ self basicNew @@ -31,7 +33,7 @@ IceBasicProject class >> onRepository: aRepository [ yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceBasicProject class >> onRepository: aRepository withSourceDirectory: aDirectory [ ^ self basicNew @@ -42,7 +44,7 @@ IceBasicProject class >> onRepository: aRepository withSourceDirectory: aDirecto yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceBasicProject >> = anotherProject [ self species = anotherProject species ifFalse: [ ^ false ]. @@ -52,7 +54,7 @@ IceBasicProject >> = anotherProject [ ^ true. ] -{ #category : #writing } +{ #category : 'writing' } IceBasicProject >> addProjectFileToChangeBuilder: anIceChangeImporter [ | projectFileName | @@ -67,20 +69,20 @@ IceBasicProject >> addProjectFileToChangeBuilder: anIceChangeImporter [ contents: self contentsString. ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> addTag: aString [ self tags: (self tags copyWith: aString) ] -{ #category : #writing } +{ #category : 'writing' } IceBasicProject >> addToChangeBuilder: anIceChangeImporter [ self addProjectFileToChangeBuilder: anIceChangeImporter. "self addPropertiesFileToChangeBuilder: anIceChangeImporter." ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> backwardsCompatibleFormat [ ^ TIceRepositoryWriter users @@ -88,12 +90,12 @@ IceBasicProject >> backwardsCompatibleFormat [ ifNone: [ Smalltalk at: #IceLibgitFiletreeWriter ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> commitish [ ^ commitish ] -{ #category : #storing } +{ #category : 'storing' } IceBasicProject >> contentsString [ ^ ByteArray streamContents: [ :stream | @@ -103,31 +105,31 @@ IceBasicProject >> contentsString [ nextPut: self properties ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> fileFormat: aFileFormat [ self fileFormatId: aFileFormat id ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> fileFormatId: aFileFormat [ self repositoryProperties fileFormatId: aFileFormat ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> fileSystem [ ^ commitish fileSystem ] -{ #category : #comparing } +{ #category : 'comparing' } IceBasicProject >> hash [ ^ commitish hash ] -{ #category : #initialization } +{ #category : 'initialization' } IceBasicProject >> initialize [ super initialize. " repositoryProperties := self readProperties. @@ -136,72 +138,72 @@ IceBasicProject >> initialize [ ifAbsent: [ repositoryProperties fileFormat: self backwardsCompatibleFormat ]" ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> name [ ^ self repository name ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> projectFileIn: aCommitish [ ^ aCommitish fileSystem resolve: self projectFilePath ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> projectFilePath [ ^ RelativePath with: '.project'. ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> projectFileReference [ ^ self projectFileIn: commitish ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> projectName [ ^ properties at: #projectName ifAbsent: [ self repository name ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> properties [ ^ properties ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> properties: aDictionary [ properties := aDictionary ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> removeTag: aString [ self tags: (self tags copyWithout: aString) ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> repositoryProperties [ ^ self repository properties ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> sourceDirectory [ ^ properties at: 'srcDirectory' ifAbsent: [ 'src' ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> sourceDirectory: aString [ properties at: 'srcDirectory' put: aString ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> tags [ ^ self properties @@ -209,7 +211,7 @@ IceBasicProject >> tags [ ifAbsent: [ #() ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceBasicProject >> tags: anArray [ self properties diff --git a/Iceberg/IceBasicProjectReader.class.st b/Iceberg/IceBasicProjectReader.class.st index bf02aca046..0a8fdbe2b3 100644 --- a/Iceberg/IceBasicProjectReader.class.st +++ b/Iceberg/IceBasicProjectReader.class.st @@ -3,18 +3,20 @@ I am a basic project reader that is used by default in case no other project rea I create an IceBasicProject in case a .project file is found, or an IceUnbornProject otherwise. " Class { - #name : #IceBasicProjectReader, - #superclass : #IceProjectReader, - #category : 'Iceberg-Project' + #name : 'IceBasicProjectReader', + #superclass : 'IceProjectReader', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #testing } +{ #category : 'testing' } IceBasicProjectReader >> canReadProjectFromCommitish: aCommitish [ ^ (aCommitish fileSystem / '.project') exists ] -{ #category : #reading } +{ #category : 'reading' } IceBasicProjectReader >> readProjectFromCommitish: anIceCommitish [ | properties projectFileReference | diff --git a/Iceberg/IceBranch.class.st b/Iceberg/IceBranch.class.st index 9182293543..4a1f22f2fa 100644 --- a/Iceberg/IceBranch.class.st +++ b/Iceberg/IceBranch.class.st @@ -4,15 +4,17 @@ I am an abstract class representing a branch. My history and accessing operation Check my superclass and subclasses for more information. " Class { - #name : #IceBranch, - #superclass : #IceCommitish, + #name : 'IceBranch', + #superclass : 'IceCommitish', #instVars : [ 'name' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceBranch class >> named: aName inRepository: aRepository [ | branch | @@ -21,100 +23,100 @@ IceBranch class >> named: aName inRepository: aRepository [ ^ branch ] -{ #category : #comparing } +{ #category : 'comparing' } IceBranch >> = aBranch [ ^ self fullname = aBranch fullname ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceBranch >> changesFromCommit: anIceCommit [ ^ self commit changesFromCommit: anIceCommit ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceBranch >> delete [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceBranch >> description [ ^ self name ] -{ #category : #accessing } +{ #category : 'accessing' } IceBranch >> fullname [ ^ name ] -{ #category : #comparing } +{ #category : 'comparing' } IceBranch >> hash [ ^ self fullname hash ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceBranch >> includesCommit: aCommit [ ^ self newCommitWalk includesCommit: aCommit ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceBranch >> includesPackageNamed: aString [ ^ self commit includesPackageNamed: aString ] -{ #category : #testing } +{ #category : 'testing' } IceBranch >> isBranch [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceBranch >> isHead [ ^ self repository head = self ] -{ #category : #testing } +{ #category : 'testing' } IceBranch >> isLocal [ ^ self isRemote not ] -{ #category : #accessing } +{ #category : 'accessing' } IceBranch >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceBranch >> name: aString [ name := aString ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceBranch >> newCommitWalk [ ^ repository newCommitWalk fromBranch: self ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceBranch >> packageNames [ ^ self commit packageNames ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceBranch >> packages [ ^ self commit packages ] -{ #category : #printing } +{ #category : 'printing' } IceBranch >> printOn: aStream [ aStream @@ -124,19 +126,19 @@ IceBranch >> printOn: aStream [ nextPutAll: ')' ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceBranch >> properties [ ^ self commit properties ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceBranch >> snapshotFor: anIceSavedPackage [ ^ self commit snapshotFor: anIceSavedPackage ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceBranch >> versionFor: anIcePackage [ ^ self commit versionFor: anIcePackage diff --git a/Iceberg/IceBranchAlreadyExists.class.st b/Iceberg/IceBranchAlreadyExists.class.st index 8a1733e327..2cd127a8ba 100644 --- a/Iceberg/IceBranchAlreadyExists.class.st +++ b/Iceberg/IceBranchAlreadyExists.class.st @@ -1,19 +1,21 @@ Class { - #name : #IceBranchAlreadyExists, - #superclass : #IceError, + #name : 'IceBranchAlreadyExists', + #superclass : 'IceError', #instVars : [ 'branchName' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceBranchAlreadyExists >> branchName [ ^ branchName ] -{ #category : #accessing } +{ #category : 'accessing' } IceBranchAlreadyExists >> branchName: aBranchName [ branchName := aBranchName diff --git a/Iceberg/IceChange.class.st b/Iceberg/IceChange.class.st index 9e7fcdcb40..864db9091f 100644 --- a/Iceberg/IceChange.class.st +++ b/Iceberg/IceChange.class.st @@ -2,17 +2,19 @@ I represent an abstract change. " Class { - #name : #IceChange, - #superclass : #Object, - #category : #'Iceberg-Changes' + #name : 'IceChange', + #superclass : 'Object', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #displaying } +{ #category : 'displaying' } IceChange >> accept: anIceChangeImporter [ ^ self subclassResponsibility ] -{ #category : #displaying } +{ #category : 'displaying' } IceChange >> displayingProgressString [ ^ self subclassResponsibility ] diff --git a/Iceberg/IceChangeImporter.class.st b/Iceberg/IceChangeImporter.class.st index bc0025d172..ea48017b5e 100644 --- a/Iceberg/IceChangeImporter.class.st +++ b/Iceberg/IceChangeImporter.class.st @@ -6,17 +6,19 @@ I receive the node where I have to work on, a version, and the I can be visited I work recursively: I create new instances of myself to build the children nodes of my node. " Class { - #name : #IceChangeImporter, - #superclass : #Object, + #name : 'IceChangeImporter', + #superclass : 'Object', #instVars : [ 'parentNode', 'diff', 'version' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #importing } +{ #category : 'importing' } IceChangeImporter >> addFileNamed: aString path: aRelativePath contents: aByteArray [ | fileParentNode | @@ -34,12 +36,12 @@ IceChangeImporter >> addFileNamed: aString path: aRelativePath contents: aByteAr contents: aByteArray). ] -{ #category : #accessing } +{ #category : 'accessing' } IceChangeImporter >> diff: anIceDiff [ diff := anIceDiff ] -{ #category : #private } +{ #category : 'private' } IceChangeImporter >> ensureDirectoryAtPath: aPathSegments inNode: aNode [ | firstChild | @@ -48,7 +50,7 @@ IceChangeImporter >> ensureDirectoryAtPath: aPathSegments inNode: aNode [ ^ self ensureDirectoryAtPath: aPathSegments allButFirst inNode: firstChild ] -{ #category : #private } +{ #category : 'private' } IceChangeImporter >> ensureDirectoryNamed: aName inNode: aNode [ aNode childAt: aName ifPresent: [ :node | @@ -57,7 +59,7 @@ IceChangeImporter >> ensureDirectoryNamed: aName inNode: aNode [ ^ aNode addChild: (IceDirectoryDefinition named: aName path: aNode path / aName) ] -{ #category : #private } +{ #category : 'private' } IceChangeImporter >> ensureSourceCodeParentNodeIn: aNode [ ^ self @@ -65,24 +67,24 @@ IceChangeImporter >> ensureSourceCodeParentNodeIn: aNode [ inNode: aNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceChangeImporter >> parentNode: anIcePackageNode [ parentNode := anIcePackageNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceChangeImporter >> version: aVersion [ version := aVersion ] -{ #category : #visiting } +{ #category : 'visiting' } IceChangeImporter >> visitCypressPropertiesChange: anIceCypressPropertiesChange [ version properties addToChangeBuilder: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceChangeImporter >> visitImageChange: anIceImageChange [ | importer | @@ -93,7 +95,7 @@ IceChangeImporter >> visitImageChange: anIceImageChange [ ^ importer importOn: (self ensureSourceCodeParentNodeIn: parentNode) ] -{ #category : #visiting } +{ #category : 'visiting' } IceChangeImporter >> visitProjectChange: anIceProjectChange [ "Import the project file extracted from the commit without utterly post-treatment to create the new project file" diff --git a/Iceberg/IceChangeSetChanged.class.st b/Iceberg/IceChangeSetChanged.class.st index 6306853876..d289e73d9f 100644 --- a/Iceberg/IceChangeSetChanged.class.st +++ b/Iceberg/IceChangeSetChanged.class.st @@ -2,7 +2,9 @@ I announce when a IceChangeSet has changed. " Class { - #name : #IceChangeSetChanged, - #superclass : #IceAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IceChangeSetChanged', + #superclass : 'IceAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IceCheckoutAllPackages.class.st b/Iceberg/IceCheckoutAllPackages.class.st index 0ed7aa2191..bf238548cb 100644 --- a/Iceberg/IceCheckoutAllPackages.class.st +++ b/Iceberg/IceCheckoutAllPackages.class.st @@ -4,17 +4,19 @@ I'm the simplest possible checkout strategy: I will load into image all packages This strategy is very dangerous since it can introduce in image package versions that were not there before. Or it may cause the packages/classes became incorrectly initialised. But some project can find this strategy very apeleable nevertheless. " Class { - #name : #IceCheckoutAllPackages, - #superclass : #IceCheckoutStrategy, - #category : #'Iceberg-Core' + #name : 'IceCheckoutAllPackages', + #superclass : 'IceCheckoutStrategy', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutAllPackages class >> order [ ^ 20 ] -{ #category : #checkout } +{ #category : 'checkout' } IceCheckoutAllPackages >> checkoutOn: anIceWorkingCopy [ diff --git a/Iceberg/IceCheckoutAlreadyLoadedPackages.class.st b/Iceberg/IceCheckoutAlreadyLoadedPackages.class.st index d4bd652de3..e8f8408463 100644 --- a/Iceberg/IceCheckoutAlreadyLoadedPackages.class.st +++ b/Iceberg/IceCheckoutAlreadyLoadedPackages.class.st @@ -6,17 +6,19 @@ This strategy is still dangerous bacause packages installed may be incorrectly i " Class { - #name : #IceCheckoutAlreadyLoadedPackages, - #superclass : #IceCheckoutStrategy, - #category : #'Iceberg-Core' + #name : 'IceCheckoutAlreadyLoadedPackages', + #superclass : 'IceCheckoutStrategy', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutAlreadyLoadedPackages class >> order [ ^ 10 ] -{ #category : #checkout } +{ #category : 'checkout' } IceCheckoutAlreadyLoadedPackages >> checkoutOn: anIceWorkingCopy [ anIceWorkingCopy loadChangesInWorkingCopy: self diff. @@ -25,7 +27,7 @@ IceCheckoutAlreadyLoadedPackages >> checkoutOn: anIceWorkingCopy [ anIceWorkingCopy markAllPackagesAsClean. ] -{ #category : #testing } +{ #category : 'testing' } IceCheckoutAlreadyLoadedPackages >> isLoadAlreadyLoadedStrategy [ ^ true diff --git a/Iceberg/IceCheckoutConflictError.class.st b/Iceberg/IceCheckoutConflictError.class.st index 31acaef008..7ad3b2e1d3 100644 --- a/Iceberg/IceCheckoutConflictError.class.st +++ b/Iceberg/IceCheckoutConflictError.class.st @@ -2,12 +2,14 @@ I indicate there are conflicts when I try to checkout so I can't perform the operation. " Class { - #name : #IceCheckoutConflictError, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceCheckoutConflictError', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceCheckoutConflictError >> acceptError: aVisitor [ aVisitor visitCheckoutConflict: self ] diff --git a/Iceberg/IceCheckoutDoNotLoadPackages.class.st b/Iceberg/IceCheckoutDoNotLoadPackages.class.st index d151b26e7e..1fb631c0cb 100644 --- a/Iceberg/IceCheckoutDoNotLoadPackages.class.st +++ b/Iceberg/IceCheckoutDoNotLoadPackages.class.st @@ -2,17 +2,19 @@ A strategy to checkout but not load packages into the image " Class { - #name : #IceCheckoutDoNotLoadPackages, - #superclass : #IceCheckoutStrategy, - #category : #'Iceberg-Core' + #name : 'IceCheckoutDoNotLoadPackages', + #superclass : 'IceCheckoutStrategy', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutDoNotLoadPackages class >> order [ ^ 1000 ] -{ #category : #checkout } +{ #category : 'checkout' } IceCheckoutDoNotLoadPackages >> checkoutOn: anIceWorkingCopy [ committish commit adopt. self repository setHead: committish diff --git a/Iceberg/IceCheckoutSelectedPackages.class.st b/Iceberg/IceCheckoutSelectedPackages.class.st index 25c8f5088c..9dea087f5d 100644 --- a/Iceberg/IceCheckoutSelectedPackages.class.st +++ b/Iceberg/IceCheckoutSelectedPackages.class.st @@ -2,27 +2,29 @@ This is an alternative checkout strategy that includes a list of new packages to be loaded. It works like the load existing package strategy and including new packages in list. " Class { - #name : #IceCheckoutSelectedPackages, - #superclass : #IceCheckoutStrategy, + #name : 'IceCheckoutSelectedPackages', + #superclass : 'IceCheckoutStrategy', #instVars : [ 'packageNames' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutSelectedPackages class >> canBeUsedFromUI [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutSelectedPackages class >> order [ ^ 30 ] -{ #category : #checkout } +{ #category : 'checkout' } IceCheckoutSelectedPackages >> checkoutOn: anIceWorkingCopy [ anIceWorkingCopy loadChangesInWorkingCopy: self diff. @@ -36,7 +38,7 @@ IceCheckoutSelectedPackages >> checkoutOn: anIceWorkingCopy [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutSelectedPackages >> packages: aCollection [ packageNames := aCollection diff --git a/Iceberg/IceCheckoutStrategy.class.st b/Iceberg/IceCheckoutStrategy.class.st index 711848c5ec..eab31a6bb4 100644 --- a/Iceberg/IceCheckoutStrategy.class.st +++ b/Iceberg/IceCheckoutStrategy.class.st @@ -5,16 +5,18 @@ Doing a checkout then means also introduce new versions into the image, and ther My children will implement method #checkoutPackagesOn: to perform this task. " Class { - #name : #IceCheckoutStrategy, - #superclass : #Object, + #name : 'IceCheckoutStrategy', + #superclass : 'Object', #instVars : [ 'committish', 'diff' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy class >> allStrategies [ ^ (self allSubclasses sorted: [ :a :b | a order < b order ]) @@ -22,61 +24,61 @@ IceCheckoutStrategy class >> allStrategies [ thenCollect: [ :e | e new ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy class >> canBeUsedFromUI [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy class >> order [ ^ self subclassResponsibility ] -{ #category : #checkout } +{ #category : 'checkout' } IceCheckoutStrategy >> checkoutOn: anIceWorkingCopy [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy >> commitish: aCommittish [ committish := aCommittish ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy >> committish: aCommittish [ committish := aCommittish ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy >> diff [ ^ diff ifNil: [ diff := committish diffTo: self workingCopy ]. ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy >> diff: anIceDiff [ diff := anIceDiff ] -{ #category : #testing } +{ #category : 'testing' } IceCheckoutStrategy >> isLoadAlreadyLoadedStrategy [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy >> repository [ ^ committish repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceCheckoutStrategy >> workingCopy [ ^ self repository workingCopy diff --git a/Iceberg/IceCherrypicker.class.st b/Iceberg/IceCherrypicker.class.st index bddafce676..fcf48bdd20 100644 --- a/Iceberg/IceCherrypicker.class.st +++ b/Iceberg/IceCherrypicker.class.st @@ -6,8 +6,8 @@ I know how to cherry-pick changes from a source IceDiff into a target IceDiff. " Class { - #name : #IceCherrypicker, - #superclass : #Object, + #name : 'IceCherrypicker', + #superclass : 'Object', #instVars : [ 'dependencies', 'sourceDiff', @@ -16,10 +16,12 @@ Class { 'incomingChangesDiff', 'environment' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #dependencies } +{ #category : 'dependencies' } IceCherrypicker >> addClassDependencyOf: aIceClassDefinition [ dependencies add: @@ -29,12 +31,12 @@ IceCherrypicker >> addClassDependencyOf: aIceClassDefinition [ yourself) ] -{ #category : #'accessing - options' } +{ #category : 'accessing - options' } IceCherrypicker >> addDependency: anIceDependency [ self dependencies add: anIceDependency . ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceCherrypicker >> addExtendedClassDependency: aIceExtensionDefinition [ dependencies add: @@ -44,7 +46,7 @@ IceCherrypicker >> addExtendedClassDependency: aIceExtensionDefinition [ yourself) ] -{ #category : #'execution - private' } +{ #category : 'execution - private' } IceCherrypicker >> addInitialDependencies [ sourceDiff accept: (IceCherrypickerInitialDependenciesCollector new @@ -52,7 +54,7 @@ IceCherrypicker >> addInitialDependencies [ yourself) ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceCherrypicker >> addMetaclassDependency: anIceClassDefinition [ dependencies add: @@ -62,7 +64,7 @@ IceCherrypicker >> addMetaclassDependency: anIceClassDefinition [ yourself) ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceCherrypicker >> addMethodDependencyOf: aIceMethodDefinition [ dependencies add: @@ -72,7 +74,7 @@ IceCherrypicker >> addMethodDependencyOf: aIceMethodDefinition [ yourself) ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceCherrypicker >> addPackageDependency: aIcePackageDefinition [ dependencies add: @@ -82,7 +84,7 @@ IceCherrypicker >> addPackageDependency: aIcePackageDefinition [ yourself) ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceCherrypicker >> addTraitDependencyOf: aIceTraitDefinition [ dependencies add: @@ -92,7 +94,7 @@ IceCherrypicker >> addTraitDependencyOf: aIceTraitDefinition [ yourself) ] -{ #category : #'execution - private' } +{ #category : 'execution - private' } IceCherrypicker >> addTransitiveDependencies [ | originalDependencies | originalDependencies := nil. @@ -103,22 +105,22 @@ IceCherrypicker >> addTransitiveDependencies [ do: [ :each | each addTransitiveDependenciesFrom: incomingChangesDiff to: self ]] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> dependencies [ ^ dependencies ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> environment [ ^ environment ifNil: [ environment := IceDependencyEnvironment on: receiverToAncestorDiff targetVersion ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> environment: anObject [ environment:= anObject ] -{ #category : #'execution - public' } +{ #category : 'execution - public' } IceCherrypicker >> execute [ "Obtain the initial change set (ICS)" @@ -135,27 +137,27 @@ IceCherrypicker >> execute [ ^ mergeTree ] -{ #category : #testing } +{ #category : 'testing' } IceCherrypicker >> includesDependencyTo: aDefinition [ ^ dependencies anySatisfy: [ :each | each isDependencyTo: aDefinition ]. ] -{ #category : #initialization } +{ #category : 'initialization' } IceCherrypicker >> initialize [ super initialize. dependencies := Set new ] -{ #category : #operations } +{ #category : 'operations' } IceCherrypicker >> mergeWithCurrentBranch [ mergeTree := IceTreeMerger new merge: self targetDiff tree into: self receiverToAncestorDiff tree ] -{ #category : #'execution - private' } +{ #category : 'execution - private' } IceCherrypicker >> pruneUndependedNodesInTargetDiff [ IceCherrypickerDiffPruner new @@ -163,32 +165,32 @@ IceCherrypicker >> pruneUndependedNodesInTargetDiff [ applyTo: incomingChangesDiff ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> receiverToAncestorDiff [ ^ receiverToAncestorDiff ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> receiverToAncestorDiff: anIceDiff [ receiverToAncestorDiff:= anIceDiff. ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> sourceDiff [ ^ sourceDiff ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> sourceDiff: anObject [ sourceDiff := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> targetDiff [ ^ incomingChangesDiff ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypicker >> targetDiff: anObject [ incomingChangesDiff := anObject ] diff --git a/Iceberg/IceCherrypickerDiffPruner.class.st b/Iceberg/IceCherrypickerDiffPruner.class.st index b55fc091ef..825d305680 100644 --- a/Iceberg/IceCherrypickerDiffPruner.class.st +++ b/Iceberg/IceCherrypickerDiffPruner.class.st @@ -3,16 +3,18 @@ I am an IceDiff visitor to remove nodes that are not required the IceCherrypicke " Class { - #name : #IceCherrypickerDiffPruner, - #superclass : #IceTreeVisitor, + #name : 'IceCherrypickerDiffPruner', + #superclass : 'IceTreeVisitor', #instVars : [ 'cherrypicker', 'nodesToRemove' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #applying } +{ #category : 'applying' } IceCherrypickerDiffPruner >> applyTo: anIceDiff [ nodesToRemove := Set new. @@ -23,31 +25,31 @@ IceCherrypickerDiffPruner >> applyTo: anIceDiff [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypickerDiffPruner >> cherrypicker [ ^ cherrypicker ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypickerDiffPruner >> cherrypicker: anIceCherrypicker [ cherrypicker := anIceCherrypicker ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerDiffPruner >> visitAddition: anIceAddition [ (cherrypicker includesDependencyTo: anIceAddition definition) ifFalse: [ nodesToRemove add: currentNode ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerDiffPruner >> visitModification: anIceModification [ (cherrypicker includesDependencyTo: anIceModification definition) ifFalse: [ nodesToRemove add: currentNode ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerDiffPruner >> visitNoModification: anIceNoModification [ "Nothing with me. Just visit children" @@ -55,7 +57,7 @@ IceCherrypickerDiffPruner >> visitNoModification: anIceNoModification [ ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerDiffPruner >> visitRemoval: anIceRemoval [ (cherrypicker includesDependencyTo: anIceRemoval definition) ifFalse: [ nodesToRemove add: currentNode ] diff --git a/Iceberg/IceCherrypickerInitialDependenciesCollector.class.st b/Iceberg/IceCherrypickerInitialDependenciesCollector.class.st index 3a9533824e..543e19bcf9 100644 --- a/Iceberg/IceCherrypickerInitialDependenciesCollector.class.st +++ b/Iceberg/IceCherrypickerInitialDependenciesCollector.class.st @@ -3,32 +3,34 @@ I am a visitor of IceDiff (and IceDefinition) collect the initial ser of depende " Class { - #name : #IceCherrypickerInitialDependenciesCollector, - #superclass : #IceTreeVisitor, + #name : 'IceCherrypickerInitialDependenciesCollector', + #superclass : 'IceTreeVisitor', #instVars : [ 'cherrypicker' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypickerInitialDependenciesCollector >> cherrypicker [ ^ cherrypicker ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypickerInitialDependenciesCollector >> cherrypicker: anIceCherrypicker [ cherrypicker := anIceCherrypicker ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitAddition: anIceAddition [ anIceAddition definition accept: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitClassDefinition: anIceClassDefinition [ anIceClassDefinition isMeta ifTrue: [ cherrypicker @@ -36,43 +38,43 @@ IceCherrypickerInitialDependenciesCollector >> visitClassDefinition: anIceClassD ifFalse: [ cherrypicker addClassDependencyOf: anIceClassDefinition ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCherrypickerInitialDependenciesCollector >> visitExtensionDefinition: anIceExtensionDefinition [ cherrypicker addExtendedClassDependency: anIceExtensionDefinition ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitMethodNode: anIceMethodDefinition [ cherrypicker addMethodDependencyOf: anIceMethodDefinition ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitModification: anIceModification [ anIceModification definition accept: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitNoModification: anIceNoModification [ "Nothing with me. Just visit children" self visitChildrenOf: currentNode. ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitPackage: anIcePackageDefinition [ cherrypicker addPackageDependency: anIcePackageDefinition ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitRemoval: anIceRemoval [ anIceRemoval definition accept: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceCherrypickerInitialDependenciesCollector >> visitTraitDefinition: anIceTraitDefinition [ cherrypicker addTraitDependencyOf: anIceTraitDefinition diff --git a/Iceberg/IceClassDefinition.class.st b/Iceberg/IceClassDefinition.class.st index 1936f03a9d..6fe53d093e 100644 --- a/Iceberg/IceClassDefinition.class.st +++ b/Iceberg/IceClassDefinition.class.st @@ -6,18 +6,20 @@ My contents is the class definition code. See my superclasses for more information. " Class { - #name : #IceClassDefinition, - #superclass : #IceMethodContainerDefinition, - #category : #'Iceberg-Changes' + #name : 'IceClassDefinition', + #superclass : 'IceMethodContainerDefinition', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceClassDefinition >> accept: aVisitor [ ^ aVisitor visitClassDefinition: self ] -{ #category : #patching } +{ #category : 'patching' } IceClassDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ "If we are replacing an existing class, we need to handle the case. @@ -45,7 +47,7 @@ IceClassDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ to: anIceModification leftDefinition asMCDefinition ] -{ #category : #patching } +{ #category : 'patching' } IceClassDefinition >> addToPatcher: aMCPatcher [ "We should not handle metaclasses if their mcDefinition is nil. @@ -57,20 +59,20 @@ IceClassDefinition >> addToPatcher: aMCPatcher [ aMCPatcher addDefinition: self asMCDefinition ] -{ #category : #converting } +{ #category : 'converting' } IceClassDefinition >> asMCDefinitionWithoutMetaSide [ ^ mcDefinition deepCopy removeMetaSideVariables ] -{ #category : #testing } +{ #category : 'testing' } IceClassDefinition >> isClassDefinition [ ^ true ] -{ #category : #patching } +{ #category : 'patching' } IceClassDefinition >> removeFromPatcher: aMCPatcher [ "If the meta side is removed, we should modify the class definition to not include the meta-parts such as class-instance-variables" diff --git a/Iceberg/IceClassDependency.class.st b/Iceberg/IceClassDependency.class.st index 995fcc1226..2ee4e0a267 100644 --- a/Iceberg/IceClassDependency.class.st +++ b/Iceberg/IceClassDependency.class.st @@ -2,54 +2,56 @@ I am a dependency to a class. " Class { - #name : #IceClassDependency, - #superclass : #IceDefinedDependency, - #category : #'Iceberg-Cherrypicking' + #name : 'IceClassDependency', + #superclass : 'IceDefinedDependency', + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #comparing } +{ #category : 'comparing' } IceClassDependency >> = anObject [ ^ super = anObject and: [ definition asMCDefinition superclassName = anObject definition asMCDefinition superclassName ] ] -{ #category : #comparing } +{ #category : 'comparing' } IceClassDependency >> hash [ "Answer an integer value that is related to the identity of the receiver." ^ super hash bitXor: self definition asMCDefinition superclassName hash ] -{ #category : #visiting } +{ #category : 'visiting' } IceClassDependency >> isDependencyTo: aIceDefinition [ ^ aIceDefinition asMCDefinition className = definition asMCDefinition className ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceClassDependency >> referencedClasses [ ^ {definition asMCDefinition superclassName} , self subclassNames , self referencedSharedPool ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceClassDependency >> referencedPackages [ ^ self definition asMCDefinition category ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceClassDependency >> referencedSharedPool [ ^ (definition asMCDefinition sharedPoolsString splitOn: ' ') collect: #asSymbol ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceClassDependency >> referencedTraits [ ^ ((RBParser parseExpression: definition asMCDefinition traitComposition) allChildren select: #isVariable) collect: #name ] -{ #category : #private } +{ #category : 'private' } IceClassDependency >> subclassNames [ ^ self cherrypicker environment diff --git a/Iceberg/IceCodeDefinition.class.st b/Iceberg/IceCodeDefinition.class.st index 59382d9958..f49a2e8665 100644 --- a/Iceberg/IceCodeDefinition.class.st +++ b/Iceberg/IceCodeDefinition.class.st @@ -4,12 +4,14 @@ I am an IceDefinition that have some source code in my contents. See my sub/superclasses for more information. " Class { - #name : #IceCodeDefinition, - #superclass : #IceDefinition, - #category : #'Iceberg-Changes' + #name : 'IceCodeDefinition', + #superclass : 'IceDefinition', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceCodeDefinition class >> named: aName source: aString [ ^ (super named: aName) @@ -17,14 +19,14 @@ IceCodeDefinition class >> named: aName source: aString [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceCodeDefinition >> = anotherDefinition [ ^ super = anotherDefinition and: [ self contents = anotherDefinition contents ] ] -{ #category : #patching } +{ #category : 'patching' } IceCodeDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ aMCPatcher @@ -32,25 +34,25 @@ IceCodeDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ to: anIceModification leftDefinition asMCDefinition ] -{ #category : #patching } +{ #category : 'patching' } IceCodeDefinition >> addToPatcher: aMCPatcher [ self subclassResponsibility ] -{ #category : #comparing } +{ #category : 'comparing' } IceCodeDefinition >> hash [ ^ self contents hash ] -{ #category : #patching } +{ #category : 'patching' } IceCodeDefinition >> removeFrom: aPatcher [ self subclassResponsibility ] -{ #category : #patching } +{ #category : 'patching' } IceCodeDefinition >> removeFromPatcher: aMCPatcher [ self subclassResponsibility diff --git a/Iceberg/IceCommit.class.st b/Iceberg/IceCommit.class.st index 242ceaebf1..a92c564384 100644 --- a/Iceberg/IceCommit.class.st +++ b/Iceberg/IceCommit.class.st @@ -20,12 +20,14 @@ And to the packages existing in that commit: IMPORTANT IMPLEMENTATION NOTE. For optimization purposes, a commit caches the names of the packages inside himself. This was made under the assumption that a commit is immutble and nobody ""cooks"" the commit once it is in the repository. " Class { - #name : #IceCommit, - #superclass : #IceCommitish, - #category : #'Iceberg-Core' + #name : 'IceCommit', + #superclass : 'IceCommitish', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'API - working copy' } +{ #category : 'API - working copy' } IceCommit >> adopt [ "Low level. @@ -34,24 +36,24 @@ IceCommit >> adopt [ self repository workingCopy adoptCommit: self ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommit >> ancestors [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> author [ ^ self subclassResponsibility ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> canRevertChanges [ ^ false ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceCommit >> changedPackagesToWorkingCopy: left [ | leftPackageNames rightPackageNames added removed | @@ -82,55 +84,55 @@ IceCommit >> changedPackagesToWorkingCopy: left [ removed ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceCommit >> changesFromNoCommit: anIceNoCommit [ ^ self packages collect: [ :each | IceImageChange package: each ] ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> changesTo: aCommitish [ ^ aCommitish changesFromCommit: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> comment [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> commit [ ^ self ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommit >> commonAncestorWith: aCommitish [ ^ aCommitish commonAncestorWithCommit: self ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceCommit >> compatibleUsername [ ^ 'CompatibleUserName' ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceCommit >> createTag: aString [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> datetime [ self subclassResponsibility ] -{ #category : #printing } +{ #category : 'printing' } IceCommit >> description [ self tags @@ -140,12 +142,12 @@ IceCommit >> description [ ^ 'Detached at {1}' format: { self shortId } ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> diffFromHead [ ^ self repository headCommit diffTo: self ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> diffToParent [ "returns a diff between me and my first parent/ancestor" ^ self diffTo: (self ancestors @@ -153,18 +155,18 @@ IceCommit >> diffToParent [ ifEmpty: [ nil ]) ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> diffToWorkingCopy [ ^ self diffTo: self repository workingCopy ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> diffToWorkingCopyForPackage: aPackage [ ^ self diffToWorkingCopyForPackages: { aPackage } ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommit >> diffToWorkingCopyForPackages: aCollection [ ^ IceDiff new @@ -173,7 +175,7 @@ IceCommit >> diffToWorkingCopyForPackages: aCollection [ buildForPackages: aCollection ] -{ #category : #testing } +{ #category : 'testing' } IceCommit >> hasMultipleAncestors [ | ancestors | ancestors := self ancestors. @@ -181,54 +183,54 @@ IceCommit >> hasMultipleAncestors [ and: [ ancestors size > 1 ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> id [ self subclassResponsibility ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceCommit >> includesPackageNamed: aName [ ^ self packageNames includes: aName ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommit >> isAncestorOf: aCommit [ ^ aCommit isParentOf: self ] -{ #category : #testing } +{ #category : 'testing' } IceCommit >> isMergeCommit [ ^ self ancestors size > 1 ] -{ #category : #testing } +{ #category : 'testing' } IceCommit >> isMerged [ ^ self repository workingCopy isCommitMerged: self ] -{ #category : #testing } +{ #category : 'testing' } IceCommit >> isNoCommit [ ^ false ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommit >> isParentOf: aCommit [ ^ self newCommitWalk includesCommit: aCommit ] -{ #category : #testing } +{ #category : 'testing' } IceCommit >> isUnknownCommit [ ^ false ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceCommit >> mcPackageSnapshotsOfPackages: aCollection [ self flag: #pharoTodo. "I'm not sure I need to answer an empty snapshot. if there is no mcVersion it likely means the package was removed and an empty snapshow will @@ -243,31 +245,31 @@ IceCommit >> mcPackageSnapshotsOfPackages: aCollection [ do: [ :e | MCSnapshot empty ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> name [ ^ self id ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommit >> newCommitWalk [ ^ repository newCommitWalk fromCommit: self ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceCommit >> packages [ ^ self packageNames collect: [ :name | IcePackage named: name repository: self repository ] ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommit >> parent [ ^ self ancestors first ] -{ #category : #printing } +{ #category : 'printing' } IceCommit >> printOn: aStream [ aStream @@ -277,7 +279,7 @@ IceCommit >> printOn: aStream [ nextPutAll: ')' ] -{ #category : #printing } +{ #category : 'printing' } IceCommit >> shortId [ "This is just for presentation purposes. @@ -285,7 +287,7 @@ IceCommit >> shortId [ ^ self id first: 7 ] -{ #category : #printing } +{ #category : 'printing' } IceCommit >> status [ (self repository workingCopy referenceCommits includes: self) @@ -301,25 +303,25 @@ IceCommit >> status [ ^ 'Not merged' ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceCommit >> tags [ ^ self repository tags select: [ :each | each commit = self ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommit >> timeStamp [ self subclassResponsibility ] -{ #category : #validating } +{ #category : 'validating' } IceCommit >> validateIsBranch [ "Operation not permitted in a detached commit state" IceNotInBranch signal ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceCommit >> versionFor: aPackage [ ^ IceSavedPackageVersion fromCommit: self package: aPackage diff --git a/Iceberg/IceCommited.class.st b/Iceberg/IceCommited.class.st index d93f3801f3..505dcb2b45 100644 --- a/Iceberg/IceCommited.class.st +++ b/Iceberg/IceCommited.class.st @@ -2,7 +2,9 @@ Announces when a repository has commited. " Class { - #name : #IceCommited, - #superclass : #IceRepositoryAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IceCommited', + #superclass : 'IceRepositoryAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IceCommitish.class.st b/Iceberg/IceCommitish.class.st index 485c042179..b6f9ef9d24 100644 --- a/Iceberg/IceCommitish.class.st +++ b/Iceberg/IceCommitish.class.st @@ -25,15 +25,17 @@ I can also be queried for packages, ancestry and to make diffs to another commit aCommitish newCommitWalk. " Class { - #name : #IceCommitish, - #superclass : #Object, + #name : 'IceCommitish', + #superclass : 'Object', #instVars : [ 'repository' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceCommitish class >> inRepository: aRepository [ ^ self new @@ -41,19 +43,19 @@ IceCommitish class >> inRepository: aRepository [ yourself ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommitish >> changesFromCommit: anIceCommit [ ^ self subclassResponsibility ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommitish >> changesTo: aCommitish [ ^ self commit changesTo: aCommitish ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> checkout [ self checkout: (IceCheckoutAlreadyLoadedPackages new @@ -61,14 +63,14 @@ IceCommitish >> checkout [ yourself) ] -{ #category : #'API - checkout' } +{ #category : 'API - checkout' } IceCommitish >> checkout: aCheckoutStrategy [ aCheckoutStrategy committish: self. ^ repository checkout: aCheckoutStrategy ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> checkoutAllPackages [ repository checkout: (IceCheckoutAllPackages new @@ -76,20 +78,20 @@ IceCommitish >> checkoutAllPackages [ yourself) ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> checkoutWithStrategy: aCheckoutStrategy [ "Load code of a myself into the working copy (following strategy), and set myself as HEAD." repository checkout: (aCheckoutStrategy commitish: self) ] -{ #category : #'API - cherry-picking' } +{ #category : 'API - cherry-picking' } IceCommitish >> cherryPickFrom: anotherCommit [ ^ anotherCommit cherryPickTo: self ] -{ #category : #'cherry-picking' } +{ #category : 'cherry-picking' } IceCommitish >> cherryPickTo: anotherCommit [ | initialDiff extendedDiff commonAncestor receiverDiff | @@ -108,79 +110,79 @@ IceCommitish >> cherryPickTo: anotherCommit [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommitish >> commit [ self subclassResponsibility ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommitish >> commits [ ^ self newCommitWalk commits ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommitish >> commitsDo: aBlockClosure [ self newCommitWalk commitsDo: aBlockClosure ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommitish >> commonAncestorWith: anIceWorkingCopy [ ^ self commit commonAncestorWith: anIceWorkingCopy ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommitish >> diffTo: aCommitish [ ^ IceDiff from: self to: aCommitish ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceCommitish >> diffToParent [ ^ self diffTo: self parent ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceCommitish >> includesPackageNamed: aString [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceCommitish >> isBranch [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceCommitish >> isDetached [ ^ self isBranch not ] -{ #category : #testing } +{ #category : 'testing' } IceCommitish >> isTag [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceCommitish >> isUnbornBranch [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceCommitish >> isWorkingCopy [ ^ false ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> loadPackageNamed: aString [ "Load the code of the given package into the working copy. Does not modify HEAD" @@ -190,67 +192,67 @@ IceCommitish >> loadPackageNamed: aString [ fromCommit: self ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceCommitish >> mcVersionFor: anIceSavedPackageVersion [ ^ repository mcVersionFor: anIceSavedPackageVersion ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> merge [ ^ self repository workingCopy mergeCommit: self commit ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceCommitish >> newCommitWalk [ self subclassResponsibility ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceCommitish >> packageNames [ ^ self subclassResponsibility ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceCommitish >> packages [ ^ #() ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceCommitish >> project [ self subclassResponsibility ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceCommitish >> properties [ ^ IceRepositoryProperties fromFileReferenceDirectory: self project sourceDirectoryReference commitish: self ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceCommitish >> readerClass [ ^ self commit readerClass ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommitish >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceCommitish >> repository: aRepository [ repository := aRepository ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceCommitish >> snapshotForPackage: anIceSavedPackage [ ^ [ (self mcVersionFor: (self versionFor: anIceSavedPackage)) snapshot ] @@ -258,13 +260,13 @@ IceCommitish >> snapshotForPackage: anIceSavedPackage [ do: [ MCSnapshot empty ] ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> switch [ self checkout: IceCheckoutDoNotLoadPackages new ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceCommitish >> switchAndMergeWorkingCopy [ self switch. self flag: #pharoTodo. "Demeters law" @@ -272,19 +274,19 @@ IceCommitish >> switchAndMergeWorkingCopy [ self commit merge ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceCommitish >> tagNames [ ^ self tags collect: #name ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceCommitish >> tags [ ^ self commit tags ] -{ #category : #validating } +{ #category : 'validating' } IceCommitish >> validateCanMerge [ | imageCommit headCommit mergeCommit | @@ -304,19 +306,19 @@ IceCommitish >> validateCanMerge [ imageCommit description }) ]. ] -{ #category : #validating } +{ #category : 'validating' } IceCommitish >> validateIsBranch [ "Nothing. I'm a branch" ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceCommitish >> versionFor: aPackage [ self subclassResponsibility ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceCommitish >> writerClass [ ^ self commit writerClass diff --git a/Iceberg/IceConflictingOperation.class.st b/Iceberg/IceConflictingOperation.class.st index a811e63dc7..1898e11727 100644 --- a/Iceberg/IceConflictingOperation.class.st +++ b/Iceberg/IceConflictingOperation.class.st @@ -2,16 +2,18 @@ I reprensent a conflict between two operations that can be solved by using #selectLeft and #selectRight. " Class { - #name : #IceConflictingOperation, - #superclass : #IceOperationMerge, + #name : 'IceConflictingOperation', + #superclass : 'IceOperationMerge', #instVars : [ 'leftOperation', 'rightOperation' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceConflictingOperation class >> left: leftOperation right: rightOperation [ ^ self new @@ -20,100 +22,100 @@ IceConflictingOperation class >> left: leftOperation right: rightOperation [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceConflictingOperation >> accept: aVisitor [ ^ aVisitor visitConflictingOperation: self ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceConflictingOperation >> actualClass [ ^ leftOperation definition actualClass ] -{ #category : #resolution } +{ #category : 'resolution' } IceConflictingOperation >> chosenOperation [ ^ chosen ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceConflictingOperation >> contextClass [ ^ leftOperation contextClass ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> definition [ "This is just for compatibility" ^ leftOperation definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> description [ "Any of my instances should have the same description" ^ leftOperation description ] -{ #category : #testing } +{ #category : 'testing' } IceConflictingOperation >> isConflict [ ^ true ] -{ #category : #resolution } +{ #category : 'resolution' } IceConflictingOperation >> isLeftChosen [ ^ chosen = leftOperation ] -{ #category : #resolution } +{ #category : 'resolution' } IceConflictingOperation >> isRightChosen [ ^ chosen = rightOperation ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> key [ "Any of my operations should have the same key" ^ leftOperation key ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> leftContents [ ^ leftOperation leftContents ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> leftOperation: anOperation [ leftOperation := anOperation ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> rightContents [ ^ rightOperation leftContents ] -{ #category : #accessing } +{ #category : 'accessing' } IceConflictingOperation >> rightOperation: anOperation [ rightOperation := anOperation ] -{ #category : #resolution } +{ #category : 'resolution' } IceConflictingOperation >> selectLeft [ chosen := leftOperation ] -{ #category : #resolution } +{ #category : 'resolution' } IceConflictingOperation >> selectRight [ chosen := rightOperation diff --git a/Iceberg/IceCredentialStore.class.st b/Iceberg/IceCredentialStore.class.st index 22d80867c7..bc70460d33 100644 --- a/Iceberg/IceCredentialStore.class.st +++ b/Iceberg/IceCredentialStore.class.st @@ -8,8 +8,8 @@ There is a default instance that stores the credentials in a file per image, in In the settings you can modify the location of the credentials file. " Class { - #name : #IceCredentialStore, - #superclass : #Object, + #name : 'IceCredentialStore', + #superclass : 'Object', #instVars : [ 'plainCredentials', 'sshCredentials', @@ -19,10 +19,12 @@ Class { 'CurrentStore', 'StoreFile' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialStore class >> current [ ^ CurrentStore ifNil: [ CurrentStore := self new @@ -30,12 +32,12 @@ IceCredentialStore class >> current [ yourself ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialStore class >> defaultCredentialsStoreFile [ ^ FileLocator localDirectory / #iceberg / 'credentials.fuel' ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialStore class >> settingsOn: aBuilder [ @@ -56,18 +58,18 @@ IceCredentialStore class >> settingsOn: aBuilder [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialStore class >> storeFile [ ^ StoreFile ifNil: [ StoreFile := self defaultCredentialsStoreFile ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialStore class >> storeFile: aValue [ StoreFile := aValue ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceCredentialStore >> allCredentials [ self loadFromStore. self defaultSSHCredential. @@ -75,7 +77,7 @@ IceCredentialStore >> allCredentials [ ^ plainCredentials values , sshCredentials values ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceCredentialStore >> defaultSSHCredential [ ^ sshCredentials at: #* @@ -84,7 +86,7 @@ IceCredentialStore >> defaultSSHCredential [ yourself ] ] -{ #category : #initialization } +{ #category : 'initialization' } IceCredentialStore >> initialize [ super initialize. @@ -92,12 +94,12 @@ IceCredentialStore >> initialize [ sshCredentials := Dictionary new. ] -{ #category : #testing } +{ #category : 'testing' } IceCredentialStore >> isCurrent [ ^ self == CurrentStore ] -{ #category : #'API - storing' } +{ #category : 'API - storing' } IceCredentialStore >> loadFromStore [ | array | @@ -125,39 +127,39 @@ IceCredentialStore >> loadFromStore [ sshCredentials := array at: 2 ] -{ #category : #'private - lookup' } +{ #category : 'private - lookup' } IceCredentialStore >> lookup: aHostName in: dict ifAbsent: aBlock [ self loadFromStore. ^ dict at: aHostName ifAbsent: aBlock ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceCredentialStore >> plaintextCredentialForHostname: aHostname [ ^ self lookup: aHostname in: plainCredentials ifAbsent: [ IcePlaintextCredentials new ] ] -{ #category : #'API - storing' } +{ #category : 'API - storing' } IceCredentialStore >> removeCredential: aCredential [ aCredential removeFrom: self. self saveIntoStore. ] -{ #category : #'private - storing' } +{ #category : 'private - storing' } IceCredentialStore >> removePlainTextCredential: anIcePlaintextCredentials [ plainCredentials removeKey: anIcePlaintextCredentials host ] -{ #category : #'private - storing' } +{ #category : 'private - storing' } IceCredentialStore >> removeSSHCredential: aCredential [ sshCredentials removeKey: aCredential host ] -{ #category : #'API - storing' } +{ #category : 'API - storing' } IceCredentialStore >> saveIntoStore [ self flag: #pharoTodo. "implement an encrypted version" @@ -183,13 +185,13 @@ IceCredentialStore >> saveIntoStore [ sshCredentials } ] ] ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceCredentialStore >> sshCredentialForHostname: aHostname [ ^ self lookup: aHostname in: sshCredentials ifAbsent: [ self defaultSSHCredential ]. ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceCredentialStore >> storeCredential: credential [ self loadFromStore. @@ -197,7 +199,7 @@ IceCredentialStore >> storeCredential: credential [ self saveIntoStore ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceCredentialStore >> storeCredential: credential forHostname: aHostname [ self loadFromStore. @@ -205,18 +207,18 @@ IceCredentialStore >> storeCredential: credential forHostname: aHostname [ self saveIntoStore ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialStore >> storeFile: aFileLocator [ storeFile := aFileLocator ] -{ #category : #'private - storing' } +{ #category : 'private - storing' } IceCredentialStore >> storePlaintextCredential: credential forHostname: aHostname [ plainCredentials at: aHostname put: credential ] -{ #category : #'private - storing' } +{ #category : 'private - storing' } IceCredentialStore >> storeSshCredential: credential forHostname: aHostname [ sshCredentials at: aHostname put: credential diff --git a/Iceberg/IceCredentialsProvider.class.st b/Iceberg/IceCredentialsProvider.class.st index 08c7ceb140..c8311e0cfd 100644 --- a/Iceberg/IceCredentialsProvider.class.st +++ b/Iceberg/IceCredentialsProvider.class.st @@ -4,8 +4,8 @@ I am in charge of remembering credentials information, configuration and providi I have a counter to avoid for trying for ever with the same credentials. " Class { - #name : #IceCredentialsProvider, - #superclass : #Object, + #name : 'IceCredentialsProvider', + #superclass : 'Object', #instVars : [ 'tries', 'remote' @@ -14,10 +14,12 @@ Class { 'ProviderType', 'UseCustomSsh' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider class >> defaultCredentialProviderClass [ | providers | providers := self allSubclasses. @@ -25,43 +27,43 @@ IceCredentialsProvider class >> defaultCredentialProviderClass [ ^ providers detect: #isDefault ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceCredentialsProvider class >> defaultForHost: aString [ ^ self defaultForRemote: (IceRemoteWithOnlyHostname for: aString) ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceCredentialsProvider class >> defaultForRemote: aRemote [ ^ self providerType new remote: aRemote; yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceCredentialsProvider class >> defaultForRemoteUrl: url [ ^ self providerType new remote: (IceGitRemote url: url); yourself ] -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider class >> isDefault [ ^ false ] -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider class >> providerType [ ^ ProviderType ifNil: [ ProviderType := self defaultCredentialProviderClass ] ] -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider class >> providerType: anObject [ ProviderType := anObject ] -{ #category : #settings } +{ #category : 'settings' } IceCredentialsProvider class >> settingsOn: aBuilder [ (aBuilder setting: #useCustomSsh) @@ -101,68 +103,68 @@ IceCredentialsProvider class >> settingsOn: aBuilder [ label: 'Passphrase of your SSH key' ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider class >> sshCredentials [ "It returns the default ssh credentials to use when not configured new for the host" ^ IceCredentialStore current defaultSSHCredential ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider class >> sshCredentialsClass [ self useCustomSsh ifTrue: [ ^ LGitCredentialsSSH ]. ^ LGitCredentialsSSHAgent ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider class >> useCustomSsh [ ^ UseCustomSsh ifNil: [ UseCustomSsh := false ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider class >> useCustomSsh: aBoolean [ UseCustomSsh := aBoolean ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider >> credentialStore [ ^ IceCredentialStore current ] -{ #category : #initialization } +{ #category : 'initialization' } IceCredentialsProvider >> initialize [ tries := 0. ] -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider >> obtainCredentials: response [ self subclassResponsibility ] -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider >> obtainPlaintextCredentials: response [ self subclassResponsibility ] -{ #category : #private } +{ #category : 'private' } IceCredentialsProvider >> obtainSshCredentials: response [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider >> plaintextCredentials [ ^ self credentialStore plaintextCredentialForHostname: remote host. ] -{ #category : #actions } +{ #category : 'actions' } IceCredentialsProvider >> providePlaintextCredentials [ ^self plaintextCredentials isPresent ifTrue: [ self plaintextCredentials copy ] ifFalse: [ self providePlaintextCredentialsTo: IcePlaintextCredentials new ]. ] -{ #category : #actions } +{ #category : 'actions' } IceCredentialsProvider >> providePlaintextCredentialsTo: credentials [ tries := tries + 1. @@ -177,7 +179,7 @@ IceCredentialsProvider >> providePlaintextCredentialsTo: credentials [ ] -{ #category : #actions } +{ #category : 'actions' } IceCredentialsProvider >> provideSshAgentCredentialsTo: credentials [ "Just check for tries to ensure we do not enter an infinite cycle in libgit2" tries := tries + 1. @@ -186,7 +188,7 @@ IceCredentialsProvider >> provideSshAgentCredentialsTo: credentials [ LGitNoCredentialsProvided signal: 'No ssh-agent credentials found.' ] ] -{ #category : #actions } +{ #category : 'actions' } IceCredentialsProvider >> provideSshCredentialsTo: credentials [ tries := tries + 1. @@ -199,17 +201,17 @@ IceCredentialsProvider >> provideSshCredentialsTo: credentials [ ifFalse: [ self obtainSshCredentials: credentials ]. ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider >> remote: anObject [ remote := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider >> sshCredentials [ ^ IceCredentialStore current sshCredentialForHostname: remote host. ] -{ #category : #accessing } +{ #category : 'accessing' } IceCredentialsProvider >> sshCredentialsClass [ ^ self class sshCredentialsClass ] diff --git a/Iceberg/IceCritiquesVisitor.class.st b/Iceberg/IceCritiquesVisitor.class.st index feb69d1763..8015483c6c 100644 --- a/Iceberg/IceCritiquesVisitor.class.st +++ b/Iceberg/IceCritiquesVisitor.class.st @@ -2,33 +2,35 @@ I am a tree visitor that returns a set of critics to the elements in the collection " Class { - #name : #IceCritiquesVisitor, - #superclass : #IceTreeVisitor, + #name : 'IceCritiquesVisitor', + #superclass : 'IceTreeVisitor', #instVars : [ 'critiques' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #accessing } +{ #category : 'accessing' } IceCritiquesVisitor >> critiques [ ^ critiques ] -{ #category : #initialization } +{ #category : 'initialization' } IceCritiquesVisitor >> initialize [ super initialize. critiques := Set new ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitAddition: anIceAddition [ ^ anIceAddition definition accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitAll: aCollection [ aCollection @@ -36,19 +38,19 @@ IceCritiquesVisitor >> visitAll: aCollection [ displayingProgress: [ :each | 'Calculating Critiques...' ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitClassDefinition: anIceClassDefinition [ anIceClassDefinition canBeBrowsed ifTrue: [ critiques addAll: anIceClassDefinition actualClass critiques ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitDirectoryDefinition: anIceDirectoryDefinition [ "no critiques for directories" ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitExtensionDefinition: anIceExtension [ "^ anIceExtension definition accept: self" | actualClass methods | @@ -59,32 +61,32 @@ IceCritiquesVisitor >> visitExtensionDefinition: anIceExtension [ ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitFileNode: anIceFileDefinition [ ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitMethodNode: anIceMethodDefinition [ anIceMethodDefinition canBeBrowsed ifTrue: [ critiques addAll: (anIceMethodDefinition contextClass >> anIceMethodDefinition name) critiques ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitModification: anIceModification [ ^ anIceModification definition accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitNoModification: anIceNoModification [ "If there is no modification I don't generate critics for this node" ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitPackage: anIcePackageDefinition [ | aPackage | @@ -92,13 +94,13 @@ IceCritiquesVisitor >> visitPackage: anIcePackageDefinition [ critiques addAll: aPackage critiques ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitRemoval: anIceRemoval [ "We do nothing on removal" ] -{ #category : #visiting } +{ #category : 'visiting' } IceCritiquesVisitor >> visitTraitDefinition: anIceClassDefinition [ anIceClassDefinition canBeBrowsed ifTrue: [ diff --git a/Iceberg/IceCypressPropertiesChange.class.st b/Iceberg/IceCypressPropertiesChange.class.st index 3963fda378..8543166a70 100644 --- a/Iceberg/IceCypressPropertiesChange.class.st +++ b/Iceberg/IceCypressPropertiesChange.class.st @@ -1,16 +1,18 @@ Class { - #name : #IceCypressPropertiesChange, - #superclass : #IceChange, - #category : #'Iceberg-Changes' + #name : 'IceCypressPropertiesChange', + #superclass : 'IceChange', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceCypressPropertiesChange >> accept: anIceChangeImporter [ anIceChangeImporter visitCypressPropertiesChange: self ] -{ #category : #displaying } +{ #category : 'displaying' } IceCypressPropertiesChange >> displayingProgressString [ ^ 'Comparing Cypress changes' ] diff --git a/Iceberg/IceDefinedDependency.class.st b/Iceberg/IceDefinedDependency.class.st index f3894968b8..d5efc6d3e5 100644 --- a/Iceberg/IceDefinedDependency.class.st +++ b/Iceberg/IceDefinedDependency.class.st @@ -2,15 +2,17 @@ I am a dependency for the IceDefinitions that have a MCDefinition. " Class { - #name : #IceDefinedDependency, - #superclass : #IceDependency, + #name : 'IceDefinedDependency', + #superclass : 'IceDependency', #instVars : [ 'definition' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #comparing } +{ #category : 'comparing' } IceDefinedDependency >> = anObject [ "Answer whether the receiver and anObject represent the same object." self == anObject @@ -20,7 +22,7 @@ IceDefinedDependency >> = anObject [ ^ definition className = anObject definition className ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceDefinedDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherrypicker [ | asDependencyVisitor | asDependencyVisitor := IceAsDependencyVisitor new. @@ -54,35 +56,35 @@ IceDefinedDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherry [ :iceNode | anIceCherrypicker addDependency: (iceNode accept: asDependencyVisitor) ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinedDependency >> definition [ ^ definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinedDependency >> definition: anObject [ definition := anObject ] -{ #category : #comparing } +{ #category : 'comparing' } IceDefinedDependency >> hash [ "Answer an integer value that is related to the identity of the receiver." ^ definition className hash ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceDefinedDependency >> referencedClasses [ ^ self subclassResponsibility ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceDefinedDependency >> referencedPackages [ ^ self subclassResponsibility ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceDefinedDependency >> referencedTraits [ ^ self subclassResponsibility diff --git a/Iceberg/IceDefinition.class.st b/Iceberg/IceDefinition.class.st index 88c944cbd8..c187b37de2 100644 --- a/Iceberg/IceDefinition.class.st +++ b/Iceberg/IceDefinition.class.st @@ -13,15 +13,17 @@ My main API is used to show myself in a diff or merge browser: I am also used for comparison to build diffs. See my definitions of equality along my subclasses. " Class { - #name : #IceDefinition, - #superclass : #Object, + #name : 'IceDefinition', + #superclass : 'Object', #instVars : [ 'name' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceDefinition class >> named: aString [ ^ self new @@ -29,110 +31,110 @@ IceDefinition class >> named: aString [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceDefinition >> = anotherDefinition [ ^ self species = anotherDefinition species and: [ self name = anotherDefinition name ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceDefinition >> accept: aVisitor [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinition >> basicName [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinition >> contents [ self subclassResponsibility ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceDefinition >> contextClass [ ^ nil ] -{ #category : #comparing } +{ #category : 'comparing' } IceDefinition >> hash [ ^ self name hash ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isClassDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isDirectoryDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isExtensionDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isFileDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isMethodDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isPackageDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isRootDefinition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceDefinition >> isTraitDefinition [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinition >> key [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinition >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceDefinition >> name: aString [ name := aString ] -{ #category : #visiting } +{ #category : 'visiting' } IceDefinition >> removeFrom: aVisitor [ self subclassResponsibility diff --git a/Iceberg/IceDependency.class.st b/Iceberg/IceDependency.class.st index 7a9d7ae979..8378438a78 100644 --- a/Iceberg/IceDependency.class.st +++ b/Iceberg/IceDependency.class.st @@ -3,30 +3,32 @@ I am a dependency of an IceDefinition in a IceDiff. " Class { - #name : #IceDependency, - #superclass : #Object, + #name : 'IceDependency', + #superclass : 'Object', #instVars : [ 'cherrypicker' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #adding } +{ #category : 'adding' } IceDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherrypicker [ ^ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependency >> cherrypicker [ ^ cherrypicker ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependency >> cherrypicker: anIceCherrypicker [ cherrypicker :=anIceCherrypicker ] -{ #category : #adding } +{ #category : 'adding' } IceDependency >> isDependencyTo: aDefinition [ ^ self subclassResponsibility ] diff --git a/Iceberg/IceDependencyEnvironment.class.st b/Iceberg/IceDependencyEnvironment.class.st index e612bba28b..6bdb9ffb02 100644 --- a/Iceberg/IceDependencyEnvironment.class.st +++ b/Iceberg/IceDependencyEnvironment.class.st @@ -1,21 +1,23 @@ Class { - #name : #IceDependencyEnvironment, - #superclass : #Object, + #name : 'IceDependencyEnvironment', + #superclass : 'Object', #instVars : [ 'commit', 'definitions' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceDependencyEnvironment class >> on: anIceGitCommit [ ^ self new commit: anIceGitCommit; yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependencyEnvironment >> allSubclassesNamesOf: aName [ | result | @@ -25,7 +27,7 @@ IceDependencyEnvironment >> allSubclassesNamesOf: aName [ ^ result , (result flatCollect: [ :e | self allSubclassesNamesOf: e ]). ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependencyEnvironment >> allUsingTraitNamed: aName [ | result | result := self usersOfTraitNamed: aName. @@ -35,18 +37,18 @@ IceDependencyEnvironment >> allUsingTraitNamed: aName [ , (result flatCollect: [ :e | self allUsingTraitNamed: e ]) ] -{ #category : #querying } +{ #category : 'querying' } IceDependencyEnvironment >> classes [ ^ self definitions select: [ :e | e isClassDefinition ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependencyEnvironment >> commit: anIceGitCommit [ commit := anIceGitCommit ] -{ #category : #private } +{ #category : 'private' } IceDependencyEnvironment >> definitions [ ^ definitions @@ -54,19 +56,19 @@ IceDependencyEnvironment >> definitions [ definitions := commit packages flatCollect: [ :package | (commit snapshotForPackage: package) definitions ] ] ] -{ #category : #querying } +{ #category : 'querying' } IceDependencyEnvironment >> subclassNamesOf: aString [ ^ self classes select: [ :e | e superclassName = aString ] thenCollect: [ :e | e className ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependencyEnvironment >> traits [ ^ self definitions select: [ :e | e isTraitDefinition ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceDependencyEnvironment >> usersOfTraitNamed: aName [ ^ (self traits , self classes) select: [ :e | e traitComposition includesSubstring: aName ] diff --git a/Iceberg/IceDiff.class.st b/Iceberg/IceDiff.class.st index 62fc40b0dd..563307d3e4 100644 --- a/Iceberg/IceDiff.class.st +++ b/Iceberg/IceDiff.class.st @@ -18,8 +18,8 @@ I am created by doing one of the following: yourself " Class { - #name : #IceDiff, - #superclass : #Object, + #name : 'IceDiff', + #superclass : 'Object', #instVars : [ 'tree', 'source', @@ -27,10 +27,12 @@ Class { 'writerClass', 'mergedTree' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceDiff class >> from: sourceCommitish to: targetCommitish [ ^ self new @@ -40,19 +42,19 @@ IceDiff class >> from: sourceCommitish to: targetCommitish [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceDiff >> accept: aVisitor [ ^ tree accept: aVisitor ] -{ #category : #building } +{ #category : 'building' } IceDiff >> build [ self buildForChanges: (source changesTo: target) ] -{ #category : #building } +{ #category : 'building' } IceDiff >> buildForAllFiles [ | files changes | @@ -62,7 +64,7 @@ IceDiff >> buildForAllFiles [ self buildForChanges: changes ] -{ #category : #building } +{ #category : 'building' } IceDiff >> buildForChanges: aCollection [ | leftTree rightTree | @@ -86,13 +88,13 @@ IceDiff >> buildForChanges: aCollection [ tree := mergedTree select: [ :operation | operation hasChanges ]. ] -{ #category : #building } +{ #category : 'building' } IceDiff >> buildForPackages: aCollection [ self buildForChanges: (aCollection collect: [ :package | IceImageChange package: package ]) ] -{ #category : #building } +{ #category : 'building' } IceDiff >> buildFull [ "Image changes should be processed before commit changes @@ -100,13 +102,13 @@ IceDiff >> buildFull [ self buildForChanges: self imageChanges, (source referenceCommit changesTo: target) asArray ] -{ #category : #testing } +{ #category : 'testing' } IceDiff >> canRevertChanges [ ^ source canRevertChanges ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> codeSubdirectoryNode [ ^ self repository subdirectory @@ -115,7 +117,7 @@ IceDiff >> codeSubdirectoryNode [ ] -{ #category : #copying } +{ #category : 'copying' } IceDiff >> copyWithOnly: aCollection [ | treeCopy selectedOperations | @@ -129,44 +131,44 @@ IceDiff >> copyWithOnly: aCollection [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> description [ ^ target description ] -{ #category : #operations } +{ #category : 'operations' } IceDiff >> diff: leftTree with: rightTree [ ^ (self mergedTreeOf: leftTree with: rightTree) select: [ :operation | operation hasChanges ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> diffTree: anIceTreeDiff [ tree := anIceTreeDiff ] -{ #category : #building } +{ #category : 'building' } IceDiff >> imageChanges [ ^ self imageChangesForPackages: source loadedPackages ] -{ #category : #building } +{ #category : 'building' } IceDiff >> imageChangesForPackages: aCollection [ ^ aCollection collect: [ :package | IceImageChange package: package ] as: Array ] -{ #category : #testing } +{ #category : 'testing' } IceDiff >> includesPackageNamed: aString [ ^ self isEmpty not and: [ self codeSubdirectoryNode includesKey: aString ] ] -{ #category : #testing } +{ #category : 'testing' } IceDiff >> isCodeSubdirectory: aNode [ | nodeLocation repositorySubdirectoryLocation | @@ -175,24 +177,24 @@ IceDiff >> isCodeSubdirectory: aNode [ ^ nodeLocation pathString = repositorySubdirectoryLocation pathString ] -{ #category : #testing } +{ #category : 'testing' } IceDiff >> isEmpty [ ^ tree isEmpty ] -{ #category : #testing } +{ #category : 'testing' } IceDiff >> isValidPackage: aFileReference [ ^ self writerClass isValidPackage: aFileReference ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> mergedTree [ ^ mergedTree ] -{ #category : #operations } +{ #category : 'operations' } IceDiff >> mergedTreeOf: leftTree with: rightTree [ ^ leftTree @@ -205,55 +207,55 @@ IceDiff >> mergedTreeOf: leftTree with: rightTree [ ifFalse: [ IceModification left: left right: right ] ] ] -{ #category : #converting } +{ #category : 'converting' } IceDiff >> packageNameFromDirectory: aString [ ^ self writerClass packageNameFromDirectory: aString ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> packages [ tree isEmpty ifTrue: [ ^ #( ) ]. ^ self codeSubdirectoryNode children ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> repository [ ^ source repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> sourceVersion [ ^ source ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> sourceVersion: aCommitish [ source := aCommitish ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> targetVersion [ ^ target ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> targetVersion: aCommitish [ target := aCommitish ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> tree [ ^ tree ] -{ #category : #accessing } +{ #category : 'accessing' } IceDiff >> treeToShow [ "Returns the tree to show in the UI. For a diff it is always the same tree. @@ -261,7 +263,7 @@ IceDiff >> treeToShow [ ^ self tree ] -{ #category : #converting } +{ #category : 'converting' } IceDiff >> writerClass [ "I am cached per instance of diff because obtaining the writer class is an expensive operation (600ms per call)" diff --git a/Iceberg/IceDirectoryDefinition.class.st b/Iceberg/IceDirectoryDefinition.class.st index 2a51a80dca..da23beecb0 100644 --- a/Iceberg/IceDirectoryDefinition.class.st +++ b/Iceberg/IceDirectoryDefinition.class.st @@ -6,24 +6,26 @@ My contents is an empty string. See my superclasses for more information. " Class { - #name : #IceDirectoryDefinition, - #superclass : #IceFileSystemDefinition, - #category : 'Iceberg-Changes' + #name : 'IceDirectoryDefinition', + #superclass : 'IceFileSystemDefinition', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceDirectoryDefinition >> accept: aVisitor [ ^ aVisitor visitDirectoryDefinition: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceDirectoryDefinition >> contents [ ^ '' ] -{ #category : #testing } +{ #category : 'testing' } IceDirectoryDefinition >> isDirectoryDefinition [ ^ true diff --git a/Iceberg/IceDuplicatedRepository.class.st b/Iceberg/IceDuplicatedRepository.class.st index a51b518de2..7e0f3a4775 100644 --- a/Iceberg/IceDuplicatedRepository.class.st +++ b/Iceberg/IceDuplicatedRepository.class.st @@ -2,7 +2,9 @@ When trying to create a repository I found another one with a conflicting location (i.e. the same director on disk). " Class { - #name : #IceDuplicatedRepository, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceDuplicatedRepository', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/IceEmptyMerge.class.st b/Iceberg/IceEmptyMerge.class.st index eab1c43a31..abeb699a15 100644 --- a/Iceberg/IceEmptyMerge.class.st +++ b/Iceberg/IceEmptyMerge.class.st @@ -2,18 +2,20 @@ I am a null object representing the absence of a merge. I am used when no merge is needed between two versions, for example, in case the commit to merge is already in the image and the commit to merge into is an ancestor of this commit. " Class { - #name : #IceEmptyMerge, - #superclass : #Object, - #category : 'Iceberg-Changes' + #name : 'IceEmptyMerge', + #superclass : 'Object', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyMerge >> mergeTree [ ^ IceEmptyNode new ] -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyMerge >> tree [ ^ self mergeTree diff --git a/Iceberg/IceEmptyNode.class.st b/Iceberg/IceEmptyNode.class.st index 9d51ad0495..ffc0d72327 100644 --- a/Iceberg/IceEmptyNode.class.st +++ b/Iceberg/IceEmptyNode.class.st @@ -2,51 +2,53 @@ I am a null object representing an empty node of a tree. I'm used together with IceNode. " Class { - #name : #IceEmptyNode, - #superclass : #IceAbstractNode, - #category : #'Iceberg-Changes' + #name : 'IceEmptyNode', + #superclass : 'IceAbstractNode', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceEmptyNode >> accept: aVisitor [ ^ aVisitor visitEmptyNode: self ] -{ #category : #adding } +{ #category : 'adding' } IceEmptyNode >> addTo: anotherNode [ "I'm empty, so I do not add myself to a tree." ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceEmptyNode >> anySatisfy: aBlockClosure [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyNode >> children [ ^ #() ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceEmptyNode >> collect: aBlockClosure [ ^ self ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceEmptyNode >> collectWithPath: aBlockClosure [ ^ self ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceEmptyNode >> do: aBlock [ "Do nothing" ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceEmptyNode >> firstNodeSuchThat: conditionBlock ifNone: noneBlock [ ^ (conditionBlock value: self) @@ -54,48 +56,48 @@ IceEmptyNode >> firstNodeSuchThat: conditionBlock ifNone: noneBlock [ ifFalse: noneBlock ] -{ #category : #testing } +{ #category : 'testing' } IceEmptyNode >> hasChanges [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyNode >> includesKey: aString [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceEmptyNode >> isEmpty [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceEmptyNode >> isEmptyNode [ ^ true ] -{ #category : #merging } +{ #category : 'merging' } IceEmptyNode >> mergeWith: anotherNode onLeft: leftBlock onRight: rightBlock onMerge: mergeBlock [ ^ anotherNode collect: rightBlock ] -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyNode >> path [ ^ RelativePath new ] -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyNode >> resolve: aRelativePath ifPresent: presentBlock ifAbsent: absentBlock [ ^ absentBlock value ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceEmptyNode >> select: aBlockClosure [ ^ self diff --git a/Iceberg/IceEmptyWorkingCopy.class.st b/Iceberg/IceEmptyWorkingCopy.class.st index 50e8c2e960..a312a9045f 100644 --- a/Iceberg/IceEmptyWorkingCopy.class.st +++ b/Iceberg/IceEmptyWorkingCopy.class.st @@ -2,30 +2,32 @@ I am an empty working copy, with no loaded packages. " Class { - #name : #IceEmptyWorkingCopy, - #superclass : #IceWorkingCopyState, - #category : #'Iceberg-WorkingCopy' + #name : 'IceEmptyWorkingCopy', + #superclass : 'IceWorkingCopyState', + #category : 'Iceberg-WorkingCopy', + #package : 'Iceberg', + #tag : 'WorkingCopy' } -{ #category : #display } +{ #category : 'display' } IceEmptyWorkingCopy >> description [ ^ 'Nothing loaded' ] -{ #category : #testing } +{ #category : 'testing' } IceEmptyWorkingCopy >> isDetached [ "I have no reference commit, I cannot be detached" ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceEmptyWorkingCopy >> referenceCommit [ ^ repository head commit ] -{ #category : #validating } +{ #category : 'validating' } IceEmptyWorkingCopy >> validateCanCommit [ "I've no packages loaded. I can always commit. diff --git a/Iceberg/IceError.class.st b/Iceberg/IceError.class.st index 463a6ca019..e4b198cd4f 100644 --- a/Iceberg/IceError.class.st +++ b/Iceberg/IceError.class.st @@ -2,12 +2,14 @@ Base class for all errors in Iceberg. " Class { - #name : #IceError, - #superclass : #Error, - #category : 'Iceberg-Errors' + #name : 'IceError', + #superclass : 'Error', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceError >> acceptError: aVisitor [ aVisitor visitGenericError: self ] diff --git a/Iceberg/IceErrorVisitor.class.st b/Iceberg/IceErrorVisitor.class.st index 3e55dea613..c541a16ebf 100644 --- a/Iceberg/IceErrorVisitor.class.st +++ b/Iceberg/IceErrorVisitor.class.st @@ -2,73 +2,75 @@ I'm a generic visitor for IceError instances. My subclasses can override my methods to specialize handling. " Class { - #name : #IceErrorVisitor, - #superclass : #Object, - #category : #'Iceberg-Errors' + #name : 'IceErrorVisitor', + #superclass : 'Object', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitAuthenticationError: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitCheckoutConflict: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitCloneLocationAlreadyExists: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitCloneRemoteNotFound: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitGenericError: anError [ "Just re-send as default (to have a debugger)" anError pass ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitMergeAborted: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitMissingCredentialsError: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitNoRemote: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitNothingToCommitError: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitRemoteAlreadyExistError: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitRemoteDesynchronizedError: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitShouldCommitBeforePullError: anError [ self visitGenericError: anError ] -{ #category : #visiting } +{ #category : 'visiting' } IceErrorVisitor >> visitWorkingCopyDesynchronizedError: anError [ self visitGenericError: anError ] diff --git a/Iceberg/IceExtendedClassDependency.class.st b/Iceberg/IceExtendedClassDependency.class.st index 38a1025d98..8581e1b8da 100644 --- a/Iceberg/IceExtendedClassDependency.class.st +++ b/Iceberg/IceExtendedClassDependency.class.st @@ -1,41 +1,43 @@ Class { - #name : #IceExtendedClassDependency, - #superclass : #IceDefinedDependency, - #category : #'Iceberg-Cherrypicking' + #name : 'IceExtendedClassDependency', + #superclass : 'IceDefinedDependency', + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #comparing } +{ #category : 'comparing' } IceExtendedClassDependency >> = anObject [ ^ super = anObject and: [ self definition name = anObject definition name ] ] -{ #category : #comparing } +{ #category : 'comparing' } IceExtendedClassDependency >> hash [ ^ super hash bitXor: self definition name hash ] -{ #category : #adding } +{ #category : 'adding' } IceExtendedClassDependency >> isDependencyTo: anIceDefinition [ ^ anIceDefinition name = self definition name ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceExtendedClassDependency >> referencedClasses [ ^ {definition name asSymbol } ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceExtendedClassDependency >> referencedPackages [ ^ {self definition packageName} ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceExtendedClassDependency >> referencedTraits [ ^ self referencedClasses ] -{ #category : #visiting } +{ #category : 'visiting' } IceExtendedClassDependency >> visitExtensionDefinition: anIceExtensionDefinition [ ^ definition name = anIceExtensionDefinition name ] diff --git a/Iceberg/IceExtensionDefinition.class.st b/Iceberg/IceExtensionDefinition.class.st index 4ded617fb0..b089756cc2 100644 --- a/Iceberg/IceExtensionDefinition.class.st +++ b/Iceberg/IceExtensionDefinition.class.st @@ -7,15 +7,17 @@ My contents is just an empty string as the extended class/trait is not defined i See my superclasses for more information. " Class { - #name : #IceExtensionDefinition, - #superclass : #IceMethodContainerDefinition, + #name : 'IceExtensionDefinition', + #superclass : 'IceMethodContainerDefinition', #instVars : [ 'packageName' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceExtensionDefinition class >> named: aString isMeta: isMeta packageName: aName [ ^ self new name: aString; @@ -24,64 +26,64 @@ IceExtensionDefinition class >> named: aString isMeta: isMeta packageName: aName yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceExtensionDefinition >> = otherExtension [ ^ self species = otherExtension species and: [ self name = otherExtension name ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceExtensionDefinition >> accept: aVisitor [ ^ aVisitor visitExtensionDefinition: self ] -{ #category : #patching } +{ #category : 'patching' } IceExtensionDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ "Do nothing. Monticello does not have definitions for extensions" ] -{ #category : #patching } +{ #category : 'patching' } IceExtensionDefinition >> addToPatcher: aMCPatcher [ "Monticello does not reify extensions" ] -{ #category : #visiting } +{ #category : 'visiting' } IceExtensionDefinition >> contents [ ^ '' ] -{ #category : #comparing } +{ #category : 'comparing' } IceExtensionDefinition >> hash [ ^ self name hash ] -{ #category : #testing } +{ #category : 'testing' } IceExtensionDefinition >> isExtensionDefinition [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceExtensionDefinition >> packageName [ ^ packageName ] -{ #category : #accessing } +{ #category : 'accessing' } IceExtensionDefinition >> packageName: anObject [ packageName := anObject ] -{ #category : #patching } +{ #category : 'patching' } IceExtensionDefinition >> removeFrom: aPatcher [ "Do nothing. Do not remove extensions" ] -{ #category : #patching } +{ #category : 'patching' } IceExtensionDefinition >> removeFromPatcher: aMCPatcher [ "Monticello does not reify extensions" diff --git a/Iceberg/IceExternalJob.class.st b/Iceberg/IceExternalJob.class.st index 319d671b9b..47be8ec012 100644 --- a/Iceberg/IceExternalJob.class.st +++ b/Iceberg/IceExternalJob.class.st @@ -1,6 +1,6 @@ Class { - #name : #IceExternalJob, - #superclass : #Object, + #name : 'IceExternalJob', + #superclass : 'Object', #instVars : [ 'title', 'started', @@ -8,70 +8,72 @@ Class { 'max', 'current' ], - #category : 'Iceberg-Progress' + #category : 'Iceberg-Progress', + #package : 'Iceberg', + #tag : 'Progress' } -{ #category : #events } +{ #category : 'events' } IceExternalJob >> changed [ current >= max ifTrue: [ ^ Job jobAnnouncer announce: (JobEnd on: self) ]. Job jobAnnouncer announce: (JobChange on: self) ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> current: anInteger [ current := anInteger ] -{ #category : #events } +{ #category : 'events' } IceExternalJob >> end [ Job jobAnnouncer announce: (JobEnd on: self) ] -{ #category : #events } +{ #category : 'events' } IceExternalJob >> ensureStarted [ started ifFalse: [ self start ] ] -{ #category : #initialization } +{ #category : 'initialization' } IceExternalJob >> initialize [ super initialize. started := false ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> max: anInteger [ max := anInteger ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> min: anInteger [ min := anInteger ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> owner [ ^ nil ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> progress [ ^ min >= max ifTrue: [ 1 ] ifFalse: [ (current - min) / (max - min) ] ] -{ #category : #events } +{ #category : 'events' } IceExternalJob >> start [ started := true. Job jobAnnouncer announce: (JobStart on: self) ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> title [ ^ title ] -{ #category : #accessing } +{ #category : 'accessing' } IceExternalJob >> title: aString [ title := aString ] diff --git a/Iceberg/IceFileDefinition.class.st b/Iceberg/IceFileDefinition.class.st index b167677a6e..aedecf786e 100644 --- a/Iceberg/IceFileDefinition.class.st +++ b/Iceberg/IceFileDefinition.class.st @@ -6,15 +6,17 @@ My contents are the contents of the file, utf8 decoded. See my superclasses for more information. " Class { - #name : #IceFileDefinition, - #superclass : #IceFileSystemDefinition, + #name : 'IceFileDefinition', + #superclass : 'IceFileSystemDefinition', #instVars : [ 'contents' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceFileDefinition class >> named: aString path: aPath contents: contents [ ^ (self named: aString path: aPath) @@ -22,7 +24,7 @@ IceFileDefinition class >> named: aString path: aPath contents: contents [ yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceFileDefinition class >> named: aString path: aPath fileReference: aFileReference [ ^ self named: aString @@ -30,31 +32,31 @@ IceFileDefinition class >> named: aString path: aPath fileReference: aFileRefere contents: (aFileReference binaryReadStreamDo: [ :each | each upToEnd ]) ] -{ #category : #comparing } +{ #category : 'comparing' } IceFileDefinition >> = anotherDefinition [ ^ super = anotherDefinition and: [ contents = anotherDefinition basicContents ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceFileDefinition >> accept: aVisitor [ ^ aVisitor visitFileNode: self ] -{ #category : #comparing } +{ #category : 'comparing' } IceFileDefinition >> basicContents [ ^ contents ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileDefinition >> basicContents: anObject [ contents := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileDefinition >> contents [ "Contents for display purposes. If the file is binary (or could not detect as utf8 file) then just return an hexa dump representation of the contents @@ -65,32 +67,32 @@ IceFileDefinition >> contents [ ifFalse: [ contents utf8Decoded ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileDefinition >> contents: anObject [ contents := anObject ] -{ #category : #comparing } +{ #category : 'comparing' } IceFileDefinition >> hash [ ^ self contents hash ] -{ #category : #testing } +{ #category : 'testing' } IceFileDefinition >> isBinary [ [contents utf8Decoded] on: ZnInvalidUTF8 do: [ ^ true ]. ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceFileDefinition >> isFileDefinition [ ^ true ] -{ #category : #operations } +{ #category : 'operations' } IceFileDefinition >> removeFrom: aVisitor [ aVisitor removeFile: self ] diff --git a/Iceberg/IceFileSystemDefinition.class.st b/Iceberg/IceFileSystemDefinition.class.st index 3554a75dcb..1548d92d2a 100644 --- a/Iceberg/IceFileSystemDefinition.class.st +++ b/Iceberg/IceFileSystemDefinition.class.st @@ -6,16 +6,18 @@ My concrete subclasses represent directories and files. See my superclasses for more information. " Class { - #name : #IceFileSystemDefinition, - #superclass : #IceDefinition, + #name : 'IceFileSystemDefinition', + #superclass : 'IceDefinition', #instVars : [ 'path', 'fileReference' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceFileSystemDefinition class >> named: aString path: aPath [ ^ (self named: aString) @@ -23,30 +25,30 @@ IceFileSystemDefinition class >> named: aString path: aPath [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileSystemDefinition >> fileReference [ ^ fileReference ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileSystemDefinition >> fileReference: aFileReference [ fileReference := aFileReference ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileSystemDefinition >> path [ ^ path ] -{ #category : #accessing } +{ #category : 'accessing' } IceFileSystemDefinition >> path: anObject [ path := anObject ] -{ #category : #visiting } +{ #category : 'visiting' } IceFileSystemDefinition >> removeFrom: aVisitor [ aVisitor removeFileReferenceInPath: self path diff --git a/Iceberg/IceGenericError.class.st b/Iceberg/IceGenericError.class.st index 7e4acc576a..ef82561f94 100644 --- a/Iceberg/IceGenericError.class.st +++ b/Iceberg/IceGenericError.class.st @@ -1,13 +1,15 @@ Class { - #name : #IceGenericError, - #superclass : #IceError, + #name : 'IceGenericError', + #superclass : 'IceError', #instVars : [ 'wrappedException' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceGenericError >> wrappedException: anError [ wrappedException := anError diff --git a/Iceberg/IceGitCheckoutProgress.class.st b/Iceberg/IceGitCheckoutProgress.class.st index 9a9df35446..138d86bc66 100644 --- a/Iceberg/IceGitCheckoutProgress.class.st +++ b/Iceberg/IceGitCheckoutProgress.class.st @@ -1,13 +1,15 @@ Class { - #name : #IceGitCheckoutProgress, - #superclass : #LGitCheckoutProgressCallback, + #name : 'IceGitCheckoutProgress', + #superclass : 'LGitCheckoutProgressCallback', #instVars : [ 'job' ], - #category : 'Iceberg-Progress' + #category : 'Iceberg-Progress', + #package : 'Iceberg', + #tag : 'Progress' } -{ #category : #accessing } +{ #category : 'accessing' } IceGitCheckoutProgress >> block [ ^ [ :path :completed :total :payload | job ensureStarted. @@ -21,7 +23,7 @@ IceGitCheckoutProgress >> block [ ] ] -{ #category : #initialization } +{ #category : 'initialization' } IceGitCheckoutProgress >> initialize [ super initialize. @@ -32,7 +34,7 @@ IceGitCheckoutProgress >> initialize [ self initializeBlock. ] -{ #category : #initialization } +{ #category : 'initialization' } IceGitCheckoutProgress >> initializeBlock [ self signature: self class fnSpec block: self block. ] diff --git a/Iceberg/IceGitTransferProgress.class.st b/Iceberg/IceGitTransferProgress.class.st index f313570252..5fd401574e 100644 --- a/Iceberg/IceGitTransferProgress.class.st +++ b/Iceberg/IceGitTransferProgress.class.st @@ -1,13 +1,15 @@ Class { - #name : #IceGitTransferProgress, - #superclass : #LGitTransferProgressCallback, + #name : 'IceGitTransferProgress', + #superclass : 'LGitTransferProgressCallback', #instVars : [ 'job' ], - #category : #'Iceberg-Progress' + #category : 'Iceberg-Progress', + #package : 'Iceberg', + #tag : 'Progress' } -{ #category : #accessing } +{ #category : 'accessing' } IceGitTransferProgress >> block [ ^ [ :stats :payload | | gitStats | @@ -25,7 +27,7 @@ IceGitTransferProgress >> block [ ] ] -{ #category : #initialization } +{ #category : 'initialization' } IceGitTransferProgress >> initialize [ super initialize. @@ -36,7 +38,7 @@ IceGitTransferProgress >> initialize [ self initializeBlock. ] -{ #category : #'initialize-release' } +{ #category : 'initialize-release' } IceGitTransferProgress >> initializeBlock [ self signature: self class fnSpec block: self block. ] diff --git a/Iceberg/IceGitUsernameOrEmailNotFound.class.st b/Iceberg/IceGitUsernameOrEmailNotFound.class.st index 17b15b18ff..e213350aa6 100644 --- a/Iceberg/IceGitUsernameOrEmailNotFound.class.st +++ b/Iceberg/IceGitUsernameOrEmailNotFound.class.st @@ -2,12 +2,14 @@ I'm an error to be sent when the error that comes from external library can be guessed to be the absense of user.name and user.email properties. " Class { - #name : #IceGitUsernameOrEmailNotFound, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceGitUsernameOrEmailNotFound', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceGitUsernameOrEmailNotFound class >> guessKind: anError ifNot: notBlock [ (anError messageText asLowercase = 'Config value ''user.name'' was not found' asLowercase or: [ anError messageText asLowercase = 'Config value ''user.email'' was not found' asLowercase @@ -16,12 +18,12 @@ IceGitUsernameOrEmailNotFound class >> guessKind: anError ifNot: notBlock [ notBlock value ] -{ #category : #visiting } +{ #category : 'visiting' } IceGitUsernameOrEmailNotFound >> acceptError: anObject [ anObject visitMissingCredentialsError: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceGitUsernameOrEmailNotFound >> isResumable [ ^ true diff --git a/Iceberg/IceHistory.class.st b/Iceberg/IceHistory.class.st index 5162af65c8..ca2df5f313 100644 --- a/Iceberg/IceHistory.class.st +++ b/Iceberg/IceHistory.class.st @@ -7,8 +7,8 @@ Future optimizations: - implement pagination " Class { - #name : #IceHistory, - #superclass : #Object, + #name : 'IceHistory', + #superclass : 'Object', #instVars : [ 'commitish', 'commits', @@ -16,10 +16,12 @@ Class { 'headHistory', 'repository' ], - #category : 'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceHistory class >> on: commitish repository: anIceRepository [ ^ self new @@ -28,45 +30,45 @@ IceHistory class >> on: commitish repository: anIceRepository [ yourself ] -{ #category : #history } +{ #category : 'history' } IceHistory >> commitDictionary [ commitDictionary ifNil: [ self lookupCommits ]. ^ commitDictionary ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistory >> commitish: aCommitish [ commitish := aCommitish ] -{ #category : #history } +{ #category : 'history' } IceHistory >> commits [ commits ifNil: [ self lookupCommits ]. ^ commits ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistory >> headHistory [ ^ headHistory ifNil: [ headHistory := IceHistory on: repository headCommit repository: repository ] ] -{ #category : #testing } +{ #category : 'testing' } IceHistory >> includes: anIceGitCommit [ ^ self commitDictionary includesKey: anIceGitCommit id ] -{ #category : #testing } +{ #category : 'testing' } IceHistory >> isHead [ ^ commitish = repository head ] -{ #category : #history } +{ #category : 'history' } IceHistory >> lookupCommits [ | newCommitDictionary newCommits | @@ -80,13 +82,13 @@ IceHistory >> lookupCommits [ commits := newCommits. ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistory >> name [ ^ commitish name ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistory >> repository: aRepository [ repository := aRepository ] diff --git a/Iceberg/IceHistoryCommit.class.st b/Iceberg/IceHistoryCommit.class.st index 2f381a0937..87abf9eaaa 100644 --- a/Iceberg/IceHistoryCommit.class.st +++ b/Iceberg/IceHistoryCommit.class.st @@ -4,16 +4,18 @@ I am a commit optimizing history access. I know a history and can determine if I All other operations are simply forwarded to my wrapped ice commit. " Class { - #name : #IceHistoryCommit, - #superclass : #Object, + #name : 'IceHistoryCommit', + #superclass : 'Object', #instVars : [ 'iceCommit', 'history' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceHistoryCommit class >> commit: anIceCommit history: aHistory [ ^ self new @@ -22,87 +24,87 @@ IceHistoryCommit class >> commit: anIceCommit history: aHistory [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> ancestors [ ^ iceCommit ancestorIds ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> author [ ^ iceCommit author ] -{ #category : #testing } +{ #category : 'testing' } IceHistoryCommit >> canRevertChanges [ ^ iceCommit canRevertChanges ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> comment [ ^ iceCommit comment ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> datetime [ ^ iceCommit datetime ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceHistoryCommit >> diffFromHead [ ^ iceCommit diffFromHead ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceHistoryCommit >> diffToParent [ ^ iceCommit diffToParent ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> history [ ^ history ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> history: anObject [ history := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> iceCommit [ ^ iceCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> iceCommit: anIceGitCommit [ iceCommit := anIceGitCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> id [ ^ iceCommit id ] -{ #category : #testing } +{ #category : 'testing' } IceHistoryCommit >> isMerged [ ^ history headHistory includes: iceCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> repository [ ^ iceCommit repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceHistoryCommit >> shortId [ ^ iceCommit shortId diff --git a/Iceberg/IceHttpsProtocol.class.st b/Iceberg/IceHttpsProtocol.class.st index 54c17da23d..a098425032 100644 --- a/Iceberg/IceHttpsProtocol.class.st +++ b/Iceberg/IceHttpsProtocol.class.st @@ -1,16 +1,18 @@ Class { - #name : #IceHttpsProtocol, - #superclass : #IceUrlProtocol, - #category : 'Iceberg-Url' + #name : 'IceHttpsProtocol', + #superclass : 'IceUrlProtocol', + #category : 'Iceberg-Url', + #package : 'Iceberg', + #tag : 'Url' } -{ #category : #accessing } +{ #category : 'accessing' } IceHttpsProtocol class >> description [ ^ 'HTTPS' ] -{ #category : #composing } +{ #category : 'composing' } IceHttpsProtocol >> composeUrlWithHost: host repositoryPath: path [ ^ 'https://{1}/{2}.git' format: { host . path } diff --git a/Iceberg/IceImageChange.class.st b/Iceberg/IceImageChange.class.st index 78f741c831..d6d52611c7 100644 --- a/Iceberg/IceImageChange.class.st +++ b/Iceberg/IceImageChange.class.st @@ -2,15 +2,17 @@ I represent a change coming from the image (in contrast to a change coming from git). I know the changed file and I can be visited to define the create a more detailed diff. " Class { - #name : #IceImageChange, - #superclass : #IceChange, + #name : 'IceImageChange', + #superclass : 'IceChange', #instVars : [ 'package' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceImageChange class >> package: anIcePackage [ ^ self new @@ -18,23 +20,23 @@ IceImageChange class >> package: anIcePackage [ yourself ] -{ #category : #building } +{ #category : 'building' } IceImageChange >> accept: aVisitor [ ^ aVisitor visitImageChange: self ] -{ #category : #displaying } +{ #category : 'displaying' } IceImageChange >> displayingProgressString [ ^ 'Comparing image changes of ' , self package name ] -{ #category : #accessing } +{ #category : 'accessing' } IceImageChange >> package [ ^ package ] -{ #category : #accessing } +{ #category : 'accessing' } IceImageChange >> package: anIcePackage [ package := anIcePackage ] diff --git a/Iceberg/IceInMergeWorkingCopy.class.st b/Iceberg/IceInMergeWorkingCopy.class.st index 72ce08b86d..3461a9c795 100644 --- a/Iceberg/IceInMergeWorkingCopy.class.st +++ b/Iceberg/IceInMergeWorkingCopy.class.st @@ -2,36 +2,38 @@ I am a working copy whose packages are all in merge status in the same commits. " Class { - #name : #IceInMergeWorkingCopy, - #superclass : #IceWorkingCopyState, - #category : #'Iceberg-WorkingCopy' + #name : 'IceInMergeWorkingCopy', + #superclass : 'IceWorkingCopyState', + #category : 'Iceberg-WorkingCopy', + #package : 'Iceberg', + #tag : 'WorkingCopy' } -{ #category : #display } +{ #category : 'display' } IceInMergeWorkingCopy >> description [ ^ ', ' join: (self referenceCommits collect: #description) ] -{ #category : #testing } +{ #category : 'testing' } IceInMergeWorkingCopy >> isDetached [ ^ self referenceCommits first ~= self repository headCommit ] -{ #category : #testing } +{ #category : 'testing' } IceInMergeWorkingCopy >> isInMerge [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceInMergeWorkingCopy >> referenceCommits [ ^ self workingCopy referenceCommit ] -{ #category : #validating } +{ #category : 'validating' } IceInMergeWorkingCopy >> validateCanCommit [ self workingCopy referenceCommit first = repository head commit diff --git a/Iceberg/IceIndex.class.st b/Iceberg/IceIndex.class.st index cfe7f63649..f489f18c0d 100644 --- a/Iceberg/IceIndex.class.st +++ b/Iceberg/IceIndex.class.st @@ -6,15 +6,17 @@ My main responsibility is to store temporary changes and commit them. However, I'm an abstract class, check my subclasses for more concrete information. " Class { - #name : #IceIndex, - #superclass : #Object, + #name : 'IceIndex', + #superclass : 'Object', #instVars : [ 'repository' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceIndex class >> on: anIceLibgitRepository [ ^ self new @@ -22,48 +24,48 @@ IceIndex class >> on: anIceLibgitRepository [ yourself ] -{ #category : #adding } +{ #category : 'adding' } IceIndex >> addPackage: aPackage [ self subclassResponsibility ] -{ #category : #'API - commiting' } +{ #category : 'API - commiting' } IceIndex >> commitWithMessage: message andParents: parentCommits [ self subclassResponsibility. ] -{ #category : #testing } +{ #category : 'testing' } IceIndex >> isEmpty [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceIndex >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceIndex >> repository: anIceLibgitRepository [ repository := anIceLibgitRepository ] -{ #category : #storing } +{ #category : 'storing' } IceIndex >> storeVersion: aMCVersion [ self subclassResponsibility ] -{ #category : #updating } +{ #category : 'updating' } IceIndex >> updateDiskWorkingCopy: anIceDiff [ self subclassResponsibility ] -{ #category : #updating } +{ #category : 'updating' } IceIndex >> updateIndex: anIceDiff [ anIceDiff tree diff --git a/Iceberg/IceInvalidProject.class.st b/Iceberg/IceInvalidProject.class.st index 66ef372079..7773fb1d22 100644 --- a/Iceberg/IceInvalidProject.class.st +++ b/Iceberg/IceInvalidProject.class.st @@ -3,18 +3,20 @@ I represent a project that cannot be read from the history. I fetch most of my properties from the current project that may be a project or an unborn project. " Class { - #name : #IceInvalidProject, - #superclass : #IceAbstractProject, - #category : 'Iceberg-Project' + #name : 'IceInvalidProject', + #superclass : 'IceAbstractProject', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #testing } +{ #category : 'testing' } IceInvalidProject >> isInvalid [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceInvalidProject >> sourceDirectory [ "I'm an invalid project. diff --git a/Iceberg/IceInvalidProjectReader.class.st b/Iceberg/IceInvalidProjectReader.class.st index 50424ae816..9ea78887f4 100644 --- a/Iceberg/IceInvalidProjectReader.class.st +++ b/Iceberg/IceInvalidProjectReader.class.st @@ -4,26 +4,28 @@ I return an invalid project for those commits that are not the current checked o This is because an invalid project cannot be fixed since it is already in the history. " Class { - #name : #IceInvalidProjectReader, - #superclass : #IceProjectReader, - #category : 'Iceberg-Project' + #name : 'IceInvalidProjectReader', + #superclass : 'IceProjectReader', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #testing } +{ #category : 'testing' } IceInvalidProjectReader >> canReadProjectFromCommitish: aCommitish [ ^ aCommitish isWorkingCopy not and: [ (aCommitish fileSystem / '.project') exists not ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceInvalidProjectReader >> priority [ "The unborn project reader should be the default one in case no other matches" ^ 100000 ] -{ #category : #reading } +{ #category : 'reading' } IceInvalidProjectReader >> readProjectFromCommitish: aCommitish [ ^ IceInvalidProject onCommitish: aCommitish diff --git a/Iceberg/IceLocalBranch.class.st b/Iceberg/IceLocalBranch.class.st index 04c7974e2c..9bd639b5b2 100644 --- a/Iceberg/IceLocalBranch.class.st +++ b/Iceberg/IceLocalBranch.class.st @@ -21,25 +21,27 @@ A local branch can also pull from its tracked branch or pull from a given remote branch pullFrom: aRemote. " Class { - #name : #IceLocalBranch, - #superclass : #IceBranch, - #category : #'Iceberg-Core' + #name : 'IceLocalBranch', + #superclass : 'IceBranch', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceLocalBranch >> commit: anIceCommit [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceLocalBranch >> hasIncomingCommits [ self hasUpstream ifFalse: [ ^ false ]. ^ self hasIncomingCommitsFrom: self upstream remote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> hasIncomingCommitsFrom: aRemote [ | localCommits remoteCommits | @@ -52,14 +54,14 @@ IceLocalBranch >> hasIncomingCommitsFrom: aRemote [ (localCommits includes: each) not ] ] -{ #category : #testing } +{ #category : 'testing' } IceLocalBranch >> hasOutgoingCommits [ self hasUpstream ifFalse: [ ^ false ]. ^ self hasOutgoingCommitsTo: self upstream remote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> hasOutgoingCommitsTo: aRemote [ | localCommits remoteCommits | @@ -72,20 +74,20 @@ IceLocalBranch >> hasOutgoingCommitsTo: aRemote [ (remoteCommits includes: each) not ] ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> hasUpstream [ ^ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> incomingCommits [ self hasUpstream ifFalse: [ ^ #() ]. ^ self incomingCommitsFrom: self upstream remote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> incomingCommitsFrom: aRemote [ | remoteBranch | @@ -96,7 +98,7 @@ IceLocalBranch >> incomingCommitsFrom: aRemote [ commits ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> incomingCommitsFromBranch: aBranch [ ^ aBranch newCommitWalk @@ -104,32 +106,32 @@ IceLocalBranch >> incomingCommitsFromBranch: aBranch [ commits ] -{ #category : #testing } +{ #category : 'testing' } IceLocalBranch >> isRemote [ ^ false ] -{ #category : #'API - merging' } +{ #category : 'API - merging' } IceLocalBranch >> mergeWith: aCommit [ self subclassResponsibility ] -{ #category : #'API - merging' } +{ #category : 'API - merging' } IceLocalBranch >> mergeWithBranch: aBranch [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> outgoingCommits [ self hasUpstream ifFalse: [ ^ #() ]. ^ self outgoingCommitsTo: self upstream remote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> outgoingCommitsTo: aRemote [ | remoteBranch walk | @@ -143,13 +145,13 @@ IceLocalBranch >> outgoingCommitsTo: aRemote [ ^ walk commits ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> pull [ self pullFrom: self upstream remote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> pullFrom: aRemote [ | remoteBranch | @@ -160,26 +162,26 @@ IceLocalBranch >> pullFrom: aRemote [ self repository workingCopy mergeCommit: remoteBranch commit. ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> push [ self pushTo: self upstream remote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> pushTo: aRemote [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> reducedOutgoingCommitsWhenNoRemote [ ^ self newCommitWalk maxNumber: 20; commits ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceLocalBranch >> resetToCommit: anIceGitCommit [ "Equivalent to a `git reset --hard` but not touching the image" "1) Change the current commit of this branch @@ -190,31 +192,31 @@ IceLocalBranch >> resetToCommit: anIceGitCommit [ self commit: anIceGitCommit ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> setUpstream: anUpstreamBranch [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> setUpstreamRemote: aRemote [ self setUpstream: (aRemote remoteBranchNamed: self name) ] -{ #category : #accessing } +{ #category : 'accessing' } IceLocalBranch >> trackedBranch [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> tracksRemoteBranch [ ^ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceLocalBranch >> upstream [ ^ self subclassResponsibility diff --git a/Iceberg/IceLocalRepositoryMissing.class.st b/Iceberg/IceLocalRepositoryMissing.class.st index 7eb1826883..8fec7b5a9a 100644 --- a/Iceberg/IceLocalRepositoryMissing.class.st +++ b/Iceberg/IceLocalRepositoryMissing.class.st @@ -4,27 +4,29 @@ The repository code directory does not exist, maybe because the image was moved. Default action is to clone the repository again, but signal an error and allow for other components to react accordingly. " Class { - #name : #IceLocalRepositoryMissing, - #superclass : #IceError, + #name : 'IceLocalRepositoryMissing', + #superclass : 'IceError', #instVars : [ 'repository' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #exceptioninstantiator } +{ #category : 'exceptioninstantiator' } IceLocalRepositoryMissing class >> signalFor: repository [ ^ self new repository: repository; signal ] -{ #category : #accessing } +{ #category : 'accessing' } IceLocalRepositoryMissing >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceLocalRepositoryMissing >> repository: anObject [ repository := anObject ] diff --git a/Iceberg/IceLog.class.st b/Iceberg/IceLog.class.st index 0f4216255d..55868af25d 100644 --- a/Iceberg/IceLog.class.st +++ b/Iceberg/IceLog.class.st @@ -7,37 +7,39 @@ I'm used through a repository: aRepository ice historyOfMethod: aMethod " Class { - #name : #IceLog, - #superclass : #Object, + #name : 'IceLog', + #superclass : 'Object', #instVars : [ 'repository' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceLog class >> for: aRepository [ ^ self basicNew initializeRepository: aRepository; yourself ] -{ #category : #testing } +{ #category : 'testing' } IceLog class >> isAvailableFor: aRepository [ ^ false ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceLog class >> new [ self error: '#for:' ] -{ #category : #private } +{ #category : 'private' } IceLog >> basepathOf: aPath [ self subclassResponsibility ] -{ #category : #private } +{ #category : 'private' } IceLog >> collectCommitsFor: aMethod path: aPath [ | commit pathSpec options commits pathSpecArray | @@ -66,7 +68,7 @@ IceLog >> collectCommitsFor: aMethod path: aPath [ ^ commits ] -{ #category : #private } +{ #category : 'private' } IceLog >> collectVersionsFrom: aCollection method: aMethod path: aPath [ | lastDefinition basepath history | @@ -84,12 +86,12 @@ IceLog >> collectVersionsFrom: aCollection method: aMethod path: aPath [ ^ history reversed ] -{ #category : #private } +{ #category : 'private' } IceLog >> definitionFor: aMethod path: aPath commit: aCommit [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceLog >> historyOfMethod: aMethod [ | path commits | @@ -102,23 +104,23 @@ IceLog >> historyOfMethod: aMethod [ path: path ] -{ #category : #private } +{ #category : 'private' } IceLog >> iceCommitFrom: aLGitCommit [ ^ self repository iceCommitFrom: aLGitCommit ] -{ #category : #initialization } +{ #category : 'initialization' } IceLog >> initializeRepository: aRepository [ repository := aRepository. self initialize ] -{ #category : #accessing } +{ #category : 'accessing' } IceLog >> repository [ ^ repository ] -{ #category : #private } +{ #category : 'private' } IceLog >> toFileName: aMethod [ ^ self subclassResponsibility ] diff --git a/Iceberg/IceLogVersion.class.st b/Iceberg/IceLogVersion.class.st index 3b60202df5..d044e350ba 100644 --- a/Iceberg/IceLogVersion.class.st +++ b/Iceberg/IceLogVersion.class.st @@ -3,16 +3,18 @@ I'm a log version. I keep a commit and a method definition from each method version tracked on IceLog>>#historyOfMethod:. " Class { - #name : #IceLogVersion, - #superclass : #Object, + #name : 'IceLogVersion', + #superclass : 'Object', #instVars : [ 'commit', 'definition' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceLogVersion class >> commit: aCommit definition: aRingDefinition [ ^ self new commit: aCommit; @@ -20,68 +22,68 @@ IceLogVersion class >> commit: aCommit definition: aRingDefinition [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> ancestors [ ^ self commit ancestors ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> author [ ^ self commit author ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> comment [ ^ self commit comment ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> commit [ ^ commit ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> commit: aCommit [ commit := aCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> datetime [ ^ self commit datetime ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> definition [ ^ definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> definition: aRingDefinition [ definition := aRingDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> description [ ^ '{1} at {2}' format: { self author. self datetime asLocalStringYMDHM } ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> id [ ^ self commit id ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> originMethod [ ^ (Smalltalk at: self definition methodClass name) >> self definition selector ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> shortId [ ^ self commit shortId ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> source [ ^ String streamContents: [ :stream | stream @@ -89,17 +91,17 @@ IceLogVersion >> source [ << self definition sourceCode ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> tagNames [ ^ self commit tagNames ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> tags [ ^ self commit tags ] -{ #category : #accessing } +{ #category : 'accessing' } IceLogVersion >> timeStamp [ ^ self commit timeStamp ] diff --git a/Iceberg/IceMCDefinitionImporter.class.st b/Iceberg/IceMCDefinitionImporter.class.st index 1aea3ee983..5f89299011 100644 --- a/Iceberg/IceMCDefinitionImporter.class.st +++ b/Iceberg/IceMCDefinitionImporter.class.st @@ -2,16 +2,18 @@ I am an importer that visits MCDefinitions and creates IceDefinitions from them. I install those definitions into a corresponding package node. " Class { - #name : #IceMCDefinitionImporter, - #superclass : #Object, + #name : 'IceMCDefinitionImporter', + #superclass : 'Object', #instVars : [ 'packageNode', 'snapshot' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> ensureMethodOwnerNamed: ownerName isMeta: isMeta isTrait: isTrait isExtension: isExtension [ | newDefinition | newDefinition := isExtension @@ -25,14 +27,14 @@ IceMCDefinitionImporter >> ensureMethodOwnerNamed: ownerName isMeta: isMeta isTr ifAbsentPut: [ newDefinition ] ] -{ #category : #testing } +{ #category : 'testing' } IceMCDefinitionImporter >> isExtension: aName [ snapshot classDefinitionNamed: aName ifAbsent: [ ^ true ]. ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceMCDefinitionImporter >> isTrait: aName [ | definition | @@ -40,17 +42,17 @@ IceMCDefinitionImporter >> isTrait: aName [ ^ definition isTraitDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCDefinitionImporter >> packageNode: anIcePackageNode [ packageNode := anIcePackageNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCDefinitionImporter >> snapshot: aMCSnapshot [ snapshot := aMCSnapshot ] -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> visitClassDefinition: aMCClassDefinition [ | classDefinitionNode classDefinition | @@ -75,7 +77,7 @@ IceMCDefinitionImporter >> visitClassDefinition: aMCClassDefinition [ ^ classDefinitionNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> visitClassTraitDefinition: aMCClassTraitDefinition [ | classTraitDefinitionNode | @@ -88,7 +90,7 @@ IceMCDefinitionImporter >> visitClassTraitDefinition: aMCClassTraitDefinition [ ^ classTraitDefinitionNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> visitMetaclassDefinition: aMCClassDefinition [ "We do nothing because of Monticello meta-model. @@ -99,7 +101,7 @@ IceMCDefinitionImporter >> visitMetaclassDefinition: aMCClassDefinition [ ] -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> visitMethodDefinition: aMCMethodDefinition [ | ownerName isMeta isTrait ownerNode | @@ -122,7 +124,7 @@ IceMCDefinitionImporter >> visitMethodDefinition: aMCMethodDefinition [ sourceCode: aMCMethodDefinition source) ] -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> visitOrganizationDefinition: aMCOrganizationDefinition [ packageNode value @@ -130,7 +132,7 @@ IceMCDefinitionImporter >> visitOrganizationDefinition: aMCOrganizationDefinitio tagNames: aMCOrganizationDefinition tagNames ] -{ #category : #visiting } +{ #category : 'visiting' } IceMCDefinitionImporter >> visitTraitDefinition: aMCTraitDefinition [ | traitDefinitionNode classTraitDefinition | diff --git a/Iceberg/IceMCPackageImporter.class.st b/Iceberg/IceMCPackageImporter.class.st index 6440392218..25f35ca23d 100644 --- a/Iceberg/IceMCPackageImporter.class.st +++ b/Iceberg/IceMCPackageImporter.class.st @@ -2,16 +2,18 @@ I am an importer of MCPackages into an IceNode. I am created from a version and a node. I calculate the snapshot of that definition and import all those definitions into my node, delegating to a IceMCDefinitionImporter. " Class { - #name : #IceMCPackageImporter, - #superclass : #Object, + #name : 'IceMCPackageImporter', + #superclass : 'Object', #instVars : [ 'version', 'package' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #importing } +{ #category : 'importing' } IceMCPackageImporter >> importOn: aNode [ | packageNode snapshot definition | @@ -31,30 +33,30 @@ IceMCPackageImporter >> importOn: aNode [ ^ packageNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCPackageImporter >> package [ ^ package ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCPackageImporter >> package: aPackage [ package := aPackage ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCPackageImporter >> packageName [ ^ self package name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCPackageImporter >> snapshot [ ^ version snapshotForPackage: self package ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCPackageImporter >> version: aVersion [ version := aVersion diff --git a/Iceberg/IceMCVersionInfo.class.st b/Iceberg/IceMCVersionInfo.class.st index a4871b3de4..75a7f9951b 100644 --- a/Iceberg/IceMCVersionInfo.class.st +++ b/Iceberg/IceMCVersionInfo.class.st @@ -2,28 +2,30 @@ Adapter to produce an MCVersionInfo that knows how to (lazily) load ancestors from an Iceberg repository. " Class { - #name : #IceMCVersionInfo, - #superclass : #MCLazyVersionInfo, + #name : 'IceMCVersionInfo', + #superclass : 'MCLazyVersionInfo', #instVars : [ 'commit', 'package' ], - #category : #'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMCVersionInfo class >> package: package message: commitMessage [ ^ self new fromPackage: package message: commitMessage ] -{ #category : #utilities } +{ #category : 'utilities' } IceMCVersionInfo class >> uuidFromCommit: aCommit package: aPackage [ ^ self uuidFromSHA: (SHA1 new hashStream: (ReadStream on: aCommit id, aPackage name)) ] -{ #category : #utilities } +{ #category : 'utilities' } IceMCVersionInfo class >> uuidFromSHA: cid [ "Return an adequate uuid from a git commit ID. Copied from GitFileTree." @@ -35,19 +37,19 @@ IceMCVersionInfo class >> uuidFromSHA: cid [ uuid ] ] -{ #category : #comparing } +{ #category : 'comparing' } IceMCVersionInfo >> = anotherIceMCVersionInfo [ ^ super = anotherIceMCVersionInfo and: [ package name = anotherIceMCVersionInfo package name ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCVersionInfo >> commit [ ^ commit ] -{ #category : #initialization } +{ #category : 'initialization' } IceMCVersionInfo >> fromCommit: aCommit package: aPackage [ "This method can be used for first initializing a version info or to update a partially initialized version info." "See #fromPackage:message:" @@ -70,7 +72,7 @@ IceMCVersionInfo >> fromCommit: aCommit package: aPackage [ ] -{ #category : #initialization } +{ #category : 'initialization' } IceMCVersionInfo >> fromPackage: aPackage message: commitMessage [ "This creates a partial version info. Full version info can not be created until we commit into a repository, but current fileout tools require it, so we first create an incomplete info and after committing it will be completed @@ -85,30 +87,30 @@ IceMCVersionInfo >> fromPackage: aPackage message: commitMessage [ ] -{ #category : #comparing } +{ #category : 'comparing' } IceMCVersionInfo >> hash [ ^ super hash << 10 + package hash ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCVersionInfo >> iceVersion [ ^ commit versionFor: package ] -{ #category : #initialization } +{ #category : 'initialization' } IceMCVersionInfo >> initialize [ super initialize. date := Date today. time := Time now ] -{ #category : #private } +{ #category : 'private' } IceMCVersionInfo >> loadAncestorsAndStepChildren [ self shouldBeImplemented ] -{ #category : #accessing } +{ #category : 'accessing' } IceMCVersionInfo >> package [ ^ package ] diff --git a/Iceberg/IceMerge.class.st b/Iceberg/IceMerge.class.st index a83e414b65..987851121d 100644 --- a/Iceberg/IceMerge.class.st +++ b/Iceberg/IceMerge.class.st @@ -12,8 +12,8 @@ I am created by doing one of the following: yourself " Class { - #name : #IceMerge, - #superclass : #Object, + #name : 'IceMerge', + #superclass : 'Object', #instVars : [ 'mergeTree', 'repository', @@ -21,10 +21,12 @@ Class { 'imageCommit', 'changesToWorkingCopyTree' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #executing } +{ #category : 'executing' } IceMerge >> calculateChanges [ | commonAncestor sourceDiff targetDiff | @@ -44,21 +46,21 @@ IceMerge >> calculateChanges [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> changesToWorkingCopyTree [ self calculateChanges. ^ changesToWorkingCopyTree ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceMerge >> conflictsDo: aBlockClosure [ mergeTree do: [ :each | each isConflict ifTrue: [ aBlockClosure value: each value ] ] ] -{ #category : #executing } +{ #category : 'executing' } IceMerge >> execute [ "at begining of this, there is a possibility that imageCommit needs to be 'fixed' to use." | commitToAdvance | @@ -76,25 +78,25 @@ IceMerge >> execute [ ^ commitToAdvance ] -{ #category : #testing } +{ #category : 'testing' } IceMerge >> hasConflicts [ self calculateChanges. ^ mergeTree anySatisfy: [ :e | e isConflict ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> headCommit [ ^ repository headCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> imageCommit [ ^ imageCommit ifNil: [ imageCommit := repository workingCopy referenceCommit ] ] -{ #category : #testing } +{ #category : 'testing' } IceMerge >> isAlreadyMerged [ "The commit is already merged in the image and in the head commit. This means the selected commit is already in the history and there is nothing to do about it." @@ -102,18 +104,18 @@ IceMerge >> isAlreadyMerged [ ^ mergeCommit isAncestorOf: self leftCommit ] -{ #category : #testing } +{ #category : 'testing' } IceMerge >> isEmpty [ ^ mergeTree isEmpty ] -{ #category : #testing } +{ #category : 'testing' } IceMerge >> isFastForward [ ^ self headCommit isAncestorOf: mergeCommit ] -{ #category : #testing } +{ #category : 'testing' } IceMerge >> isInverseMerge [ "When the image commit corresponds to the mergeCommit. It means we are in an inverse merge. We want to merge the changes from the image into head commit. @@ -122,14 +124,14 @@ IceMerge >> isInverseMerge [ ^ self imageCommit = mergeCommit ] -{ #category : #testing } +{ #category : 'testing' } IceMerge >> isMerged [ ^ mergeTree allSatisfy: [ :operation | operation isConflict not or: [ operation isResolved ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> leftCommit [ ^ self isInverseMerge @@ -138,29 +140,29 @@ IceMerge >> leftCommit [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> mergeCommit: aCommit [ mergeCommit := aCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> mergeTree [ self calculateChanges. ^ mergeTree ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> repository: anIceRepository [ repository := anIceRepository ] -{ #category : #executing } +{ #category : 'executing' } IceMerge >> resolveConflicts [ self hasConflicts ifTrue: [ | resolved | @@ -174,12 +176,12 @@ IceMerge >> resolveConflicts [ ifFalse: [ IceMergeAborted signal ] ] ] -{ #category : #descriptions } +{ #category : 'descriptions' } IceMerge >> sourceDescription [ ^ 'Working Copy version: ' , self repository workingCopy description ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> sourceVersion [ "This is the commit that will provide the changes. In a merge, the commit providing the changes is the merge commit." @@ -187,40 +189,40 @@ IceMerge >> sourceVersion [ ^ mergeCommit ] -{ #category : #descriptions } +{ #category : 'descriptions' } IceMerge >> targetDescription [ ^ 'Merging commit: ' , self sourceVersion description ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> targetVersion [ "This is the commit that will receive the changes. In a merge, the commit receiving the changes is the head of the repository." ^ self leftCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> tree [ "Returns the tree to merge. Polymorphic with an ice Diff" ^ self mergeTree ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> treeToShow [ "Returns the tree to show in the UI. Polymorphic with an ice Diff" ^ self changesToWorkingCopyTree ] -{ #category : #accessing } +{ #category : 'accessing' } IceMerge >> unresolvedConflictCount [ ^ mergeTree count: [ :operation | operation isConflict and: [ operation isResolved not ] ] ] -{ #category : #executing } +{ #category : 'executing' } IceMerge >> updateHead [ " 2 - Update HEAD. If the merged commits are from diverging branches, generate a merge commit. @@ -243,7 +245,7 @@ IceMerge >> updateHead [ repository branch commit: commitToAdvance ] -{ #category : #executing } +{ #category : 'executing' } IceMerge >> updateWorkingCopy [ " 3 - Load changes in the image. diff --git a/Iceberg/IceMergeAborted.class.st b/Iceberg/IceMergeAborted.class.st index 5f49906027..352ddfa8ea 100644 --- a/Iceberg/IceMergeAborted.class.st +++ b/Iceberg/IceMergeAborted.class.st @@ -2,12 +2,14 @@ Attempting to merge arised a conflict so merge was aborted. " Class { - #name : #IceMergeAborted, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceMergeAborted', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceMergeAborted >> acceptError: aVisitor [ aVisitor visitMergeAborted: self ] diff --git a/Iceberg/IceMergeResolutionRequest.class.st b/Iceberg/IceMergeResolutionRequest.class.st index d6450b1954..6ec4dbca7d 100644 --- a/Iceberg/IceMergeResolutionRequest.class.st +++ b/Iceberg/IceMergeResolutionRequest.class.st @@ -1,13 +1,15 @@ Class { - #name : #IceMergeResolutionRequest, - #superclass : #Notification, + #name : 'IceMergeResolutionRequest', + #superclass : 'Notification', #instVars : [ 'merge' ], - #category : #'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #'exception description' } +{ #category : 'exception description' } IceMergeResolutionRequest >> defaultAction [ | window mergeMorph | @@ -25,12 +27,12 @@ IceMergeResolutionRequest >> defaultAction [ ^ mergeMorph merged ] -{ #category : #accessing } +{ #category : 'accessing' } IceMergeResolutionRequest >> merge [ ^ merge ] -{ #category : #accessing } +{ #category : 'accessing' } IceMergeResolutionRequest >> merger: anIceMerge [ merge := anIceMerge diff --git a/Iceberg/IceMergeToChangeTreeVisitor.class.st b/Iceberg/IceMergeToChangeTreeVisitor.class.st index 97e7a089e0..ab156fc571 100644 --- a/Iceberg/IceMergeToChangeTreeVisitor.class.st +++ b/Iceberg/IceMergeToChangeTreeVisitor.class.st @@ -2,44 +2,46 @@ I visit a tree of IceNode with IceOperationMerge with all operations already chosen and return the coresponding tree of changes (IceNodes with IceOperation) " Class { - #name : #IceMergeToChangeTreeVisitor, - #superclass : #IceTreeVisitor, - #category : #'Iceberg-Changes' + #name : 'IceMergeToChangeTreeVisitor', + #superclass : 'IceTreeVisitor', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #utilities } +{ #category : 'utilities' } IceMergeToChangeTreeVisitor >> convertMergeNodeToChangeNode [ currentNode value: currentNode value chosenOperation . ] -{ #category : #visiting } +{ #category : 'visiting' } IceMergeToChangeTreeVisitor >> visitAddition: anIceAddition [ self convertMergeNodeToChangeNode. ] -{ #category : #visiting } +{ #category : 'visiting' } IceMergeToChangeTreeVisitor >> visitClassDefinition: anIceClassDefinition [ self convertMergeNodeToChangeNode. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceMergeToChangeTreeVisitor >> visitNoModification: anIceNoModification [ anIceNoModification definition accept: self. ] -{ #category : #visiting } +{ #category : 'visiting' } IceMergeToChangeTreeVisitor >> visitNonConflictingOperation: anIceNonConflictingOperation [ anIceNonConflictingOperation chosenOperation accept: self. ] -{ #category : #visiting } +{ #category : 'visiting' } IceMergeToChangeTreeVisitor >> visitPackage: anIcePackageDefinition [ self convertMergeNodeToChangeNode. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceMergeToChangeTreeVisitor >> visitRootDefinition: anIceRootDefinition [ self visitChildrenOf: currentNode ] diff --git a/Iceberg/IceMetacelloDuplicatedNotification.class.st b/Iceberg/IceMetacelloDuplicatedNotification.class.st index 4203a2a067..bbb112f356 100644 --- a/Iceberg/IceMetacelloDuplicatedNotification.class.st +++ b/Iceberg/IceMetacelloDuplicatedNotification.class.st @@ -1,30 +1,32 @@ Class { - #name : #IceMetacelloDuplicatedNotification, - #superclass : #MetacelloAllowProjectUpgrade, + #name : 'IceMetacelloDuplicatedNotification', + #superclass : 'MetacelloAllowProjectUpgrade', #instVars : [ 'builder' ], - #category : 'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloDuplicatedNotification >> builder [ ^ builder ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloDuplicatedNotification >> builder: anObject [ builder := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloDuplicatedNotification >> defaultAction [ "Default for Upgrade is to allow" ^ self useIncoming ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloDuplicatedNotification >> existingProjectRegistration [ | repository | @@ -35,7 +37,7 @@ IceMetacelloDuplicatedNotification >> existingProjectRegistration [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloDuplicatedNotification >> newProjectRegistration [ ^ IceMetacelloProjectRegistration new @@ -43,18 +45,18 @@ IceMetacelloDuplicatedNotification >> newProjectRegistration [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloDuplicatedNotification >> projectName [ ^ builder locationToUse basename ] -{ #category : #'exception handling' } +{ #category : 'exception handling' } IceMetacelloDuplicatedNotification >> useIncoming [ ^ self resume: self builder addLocalRepositoryAndCheckout ] -{ #category : #'exception handling' } +{ #category : 'exception handling' } IceMetacelloDuplicatedNotification >> useLoaded [ ^ self resume: self builder addLocalRepository ] diff --git a/Iceberg/IceMetacelloProjectRegistration.class.st b/Iceberg/IceMetacelloProjectRegistration.class.st index b863897397..f19ce40e38 100644 --- a/Iceberg/IceMetacelloProjectRegistration.class.st +++ b/Iceberg/IceMetacelloProjectRegistration.class.st @@ -4,27 +4,29 @@ I represent a project registration in iceberg. I adapt the behavior of metacello For the moment I'm only used for compatibility reasons. " Class { - #name : #IceMetacelloProjectRegistration, - #superclass : #Object, + #name : 'IceMetacelloProjectRegistration', + #superclass : 'Object', #instVars : [ 'version' ], - #category : 'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #printing } +{ #category : 'printing' } IceMetacelloProjectRegistration >> locked [ "Only for compatibility for now" ^ false ] -{ #category : #printing } +{ #category : 'printing' } IceMetacelloProjectRegistration >> printOn: aStream [ aStream nextPutAll: version asString ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloProjectRegistration >> version: aString [ version := aString ] diff --git a/Iceberg/IceMetacelloRepositoryAdapter.class.st b/Iceberg/IceMetacelloRepositoryAdapter.class.st index 0d48f7aa09..43f6b91a27 100644 --- a/Iceberg/IceMetacelloRepositoryAdapter.class.st +++ b/Iceberg/IceMetacelloRepositoryAdapter.class.st @@ -2,16 +2,18 @@ Adapter for allowing metacello to use Iceberg to download packages and versions. " Class { - #name : #IceMetacelloRepositoryAdapter, - #superclass : #Object, + #name : 'IceMetacelloRepositoryAdapter', + #superclass : 'Object', #instVars : [ 'repository', 'projectVersion' ], - #category : #'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMetacelloRepositoryAdapter class >> for: anIceRepository withVersion: aString [ | projectVersion | @@ -26,18 +28,18 @@ IceMetacelloRepositoryAdapter class >> for: anIceRepository withVersion: aString yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceMetacelloRepositoryAdapter >> = other [ ^ other species = self species and: [ other description = self description ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> addTo: aMCRepositoryGroup [ "Do nothing, we do not need to register the repository into the monticello registry" ] -{ #category : #testing } +{ #category : 'testing' } IceMetacelloRepositoryAdapter >> canUpgradeTo: anMCGitBasedRepository [ (anMCGitBasedRepository isKindOf: self class) ifFalse: [ ^ false ]. @@ -45,35 +47,35 @@ IceMetacelloRepositoryAdapter >> canUpgradeTo: anMCGitBasedRepository [ and: [ self repoPath = anMCGitBasedRepository repoPath and: [ self projectVersion = anMCGitBasedRepository projectVersion ]] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> commitIdFor: aWorkingCopy ifFound: aBlock [ self flag: #pharoTodo. "Do nothing?" ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> description [ ^ self repository origin url, '[', projectVersion, ']' ] -{ #category : #initialization } +{ #category : 'initialization' } IceMetacelloRepositoryAdapter >> flushForScriptGet [ "do nothing" ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> getOrCreateIcebergRepository [ ^ self repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> goferPriority [ ^ 8 ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> goferReferences [ self repository head description = projectVersion ifFalse: [ (self repository commitishNamed: projectVersion) checkoutWithStrategy: IceCheckoutDoNotLoadPackages new ]. @@ -85,7 +87,7 @@ IceMetacelloRepositoryAdapter >> goferReferences [ repository: self ] ] -{ #category : #testing } +{ #category : 'testing' } IceMetacelloRepositoryAdapter >> hasNoLoadConflicts: anMCGitBasedRepository [ "Copied from MCGitBasedNetworkRepository" (anMCGitBasedRepository isKindOf: self class) ifFalse: [ ^ false ]. @@ -95,30 +97,30 @@ IceMetacelloRepositoryAdapter >> hasNoLoadConflicts: anMCGitBasedRepository [ self projectVersion = anMCGitBasedRepository projectVersion ] ] ] -{ #category : #comparing } +{ #category : 'comparing' } IceMetacelloRepositoryAdapter >> hash [ "Not a good hash, but is copied from MCRepository" ^ self description hash ] -{ #category : #compatibility } +{ #category : 'compatibility' } IceMetacelloRepositoryAdapter >> isCache [ "User for Kommiter and Versionner" ^ false ] -{ #category : #compatibility } +{ #category : 'compatibility' } IceMetacelloRepositoryAdapter >> isRemote [ "User for Komitter" ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceMetacelloRepositoryAdapter >> isValid [ ^ true ] -{ #category : #MonticelloGUI } +{ #category : 'MonticelloGUI' } IceMetacelloRepositoryAdapter >> morphicOpen: workingCopy [ | shouldOpenIceberg | @@ -136,55 +138,55 @@ Do you want to open the Iceberg Browser instead?' format: { IceTipRepositoriesBrowser new open ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> projectPath [ ^ self repository origin projectPath ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> projectVersion [ ^ projectVersion ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> projectVersion: anObject [ projectVersion := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> repoPath [ ^ self repository subdirectory ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> repository: anObject [ repository := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetacelloRepositoryAdapter >> repositoryDescription [ ^ self repository description ] -{ #category : #querying } +{ #category : 'querying' } IceMetacelloRepositoryAdapter >> repositoryVersionString [ ^ self repository workingCopy referenceCommit id ] -{ #category : #compatibility } +{ #category : 'compatibility' } IceMetacelloRepositoryAdapter >> unregister [ ^ MCRepositoryGroup default removeRepository: self ] -{ #category : #versions } +{ #category : 'versions' } IceMetacelloRepositoryAdapter >> versionFrom: aVersionName [ | packageName package version | packageName := (MCFileTreeRepository parseName: aVersionName) first. diff --git a/Iceberg/IceMetaclassDependency.class.st b/Iceberg/IceMetaclassDependency.class.st index 41bf0504dc..c3dc65e808 100644 --- a/Iceberg/IceMetaclassDependency.class.st +++ b/Iceberg/IceMetaclassDependency.class.st @@ -2,15 +2,17 @@ I am a dependency to a metaclass. " Class { - #name : #IceMetaclassDependency, - #superclass : #IceDependency, + #name : 'IceMetaclassDependency', + #superclass : 'IceDependency', #instVars : [ 'definition' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #dependencies } +{ #category : 'dependencies' } IceMetaclassDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherrypicker [ IceNodeQuery new on: anIceDiff tree; @@ -20,17 +22,17 @@ IceMetaclassDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCher [ :anIceNode | anIceCherrypicker addClassDependencyOf: anIceNode value definition ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetaclassDependency >> definition [ ^ definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceMetaclassDependency >> definition: anIceClassDefinition [ definition:= anIceClassDefinition ] -{ #category : #visiting } +{ #category : 'visiting' } IceMetaclassDependency >> isDependencyTo: anIceClassDefinition [ ^ anIceClassDefinition basicName = definition basicName ] diff --git a/Iceberg/IceMethodContainerDefinition.class.st b/Iceberg/IceMethodContainerDefinition.class.st index 149ebd03be..d27b5e4d89 100644 --- a/Iceberg/IceMethodContainerDefinition.class.st +++ b/Iceberg/IceMethodContainerDefinition.class.st @@ -8,16 +8,18 @@ I also contain the monticello definition that corresponds to me. See my super/subclasses for more information. " Class { - #name : #IceMethodContainerDefinition, - #superclass : #IceCodeDefinition, + #name : 'IceMethodContainerDefinition', + #superclass : 'IceCodeDefinition', #instVars : [ 'isMeta', 'mcDefinition' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMethodContainerDefinition class >> named: aString isMeta: isMeta [ ^ self new @@ -26,19 +28,19 @@ IceMethodContainerDefinition class >> named: aString isMeta: isMeta [ yourself ] -{ #category : #patching } +{ #category : 'patching' } IceMethodContainerDefinition >> asMCDefinition [ ^ mcDefinition ] -{ #category : #converting } +{ #category : 'converting' } IceMethodContainerDefinition >> asMCDefinitionWithoutMetaSide [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodContainerDefinition >> contents [ mcDefinition ifNil: [ ^ '' ]. ^ self isMeta @@ -46,34 +48,34 @@ IceMethodContainerDefinition >> contents [ ifTrue: [ mcDefinition classDefinitionString ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodContainerDefinition >> isMeta [ ^ isMeta ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodContainerDefinition >> isMeta: anObject [ isMeta := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodContainerDefinition >> key [ ^ super key , (self isMeta ifTrue: [ ' class' ] ifFalse: [ '' ]) ] -{ #category : #patching } +{ #category : 'patching' } IceMethodContainerDefinition >> mcDefinition: aMCDefinition [ mcDefinition := aMCDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodContainerDefinition >> name [ ^ name , (isMeta ifTrue: [ ' class' ] ifFalse: [ '' ]) ] -{ #category : #patching } +{ #category : 'patching' } IceMethodContainerDefinition >> removeFrom: aPatcher [ aPatcher removeClass: self diff --git a/Iceberg/IceMethodDefinition.class.st b/Iceberg/IceMethodDefinition.class.st index 66bb7f32c8..8f85c4f61b 100644 --- a/Iceberg/IceMethodDefinition.class.st +++ b/Iceberg/IceMethodDefinition.class.st @@ -6,18 +6,20 @@ My contents is the code of the method. See my superclasses for more information. " Class { - #name : #IceMethodDefinition, - #superclass : #IceCodeDefinition, + #name : 'IceMethodDefinition', + #superclass : 'IceCodeDefinition', #instVars : [ 'className', 'classIsMeta', 'protocol', 'sourceCode' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceMethodDefinition class >> className: aClassName classIsMeta: classIsMeta protocol: protocol name: aString sourceCode: source [ ^ (self named: aString) @@ -28,7 +30,7 @@ IceMethodDefinition class >> className: aClassName classIsMeta: classIsMeta prot yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceMethodDefinition >> = anotherDefinition [ "A method can be equal and belong to another class (and be in the other side). And yes, even if this usually should not happen, it happens (and not always is incorrect)" @@ -37,25 +39,25 @@ IceMethodDefinition >> = anotherDefinition [ and: [ self classIsMeta = anotherDefinition classIsMeta ] ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceMethodDefinition >> accept: aVisitor [ ^ aVisitor visitMethodNode: self ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceMethodDefinition >> actualClass [ ^ self contextClass ] -{ #category : #patching } +{ #category : 'patching' } IceMethodDefinition >> addToPatcher: aMCPatcher [ aMCPatcher addDefinition: self asMCDefinition ] -{ #category : #patching } +{ #category : 'patching' } IceMethodDefinition >> asMCDefinition [ ^ MCMethodDefinition @@ -67,35 +69,35 @@ IceMethodDefinition >> asMCDefinition [ source: sourceCode ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> classIsMeta [ ^ classIsMeta ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> classIsMeta: anObject [ classIsMeta := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> className [ ^ className ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> className: anObject [ className := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> contents [ ^ '"', self protocol, '" ', sourceCode ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceMethodDefinition >> contextClass [ | class | @@ -104,64 +106,64 @@ IceMethodDefinition >> contextClass [ ^ class ] -{ #category : #actions } +{ #category : 'actions' } IceMethodDefinition >> install [ self asMCDefinition load ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceMethodDefinition >> isLoadable [ ^ self contextClass notNil ] -{ #category : #testing } +{ #category : 'testing' } IceMethodDefinition >> isMethodDefinition [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> ownerName [ ^ className ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> protocol [ ^ protocol ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> protocol: anObject [ protocol := anObject ] -{ #category : #patching } +{ #category : 'patching' } IceMethodDefinition >> removeFrom: aPatcher [ aPatcher removeMethod: self ] -{ #category : #patching } +{ #category : 'patching' } IceMethodDefinition >> removeFromPatcher: aMCPatcher [ aMCPatcher removeDefinition: self asMCDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> selector [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> sourceCode [ ^ sourceCode ] -{ #category : #accessing } +{ #category : 'accessing' } IceMethodDefinition >> sourceCode: aString [ sourceCode := aString diff --git a/Iceberg/IceMethodDependency.class.st b/Iceberg/IceMethodDependency.class.st index a54952db78..e9020cea1d 100644 --- a/Iceberg/IceMethodDependency.class.st +++ b/Iceberg/IceMethodDependency.class.st @@ -2,18 +2,20 @@ I am a dependency to a method. " Class { - #name : #IceMethodDependency, - #superclass : #IceDefinedDependency, - #category : #'Iceberg-Cherrypicking' + #name : 'IceMethodDependency', + #superclass : 'IceDefinedDependency', + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #comparing } +{ #category : 'comparing' } IceMethodDependency >> = anObject [ ^ super = anObject and: [ definition asMCDefinition selector = anObject definition asMCDefinition selector ] ] -{ #category : #testing } +{ #category : 'testing' } IceMethodDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherrypicker [ super addTransitiveDependenciesFrom: anIceDiff to: anIceCherrypicker. @@ -26,12 +28,12 @@ IceMethodDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherryp ifFound: [ :anIceNode | anIceCherrypicker addDependency: (anIceNode accept: IceAsDependencyVisitor new )] ] ] -{ #category : #comparing } +{ #category : 'comparing' } IceMethodDependency >> hash [ ^ super hash bitXor: definition asMCDefinition className hash ] -{ #category : #testing } +{ #category : 'testing' } IceMethodDependency >> isDependencyTo: anIceMethodDefinition [ ^ anIceMethodDefinition isMethodDefinition and: [ @@ -39,34 +41,34 @@ IceMethodDependency >> isDependencyTo: anIceMethodDefinition [ anIceMethodDefinition asMCDefinition selector = definition selector ] ] ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceMethodDependency >> methodAST [ ^ RBParser parseMethod: definition asMCDefinition source ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceMethodDependency >> referencedClasses [ ^ self referencedNames , {definition className} ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceMethodDependency >> referencedNames [ ^ (self methodAST allChildren select: #isVariable) collect: #name ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceMethodDependency >> referencedPackages [ ^ { } ] -{ #category : #'computing - dependencies' } +{ #category : 'computing - dependencies' } IceMethodDependency >> referencedSelectors [ ^ (self methodAST allChildren select: #isMessage) collect: #selector ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceMethodDependency >> referencedTraits [ "The method cannot diferenciate if the reference is a trait or a class, so I try both" diff --git a/Iceberg/IceMissingRepositoryEntry.class.st b/Iceberg/IceMissingRepositoryEntry.class.st index 964eb73155..2abe2951e7 100644 --- a/Iceberg/IceMissingRepositoryEntry.class.st +++ b/Iceberg/IceMissingRepositoryEntry.class.st @@ -2,36 +2,38 @@ Directory does not exist in the specified version in the repository. " Class { - #name : #IceMissingRepositoryEntry, - #superclass : #IceError, + #name : 'IceMissingRepositoryEntry', + #superclass : 'IceError', #instVars : [ 'name', 'owner' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceMissingRepositoryEntry >> messageText [ ^ self name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMissingRepositoryEntry >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceMissingRepositoryEntry >> name: anObject [ name := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceMissingRepositoryEntry >> owner [ ^ owner ] -{ #category : #accessing } +{ #category : 'accessing' } IceMissingRepositoryEntry >> owner: anObject [ owner := anObject ] diff --git a/Iceberg/IceModification.class.st b/Iceberg/IceModification.class.st index 03a243218d..1d38844098 100644 --- a/Iceberg/IceModification.class.st +++ b/Iceberg/IceModification.class.st @@ -2,15 +2,17 @@ I am a modification in a tree. I contain the definition I'm changing (right) and the new (left) version of the definition. I know what is the icon for modification and how to calculate a conflict with other operations. " Class { - #name : #IceModification, - #superclass : #IceOperation, + #name : 'IceModification', + #superclass : 'IceOperation', #instVars : [ 'oldNode' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceModification class >> left: leftDefinition right: rightDefinition [ ^ self new @@ -19,38 +21,38 @@ IceModification class >> left: leftDefinition right: rightDefinition [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceModification >> = anotherOperation [ ^ super = anotherOperation and: [ self rightDefinition = anotherOperation rightDefinition ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceModification >> accept: aVisitor [ ^ aVisitor visitModification: self ] -{ #category : #operations } +{ #category : 'operations' } IceModification >> inverse [ ^ IceModification left: self rightDefinition right: self leftDefinition ] -{ #category : #testing } +{ #category : 'testing' } IceModification >> isModification [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> leftContents [ ^ definition contents ] -{ #category : #merging } +{ #category : 'merging' } IceModification >> mergeWithLeftAddition: anIceAddition [ "This should not happen. If I represent a modification of a node, that means that the original definition existed on the base version. @@ -58,7 +60,7 @@ IceModification >> mergeWithLeftAddition: anIceAddition [ self shouldNotImplement ] -{ #category : #merging } +{ #category : 'merging' } IceModification >> mergeWithLeftModification: anIceModification [ "If the modification is the same, I can just keep any of them." @@ -68,55 +70,55 @@ IceModification >> mergeWithLeftModification: anIceModification [ ^ IceConflictingOperation left: anIceModification right: self ] -{ #category : #merging } +{ #category : 'merging' } IceModification >> mergeWithLeftNoOperation: anIceNoModification [ ^ IceNonConflictingOperation operation: self ] -{ #category : #merging } +{ #category : 'merging' } IceModification >> mergeWithLeftRemoval: anIceRemoval [ ^ IceConflictingOperation left: anIceRemoval right: self ] -{ #category : #merging } +{ #category : 'merging' } IceModification >> mergeWithOperation: anOperation [ ^ anOperation mergeWithLeftModification: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> oldDefinition [ ^ oldNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> oldNode [ ^ oldNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> oldNode: aNode [ oldNode := aNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> rightContents [ ^ oldNode contents ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> rightDefinition [ ^ oldNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceModification >> rightDefinition: aDefinition [ oldNode := aDefinition diff --git a/Iceberg/IceNoCommit.class.st b/Iceberg/IceNoCommit.class.st index 6ce23bb0b0..0ac718aaca 100644 --- a/Iceberg/IceNoCommit.class.st +++ b/Iceberg/IceNoCommit.class.st @@ -2,12 +2,14 @@ I am a null object representing the absence of a commit. I'm used generally in the case of unborn branches, or when a package was loaded but no iceberg information is available. " Class { - #name : #IceNoCommit, - #superclass : #IceCommitish, - #category : #'Iceberg-Core' + #name : 'IceNoCommit', + #superclass : 'IceCommitish', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceNoCommit class >> repository: aRepository [ ^ self new @@ -15,104 +17,104 @@ IceNoCommit class >> repository: aRepository [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceNoCommit >> = aNoCommit [ ^ aNoCommit isNoCommit ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceNoCommit >> changedPackagesToCommitInfo: anIceGitCommit [ ^ anIceGitCommit packages ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceNoCommit >> changesFromCommit: anIceNoCommit [ ^ anIceNoCommit changesFromNoCommit: self ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceNoCommit >> changesFromNoCommit: anIceNoCommit [ ^ #() ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceNoCommit >> changesTo: aCommitish [ ^ aCommitish changesFromNoCommit: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceNoCommit >> commit [ ^ self ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceNoCommit >> commonAncestorWith: aCommitish [ ^ aCommitish ] -{ #category : #printing } +{ #category : 'printing' } IceNoCommit >> description [ ^ 'No code loaded' ] -{ #category : #'accessing - file' } +{ #category : 'accessing - file' } IceNoCommit >> fileSystem [ "This should belong to a Git specific No-Commit only..." ^ FileSystem memory root ] -{ #category : #comparing } +{ #category : 'comparing' } IceNoCommit >> hash [ ^ self class hash ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceNoCommit >> includesPackageNamed: aName [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceNoCommit >> isAncestorOf: aCommit [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceNoCommit >> isLoaded [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceNoCommit >> isNoCommit [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceNoCommit >> isParentOf: aCommit [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceNoCommit >> isUnknownCommit [ ^ false ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceNoCommit >> mcCommit [ "This method is just for compatibility. @@ -121,25 +123,25 @@ IceNoCommit >> mcCommit [ ^ MCVersion new ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceNoCommit >> packageNames [ ^ #() ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceNoCommit >> project [ ^ repository newUnbornProject ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceNoCommit >> snapshotFor: anIceSavedPackage [ ^ MCSnapshot empty ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceNoCommit >> writerClass [ ^ self properties writerClass diff --git a/Iceberg/IceNoModification.class.st b/Iceberg/IceNoModification.class.st index 7934ddddbd..d8801feaff 100644 --- a/Iceberg/IceNoModification.class.st +++ b/Iceberg/IceNoModification.class.st @@ -2,42 +2,44 @@ I am a no modification in a tree. I am useful to represent a container (that did not change) containing elements that did change. I contain the definition I represent to be able to show it. I delegate the icon to my definition and I know how to calculate a conflict with other operations. " Class { - #name : #IceNoModification, - #superclass : #IceOperation, - #category : #'Iceberg-Changes' + #name : 'IceNoModification', + #superclass : 'IceOperation', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceNoModification >> accept: aVisitor [ ^ aVisitor visitNoModification: self ] -{ #category : #testing } +{ #category : 'testing' } IceNoModification >> hasChanges [ ^ false ] -{ #category : #operations } +{ #category : 'operations' } IceNoModification >> inverse [ ^ self ] -{ #category : #testing } +{ #category : 'testing' } IceNoModification >> isNoModification [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceNoModification >> leftContents [ ^ definition contents ] -{ #category : #merging } +{ #category : 'merging' } IceNoModification >> mergeWithLeftAddition: anIceAddition [ "This should not happen. If I represent a no modification of a node, that means that the original definition existed on the base version. @@ -45,20 +47,20 @@ IceNoModification >> mergeWithLeftAddition: anIceAddition [ self shouldNotImplement ] -{ #category : #merging } +{ #category : 'merging' } IceNoModification >> mergeWithLeftModification: anIceModification [ ^ IceNonConflictingOperation operation: anIceModification ] -{ #category : #merging } +{ #category : 'merging' } IceNoModification >> mergeWithLeftNoOperation: anIceNoModification [ "There was no modifications on both sides, I can just return the left side" ^ IceNonConflictingOperation operation: anIceNoModification ] -{ #category : #merging } +{ #category : 'merging' } IceNoModification >> mergeWithLeftRemoval: anIceRemoval [ "We assume that if I'm in the operation tree this means my children have modifications. @@ -68,7 +70,7 @@ IceNoModification >> mergeWithLeftRemoval: anIceRemoval [ ^ IceConflictingOperation left: anIceRemoval right: self ] -{ #category : #merging } +{ #category : 'merging' } IceNoModification >> mergeWithOperation: anOperation [ ^ anOperation mergeWithLeftNoOperation: self diff --git a/Iceberg/IceNoRemote.class.st b/Iceberg/IceNoRemote.class.st index 05749afa27..604e0237a8 100644 --- a/Iceberg/IceNoRemote.class.st +++ b/Iceberg/IceNoRemote.class.st @@ -1,5 +1,7 @@ Class { - #name : #IceNoRemote, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceNoRemote', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/IceNoRemoteBranch.class.st b/Iceberg/IceNoRemoteBranch.class.st index b0eea1c322..21f4cb5c17 100644 --- a/Iceberg/IceNoRemoteBranch.class.st +++ b/Iceberg/IceNoRemoteBranch.class.st @@ -2,7 +2,9 @@ The operation you tried (for example push) requires that your branch has a configured upstream (something like origin/branchName), but is has none. " Class { - #name : #IceNoRemoteBranch, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceNoRemoteBranch', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/IceNode.class.st b/Iceberg/IceNode.class.st index b4e623811b..493f5b415b 100644 --- a/Iceberg/IceNode.class.st +++ b/Iceberg/IceNode.class.st @@ -29,17 +29,19 @@ Visiting API: - visit: " Class { - #name : #IceNode, - #superclass : #IceAbstractNode, + #name : 'IceNode', + #superclass : 'IceAbstractNode', #instVars : [ 'parent', 'childrenDictionary', 'value' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceNode class >> value: aValue [ ^ self new @@ -47,7 +49,7 @@ IceNode class >> value: aValue [ yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceNode class >> value: aValue parent: aParentNode [ ^ (self value: aValue) @@ -55,51 +57,51 @@ IceNode class >> value: aValue parent: aParentNode [ yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> / aString [ ^ childrenDictionary at: aString ] -{ #category : #comparing } +{ #category : 'comparing' } IceNode >> = anotherNode [ ^ (self basicEqualsTo: anotherNode) and: [ self children asSet = anotherNode children asSet ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceNode >> accept: aVisitor [ ^ aVisitor visitTreeNode: self ] -{ #category : #adding } +{ #category : 'adding' } IceNode >> addChild: aChild [ ^ self addNode: (self class value: aChild). ] -{ #category : #adding } +{ #category : 'adding' } IceNode >> addNode: aNode [ self at: aNode key put: aNode. ^ aNode ] -{ #category : #adding } +{ #category : 'adding' } IceNode >> addTo: anotherNode [ anotherNode addNode: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> allPathSegments [ ^ self withAllParentNodes collect: [ :each | each key ] ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> allSatisfy: aBlockClosure [ (aBlockClosure value: self value) @@ -112,7 +114,7 @@ IceNode >> allSatisfy: aBlockClosure [ ^ true ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> anySatisfy: aBlockClosure [ (aBlockClosure value: self value) @@ -125,20 +127,20 @@ IceNode >> anySatisfy: aBlockClosure [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> at: aString put: aNode [ aNode parent: self. childrenDictionary at: aString put: aNode ] -{ #category : #comparing } +{ #category : 'comparing' } IceNode >> basicEqualsTo: aNode [ ^ self value = aNode value ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> childAt: aString ifAbsentPut: aBlock [ ^ childrenDictionary @@ -146,19 +148,19 @@ IceNode >> childAt: aString ifAbsentPut: aBlock [ ifAbsent: [ self addChild: aBlock value ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> childAt: aString ifPresent: aBlockClosure [ ^ childrenDictionary at: aString ifPresent: aBlockClosure ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> children [ ^ childrenDictionary values sorted: [ :a :b | a key < b key ] ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> collect: aBlock [ | newNode | newNode := self class value: (aBlock value: self value). @@ -167,7 +169,7 @@ IceNode >> collect: aBlock [ ^ newNode ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> collectWithPath: aBlock [ | newNode | newNode := self class value: (aBlock value: self value value: self path). @@ -176,7 +178,7 @@ IceNode >> collectWithPath: aBlock [ ^ newNode ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> count: aBlockClosure [ | count | @@ -188,31 +190,31 @@ IceNode >> count: aBlockClosure [ ^ count ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> definition [ ^ value definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> description [ ^ value description ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> detect: aBlock [ ^ (self firstNodeSuchThat: aBlock) value ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> do: aBlockClosure [ aBlockClosure value: self value. self childrenDo: [ :node | node do: aBlockClosure ] ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> firstNodeSuchThat: conditionBlock ifNone: noneBlock [ (conditionBlock value: self) @@ -231,68 +233,68 @@ IceNode >> firstNodeSuchThat: conditionBlock ifNone: noneBlock [ ifNone: noneBlock ] ] -{ #category : #testing } +{ #category : 'testing' } IceNode >> hasChanges [ ^ value hasChanges or: [ self children anySatisfy: [ :child | child hasChanges ] ] ] -{ #category : #testing } +{ #category : 'testing' } IceNode >> hasParent [ ^ self parent notNil ] -{ #category : #comparing } +{ #category : 'comparing' } IceNode >> hash [ ^ self key hash ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> includesKey: anObject [ ^ childrenDictionary includesKey: anObject ] -{ #category : #initialization } +{ #category : 'initialization' } IceNode >> initialize [ super initialize. childrenDictionary := Dictionary new ] -{ #category : #testing } +{ #category : 'testing' } IceNode >> isEmpty [ ^ childrenDictionary isEmpty ] -{ #category : #testing } +{ #category : 'testing' } IceNode >> isEmptyNode [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> key [ ^ value key ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> keys [ ^ childrenDictionary keys ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> keysDo: aBlockClosure [ childrenDictionary keysDo: aBlockClosure ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> mergeWith: anotherTree onLeft: leftBlock onRight: rightBlock onMerge: mergeBlock [ | mergedTree newNode | @@ -319,7 +321,7 @@ IceNode >> mergeWith: anotherTree onLeft: leftBlock onRight: rightBlock onMerge: ^ newNode ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> mergeWith: anotherTree onMerge: mergeBlock [ ^ self @@ -329,7 +331,7 @@ IceNode >> mergeWith: anotherTree onMerge: mergeBlock [ onMerge: mergeBlock ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> nextChildNodeStartingFrom: anIceNode suchThat: conditionBlock ifNone: noneBlock [ | aCollection | @@ -351,7 +353,7 @@ IceNode >> nextChildNodeStartingFrom: anIceNode suchThat: conditionBlock ifNone: ifNone: noneBlock ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> nextNodeSuchThat: conditionBlock ifFound: foundBlock [ self children do: [ :each | @@ -362,7 +364,7 @@ IceNode >> nextNodeSuchThat: conditionBlock ifFound: foundBlock [ ifFound: [ :found | ^ foundBlock value: found ] ]. ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> nextNodeSuchThat: conditionBlock ifNone: noneBlock [ self children do: [ :each | @@ -378,24 +380,24 @@ IceNode >> nextNodeSuchThat: conditionBlock ifNone: noneBlock [ ifNone: noneBlock ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> parent [ ^ parent ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> parent: anObject [ parent := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> path [ ^ RelativePath withAll: self allPathSegments ] -{ #category : #printing } +{ #category : 'printing' } IceNode >> printOn: aStream [ aStream nextPutAll: 'IceNode('; @@ -403,38 +405,38 @@ IceNode >> printOn: aStream [ nextPutAll: ')' ] -{ #category : #removing } +{ #category : 'removing' } IceNode >> removeChild: anIceNode [ childrenDictionary removeKey: anIceNode key ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> replace: oldNode with: newNode [ self assert: oldNode name = newNode name. childrenDictionary at: oldNode name put: newNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> replaceBy: aNode [ parent replace: self with: aNode ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> resolve: aRelativePath [ ^ self resolve: aRelativePath ifAbsent: [ NotFound signalFor: aRelativePath ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> resolve: aRelativePath ifAbsent: aBlock [ ^ self resolve: aRelativePath ifPresent: [ :each | each ] ifAbsent: aBlock ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> resolve: aRelativePath ifPresent: presentBlock ifAbsent: absentBlock [ | segments node | segments := aRelativePath segments. @@ -449,13 +451,13 @@ IceNode >> resolve: aRelativePath ifPresent: presentBlock ifAbsent: absentBlock ifAbsent: absentBlock ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> rootNode [ ^ self parent rootNode ] -{ #category : #enumerating } +{ #category : 'enumerating' } IceNode >> select: aBlock [ | selectedChildren newNode | @@ -472,19 +474,19 @@ IceNode >> select: aBlock [ ^ newNode ] -{ #category : #evaluating } +{ #category : 'evaluating' } IceNode >> value [ ^ value ] -{ #category : #evaluating } +{ #category : 'evaluating' } IceNode >> value: aValue [ value := aValue ] -{ #category : #accessing } +{ #category : 'accessing' } IceNode >> withAllParentNodes [ self hasParent ifFalse: [ ^ #() ]. diff --git a/Iceberg/IceNodeQuery.class.st b/Iceberg/IceNodeQuery.class.st index ccc8644770..c0d5a0ca8d 100644 --- a/Iceberg/IceNodeQuery.class.st +++ b/Iceberg/IceNodeQuery.class.st @@ -2,117 +2,119 @@ I am a IceNode (and IceDefinition) visitor that can detect a code entity in the tree. " Class { - #name : #IceNodeQuery, - #superclass : #IceTreeVisitor, + #name : 'IceNodeQuery', + #superclass : 'IceTreeVisitor', #instVars : [ 'root', 'results', 'selector', 'entityName' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #building } +{ #category : 'building' } IceNodeQuery >> className: aString [ entityName := aString ] -{ #category : #executing } +{ #category : 'executing' } IceNodeQuery >> execute [ root accept: self ] -{ #category : #querying } +{ #category : 'querying' } IceNodeQuery >> ifFound: aBlockClosure [ results do: aBlockClosure ] -{ #category : #initialization } +{ #category : 'initialization' } IceNodeQuery >> initialize [ super initialize. results := Set new ] -{ #category : #building } +{ #category : 'building' } IceNodeQuery >> on: anIceNode [ root := anIceNode ] -{ #category : #building } +{ #category : 'building' } IceNodeQuery >> packageName: aString [ entityName := aString ] -{ #category : #building } +{ #category : 'building' } IceNodeQuery >> selector: aSelector [ selector := aSelector ] -{ #category : #building } +{ #category : 'building' } IceNodeQuery >> traitName: aString [ entityName := aString ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitAddition: anIceAddition [ anIceAddition definition accept: self. self visitChildrenOf: currentNode. ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitClassDefinition: anIceClassDefinition [ anIceClassDefinition asMCDefinition className = entityName ifTrue: [ results add: currentNode ]. ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitExtensionDefinition: anIceExtensionDefinition [ anIceExtensionDefinition name = entityName ifTrue: [ results add: currentNode ]. ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitMethodNode: anIceMethodDefinition [ anIceMethodDefinition asMCDefinition selector = selector ifTrue: [ results add: currentNode ]. ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitModification: anIceModification [ anIceModification definition accept: self. self visitChildrenOf: currentNode. ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitNoModification: anIceNoModification [ "Nothing with me. Just visit children" self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitPackage: anIcePackageDefinition [ anIcePackageDefinition name = entityName ifTrue: [ results add: currentNode ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitRemoval: anIceRemoval [ anIceRemoval definition accept: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceNodeQuery >> visitTraitDefinition: anIceTraitDefinition [ anIceTraitDefinition asMCDefinition className = entityName ifTrue: [ results add: currentNode ]. diff --git a/Iceberg/IceNonConflictingOperation.class.st b/Iceberg/IceNonConflictingOperation.class.st index a0ef72a030..75d301db94 100644 --- a/Iceberg/IceNonConflictingOperation.class.st +++ b/Iceberg/IceNonConflictingOperation.class.st @@ -2,15 +2,17 @@ I reprensent a non-conflict between two operations that can be solved automatically. The user can still override the automatic choice using #selectLeft and #selectRight. " Class { - #name : #IceNonConflictingOperation, - #superclass : #IceOperationMerge, + #name : 'IceNonConflictingOperation', + #superclass : 'IceOperationMerge', #instVars : [ 'operation' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceNonConflictingOperation class >> operation: anOperation [ ^ self new @@ -18,19 +20,19 @@ IceNonConflictingOperation class >> operation: anOperation [ yourself ] -{ #category : #visiting } +{ #category : 'visiting' } IceNonConflictingOperation >> accept: aVisitor [ ^ aVisitor visitNonConflictingOperation: self ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceNonConflictingOperation >> actualClass [ ^ operation definition actualClass ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> chosenOperation [ ^ chosen @@ -38,75 +40,75 @@ IceNonConflictingOperation >> chosenOperation [ ifNotNil: [ chosen ] ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceNonConflictingOperation >> contextClass [ ^ operation contextClass ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> definition [ "This is just for compatibility" ^ operation definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> description [ "Any of my instances should have the same description" ^ operation description ] -{ #category : #testing } +{ #category : 'testing' } IceNonConflictingOperation >> isConflict [ ^ false ] -{ #category : #resolution } +{ #category : 'resolution' } IceNonConflictingOperation >> isLeftChosen [ ^ chosen = operation ] -{ #category : #resolution } +{ #category : 'resolution' } IceNonConflictingOperation >> isRightChosen [ ^ chosen = operation inverse ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> key [ "Any of my operations should have the same key" ^ operation key ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> leftContents [ ^ operation leftContents ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> operation: anIceModification [ operation := anIceModification ] -{ #category : #accessing } +{ #category : 'accessing' } IceNonConflictingOperation >> rightContents [ ^ operation rightContents ] -{ #category : #resolution } +{ #category : 'resolution' } IceNonConflictingOperation >> selectLeft [ chosen := operation ] -{ #category : #resolution } +{ #category : 'resolution' } IceNonConflictingOperation >> selectRight [ chosen := operation inverse diff --git a/Iceberg/IceNonInteractiveCredentialsProvider.class.st b/Iceberg/IceNonInteractiveCredentialsProvider.class.st index fccb123420..04e1987f79 100644 --- a/Iceberg/IceNonInteractiveCredentialsProvider.class.st +++ b/Iceberg/IceNonInteractiveCredentialsProvider.class.st @@ -2,24 +2,26 @@ A credentials provider that retrieves defaults or throws exceptions (but do not interacts with the user) " Class { - #name : #IceNonInteractiveCredentialsProvider, - #superclass : #IceCredentialsProvider, - #category : 'Iceberg-Security' + #name : 'IceNonInteractiveCredentialsProvider', + #superclass : 'IceCredentialsProvider', + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #private } +{ #category : 'private' } IceNonInteractiveCredentialsProvider >> obtainCredentials: response [ "Maybe I can read a file here?" LGitNoCredentialsProvided signal ] -{ #category : #private } +{ #category : 'private' } IceNonInteractiveCredentialsProvider >> obtainPlaintextCredentials: response [ "Maybe I can read a file here?" LGitNoCredentialsProvided signal ] -{ #category : #private } +{ #category : 'private' } IceNonInteractiveCredentialsProvider >> obtainSshCredentials: response [ "Maybe I can read a file here?" LGitNoCredentialsProvided signal diff --git a/Iceberg/IceNotInBranch.class.st b/Iceberg/IceNotInBranch.class.st index 4936f58d3d..b68d19dd40 100644 --- a/Iceberg/IceNotInBranch.class.st +++ b/Iceberg/IceNotInBranch.class.st @@ -1,5 +1,7 @@ Class { - #name : #IceNotInBranch, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceNotInBranch', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/IceNothingToCommit.class.st b/Iceberg/IceNothingToCommit.class.st index 3b6ecd78d6..ad6258bb7b 100644 --- a/Iceberg/IceNothingToCommit.class.st +++ b/Iceberg/IceNothingToCommit.class.st @@ -2,12 +2,14 @@ I indicate when there is nothing to commit (and you tried to do it) " Class { - #name : #IceNothingToCommit, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceNothingToCommit', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceNothingToCommit >> acceptError: anObject [ anObject visitNothingToCommitError: self ] diff --git a/Iceberg/IceNullCommitWalk.class.st b/Iceberg/IceNullCommitWalk.class.st index b278efe41c..209a58cfab 100644 --- a/Iceberg/IceNullCommitWalk.class.st +++ b/Iceberg/IceNullCommitWalk.class.st @@ -1,16 +1,18 @@ Class { - #name : #IceNullCommitWalk, - #superclass : #Object, - #category : #'Iceberg-Core' + #name : 'IceNullCommitWalk', + #superclass : 'Object', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceNullCommitWalk >> commits [ "A null commit walk has no commits" ^ #() ] -{ #category : #accessing } +{ #category : 'accessing' } IceNullCommitWalk >> commitsDo: aBlock [ "Do nothing. A null commit does not has any commits to walk." ] diff --git a/Iceberg/IceOperation.class.st b/Iceberg/IceOperation.class.st index 2ea3b093b1..1f646e4a40 100644 --- a/Iceberg/IceOperation.class.st +++ b/Iceberg/IceOperation.class.st @@ -2,15 +2,17 @@ I represent a merge operation. I know how to install myself in the system, how to inverse myself and how to show the definitions I'm being applied to. Check my subclasses for more information. " Class { - #name : #IceOperation, - #superclass : #Object, + #name : 'IceOperation', + #superclass : 'Object', #instVars : [ 'definition' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceOperation class >> definition: aDefinition [ ^ self new @@ -18,161 +20,161 @@ IceOperation class >> definition: aDefinition [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceOperation >> = anotherOperation [ ^ self species = anotherOperation species and: [ self leftDefinition = anotherOperation leftDefinition ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceOperation >> accept: aVisitor [ self subclassResponsibility ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceOperation >> contextClass [ ^ definition contextClass ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> definition [ ^ definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> definition: aDefinition [ definition := aDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> description [ ^ definition name ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> hasChanges [ ^ true ] -{ #category : #comparing } +{ #category : 'comparing' } IceOperation >> hash [ ^ self leftDefinition hash ] -{ #category : #operations } +{ #category : 'operations' } IceOperation >> install [ self leftDefinition install ] -{ #category : #operations } +{ #category : 'operations' } IceOperation >> inverse [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> isAddition [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> isConflict [ ^false. ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> isModification [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> isNoModification [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> isRemoval [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceOperation >> isResolved [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> key [ ^ definition key ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> leftContents [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> leftDefinition [ ^ definition ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> leftDefinition: aNode [ definition := aNode ] -{ #category : #merging } +{ #category : 'merging' } IceOperation >> mergeWithLeftAddition: anIceAddition [ self subclassResponsibility ] -{ #category : #merging } +{ #category : 'merging' } IceOperation >> mergeWithLeftModification: anIceModification [ ^ self subclassResponsibility ] -{ #category : #merging } +{ #category : 'merging' } IceOperation >> mergeWithLeftNoOperation: anIceNoModification [ ^ self subclassResponsibility ] -{ #category : #merging } +{ #category : 'merging' } IceOperation >> mergeWithLeftRemoval: anIceRemoval [ self subclassResponsibility ] -{ #category : #merging } +{ #category : 'merging' } IceOperation >> mergeWithOperation: anOperation [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> name [ ^ definition name ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> printOn: aStream [ super printOn: aStream . @@ -181,7 +183,7 @@ IceOperation >> printOn: aStream [ nextPutAll: ' )'. ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperation >> rightContents [ ^ definition contents diff --git a/Iceberg/IceOperationMerge.class.st b/Iceberg/IceOperationMerge.class.st index d3bed6a254..f8ed377709 100644 --- a/Iceberg/IceOperationMerge.class.st +++ b/Iceberg/IceOperationMerge.class.st @@ -2,105 +2,107 @@ I represent a merge between two operations. I know if I'm a conflict or not, if I have changes, and the user can use me to resolve a conflict. " Class { - #name : #IceOperationMerge, - #superclass : #Object, + #name : 'IceOperationMerge', + #superclass : 'Object', #instVars : [ 'chosen' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceOperationMerge >> accept: aVisitor [ ^ self subclassResponsibility ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceOperationMerge >> actualClass [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperationMerge >> chosenOperation [ self subclassResponsibility ] -{ #category : #resolution } +{ #category : 'resolution' } IceOperationMerge >> clearSelection [ chosen := nil ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceOperationMerge >> contextClass [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperationMerge >> definition [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperationMerge >> description [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceOperationMerge >> hasChanges [ ^ self chosenOperation hasChanges ] -{ #category : #testing } +{ #category : 'testing' } IceOperationMerge >> isConflict [ self subclassResponsibility ] -{ #category : #resolution } +{ #category : 'resolution' } IceOperationMerge >> isLeftChosen [ self subclassResponsibility ] -{ #category : #'morphic - compatibility' } +{ #category : 'morphic - compatibility' } IceOperationMerge >> isLoadable [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceOperationMerge >> isResolved [ ^ chosen notNil ] -{ #category : #resolution } +{ #category : 'resolution' } IceOperationMerge >> isRightChosen [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperationMerge >> key [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperationMerge >> leftContents [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceOperationMerge >> rightContents [ self subclassResponsibility ] -{ #category : #resolution } +{ #category : 'resolution' } IceOperationMerge >> selectLeft [ self subclassResponsibility ] -{ #category : #resolution } +{ #category : 'resolution' } IceOperationMerge >> selectRight [ self subclassResponsibility ] diff --git a/Iceberg/IcePackage.class.st b/Iceberg/IcePackage.class.st index 733db10c87..ed73b91d78 100644 --- a/Iceberg/IcePackage.class.st +++ b/Iceberg/IcePackage.class.st @@ -6,17 +6,19 @@ Can give information about a package that is saved in a repository, for example: " Class { - #name : #IcePackage, - #superclass : #Object, + #name : 'IcePackage', + #superclass : 'Object', #instVars : [ 'package', 'repository', 'isDirty' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IcePackage class >> named: packageName repository: repository [ ^ self new package: packageName; @@ -24,7 +26,7 @@ IcePackage class >> named: packageName repository: repository [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IcePackage >> = another [ ^ self species = another species and: [ self repository = another repository @@ -32,165 +34,165 @@ IcePackage >> = another [ ] -{ #category : #loading } +{ #category : 'loading' } IcePackage >> beClean [ isDirty := false ] -{ #category : #loading } +{ #category : 'loading' } IcePackage >> beDirty [ isDirty := true ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> beDirty: aBoolean [ isDirty := aBoolean ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> currentCommit [ ^ repository workingCopy referenceCommit ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> currentCommits [ ^ repository workingCopy referenceCommits ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> directoryName [ ^ self repository directoryNameForPackage: self ] -{ #category : #comparing } +{ #category : 'comparing' } IcePackage >> hash [ ^ self name hash ] -{ #category : #initialization } +{ #category : 'initialization' } IcePackage >> initialize [ super initialize. isDirty := false ] -{ #category : #loading } +{ #category : 'loading' } IcePackage >> isClean [ ^ self isDirty not ] -{ #category : #loading } +{ #category : 'loading' } IcePackage >> isDirty [ ^ self isLoaded and: [isDirty ifNil: [ isDirty := false ]] ] -{ #category : #testing } +{ #category : 'testing' } IcePackage >> isExported [ ^ repository isPackageExported: self ] -{ #category : #testing } +{ #category : 'testing' } IcePackage >> isLoaded [ ^ repository workingCopy isLoadedPackageNamed: self packageName ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> isMetacelloBaseline [ ^ self name beginsWith: self metacelloBaselinePrefix ] -{ #category : #testing } +{ #category : 'testing' } IcePackage >> isModified [ ^ self isDirty ] -{ #category : #TOMOVE } +{ #category : 'TOMOVE' } IcePackage >> latestVersion [ ^ self versionFor: self repository head commit ] -{ #category : #loading } +{ #category : 'loading' } IcePackage >> load [ self repository workingCopy loadPackageNamed: self name ] -{ #category : #querying } +{ #category : 'querying' } IcePackage >> loadedVersion [ ^ self repository workingCopy versionFor: self ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> mcPackage [ ^ MCPackage named: self packageName ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> mcSnapshotInRepository [ "Answer a version of the package as it is present on repository. Useful to browse non-loaded packages." ^ self repository branch snapshotFor: self ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> mcWorkingCopy [ ^ self isLoaded ifTrue: [ self mcPackage workingCopy ] ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> metacelloBaselineName [ ^ self name allButFirst: self metacelloBaselinePrefix size ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IcePackage >> metacelloBaselinePrefix [ ^ 'BaselineOf' ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> name [ ^ package ] -{ #category : #querying } +{ #category : 'querying' } IcePackage >> outgoingCommits [ ^ self repository branch outgoingCommits: [ :walk | walk modifyingPackage: self ] ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> package [ ^ package ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> package: anObject [ package := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> packageName [ ^ package ] -{ #category : #printing } +{ #category : 'printing' } IcePackage >> printDescriptionOn: aStream [ aStream nextPut: $(; nextPutAll: package; @@ -199,46 +201,46 @@ IcePackage >> printDescriptionOn: aStream [ nextPut: $) ] -{ #category : #printing } +{ #category : 'printing' } IcePackage >> printOn: aStream [ aStream nextPutAll: self class name. self printDescriptionOn: aStream ] -{ #category : #actions } +{ #category : 'actions' } IcePackage >> reload [ self load ] -{ #category : #actions } +{ #category : 'actions' } IcePackage >> remove [ "Removes the package from the repository. Does not unload from the image" repository workingCopy basicRemovePackage: self ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackage >> repository: anObject [ repository := anObject ] -{ #category : #actions } +{ #category : 'actions' } IcePackage >> unload [ repository workingCopy unloadPackage: self ] -{ #category : #querying } +{ #category : 'querying' } IcePackage >> versionFor: aCommitId [ ^ aCommitId commit versionFor: self ] -{ #category : #versions } +{ #category : 'versions' } IcePackage >> versionLike: selectBlock ifNone: ifNoneBlock [ "Return all versions of this package in the current branch, latest first. Containing info in the repo makes it easier to refresh." @@ -249,7 +251,7 @@ IcePackage >> versionLike: selectBlock ifNone: ifNoneBlock [ ] -{ #category : #querying } +{ #category : 'querying' } IcePackage >> versions [ "Return all versions of this package in the current branch, latest first. Containing info in the repo makes it easier to refresh." diff --git a/Iceberg/IcePackageDefinition.class.st b/Iceberg/IcePackageDefinition.class.st index a1392a0d5d..1d7887ee54 100644 --- a/Iceberg/IcePackageDefinition.class.st +++ b/Iceberg/IcePackageDefinition.class.st @@ -6,24 +6,26 @@ My contents are the tags defined in the package. See my superclasses for more information. " Class { - #name : #IcePackageDefinition, - #superclass : #IceDefinition, + #name : 'IcePackageDefinition', + #superclass : 'IceDefinition', #instVars : [ 'package', 'path', 'packageName', 'tagNames' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IcePackageDefinition >> accept: aVisitor [ ^ aVisitor visitPackage: self ] -{ #category : #patching } +{ #category : 'patching' } IcePackageDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ "In MC there is no such thing as a MCPackage definition. @@ -36,19 +38,19 @@ IcePackageDefinition >> addModification: anIceModification toPatcher: aMCPatcher ^ aMCPatcher addDefinition: anIceModification leftDefinition asMCDefinition ] -{ #category : #patching } +{ #category : 'patching' } IcePackageDefinition >> addToPatcher: aPatcher [ aPatcher addDefinition: self asMCDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> asMCDefinition [ ^ MCOrganizationDefinition packageName: packageName tagNames: tagNames ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> contents [ ^ String streamContents: [ :stream | @@ -64,59 +66,59 @@ IcePackageDefinition >> contents [ nextPutAll: tagName ] ] ] -{ #category : #testing } +{ #category : 'testing' } IcePackageDefinition >> isPackageDefinition [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> package [ ^ package ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> packageName [ ^ packageName ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> packageName: anObject [ packageName := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> path [ ^ path ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> path: aRelativePath [ path := aRelativePath ] -{ #category : #operations } +{ #category : 'operations' } IcePackageDefinition >> removeFrom: aVisitor [ aVisitor removePackage: self ] -{ #category : #patching } +{ #category : 'patching' } IcePackageDefinition >> removeFromPatcher: aPatcher [ aPatcher removeDefinition: self asMCDefinition ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> tagNames [ ^ tagNames ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDefinition >> tagNames: anObject [ tagNames := anObject diff --git a/Iceberg/IcePackageDependency.class.st b/Iceberg/IcePackageDependency.class.st index da27d9e9ac..b73ca4fa56 100644 --- a/Iceberg/IcePackageDependency.class.st +++ b/Iceberg/IcePackageDependency.class.st @@ -2,15 +2,17 @@ I am a dependency to a package. " Class { - #name : #IcePackageDependency, - #superclass : #IceDependency, + #name : 'IcePackageDependency', + #superclass : 'IceDependency', #instVars : [ 'definition' ], - #category : #'Iceberg-Cherrypicking' + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #comparing } +{ #category : 'comparing' } IcePackageDependency >> = anObject [ "Answer whether the receiver and anObject represent the same object." @@ -21,29 +23,29 @@ IcePackageDependency >> = anObject [ ^ definition name = anObject definition name ] -{ #category : #dependencies } +{ #category : 'dependencies' } IcePackageDependency >> addTransitiveDependenciesFrom: anIceDiff to: anIceCherrypicker [ "No transitive dependencies of a package" ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDependency >> definition [ ^ definition ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageDependency >> definition: aIcePackageDefinition [ definition := aIcePackageDefinition ] -{ #category : #comparing } +{ #category : 'comparing' } IcePackageDependency >> hash [ "Answer an integer value that is related to the identity of the receiver." ^ definition name hash ] -{ #category : #testing } +{ #category : 'testing' } IcePackageDependency >> isDependencyTo: anIcePackageDefinition [ ^ definition name = anIcePackageDefinition name ] diff --git a/Iceberg/IcePackageLoaded.class.st b/Iceberg/IcePackageLoaded.class.st index c2b1f093d6..d92cfc4e2a 100644 --- a/Iceberg/IcePackageLoaded.class.st +++ b/Iceberg/IcePackageLoaded.class.st @@ -2,25 +2,27 @@ I announce when a package has been loaded. " Class { - #name : #IcePackageLoaded, - #superclass : #IceAnnouncement, + #name : 'IcePackageLoaded', + #superclass : 'IceAnnouncement', #instVars : [ 'loadedVersion' ], - #category : 'Iceberg-Announcements' + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IcePackageLoaded class >> version: version [ ^ self new loadedVersion: version ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageLoaded >> loadedVersion [ ^ loadedVersion ] -{ #category : #accessing } +{ #category : 'accessing' } IcePackageLoaded >> loadedVersion: anObject [ loadedVersion := anObject ] diff --git a/Iceberg/IcePackageUnloaded.class.st b/Iceberg/IcePackageUnloaded.class.st index 7da710666a..4f932e7757 100644 --- a/Iceberg/IcePackageUnloaded.class.st +++ b/Iceberg/IcePackageUnloaded.class.st @@ -2,7 +2,9 @@ I announce when a package has been unloaded. " Class { - #name : #IcePackageUnloaded, - #superclass : #IceAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IcePackageUnloaded', + #superclass : 'IceAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IcePlaintextCredentials.class.st b/Iceberg/IcePlaintextCredentials.class.st index 806e4ac692..66ee5c58b0 100644 --- a/Iceberg/IcePlaintextCredentials.class.st +++ b/Iceberg/IcePlaintextCredentials.class.st @@ -2,63 +2,65 @@ In addition to my base I have a one time token as well. " Class { - #name : #IcePlaintextCredentials, - #superclass : #IceAbstractCredentials, + #name : 'IcePlaintextCredentials', + #superclass : 'IceAbstractCredentials', #instVars : [ 'username', 'password' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #printing } +{ #category : 'printing' } IcePlaintextCredentials >> description [ ^ 'User: ' , username ] -{ #category : #printing } +{ #category : 'printing' } IcePlaintextCredentials >> hostDescription [ ^ host ] -{ #category : #testing } +{ #category : 'testing' } IcePlaintextCredentials >> isPresent [ ^ self username isEmpty not and: [ self password isEmpty not ] ] -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextCredentials >> password [ ^ password ifNil: [ password := '' ] ] -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextCredentials >> password: anObject [ password := anObject ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IcePlaintextCredentials >> readFrom: credentials [ self username: credentials username. self password: credentials password ] -{ #category : #'API - storing' } +{ #category : 'API - storing' } IcePlaintextCredentials >> removeFrom: aStore [ aStore removePlainTextCredential: self ] -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextCredentials >> type [ ^ 'Plain Text' ] -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextCredentials >> username [ ^ username ifNil: [ username := '' ] ] -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextCredentials >> username: anObject [ username := anObject ] diff --git a/Iceberg/IcePlaintextOtpCredentials.class.st b/Iceberg/IcePlaintextOtpCredentials.class.st index 987176ced4..e68e61ddd8 100644 --- a/Iceberg/IcePlaintextOtpCredentials.class.st +++ b/Iceberg/IcePlaintextOtpCredentials.class.st @@ -2,20 +2,22 @@ In addition to my base I have a one time token as well. " Class { - #name : #IcePlaintextOtpCredentials, - #superclass : #IcePlaintextCredentials, + #name : 'IcePlaintextOtpCredentials', + #superclass : 'IcePlaintextCredentials', #instVars : [ 'token' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextOtpCredentials >> token [ ^token ] -{ #category : #accessing } +{ #category : 'accessing' } IcePlaintextOtpCredentials >> token: aToken [ token := aToken ] diff --git a/Iceberg/IceProjectChange.class.st b/Iceberg/IceProjectChange.class.st index 9d23c1d37f..8082aa6554 100644 --- a/Iceberg/IceProjectChange.class.st +++ b/Iceberg/IceProjectChange.class.st @@ -2,18 +2,20 @@ I represent the fact that the project changed. I'm using during the double-dispatch of diff calculation, so concrete projects can add themselves to the change calculation. " Class { - #name : #IceProjectChange, - #superclass : #IceChange, - #category : #'Iceberg-Project' + #name : 'IceProjectChange', + #superclass : 'IceChange', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #visiting } +{ #category : 'visiting' } IceProjectChange >> accept: anIceChangeImporter [ anIceChangeImporter visitProjectChange: self ] -{ #category : #displaying } +{ #category : 'displaying' } IceProjectChange >> displayingProgressString [ ^ 'Comparing Project change' ] diff --git a/Iceberg/IceProjectReader.class.st b/Iceberg/IceProjectReader.class.st index 1497e07488..a3a33d51fd 100644 --- a/Iceberg/IceProjectReader.class.st +++ b/Iceberg/IceProjectReader.class.st @@ -7,12 +7,14 @@ Then, a reader must implement: - #readProjectFromCommitish: returns a project object " Class { - #name : #IceProjectReader, - #superclass : #Object, - #category : #'Iceberg-Project' + #name : 'IceProjectReader', + #superclass : 'Object', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #accessing } +{ #category : 'accessing' } IceProjectReader class >> availableReaders [ ^ (self allSubclasses @@ -20,7 +22,7 @@ IceProjectReader class >> availableReaders [ sorted: [ :a :b | a priority < b priority ] ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceProjectReader class >> readProjectFrom: anIceCommitish [ ^ (self availableReaders @@ -28,20 +30,20 @@ IceProjectReader class >> readProjectFrom: anIceCommitish [ readProjectFromCommitish: anIceCommitish ] -{ #category : #testing } +{ #category : 'testing' } IceProjectReader >> canReadProjectFromCommitish: aCommitish [ "Return a boolean indicating if I know how to read the project from the commitish" self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceProjectReader >> priority [ "By default all readers are important..." ^ 1 ] -{ #category : #reading } +{ #category : 'reading' } IceProjectReader >> readProjectFromCommitish: aCommitish [ "Return a project object read from the commitish" self subclassResponsibility diff --git a/Iceberg/IceProxyMCVersionInfo.class.st b/Iceberg/IceProxyMCVersionInfo.class.st index 7866862d02..a06a411b54 100644 --- a/Iceberg/IceProxyMCVersionInfo.class.st +++ b/Iceberg/IceProxyMCVersionInfo.class.st @@ -3,8 +3,8 @@ I'm a proxy to keep information on pre-loaded packages when repository is not pr This is the case of pharo project, which is distributed without a repository connection, but users may still need to link with it to make contributions. " Class { - #name : #IceProxyMCVersionInfo, - #superclass : #ProtoObject, + #name : 'IceProxyMCVersionInfo', + #superclass : 'ProtoObject', #instVars : [ 'commitId', 'packageName', @@ -14,15 +14,17 @@ Class { #classVars : [ 'LastCommitFound' ], - #category : #'Iceberg-Adapters' + #category : 'Iceberg-Adapters', + #package : 'Iceberg', + #tag : 'Adapters' } -{ #category : #private } +{ #category : 'private' } IceProxyMCVersionInfo class >> lastCommitFound [ ^ LastCommitFound ] -{ #category : #private } +{ #category : 'private' } IceProxyMCVersionInfo class >> lastCommitFound: aCommit [ | oldCommit | oldCommit := LastCommitFound. @@ -35,7 +37,7 @@ IceProxyMCVersionInfo class >> lastCommitFound: aCommit [ LastCommitFound := nil ] fork ] ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceProxyMCVersionInfo class >> remoteUrl: anUrl packageName: aName commit: aCommit message: aString author: authorString [ ^ self remoteUrl: anUrl @@ -51,7 +53,7 @@ IceProxyMCVersionInfo class >> remoteUrl: anUrl packageName: aName commit: aComm ancestors: #()) ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceProxyMCVersionInfo class >> remoteUrl: urlString packageName: nameString commitId: idString [ ^ self new remoteUrl: urlString @@ -60,7 +62,7 @@ IceProxyMCVersionInfo class >> remoteUrl: urlString packageName: nameString comm stub: nil ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceProxyMCVersionInfo class >> remoteUrl: urlString packageName: nameString commitId: idString stub: aVersionInfo [ ^ self new remoteUrl: urlString @@ -69,7 +71,7 @@ IceProxyMCVersionInfo class >> remoteUrl: urlString packageName: nameString comm stub: aVersionInfo ] -{ #category : #'reflective operations' } +{ #category : 'reflective operations' } IceProxyMCVersionInfo >> becomeForward: otherObject copyHash: copyHash [ "Primitive. All variables in the entire system that used to point to the receiver now point to the argument. If copyHash is true, the argument's identity hash bits will be set to those of the receiver. @@ -80,14 +82,14 @@ IceProxyMCVersionInfo >> becomeForward: otherObject copyHash: copyHash [ copyHash: copyHash ] -{ #category : #'reflective operations' } +{ #category : 'reflective operations' } IceProxyMCVersionInfo >> doesNotUnderstand: aMessage [ ^ aMessage sendTo: (self findVersionInfo ifNotNil: [ :versionInfo | self becomeForward: versionInfo copyHash: false ] ifNil: [ self stubVersionInfo ]) ] -{ #category : #private } +{ #category : 'private' } IceProxyMCVersionInfo >> findVersionInfo [ | repo remote commit | @@ -115,28 +117,28 @@ Please fetch from "{1}" and try again.' package: (IcePackage named: packageName repository: repo) ] -{ #category : #inspecting } +{ #category : 'inspecting' } IceProxyMCVersionInfo >> inspect [ "Create and schedule an Inspector in which the user can examine the receiver's variables." ^ Smalltalk tools inspector inspect: self ] -{ #category : #initialization } +{ #category : 'initialization' } IceProxyMCVersionInfo >> lazy [ ^ self ] -{ #category : #printing } +{ #category : 'printing' } IceProxyMCVersionInfo >> printOn: aStream [ aStream << self class name << '(' << packageName << ')' ] -{ #category : #printing } +{ #category : 'printing' } IceProxyMCVersionInfo >> printString [ ^ String streamContents: [ :stream | self printOn: stream ] ] -{ #category : #initialization } +{ #category : 'initialization' } IceProxyMCVersionInfo >> remoteUrl: urlString packageName: nameString commitId: idString stub: aStub [ remoteUrl := urlString. packageName := nameString. @@ -144,7 +146,7 @@ IceProxyMCVersionInfo >> remoteUrl: urlString packageName: nameString commitId: stubVersionInfo := aStub ] -{ #category : #accessing } +{ #category : 'accessing' } IceProxyMCVersionInfo >> stubVersionInfo [ ^ stubVersionInfo ifNil: [ stubVersionInfo := MCVersionInfo @@ -157,7 +159,7 @@ IceProxyMCVersionInfo >> stubVersionInfo [ ancestors: #() ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceProxyMCVersionInfo >> stubVersionInfo: aVersionInfo [ stubVersionInfo := aVersionInfo ] diff --git a/Iceberg/IcePushTransferProgress.class.st b/Iceberg/IcePushTransferProgress.class.st index 4bbc706b5d..be10811877 100644 --- a/Iceberg/IcePushTransferProgress.class.st +++ b/Iceberg/IcePushTransferProgress.class.st @@ -1,13 +1,15 @@ Class { - #name : #IcePushTransferProgress, - #superclass : #LGitPushTransferProgressCallback, + #name : 'IcePushTransferProgress', + #superclass : 'LGitPushTransferProgressCallback', #instVars : [ 'job' ], - #category : 'Iceberg-Progress' + #category : 'Iceberg-Progress', + #package : 'Iceberg', + #tag : 'Progress' } -{ #category : #accessing } +{ #category : 'accessing' } IcePushTransferProgress >> block [ ^ [ :current :total :bytes :payload | job ensureStarted. @@ -23,7 +25,7 @@ IcePushTransferProgress >> block [ ] ] -{ #category : #initialization } +{ #category : 'initialization' } IcePushTransferProgress >> initialize [ super initialize. @@ -34,12 +36,12 @@ IcePushTransferProgress >> initialize [ self initializeBlock. ] -{ #category : #initialization } +{ #category : 'initialization' } IcePushTransferProgress >> initializeBlock [ self signature: self class fnSpec block: self block. ] -{ #category : #accessing } +{ #category : 'accessing' } IcePushTransferProgress >> title [ ^ 'Pushing...' ] diff --git a/Iceberg/IcePushed.class.st b/Iceberg/IcePushed.class.st index 4bb08bc079..045ca14db9 100644 --- a/Iceberg/IcePushed.class.st +++ b/Iceberg/IcePushed.class.st @@ -2,7 +2,9 @@ Announces when a repository has been pushed. " Class { - #name : #IcePushed, - #superclass : #IceRepositoryAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IcePushed', + #superclass : 'IceRepositoryAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IceRemote.class.st b/Iceberg/IceRemote.class.st index d163aefd2a..1b677fc1e9 100644 --- a/Iceberg/IceRemote.class.st +++ b/Iceberg/IceRemote.class.st @@ -10,35 +10,37 @@ Internal Representation and Key Implementation Points. url: " Class { - #name : #IceRemote, - #superclass : #Object, + #name : 'IceRemote', + #superclass : 'Object', #instVars : [ 'url', 'projectName', 'name', 'localRepository' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #comparing } +{ #category : 'comparing' } IceRemote >> = another [ self subclassResponsibility ] -{ #category : #private } +{ #category : 'private' } IceRemote >> basicUrl: aString [ url := aString ] -{ #category : #branches } +{ #category : 'branches' } IceRemote >> branches [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> branchesFrom: aRepository [ "I return all the branches of my remote from a repository" @@ -46,36 +48,36 @@ IceRemote >> branchesFrom: aRepository [ select: [ :branch | branch isRemote and: [ branch remoteName = self name ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> detailedInfo [ ^ #() ] -{ #category : #displaying } +{ #category : 'displaying' } IceRemote >> displayString [ ^ '{1}: {2}' format: { self name. self url } ] -{ #category : #fetching } +{ #category : 'fetching' } IceRemote >> fetch [ self subclassResponsibility ] -{ #category : #fetching } +{ #category : 'fetching' } IceRemote >> fetchBranch: aRemoteBranch [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceRemote >> hasBranches [ ^ self branches isNotEmpty ] -{ #category : #testing } +{ #category : 'testing' } IceRemote >> hasRemoteBranchNamed: aString [ self @@ -84,12 +86,12 @@ IceRemote >> hasRemoteBranchNamed: aString [ ifAbsent: [ ^ false ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> host [ ^ self subclassResponsibility ] -{ #category : #patches } +{ #category : 'patches' } IceRemote >> httpsUrl [ "This method is used to compare exchangeable addresses (https:// and git@). So it has sense in my children, and is notably used on #isSameUrl: @@ -97,70 +99,70 @@ IceRemote >> httpsUrl [ ^ self url ] -{ #category : #testing } +{ #category : 'testing' } IceRemote >> isSame: aRemote [ ^ (self referencesSameRemoteLocationAs: aRemote) and: [ self name = aRemote name ] ] -{ #category : #testing } +{ #category : 'testing' } IceRemote >> isUndefined [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> localRepository [ ^ localRepository ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> localRepository: aRepository [ localRepository := aRepository ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> name: aString [ name := aString ] -{ #category : #private } +{ #category : 'private' } IceRemote >> parseUrl [ ^ self subclassResponsibility ] -{ #category : #printing } +{ #category : 'printing' } IceRemote >> printOn: stream [ stream << (self name ifNil: [ 'noname' ]) << ' (' << self url << ')' ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> projectBasename [ ^ self projectName withoutSuffix: '.git' ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> projectName [ ^ projectName ] -{ #category : #testing } +{ #category : 'testing' } IceRemote >> referencesSameRemoteLocationAs: another [ "Base/trivial implementation is that two urls are the same if they are equal, but some subclasses have more complicated logic to detect two urls pointing to the same remote" ^ self url sameAs: another url ] -{ #category : #branches } +{ #category : 'branches' } IceRemote >> remoteBranchNamed: aString [ ^ self @@ -171,7 +173,7 @@ IceRemote >> remoteBranchNamed: aString [ signal ] ] -{ #category : #branches } +{ #category : 'branches' } IceRemote >> remoteBranchNamed: aString ifAbsent: aBlock [ ^ self @@ -180,13 +182,13 @@ IceRemote >> remoteBranchNamed: aString ifAbsent: aBlock [ ifAbsent: [ ^ aBlock value ] ] -{ #category : #branches } +{ #category : 'branches' } IceRemote >> remoteBranchNamed: aString ifPresent: presentClosure ifAbsent: absentClosure [ ^ absentClosure value ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> upstreamForBranch: aBranch backend: backend [ ^ backend lookupBranchNamed: aBranch name @@ -194,12 +196,12 @@ IceRemote >> upstreamForBranch: aBranch backend: backend [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> url [ ^ url ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemote >> url: aString [ self basicUrl: aString. self parseUrl diff --git a/Iceberg/IceRemoteAlreadyExistsError.class.st b/Iceberg/IceRemoteAlreadyExistsError.class.st index 37ba297c9b..962a8c8d0c 100644 --- a/Iceberg/IceRemoteAlreadyExistsError.class.st +++ b/Iceberg/IceRemoteAlreadyExistsError.class.st @@ -1,23 +1,25 @@ Class { - #name : #IceRemoteAlreadyExistsError, - #superclass : #IceError, + #name : 'IceRemoteAlreadyExistsError', + #superclass : 'IceError', #instVars : [ 'remoteName' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceRemoteAlreadyExistsError >> acceptError: aVisitor [ aVisitor visitRemoteAlreadyExistError: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteAlreadyExistsError >> remoteName [ ^ remoteName ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteAlreadyExistsError >> remoteName: aString [ remoteName := aString ] diff --git a/Iceberg/IceRemoteBranch.class.st b/Iceberg/IceRemoteBranch.class.st index a9242b16e0..af9acbc540 100644 --- a/Iceberg/IceRemoteBranch.class.st +++ b/Iceberg/IceRemoteBranch.class.st @@ -8,19 +8,21 @@ I am a remote tracked branch. I am a copy to a branch that exists in a remote. I branch hasOutgoingCommits. " Class { - #name : #IceRemoteBranch, - #superclass : #IceBranch, - #category : #'Iceberg-Core' + #name : 'IceRemoteBranch', + #superclass : 'IceBranch', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #comparing } +{ #category : 'comparing' } IceRemoteBranch >> = aBranch [ ^ aBranch isRemote and: [ self name = aBranch name ] ] -{ #category : #'API - checkout' } +{ #category : 'API - checkout' } IceRemoteBranch >> checkout: aCheckoutStrategy [ | localBranch | @@ -36,7 +38,7 @@ IceRemoteBranch >> checkout: aCheckoutStrategy [ ^ localBranch checkout: aCheckoutStrategy ] -{ #category : #'API - actions' } +{ #category : 'API - actions' } IceRemoteBranch >> checkoutWithStrategy: aCheckoutStrategy [ "checkouts a remote branch" @@ -53,34 +55,34 @@ IceRemoteBranch >> checkoutWithStrategy: aCheckoutStrategy [ ^ super checkoutWithStrategy: aCheckoutStrategy ] -{ #category : #comparing } +{ #category : 'comparing' } IceRemoteBranch >> hash [ ^ self name hash ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRemoteBranch >> incomingCommits [ ^ #() ] -{ #category : #testing } +{ #category : 'testing' } IceRemoteBranch >> isRemote [ ^ true ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRemoteBranch >> outgoingCommits [ ^ #() ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteBranch >> remote [ ^ repository remoteNamed: self remoteName ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteBranch >> shortName [ ^ self name copyAfter: $/ ] diff --git a/Iceberg/IceRemoteDesynchronized.class.st b/Iceberg/IceRemoteDesynchronized.class.st index 4d4b6c709a..c22086de22 100644 --- a/Iceberg/IceRemoteDesynchronized.class.st +++ b/Iceberg/IceRemoteDesynchronized.class.st @@ -3,42 +3,44 @@ I indicate when a remote is desyncronized. It means the version I have in the working copy (not the image) is different to the version I have in the remote (then I need to pull/branch/whatever before commiting). " Class { - #name : #IceRemoteDesynchronized, - #superclass : #IceError, + #name : 'IceRemoteDesynchronized', + #superclass : 'IceError', #instVars : [ 'remote', 'resumable' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceRemoteDesynchronized >> acceptError: aVisitor [ aVisitor visitRemoteDesynchronizedError: self ] -{ #category : #converting } +{ #category : 'converting' } IceRemoteDesynchronized >> asResumable [ resumable := true ] -{ #category : #initialization } +{ #category : 'initialization' } IceRemoteDesynchronized >> initialize [ super initialize. resumable := false ] -{ #category : #private } +{ #category : 'private' } IceRemoteDesynchronized >> isResumable [ ^ resumable ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteDesynchronized >> remote [ ^ remote ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteDesynchronized >> remote: anObject [ remote := anObject ] diff --git a/Iceberg/IceRemoteNotFoundError.class.st b/Iceberg/IceRemoteNotFoundError.class.st index d2e0aeefbd..6056ade61c 100644 --- a/Iceberg/IceRemoteNotFoundError.class.st +++ b/Iceberg/IceRemoteNotFoundError.class.st @@ -1,18 +1,20 @@ Class { - #name : #IceRemoteNotFoundError, - #superclass : #IceError, + #name : 'IceRemoteNotFoundError', + #superclass : 'IceError', #instVars : [ 'remoteName' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteNotFoundError >> remoteName [ ^ remoteName ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteNotFoundError >> remoteName: aString [ remoteName := aString ] diff --git a/Iceberg/IceRemoteWithOnlyHostname.class.st b/Iceberg/IceRemoteWithOnlyHostname.class.st index 2dfe069d74..10da965220 100644 --- a/Iceberg/IceRemoteWithOnlyHostname.class.st +++ b/Iceberg/IceRemoteWithOnlyHostname.class.st @@ -5,27 +5,29 @@ This is to not intended to be polymorphic with all the uses of remotes in iceber It is only used in the credential " Class { - #name : #IceRemoteWithOnlyHostname, - #superclass : #Object, + #name : 'IceRemoteWithOnlyHostname', + #superclass : 'Object', #instVars : [ 'host' ], - #category : 'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceRemoteWithOnlyHostname class >> for: aHost [ ^ self new host: aHost; yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteWithOnlyHostname >> host [ ^ host ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoteWithOnlyHostname >> host: aString [ host := aString ] diff --git a/Iceberg/IceRemoval.class.st b/Iceberg/IceRemoval.class.st index ade8d11007..d40e90a75a 100644 --- a/Iceberg/IceRemoval.class.st +++ b/Iceberg/IceRemoval.class.st @@ -2,36 +2,38 @@ I am a removal in a tree. I contain the definition I'm removing. I know what is the icon for removal and how to calculate a conflict with other operations. " Class { - #name : #IceRemoval, - #superclass : #IceOperation, - #category : 'Iceberg-Changes' + #name : 'IceRemoval', + #superclass : 'IceOperation', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceRemoval >> accept: aVisitor [ ^ aVisitor visitRemoval: self ] -{ #category : #operations } +{ #category : 'operations' } IceRemoval >> inverse [ ^ IceAddition definition: definition ] -{ #category : #testing } +{ #category : 'testing' } IceRemoval >> isRemoval [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceRemoval >> leftContents [ ^ '' ] -{ #category : #merging } +{ #category : 'merging' } IceRemoval >> mergeWithLeftAddition: anIceAddition [ "This should not happen. If I represent a removal of a node, that means that the original definition existed on the base version. @@ -39,7 +41,7 @@ IceRemoval >> mergeWithLeftAddition: anIceAddition [ self shouldNotImplement ] -{ #category : #merging } +{ #category : 'merging' } IceRemoval >> mergeWithLeftModification: anIceModification [ ^ IceConflictingOperation @@ -47,7 +49,7 @@ IceRemoval >> mergeWithLeftModification: anIceModification [ right: self ] -{ #category : #merging } +{ #category : 'merging' } IceRemoval >> mergeWithLeftNoOperation: anIceNoModification [ "We assume that if the IceNoModification is in the tree this means its children have modifications. @@ -57,13 +59,13 @@ IceRemoval >> mergeWithLeftNoOperation: anIceNoModification [ ^ IceConflictingOperation left: anIceNoModification right: self ] -{ #category : #merging } +{ #category : 'merging' } IceRemoval >> mergeWithLeftRemoval: anIceRemoval [ ^ IceNonConflictingOperation operation: anIceRemoval ] -{ #category : #merging } +{ #category : 'merging' } IceRemoval >> mergeWithOperation: anOperation [ ^ anOperation mergeWithLeftRemoval: self diff --git a/Iceberg/IceRepository.class.st b/Iceberg/IceRepository.class.st index 96245a9174..3cbaa58929 100644 --- a/Iceberg/IceRepository.class.st +++ b/Iceberg/IceRepository.class.st @@ -140,8 +140,8 @@ From the repository point of view, only some convenience methods are provided to " Class { - #name : #IceRepository, - #superclass : #Object, + #name : 'IceRepository', + #superclass : 'Object', #instVars : [ 'name', 'workingCopy', @@ -151,41 +151,43 @@ Class { #classVars : [ 'Registry' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #testing } +{ #category : 'testing' } IceRepository class >> isAbstract [ ^ self == IceRepository ] -{ #category : #registry } +{ #category : 'registry' } IceRepository class >> registerRepository: aRepository [ self registry add: aRepository. ^ aRepository ] -{ #category : #registry } +{ #category : 'registry' } IceRepository class >> registeredRepositoryIncludingPackage: aPackage [ ^ self registry detect: [ :repoitory | repoitory includesPackageNamed: aPackage name ] ifNone: [ nil ] ] -{ #category : #registry } +{ #category : 'registry' } IceRepository class >> registry [ ^ Registry ifNil: [ Registry := OrderedCollection new ] ] -{ #category : #registry } +{ #category : 'registry' } IceRepository class >> repositories [ ^ self registry ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository class >> repositoryNamed: aString [ ^ self repositories @@ -193,20 +195,20 @@ IceRepository class >> repositoryNamed: aString [ ifNone: [ nil ] ] -{ #category : #'class initialization' } +{ #category : 'class initialization' } IceRepository class >> reset [ Registry := nil. Iceberg announcer announce: IceRepositoryForgotten new. ] -{ #category : #registry } +{ #category : 'registry' } IceRepository class >> unregisterRepository: aRepository ifAbsent: aBlock [ ^ self registry remove: aRepository ifAbsent: aBlock ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> addRemote: aRemote [ "Add a remote to the current repository. @@ -221,14 +223,14 @@ IceRepository >> addRemote: aRemote [ aRemote localRepository: self. ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> allBranches [ "Returns all local and remote branches, instances of IceBranch, from the current repository. This method will return only already fetched branches." self subclassResponsibility ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> branch [ "Returns head if head is a branch. Throws an exception if HEAD is not a branch" @@ -237,7 +239,7 @@ IceRepository >> branch [ ^ self head ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> branchName [ "Returns current branch name. @@ -246,7 +248,7 @@ IceRepository >> branchName [ ^ self branch name ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> branchNamed: aName [ "Access a branch by name. Throws an IceBranchNotFound is the branch does not exist in the repository." @@ -260,7 +262,7 @@ IceRepository >> branchNamed: aName [ signal ] ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> branchNamed: aName ifAbsent: absentBlock [ "Access a branch by name. Returns the result of the second argument if absent." @@ -271,7 +273,7 @@ IceRepository >> branchNamed: aName ifAbsent: absentBlock [ ifAbsent: absentBlock ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> branchNamed: aString ifPresent: aBlockClosure [ "Access a branch by name. If present, evaluate the block used as second argument with the branch found. @@ -283,7 +285,7 @@ IceRepository >> branchNamed: aString ifPresent: aBlockClosure [ ifAbsent: [ self ] ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> branchNamed: aName ifPresent: presentBlock ifAbsent: absentBlock [ "Access a branch by name. If present, evaluate the block used as second argument with the branch found. @@ -292,33 +294,33 @@ IceRepository >> branchNamed: aName ifPresent: presentBlock ifAbsent: absentBloc self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceRepository >> canPush [ ^ self head isDetached not and: [ self branch tracksRemoteBranch ] ] -{ #category : #'API - registry' } +{ #category : 'API - registry' } IceRepository >> checkForRegistryConflicts [ self subclassResponsibility ] -{ #category : #'API - working copy' } +{ #category : 'API - working copy' } IceRepository >> checkout: aCheckoutStrategy [ self workingCopy checkout: aCheckoutStrategy ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceRepository >> checkoutAllPackages [ "A checkout operation loads all packages from the current branch in the image" self branch checkoutAllPackages ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceRepository >> checkoutBranch: branchName [ "Convenience method to checkout all packages from a branch given a branch name" @@ -328,19 +330,19 @@ IceRepository >> checkoutBranch: branchName [ self createBranch: branchName ]) checkout ] -{ #category : #'API - cherry-picking' } +{ #category : 'API - cherry-picking' } IceRepository >> cherryPickFrom: anotherCommit [ ^ self head cherryPickFrom: anotherCommit ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceRepository >> commitAt: commitId [ ^ self lookupCommit: commitId ] -{ #category : #'API - commit' } +{ #category : 'API - commit' } IceRepository >> commitChanges: changes withMessage: message [ "Creates a commit with the given changes using the comment given as argument. @@ -354,7 +356,7 @@ IceRepository >> commitChanges: changes withMessage: message [ withMessage: message ] -{ #category : #'API - commit' } +{ #category : 'API - commit' } IceRepository >> commitIndexWithMessage: message andParents: parentCommitishList [ "Low level. @@ -368,7 +370,7 @@ IceRepository >> commitIndexWithMessage: message andParents: parentCommitishList ^ newCommit ] -{ #category : #'API - commit' } +{ #category : 'API - commit' } IceRepository >> commitWithMessage: message [ "Creates a commit with all changed code using the comment given as argument. @@ -380,7 +382,7 @@ IceRepository >> commitWithMessage: message [ ^ self workingCopy commitWithMessage: message ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> commitishNamed: aName [ "Resolve a name in the form of: - a commit hash @@ -391,77 +393,77 @@ IceRepository >> commitishNamed: aName [ ^ self subclassResponsibility ] -{ #category : #'private - commits' } +{ #category : 'private - commits' } IceRepository >> commitsInPackageCache [ ^ commitsInPackageCache ifNil: [ commitsInPackageCache := LRUCache new maximumWeight: 30 ] ] -{ #category : #'private - commits' } +{ #category : 'private - commits' } IceRepository >> commitsInPackageCache: aCache [ commitsInPackageCache := aCache ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> createBranch: branchName [ "Creates a new branch from #headCommit and switch to it" ^ self createBranch: branchName inCommit: self headCommit ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> createBranch: branchName inCommit: aCommit [ "Creates a new branch from a given commit and switch to it" self subclassResponsibility ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> createNewBranch: branchName [ "Creates a new branch starting on HEAD commit and switch to it" self createBranch: branchName inCommit: self headCommit ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceRepository >> createTag: aString [ ^ self workingCopy referenceCommit createTag: aString ] -{ #category : #'API - registry' } +{ #category : 'API - registry' } IceRepository >> delete [ "Delete is idempotent. If the repository does not exist, do nothing. Otherwise, forget the repository" self forget ] -{ #category : #printing } +{ #category : 'printing' } IceRepository >> description [ ^ self origin url, '[', self head description, ']' ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceRepository >> discardChanges [ self workingCopy discardChanges ] -{ #category : #'private - remotes' } +{ #category : 'private - remotes' } IceRepository >> doRemoveRemote: aRemote [ self subclassResponsibility ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> ensureBranch: branchName [ (self hasLocalBranchNamed: branchName) ifFalse: [ self createBranch: branchName ] ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> fetch [ "Fetch all commits and branches from all remotes" @@ -469,20 +471,20 @@ IceRepository >> fetch [ displayingProgress: [ :each | 'Remote: ' , each name asString ] ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> fetchFrom: aRemote [ "Fetch all commits and branches from the pull remote" aRemote fetch ] -{ #category : #'API - registry' } +{ #category : 'API - registry' } IceRepository >> forget [ self class unregisterRepository: self ifAbsent: [ ^ nil ]. Iceberg announcer announce: (IceRepositoryForgotten repository: self) ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> fullWorkingCopyDiff [ ^ IceDiff new source: self workingCopy; @@ -491,29 +493,29 @@ IceRepository >> fullWorkingCopyDiff [ yourself ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> hasIncomingCommits [ ^ self branch hasIncomingCommits ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> hasIncomingCommitsFrom: aRemote [ ^ self branch hasIncomingCommitsFrom: aRemote ] -{ #category : #testing } +{ #category : 'testing' } IceRepository >> hasLoadedPackages [ ^ self loadedPackages notEmpty ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> hasLocalBraches [ ^ self localBranches isNotEmpty ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> hasLocalBranchNamed: aString [ ^ self branchNamed: aString @@ -521,26 +523,26 @@ IceRepository >> hasLocalBranchNamed: aString [ ifAbsent: [ false ] ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> hasOutgoingCommits [ ^ self branch hasOutgoingCommits ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> hasRemoteNamed: aString [ self remoteNamed: aString ifAbsent: [ ^ false ]. ^ true ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceRepository >> hasTagNamed: aString [ self subclassResponsibility ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> head [ "The repository HEAD is a reference to our current working commit/branch in the repository. @@ -549,33 +551,33 @@ IceRepository >> head [ self subclassResponsibility ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> headCommit [ "The head can be either a branch or a commit. To access the current commit you can ask the head for its commit, or directly the repository for its headCommit (Yes, commits and branches are polymorphic, a commit returns self when asked for its commit)." ^ self head commit ] -{ #category : #printing } +{ #category : 'printing' } IceRepository >> headDescription [ ^ self head description ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceRepository >> includesCommit: anIceCommit [ self lookupCommit: anIceCommit id ifAbsent: [ ^ false ]. ^ true ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceRepository >> includesPackageNamed: aString [ "Returns true if the given package name belongs to a package loaded in the image" ^ self workingCopy includesPackageNamed: aString ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> incomingCommits [ (self head isDetached) @@ -583,12 +585,12 @@ IceRepository >> incomingCommits [ ^ self branch incomingCommits ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> index [ ^ index ] -{ #category : #initialization } +{ #category : 'initialization' } IceRepository >> initialize [ super initialize. @@ -599,51 +601,51 @@ IceRepository >> initialize [ index := self newIndex. ] -{ #category : #'private - commits' } +{ #category : 'private - commits' } IceRepository >> internalStoreVersion: aMCVersion [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceRepository >> isCloneOfUrl: aString [ ^ self origin url = aString ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceRepository >> isModified [ "Returns true if a package in the working copy has modifications" ^ self workingCopy isModified ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceRepository >> loadedPackages [ "Lists all loaded packages" ^ self workingCopy loadedPackages ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> localBranchNames [ ^ self localBranches collect: #name ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> localBranches [ "Lists local branches" self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> log [ ^ self subclassResponsibility ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceRepository >> lookupCommit: commitId [ ^ self @@ -653,24 +655,24 @@ IceRepository >> lookupCommit: commitId [ id: commitId; yourself ] ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceRepository >> lookupCommit: commitId ifAbsent: aBlock [ self subclassResponsibility ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceRepository >> modifiedPackages [ "Lists all modified packages currently loaded in the image" ^ self workingCopy modifiedPackages ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> name: aString [ "Change the name of the repository as is seen inside image (real project name resides externally, in repository). This can be confusing, but some times you need it to create new @@ -678,72 +680,72 @@ IceRepository >> name: aString [ name := aString ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceRepository >> newCommitWalk [ self subclassResponsibility ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceRepository >> newIndex [ self subclassResponsibility ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceRepository >> newNoCommit [ self subclassResponsibility ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceRepository >> newProjectFromCommit: aCommit [ self subclassResponsibility ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceRepository >> newUnbornProject [ ^ IceUnbornProject onRepository: self ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceRepository >> notifyPackageModified: aString [ ^ self workingCopy notifyPackageModified: aString ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> origin [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> outgoingCommits [ ^ self branch outgoingCommits ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> outgoingCommitsTo: aRemote [ ^ self branch outgoingCommitsTo: aRemote ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceRepository >> packageNamed: packageName [ "Returns the loaded package with the given name" ^ self workingCopy packageNamed: packageName ] -{ #category : #'private - tags' } +{ #category : 'private - tags' } IceRepository >> peelTag: anIceTag [ self subclassResponsibility ] -{ #category : #'private - remotes' } +{ #category : 'private - remotes' } IceRepository >> postFetch [ "This method is called after every fetch. Fox possible broken references using unknown commits." @@ -754,7 +756,7 @@ IceRepository >> postFetch [ maybeGoodCommit isUnknownCommit ifFalse: [ maybeGoodCommit adopt ] ] -{ #category : #printing } +{ #category : 'printing' } IceRepository >> printOn: aStream [ aStream nextPutAll: self class name; nextPut: $(; @@ -762,40 +764,40 @@ IceRepository >> printOn: aStream [ nextPut: $) ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceRepository >> project [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> pull [ "Fetch new commits corresponding to the current branch from the default pull remote. Then merge the remote branch with the current branch." self branch pull ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> pullFrom: aRemote [ "Fetch new commits corresponding to the remote. Then merge the remote branch with the current branch." self branch pullFrom: aRemote ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> push [ "Push current commits to the default push remote" self branch push ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> pushTo: aRemote [ self branch pushTo: aRemote ] -{ #category : #'API - registry' } +{ #category : 'API - registry' } IceRepository >> register [ self checkForRegistryConflicts. self class registerRepository: self. @@ -804,13 +806,13 @@ IceRepository >> register [ ] -{ #category : #'private - remotes' } +{ #category : 'private - remotes' } IceRepository >> remoteAt: aString put: aRemote [ self subclassResponsibility ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> remoteBranchNamed: aString [ "Access a remote branch by name. Throws an IceBranchNotFound is the branch does not exist in the repository." @@ -823,7 +825,7 @@ IceRepository >> remoteBranchNamed: aString [ signal ] ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> remoteBranchNamed: aName ifAbsent: absentBlock [ "Access a remote branch by name. Returns the result of the second argument if absent." @@ -834,7 +836,7 @@ IceRepository >> remoteBranchNamed: aName ifAbsent: absentBlock [ ifAbsent: absentBlock ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> remoteBranchNamed: aString ifPresent: aBlockClosure [ "Access a remote branch by name. If present, evaluate the block used as second argument with the branch found. @@ -846,7 +848,7 @@ IceRepository >> remoteBranchNamed: aString ifPresent: aBlockClosure [ ifAbsent: [ self ] ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> remoteBranchNamed: aString ifPresent: presentBlock ifAbsent: absentBlock [ "Access a remote branch by name. If present, evaluate the block used as second argument with the branch found. @@ -855,13 +857,13 @@ IceRepository >> remoteBranchNamed: aString ifPresent: presentBlock ifAbsent: ab self subclassResponsibility ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> remoteBranchNames [ ^ self remoteTrackedBranches collect: #name ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> remoteNamed: aString [ ^ self remoteNamed: aString ifAbsent: [ IceRemoteNotFoundError new @@ -869,26 +871,26 @@ IceRepository >> remoteNamed: aString [ signal ] ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> remoteNamed: aString ifAbsent: aBlockClosure [ self subclassResponsibility ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> remoteTrackedBranches [ "Lists branches in remotes" self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> remotes [ self subclassResponsibility ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceRepository >> removeRemote: aRemote [ (self hasRemoteNamed: aRemote name) @@ -899,19 +901,19 @@ IceRepository >> removeRemote: aRemote [ self doRemoveRemote: aRemote ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceRepository >> removeTag: anIceTag [ self subclassResponsibility ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> setHead: anIceGitBranch [ self subclassResponsibility ] -{ #category : #'API - accessing' } +{ #category : 'API - accessing' } IceRepository >> subdirectoryPath [ "Return a relative path containing the path to the code source. This is required to compute the diff between two versions. @@ -921,7 +923,7 @@ IceRepository >> subdirectoryPath [ self subclassResponsibility ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> switchToBranchNamed: aString [ ^ (self branchNamed: aString) @@ -929,7 +931,7 @@ IceRepository >> switchToBranchNamed: aString [ yourself ] -{ #category : #'API - branches' } +{ #category : 'API - branches' } IceRepository >> switchToCommitishNamed: aString [ ^ (self commitishNamed: aString) @@ -937,7 +939,7 @@ IceRepository >> switchToCommitishNamed: aString [ yourself ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceRepository >> tagNamed: aString [ (self hasTagNamed: aString) ifFalse: [ @@ -948,26 +950,26 @@ IceRepository >> tagNamed: aString [ ^ IceTag named: aString inRepository: self ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceRepository >> tagNames [ ^ self tags collect: #name ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceRepository >> tags [ self subclassResponsibility ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceRepository >> unload [ "Unload all code loaded into the image that belong to this repository" self workingCopy unload ] -{ #category : #validating } +{ #category : 'validating' } IceRepository >> validateCanCommit [ "Private API. Do not rely on this. @@ -979,13 +981,13 @@ IceRepository >> validateCanCommit [ IceWorkingCopyDesyncronized signal ] ] -{ #category : #validating } +{ #category : 'validating' } IceRepository >> validateCanPull [ self isModified ifTrue: [ IceShouldCommitBeforePull signal ] ] -{ #category : #validating } +{ #category : 'validating' } IceRepository >> validateCanPushTo: aRemote [ | commits | @@ -1002,20 +1004,20 @@ IceRepository >> validateCanPushTo: aRemote [ signal ] -{ #category : #'private - packages' } +{ #category : 'private - packages' } IceRepository >> workingCopies [ ^ self loadedPackages collect: #workingCopy ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> workingCopy [ "See IceWorkingCopy" ^ workingCopy ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> workingCopy: aWorkingCopy [ "See IceWorkingCopy" @@ -1023,7 +1025,7 @@ IceRepository >> workingCopy: aWorkingCopy [ workingCopy repository: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepository >> workingCopyDiff [ ^ self workingCopy diffToReferenceCommit diff --git a/Iceberg/IceRepositoryAnnouncement.class.st b/Iceberg/IceRepositoryAnnouncement.class.st index 96189cafba..b6a2cdbbb0 100644 --- a/Iceberg/IceRepositoryAnnouncement.class.st +++ b/Iceberg/IceRepositoryAnnouncement.class.st @@ -2,30 +2,32 @@ Groupes different announcements that can happen in a repository. " Class { - #name : #IceRepositoryAnnouncement, - #superclass : #IceAnnouncement, + #name : 'IceRepositoryAnnouncement', + #superclass : 'IceAnnouncement', #instVars : [ 'repository' ], - #category : 'Iceberg-Announcements' + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceRepositoryAnnouncement class >> for: repository [ ^ self new repository: repository; yourself ] -{ #category : #testing } +{ #category : 'testing' } IceRepositoryAnnouncement >> appliesToRepository: aRepository [ ^ self repository = aRepository ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepositoryAnnouncement >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepositoryAnnouncement >> repository: anObject [ repository := anObject ] diff --git a/Iceberg/IceRepositoryCreated.class.st b/Iceberg/IceRepositoryCreated.class.st index 0d472d56e9..ee66fa2d45 100644 --- a/Iceberg/IceRepositoryCreated.class.st +++ b/Iceberg/IceRepositoryCreated.class.st @@ -2,7 +2,9 @@ I announce when a repository has been created. " Class { - #name : #IceRepositoryCreated, - #superclass : #IceRepositoryRegistryAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IceRepositoryCreated', + #superclass : 'IceRepositoryRegistryAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IceRepositoryForgotten.class.st b/Iceberg/IceRepositoryForgotten.class.st index eb3c5b93e3..297c1b96c2 100644 --- a/Iceberg/IceRepositoryForgotten.class.st +++ b/Iceberg/IceRepositoryForgotten.class.st @@ -2,7 +2,9 @@ I announce when a repository has been forgotten (removed from iceberg). " Class { - #name : #IceRepositoryForgotten, - #superclass : #IceRepositoryRegistryAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IceRepositoryForgotten', + #superclass : 'IceRepositoryRegistryAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IceRepositoryModified.class.st b/Iceberg/IceRepositoryModified.class.st index 17395f3c17..994c867c64 100644 --- a/Iceberg/IceRepositoryModified.class.st +++ b/Iceberg/IceRepositoryModified.class.st @@ -2,7 +2,9 @@ Announces an unspecified change to a repository. " Class { - #name : #IceRepositoryModified, - #superclass : #IceRepositoryAnnouncement, - #category : 'Iceberg-Announcements' + #name : 'IceRepositoryModified', + #superclass : 'IceRepositoryAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } diff --git a/Iceberg/IceRepositoryRegistryAnnouncement.class.st b/Iceberg/IceRepositoryRegistryAnnouncement.class.st index 34acc6c215..b2f6a00692 100644 --- a/Iceberg/IceRepositoryRegistryAnnouncement.class.st +++ b/Iceberg/IceRepositoryRegistryAnnouncement.class.st @@ -2,12 +2,14 @@ I'm a generic announcement to notify when the repository registry has changed. " Class { - #name : #IceRepositoryRegistryAnnouncement, - #superclass : #IceRepositoryAnnouncement, - #category : #'Iceberg-Announcements' + #name : 'IceRepositoryRegistryAnnouncement', + #superclass : 'IceRepositoryAnnouncement', + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceRepositoryRegistryAnnouncement class >> repository: aRepository [ ^ self new repository: aRepository; yourself ] diff --git a/Iceberg/IceRepositoryRegistryModified.class.st b/Iceberg/IceRepositoryRegistryModified.class.st index 718097769d..0322be69f5 100644 --- a/Iceberg/IceRepositoryRegistryModified.class.st +++ b/Iceberg/IceRepositoryRegistryModified.class.st @@ -2,25 +2,27 @@ I'm a generic announcement to notify when the repository registry has changed. " Class { - #name : #IceRepositoryRegistryModified, - #superclass : #Announcement, + #name : 'IceRepositoryRegistryModified', + #superclass : 'Announcement', #instVars : [ 'repository' ], - #category : 'Iceberg-Announcements' + #category : 'Iceberg-Announcements', + #package : 'Iceberg', + #tag : 'Announcements' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceRepositoryRegistryModified class >> repository: aRepository [ ^ self new repository: aRepository; yourself ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepositoryRegistryModified >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceRepositoryRegistryModified >> repository: anObject [ repository := anObject ] diff --git a/Iceberg/IceRootDefinition.class.st b/Iceberg/IceRootDefinition.class.st index 4263419e96..52ad6aecb4 100644 --- a/Iceberg/IceRootDefinition.class.st +++ b/Iceberg/IceRootDefinition.class.st @@ -4,24 +4,26 @@ I am an IceDefinition representing the repository root. I contain all packages, See my superclasses for more information. " Class { - #name : #IceRootDefinition, - #superclass : #IceDefinition, - #category : 'Iceberg-Changes' + #name : 'IceRootDefinition', + #superclass : 'IceDefinition', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #visiting } +{ #category : 'visiting' } IceRootDefinition >> accept: aVisitor [ ^ aVisitor visitRootDefinition: self ] -{ #category : #initialization } +{ #category : 'initialization' } IceRootDefinition >> initialize [ super initialize. name := ''. ] -{ #category : #testing } +{ #category : 'testing' } IceRootDefinition >> isRootDefinition [ ^ true diff --git a/Iceberg/IceSSHProtocol.class.st b/Iceberg/IceSSHProtocol.class.st index 0714ef7c49..4beea8860e 100644 --- a/Iceberg/IceSSHProtocol.class.st +++ b/Iceberg/IceSSHProtocol.class.st @@ -1,16 +1,18 @@ Class { - #name : #IceSSHProtocol, - #superclass : #IceUrlProtocol, - #category : 'Iceberg-Url' + #name : 'IceSSHProtocol', + #superclass : 'IceUrlProtocol', + #category : 'Iceberg-Url', + #package : 'Iceberg', + #tag : 'Url' } -{ #category : #accessing } +{ #category : 'accessing' } IceSSHProtocol class >> description [ ^ 'SSH' ] -{ #category : #url } +{ #category : 'url' } IceSSHProtocol >> composeUrlWithHost: host repositoryPath: path [ ^ 'git@{1}:{2}.git' format: { host . path } diff --git a/Iceberg/IceSavedPackageVersion.class.st b/Iceberg/IceSavedPackageVersion.class.st index bce4a947cb..189efdd2e4 100644 --- a/Iceberg/IceSavedPackageVersion.class.st +++ b/Iceberg/IceSavedPackageVersion.class.st @@ -8,24 +8,26 @@ Internal representation " Class { - #name : #IceSavedPackageVersion, - #superclass : #Object, + #name : 'IceSavedPackageVersion', + #superclass : 'Object', #instVars : [ 'entry', 'info', 'commit', 'package' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceSavedPackageVersion class >> forPackage: package [ "Use fromCommit:package: instead" self shouldNotImplement ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceSavedPackageVersion class >> fromCommit: commit package: package [ ^ self new commit: commit; @@ -33,7 +35,7 @@ IceSavedPackageVersion class >> fromCommit: commit package: package [ yourself ] -{ #category : #comparing } +{ #category : 'comparing' } IceSavedPackageVersion >> = another [ self species = another species ifFalse: [ ^ false ]. @@ -41,100 +43,100 @@ IceSavedPackageVersion >> = another [ ^ self commit = another commit ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> author [ ^ self info author ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> commit [ ^ commit ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> commit: anIceCommit [ commit := anIceCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> entry [ ^ entry ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> entry: anObject [ entry := anObject. entry repository: self repository ] -{ #category : #comparing } +{ #category : 'comparing' } IceSavedPackageVersion >> hash [ ^ self commit hash ] -{ #category : #'walk definition' } +{ #category : 'walk definition' } IceSavedPackageVersion >> hideYourselfFromCommitWalk: commitWalk [ commitWalk uptoCommit: self commit ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> info [ ^ info ifNil: [ info := IceMCVersionInfo new fromCommit: self commit package: package ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> info: anObject [ info := anObject ] -{ #category : #comparing } +{ #category : 'comparing' } IceSavedPackageVersion >> isAncestorOf: anotherVersion [ ^ self commit isAncestorOf: anotherVersion commit ] -{ #category : #comparing } +{ #category : 'comparing' } IceSavedPackageVersion >> isAncestorOfCommitId: anotherCommitId [ ^ self commit isAncestorOf: (self repository lookupCommit: anotherCommitId) ] -{ #category : #comparing } +{ #category : 'comparing' } IceSavedPackageVersion >> isNewerThan: another [ ^ self info timeStamp > another info timeStamp ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IceSavedPackageVersion >> lookupSnapshot [ ^ commit snapshotForPackage: self package ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IceSavedPackageVersion >> mcPackage [ ^ package mcPackage ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IceSavedPackageVersion >> mcSnapshot [ ^ self mcVersion snapshot ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IceSavedPackageVersion >> mcVersion [ ^ commit mcVersionFor: self ] -{ #category : #actions } +{ #category : 'actions' } IceSavedPackageVersion >> merge [ self mcVersion merge ] -{ #category : #patches } +{ #category : 'patches' } IceSavedPackageVersion >> nextVersionName [ ^ ('{1}-{2}.{3}' format: { self package packageName. @@ -144,22 +146,22 @@ IceSavedPackageVersion >> nextVersionName [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> package [ ^ package ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> package: anObject [ package := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> packageName [ ^ self package name ] -{ #category : #printing } +{ #category : 'printing' } IceSavedPackageVersion >> printOn: aStream [ aStream print: self class; nextPut: $(; @@ -179,18 +181,18 @@ IceSavedPackageVersion >> printOn: aStream [ ] -{ #category : #accessing } +{ #category : 'accessing' } IceSavedPackageVersion >> repository [ ^ self package repository ] -{ #category : #'accessing - monticello' } +{ #category : 'accessing - monticello' } IceSavedPackageVersion >> snapshot [ "compatibility method" ^ self mcSnapshot ] -{ #category : #patches } +{ #category : 'patches' } IceSavedPackageVersion >> updated [ ^ self ] diff --git a/Iceberg/IceShouldCommitBeforePull.class.st b/Iceberg/IceShouldCommitBeforePull.class.st index 41842de6cd..4f3eb4f8fa 100644 --- a/Iceberg/IceShouldCommitBeforePull.class.st +++ b/Iceberg/IceShouldCommitBeforePull.class.st @@ -3,17 +3,19 @@ I'm thrown when an attempt to pull was made and there are changes in the image. This is a resumable error because user may want to do it anyway. " Class { - #name : #IceShouldCommitBeforePull, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceShouldCommitBeforePull', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceShouldCommitBeforePull >> acceptError: anObject [ anObject visitShouldCommitBeforePullError: self ] -{ #category : #private } +{ #category : 'private' } IceShouldCommitBeforePull >> isResumable [ ^ true ] diff --git a/Iceberg/IceSshCredentials.class.st b/Iceberg/IceSshCredentials.class.st index 34e85663cd..6f3dd01c33 100644 --- a/Iceberg/IceSshCredentials.class.st +++ b/Iceberg/IceSshCredentials.class.st @@ -2,125 +2,127 @@ I am a container for the credentials needed for connecting to a git repository via ssh/scp. " Class { - #name : #IceSshCredentials, - #superclass : #IceAbstractCredentials, + #name : 'IceSshCredentials', + #superclass : 'IceAbstractCredentials', #instVars : [ 'username', 'publicKey', 'privateKey', 'keyPassphrase' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials class >> defaultPrivateKey [ self flag: #pharoTodo. "In fact this is different for windows. We need to change this." ^ (FileLocator home asFileReference / '.ssh' / 'id_ed25519') pathString ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials class >> defaultPublicKey [ self flag: #pharoTodo. "In fact this is different for windows. We need to change this." ^ (FileLocator home asFileReference / '.ssh' / 'id_ed25519.pub') pathString ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials class >> defaultUsername [ ^ 'git' ] -{ #category : #printing } +{ #category : 'printing' } IceSshCredentials >> description [ ^ 'User: ' , self username , ' Public: ' , self publicKey , ' Private: ' , self privateKey ] -{ #category : #printing } +{ #category : 'printing' } IceSshCredentials >> hostDescription [ ^ host = #'*' ifTrue: [ 'Default' ] ifFalse: [ host ] ] -{ #category : #testing } +{ #category : 'testing' } IceSshCredentials >> isDefault [ ^ host = #'*' ] -{ #category : #testing } +{ #category : 'testing' } IceSshCredentials >> isPresent [ ^ self username notEmpty and: [ self publicKey notEmpty and: [ self privateKey notEmpty ] ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> keyPassphrase [ ^ keyPassphrase ifNil: [ keyPassphrase := '' ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> keyPassphrase: anObject [ keyPassphrase := anObject. self storeIfDefault. ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> privateKey [ ^ privateKey ifNil: [ privateKey := self class defaultPrivateKey ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> privateKey: anObject [ privateKey := anObject. self storeIfDefault. ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> publicKey [ ^ publicKey ifNil: [ publicKey := self class defaultPublicKey ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> publicKey: anObject [ publicKey := anObject. self storeIfDefault. ] -{ #category : #'private - storing' } +{ #category : 'private - storing' } IceSshCredentials >> removeFrom: aStore [ aStore removeSSHCredential: self. ] -{ #category : #'private - storing' } +{ #category : 'private - storing' } IceSshCredentials >> storeIfDefault [ self isDefault ifFalse: [ ^ self ]. IceCredentialStore current storeCredential: self. ] -{ #category : #'API - storing' } +{ #category : 'API - storing' } IceSshCredentials >> storeInto: aCredentialStore forHostname: aHost [ host := aHost. aCredentialStore storeSshCredential: self forHostname: aHost ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> type [ ^ 'SSH Keys' ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> username [ ^ username ifNil: [ username := self class defaultUsername ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceSshCredentials >> username: anObject [ username := anObject ] diff --git a/Iceberg/IceSystemEventListener.class.st b/Iceberg/IceSystemEventListener.class.st index ed1f4e01fc..1eae7b3a34 100644 --- a/Iceberg/IceSystemEventListener.class.st +++ b/Iceberg/IceSystemEventListener.class.st @@ -5,12 +5,14 @@ I'm mainly used to mark as dirty packages whose methods and classes are modified I'm implemented as class side methods to avoid memory leaks and problems when unsubscribing to events. " Class { - #name : #IceSystemEventListener, - #superclass : #Object, - #category : #'Iceberg-Changes' + #name : 'IceSystemEventListener', + #superclass : 'Object', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'event handling' } +{ #category : 'event handling' } IceSystemEventListener class >> handleClassChange: aClassChange [ "We should take care not only about the class package but also the package of the methods extending that class." @@ -18,19 +20,19 @@ IceSystemEventListener class >> handleClassChange: aClassChange [ ] -{ #category : #'event handling' } +{ #category : 'event handling' } IceSystemEventListener class >> handleMethodChange: aMethodChange [ self handlePackagesChange: aMethodChange packagesAffected ] -{ #category : #'event handling' } +{ #category : 'event handling' } IceSystemEventListener class >> handlePackageChange: aPackageChange [ self handlePackagesChange: aPackageChange packagesAffected ] -{ #category : #'event handling' } +{ #category : 'event handling' } IceSystemEventListener class >> handlePackagesChange: packages [ IceRepository registry do: [ :repository | | changed | @@ -39,7 +41,7 @@ IceSystemEventListener class >> handlePackagesChange: packages [ changed ifTrue: [ Iceberg announcer announce: (IceRepositoryModified for: repository) ]] ] -{ #category : #'event handling' } +{ #category : 'event handling' } IceSystemEventListener class >> handleVersionLoaded: ann [ "When monticello finishes to load a package, we need to verify its status to mark them as dirty or not dirty as they apply." @@ -68,13 +70,13 @@ IceSystemEventListener class >> handleVersionLoaded: ann [ Iceberg announcer announce: (IceRepositoryModified for: repository) ] ]] ] -{ #category : #'class initialization' } +{ #category : 'class initialization' } IceSystemEventListener class >> initialize [ self registerSystemAnnouncements ] -{ #category : #'class initialization' } +{ #category : 'class initialization' } IceSystemEventListener class >> registerSystemAnnouncements [ self unregisterSystemAnnouncements. @@ -85,7 +87,7 @@ IceSystemEventListener class >> registerSystemAnnouncements [ when: MCVersionLoaderStopped send: #handleVersionLoaded: to: self. ] -{ #category : #'class initialization' } +{ #category : 'class initialization' } IceSystemEventListener class >> unregisterSystemAnnouncements [ SystemAnnouncer uniqueInstance unsubscribe: self diff --git a/Iceberg/IceTag.class.st b/Iceberg/IceTag.class.st index 86d8c3d0d7..f766f8e87a 100644 --- a/Iceberg/IceTag.class.st +++ b/Iceberg/IceTag.class.st @@ -2,70 +2,72 @@ Representation of a tag " Class { - #name : #IceTag, - #superclass : #IceCommitish, + #name : 'IceTag', + #superclass : 'IceCommitish', #instVars : [ 'name', 'commit' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceTag class >> named: aTagName inRepository: anIceRepository [ ^ self new name: aTagName; repository: anIceRepository; yourself ] -{ #category : #querying } +{ #category : 'querying' } IceTag >> commit [ ^ commit ifNil: [ commit := self repository peelTag: self ] ] -{ #category : #'API - tags' } +{ #category : 'API - tags' } IceTag >> delete [ self repository removeTag: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceTag >> fileSystem [ ^ self commit fileSystem ] -{ #category : #accessing } +{ #category : 'accessing' } IceTag >> gitRef [ ^ self name ] -{ #category : #testing } +{ #category : 'testing' } IceTag >> isTag [ ^ true ] -{ #category : #querying } +{ #category : 'querying' } IceTag >> lastCommit [ ^ self repository backend revparseCommit: self name ] -{ #category : #accessing } +{ #category : 'accessing' } IceTag >> name [ ^ name ] -{ #category : #accessing } +{ #category : 'accessing' } IceTag >> name: anObject [ name := anObject ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceTag >> newCommitWalk [ ^ repository newCommitWalk fromTag: self ] -{ #category : #printing } +{ #category : 'printing' } IceTag >> printOn: aStream [ aStream @@ -74,12 +76,12 @@ IceTag >> printOn: aStream [ print: self name ] -{ #category : #querying } +{ #category : 'querying' } IceTag >> versionFor: package [ ^ self commit versionFor: package ] -{ #category : #accessing } +{ #category : 'accessing' } IceTag >> versionsFor: package [ ^ self commit versionsFor: package ] diff --git a/Iceberg/IceTagAlreadyExists.class.st b/Iceberg/IceTagAlreadyExists.class.st index d0f6a8448f..a55e521376 100644 --- a/Iceberg/IceTagAlreadyExists.class.st +++ b/Iceberg/IceTagAlreadyExists.class.st @@ -1,24 +1,26 @@ Class { - #name : #IceTagAlreadyExists, - #superclass : #IceError, + #name : 'IceTagAlreadyExists', + #superclass : 'IceError', #instVars : [ 'tagName' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceTagAlreadyExists >> messageText [ ^ 'Tag {1} already exists' format: { tagName } ] -{ #category : #accessing } +{ #category : 'accessing' } IceTagAlreadyExists >> tagName [ ^ tagName ] -{ #category : #accessing } +{ #category : 'accessing' } IceTagAlreadyExists >> tagName: anObject [ tagName := anObject ] diff --git a/Iceberg/IceTagNotFound.class.st b/Iceberg/IceTagNotFound.class.st index e9fd1e7096..22d34753b3 100644 --- a/Iceberg/IceTagNotFound.class.st +++ b/Iceberg/IceTagNotFound.class.st @@ -1,13 +1,15 @@ Class { - #name : #IceTagNotFound, - #superclass : #IceError, + #name : 'IceTagNotFound', + #superclass : 'IceError', #instVars : [ 'tagName' ], - #category : 'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceTagNotFound >> tagName: aString [ tagName := aString ] diff --git a/Iceberg/IceTipCommitSettings.class.st b/Iceberg/IceTipCommitSettings.class.st index e677e7130f..55041b99bf 100644 --- a/Iceberg/IceTipCommitSettings.class.st +++ b/Iceberg/IceTipCommitSettings.class.st @@ -1,69 +1,71 @@ Class { - #name : #IceTipCommitSettings, - #superclass : #Object, + #name : 'IceTipCommitSettings', + #superclass : 'Object', #classInstVars : [ 'pushOnCommit', 'saveImageOnCommit', 'critiquesOnCommit' ], - #category : #'Iceberg-Settings' + #category : 'Iceberg-Settings', + #package : 'Iceberg', + #tag : 'Settings' } -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> critiquesOnCommit [ ^ critiquesOnCommit ifNil: [ critiquesOnCommit := self critiquesOnCommitDefaultValue ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> critiquesOnCommit: aBoolean [ critiquesOnCommit := aBoolean ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> critiquesOnCommitDefaultValue [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> pushOnCommit [ ^ pushOnCommit ifNil: [ pushOnCommit := self pushOnCommitDefaultValue ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> pushOnCommit: aBoolean [ pushOnCommit := aBoolean ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> pushOnCommitDefaultValue [ ^ false ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> saveImageOnCommit [ ^ saveImageOnCommit ifNil: [ saveImageOnCommit := self saveImageOnCommitDefaultValue ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> saveImageOnCommit: aBoolean [ saveImageOnCommit := aBoolean ] -{ #category : #accessing } +{ #category : 'accessing' } IceTipCommitSettings class >> saveImageOnCommitDefaultValue [ ^ true ] -{ #category : #settings } +{ #category : 'settings' } IceTipCommitSettings class >> settingsOn: aBuilder [ diff --git a/Iceberg/IceTokenCredentials.class.st b/Iceberg/IceTokenCredentials.class.st index 986e84ae97..2f31bb936b 100644 --- a/Iceberg/IceTokenCredentials.class.st +++ b/Iceberg/IceTokenCredentials.class.st @@ -8,31 +8,33 @@ I implement authentication credentials via OAUTH-like token. " Class { - #name : #IceTokenCredentials, - #superclass : #IceAbstractCredentials, + #name : 'IceTokenCredentials', + #superclass : 'IceAbstractCredentials', #instVars : [ 'token', 'username' ], - #category : #'Iceberg-Security' + #category : 'Iceberg-Security', + #package : 'Iceberg', + #tag : 'Security' } -{ #category : #printing } +{ #category : 'printing' } IceTokenCredentials >> description [ ^ 'User: ', username ] -{ #category : #printing } +{ #category : 'printing' } IceTokenCredentials >> hostDescription [ ^ host ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> isPresent [ ^ self token notEmpty ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> password [ "For git operations in GitHub, the token can be used as password. @@ -41,36 +43,36 @@ IceTokenCredentials >> password [ ^ token ] -{ #category : #removing } +{ #category : 'removing' } IceTokenCredentials >> removeFrom: anIceCredentialStore [ anIceCredentialStore removePlainTextCredential: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> token [ ^ token ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> token: aString [ token := aString ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> type [ ^ 'Token' ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> username [ ^ username ] -{ #category : #accessing } +{ #category : 'accessing' } IceTokenCredentials >> username: aString [ username := aString ] diff --git a/Iceberg/IceTraitDefinition.class.st b/Iceberg/IceTraitDefinition.class.st index 354af4d856..3b61370c49 100644 --- a/Iceberg/IceTraitDefinition.class.st +++ b/Iceberg/IceTraitDefinition.class.st @@ -6,25 +6,27 @@ My contents is the trait definition. See my superclasses for more information. " Class { - #name : #IceTraitDefinition, - #superclass : #IceMethodContainerDefinition, - #category : #'Iceberg-Changes' + #name : 'IceTraitDefinition', + #superclass : 'IceMethodContainerDefinition', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #comparing } +{ #category : 'comparing' } IceTraitDefinition >> = anotherDefinition [ ^ super = anotherDefinition and: [ mcDefinition = anotherDefinition asMCDefinition ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceTraitDefinition >> accept: aVisitor [ ^ aVisitor visitTraitDefinition: self ] -{ #category : #patching } +{ #category : 'patching' } IceTraitDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ "If the new definition has no class instance vaiables, we remove the meta side variables, and apply the new changes to the patcher " @@ -46,7 +48,7 @@ IceTraitDefinition >> addModification: anIceModification toPatcher: aMCPatcher [ to: anIceModification leftDefinition asMCDefinition ] -{ #category : #patching } +{ #category : 'patching' } IceTraitDefinition >> addToPatcher: aMCPatcher [ "We should not handle metaclasses if their mcDefinition is nil. @@ -58,18 +60,18 @@ IceTraitDefinition >> addToPatcher: aMCPatcher [ aMCPatcher addDefinition: self asMCDefinition ] -{ #category : #testing } +{ #category : 'testing' } IceTraitDefinition >> isTraitDefinition [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceTraitDefinition >> name [ ^ name , (isMeta ifTrue: [ ' classTrait' ] ifFalse: [ '' ]) ] -{ #category : #patching } +{ #category : 'patching' } IceTraitDefinition >> removeFromPatcher: aMCPatcher [ "We should not handle metaclasses. They will be added automatically when added the instance side" diff --git a/Iceberg/IceTraitDependency.class.st b/Iceberg/IceTraitDependency.class.st index ea895a34fd..6a20c7ee84 100644 --- a/Iceberg/IceTraitDependency.class.st +++ b/Iceberg/IceTraitDependency.class.st @@ -2,12 +2,14 @@ I am a dependency to a trait. " Class { - #name : #IceTraitDependency, - #superclass : #IceDefinedDependency, - #category : #'Iceberg-Cherrypicking' + #name : 'IceTraitDependency', + #superclass : 'IceDefinedDependency', + #category : 'Iceberg-Cherrypicking', + #package : 'Iceberg', + #tag : 'Cherrypicking' } -{ #category : #comparing } +{ #category : 'comparing' } IceTraitDependency >> = anObject [ "Answer whether the receiver and anObject represent the same object." @@ -15,37 +17,37 @@ IceTraitDependency >> = anObject [ and: [ self definition name = anObject definition name ] ] -{ #category : #comparing } +{ #category : 'comparing' } IceTraitDependency >> hash [ "Answer an integer value that is related to the identity of the receiver." ^ super hash bitXor: definition name hash. "^ definition hash" ] -{ #category : #visiting } +{ #category : 'visiting' } IceTraitDependency >> isDependencyTo: anIceTraitDefinition [ ^ anIceTraitDefinition name = definition name ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceTraitDependency >> referencedClasses [ ^ { } ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceTraitDependency >> referencedPackages [ ^ self definition asMCDefinition category ] -{ #category : #dependencies } +{ #category : 'dependencies' } IceTraitDependency >> referencedTraits [ ^ (((RBParser parseExpression: definition asMCDefinition traitComposition) allChildren select: #isVariable) collect: #name ) , self usedTraitsNames ] -{ #category : #accessing } +{ #category : 'accessing' } IceTraitDependency >> usedTraitsNames [ ^ self cherrypicker environment allUsingTraitNamed: self definition name diff --git a/Iceberg/IceTreeMerger.class.st b/Iceberg/IceTreeMerger.class.st index 79c4191dda..ee2e84c112 100644 --- a/Iceberg/IceTreeMerger.class.st +++ b/Iceberg/IceTreeMerger.class.st @@ -1,10 +1,12 @@ Class { - #name : #IceTreeMerger, - #superclass : #Object, - #category : #'Iceberg-Changes' + #name : 'IceTreeMerger', + #superclass : 'Object', + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #building } +{ #category : 'building' } IceTreeMerger >> merge: changeTree into: currentTree [ ^ changeTree collectWithPath: [ :operation :path | diff --git a/Iceberg/IceTreeVisitor.class.st b/Iceberg/IceTreeVisitor.class.st index 576a81d2af..2db24239ed 100644 --- a/Iceberg/IceTreeVisitor.class.st +++ b/Iceberg/IceTreeVisitor.class.st @@ -2,27 +2,29 @@ I implement a basic tree visitor for Iceberg trees implemented through IceNode " Class { - #name : #IceTreeVisitor, - #superclass : #Object, + #name : 'IceTreeVisitor', + #superclass : 'Object', #instVars : [ 'currentNode' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #testing } +{ #category : 'testing' } IceTreeVisitor class >> isAbstract [ ^ self == IceTreeVisitor ] -{ #category : #visiting } +{ #category : 'visiting' } IceTreeVisitor >> visitChildrenOf: anIceNode [ anIceNode childrenDo: [ :each | each accept: self ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceTreeVisitor >> visitConflictingOperation: anIceConflictingOperation [ anIceConflictingOperation isResolved @@ -31,20 +33,20 @@ IceTreeVisitor >> visitConflictingOperation: anIceConflictingOperation [ ^ anIceConflictingOperation chosenOperation accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceTreeVisitor >> visitEmptyNode: anIceEmptyNode [ "Do nothing by default" ] -{ #category : #visiting } +{ #category : 'visiting' } IceTreeVisitor >> visitTreeNode: anIceNode [ self withNode: anIceNode do: [ anIceNode value accept: self ] ] -{ #category : #visiting } +{ #category : 'visiting' } IceTreeVisitor >> withNode: anIceNode do: aBlockClosure [ | previousNode | diff --git a/Iceberg/IceUnbornBranch.class.st b/Iceberg/IceUnbornBranch.class.st index b28c830511..8b8aed2749 100644 --- a/Iceberg/IceUnbornBranch.class.st +++ b/Iceberg/IceUnbornBranch.class.st @@ -2,18 +2,20 @@ I am an unborn branch. I exist only on a new repository that has no commits inside. I manage the special case of a first repository commit and branch creation. " Class { - #name : #IceUnbornBranch, - #superclass : #IceCommitish, - #category : #'Iceberg-Core' + #name : 'IceUnbornBranch', + #superclass : 'IceCommitish', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #comparing } +{ #category : 'comparing' } IceUnbornBranch >> = anotherBranch [ ^ anotherBranch isUnbornBranch ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceUnbornBranch >> changesFromCommit: anIceNoCommit [ "I am an unborn branch. This means the repository is not yet created and the commit is a no-commit" @@ -21,61 +23,61 @@ IceUnbornBranch >> changesFromCommit: anIceNoCommit [ ^ #() ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnbornBranch >> checkout: aCheckoutStreategy [ "Do nothing. An unborn branch is already HEAD" ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnbornBranch >> commit [ ^ IceNoCommit repository: repository ] -{ #category : #printing } +{ #category : 'printing' } IceUnbornBranch >> description [ ^ self name ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> hasIncomingCommits [ ^ self hasIncomingCommitsFrom: self repository origin ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> hasIncomingCommitsFrom: aRemote [ aRemote fetch. ^ aRemote hasRemoteBranchNamed: self name ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> hasOutgoingCommits [ ^ false ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> hasOutgoingCommitsTo: aRemote [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> hasUpstream [ ^ false ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> incomingCommits [ "I am unborn. I have no commits" ^ #() ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> incomingCommitsFrom: aRemote [ | remoteBranch | remoteBranch := aRemote remoteBranchNamed: self name ifAbsent: [ ^ #() ]. @@ -84,67 +86,67 @@ IceUnbornBranch >> incomingCommitsFrom: aRemote [ commits ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> isBranch [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> isHead [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> isLocal [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> isRemote [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornBranch >> isUnbornBranch [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnbornBranch >> name [ self subclassResponsibility ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceUnbornBranch >> newCommitWalk [ ^ IceNullCommitWalk new ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> outgoingCommits [ "I am unborn. I have no commits" ^ #() ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceUnbornBranch >> packageNames [ ^ #() ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> pull [ self pullFrom: repository origin ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> pullFrom: aRemote [ "This is a special operation: this branch is unborn. @@ -162,26 +164,26 @@ IceUnbornBranch >> pullFrom: aRemote [ repository createBranch: self name inCommit: remoteBranch commit. ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> push [ "Do nothing" ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> pushTo: aRemote [ "Do Nothing" ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceUnbornBranch >> snapshotFor: anIceSavedPackage [ "I am an unborn branch, I have no code, so my snapshot is empty" ^ MCSnapshot empty ] -{ #category : #'API - remotes' } +{ #category : 'API - remotes' } IceUnbornBranch >> tracksRemoteBranch [ ^ false diff --git a/Iceberg/IceUnbornProject.class.st b/Iceberg/IceUnbornProject.class.st index 928582a475..9907dfec5b 100644 --- a/Iceberg/IceUnbornProject.class.st +++ b/Iceberg/IceUnbornProject.class.st @@ -1,22 +1,24 @@ Class { - #name : #IceUnbornProject, - #superclass : #IceAbstractProject, - #category : 'Iceberg-Project' + #name : 'IceUnbornProject', + #superclass : 'IceAbstractProject', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #testing } +{ #category : 'testing' } IceUnbornProject >> isUnborn [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceUnbornProject >> readOnlyVersion [ ^ IceInvalidProject onCommitish: commitish ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnbornProject >> sourceDirectory [ "Tricky method. diff --git a/Iceberg/IceUnbornProjectReader.class.st b/Iceberg/IceUnbornProjectReader.class.st index 11f9153f96..72d09e0366 100644 --- a/Iceberg/IceUnbornProjectReader.class.st +++ b/Iceberg/IceUnbornProjectReader.class.st @@ -2,26 +2,28 @@ I create unborn projects from a commitish if it is HEAD and it does not have a '.project' file. " Class { - #name : #IceUnbornProjectReader, - #superclass : #IceProjectReader, - #category : 'Iceberg-Project' + #name : 'IceUnbornProjectReader', + #superclass : 'IceProjectReader', + #category : 'Iceberg-Project', + #package : 'Iceberg', + #tag : 'Project' } -{ #category : #testing } +{ #category : 'testing' } IceUnbornProjectReader >> canReadProjectFromCommitish: aCommitish [ ^ aCommitish isWorkingCopy and: [ (aCommitish fileSystem / '.project') exists not ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnbornProjectReader >> priority [ "The unborn project reader should be the default one in case no other matches" ^ 100000 ] -{ #category : #reading } +{ #category : 'reading' } IceUnbornProjectReader >> readProjectFromCommitish: anIceCommitish [ ^ IceUnbornProject onCommitish: anIceCommitish diff --git a/Iceberg/IceUndefinedRemote.class.st b/Iceberg/IceUndefinedRemote.class.st index 1201846f2d..d1612512a0 100644 --- a/Iceberg/IceUndefinedRemote.class.st +++ b/Iceberg/IceUndefinedRemote.class.st @@ -2,17 +2,19 @@ I am a null object representing a not found remote. I'm mainly used for polimorphism when the well known remote 'origin' is not found in the repository. " Class { - #name : #IceUndefinedRemote, - #superclass : #IceRemote, - #category : 'Iceberg-Core' + #name : 'IceUndefinedRemote', + #superclass : 'IceRemote', + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #testing } +{ #category : 'testing' } IceUndefinedRemote class >> canHandleUrl: aRepositoryUrl [ ^ false ] -{ #category : #fetching } +{ #category : 'fetching' } IceUndefinedRemote >> fetch [ IceRemoteNotFoundError new @@ -20,12 +22,12 @@ IceUndefinedRemote >> fetch [ signal: 'Please configure a pull remote for pulling.' ] -{ #category : #accessing } +{ #category : 'accessing' } IceUndefinedRemote >> host [ ^ nil ] -{ #category : #initialization } +{ #category : 'initialization' } IceUndefinedRemote >> initialize [ super initialize. url := 'No remote url'. @@ -33,12 +35,12 @@ IceUndefinedRemote >> initialize [ name := 'No remote' ] -{ #category : #testing } +{ #category : 'testing' } IceUndefinedRemote >> isUndefined [ ^ true ] -{ #category : #accessing } +{ #category : 'accessing' } IceUndefinedRemote >> upstreamForBranch: aBranch backend: backend [ ^ nil ] diff --git a/Iceberg/IceUnknownCommit.class.st b/Iceberg/IceUnknownCommit.class.st index e37280bfe3..848f5b14a9 100644 --- a/Iceberg/IceUnknownCommit.class.st +++ b/Iceberg/IceUnknownCommit.class.st @@ -2,16 +2,18 @@ I represent an commit that cannot be found in the current repository. I have a commit id/hash, but that commit was not fetched (or was wrongly set). Once the real commit is fetched, I'll be becomed into a real commit. " Class { - #name : #IceUnknownCommit, - #superclass : #IceCommitish, + #name : 'IceUnknownCommit', + #superclass : 'IceCommitish', #instVars : [ 'id', 'datetime' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'API - working copy' } +{ #category : 'API - working copy' } IceUnknownCommit >> adopt [ "Low level. @@ -20,12 +22,12 @@ IceUnknownCommit >> adopt [ self repository workingCopy adoptCommit: self ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceUnknownCommit >> changesFromCommit: anIceGitCommit [ ^ anIceGitCommit changesFromNoCommit: self ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceUnknownCommit >> changesTo: aCommitish [ aCommitish = self @@ -33,82 +35,82 @@ IceUnknownCommit >> changesTo: aCommitish [ ^ aCommitish changesFromNoCommit: self ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> comment [ ^ '' ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> commit [ self shouldBeImplemented. ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> compatibleUsername [ ^ 'CompatibleUserName' ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> datetime [ ^ datetime ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> description [ ^ 'Unknown {1}' format: { self shortId } ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> fileSystem [ ^ FileSystem memory root ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> id [ ^ id ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> id: anObject [ id := anObject ] -{ #category : #initialization } +{ #category : 'initialization' } IceUnknownCommit >> initialize [ super initialize. datetime := DateAndTime now ] -{ #category : #testing } +{ #category : 'testing' } IceUnknownCommit >> isNoCommit [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceUnknownCommit >> isParentOf: aCommit [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceUnknownCommit >> isUnknownCommit [ ^ true ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceUnknownCommit >> project [ ^ repository newUnbornProject ] -{ #category : #accessing } +{ #category : 'accessing' } IceUnknownCommit >> shortId [ ^ self id first: 7 diff --git a/Iceberg/IceUnknownVersionWorkingCopy.class.st b/Iceberg/IceUnknownVersionWorkingCopy.class.st index 9789ca614f..29047e0f37 100644 --- a/Iceberg/IceUnknownVersionWorkingCopy.class.st +++ b/Iceberg/IceUnknownVersionWorkingCopy.class.st @@ -1,22 +1,24 @@ Class { - #name : #IceUnknownVersionWorkingCopy, - #superclass : #IceWorkingCopyState, - #category : 'Iceberg-WorkingCopy' + #name : 'IceUnknownVersionWorkingCopy', + #superclass : 'IceWorkingCopyState', + #category : 'Iceberg-WorkingCopy', + #package : 'Iceberg', + #tag : 'WorkingCopy' } -{ #category : #testing } +{ #category : 'testing' } IceUnknownVersionWorkingCopy >> description [ ^ 'Fetch required. ', self referenceCommit description ] -{ #category : #testing } +{ #category : 'testing' } IceUnknownVersionWorkingCopy >> isDetached [ ^ true ] -{ #category : #testing } +{ #category : 'testing' } IceUnknownVersionWorkingCopy >> isUnknownCommitState [ ^ true diff --git a/Iceberg/IceUpstreamNotConfigured.class.st b/Iceberg/IceUpstreamNotConfigured.class.st index 96d5b40b14..b4199fbffe 100644 --- a/Iceberg/IceUpstreamNotConfigured.class.st +++ b/Iceberg/IceUpstreamNotConfigured.class.st @@ -1,5 +1,7 @@ Class { - #name : #IceUpstreamNotConfigured, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceUpstreamNotConfigured', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/IceUrlBuilder.class.st b/Iceberg/IceUrlBuilder.class.st index fc3c4ef35a..7a35319fd4 100644 --- a/Iceberg/IceUrlBuilder.class.st +++ b/Iceberg/IceUrlBuilder.class.st @@ -1,45 +1,47 @@ Class { - #name : #IceUrlBuilder, - #superclass : #Object, + #name : 'IceUrlBuilder', + #superclass : 'Object', #instVars : [ 'host', 'protocol', 'path' ], - #category : 'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> beBitbucket [ self host: 'bitbucket.org' ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> beGitLab [ self host: 'gitlab.com' ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> beGithub [ self host: 'github.com' ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> beHttps [ protocol := IceHttpsProtocol new ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> beSsh [ protocol := IceSSHProtocol new ] -{ #category : #building } +{ #category : 'building' } IceUrlBuilder >> buildUrl [ ^ protocol @@ -47,22 +49,22 @@ IceUrlBuilder >> buildUrl [ repositoryPath: path ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> host: aString [ host := aString ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> path: aString [ path := aString ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> protocol: aProtocol [ protocol := aProtocol ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlBuilder >> username: aUsername project: aProject [ path := aUsername, '/', aProject diff --git a/Iceberg/IceUrlProtocol.class.st b/Iceberg/IceUrlProtocol.class.st index 8a9936aa48..78d9a8fe48 100644 --- a/Iceberg/IceUrlProtocol.class.st +++ b/Iceberg/IceUrlProtocol.class.st @@ -1,22 +1,24 @@ Class { - #name : #IceUrlProtocol, - #superclass : #Object, - #category : 'Iceberg-Url' + #name : 'IceUrlProtocol', + #superclass : 'Object', + #category : 'Iceberg-Url', + #package : 'Iceberg', + #tag : 'Url' } -{ #category : #'accessing - defaults' } +{ #category : 'accessing - defaults' } IceUrlProtocol class >> defaultProtocol [ ^ IceSSHProtocol ] -{ #category : #accessing } +{ #category : 'accessing' } IceUrlProtocol class >> description [ ^ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceUrlProtocol class >> isAbstract [ ^ self == IceUrlProtocol diff --git a/Iceberg/IceVersionDoesNotExist.class.st b/Iceberg/IceVersionDoesNotExist.class.st index e0d1c65d4f..9d70926a09 100644 --- a/Iceberg/IceVersionDoesNotExist.class.st +++ b/Iceberg/IceVersionDoesNotExist.class.st @@ -2,15 +2,17 @@ Version does not exist, probably the package was created in a later commit or it was deleted. " Class { - #name : #IceVersionDoesNotExist, - #superclass : #IceError, + #name : 'IceVersionDoesNotExist', + #superclass : 'IceError', #instVars : [ 'version' ], - #category : 'Iceberg-Errors' + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #accessing } +{ #category : 'accessing' } IceVersionDoesNotExist >> messageText [ ^ 'There is no version for package: {1} in commit {2}' format: { @@ -19,12 +21,12 @@ IceVersionDoesNotExist >> messageText [ } ] -{ #category : #accessing } +{ #category : 'accessing' } IceVersionDoesNotExist >> version [ ^ version ] -{ #category : #accessing } +{ #category : 'accessing' } IceVersionDoesNotExist >> version: anObject [ version := anObject ] diff --git a/Iceberg/IceWorkingCopy.class.st b/Iceberg/IceWorkingCopy.class.st index be188eb427..8d7a44daba 100644 --- a/Iceberg/IceWorkingCopy.class.st +++ b/Iceberg/IceWorkingCopy.class.st @@ -82,8 +82,8 @@ The main entry point for merging a commit is the working copy, through the metho IMPORTANT IMPLEMENTATION NOTE. The version information and commits are so far stored inside MCWorkingCopy and co. Check #updatePackage:toCommits: " Class { - #name : #IceWorkingCopy, - #superclass : #Object, + #name : 'IceWorkingCopy', + #superclass : 'Object', #instVars : [ 'repository', 'packages', @@ -92,10 +92,12 @@ Class { 'project', 'properties' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceWorkingCopy class >> fromWorkingCopy: aWorkingCopy [ ^ self basicNew repository: aWorkingCopy repository; @@ -104,7 +106,7 @@ IceWorkingCopy class >> fromWorkingCopy: aWorkingCopy [ yourself ] -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceWorkingCopy class >> repository: repository [ ^ self basicNew repository: repository; @@ -112,26 +114,26 @@ IceWorkingCopy class >> repository: repository [ yourself ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> addPackage: aPackage [ self basicAddPackage: aPackage. aPackage beDirty. ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> addPackageNamed: aString [ self addPackage: (IcePackage named: aString asSymbol repository: repository) beDirty ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> addPackages: aCollection [ aCollection keysDo: [ :each | self addPackageNamed: each ] ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> adoptCommit: aCommit [ | oldCommit | @@ -147,7 +149,7 @@ IceWorkingCopy >> adoptCommit: aCommit [ ifFalse: [ self forceCalculateDirtyPackages. ] ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceWorkingCopy >> applyDefinition: anIceDefinition inNode: aNode [ | loader | @@ -159,13 +161,13 @@ IceWorkingCopy >> applyDefinition: anIceDefinition inNode: aNode [ loader load ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> basicAddPackage: aPackage [ self packagesDictionary at: aPackage name put: aPackage. ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> basicRemovePackage: aPackage [ self packagesDictionary @@ -173,19 +175,19 @@ IceWorkingCopy >> basicRemovePackage: aPackage [ ifAbsent: [] ] -{ #category : #'private - project' } +{ #category : 'private - project' } IceWorkingCopy >> basicSetProject: aProject [ project := aProject ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> canRevertChanges [ ^ true ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceWorkingCopy >> changesFromCommit: anIceCommit [ "Image changes should be taken into account before changes in the repository" ^ (self modifiedPackages collect: [ :each | @@ -193,13 +195,13 @@ IceWorkingCopy >> changesFromCommit: anIceCommit [ (self referenceCommit changesFromCommit: anIceCommit) asArray ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceWorkingCopy >> changesFromNoCommit: anIceNoCommit [ ^ self packages collect: [ :each | IceImageChange package: each ] ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> changesTo: aCommitish [ | removedPackages changes | @@ -217,19 +219,19 @@ IceWorkingCopy >> changesTo: aCommitish [ ^ changes ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> checkout: aCheckoutStrategy [ aCheckoutStrategy checkoutOn: self ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> commitChanges: aDiff withMessage: message [ ^ self commitChanges: aDiff withMessage: message force: false ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> commitChanges: aDiff withMessage: message force: forcing [ "Creates a commit with the given changes using the comment given as argument. @@ -255,7 +257,7 @@ IceWorkingCopy >> commitChanges: aDiff withMessage: message force: forcing [ ^ newCommit ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> commitWithMessage: aString [ "Creates a commit with all changed code using the comment given as argument. @@ -269,19 +271,19 @@ IceWorkingCopy >> commitWithMessage: aString [ withMessage: aString ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceWorkingCopy >> commonAncestorWith: aCommitish [ ^ self referenceCommit commonAncestorWith: aCommitish ] -{ #category : #'API - history' } +{ #category : 'API - history' } IceWorkingCopy >> commonAncestorWithCommit: aCommitish [ ^ self referenceCommit commonAncestorWithCommit: aCommitish ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> diffTo: aCommitish [ ^ IceDiff @@ -289,19 +291,19 @@ IceWorkingCopy >> diffTo: aCommitish [ to: aCommitish commit ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> diffToReferenceCommit [ ^ self diffTo: self referenceCommit ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> discardChanges [ self discardChanges: self diffToReferenceCommit tree ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> discardChanges: aTree [ self loadChangesInWorkingCopy: (aTree collect: [ :definition | @@ -309,13 +311,13 @@ IceWorkingCopy >> discardChanges: aTree [ self refreshDirtyPackages ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> fileSystem [ ^ repository location ifNil: [ FileSystem memory root ] ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> forceCalculateDirtyPackages [ | diff | @@ -328,21 +330,21 @@ IceWorkingCopy >> forceCalculateDirtyPackages [ package beDirty: (diff includesPackageNamed: package name) ]. ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> hasSingleCommit [ "Returns true if all loaded packages were loaded from the single same commit" ^ self workingCopyState isSingleCommitState ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> hasUnknownCommit [ "Returns true if we couldn't calculate a single commit or a merge situation" ^ self workingCopyState isUnknownCommitState ] -{ #category : #'private - packages' } +{ #category : 'private - packages' } IceWorkingCopy >> ignoreNotificationsDuring: aBlock [ "While the working copy is loading code, it should ignore modifications to avoid circular refreshes" @@ -352,19 +354,19 @@ IceWorkingCopy >> ignoreNotificationsDuring: aBlock [ aBlock ensure: [ shouldIgnoreNotifications := oldValue ] ] -{ #category : #'private - packages' } +{ #category : 'private - packages' } IceWorkingCopy >> includesInWorkingCopyPackageNamed: aString [ ^ (self packagesDictionary includesKey: aString) and: [ (self packageNamed: aString) isLoaded ] ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> includesPackageNamed: aString [ "true if is in image or is in commit" ^ self includesInWorkingCopyPackageNamed: aString ] -{ #category : #initialization } +{ #category : 'initialization' } IceWorkingCopy >> initialize [ super initialize. @@ -376,7 +378,7 @@ IceWorkingCopy >> initialize [ properties := referenceCommit properties asBornProperties ] -{ #category : #initialization } +{ #category : 'initialization' } IceWorkingCopy >> initializePackagesFromRepository [ "If no reference commit was configured, we adopt the head commit" | commitToAdopt | @@ -386,49 +388,49 @@ IceWorkingCopy >> initializePackagesFromRepository [ self adoptCommit: commitToAdopt. ] -{ #category : #'API - merging' } +{ #category : 'API - merging' } IceWorkingCopy >> isCommitMerged: aCommit [ ^ self workingCopyState isCommitMerged: aCommit ] -{ #category : #validating } +{ #category : 'validating' } IceWorkingCopy >> isDetached [ ^ self workingCopyState isDetached ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> isInMerge [ "Returns true if all the repository packages are in merge between the same commits." ^ self workingCopyState isInMerge ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> isLoadedPackageNamed: aString [ ^ self packageOrganizer hasPackage: aString ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> isModified [ ^ self project isDirty or: [ self loadedPackages anySatisfy: [ :e | e isDirty ] ] ] -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopy >> isWorkingCopy [ ^ true ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> loadAllPackages [ self loadPackagesNamed: repository head packageNames ] -{ #category : #'private - changes' } +{ #category : 'private - changes' } IceWorkingCopy >> loadChangesInWorkingCopy: aTree [ | visitor | @@ -441,19 +443,19 @@ IceWorkingCopy >> loadChangesInWorkingCopy: aTree [ ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> loadPackageNamed: aString [ self loadPackagesNamed: { aString } ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> loadPackageNamed: aString fromCommit: aCommit [ self loadPackagesNamed: { aString } fromCommit: aCommit ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> loadPackagesNamed: aCollection [ self @@ -461,7 +463,7 @@ IceWorkingCopy >> loadPackagesNamed: aCollection [ fromCommit: self repository head commit ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceWorkingCopy >> loadPackagesNamed: aCollection fromCommit: aCommit [ aCollection ifEmpty: [ ^ self ]. @@ -480,33 +482,33 @@ IceWorkingCopy >> loadPackagesNamed: aCollection fromCommit: aCommit [ loader load ] ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> loadedPackages [ ^ self packages select: #isLoaded ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> markAllPackagesAsClean [ self markAsCleanPackagesThat: [ :each | true ] ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> markAsCleanPackagesNotInDiff: aDiff [ self markAsCleanPackagesThat: [ :package | (aDiff includesPackageNamed: package name) not ] ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> markAsCleanPackagesThat: aBlock [ self modifiedPackages do: [ :each | (aBlock value: each) ifTrue: [ each beClean ] ] ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> markAsDirtyPackageNamed: aPackageName [ (self packageNamed: aPackageName) beDirty @@ -514,7 +516,7 @@ IceWorkingCopy >> markAsDirtyPackageNamed: aPackageName [ ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceWorkingCopy >> mcVersionFor: anIceSavedPackageVersion [ | mcPackage mcWorkingCopy | @@ -527,19 +529,19 @@ IceWorkingCopy >> mcVersionFor: anIceSavedPackageVersion [ dependencies: #() ] -{ #category : #'API - merging' } +{ #category : 'API - merging' } IceWorkingCopy >> mergeCommit: aCommit [ ^ self workingCopyState mergeCommit: aCommit ] -{ #category : #'API - changes' } +{ #category : 'API - changes' } IceWorkingCopy >> modifiedPackages [ ^ self loadedPackages select: [ :e | e isDirty ] ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> notifyPackageModified: aString [ self flag: #pharoTodo. "we cannot use #includesPackageNamed: as is because it can happen that a package is present in a commit but not in image yet?" @@ -555,56 +557,56 @@ IceWorkingCopy >> notifyPackageModified: aString [ ^ false ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> packageNamed: aString [ ^ self packagesDictionary at: aString ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> packageNames [ ^ self packagesDictionary keys ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> packages [ ^ self packagesDictionary values ] -{ #category : #'private - packages' } +{ #category : 'private - packages' } IceWorkingCopy >> packagesDictionary [ ^ packages ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceWorkingCopy >> project [ "For backwards compatibility, if we don't find a project, take the project from HEAD" ^ project ifNil: [ self refreshProjectFromRepository ] ] -{ #category : #'API - project' } +{ #category : 'API - project' } IceWorkingCopy >> project: anIceProject [ self basicSetProject: anIceProject. self refreshProject. ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceWorkingCopy >> properties [ ^ properties ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> referenceCommit [ ^ referenceCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> referenceCommit: aCommit [ self referenceCommit = aCommit @@ -614,7 +616,7 @@ IceWorkingCopy >> referenceCommit: aCommit [ self refreshProjectFromRepository ] -{ #category : #'API - commits' } +{ #category : 'API - commits' } IceWorkingCopy >> referenceCommits [ "Returns a collection with all current loaded commits. If we are in a single commit state, return a collection with only one element." @@ -622,12 +624,12 @@ IceWorkingCopy >> referenceCommits [ ^ { referenceCommit } ] -{ #category : #'API - packages' } +{ #category : 'API - packages' } IceWorkingCopy >> refreshDirtyPackages [ self markAsCleanPackagesNotInDiff: self repository workingCopyDiff ] -{ #category : #'private - packages' } +{ #category : 'private - packages' } IceWorkingCopy >> refreshPackages [ | commitPackages | commitPackages := self referenceCommit isCollection @@ -641,14 +643,14 @@ IceWorkingCopy >> refreshPackages [ ] -{ #category : #'private - project' } +{ #category : 'private - project' } IceWorkingCopy >> refreshProject [ repository commitsInPackageCache: nil. self refreshPackages ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> refreshProjectFromRepository [ | commitToCheck maybeProject | @@ -665,14 +667,14 @@ IceWorkingCopy >> refreshProjectFromRepository [ ^ project ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceWorkingCopy >> refreshRepositoryProperties [ properties := self referenceCommit properties asBornProperties. ] -{ #category : #'private - impacting changes' } +{ #category : 'private - impacting changes' } IceWorkingCopy >> removeClassNamed: aString [ "Impact the system. @@ -680,52 +682,52 @@ IceWorkingCopy >> removeClassNamed: aString [ (Smalltalk globals at: aString ifAbsent: [ ^ self ]) removeFromSystem ] -{ #category : #'private - impacting changes' } +{ #category : 'private - impacting changes' } IceWorkingCopy >> removeMethod: anIceMethodDefinition [ anIceMethodDefinition asMCDefinition unload ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> repository: anObject [ repository := anObject ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceWorkingCopy >> repositoryProperties [ ^ properties ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> rootFileReference [ ^ repository location ] -{ #category : #'private - commits' } +{ #category : 'private - commits' } IceWorkingCopy >> setMergeStateBetweenCommits: aCollection [ self referenceCommit: aCollection ] -{ #category : #'private - notifications' } +{ #category : 'private - notifications' } IceWorkingCopy >> shouldIgnoreNotifications [ ^ shouldIgnoreNotifications = true ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceWorkingCopy >> snapshotFor: package [ ^ (self versionFor: package) snapshot ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceWorkingCopy >> snapshotForPackage: aPackage [ ^ aPackage isLoaded @@ -733,27 +735,27 @@ IceWorkingCopy >> snapshotForPackage: aPackage [ ifFalse: [ self referenceCommit snapshotForPackage: aPackage ] ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> unload [ "Unload all code loaded into the image that belong to this repository" self loadedPackages do: [ :each | self unloadPackage: each ] ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> unloadPackage: aPackage [ aPackage mcWorkingCopy ifNotNil: #unload ] -{ #category : #'API - loading' } +{ #category : 'API - loading' } IceWorkingCopy >> unloadPackageNamed: aPackageName [ self unloadPackage: (IcePackage named: aPackageName repository: repository) ] -{ #category : #validating } +{ #category : 'validating' } IceWorkingCopy >> validateCanCommit [ "Verify sync between image version and working copy" "If there are incomming commits is out of sync" @@ -765,13 +767,13 @@ IceWorkingCopy >> validateCanCommit [ self workingCopyState validateCanCommit ] -{ #category : #'private - monticello' } +{ #category : 'private - monticello' } IceWorkingCopy >> versionFor: package [ ^ IceSavedPackageVersion fromCommit: self package: package ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopy >> workingCopyState [ "The working copy can be in different states depending on the repository and the package. It is the working copy state reponsibility to decide wether we can commit, if we are on a merge, and so on... The working copy state can be obtained through the message #workingCopyState. @@ -793,7 +795,7 @@ The working copy state is calculated every time that it is called. This is becau ^ IceAttachedSingleVersionWorkingCopy repository: repository ] -{ #category : #'API - properties' } +{ #category : 'API - properties' } IceWorkingCopy >> writerClass [ ^ self referenceCommit writerClass diff --git a/Iceberg/IceWorkingCopyDesyncronized.class.st b/Iceberg/IceWorkingCopyDesyncronized.class.st index ab9ad3308c..fa2710daaf 100644 --- a/Iceberg/IceWorkingCopyDesyncronized.class.st +++ b/Iceberg/IceWorkingCopyDesyncronized.class.st @@ -3,12 +3,14 @@ I indicate when a working copy is desyncronized. It means the version I have in the image is different to the version I have in the working copy. " Class { - #name : #IceWorkingCopyDesyncronized, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceWorkingCopyDesyncronized', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyDesyncronized >> acceptError: anObject [ anObject visitWorkingCopyDesynchronizedError: self ] diff --git a/Iceberg/IceWorkingCopyPatcherVisitor.class.st b/Iceberg/IceWorkingCopyPatcherVisitor.class.st index 126ce97911..a1f5089e43 100644 --- a/Iceberg/IceWorkingCopyPatcherVisitor.class.st +++ b/Iceberg/IceWorkingCopyPatcherVisitor.class.st @@ -2,122 +2,124 @@ I visit a tree of changes and apply those changes to the working copy. " Class { - #name : #IceWorkingCopyPatcherVisitor, - #superclass : #IceTreeVisitor, + #name : 'IceWorkingCopyPatcherVisitor', + #superclass : 'IceTreeVisitor', #instVars : [ 'repository', 'loader' ], - #category : #'Iceberg-Changes' + #category : 'Iceberg-Changes', + #package : 'Iceberg', + #tag : 'Changes' } -{ #category : #'instance creation' } +{ #category : 'instance creation' } IceWorkingCopyPatcherVisitor class >> on: aRepository [ ^ self new repository: aRepository; yourself ] -{ #category : #initialization } +{ #category : 'initialization' } IceWorkingCopyPatcherVisitor >> initialize [ super initialize. loader := MCPackageLoader new ] -{ #category : #loading } +{ #category : 'loading' } IceWorkingCopyPatcherVisitor >> load [ loader load ] -{ #category : #actions } +{ #category : 'actions' } IceWorkingCopyPatcherVisitor >> removeClass: anIceClassDefinition [ repository workingCopy removeClassNamed: anIceClassDefinition name ] -{ #category : #removing } +{ #category : 'removing' } IceWorkingCopyPatcherVisitor >> removeFile: anIceFileDefinition [ "I do not remove nothing from the file in the image" ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> removeFileReferenceInPath: anUndefinedObject [ "I do not remove nothing from the file in the image" ] -{ #category : #actions } +{ #category : 'actions' } IceWorkingCopyPatcherVisitor >> removeMethod: anIceMethodDefinition [ repository workingCopy removeMethod: anIceMethodDefinition ] -{ #category : #operations } +{ #category : 'operations' } IceWorkingCopyPatcherVisitor >> removePackage: anIcePackageDefinition [ repository workingCopy unloadPackageNamed: anIcePackageDefinition name ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyPatcherVisitor >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyPatcherVisitor >> repository: anObject [ repository := anObject ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitAddition: anIceAddition [ repository workingCopy applyDefinition: anIceAddition definition inNode: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitClassDefinition: anIceClassDefinition [ repository workingCopy applyDefinition: anIceClassDefinition inNode: currentNode. self visitChildrenOf: currentNode. ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitDirectoryDefinition: anIceDirectoryDefinition [ self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitFileNode: anIceFileDefinition [ "Ignore files, they are not loaded in the image" ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitMethodNode: anIceMethodDefinition [ repository workingCopy applyDefinition: anIceMethodDefinition inNode: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitModification: anIceModification [ anIceModification definition accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitNoModification: anIceNoModification [ anIceNoModification definition accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitNonConflictingOperation: anIceNonConflictingOperation [ ^ anIceNonConflictingOperation chosenOperation accept: self ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitPackage: anIcePackageDefinition [ (self repository packageNamed: anIcePackageDefinition name) isLoaded @@ -128,14 +130,14 @@ IceWorkingCopyPatcherVisitor >> visitPackage: anIcePackageDefinition [ yourself). ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitRemoval: anIceRemoval [ anIceRemoval definition removeFrom: self. self visitChildrenOf: currentNode ] -{ #category : #visiting } +{ #category : 'visiting' } IceWorkingCopyPatcherVisitor >> visitRootDefinition: anIceRootDefinition [ self visitChildrenOf: currentNode diff --git a/Iceberg/IceWorkingCopyState.class.st b/Iceberg/IceWorkingCopyState.class.st index 21ddef1be1..21bcef3801 100644 --- a/Iceberg/IceWorkingCopyState.class.st +++ b/Iceberg/IceWorkingCopyState.class.st @@ -2,21 +2,23 @@ I represent the state of a working copy. I have several methods to combine myself with package states and generate new working copy states. " Class { - #name : #IceWorkingCopyState, - #superclass : #Object, + #name : 'IceWorkingCopyState', + #superclass : 'Object', #instVars : [ 'repository' ], - #category : #'Iceberg-WorkingCopy' + #category : 'Iceberg-WorkingCopy', + #package : 'Iceberg', + #tag : 'WorkingCopy' } -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopyState class >> isAbstract [ ^ self == IceWorkingCopyState ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyState class >> repository: aRepository [ ^ self new @@ -24,77 +26,77 @@ IceWorkingCopyState class >> repository: aRepository [ yourself ] -{ #category : #displaying } +{ #category : 'displaying' } IceWorkingCopyState >> description [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopyState >> isCommitMerged: aCommit [ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopyState >> isDetached [ ^ self subclassResponsibility ] -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopyState >> isInMerge [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopyState >> isSingleCommitState [ ^ false ] -{ #category : #testing } +{ #category : 'testing' } IceWorkingCopyState >> isUnknownCommitState [ ^ false ] -{ #category : #merging } +{ #category : 'merging' } IceWorkingCopyState >> mergeCommit: aCommit [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyState >> referenceCommit [ ^ repository workingCopy referenceCommit ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyState >> referenceCommits [ ^ { self referenceCommit } ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyState >> repository [ ^ repository ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyState >> repository: anIceLibgitRepository [ repository := anIceLibgitRepository ] -{ #category : #validating } +{ #category : 'validating' } IceWorkingCopyState >> validateCanCommit [ self subclassResponsibility ] -{ #category : #accessing } +{ #category : 'accessing' } IceWorkingCopyState >> workingCopy [ ^ repository workingCopy diff --git a/Iceberg/IceWrongUrl.class.st b/Iceberg/IceWrongUrl.class.st index f2cf8a413e..d3f25e9f65 100644 --- a/Iceberg/IceWrongUrl.class.st +++ b/Iceberg/IceWrongUrl.class.st @@ -2,7 +2,9 @@ We can not parse the origin URL you have introduced. Maybe you made a typo, or maybe we do not support that kind of URLs. " Class { - #name : #IceWrongUrl, - #superclass : #IceError, - #category : 'Iceberg-Errors' + #name : 'IceWrongUrl', + #superclass : 'IceError', + #category : 'Iceberg-Errors', + #package : 'Iceberg', + #tag : 'Errors' } diff --git a/Iceberg/Iceberg.class.st b/Iceberg/Iceberg.class.st index 8d4d8587cd..4bce23fd51 100644 --- a/Iceberg/Iceberg.class.st +++ b/Iceberg/Iceberg.class.st @@ -15,8 +15,8 @@ Internal Representation and Key Implementation Points. Implementation Points " Class { - #name : #Iceberg, - #superclass : #Object, + #name : 'Iceberg', + #superclass : 'Object', #classVars : [ 'EnableMetacelloIntegration', 'RemoteTypeSelector', @@ -25,15 +25,17 @@ Class { #classInstVars : [ 'icebergAnnouncer' ], - #category : #'Iceberg-Core' + #category : 'Iceberg-Core', + #package : 'Iceberg', + #tag : 'Core' } -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> announcer [ ^ icebergAnnouncer ifNil: [ icebergAnnouncer := IceAnnouncer new ] ] -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> bootstrap [ | metacelloRegistrationEntry | metacelloRegistrationEntry := MetacelloProjectRegistration registry baselineRegistry at: 'BaselineOfIceberg'. @@ -42,7 +44,7 @@ Iceberg class >> bootstrap [ packageList: (metacelloRegistrationEntry baselineProjectSpec version packages collect: #name) ] -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> bootstrapWithCommitId: commitId packageList: packageNameList [ | commit repository | @@ -64,17 +66,17 @@ Iceberg class >> bootstrapWithCommitId: commitId packageList: packageNameList [ repository register ] -{ #category : #settings } +{ #category : 'settings' } Iceberg class >> enableMetacelloIntegration [ ^ EnableMetacelloIntegration ifNil: [ EnableMetacelloIntegration := true ] ] -{ #category : #settings } +{ #category : 'settings' } Iceberg class >> enableMetacelloIntegration: anObject [ EnableMetacelloIntegration := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> icebergRepositoriesURLs [ ^ { 'git@github.com:pharo-vcs/iceberg.git'. @@ -83,12 +85,12 @@ Iceberg class >> icebergRepositoriesURLs [ } ] -{ #category : #'class initialization' } +{ #category : 'class initialization' } Iceberg class >> initialize [ self initializeSettings ] -{ #category : #'class initialization' } +{ #category : 'class initialization' } Iceberg class >> initializeSettings [ Smalltalk at: #SystemSettingsPersistence @@ -98,31 +100,23 @@ Iceberg class >> initializeSettings [ class updateSettingNodes: nodes ] ] -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> mcRepositoryFor: aLocationString [ ^ (IceMetacelloRepositoryType for: aLocationString) mcRepository ] -{ #category : #accessing } -Iceberg class >> packageForCategoryNamed: categoryName [ - | systemPackage | - systemPackage := RPackageOrganizer default packageMatchingExtensionName: categoryName. - ^ self packageNamed: systemPackage name - -] - -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> remoteTypeSelector [ "Should be #scpURL or #httpsURL" ^ RemoteTypeSelector ifNil: [ RemoteTypeSelector := #scpUrl ] ] -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> remoteTypeSelector: anObject [ RemoteTypeSelector := anObject ] -{ #category : #accessing } +{ #category : 'accessing' } Iceberg class >> repositoryForPackage: anRPackage [ | existingRepositories possibleRepositoryTypes | @@ -137,7 +131,7 @@ Iceberg class >> repositoryForPackage: anRPackage [ self error: ('Could not find a git repository for {1}' format: { anRPackage name }) ] -{ #category : #settings } +{ #category : 'settings' } Iceberg class >> settingsOn: aBuilder [ (aBuilder group: #Iceberg) @@ -158,17 +152,17 @@ Iceberg class >> settingsOn: aBuilder [ ('HTTP (http://github.com//.git)' -> #httpUrl)} ] ] ] -{ #category : #settings } +{ #category : 'settings' } Iceberg class >> showSystemRepositories [ ^ ShowSystemRepositories ifNil: [ ShowSystemRepositories := false ] ] -{ #category : #settings } +{ #category : 'settings' } Iceberg class >> showSystemRepositories: aBoolean [ ShowSystemRepositories := aBoolean ] -{ #category : #updating } +{ #category : 'updating' } Iceberg class >> update [ #(Iceberg LGitRepository MCFileTreeGitRepository) do: [:className | Smalltalk diff --git a/Iceberg/LGitCommit.extension.st b/Iceberg/LGitCommit.extension.st index f688b0d450..bcab6164f7 100644 --- a/Iceberg/LGitCommit.extension.st +++ b/Iceberg/LGitCommit.extension.st @@ -1,11 +1,11 @@ -Extension { #name : #LGitCommit } +Extension { #name : 'LGitCommit' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } LGitCommit >> asIcebergObjectInRepository: iceRepository [ ^ iceRepository commitFromGitCommit: self ] -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } LGitCommit >> changesFileNamed: fileName [ | lookup myVersion parentVersions | lookup := [:commit | [ commit entryByPath: fileName ] on: Error do: [ nil ]]. diff --git a/Iceberg/LGitCredentialsPlaintext.extension.st b/Iceberg/LGitCredentialsPlaintext.extension.st index fdd34eb4e5..5d2fa22a8f 100644 --- a/Iceberg/LGitCredentialsPlaintext.extension.st +++ b/Iceberg/LGitCredentialsPlaintext.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #LGitCredentialsPlaintext } +Extension { #name : 'LGitCredentialsPlaintext' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } LGitCredentialsPlaintext >> readFrom: credentials [ self username: credentials username. self passphrase: credentials password. diff --git a/Iceberg/LGitCredentialsSSH.extension.st b/Iceberg/LGitCredentialsSSH.extension.st index befaa13078..9c6525cb93 100644 --- a/Iceberg/LGitCredentialsSSH.extension.st +++ b/Iceberg/LGitCredentialsSSH.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #LGitCredentialsSSH } +Extension { #name : 'LGitCredentialsSSH' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } LGitCredentialsSSH >> readFrom: credentials [ self username: credentials username. self passphrase: credentials keyPassphrase. diff --git a/Iceberg/LGitDiff.extension.st b/Iceberg/LGitDiff.extension.st index 6bf355909e..c4d2dd2652 100644 --- a/Iceberg/LGitDiff.extension.st +++ b/Iceberg/LGitDiff.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #LGitDiff } +Extension { #name : 'LGitDiff' } -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } LGitDiff >> files [ | deltaFiles | @@ -11,13 +11,13 @@ LGitDiff >> files [ ^ deltaFiles ] -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } LGitDiff >> filesDo: aBlockClosure [ ^ self filesDo: aBlockClosure binaryFilesDo: aBlockClosure hunksDo: nil linesDo: nil ] -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } LGitDiff >> includesFileNamed: path [ ^ (self filesDo: [ :delta :second :third | | modifiedFileName | diff --git a/Iceberg/LGitReturnCodeEnum.extension.st b/Iceberg/LGitReturnCodeEnum.extension.st index a3b731c410..c0799fb2b3 100644 --- a/Iceberg/LGitReturnCodeEnum.extension.st +++ b/Iceberg/LGitReturnCodeEnum.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #LGitReturnCodeEnum } +Extension { #name : 'LGitReturnCodeEnum' } -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } LGitReturnCodeEnum >> asBoolean [ ^ self value = 0 ifTrue: false ifFalse: [ self value = 1 ifTrue: true ifFalse: diff --git a/Iceberg/LGitTag.extension.st b/Iceberg/LGitTag.extension.st index b6d6a208a1..544e7c375b 100644 --- a/Iceberg/LGitTag.extension.st +++ b/Iceberg/LGitTag.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #LGitTag } +Extension { #name : 'LGitTag' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } LGitTag >> asIcebergObjectInRepository: backend [ ^ IceTag named: self name inRepository: backend ] diff --git a/Iceberg/LGitTreeEntry.extension.st b/Iceberg/LGitTreeEntry.extension.st index eabe9f7b9d..fe0fa2ebf3 100644 --- a/Iceberg/LGitTreeEntry.extension.st +++ b/Iceberg/LGitTreeEntry.extension.st @@ -1,16 +1,16 @@ -Extension { #name : #LGitTreeEntry } +Extension { #name : 'LGitTreeEntry' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } LGitTreeEntry >> name [ ^ self filename ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } LGitTreeEntry >> readStreamDo: aBlock [ ^ aBlock value: (ReadStream on: self object contents asString) ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } LGitTreeEntry >> tree [ ^ self object ] diff --git a/Iceberg/MCAddition.extension.st b/Iceberg/MCAddition.extension.st index 2b1bdf77a8..ea963353cb 100644 --- a/Iceberg/MCAddition.extension.st +++ b/Iceberg/MCAddition.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCAddition } +Extension { #name : 'MCAddition' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCAddition >> myVersionOn: aDiff [ ^ aDiff versionFromDefinition: definition diff --git a/Iceberg/MCBitbucketRepository.extension.st b/Iceberg/MCBitbucketRepository.extension.st index 3958ebf29d..47c622ae3b 100644 --- a/Iceberg/MCBitbucketRepository.extension.st +++ b/Iceberg/MCBitbucketRepository.extension.st @@ -1,11 +1,11 @@ -Extension { #name : #MCBitbucketRepository } +Extension { #name : 'MCBitbucketRepository' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCBitbucketRepository >> httpsUrl [ ^ 'https://bitbucket.org/', projectPath, '.git' ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCBitbucketRepository >> scpUrl [ ^ 'git@bitbucket.org:', projectPath, '.git' ] diff --git a/Iceberg/MCClassDefinition.extension.st b/Iceberg/MCClassDefinition.extension.st index 581c69fc43..8b636ac077 100644 --- a/Iceberg/MCClassDefinition.extension.st +++ b/Iceberg/MCClassDefinition.extension.st @@ -1,13 +1,13 @@ -Extension { #name : #MCClassDefinition } +Extension { #name : 'MCClassDefinition' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCClassDefinition >> classCategory [ "Avoid direct use of #category, because MCClassDefinitions and MCMethodDefinition use the same message for different things. " ^ self category ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCClassDefinition >> fullDefinitionString [ ^ String streamContents: [:stream | self printDefinitionOn: stream. @@ -15,7 +15,7 @@ MCClassDefinition >> fullDefinitionString [ stream << self comment ] ] -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCClassDefinition >> removeMetaSideVariables [ variables := variables reject: [ :e | e isClassInstanceVariable ]. diff --git a/Iceberg/MCClassTraitDefinition.extension.st b/Iceberg/MCClassTraitDefinition.extension.st index 5bdc618bbd..7ad0bde0a7 100644 --- a/Iceberg/MCClassTraitDefinition.extension.st +++ b/Iceberg/MCClassTraitDefinition.extension.st @@ -1,11 +1,11 @@ -Extension { #name : #MCClassTraitDefinition } +Extension { #name : 'MCClassTraitDefinition' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCClassTraitDefinition >> classCategory [ ^ self category ] -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } MCClassTraitDefinition >> traitComposition [ ^ self classTraitComposition ] diff --git a/Iceberg/MCDefinition.extension.st b/Iceberg/MCDefinition.extension.st index 7b92581d8a..8ffd5440ce 100644 --- a/Iceberg/MCDefinition.extension.st +++ b/Iceberg/MCDefinition.extension.st @@ -1,17 +1,17 @@ -Extension { #name : #MCDefinition } +Extension { #name : 'MCDefinition' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCDefinition >> addAnalysisToPackageChangeSet: aPackageChangeSet change: aChange [ aPackageChangeSet addChange: aChange ] -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCDefinition >> buildOn: anIceDiffBuilder [ self subclassResponsibility ] -{ #category : #'*Iceberg-changes' } +{ #category : '*Iceberg-changes' } MCDefinition >> isFileDefinition [ ^ false diff --git a/Iceberg/MCGitBasedNetworkRepository.extension.st b/Iceberg/MCGitBasedNetworkRepository.extension.st index fbea2db0ee..8437426b82 100644 --- a/Iceberg/MCGitBasedNetworkRepository.extension.st +++ b/Iceberg/MCGitBasedNetworkRepository.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCGitBasedNetworkRepository } +Extension { #name : 'MCGitBasedNetworkRepository' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitBasedNetworkRepository >> createIcebergRepositoryFor: remoteUrl [ | builder repository | builder := IceRepositoryCreator new @@ -22,7 +22,7 @@ MCGitBasedNetworkRepository >> createIcebergRepositoryFor: remoteUrl [ ^ repository ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitBasedNetworkRepository >> createIcebergRepositoryWithFallbackFor: remote url: remoteUrl [ | urlToUse | @@ -34,7 +34,7 @@ MCGitBasedNetworkRepository >> createIcebergRepositoryWithFallbackFor: remote ur ^ self createIcebergRepositoryFor: urlToUse ] ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitBasedNetworkRepository >> getOrCreateIcebergRepository [ | remoteUrl | @@ -46,13 +46,13 @@ MCGitBasedNetworkRepository >> getOrCreateIcebergRepository [ self createIcebergRepositoryWithFallbackFor: remote url: remoteUrl ] ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitBasedNetworkRepository >> httpUrl [ ^ self httpsUrl copyReplaceAll: 'https://' with: 'http://' ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitBasedNetworkRepository >> httpsUrl [ self subclassResponsibility diff --git a/Iceberg/MCGitHubRepository.extension.st b/Iceberg/MCGitHubRepository.extension.st index 5ae1e2d3fe..0c6f750239 100644 --- a/Iceberg/MCGitHubRepository.extension.st +++ b/Iceberg/MCGitHubRepository.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCGitHubRepository } +Extension { #name : 'MCGitHubRepository' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCGitHubRepository >> commitId [ "This kind of repo is associated to a specific commit that was downloaded, sadly the only way to know it is to parse the directory name." @@ -9,7 +9,7 @@ MCGitHubRepository >> commitId [ ^ repoRoot basename copyAfterLast: $-. ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCGitHubRepository class >> commitIdFor: aWorkingCopy [ ^ aWorkingCopy repositoryGroup repositories detect: [ :repo | repo isKindOf: self ] @@ -18,18 +18,18 @@ MCGitHubRepository class >> commitIdFor: aWorkingCopy [ ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCGitHubRepository >> commitIdFor: aMCWorkingCopy ifFound: aBlockClosure [ (aMCWorkingCopy repositoryGroup includes: self) ifTrue: [ aBlockClosure value: self commitId ] ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCGitHubRepository >> httpsUrl [ ^ 'https://github.com/', projectPath, '.git' ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCGitHubRepository >> scpUrl [ ^ 'git@github.com:', projectPath, '.git' ] diff --git a/Iceberg/MCGitlabRepository.extension.st b/Iceberg/MCGitlabRepository.extension.st index 30f4edfb0d..85d4ffcfc2 100644 --- a/Iceberg/MCGitlabRepository.extension.st +++ b/Iceberg/MCGitlabRepository.extension.st @@ -1,11 +1,11 @@ -Extension { #name : #MCGitlabRepository } +Extension { #name : 'MCGitlabRepository' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitlabRepository >> httpsUrl [ ^ 'https://<1s>/<2s>.git' expandMacrosWith: self hostname with: projectPath ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCGitlabRepository >> scpUrl [ "If the sshPort is not nil it means that we have a non default ssh port. Thus we need to add `ssh://` and th port number to the scheme" diff --git a/Iceberg/MCMethodDefinition.extension.st b/Iceberg/MCMethodDefinition.extension.st index 81e82b3c0e..11c41461d0 100644 --- a/Iceberg/MCMethodDefinition.extension.st +++ b/Iceberg/MCMethodDefinition.extension.st @@ -1,17 +1,17 @@ -Extension { #name : #MCMethodDefinition } +Extension { #name : 'MCMethodDefinition' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCMethodDefinition >> buildOn: anIcePackageDiff [ self shouldBeImplemented. ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCMethodDefinition >> classCategory [ ^ self actualClass ifNotNil: #category ifNil: [ RPackage defaultPackageName ] ] -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCMethodDefinition >> method [ ^ self actualClass >> self selector ] diff --git a/Iceberg/MCModification.extension.st b/Iceberg/MCModification.extension.st index 989f5661e9..fc5f066656 100644 --- a/Iceberg/MCModification.extension.st +++ b/Iceberg/MCModification.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCModification } +Extension { #name : 'MCModification' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCModification >> asIceOperationOn: aNode diff: anIceDiff [ ^ MCModification @@ -8,7 +8,7 @@ MCModification >> asIceOperationOn: aNode diff: anIceDiff [ to: aNode ] -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCModification >> myVersionOn: aDiff [ ^ aDiff versionFromDefinition: modification diff --git a/Iceberg/MCOrganizationDefinition.extension.st b/Iceberg/MCOrganizationDefinition.extension.st index 9627db29c2..16ee3d611a 100644 --- a/Iceberg/MCOrganizationDefinition.extension.st +++ b/Iceberg/MCOrganizationDefinition.extension.st @@ -1,20 +1,11 @@ -Extension { #name : #MCOrganizationDefinition } +Extension { #name : 'MCOrganizationDefinition' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCOrganizationDefinition >> addAnalysisToPackageChangeSet: aPackageChangeSet change: aChange [ aPackageChangeSet addOrganisationChange: aChange ] -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } MCOrganizationDefinition >> iceClass [ ^ nil ] - -{ #category : #'*Iceberg-Core' } -MCOrganizationDefinition >> icePackage [ - "TODO: Refactor this, see https://github.com/npasserini/iceberg/issues/42" - self categories - ifNotEmpty: [ ^ Iceberg packageForCategoryNamed: (self categories anyOne) ] - ifEmpty: nil - -] diff --git a/Iceberg/MCPatchOperation.extension.st b/Iceberg/MCPatchOperation.extension.st index c08e078887..98247cd427 100644 --- a/Iceberg/MCPatchOperation.extension.st +++ b/Iceberg/MCPatchOperation.extension.st @@ -1,12 +1,12 @@ -Extension { #name : #MCPatchOperation } +Extension { #name : 'MCPatchOperation' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCPatchOperation >> asIceOperationOn: aNode diff: anIceDiff [ ^ MCAddition of: aNode ] -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCPatchOperation >> myVersionOn: aDiff [ self subclassResponsibility diff --git a/Iceberg/MCPatcher.extension.st b/Iceberg/MCPatcher.extension.st index 87e3ce21e8..f30390e57f 100644 --- a/Iceberg/MCPatcher.extension.st +++ b/Iceberg/MCPatcher.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCPatcher } +Extension { #name : 'MCPatcher' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCPatcher >> definitions [ ^ definitions ] diff --git a/Iceberg/MCPostscriptDefinition.extension.st b/Iceberg/MCPostscriptDefinition.extension.st index b50be03676..738352dab2 100644 --- a/Iceberg/MCPostscriptDefinition.extension.st +++ b/Iceberg/MCPostscriptDefinition.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCPostscriptDefinition } +Extension { #name : 'MCPostscriptDefinition' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCPostscriptDefinition >> addToPackageChangeSet: anIcePackageChangeSet [ "By doing nothing, this definition will not be shown in the changes tree." ] diff --git a/Iceberg/MCRemoval.extension.st b/Iceberg/MCRemoval.extension.st index 679e934eaa..c369ece39b 100644 --- a/Iceberg/MCRemoval.extension.st +++ b/Iceberg/MCRemoval.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCRemoval } +Extension { #name : 'MCRemoval' } -{ #category : #'*Iceberg-Changes' } +{ #category : '*Iceberg-Changes' } MCRemoval >> myVersionOn: aDiff [ ^ nil diff --git a/Iceberg/MCRepository.extension.st b/Iceberg/MCRepository.extension.st index 285c02c429..868ca6e212 100644 --- a/Iceberg/MCRepository.extension.st +++ b/Iceberg/MCRepository.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCRepository } +Extension { #name : 'MCRepository' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCRepository >> commitIdFor: aMCWorkingCopy ifFound: aBlockClosure [ "Do nothing. By default MCRepositories can not provide a commitId for you." ] diff --git a/Iceberg/MCVersion.extension.st b/Iceberg/MCVersion.extension.st index d9d773667a..c5c6b51a60 100644 --- a/Iceberg/MCVersion.extension.st +++ b/Iceberg/MCVersion.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MCVersion } +Extension { #name : 'MCVersion' } -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCVersion >> directoryName [ ^ (MCFileTreeRepository parseName: self info name) first , '.package' ] diff --git a/Iceberg/MCWorkingCopy.extension.st b/Iceberg/MCWorkingCopy.extension.st index 4c28ec236b..0f5ad52273 100644 --- a/Iceberg/MCWorkingCopy.extension.st +++ b/Iceberg/MCWorkingCopy.extension.st @@ -1,17 +1,17 @@ -Extension { #name : #MCWorkingCopy } +Extension { #name : 'MCWorkingCopy' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCWorkingCopy >> ancestry: anAncestry [ ancestry := anAncestry ] -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } MCWorkingCopy >> info [ ^ self versionInfo ] -{ #category : #'*Iceberg-Adapters' } +{ #category : '*Iceberg-Adapters' } MCWorkingCopy >> loadedVersion [ self ancestors do: [ :ancestor | (self repositoryGroup diff --git a/Iceberg/ManifestIceberg.class.st b/Iceberg/ManifestIceberg.class.st index 4c3ae850de..70fc6e94e1 100644 --- a/Iceberg/ManifestIceberg.class.st +++ b/Iceberg/ManifestIceberg.class.st @@ -2,12 +2,14 @@ I store metadata for this package. These meta data are used by other tools such as the SmalllintManifestChecker and the critics Browser " Class { - #name : #ManifestIceberg, - #superclass : #PackageManifest, - #category : 'Iceberg-Manifest' + #name : 'ManifestIceberg', + #superclass : 'PackageManifest', + #category : 'Iceberg-Manifest', + #package : 'Iceberg', + #tag : 'Manifest' } -{ #category : #'meta-data' } +{ #category : 'meta-data' } ManifestIceberg class >> description [ ^ 'Iceberg is a set of tools that allow one to handle git repositories directly from a Pharo image. Right now we support only git, but Iceberg is designed to allow other code versioning systems in the future. The final aim of Iceberg is to become the default repository manager for Pharo-core, allowing for smoother and faster integration of contributions, as well as better branch and version management. @@ -17,17 +19,17 @@ Repository : https://github.com/pharo-vcs/iceberg This package contains the core classes of Iceberg.' ] -{ #category : #'code-critics' } +{ #category : 'code-critics' } ManifestIceberg class >> ruleRBRefersToClassRuleV1FalsePositive [ ^ #(#(#(#RGMethodDefinition #(#'IceRepository class' #isAbstract #true)) #'2018-03-13T18:40:58.956177+01:00') ) ] -{ #category : #'code-critics' } +{ #category : 'code-critics' } ManifestIceberg class >> ruleRBTempsReadBeforeWrittenRuleV1FalsePositive [ ^ #(#(#(#RGMethodDefinition #(#IceRepository #outgoingCommits #false)) #'2016-06-16T17:24:18.524965+02:00') #(#(#RGMethodDefinition #(#IceMCGitRepository #outgoingCommits #false)) #'2016-07-06T15:14:46.350843+02:00') ) ] -{ #category : #'code-critics' } +{ #category : 'code-critics' } ManifestIceberg class >> ruleRBUtilityMethodsRuleV1FalsePositive [ ^ #(#(#(#RGMethodDefinition #(#IceRepository #fetchFrom: #false)) #'2018-03-13T16:34:52.218313+01:00') ) ] diff --git a/Iceberg/MetacelloResolveProjectUpgrade.extension.st b/Iceberg/MetacelloResolveProjectUpgrade.extension.st index 70f9852f2b..2e8d7ce87f 100644 --- a/Iceberg/MetacelloResolveProjectUpgrade.extension.st +++ b/Iceberg/MetacelloResolveProjectUpgrade.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #MetacelloResolveProjectUpgrade } +Extension { #name : 'MetacelloResolveProjectUpgrade' } -{ #category : #'*Iceberg-Metacello' } +{ #category : '*Iceberg-Metacello' } MetacelloResolveProjectUpgrade >> projectName [ ^ self existingProjectRegistration projectName diff --git a/Iceberg/RPackage.extension.st b/Iceberg/RPackage.extension.st index 168af6c0a7..1a6e62a79a 100644 --- a/Iceberg/RPackage.extension.st +++ b/Iceberg/RPackage.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #RPackage } +Extension { #name : 'RPackage' } -{ #category : #'*Iceberg-Core' } +{ #category : '*Iceberg-Core' } RPackage >> iceRepository [ ^ Iceberg repositoryForPackage: self diff --git a/Iceberg/RPackageSet.extension.st b/Iceberg/RPackageSet.extension.st index 2a8028056f..56f893dab4 100644 --- a/Iceberg/RPackageSet.extension.st +++ b/Iceberg/RPackageSet.extension.st @@ -1,6 +1,6 @@ -Extension { #name : #RPackageSet } +Extension { #name : 'RPackageSet' } -{ #category : #'*Iceberg' } +{ #category : '*Iceberg' } RPackageSet class >> withoutCacheDo: aBlock [ | oldActive | diff --git a/Iceberg/package.st b/Iceberg/package.st index a1d1c177c4..cbcccdb2c3 100644 --- a/Iceberg/package.st +++ b/Iceberg/package.st @@ -1 +1 @@ -Package { #name : #Iceberg } +Package { #name : 'Iceberg' }