So, things are a little bit messy right now. We have "stable arches", "arches that are ~arch only (but occasional stable keywords can pop up and be ignored)", "arches that are ~arch only". In addition, some are always checked with repoman, some only with -d or (hic sunt leones) -e flag.
The latter is controlled in profiles/profiles.desc, which designates *profiles*, not arches, as stable, dev, or exp. I *think* long ago "stable" here was supposed to also indicate that an arch is stable, but that connection is obsolete (and better should be). To improve our tree status, below I propose an enhancement for profiles.desc. Compatibility and upgrade are discussed at the end of the mail. Proposal: * Introduce a 4th column in profiles.desc * Cosmetically modify the 3rd column Meaning and values of the 3rd column: "Does repoman check this profile?" - "stable": yes, same as now, becomes legacy value to be deprecated - "always": yes, same as "stable" now - "dev": only with -d - "exp": only with -e Meaning and values of the 4th column: "Does this arch support stable keywords, and how should "arch" vs. "~arch" be treated?" - "stable": separately check consistency of ~arch and arch tree, both have to be OK. This is what repoman is doing now, and is the default if the 4th column is undefined. - "testing": treat "arch" as "~arch" when requiring consistency, do not check "arch" alone. Useful if an arch wants to prepare going stable, useful for arch teams maintaining a pseudo-stable subset for stages. repoman could have a new command line switch that temporarily upgrades from "testing" to "stable" (for arch team work). - "unstable": check "~arch" only, "arch" in an ebuild produces a fatal repoman error Compatibility and transition: 0) Interestingly PMS defines profiles.desc and its fields, but does not say anything how it should be used. This could probably be enhanced with the next PMS version. 1) Compatibility: Old profiles.desc and new system The missing 4th column is treated as "stable", which is current behaviour. 2) Compatibility: New profiles.desc and old system A 4th column leads to an error "wrong format" in repoman. This is not so nice, but a pure developer problem (and these can be expected to update repoman). Also gentoolkit displays a backtrace. Testing shows no impact on "emerge" (portage team plz confirm), meaning that broken utilities (repoman, gentoolkit) can be updated to working versions normally. 3) On introduction of the new column, it can be left empty for the moment. Arches like e.g. mips could eventally move from "dev stable" to "always testing" or "always unstable" to maintain a consistent ~arch deptree and maybe upgrade to stable some day. Opinions, flames, cookies? Cheers, Andreas -- Andreas K. Hüttel dilfri...@gentoo.org Gentoo Linux developer (council, perl, libreoffice)
signature.asc
Description: This is a digitally signed message part.