On 14 December 2017 at 20:19, Esteban Lorenzano <estebanlm@gmail.com> wrote:
Hi!��

I���m working on simplifying the contribution process, after collecting opinions/experiences last couple of months.��
As you know, Pharo contribution process is still WIP and we aim to have it as smooth as possible for Pharo 7.0 release. Now, after observe the idea of the ���system repositories��� was a bad idea because it introduced extra and non standard ���path��� to contribution, I managed to remove that to reestablish ���the regular way���: you will now need to add pharo repository just as any other repository you add, by cloning or adding local repository.

I took Guille���s doc and moved it to pharo project (it does not has sense to have it living in a contributor���s repository when is so important). You can find it here:��


This document is also updated to reveal this new process, please read it.

How to update your startup scripts?
Some people has added startup scripts to easy the first part of contribution. Instead enabling system repositories, etc. you now need to replace that with this:

(IceRepositoryCreator new��
location: '/path/to/pharo-project/pharo' asFileReference;
subdirectory: 'src';
createRepository)
register

PLEASE, PLEASE, PLEASE��� take a moment to read and try the document. Is very important that document reflects new process and works reliable in different scenarios (I validated it on macOS and Windows, and assumed it worked fine on linux but you know��� bad assumptions is the base of failure ;) )

I���m eager to hear your feedback and continue enhancing the process.��

(yes, Stef, I know UI is still cumbersome��� I���m working on that :) )

cheers!
Esteban


Using��https://github.com/pharo-project/pharo/wiki/Contribute-a-fix-to-Pharo
with my pharo branch "22 commits behind pharo-project:master"
https://github.com/bencoman/pharo/tree/master��


From PharoLauncher, I created fresh latest��image from Pharo-7.0.0-alpha.build.408.sha.5369e34.arch.64bit
(btw, download took about 30 seconds which was reasonably good)
Opened image
WorldMenu > Iceberg
Iceberg > Clone Repository
�� Remote URL = git@github.com:bencoman/pharo.git��
�� Local Directory (default) = /home/ben/Pharo/images/FastTable-Pharo-7.0.0-alpha.build.402.sha.d5d4c99.arch.64bit-01/pharo-local/iceberg
�� Code subdirectory = src
�� <Create Repository>

A bit disconcerting that for about 1.5 minutes the UI is frozen,��
but eventually "pharo" entry appears in IceBerg with...
�� Name = *pharo
�� Current branch = master
�� Loaded version = fc92bbe (7 July 2017)
�� Status = uncommitted changes

Right-clicked on *pharo > Synchronise repository
�� up popped dialog "Synchronising" on tab [Commit your changes]
�� with about 800 changes with all items ticked.
�� (btw, I clicked <Refresh Tree> all the changes are unticked,
�� ��and only the three toplevel items GT-Spotter, Kernel & Reflectivity are ticked.
�� ��Is that ideal?�� What is the typical use case of that button.
�� ��Anyway, I close the dialog, and again right-click on *pharo > Synchronise repository)

(btw, reviewing change here is nice.)
A bit disconcerting that buttons <Commit onto master> and <Commit and push onto master>
are both disabled so there is no action I can do from this default, so I proceed to [Push] tab.
I'm feel unsure whether there should be some item listed under "New local commits to be published"
(there are none) but pushing <Publish all> seems the only thing possible, so I do that.

That seems to complete after 10 seconds,��
but still status = "Uncommitted changes" in the main Iceberg window.
Opening a new IceBerg window shows the same thing.


So what more do I need to do to get my Pharo repo "Up to date" ?

cheers -ben