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.