On Mon, 23 Feb 2009 09:28:06 -0500 Richard Freeman wrote: > I got the impression that if anything there is a desire to allow > EAPIs to change more offen, and not less. And these changes could > become more dramatic. But we're still only talking maybe three new EAPIs a year. > Also - keep in mind that EAPIs do not need to be numbers and are not > ordered. You could have ebuild-i_am_a_furry_monkey or > ebuild-. > Sure - hopefully the names will be more sensible and somewhat > uniform, but we're not necessarily just talking about adding a number > to the extension. You're using "developers might do something really stupid" as an argument? By that logic, the current setup sucks since someone might make an EAPI called a'b"c\d , so developers might have to put weird escaping in when specifying EAPI. Also note that kdebuild went with .kdebuild-1, not .ebuild-kdebuild-1. It's no leap to have slightly different extension rules for any project that creates its own non-numerical EAPIs. > I still don't see why we need to be encoding metadata in filenames. Because the metadata has to be known before the file can be used. > 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. Back when Perl 5 and PHP 5 were new, people often used extensions like .php4 and .php5 to tell their webserver how to handle scripts... > 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. That doesn't work with existing packages or existing package managers. > 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? For the same reason versions and package names are already in the filename. -- Ciaran McCreesh