On 11/7/16 11:42 AM, Nicolas Passerini wrote:
2016-11-07 15:30 GMT+01:00 Thierry Goubier <thierry.goub...@gmail.com
<mailto:thierry.goub...@gmail.com>>:
Thierry, If I'm not mistaken, Esteban is referring to the fact
that in FileTree we are still using Monticello to do the load
of the packages and even when we are running metadataless, we
end creating fake meta data to simulate an mcz ... you and I
have had conversations about ways to eliminate this
"requirement" because it is meaningless in a git context ...
Yes, this I understood. I do believe that what I suggested at one
point (have the ability to compare versions with an
'isAncestorOf') would be very nice for that transition (work in
mcz as well as on git with/without metadata).
I would like to listen to your ideas about this topic, but I am not
sure it is possible to achieve that compatibility. In fact we tried to
do it for Iceberg and at some point we decided to abort it.
On one side, trying to re-create monticello sequential file numbers in
git is simply not possible, at least in a reliable way. On the other
side, loading the graph of package versions and dependencies is really
slow for big repositories (such as pharo-core), once we removed that
requirement Iceberg got like 100x faster.
I agree that the git-oriented tools should not go ot of their may to
conform to the MC model .. as you say it just does not fit ... but many
of the standard operations that are performed can be performed on both
git and mcz repositories without forcing both of the models to share
identical implementations ... in image tools should distinguish between
mcz and git projects and dispatch the standard operations to the
appropriate repository --- and this si the spot where the handling
changes based upon the repository model ...
Dale