dalehenrich / filetree

Monticello repository for directory-based Monticello packages enabling the use of git, svn, etc. for managing Smalltalk source code.
https://github.com/CampSmalltalk/Cypress
MIT License
133 stars 26 forks source link

FileTree export can be improve to reduce the noise #214

Open jecisc opened 7 years ago

jecisc commented 7 years ago

When I review code on github I often see files with modification but no content added.

For example:

I would like to see two things to improve it:

What do you think?

ThierryGoubier commented 7 years ago

Hi @jecisc, it looks like the use of two slightly different json exporters producing different text outputs for the same data. You have to look into how Iceberg is writing on disk and what is happening with the different backends Iceberg has.

This issue ties in #186 which was discussed about a year ago with @npasserini. It is about making a better FileTree writer that changes only files that needs to be changed, by saving a diff instead of a package. I even created a branch for that ( issue_186).

jecisc commented 7 years ago

Hi!

I think it would indeed be good. I would like to help but I will not have the time before month. :(

ThierryGoubier commented 7 years ago

No need to hurry. The gain could be very important for large packages (it could make writing a new version to disk much faster, and git operations faster too) but it could be difficult to do a proper diff in the first place (do the diff in-memory for example and you risk missing changes done on-disk and mess everything).