Hello!

This is my weekly ChangeLog, from 12 June 2017 to 18 June 2017.
You can see it in a better format by going here: 
http://log.smallworks.eu/web/search?from=12/6/2017&to=18/6/2017

ChangeLog
=========

15 June 2017:
-------------

*    I finished an iteration for allowing cherry-pick into 
[iceberg](http://github.com/pharo-vcs/iceberg). 
    
    Now, I just need to make it work on 64bits and we will be ready-to-go for 
releasing it :)
    

13 June 2017:
-------------

*    Still "iceberging", I fixed an annoying bug when browsing diff with parent 
(in all screens that have it), 
    who was trowing a DNU because of course, first commits do not have a parent 
to compare with.
    
*    I've been working on iceberg 0.5. It will incorporate some needed features 
(to make it appropriate to 
    work on pharo itself, and better for users).
    
    This was also my work last week, but I forget to announce it here ;)
    
    So far, I added following features: 
    
    === Better diff handling
    It was very naive because it was comparing always all present packages 
which does not scales on 
    large repositories. Now, I implemented a double dispatch that works in 
different scenarios: 
    
    * commit -> commit: It relies in libgit2 to take the list of changed 
packages.
    * commit -> branch: it takes last commit on branch on continues as 
commit->commit scenario
    * loaded code -> commit: this is the most complicated scenario. It compares 
what is in image with what is in commit to take a correct diff.
    
    With this, now diffs are performant in all cases (bah, if you have a commit 
that changes 
    300 packages, you will suffer anyway, but I would argue that is not a very 
good codign practice)
    
    Also with this you will finally be able to add not-dirty packages to your 
repo and commit them :)
    
    === Branch sync with disk copy
    I had a discussion with author of Iceberg (Nico) on this: originally he 
weanted to treat loaded code in 
    the image as a got working-copy itself, so he was taking the information of 
the branch and keepong it. 
    
    Problem with this is, if you change the repository branch (in command line 
or another image) and then
    go back to your current image, you do not have any feedback... and that is 
severely confusing. 
    
    So now I'm just taking the information from git repository. That means you 
can have differences between 
    what you loaded and your current branch, but that's, IMO, perfectly 
reasonable (you can always switch back or 
    merge or whatever you need to do)
    
    === Other
    * Minor cleanups
    * Other bugfixes
    

cheers! 
Esteban

Reply via email to