2015-09-29 10:14 GMT+02:00 Thierry Goubier <[email protected]>:

>
>
> 2015-09-29 9:39 GMT+02:00 Nicolai Hess <[email protected]>:
>
>>
>>
>> 2015-09-29 7:05 GMT+02:00 Thierry Goubier <[email protected]>:
>>
>>> Hi Levente,
>>>
>>> Le 28/09/2015 23:54, Levente Uzonyi a écrit :
>>>
>>>> On Sun, 27 Sep 2015, Ferlicot D. Cyril wrote:
>>>>
>>>> An other point is that git file tree will not work on Windows if we do
>>>>> not fix the problem of the stdio. And a lot of people out of the
>>>>> community use Windows, so this is not a issue we should forget. Most of
>>>>> the people I know in company use Windows, so if we want to attract
>>>>> people this problem need to be corrected.
>>>>>
>>>>
>>>> If there are so many windows users, then how can it be that none of them
>>>> managed to explain what the actual problem with stdio handling is. I had
>>>> asked about the problem a while ago, but I still haven't got an answer:
>>>> http://forum.world.st/Google-Code-Shutdown-tt4814760.html#a4840937 .
>>>>
>>>
>>> Well, I changed the code using ProcessWrapper with your suggestions
>>> following that exchange, but my code stay fairly naive [1] (and would need
>>> to run under debug), and I didn't have someone testing on Windows.
>>>
>>
>> Can you give me an example on how to test this
>>
>
> Yes! Thanks!
>
> Can you run a makefile under Windows? I can prepare one which calls and
> loads everything to run the tests for gitfiletree.
>
> Or just trying to load something like SmaCC from github...
>
> Gofer new url: 'http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo50/main';
> configurationOf: 'GitFileTree'; loadDevelopment
>
> Metacello new baseline: 'SmaCC'; repository: 'gitfiletree://
> github.com/ThierryGoubier/SmaCC?protocol=https'; load
>
> If you manage to get through the SmaCC loading without a crash or a
> lockup, then it means it nearly certainly works.
>


No, it does not work, in MCFileTreeGitRepository
class>>#runProcessWrapperGitCommand:in:
...


(Smalltalk
        at: #ProcessWrapper
        ifAbsent: [ self error: 'Please load ProcessWrapper' ])
        ifNotNil:
            [ :pW |
            | command |
            command := pW new
                useStdout;
                useStderr;
                startWithCommand:
                    self gitCommand , ' -C "'
                        ,
                            (MCFileTreeFileUtils current
directoryPathString: aDirectory)
                        , '" ' , aCommandString.
            r := command upToEnd.
"<<<<<<<<<<<<-------------------  MNU False>>upToEnd"
...

somehow, the command is a boolean false, instead of a ProcessWrapper.




>
> Thierry
>
>
>>
>>
>>>
>>> Am I writing that code correctly? If you see the equivalent code using
>>> OSProcess[2], you understand that, as GitFileTree is a heavy hitter(*) on
>>> the external commands framework, I am prepared to work very closely with
>>> that layer including inside the vm plugin code (and David T Lewis helped me
>>> a lot to fix random lockups we had).
>>>
>>> Thierry
>>>
>>> (*) Running the gitfiletree integration tests launches probably over a
>>> hundred external commands in quick succession.
>>>
>>> [1]
>>> https://github.com/dalehenrich/filetree/blob/pharo5.0/repository/MonticelloFileTree-Git.package/MCFileTreeGitRepository.class/class/runProcessWrapperGitCommand.in..st
>>>
>>> [2]
>>> https://github.com/dalehenrich/filetree/blob/pharo5.0/repository/MonticelloFileTree-Git.package/MCFileTreeGitRepository.class/class/runOSProcessGitCommand.in..st
>>>
>>>
>>>> Levente
>>>>
>>>>
>>>
>>>
>>
>

Reply via email to