Ara.T.Howard wrote: > On Thu, 22 Sep 2005, Damphyr wrote: > >> I have a question on maintaining code. While coding several >> scripts snip >> version of my "private" lib out of my repository and building a gem >> for the actual 'product' then distribute that. Local development >> requires that I install my snippet lib as a gem or in ruby/lib in >> my development box, but I can live with that (it forces me to play >> nice with versions too). Any other ideas? V.- > i do this > > http://www.codeforpeople.com/lib/ruby/alib/ > > note that the libs are versioned, therefore i can write > > require 'alib-0.1.0' > > in a script and install new versions as i learn/add without breaking > existing scripts. for convenience i also have link installed so > require 'alib' > gets the latest version. Well I assume you do that for yourself locally. What do you do when distributing something that uses alib? When having application A and application B use alib do you distribute one copy of the alib files with each app or do you require someone to install alib? I am reluctant to require installation of a "private" library be it tar or gem. I prefer using a rakefile to grab the appropriate files and bundle them together with the app (which adds a reusable rake task definition to the lib :) ). So my box has the library installed complete with versioning and the app gets a copy to be used from '.'. One major drawback of this approach is when drastic changes in the "private" library break the applications - releasing bugfixes for the app requires updating to the current version of the lib. You use versioning in the library, for the moment I use my source control system to keep the versions aligned. I guess what I am formulating is the desire to handle my snippets like a separate project internally, but distribute them as integral pieces of each application. V.- ____________________________________________________________________ http://www.freemail.gr - δωρεάν υπηρεσία ηλεκτρονικού ταχυδρομείου. http://www.freemail.gr - free email service for the Greek-speaking.