2017-11-15 22:46 GMT+01:00 Alistair Grant <akgrant0...@gmail.com>: > Hi Sven, > > On 15 November 2017 at 22:27, Sven Van Caekenberghe <s...@stfx.eu> wrote: > > Alistair, > > > > Are steps 8 & 9 needed, since the latest image should be in sync with > the latest dev version, no ? > > Until the next commit is made :-) > > Step 8 is not strictly needed, but if it is omitted the code in the > image may not match the code in the repository, and loading / saving > core packages may result in an inconsistent state. > > Step 9 was added because at one point the image had some packages > marked as dirty. I'm not sure if that is still the case. >
It is not. I sometimes use modified version of these lines to reaload all packages to make them in sync with a particular branch after switching to it because if you reload all packages from the Iceberg UI, it may require clicking on a lot of confirmation windows. -- Pavel > Cheers, > Alistair > > > > 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 <akgrant0...@gmail.com> wrote: > >> > >> Hi Sven, > >> > >> On 15 November 2017 at 20:44, Sven Van Caekenberghe <s...@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 g...@github.com:pharo-project/pharo.git pharo-core > >> cd pharo-core > >> git remote add $username g...@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 <akgrant0...@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 <s...@stfx.eu> > wrote: > >>>>> > >>>>> > >>>>>> On 31 Oct 2017, at 11:52, Stephane Ducasse <stepharo.s...@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 < > esteba...@gmail.com> wrote: > >>>>>> > >>>>>> > >>>>>>> On 31 Oct 2017, at 10:37, Guillermo Polito < > guillermopol...@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 < > s...@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 <s...@stfx.eu> > wrote: > >>>>>>>> > >>>>>>>> > >>>>>>>> > >>>>>>>>> On 30 Oct 2017, at 21:42, Esteban Lorenzano <esteba...@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 <s...@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/Contribute-a-fix-to-Pharo 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. > >>>>>>>>>> > >>>>>>>>>> $ 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 > > > > > >