Richard Freeman wrote:
> I still don't see why we need to be encoding metadata in filenames.
Correct. GLEP 55 tries to solve a technical implementation issue by
exposing meta data in the filename. Extremely bad form/design, IMHO.
> PERL doesn't care what a file extension is, python doesn't care, bzip2
> doesn't care, tar doesn't care, gzip doesn't care, and even ld-linux.so
> doesn't care. I'm sure that in at least some of these cases they end up
> parsing parts of the file twice - once to figure out what it is, and the
> second time to actually handle it. I'm actually hard pressed to think
> of any unix-based software that uses the filename to store a mandatory
> file format versioning specifier of some kind.
All good points. I cannot believe there exists no other way to solve
this technical issue other than resorting to such a non-Unix-like idea.
Obviously all of the software packages cited above endeavor to avoid
such nastiness.
I do not understand why anyone is willing to accept putting version info
in the filename/extension. It is inelegant and, frankly, very ugly. I
have written more in the past on why I think it is a terrible idea, so I
won't repeat it here.
Suffice to say, if something like GLEP 55 is implemented, I will lose a
lot of faith in Gentoo's design, so much so that I will likely join the
ranks of those who abandon it, not only as a dev, but also as a user.
> This seems to me to be a solved problem. You put a header in a file
> that tells you how to read the file. Headers are split into fields and
> if a program doesn't know what to do with a field it ignores it (or if
> the header so instructs it doesn't even try to parse the file). This
> should be easy to do and keep the file bash-compatible. Just stick a
> comment line close to the top of the file and put whatever you want on
> it. You could also stick something in metadata.xml (although this makes
> working with ebuilds outside of a repository more difficult). You run
> the file through an algorithm to find out what the EAPI is, and then
> source it if appropriate.
>
> Sure, if you make some major change analogous to switching from the .rpm
> to the .deb package format then maybe an extension change would make
> sense. But, why expose the inner workings of the package file format to
> the filesystem?
+100
-Joe