Actually, we have a lot of options over time. As Paul mentioned, we can add
arugments or use the environment. We can also pass empty placeholders if we
obsolete arguments. And finally, we just simply change the name of the
script. If we dramatically change the args, then we look for "pre-commit-v2"
first, call it with the new args, and then look for "pre-commit" to be
called with old args.
Of course, if there is simply no way to call the old-args one, then we just
raise an error if it is detected. (or ignore it or whatever)
Point is: positional arguments should be more than fine for a long while.
Especially given Mike's points about only having a few args.
Cheers,
-g
On Thu, Aug 09, 2001 at 11:36:51AM -0500, kfogel@collab.net wrote:
> I wrote to Paul D. Smith:
> > Okay, thanks! (Sounds good to me, thoughts from others welcome, but
> > send 'em quick, 'cause I'm gonna write this soon. :-) )
>
> Interesting. Mike Pilato just expressed some reservations about this
> to me (verbally) -- the worry being that it's over-complexifying a
> relatively simple system that will never be taking very many command
> line arguments, since most of the useful information is in the txn or
> revision tree anyway.
>
> There is no need to worry about breaking compatibility between M3 and
> alpha, so for now I'm just going to start it out with the simplest
> possible system (ordered arguments, which makes our initial shell
> scripts easier to write). But please don't take that to indicate a
> preference. After we get that running, there's nothing to stop us
> from changing to the slightly-more-flexible but slightly-more-complex
> system. Patch most welcome, of course.
>
> -K
>
> "Paul D. Smith" <pausmith@nortelnetworks.com> writes:
> > %% kfogel@collab.net writes:
> >
> > k> We don't even need to insist that they be shell scripts, they'll just
> > k> be programs that are passed certain arguments in a certain order.
> >
> > You might want to avoid depending on particular ordering. In my
> > experience, this can make upgrades more painful than necessary.
> >
> > Passing arguments as command line options (e.g. use "-flag1 value1
> > -flag2 value2" instead of order-specific "value1 value2") is quite a bit
> > more flexible, since you can add more options and even remove obsolete
> > ones, and old scripts will continue to work (unless they used the
> > removed option of course).
> >
> > Also consider using the environment... that's very flexible as well and
> > if you have lots of constant data it can save some work (you can have
> > one function that sets the environment properly, then invokes the
> > command).
> >
> > --
> > -------------------------------------------------------------------------------
> > Paul D. Smith <psmith@baynetworks.com> HASMAT--HA Software Methods & Tools
> > "Please remain calm...I may be mad, but I am a professional." --Mad Scientist
> > -------------------------------------------------------------------------------
> > These are my opinions---Nortel Networks takes no responsibility for them.
--
Greg Stein, http://www.lyra.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:35 2006