On Fri, Sep 5, 2008 at 1:02 PM, Edwin <[EMAIL PROTECTED]> wrote: > > Sorry to be the bearer of possibly bad news. It *seems* as if sinan > does not update its repo when a dependent release is updated. If it's > using the dependent release version number to discriminate, that might > be a bit dangerous during development. I thought it used an MD5 > checksum of the tar file or something like that.
Thats very true. It just assumes whatever is local is good. We haven't kept MD5 sums in the repo so there hasn't been a convienient way to do checking. There is also the case that it hasn't been reported as an issue yet so it wasn't that high on my agenda. Its a fairly easy fix if we get the sums in the repo. File an issue against sinan for checking local cache validity and faxien for pushing md5s as well as the tarballs. Martin and I have talked about this several times. > To reproduce the problem, I have uploaded to the files area test case > sinan project directory that has a dummy library release and a dummy > application that uses the library (sinan_test_case1.tar.gz). > > $ tar xfz sinan_test_case1.tar.gz > > $ cd sinan_test_case/mylib > $ sinan clean;sinan dist > $ faxien install-release > $ faxien publish (don't know if this step is needed) > > $ cd ../myapp (makes use of mylib) > $ sinan clean;sinan release > > Then make a change to an erl file in mylib, and go through the whole > cycle again. After this is done, do a directory of the sinan > repository and compare the beam files of mylib there to those under > mylib/_build. The repo is clearly out of date (see directory listing > at end of email). > > Who cares? Well, if you innocently try to test the myapp build using > "sinan shell", you get to use the stale versions of the beam files IN > THE SINAN REPO (see below), NOT the installed versions or even the > most recently compiled ones. This does not seem right and certainly > violates the Principle Of Least Astonishment. Well, I was astonished > anyway. > > $ sinan shell > [snip] > 1> rp(code:get_path()). > ["/home/efine/.sinan/repo/eunit-2.0/ebin", > "/home/efine/.sinan/repo/stdlib-1.15.3/ebin", > "/home/efine/.sinan/repo/mylib-0.1.0/ebin", > "/home/efine/.sinan/repo/kernel-2.12.3/ebin", > > Regards, > Edwin > > ------------------ > $ ls -l /home/efine/.sinan/repo/mylib-0.1.0/ebin/*.beam > -rw-r--r-- 1 efine efine 1332 2008-09-05 15:09 /home/efine/.sinan/repo/ > mylib-0.1.0/ebin/mylib_app.beam > -rw-r--r-- 1 efine efine 1476 2008-09-05 15:09 /home/efine/.sinan/repo/ > mylib-0.1.0/ebin/mylib_sup.beam > > $ ls -l ../mylib/_build/development/apps/mylib-0.1.0/ebin/*.beam > -rw-rw-r-- 1 efine efine 1332 2008-09-05 15:47 ../mylib/_build/ > development/apps/mylib-0.1.0/ebin/mylib_app.beam > -rw-rw-r-- 1 efine efine 1496 2008-09-05 15:47 ../mylib/_build/ > development/apps/mylib-0.1.0/ebin/mylib_sup.beam > > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "erlware-dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/erlware-dev?hl=en -~----------~----~----~----~------~----~------~--~---
