|
Class: SourceCodeManagerUtilities
Object
|
+--SourceCodeManagerUtilities
|
+--DataBaseSourceCodeManagerUtilities
|
+--PerforceSourceCodeManagerUtilities
|
+--SourceCodeManagerUtilitiesForContainerBasedManagers
|
+--SourceCodeManagerUtilitiesForWorkspaceBasedManagers
- Package:
- stx:libbasic3
- Category:
- System-SourceCodeManagement
- Version:
- rev:
1.430
date: 2024/02/29 13:38:55
- user: cg
- file: SourceCodeManagerUtilities.st directory: libbasic3
- module: stx stc-classLibrary: libbasic3
utility code which is useful at more than one place
(extracted from the browser)
[instance variables:]
[class variables:]
copyrightCOPYRIGHT (c) 2000 eXept Software AG
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
Signal constants
-
yesToAllNotification
-
-
yesToAllQuery
-
accessing
-
default
-
-
lastModule
-
return the value of the static variable 'LastModule' (automatically generated)
-
lastModule: something
-
set the value of the static variable 'LastModule' (automatically generated)
-
lastPackage
-
return the value of the static variable 'LastPackage' (automatically generated)
-
lastPackage: something
-
set the value of the static variable 'LastPackage' (automatically generated)
error handling
-
doesNotUnderstand: aMessage
-
Bad, method moved to instance side but not forwarded
instance creation
-
forManager: aSourceCodeManager
-
-
new
-
return an initialized instance
private-migration
-
compileForwarders
-
Utility method
Usage example(s):
SourceCodeManagerUtilities compileForwarders.
|
resources
-
resourcePackage
-
utilities
-
classIsNotYetInRepository: aClass withManager: mgr
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
fillSourceCache
-
moved from the settingsApp to here;
simply accesses all source files to get them
a) fetched from the repository if required
b) loaded into the image if so configured
Usage example(s):
SourceCodeManagerUtilities fillSourceCache
FillCachePackageQueue nextPut:'stx:libbasic2'.
FillCachePackageQueue nextPut:'exept:workflow'.
FillCachePackageQueue nextPut:'exept:expecco'.
|
-
nameOfExtensionsContainer
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
setPackageOfAllMethodsIn: aClass to: aPackage
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
setPackageOfAllMethodsInChangeSet: aChangeSet to: aPackage
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
sourceCodeManagerFor: aClass
-
self warn:'SourceCodeManagement is disabled or not configured.\\Please setup in the Launcher.' withCRs.
-
sourceCodeOfClass: aClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
update: something with: aParameter from: changedObject
-
(comment from inherited method)
dependent is notified of some change -
Default is to try update:with:
-
versionString: a isLessThan: b
-
SourceCodeManagerUtilities default versionString:'1.10.2' isLessThan:'1.100.1'
** This is an obsolete interface - do not use it (it may vanish in future versions) **
utilities-cvs
-
changeSetForExtensionMethodsForPackage: packageToCheckOut askForRevision: askForRevision usingManager: aSourceCodeManager
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
changeSetForExtensionMethodsForPackage: packageToCheckOut revision: revisionOrNil orAskForRevision: askForRevision usingManager: aSourceCodeManager
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkForExistingModule: module directory: directory container: containerFileName usingManager: mgr allowCreate: allowCreate
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkForExistingModule: module directory: directory usingManager: mgr allowCreate: allowCreate
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkForExistingModule: module usingManager: mgr allowCreate: allowCreate
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClass: aClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClass: aClass withInfo: aLogInfoOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClass: aClass withInfo: aLogInfoOrNil withCheck: doCheckClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClasses: aCollectionOfClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrNil onBranch: branchNameOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringNil withCheck: doCheckClasses
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringNil withCheck: doCheckClasses onBranch: branchNameOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinExtensionMethods: aCollectionOfMethods forPackage: aPackageID withInfo: aLogInfoOrStringOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkinExtensionMethods: aCollectionOfMethods forPackage: aPackageID withInfo: aLogInfoOrStringOrNil onBranch: branchNameOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkoutClass: aClass askForMerge: askForMerge
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkoutClass: aClass askForRevision: askForRevision askForMerge: askForMerge
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkoutClass: aClass askForRevision: askForRevision askForMerge: askForMerge askForConfirmation: askForConfirmation
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkoutExtensionMethodsForPackage: packageToCheckOut askForRevision: askForRevision askForMerge: askForMerge usingManager: aSourceCodeManager
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
compareClassWithRepository: aClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
compareClassWithRepository: aClass askForRevision: askForRevision
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
compareProject: aProject withRepositoryVersionFrom: aDateOrNilForNewest
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
compareProject: aProject withRepositoryVersionFrom: aDateOrNilForNewest extensionsOnly: extensionsOnly
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
compareProjectWithRepository: aProject
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
createSourceContainerForClass: aClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
defineSourceContainerForClass: aClass title: title text: boxText createDirectories: createDirs createContainer: createContainer
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
diffSetOfProject: aProject againstRepositoryVersionFrom: aDateOrNilForNewest
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
diffSetOfProject: aProject againstRepositoryVersionFrom: aDateOrNilForNewest extensionsOnly: extensionsOnly
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
ensureCorrectVersionMethodsInClass: aClass usingManager: aManager
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
getLogMessageForClassCheckinTakingDefaultsFromPreviousLogInfo: aLogInfoOrNil forClass: aClass valuesInto: aBlock
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
removeSourceContainerForClass: aClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
removeSourceContainerForClass: aClass confirm: doConfirm warn: doWarn
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
repositoryLogOf: aClass onto: aStream
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
repositoryLogOf: aClass short: shortOrNot onto: aStream
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
tagClass: aClass as: tag
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
tagClasses: aCollectionOfClasses as: tag
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
tagPath: aPath as: tag usingManager: aManager
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
utilities-cvs-helpers
-
getMethodVersionsOfClass: aClass selector: selector numberOfRevisions: numberOfRevisionsOrNil
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
utilities-cvs-user interaction
-
askForContainer: boxText title: title note: notice initialModule: initialModule initialPackage: initialPackage initialFileName: initialFileName
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
askForContainer: boxText title: title note: notice initialModule: initialModule initialPackage: initialPackage initialFileName: initialFileName forNewContainer: forNewContainer
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
askForExistingRevision: boxText title: title class: aClass
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
askForExistingRevision: boxText title: title class: clsOrNil manager: aSourceCodeManager module: module package: directory fileName: fileName
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
checkAndWarnAboutBadMessagesInClass: aClass checkAgainHolder: checkAgainHolder
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
getCheckinInfoFor: aClassNameOrPackageNameString initialAnswer: initialAnswerOrNil
-
-
getCheckinInfoFor: aClassNameOrPackageNameString initialAnswer: initialAnswerOrNil withQuickOption: withQuickOption
-
-
goodInitialLogMessageForCheckinClassOfClass: aClass
-
figure out, if there were any non-comment changes.
Provide a reasonable initial log message (I am tired of typing in 'comment only').
This is a q&d hack - not complete and not correct (for example, it will generate a method change
info line, even if the selector was removed afterwards).
So check the outcome.
utilities-encoding
-
guessEncodingOfFile: aFilename
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
guessEncodingOfStream: aStream
-
** This is an obsolete interface - do not use it (it may vanish in future versions) **
accessing
-
confirmNewFiles: aBoolean
-
if true, ask if new files are about to be added to the repo
-
defaultManager
-
-
lastSourceLogMessageHeadlines
-
-
yesToAllNotification
-
-
yesToAllQuery
-
error handling
-
doesNotUnderstand: aMessage
-
Bad, method is not moved the the instance side
initialization
-
initialize
-
(comment from inherited method)
just to ignore initialize to objects which do not need it
-
setManager: aSourceCodeManager
-
not yet set by user
utilities
-
allKnownTagsInClasses: aCollectionOfClasses
-
returns symbolic tags which are present in any given classes (or-set)
Usage example(s):
SourceCodeManager defaultManager allKnownTagsInClasses:{Array . ByteArray}
|
-
classIsNotYetInRepository: aClass withManager: mgr
-
-
nameOfExtensionsContainer
-
-
setPackageOfAllMethodsIn: aClass to: aPackage
-
make all methods belong to the classes project
-
setPackageOfAllMethodsInChangeSet: aChangeSet to: aPackage
-
make all methods belong to the classes project
-
sourceCodeForExtensions: aCollectionOfMethods package: aPackageID forManager: scmManagerOrNil
-
don't write a timestamp. Otherwise we would always generate a new version, even if nothing changed
-
sourceCodeManagerFor: aClass
-
-
sourceCodeOfClass: aClass
-
-
validateConsistencyOfPackage: aPackage
-
-
validateConsistencyOfPackage: aPackageSymbolOrClass doClasses: doClasses doExtensions: doExtensions
-
also done by ProjectChecker...
-
versionString: a isLessThan: b
-
compare two strings of the form: a.b.c...
Usage example(s):
self assert:(self default versionString:'12.34.66' isLessThan:'12.35.66').
self assert:(self default versionString:'12.34.66' isLessThan:'12.35.67').
self assert:(self default versionString:'11.34.66' isLessThan:'12.34.67').
self assert:(self default versionString:'11.35.66' isLessThan:'12.34.67').
self assert:(self default versionString:'13.35.66' isLessThan:'12.34.67') not.
self assert:(self default versionString:'13.35.66' isLessThan:'13.34.67') not.
self assert:(self default versionString:'13.35.66' isLessThan:'13.35.67').
self assert:(self default versionString:'13.35.66' isLessThan:'13.35.65') not.
self assert:(self default versionString:'13.35.66.1' isLessThan:'13.35.66') not.
self assert:(self default versionString:'13.35.66' isLessThan:'13.35.66.1').
self assert:(self default versionString:'13.35.66.2' isLessThan:'13.35.66.1') not.
self assert:(self default versionString:'13.35.66.1' isLessThan:'13.35.66.2').
|
utilities-encoding
-
guessEncodingOfFile: aFilename
-
look for a string
encoding #name
or:
encoding: name
within the given buffer
(which is usually the first few bytes of a textFile).
If that's not found, use heuristics (in CharacterArray) to guess.
** This is an obsolete interface - do not use it (it may vanish in future versions) **
-
guessEncodingOfStream: aStream
-
look for a string of the form
encoding #name
or:
encoding: name
in the first few bytes of aStream.
** This is an obsolete interface - do not use it (it may vanish in future versions) **
utilities-scm
-
askForPackageVersion: question with: includeSubProjectsHolderOrNil knownTags: knownTags into: aTwoArgBlock
-
-
askForTagForClasses: classesToFetchExistingTagsFrom askForRevision: askForRevisionBool
-
open a dialog and ask for a tag name.
Fetch existing tag names from classesToFetchExistingTagsFrom.
If askForRevisonBool is true, ask also for a revision number or tag.
Answer an association tag -> revision.
Usage example(s):
CVSSourceCodeManager utilities askForTagForClasses:{Array} askForRevision:true
CVSSourceCodeManager utilities askForTagForClasses:{Array} askForRevision:false
|
-
askForTagForClasses: classesToFetchExistingTagsFrom askForRevision: askForRevisionBool initialAnswer: tagSuggestion
-
open a dialog and ask for a tag name.
Fetch existing tag names from classesToFetchExistingTagsFrom.
If askForRevisonBool is true, ask also for a revision number or tag.
Answer an association tag -> revision.
Usage example(s):
self askForTagForClasses:{Array} askForRevision:true
self askForTagForClasses:{Array} askForRevision:false
|
-
changeSetForExtensionMethodsForPackage: packageToCheckOut askForRevision: askForRevision usingManager: aSourceCodeManager
-
check-out an extension container from the source repository,
and return the methods there as a change set.
If askForRevision is false, check-out the newest version.
Return a changeSet or nil (if any error occurred)
-
changeSetForExtensionMethodsForPackage: packageToCheckOut revision: revisionOrNil orAskForRevision: askForRevision usingManager: aSourceCodeManager
-
check-out an extension container from the source repository, and return the methods there as a change set.
If askForRevision is false, check-out the newest version.
Return a changeSet or nil (if any error occurred)
-
checkForExistingModule: module directory: directory container: containerFileName usingManager: mgr allowCreate: allowCreate
-
-
checkForExistingModule: module directory: directory usingManager: mgr allowCreate: allowCreate
-
-
checkForExistingModule: module usingManager: mgr allowCreate: allowCreate
-
-
checkOutPackages: packages askForRevision: askForRevision
-
Updates code of given packages (loaded in the image) to a specific revision.
If `askForRevision` is true, then user is asked to specify to which revision to
update. If `askForRevision` is false, then packages are updated to a 'newest'
revision.
NOTE: Definition of `newest` revision may vary. For SCMs which allows for multiple
heads, it is not clear which one it is. In that case, even if `askForRevision` is
false, this method may result in user interation, asking user to select which of the
newest she wants.
NOTE: Naming is bit confusing, it should be something like #updatePackages:ask...
but to keep this in line with other methods, we use #checkOutPackages
** This method must be redefined in concrete classes (subclassResponsibility) **
-
checkinClass: aClass
-
check a class into the source repository.
Asks interactively for a log-message.
-
checkinClass: aClass withInfo: aLogInfoOrNil
-
check a class into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for a log-message.
-
checkinClass: aClass withInfo: aLogInfoOrNil withCheck: doCheckClass
-
check a class into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for log-message.
If doCheckClass is true, the class is checked for send of halts etc.
-
checkinClass: aClass withInfo: aLogInfoOrNil withCheck: doCheckClassHolder usingManager: managerOrNil
-
check a class into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for log-message.
If doCheckClass is true, the class is checked for send of halts etc.
-
checkinClass: aClass withInfo: aLogInfoOrNil withCheck: doCheckClassHolder usingManager: managerOrNil confirmNewContainer: confirmNewContainer
-
check a class into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for log-message.
If doCheckClass is true, the class is checked for send of halts etc.
-
checkinClass: aClass withInfo: aLogInfoOrNil withCheck: doCheckClassHolder usingManager: managerOrNil confirmNewContainer: confirmNewContainer onBranch: branchNameOrNil
-
check a class into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for log-message.
If doCheckClass is true, the class is checked for send of halts etc.
-
checkinClasses: aCollectionOfClass
-
check a collection of classes into the source repository.
Asks interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrNil
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrNil onBranch: branchNameOrNil
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringNil withCheck: doCheckClassesHolder
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrStringNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringNil withCheck: doCheckClassesHolder onBranch: branchNameOrNil
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrStringNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringOrNil withCheck: doCheckClassesHolder usingManager: aManagerOrNil
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrStringOrNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringOrNil withCheck: doCheckClassesHolder usingManager: aManagerOrNil confirmNewContainer: confirmNewContainer
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrStringOrNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringOrNil withCheck: doCheckClassesHolder usingManager: aManagerOrNil confirmNewContainer: confirmNewContainer onBranch: branchNameOrNil
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrStringOrNil isNil, ask interactively for log-message.
-
checkinClasses: aCollectionOfClasses withInfo: aLogInfoOrStringOrNil withCheck: doCheckClassesHolder usingManager: aManagerOrNil onBranch: branchNameOrNil
-
check a bunch of classes into the source repository.
If the argument, aLogInfoOrStringOrNil isNil, ask interactively for log-message.
-
checkinPackage: packageToCheckIn classes: doClasses extensions: doExtensions buildSupport: doBuild askForMethodsInOtherPackages: askForMethodsInOtherPackages
-
-
checkinPackage: packageToCheckIn classes: doClasses extensions: doExtensions buildSupport: doBuild askForMethodsInOtherPackages: askForMethodsInOtherPackages onBranch: branchNameOrNil
-
-
checkinPackage: packageToCheckIn classes: doClasses extensions: doExtensions buildSupport: doBuild winRCOnly: winRCOnly askForMethodsInOtherPackages: askForMethodsInOtherPackages onBranch: branchNameOrNil
-
** This method must be redefined in concrete classes (subclassResponsibility) **
-
checkoutClass: aClass askForMerge: askForMerge
-
check-out a class from the source repository.
-
checkoutClass: aClass askForRevision: askForRevision askForMerge: askForMerge
-
check-out a class from the source repository.
If askForRevision is false, check-out the newest version.
-
checkoutClass: aClass askForRevision: askForRevision askForMerge: askForMerge askForConfirmation: askForConfirmation
-
check-out a class from the source repository.
If askForRevision is false, check-out the newest version.
-
checkoutExtensionMethodsForPackage: packageToCheckOut askForRevision: askForRevision askForMerge: askForMerge usingManager: aSourceCodeManager
-
check-out a class from the source repository.
If askForRevision is false, check-out the newest version.
-
compareClassWithRepository: aClass
-
open a diff-textView comparing the current (in-image) version
against its orgiginal version found in the repository.
Usage example(s):
self compareClassWithRepository:Array
|
-
compareClassWithRepository: aClass askForRevision: askForRevision
-
open a diff-textView comparing the current (in-image) version
against the newest (askForRevision=false)
or an asked-for version (askForRevision=true) found in the repository.
Usage example(s):
self compareClassWithRepository:Array
|
-
comparePackages: packages askForRevision: askForRevision
-
Compares code of given packages (loaded in the image) against a specific revision
and opens a diff browser on differences.
If `askForRevision` is true, then user is asked to specify to which revision to
update. If `askForRevision` is false, then packages are updated to a 'newest'
revision.
NOTE: Definition of `newest` revision may vary. For SCMs which allows for multiple
heads, it is not clear which one it is. In that case, even if `askForRevision` is
false, this method may result in user interaction, asking user to select which of the
newest she wants.
-
comparePackages: packages askForRevision: askForRevision extensionsOnly: extensionsOnly
-
Compares code of given packages (loaded in the image) against a specific revision
and opens a diff browser on differences.
If `askForRevision` is true, then user is asked to specify to which revision to
update. If `askForRevision` is false, then packages are updated to a 'newest'
revision.
NOTE: Definition of `newest` revision may vary. For SCMs which allows for multiple
heads, it is not clear which one it is. In that case, even if `askForRevision` is
false, this method may result in user interaction, asking user to select which of the
newest she wants.
-
compareProject: aProject repositoryVersionFrom: dateOrNilV1 orTag: symbolicNameOrNilV1 againstRepositoryVersionFrom: dateOrNilV2 orTag: symbolicNameOrNilV2 extensionsOnly: extensionsOnly
-
-
compareProject: aProject withRepositoryVersionFrom: aDateOrNilForNewest
-
-
compareProject: aProject withRepositoryVersionFrom: aDateOrNilForNewest extensionsOnly: extensionsOnly
-
-
compareProject: aProject withRepositoryVersionTaggedAs: aSymbolicName
-
-
compareProject: aProject withRepositoryVersionTaggedAs: aTagOrNil extensionsOnly: extensionsOnly
-
if aTagOrNil is nil, compare against the newest version in the repositry
Usage example(s):
CVSSourceCodeManager utilities
compareProject:'stx:libbasic2'
withRepositoryVersionTaggedAs:nil
extensionsOnly:false.
CVSSourceCodeManager utilities
compareProject:'stx:libbasic2'
withRepositoryVersionTaggedAs:'expecco_2_10_0'
extensionsOnly:false.
|
-
compareProjectWithRepository: aProject
-
-
compareTwoPackageVersions: packages
-
Compares two versions of given packages.
-
compareTwoPackageVersions: packagesIn extensionsOnly: extensionsOnly
-
Compares two versions of given packages
and opens a diff browser on differences.
Usage example(s):
CVSSourceCodeManager utilities
compareTwoPackageVersions:#('stx:libbasic') extensionsOnly:true
|
-
createSourceContainerForClass: aClass
-
let user specify the source-repository values for aClass.
Return false, if failed.
-
createSourceContainerForClass: aClass usingManager: aManager
-
let user specify the source-repository values for aClass.
Return false, if failed.
-
createSourceContainerForClass: aClass usingManager: aManager confirmNewContainer: confirmNewContainer
-
let user specify the source-repository values for aClass.
Return false, if failed.
-
defineSourceContainerForClass: aClass title: title text: boxText createDirectories: createDirs createContainer: createContainer
-
let user specify the source-repository values for aClass
-
defineSourceContainerForClass: aClass usingManager: mgr title: title text: boxText createDirectories: createDirs createContainer: createContainer
-
let user specify the source-repository values for aClass
-
defineSourceContainerForClass: aClass usingManager: mgr title: title text: boxText createDirectories: createDirs createContainer: createContainer confirmNewContainer: confirmNewContainer
-
let user specify the source-repository values for aClass
-
diffSetOfProject: aProject againstRepositoryVersionFrom: aDateOrNilForNewest
-
-
diffSetOfProject: aProject againstRepositoryVersionFrom: aDateOrNilForNewest extensionsOnly: extensionsOnly
-
-
diffSetOfProject: aProject againstRepositoryVersionFrom: aDateOrNilForNewest orTag: aTagOrNil
-
return a diffset against either the newest (head), or the version at a particular date,
or a the version with a particular tag.
-
diffSetOfProject: aProject againstRepositoryVersionFrom: aDateOrNilForNewest orTag: aTagOrNil extensionsOnly: extensionsOnly
-
return a diffset against the version at a particular date (if not nil),
or a the version with a particular tag (if not nil),
or the newest (head) (if both are nil).
-
diffSetOfProject: aProject againstRepositoryVersionTaggedAs: symbolicName
-
-
diffSetOfProject: aProject againstRepositoryVersionTaggedAs: aTag extensionsOnly: extensionsOnly
-
-
diffSetOfProject: aProject repositoryVersionFrom: aDateOrNilV1 orTag: aTagOrNilV1 againstRepositoryVersionFrom: aDateOrNilV2 orTag: aTagOrNilV2 extensionsOnly: extensionsOnly
-
return a diffset of two repository versions,
each specified by either a version at a particular date,
or a the version with a particular tag.
-
diffsetAgainstRepositoryOfClass: aClass askForRevision: askForRevision
-
return the differences (or nil) comparing the current (in-image) version
against the newest (askForRevision=false)
or an asked-for version (askForRevision=true) found in the repository.
Return nil, if there are no differences;
raise an error, if the source cannot be retrieved from the repository.
-
ensureCorrectVersionMethodsInClass: aClass usingManager: aManager
-
(theMetaclass includesSelector:oldVersionMethodName) ifTrue:[
-
fetchSourceOf: aClass askForRevision: askForRevision into: aBlockToReturnMultipleValues
-
fetch the source of either the newest version or the revision being asked for,
or nil, if there are any problems.
Helper method
-
getLogMessageForCheckinTakingDefaultsFromPreviousLogInfo: aLogInfoOrNil initialLogMessage: initialLogMessage title: title isClassCheckin: isClassCheckin showChangesAction: showChangesAction validateConsistencyAction: validateConsistencyAction valuesInto: aBlock
-
open a dialog, asking for commit/checkin log info.
Returns 2 values:
a log message
and additional checkinInfo (containing things like markAsStable, etc,)
-
getLogMessageForClassCheckinTakingDefaultsFromPreviousLogInfo: aLogInfoOrNil forClass: aClassOrNil valuesInto: aBlock
-
open a dialog, asking for commit/checkin log info for a class checkin.
Returns 2 values:
a log message
and additional checkinInfo (containing things like markAsStable, etc,)
-
knownTagsInPackages: packages
-
return the symbolic names given to any version in packages.
Being lazy, assume tags are persistent across packages (which they are not required to be...)
and only fetch the tag names from the first given package.
May raise an error, if the repository cannot be accessed
Usage example(s):
CVSSourceCodeManager utilities knownTagsInPackages:#( 'stx:libbasic' 'stc:libbasic2' )
|
-
removeSourceContainerForClass: aClass
-
show container & let user confirm twice.
-
removeSourceContainerForClass: aClass confirm: doConfirm warn: doWarn
-
show container & optionally let user confirm twice.
-
removeSourceContainerForClass: aClass usingSourceInfo: info confirm: doConfirm warn: doWarn
-
show container & optionally let user confirm twice.
-
repositoryLogOf: aClass onto: aStream
-
-
repositoryLogOf: aClass short: shortOrNot onto: aStream
-
old
-
tagClass: aClass as: tag
-
set a symbolicName for the head (most recent) revision.
-
tagClasses: aCollectionOfClasses as: tag
-
-
tagClasses: aCollectionOfClasses as: tag revision: revision
-
Modified (format): / 07-12-2017 / 10:48:36 / cg
-
tagPackage: package as: tag
-
TODO: what about build support files and extensions???
-
tagPath: aPath as: tag usingManager: aManager
-
utilities-scm-helpers
-
getMethodVersionsOfClass: aClass selector: selector numberOfRevisions: numberOfRevisionsOrNil
-
check-out all previous versions of aClass and retrieve the history of selector.
Return a dictionary associating revision with a changeList entries for that method.
Unfinished - need a GUI for that.
Usage example(s):
self getMethodVersionsOfClass:MenuPanel selector:#'helpTextForItem:' numberOfRevisions:20
self getMethodVersionsOfClass:NewLauncher class selector:#'menu' numberOfRevisions:20
|
utilities-scm-user interaction
-
askForContainer: boxText title: title note: notice initialModule: initialModule initialPackage: initialPackage initialFileName: initialFileName
-
open a dialog asking for a source container;
return a dictionary containing module, package and filename,
or nil if canceled.
-
askForContainer: boxText title: title note: notice initialModule: initialModule initialPackage: initialPackage initialFileName: initialFileName forNewContainer: forNewContainer
-
open a dialog asking for a source container;
return a dictionary containing module, package and filename,
or nil if canceled.
Usage example(s):
self
askForContainer:'enter container' title:'container' note:'some note'
initialModule:'foo' initialPackage:'bar' initialFileName:'baz'
|
-
askForExistingRevision: boxText title: title class: aClass
-
open a dialog asking for a containers revision;
return a revision number, or nil if canceled.
-
askForExistingRevision: boxText title: title class: clsOrNil manager: aSourceCodeManager module: module package: directory fileName: fileName
-
open a dialog asking for a containers revision;
return a revision number, or nil if canceled.
Usage example(s):
CVSSourceCodeManager utilities
askForExistingRevision:'enter revision'
title:'revision'
class:Array
manager:CVSSourceCodeManager
module:'stx'
package:'libbasic'
fileName:nil
|
-
checkAndWarnAboutBadMessagesInClass: aClass checkAgainHolder: checkAgainHolder
-
check if a class contains message-sends to:
#halt , #halt:
#error
#todo , #todo:
(and maybe more in the future)
Only checks in non-extension methods - as this is only called when checking
Usage example(s):
self checkAndWarnAboutBadMessagesInClass:(SourceCodeManagerUtilities)
|
-
getCheckinInfoFor: aClassNameOrPackageNameString initialAnswer: initialAnswerOrNil
-
ask for a log message for checking in a class (plus checkinQuick state info),
and other info (mark as stable, for example).
Return the info-object (actually: the dialog) or nil if aborted.
Usage example(s):
SourceCodeManagerUtilities getCheckinInfoFor:'hello' initialAnswer:'bla'
|
-
getCheckinInfoFor: aClassNameOrPackageNameString initialAnswer: initialAnswerOrNil withQuickOption: withQuickOption
-
ask for a log message for checking in a class (plus checkinQuick state info),
and other info (mark as stable, for example).
Return the info-object (actually: the dialog) or nil if aborted.
Usage example(s):
SourceCodeManagerUtilities default getCheckinInfoFor:'hello' initialAnswer:'bla' withQuickOption:true
|
-
getCheckinInfoFor: infoString initialAnswer: initialAnswerOrNil withQuickOption: withQuickOption withValidateConsistencyOption: withValidateConsistencyOption
-
ask for a log message for checking in a class (plus checkinQuick state info),
and other info (mark as stable, for example).
Return the info-object (actually: the dialog) or nil if aborted.
Usage example(s):
SourceCodeManagerUtilities default getCheckinInfoFor:'hello' initialAnswer:'bla'
|
-
getCheckinInfoFor: infoString initialAnswer: initialAnswerOrNil withQuickOption: withQuickOption withValidateConsistencyOption: withValidateConsistencyOption isClassCheckin: isClassCheckin showChangesAction: showChangesActionOrNil
-
ask for a log message for checking in a class (plus checkinQuick state info),
and other info (mark as stable, for example).
Return the info-object (actually: the dialog) or nil if aborted.
Usage example(s):
SourceCodeManagerUtilities default getCheckinInfoFor:'hello' initialAnswer:'bla'
|
-
getCheckinInfoFor: infoString initialAnswer: initialAnswerOrNil withQuickOption: withQuickOption withValidateConsistencyOption: withValidateConsistencyOption showChangesAction: showChangesActionOrNil
-
ask for a log message for checking in a class (plus checkinQuick state info),
and other info (mark as stable, for example).
Return the info-object (actually: the dialog) or nil if aborted.
Usage example(s):
SourceCodeManagerUtilities default getCheckinInfoFor:'hello' initialAnswer:'bla'
|
-
revisionForSymbolicName: tag class: cls fileName: classFileName directory: packageDir module: moduleDir manager: aSourceCodeManager
-
given a tag, return the corresponding revision
Usage example(s):
CVSSourceCodeManager
revisionForSymbolicName:'stable'
class:Array fileName:'Array.st'
directory:'libbasic' module:'stx'
|
|