[Pharo-project] New Change System
Hi guys, We are working on a New Change System<http://smalltalkhub.com/#!/~EzequielLamonica/NewChangeSystem/> . In this link you can see the project. It uses Pharo 2.0. There are some little bugs related to refactors which we are solving. Some features: - Semantic changes - Tracking in real time - Undo/redo of every change - Select a snapshot and redo changes from it to the end. So, if your image is broken, you can open the image again, open the change browser, select the last snapshot and right click -> redo changes. That's all. - Change browser with filters and a tree view for compound changes like refactors, class removals, etc - Diff view to see the impact of a change in the time when it was created To open the change browser: open the world menu -> tools -> Change Browser Try it and give me your feedback. Here you are the gofer script: *Gofer new* *smalltalkhubUser: 'EzequielLamonica' project: 'NewChangeSystem';* *package: 'Changes';* *load* * * Thanks!
Hi! On 11/22/2012 05:10 PM, Ezequiel Lamonica wrote:
Hi guys,
We are working on a New Change System <http://smalltalkhub.com/#!/~EzequielLamonica/NewChangeSystem/>. In this link you can see the project.
I should of course look at the code but could you outline differences/similarities to my/our work on Deltas? Then I might be able to give some thoughtful feedback - and yes, I will look at the code too but it is always interesting to hear "intentions" too. :) regards, Göran
Hi Goran, We use your idea about "previous" and "post" states of the system for every change at the moment that was done. Also,the possibility of do redo and undo of every kind of change. Then, we track changes from the system announcements instead of monticello packages and we relate every kind of change with its correspondent ring object. Another difference could be the change hierarchy. On 22 November 2012 18:16, Göran Krampe <goran@krampe.se> wrote:
Hi!
On 11/22/2012 05:10 PM, Ezequiel Lamonica wrote:
Hi guys,
We are working on a New Change System <http://smalltalkhub.com/#!/~**EzequielLamonica/**NewChangeSystem/<http://smalltalkhub.com/#!/~EzequielLamonica/NewChangeSystem/>
.
In this link you can see the project.
I should of course look at the code but could you outline differences/similarities to my/our work on Deltas?
Then I might be able to give some thoughtful feedback - and yes, I will look at the code too but it is always interesting to hear "intentions" too. :)
regards, Göran
On 11/27/2012 11:32 AM, Ezequiel Lamonica wrote:
Hi Goran,
We use your idea about "previous" and "post" states of the system for every change at the moment that was done. Also,the possibility of do redo and undo of every kind of change.
Does your changes have the ability to produce their "anti change"? And does in that case a "remove class X"-change produce an anti-change that is in fact a composite change that has 1 class create change + x method add changes? Hmmm, I really should take a look because I have tons of things I would like to investigate :) regards, Göran PS. I tracked changes using the SystemChangeNotification (or what it was called) which is the equivalent of the new announcements I guess.
On 27 November 2012 12:22, Göran Krampe <goran@krampe.se> wrote:
On 11/27/2012 11:32 AM, Ezequiel Lamonica wrote:
Hi Goran,
We use your idea about "previous" and "post" states of the system for every change at the moment that was done. Also,the possibility of do redo and undo of every kind of change.
Does your changes have the ability to produce their "anti change"? And does in that case a "remove class X"-change produce an anti-change that is in fact a composite change that has 1 class create change + x method add changes?
Yes, and also the variables. In fact, an anti-change is an undo change which knows the change undone.
Hmmm, I really should take a look because I have tons of things I would like to investigate :)
regards, Göran
PS. I tracked changes using the SystemChangeNotification (or what it was called) which is the equivalent of the new announcements I guess.
participants (2)
-
Ezequiel Lamonica -
Göran Krampe