Stack trace:
MCFileTreeGitRepository class(Object)>>error:
[
c := PipeableOSProcess
command: self gitCommand , ' ' , aCommandString
environment: nil
workingDir: (MCFileTreeFileUtils current directoryPathString: aDirectory)
input: nil
output: nil
error: nil
errorPipelineStream: nil.
r := c output.
"Force the command to terminate."
c succeeded
ifFalse: [
| errorString |
errorString := c errorUpToEndOfFile.
errorString notEmpty
ifTrue: [ self error: 'Git error: ' , errorString ].
r := '' ] ] in MCFileTreeGitRepository class>>runOSProcessGitCommand:in: in Block: [ ...
BlockClosure>>ensure:
MCFileTreeGitRepository class>>runOSProcessGitCommand:in:
MCFileTreeGitRepository class>>runGitCommand:in:
MCFileTreeGitRepository>>gitCommand:in:
MCFileTreeGitRepository>>gitVersions
MCFileTreeGitRepository>>loadAncestry
[ :bar |
anAncestry := self loadAncestry.
1 to: entries size do: [ :i |
(entries at: i)
in: [ :entry |
| entryVersions v |
entryVersions := OrderedCollection new.
commitIDs := self gitVersionsForPackage: entry name.
[ commitIDs atEnd ]
whileFalse: [
| logSize commitID author position message dateAndTime |
(commitIDs match: 'log size ')
ifFalse: [ self error: 'Unable to find git data in input' ].
logSize := Integer readFrom: commitIDs.
commitIDs next.
position := commitIDs position.
commitID := ByteArray readHexFrom: (commitIDs upTo: $|) trimBoth.
author := (commitIDs upTo: $|) onlyLetters.
dateAndTime := DateAndTime fromString: (commitIDs upTo: $|).
message := (commitIDs next: logSize + 1 + position - commitIDs position) convertFromSystemString.
entryVersions
add:
(GitFileTreePackageEntry
on: entry name
id: commitID
author: author
message: message
timeStamp: dateAndTime) ].
v := 1.
entryVersions size to: 1 by: -1 do: [ :j |
(entryVersions at: j)
buildInfoWith: entryVersions
startingAt: j + 1
version: v
ancestry: anAncestry.
v := v + 1 ].
allNames addAll: entryVersions ].
bar value: i ] ] in MCFileTreeGitRepository>>loadAllFileNames in Block: [ :bar | ...
BlockClosure>>cull:
[ result := block cull: self ] in [
self prepareForRunning.
[ result := block cull: self ]
on: JobNotification
do: [ :notification | notification handle: self ] ] in Job>>run in Block: [ result := block cull: self ]
BlockClosure>>on:do:
[
self prepareForRunning.
[ result := block cull: self ]
on: JobNotification
do: [ :notification | notification handle: self ] ] in Job>>run in Block: [ ...
BlockClosure>>ensure:
Job>>run
MorphicUIManager(UIManager)>>displayProgress:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MCFileTreeGitRepository>>loadAllFileNames
MCFileTreeGitRepository>>allFileNames
MCFileTreeGitRepository>>readableFileNames
MCFileTreeGitRepository(MCFileBasedRepository)>>allVersionNames
[ self allVersionNames ] in MCFileTreeGitRepository(MCFileBasedRepository)>>goferReferences in Block: [ self allVersionNames ]
BlockClosure>>on:do:
MCFileTreeGitRepository(MCFileBasedRepository)>>goferReferences
[ aRepository goferReferences asSortedCollection asArray ] in Gofer>>basicReferencesIn: in Block: [ aRepository goferReferences asSortedCollection a...etc...
BlockClosure>>on:do:
Gofer>>basicReferencesIn:
[ self basicReferencesIn: aRepository ] in Gofer>>allResolvedIn: in Block: [ self basicReferencesIn: aRepository ]
[ self at: key put: aBlock value ] in Dictionary>>at:ifAbsentPut: in Block: [ self at: key put: aBlock value ]
Dictionary>>at:ifAbsent:
Thierry
Le 07/03/2015 18:07, Max Leske a ��crit :
On 06 Mar 2015, at 17:21, Thierry Goubier <thierry.goubier@gmail.com
<mailto:thierry.goubier@gmail.com>> wrote:
2015-03-06 16:17 GMT+01:00 Max Leske <maxleske@gmail.com
<mailto:maxleske@gmail.com>>:
On 06 Mar 2015, at 16:08, Thierry Goubier
<thierry.goubier@gmail.com <mailto:thierry.goubier@gmail.com>>
wrote:
2015-03-06 15:43 GMT+01:00 Max Leske <maxleske@gmail.com
<mailto:maxleske@gmail.com>>:
On 06 Mar 2015, at 15:35, Thierry Goubier
<thierry.goubier@gmail.com
<mailto:thierry.goubier@gmail.com>> wrote:
2015-03-06 15:21 GMT+01:00 Max Leske <maxleske@gmail.com
<mailto:maxleske@gmail.com>>:
On 06 Mar 2015, at 14:56, Thierry Goubier
<thierry.goubier@gmail.com
<mailto:thierry.goubier@gmail.com>> wrote:
Ok. It's not an image problem. It seems to be a vm
problem or an ubuntu problem.
(vm and vmLatest from get.pharo.org
<http://get.pharo.org/> have that, the vm in the pharo
launcher seems to work fine, and I haven't seen any
problem with Pharo3 ? Ubuntu 14.10 64bits).
Ok, so we need to find the VM version that breaks
OSProcess���
I tried to rebuilt a vm from the git for pharo-vm, and it
failed at the end of the process... lots of incorrect
function redefinitions in cogit.c, if it says anything.
Yes, I know that. It���s a problem with gcc. To fix it and get
a working VM you can use the following:
/* pre-empty some preprocessor variables used in
srv/vm/cogit.h, cointer.h, etc */
# define NoDbgRegParms
# define NeverInline
In which header do you add that?
src/vm/cogit.h
src/vm/cointerp.h
and src/vm/gcc3x-cointerp.c
Thanks, it worked. For the compilation, I mean. (the two .h happily
contain code to define those two macros ??)
Ok, conclusion with a brand new VM: stuck at the very first test. The
worst result of all :(
Thierry
I ran your tests a couple of times and didn���t see any hangs or crashes
(although most of the tests failed). This is on OSX 10.10.2.
output:
'Running tests in 1 Packages'
MCGitFileTreeIssue139Test>>#testWrite
[FAIL]
MCGitFileTreeIssue139Test>>#testLoad
[FAIL]
MCGitFileTreeIssue139Test>>#testWriteNRead
[FAIL]
MCGitFileTreeIssue139Test>>#testRepository
[FAIL]
MCGitFileTreeIssue146Test>>#testWrite
[FAIL]
MCGitFileTreeIssue146Test>>#testWriteNRead
[FAIL]
MCGitFileTreeIssue147Test>>#testWriteNRead
[FAIL]
MCGitFileTreeIssue26Test>>#testWriteNRead2
[FAIL]
MCGitFileTreeIssue26Test>>#testWrite
[FAIL]
MCGitFileTreeIssue26Test>>#testLoad
[FAIL]
MCGitFileTreeIssue26Test>>#testWriteNRead
[FAIL]
MCGitFileTreeIssue33Test>>#testWrite
[FAIL]
MCGitFileTreeIssue33Test>>#testLoad
[FAIL]
MCGitFileTreeIssue33Test>>#testWriteNRead
[FAIL]
MCGitFileTreeIssue33Test>>#testRepository
[FAIL]
MCGitFileTreeIssue69Test>>#testLoad
[FAIL]
MCGitFileTreeIssue72Test>>#testLoad
[FAIL]
MCGitFileTreeIssue72Test>>#testWriteNRead
[FAIL]
MCGitFileTreeLoaderTest>>#testBaseLoadRepository
[FAIL]
MCGitFileTreeLoaderTest>>#testCypressCuisLoad
[FAIL]
MCGitFileTreeLoaderTest>>#testIssue74
[FAIL]
MCGitFileTreeLoaderTest>>#testTargetLoad
[FAIL]
MCGitFileTreeLoaderTest>>#testTargetLoadRepository
[FAIL]
MCGitFileTreeLoaderTest>>#testBaseLoad
[FAIL]
MCGitFileTreeLoaderTraitsTest>>#testLoad
[FAIL]
MCGitFileTreeTests>>#testStoreReadGitFileTree
[31/31]
Finished running 31 Tests