Alistair,
Are steps 8 & 9 needed, since the latest image should be in sync with the latest dev version, no ?
Sven
@Pavel, thanks as well. A lot seems possible with the API.
I hope to be able to try later tonight.
> On 15 Nov 2017, at 21:53, Alistair Grant <akgrant0710@gmail.com> wrote:
>
> Hi Sven,
>
> On 15 November 2017 at 20:44, Sven Van Caekenberghe <sven@stfx.eu> wrote:
>> Yes, it is working for me too now, and it is actually pretty nice.
>>
>> I wonder though what the best way is to keep your personal fork up to date ?
>>
>> I managed to do it with a PR from the fork to the origin (or is it the reverse ?), like this
>>
>> https://github.com/svenvc/pharo/pull/1
>>
>> but it felt a bit weird because obviously the diff is large and I had the impression that the CI process than had to process all this.
>>
>> Maybe there is a better/easier/more correct way ?
>
> I only update my fork when I'm starting from a fresh image - my
> understanding is that upgrading an image is not supported at the
> moment.
>
> Set up the repository:
>
> cd emptydirectory
> wget 'the latest 7.0 image'
> git clone git@github.com:pharo-project/pharo.git pharo-core
> cd pharo-core
> git remote add $username git@github.com:$username/pharo.git
> cd ..
>
> Once the repository has been set up, the following script:
>
> 1. Configures Iceberg to show system repositories
> 2. Finds the pharo repository.
> 3. Finds the two remotes (origin and $username, from above)
> 4. Configures Iceberg to pull from origin and push to $username by default.
> 5. Checks out the development branch
>
> and finally does what you were asking about, updating the fork from the origin
>
> 6. Pull from origin
> 7. Push to fork ($username)
> 8, Checkout the images commit
> 9. Reloads modified packages
>
>
> | location username pharoRepository origin myfork |
>
> location := 'pharo-core'.
> username := 'myusername'.
>
> Iceberg showSystemRepositories: true.
> pharoRepository := IceRepository registry detect: [ :each | each name
> = 'pharo' ].
> pharoRepository location: location asFileReference.
> origin := pharoRepository remotes detect: [ :each | each remoteName =
> 'origin' ].
> myfork := pharoRepository remotes detect: [ :each | each remoteName =
> username ].
> pharoRepository pushRemote: myfork.
> pharoRepository pullRemote: origin.
> pharoRepository checkoutBranch: 'development'.
> pharoRepository backend pullFrom: origin.
> pharoRepository push.
> pharoRepository checkoutBranch: (SystemVersion current commitHash).
> [(pharoRepository savedPackages select: [:aPackage | aPackage isLoaded
> and: [ aPackage�� isModified ]]) do: #reload ] on: MCMergeOrLoadWarning
> do: [ :warning | warning resume: true ].
>
> 'Loaded pharo-core' inspect.
>
>
> I always have OSSubprocess loaded, so it would actually be easy to
> automate the cloning and configuration of the repository.�� I might do
> that next week.
>
> Cheers,
> Alistair
>
>
>
>>> On 15 Nov 2017, at 20:08, Alistair Grant <akgrant0710@gmail.com> wrote:
>>>
>>> Just to add a positive note to this discussion:
>>>
>>> After cloning the pharo repository, adding my fork as a remote and
>>> using Guille's scripts from earlier this year to configure the
>>> repositories in image, I was able to:
>>>
>>> - Create new branch from Fogbugz issue...
>>> - Make the changes
>>> - Push the changes up to my fork (Synchronise repository)
>>> - Create pull request...
>>> - Make some more changes
>>> - Push changes to my fork
>>>
>>> All from within the image, without any problems.
>>>
>>> There's still plenty that is manual and outside the image, and it
>>> would be nice to have a GUI that guided you through the process (at
>>> the moment you need to know what steps to do and in what order), but
>>> we have a good solid basis for moving forward.
>>>
>>> Cheers,
>>> Alistair
>>>
>>>
>>>
>>> On 31 October 2017 at 12:27, Sven Van Caekenberghe <sven@stfx.eu> wrote:
>>>>
>>>>
>>>>> On 31 Oct 2017, at 11:52, Stephane Ducasse <stepharo.self@gmail.com> wrote:
>>>>>
>>>>> Sven
>>>>>
>>>>> have a look at the TipsAndTricks new booklet available at http://books.pharo.org. There is a configuration for iceberg that sets and reduce
>>>>> the pain for me.
>>>>
>>>> Ah, OK, found it. Thanks.
>>>>
>>>> Nice document BTW ;-)
>>>>
>>>>> Stef
>>>>>
>>>>>
>>>>> On Tue, Oct 31, 2017 at 10:51 AM, Esteban Lorenzano <estebanlm@gmail.com> wrote:
>>>>>
>>>>>
>>>>>> On 31 Oct 2017, at 10:37, Guillermo Polito <guillermopolito@gmail.com> wrote:
>>>>>>
>>>>>> If you give me precise instructions I can update the post :)
>>>>>
>>>>> precise instructions is:
>>>>> - do not use https, use ssh
>>>>> - if you do not follow our recommendation and you insist on use https, add your credentials before doing any commit.
>>>>>
>>>>>>
>>>>>> On Mon, Oct 30, 2017 at 10:03 PM, Sven Van Caekenberghe <sven@stfx.eu> wrote:
>>>>>> I think I succeeded:
>>>>>>
>>>>>> https://pharo.fogbugz.com/f/cases/20613/Improve-some-UUID- comments
>>>>>> https://github.com/pharo-project/pharo/pull/420
>>>>>>
>>>>>> It does contain 4 identical commits due to my troubles earlier on.
>>>>>> I also did not see a confirmation by way of an #inform: after the pull request in Iceberg.
>>>>>>
>>>>>>> On 30 Oct 2017, at 21:50, Sven Van Caekenberghe <sven@stfx.eu> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> On 30 Oct 2017, at 21:42, Esteban Lorenzano <estebanlm@gmail.com> wrote:
>>>>>>>>
>>>>>>>> hi,
>>>>>>>>
>>>>>>>> thing is, you should not use https authentication (and the guide should not point to it)
>>>>>>>> Using SSH mode works out of the box.
>>>>>>>> Using HTTPS there is currently a bug and the workaround is to introduce your credentials *before* trying to commit (in settings)
>>>>>>>
>>>>>>> Well, after entering my username/password in Settings > Tools > Software Configuration Management > Iceberg > Plaintext Credentials I am one step further - I managed to 'Commit & Push'.
>>>>>>>
>>>>>>> Thanks !
>>>>>>>
>>>>>>>> Esteban
>>>>>>>>
>>>>>>>>> On 30 Oct 2017, at 20:33, Sven Van Caekenberghe <sven@stfx.eu> wrote:
>>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> Sorry, but I am person 237 trying to contribute to Pharo 7 the new way.
>>>>>>>>>
>>>>>>>>> I was following https://github.com/guillep/PharoIntegrationProcess/wiki/ and I got stuck just before step 3, after trying to do "That will calculate the differences between the checked-out branch and your image, show you the tree with the differences and let you commit (and push)". Specifically, the 'and push' fails.Contribute-a-fix-to-Pharo
>>>>>>>>>
>>>>>>>>> $ sw_vers
>>>>>>>>> ProductName:�� �� �� �� Mac OS X
>>>>>>>>> ProductVersion:�� �� ��10.13
>>>>>>>>> BuildVersion:�� �� �� ��17A405
>>>>>>>>>
>>>>>>>>> $ curl get.pharo.org/70+vm | bash
>>>>>>>>> ...
>>>>>>>>>
>>>>>>>>> $ ./pharo-ui Pharo.image
>>>>>>>>>
>>>>>>>>> I now have the following setup, which is correct I think.
>>>>>>>>>
>>>>>>>>> <Screen Shot 2017-10-30 at 20.28.05.png>
>>>>>>>>>
>>>>>>>>> I can commit on my local branch (left button), but when I try to do the 'and Push' (right button), things hang after I enter my credentials.
>>>>>>>>>
>>>>>>>>> Locally, I see
>>>>>>>>>
>>>>>>>>> $ git status
>>>>>>>>> On branch 20613-Improve-some-UUID-comments
>>>>>>>>> nothing to commit, working tree clean
>>>>>>>>>
>>>>>>>>> with the new code already committed
>>>>>>>>>
>>>>>>>>> $ cat src/Network-UUID.package/UUID.class/class/new.st
>>>>>>>>> instance creation
>>>>>>>>> new
>>>>>>>>>�� ��"Create and return a new UUID"
>>>>>>>>>
>>>>>>>>>�� ��"self new"
>>>>>>>>>
>>>>>>>>>�� ��^ (self new: 16)
>>>>>>>>>
>>>>>>>>> What did I do wrong ? How do I proceed ?
>>>>>>>>>
>>>>>>>>> Sven
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> Guille Polito
>>>>>> Research Engineer
>>>>>>
>>>>>> Centre de Recherche en Informatique, Signal et Automatique de Lille
>>>>>> CRIStAL - UMR 9189
>>>>>> French National Center for Scientific Research - http://www.cnrs.fr
>>>>>>
>>>>>> Web: http://guillep.github.io
>>>>>> Phone: +33 06 52 70 66 13