Hello all,

I'm getting the below error each time a try to commit changes in Traits in
a project that uses GitFileTree and Pharo 6.0.

I've noticed that ConfigurationOfGitFileTree loads (for Pharo 6.0) FileTree
from:

github://dalehenrich/filetree:pharo6.0_dev/repository/

If I update to use the "pharo6.0" branch instead of "pharo6.0_dev" then I
can commit the changes without error.

By the way, should not the "stable" version of GitFileTree depends on an
stable branch of FileTree, instead of the development branch?

This is the stack trace of the error I get:

=====

UndefinedObject(Object)>>doesNotUnderstand: #select:thenCollect:
MCTraitDefinition(MCClassDefinition)>>selectVariables:
MCTraitDefinition(MCClassDefinition)>>instVarNames
MCGitFileTreeWriter>>buildClassDefinition:
MCGitFileTreeWriter>>writeClassDefinition:in:
[ :each |
self
writeClassDefinition: each
in: aPackagePath , '/' , each className , '.class' ] in
MCGitFileTreeWriter>>writeClassDefinitions:in:
OrderedCollection>>do:
MCGitFileTreeWriter>>writeClassDefinitions:in:
[ :job |
job title: 'Building snapshot'.
orderedDefinitions := MCDependencySorter
sortItems: aSnapshot definitions.
job progress: 0.1.
classDefinitions := orderedDefinitions
select: [ :e | e isKindOf: MCClassDefinition ].
traitDefinitions := orderedDefinitions
select: [ :e |
(e isKindOf: MCTraitDefinition)
or: [ e isKindOf: MCClassTraitDefinition ] ].
classAndTraitNames := (classDefinitions , traitDefinitions
collect: [ :e | e className ]) asSet.
job progress: 0.2.
methodDefinitions := orderedDefinitions
select: [ :e |
(e isKindOf: MCMethodDefinition)
and: [ classAndTraitNames includes: e className ] ].
extensionMethodDefinitions := orderedDefinitions
select: [ :e |
(e isKindOf: MCMethodDefinition)
and: [ (classAndTraitNames includes: e className) not ] ].
organization := orderedDefinitions
select: [ :e | e isKindOf: MCOrganizationDefinition ].
extensionClasses := (extensionMethodDefinitions
collect: [ :e | e className ]) asSet.
job progress: 0.3.
self outputFileDelete: aPackagePath.
self writePackageGitPropertiesIn: aPackagePath.
self writeOrganization: organization in: aPackagePath.
job progress: 0.4.
self writeClassDefinitions: classDefinitions in: aPackagePath.
self writeTraitDefinitions: traitDefinitions in: aPackagePath.
job progress: 0.5.
self writeMethodDefinitions: methodDefinitions in: aPackagePath.
job progress: 0.6.
self writeExtensionClassDefinitions: extensionClasses in: aPackagePath.
self
writeExtensionMethodDefinitions: extensionMethodDefinitions
in: aPackagePath.
job progress: 0.7.
self writeInitializers: methodDefinitions in: aPackagePath ] in
MCGitFileTreeWriter>>writeSnapshot:in:
BlockClosure>>cull:
[ ^ block cull: self ] in [ self prepareForRunning.
CurrentJob value: self during: [ ^ block cull: self ] ] in Job>>run
[ activeProcess psValueAt: index put: anObject.
aBlock value ] in CurrentJob(DynamicVariable)>>value:during:
BlockClosure>>ensure:
CurrentJob(DynamicVariable)>>value:during:
CurrentJob class(DynamicVariable class)>>value:during:
[ self prepareForRunning.
CurrentJob value: self during: [ ^ block cull: self ] ] in Job>>run
BlockClosure>>ensure:
Job>>run
MCGitFileTreeWriter>>writeSnapshot:in:
[ :each |
| packageDir |
packageDir := subDirectoryString , each package name , '.package'.
aWriter writeSnapshot: each snapshot in: packageDir.
aWriter
outputFileModify: packageDir , '/monticello.meta/package'
with: '(name ''' , each package name , ''')'.
aWriter writeDependencies: each dependencies in: packageDir ] in
MCGitFileTreeWriter class>>fileOutAll:on:
OrderedCollection>>do:
MCGitFileTreeWriter class>>fileOutAll:on:
MCFileTreeGitRepository>>fiStoreVersions:
MCFileTreeGitRepository>>fiStoreVersion:
MCFileTreeGitRepository>>basicStoreVersion:
MCFileTreeGitRepository(MCRepository)>>storeVersion:
MCFileTreeGitRepository(MCFileBasedRepository)>>storeVersion:
MCWorkingCopyBrowser>>storeVersion:in:
[ self
storeVersion: newVersion in: aRepository;
storeDependencies: newVersion in: aRepository ] in [ [ self
storeVersion: newVersion in: aRepository;
storeDependencies: newVersion in: aRepository ]
ensure: [ (MCVersionInspector new version: newVersion) show ] ] in
MCWorkingCopyBrowser>>basicSaveVersionIn:
BlockClosure>>ensure:
[ [ self
storeVersion: newVersion in: aRepository;
storeDependencies: newVersion in: aRepository ]
ensure: [ (MCVersionInspector new version: newVersion) show ] ] in
MCWorkingCopyBrowser>>basicSaveVersionIn:
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCWorkingCopyBrowser>>basicSaveVersionIn:
[ self basicSaveVersionIn: self repository ] in MCWorkingCopyBrowser>>
saveVersion
[ self value.
Processor terminateActive ] in BlockClosure>>newProcess


====

Thank you in advance.

Reply via email to