Mail Archives: cygwin-apps/2002/01/13/10:58:37
Robert Collins wrote:
>>Correct -- it does work from R to L. If we cannot depend on this
>>behavior, then we must rename the following packages:
>>
>
> Which is one of the implications of the thread where you said
> http://cygwin.com/ml/cygwin-apps/2002-01/msg00208.html.
Well, consider it a thinko on my part. I was considering
"foo-alphabetic-version-release" different from
"foo-numeric-version-release" -- but of course, version can have
alphabetic characters in it, and my bzip example had numerals in the
"extra" field.
So both cases really just boil down to: there are four pegs and only
three slots.
IMO, we should either mandate that:
name field(s) cannot contain '-' so that we ALWAYS only have three
'-'delimited fields (four in the case of -src packages), or
setup/upset will always parse from R to L, so the FINAL two '-'delimited
fields will always be considered REL and VER. (or '-src' and REL and VER
in the -src case)
>>autoconf-devel
>>autoconf-stable
>>automake-devel
>>automake-stable
>>tetex-beta
>>
>
> We don't need to rename them immediately, but at the first opportunity
> IMO. And setup will need to be geared to handle the rename smoothly as
> well (which is on the long term plan anyway). Does '-' sort before or
> after '_' ? :].
'-' is 0x2d, '_' is 0x5f
So, an empty, fake autoconf-devel "update" and a real autoconf_devel
package can be "installed" during the same setup.exe run, and things
should just "work". Until setup.exe learns about package conflicts, at
which point things become more complicated.
> I don't like having fragile behaviour in setup.exe - and this is
> potentially fragile - thus the desire to simplify the parsing rules.
I think this is a social problem, not a software engineering problem.
Either way you are imposing a requirement on packagers:
a) only use the last two '-' delimited fields for VER and REL, or
b) always use exactly two '-' characters in the package name, between
the "name" field and the "VER" field, and between the "VER" field and
the "REL" field. (src packages get an extra '-src' tacked onto the end).
I think we are already doing (a) -- so why not just make that policy,
and go with it...and force upset/setup to obey.
> I'm open to commentary - ideally, long term, setup will not care at all
> about file naming outside of local scanned installs, and that can be
> done via a preprocessor to generate a setup.ini. This however _requires_
> setup.ini to be have more required fields than it does today.
>
> The other question, is - should '-' or '_' go between name, version and
> cygwin-version?
'-' definitely.
> tetex-beta is more intuitive that tetex_beta, but doing it that way
> would require relabelling all the packages globally. Of course a
> transition period will exist before setup.exe and upset are changed...
> but that could be quite long :].
I don't really see a difference between tetex-beta and tetex_beta.
Either is fine with me (actually, I believe it should be just 'tetex'.
Doesn't the fact that it has a version number of 20001218 indicate that
the source was taken from CVS and is therefore, by definition, "beta"?)
-Chuck
- Raw text -