Closed j4yk closed 3 years ago
FYIO: I just encountered the problem again in a fresh Trunk image right after installing Squot from the docking bar.
Yep, it's currently an expected bug. I assume you did indeed pull or clone an empty repository when you ran into the error...
No, the error occurred right after installing Squot from the docking bar, at the same time when I was asked whether I'd like to create my first repository. It's not an urgent problem for me, just wanted to inform you because you added the "check if solved" label :)
Well, that is odd. What business does it have finding merge bases there? Can you post the stack trace please?
That is a different code site. Will you please open a new ticket for that?
Oh, sorry, I misread the title of this issue. Please see #288!
Pulling from an empty repository will currently first prompt for the remote branch name (because the virtual master branch does not have an upstream branch set) and on the second pull will report "Upstream branch 'refs/heads/master' does not exist.". So there is no error anymore.
The version of the branch is still nil because the branch does not really exist yet. This special case is not handled by the current merge methods.
15 June 2020 12:43:00.137452 am
VM: Win32 - Smalltalk Image: Squeak6.0alpha [latest update: #19732]
SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir C:\Users\Jakob\HiDrive Trusted Dir C:\Users\Jakob\HiDrive\Jakob Untrusted Dir C:\Users\Jakob\Documents\My Squeak
UndefinedObject(Object)>>doesNotUnderstand: #mergeBasesWith: Receiver: nil Arguments and temporary variables: aMessage: mergeBasesWith: nil exception: MessageNotUnderstood: UndefinedObject>>mergeBasesWith: resumeValue: nil Receiver's instance variables: nil
SquotWorkingCopy>>checkMergeBasesOf:with:ifNoCommonAncestor:ifAncestor:ifDescendant: Receiver: foobar Arguments and temporary variables: myVersion: nil otherVersion: nil noCommonAncestorBlock: [closure] in SquotWorkingCopy>>mergeVersionInteractively:ifCanceled:...etc... ancestorBlock: [closure] in SquotWorkingCopy>>mergeVersionInteractively:ifCanceled:...etc... descendantBlock: [closure] in SquotWorkingCopy>>mergeVersionInteractively:ifCanceled:...etc... mergeBases: nil aVersionIsAncestor: nil aVersionIsDescendant: nil Receiver's instance variables: name: 'foobar' store: a SquotImageStore repository: a SquitRepository loadedHistorian: a SquitHistorian('refs/heads/master') previousVersionId: nil previousSnapshot: nil previouslySavedArtifacts: nil shouldStoreMetadata: nil additionalParents: nil loadedVersion: nil newVersionMessage: nil
SquotWorkingCopy>>checkMergeBasesOfHeadVersionWith:ifNoCommonAncestor:ifAncestor:ifDescendant: Receiver: foobar Arguments and temporary variables: aVersion: nil noCommonAncestorBlock: [closure] in SquotWorkingCopy>>mergeVersionInteractively:ifCanceled:...etc... ancestorBlock: [closure] in SquotWorkingCopy>>mergeVersionInteractively:ifCanceled:...etc... descendantBlock: [closure] in SquotWorkingCopy>>mergeVersionInteractively:ifCanceled:...etc... Receiver's instance variables: name: 'foobar' store: a SquotImageStore repository: a SquitRepository loadedHistorian: a SquitHistorian('refs/heads/master') previousVersionId: nil previousSnapshot: nil previouslySavedArtifacts: nil shouldStoreMetadata: nil additionalParents: nil loadedVersion: nil newVersionMessage: nil
SquotWorkingCopy>>mergeVersionInteractively:ifCanceled: Receiver: foobar Arguments and temporary variables: aVersion: nil cancelBlock: [closure] in SquitBrowser>>mergeVersionIntoActiveBranch:ifCanceled:...etc... mergeBases: nil merge: nil fastForwardPossible: #(false) Receiver's instance variables: name: 'foobar' store: a SquotImageStore repository: a SquitRepository loadedHistorian: a SquitHistorian('refs/heads/master') previousVersionId: nil previousSnapshot: nil previouslySavedArtifacts: nil shouldStoreMetadata: nil additionalParents: nil loadedVersion: nil newVersionMessage: nil
SquitBrowser>>mergeVersionIntoActiveBranch:ifCanceled: Receiver: a SquitBrowser Arguments and temporary variables: mergeHeadCommit: nil cancelBlock: [closure] in [] in [] in SquitBrowser>>actionPull selectedProject: foobar Receiver's instance variables: dependents: a DependentsArray(a PluggableSystemWindow<Git Browser: foobar (mast...etc... projectIndex: 16 commitSelection: nil objectIndex: 3 objectCache: #() commitForCache: commit 4764224 "CR line endings in postscript" timeOfLastListUpdate: 3758640477666 searchTerm: '' offeredToAddFirstProject: true repositoryExists: true cachedCommitList: #() commitListBuildProcess: a Process in [] in FullBlockClosure(BlockClosure)>>newProcess...etc... selectedHistorian: a SquitHistorian('refs/heads/master') indexOfActiveHistorianInBranchList: 2 branchList: #('-- Branches --' 'master') commitToDiffAgainst: nil
[] in [] in SquitBrowser>>actionPull Receiver: a SquitBrowser Arguments and temporary variables: <
Receiver's instance variables:
dependents: a DependentsArray(a PluggableSystemWindow<Git Browser: foobar (mast...etc...
projectIndex: 16
commitSelection: nil
objectIndex: 3
objectCache: #()
commitForCache: commit 4764224 "CR line endings in postscript"
timeOfLastListUpdate: 3758640477666
searchTerm: ''
offeredToAddFirstProject: true
repositoryExists: true
cachedCommitList: #()
commitListBuildProcess: a Process in [] in FullBlockClosure(BlockClosure)>>newProcess...etc...
selectedHistorian: a SquitHistorian('refs/heads/master')
indexOfActiveHistorianInBranchList: 2
branchList: #('-- Branches --' 'master')
commitToDiffAgainst: nil
FullBlockClosure(BlockClosure)>>on:do: Receiver: [closure] in [] in SquitBrowser>>actionPull Arguments and temporary variables: exceptionOrExceptionSet: SquotInitialLogMessageRequested handlerAction: [closure] in [] in SquitBrowser>>actionPull handlerActive: true Receiver's instance variables: outerContext: [] in SquitBrowser>>actionPull startpcOrMethod: ([] in SquitBrowser>>#actionPull "a CompiledBlock(1910741)") numArgs: 0 receiver: a SquitBrowser
[] in SquitBrowser>>actionPull Receiver: a SquitBrowser Arguments and temporary variables: <
Receiver's instance variables:
dependents: a DependentsArray(a PluggableSystemWindow<Git Browser: foobar (mast...etc...
projectIndex: 16
commitSelection: nil
objectIndex: 3
objectCache: #()
commitForCache: commit 4764224 "CR line endings in postscript"
timeOfLastListUpdate: 3758640477666
searchTerm: ''
offeredToAddFirstProject: true
repositoryExists: true
cachedCommitList: #()
commitListBuildProcess: a Process in [] in FullBlockClosure(BlockClosure)>>newProcess...etc...
selectedHistorian: a SquitHistorian('refs/heads/master')
indexOfActiveHistorianInBranchList: 2
branchList: #('-- Branches --' 'master')
commitToDiffAgainst: nil
[] in GitCurrentUnitOfWork class(DynamicVariable class)>>value:during: Receiver: GitCurrentUnitOfWork Arguments and temporary variables: <
Receiver's instance variables:
superclass: DynamicVariable
methodDict: a MethodDictionary()
format: 0
instanceVariables: nil
organization: ('as yet unclassified')
FullBlockClosure(BlockClosure)>>ensure: Receiver: [closure] in GitCurrentUnitOfWork class(DynamicVariable class)>>value:during: Arguments and temporary variables: aBlock: [closure] in GitCurrentUnitOfWork class(DynamicVariable class)>>value:during:...etc... complete: nil returnValue: nil Receiver's instance variables: outerContext: GitCurrentUnitOfWork class(DynamicVariable class)>>value:during: startpcOrMethod: ([] in DynamicVariable class>>#value:during: "a CompiledBlock(...etc... numArgs: 0 receiver: GitCurrentUnitOfWork
GitCurrentUnitOfWork class(DynamicVariable class)>>value:during: Receiver: GitCurrentUnitOfWork Arguments and temporary variables: anObject: a Dictionary(a GitRepository C:\Users\Jakob\HiDrive\Squeak\BadRepoUrl...etc... aBlock: [closure] in SquitBrowser>>actionPull p: a Process in MorphicDebugger class>>openOn:context:label:contents:fullView: oldValue: nil outerScopeWasDynamic: #(false) Receiver's instance variables: superclass: DynamicVariable methodDict: a MethodDictionary() format: 0 instanceVariables: nil organization: ('as yet unclassified')
GitCurrentUnitOfWork class>>value:for:during: Receiver: GitCurrentUnitOfWork Arguments and temporary variables: aGitUnitOfWork: a GitUnitOfWork on a GitRepository C:\Users\Jakob\HiDrive\Squea...etc... anObject: a GitRepository C:\Users\Jakob\HiDrive\Squeak\BadRepoUrlTests aBlock: [closure] in SquitBrowser>>actionPull Receiver's instance variables: superclass: DynamicVariable methodDict: a MethodDictionary() format: 0 instanceVariables: nil organization: ('as yet unclassified')
GitUnitOfWork>>activateDuring: Receiver: a GitUnitOfWork on a GitRepository C:\Users\Jakob\HiDrive\Squeak\BadRepoUrlTests Arguments and temporary variables: aBlock: [closure] in SquitBrowser>>actionPull Receiver's instance variables: repository: a GitRepository C:\Users\Jakob\HiDrive\Squeak\BadRepoUrlTests objectStores: an OrderedCollection(a GitLooseObjectStore) refStores: an OrderedCollection(a GitLooseRefStore) refLogs: a Dictionary() config: an INIFile refCache: a GitRefCache
SquitUnitOfWork>>activateDuring: Receiver: a SquitUnitOfWork Arguments and temporary variables: aBlock: [closure] in SquitBrowser>>actionPull Receiver's instance variables: repository: a SquitRepository numberOfClients: 1 gitUnitOfWork: a GitUnitOfWork on a GitRepository C:\Users\Jakob\HiDrive\Squeak...etc...
[] in SquitBrowser>>withUnitOfWork: Receiver: a SquitBrowser Arguments and temporary variables: aBlock: [closure] in SquitBrowser>>actionPull unitOfWork: {a SquitUnitOfWork} Receiver's instance variables: dependents: a DependentsArray(a PluggableSystemWindow<Git Browser: foobar (mast...etc... projectIndex: 16 commitSelection: nil objectIndex: 3 objectCache: #() commitForCache: commit 4764224 "CR line endings in postscript" timeOfLastListUpdate: 3758640477666 searchTerm: '' offeredToAddFirstProject: true repositoryExists: true cachedCommitList: #() commitListBuildProcess: a Process in [] in FullBlockClosure(BlockClosure)>>newProcess...etc... selectedHistorian: a SquitHistorian('refs/heads/master') indexOfActiveHistorianInBranchList: 2 branchList: #('-- Branches --' 'master') commitToDiffAgainst: nil
FullBlockClosure(BlockClosure)>>ensure: Receiver: [closure] in SquitBrowser>>withUnitOfWork: Arguments and temporary variables: aBlock: [closure] in SquitBrowser>>withUnitOfWork: complete: nil returnValue: nil Receiver's instance variables: outerContext: SquitBrowser>>withUnitOfWork: startpcOrMethod: ([] in SquitBrowser>>#withUnitOfWork: "a CompiledBlock(143788)...etc... numArgs: 0 receiver: a SquitBrowser
SquitBrowser>>withUnitOfWork: Receiver: a SquitBrowser Arguments and temporary variables: aBlock: [closure] in SquitBrowser>>actionPull unitOfWork: {a SquitUnitOfWork} Receiver's instance variables: dependents: a DependentsArray(a PluggableSystemWindow<Git Browser: foobar (mast...etc... projectIndex: 16 commitSelection: nil objectIndex: 3 objectCache: #() commitForCache: commit 4764224 "CR line endings in postscript" timeOfLastListUpdate: 3758640477666 searchTerm: '' offeredToAddFirstProject: true repositoryExists: true cachedCommitList: #() commitListBuildProcess: a Process in [] in FullBlockClosure(BlockClosure)>>newProcess...etc... selectedHistorian: a SquitHistorian('refs/heads/master') indexOfActiveHistorianInBranchList: 2 branchList: #('-- Branches --' 'master') commitToDiffAgainst: nil
SquitBrowser>>actionPull Receiver: a SquitBrowser Arguments and temporary variables: <
Receiver's instance variables:
dependents: a DependentsArray(a PluggableSystemWindow<Git Browser: foobar (mast...etc...
projectIndex: 16
commitSelection: nil
objectIndex: 3
objectCache: #()
commitForCache: commit 4764224 "CR line endings in postscript"
timeOfLastListUpdate: 3758640477666
searchTerm: ''
offeredToAddFirstProject: true
repositoryExists: true
cachedCommitList: #()
commitListBuildProcess: a Process in [] in FullBlockClosure(BlockClosure)>>newProcess...etc...
selectedHistorian: a SquitHistorian('refs/heads/master')
indexOfActiveHistorianInBranchList: 2
branchList: #('-- Branches --' 'master')
commitToDiffAgainst: nil
PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction Receiver: a PluggableButtonMorphPlus(2435579) Arguments and temporary variables:
--- The full stack --- UndefinedObject(Object)>>doesNotUnderstand: #mergeBasesWith: SquotWorkingCopy>>checkMergeBasesOf:with:ifNoCommonAncestor:ifAncestor:ifDescendant: SquotWorkingCopy>>checkMergeBasesOfHeadVersionWith:ifNoCommonAncestor:ifAncestor:ifDescendant: SquotWorkingCopy>>mergeVersionInteractively:ifCanceled: SquitBrowser>>mergeVersionIntoActiveBranch:ifCanceled: [] in [] in SquitBrowser>>actionPull FullBlockClosure(BlockClosure)>>on:do: [] in SquitBrowser>>actionPull [] in GitCurrentUnitOfWork class(DynamicVariable class)>>value:during: FullBlockClosure(BlockClosure)>>ensure: GitCurrentUnitOfWork class(DynamicVariable class)>>value:during: GitCurrentUnitOfWork class>>value:for:during: GitUnitOfWork>>activateDuring: SquitUnitOfWork>>activateDuring: [] in SquitBrowser>>withUnitOfWork: FullBlockClosure(BlockClosure)>>ensure: SquitBrowser>>withUnitOfWork: SquitBrowser>>actionPull PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
PluggableButtonMorphPlus>>performAction [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: Array(SequenceableCollection)>>do: PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp: PluggableButtonMorphPlus(Morph)>>handleMouseUp: MouseButtonEvent>>sentTo: PluggableButtonMorphPlus(Morph)>>handleEvent: PluggableButtonMorphPlus(Morph)>>handleFocusEvent: MorphicEventDispatcher>>doHandlingForFocusEvent:with: MorphicEventDispatcher>>dispatchFocusEvent:with: PluggableButtonMorphPlus(Morph)>>processFocusEvent:using: PluggableButtonMorphPlus(Morph)>>processFocusEvent: [] in [] in [] in HandMorph>>sendFocusEvent:to:clear: FullBlockClosure(BlockClosure)>>ensure: MouseButtonEvent(MorphicEvent)>>becomeActiveDuring: [] in [] in HandMorph>>sendFocusEvent:to:clear: FullBlockClosure(BlockClosure)>>ensure: HandMorph>>becomeActiveDuring: [] in HandMorph>>sendFocusEvent:to:clear: FullBlockClosure(BlockClosure)>>ensure: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendMouseEvent: HandMorph>>handleEvent: HandMorph>>processEvents [] in AnimWorldState(WorldState)>>doOneCycleNowFor: Array(SequenceableCollection)>>do: AnimWorldState(WorldState)>>handsDo: AnimWorldState(WorldState)>>doOneCycleNowFor: AnimWorldState(WorldState)>>doOneCycleFor: PasteUpMorph>>doOneCycle [] in AnimMorphicProject>>spawnNewProcess [] in FullBlockClosure(BlockClosure)>>newProcess