aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* RepoConfigLoader: Recursively expand masters.Arfrever Frehtes Taifersar Arahesis2011-10-081-21/+27
|
* Mark some messages for translation.Arfrever Frehtes Taifersar Arahesis2011-10-051-10/+14
|
* RepoConfig: sort __slots__Zac Medico2011-10-041-4/+6
|
* Suppress warnings with DeprecationWarning.Zac Medico2011-10-031-2/+2
| | | | | These manifest-hashes warnings are irrelevant to regular users, so suppress them by default.
* Warn for questionable layout.conf manifest-hashesZac Medico2011-10-031-1/+23
|
* GLEP 59: use manifest-hashes list in layout.confZac Medico2011-10-031-18/+7
| | | | | | | | | | | | | The manifest-hashes layout.conf setting simply overrides the hashes that are generated. When unspecified, the MANIFEST2_HASH_DEFAULTS constant is used instead (current value contains SHA1, SHA256, and RMD160). In order to enable SHA512 and WHIRLPOOL, and drop RMD160 and SHA1, simply set "manifest-hashes = SHA256 SHA512 WHIRLPOOL" in layout.conf. As with the previous boolean flags approach, manifest-hashes settings become redundant and can be removed from layout.conf after a version of portage with equivalent defaults is stable.
* Implement GLEP 59 with control via layout.conf.Zac Medico2011-10-021-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The portage.const changes are derived from an earlier patch that was submitted by Robin H. Johnson <robbat2@gentoo.org>: http://archives.gentoo.org/gentoo-portage-dev/msg_911574e7cb615f67e4c21fc75c043f65.xml This patch has no affect on a repository unless it contains a metadata/layout.conf file which contains boolean flags that enable or disable manifest hash types. The plan is to deploy portage with this patch, and once it has been stabilized, add the following metadata/layout.conf settings to gentoo-x86: manifest-rmd160 = false manifest-sha1 = false manifest-whirlpool = true The above settings will become the default settings in a future portage release, making them redundant and eligible for removal from layout.conf (in order to avoid cluttering layout.conf with obsolete information). Future events: After WHIRLPOOL is supported in stable portage: - Add WHIRLPOOL to MANIFEST2_HASH_DEFAULTS. - Remove SHA1 and RMD160 from MANIFEST2_HASH_*. - Toggle gentoo-x86/metadata/layout.conf settings to match. After WHIRLPOOL is supported in stable portage for at least 1 year: - Change MANIFEST2_REQUIRED_HASH to WHIRLPOOL. - Remove SHA256 from MANIFEST2_HASH_*. - Toggle gentoo-x86/metadata/layout.conf settings to match. After SHA-3 is approved: - Add new hashes to MANIFEST2_HASH_*. After SHA-3 is supported in stable portage: - Toggle gentoo-x86/metadata/layout.conf settings to match. After layout.conf settings correspond to defaults in stable portage: - Remove redundant settings from gentoo-x86/metadata/layout.conf.
* repos.conf: implement trust-authoritative-cacheZac Medico2011-09-301-1/+23
| | | | | | | | This controls whether or not the layout.conf "authoritative-cache = true" setting will be trusted for a particular repo. It can be enabled globally by setting "trust-authoritative-cache = true" in the [DEFAULT] section of repos.conf.
* Fix 'authoritative' spelling.Zac Medico2011-09-301-3/+3
|
* layout.conf: allow a repository to state the cache is authorativeBrian Harring2011-09-301-1/+3
| | | | | | | | | | | | | | | | By authorative, this means "the cache is accurate; skip validation". While a useful hint for a slight speedup in validation, the true gain is for repositories that are distributed in a fashion that doesn't preserve mtime; git primarily. Setting authorative-cache = true results in portage skipping mtime validation checks for the bundled cache, allowing for git vcs based repos to distribute a cache. BUG=chromium-os:21049 TEST=dump a cache into metadata/cache, touch it to now, set layout.conf to authorative-cache=true, verify it doesn't generate cache entries for that repo. Change-Id: I92423e679bc171d2411a18d6d3ac22e8ef457753
* manifest: controllable per repoBrian Harring2011-09-271-1/+14
| | | | | | | | | | | This adds three states to layout.conf key use-manifest; false, true, and strict. false means "don't use manifests at all" true means "use and generate manifests, but allow them to be missing" strict means "manifests must be used everywhere in this repo" BUG=chromium-os:11308 TEST=repoman manifest usage.
* RepoConfigLoader: handle ValueError from shlexZac Medico2011-09-171-1/+8
| | | | This will handle the issue reported in bug #383269, comment #5.
* metadata/layout.conf: "sign-manifests = false"Zac Medico2011-09-121-1/+5
| | | | | | This allows repos to disable manifest signatures, which is useful if they want to prevent merge conflicts like those that thin-manifests is designed to prevent.
* add layout.conf awareness of thin-manifestsBrian Harring2011-09-121-2/+9
| | | | | | | | | For any repo that wants thin (just src_uri digests), they just need to add thin-manifests = true to their layout.conf. Again, this should only be used in repositories were the backing vcs provides checksums for the ebuild data.
* Bind all manifest access through repoconfigsBrian Harring2011-09-121-1/+6
| | | | | This enables controling the behaviour (creation and validation) per repo, and while mildly ugly, refactors in the right direction.
* refactoring; unhide part of the parsing functionalityBrian Harring2011-09-121-100/+98
|
* python3.2 fixes: ResourceWarning: unclosed fileZac Medico2011-08-241-2/+7
|
* SafeConfigParser: renamed to ConfigParser in 3.2Zac Medico2011-08-241-1/+6
|
* action_info: don't mix print with writemsg_stdoutZac Medico2011-08-041-1/+1
| | | | | This should prevent strange output buffering/order issues reported when piping output to head.
* Migrate from codecs.open() to io.open().Zac Medico2011-07-101-3/+3
| | | | | | | | | | | | | | | | | The io.open() function is the same as the built-in open() function in python3, and its implementation is optimized in python-2.7 and later. In addition to the possible performance improvement, this also allows us to avoid any future compatibility issues with codecs.open() that may arise if it is delegated to the built-in open() function as discussed in PEP 400. The main caveat involved with io.open() is that TextIOWrapper.write() raises TypeError if given raw bytes, unlike the streams returned from codecs.open(). This is mainly an issue for python2 since literal strings are raw bytes. We handle this by wrapping TextIOWrapper.write() arguments with our _unicode_decode() function. Also, the atomic_ofstream class overrides the write() method in python2 so that it performs automatic coercion to unicode when necessary.
* RepoConfig: ignore missing name if no locationZac Medico2011-07-081-1/+3
| | | | This happens if there is an orphan entry in repos.conf.
* Bug #370693: Handle package.use.force and package.use.mask files from masterArfrever Frehtes Taifersar Arahesis2011-06-191-0/+3
| | | | repositories.
* Update timestamps in headers of modified files.Zac Medico2011-06-031-1/+1
|
* repository/config: PORTDIR/overlay priority tweakZac Medico2011-06-021-10/+18
| | | | | | This ensures compatibility with previous portage versions for cases in which the user has added PORTDIR to PORTDIR_OVERLAY as a means to modify its priority relative to overlays when selecting ebuilds.
* RepoConfig: invert repo priority orderingZac Medico2011-01-021-5/+5
| | | | | The new ordering is such that higher numbers indicate higher priority.
* prepos_order: avoid duplicates from aliasesZac Medico2010-12-191-1/+4
|
* Support aliases in metadata/layout.conf.Zac Medico2010-10-221-0/+10
| | | | | | | This was requested by Daniel Robbins <drobbins@funtoo.org> so that the funtoo repository can set 'aliases = gentoo' in layout.conf, relieving funtoo users from the need to do a manual alias configuration in /etc/portage/repos.conf.
* Fix RepoConfig.info_string() for aliases.Zac Medico2010-10-221-1/+1
|
* Fix 'Unavailable repository' layout.conf path.Zac Medico2010-10-221-0/+2
|
* Ensure repo.priority is initialized.Sebastian Luther2010-10-201-1/+5
| | | | | Make sure repos in PORTDIR_OVERLAY get a priority even if they are in repos.conf.
* Fix RepoConfig.update() for missing_repo_name.Sebastian Luther2010-10-161-0/+1
| | | | This should fix bug #341299.
* Fix RepoConfig.info_string() for eclass-overridesZac Medico2010-10-161-1/+2
|
* Avoid reapath('') expansion to cwd for repos.Zac Medico2010-10-111-2/+6
|
* Make repoman ignore sets.conf.v2.2_rc91Zac Medico2010-10-071-2/+3
|
* Fix KeyError for missing repo in eclass_overridesZac Medico2010-10-071-1/+1
|
* Add _gen_valid_repo() to ensure valid repo name.Zac Medico2010-10-051-7/+16
|
* Handle invalid PORTDIR and realpath issuesSebastian Luther2010-10-031-5/+5
|
* Include repo info in emerge --infoSebastian Luther2010-10-031-0/+25
|
* Bug #339402 - Ensure valid repo name.Zac Medico2010-10-021-0/+17
|
* Bug #339402 - Prevent whitespace in repo names.Zac Medico2010-10-021-0/+1
|
* Avoid 'Unavailable repository' with aliases.Zac Medico2010-10-011-0/+4
|
* Fix broken SafeConfigParser.Error reference.Zac Medico2010-10-011-3/+3
|
* Support documented repos.conf settings.Zac Medico2010-10-011-6/+31
| | | | | | | | Support for aliases, eclass-overrides, and masters from /etc/portage/repos.conf, as documented in the portage.5 man page, has been absent since we switched to using the RepoConfigLoader class. This commit is intended to bring feature parity with repos.conf support in previous releases.
* Handle user_location in RepoConfig.update().Zac Medico2010-10-011-0/+2
|
* Fix typo in 'masters' variable name.Zac Medico2010-10-011-2/+4
|
* Fix misspelling of masters.split() as plit().Zac Medico2010-10-011-1/+1
|
* Make _RepoDisplay show user_location.Zac Medico2010-09-301-0/+8
|
* More repository handling cleanupSebastian Luther2010-09-301-22/+118
|
* Handle missing PORTDIR in RepoConfigLoader.mainRepo() and theZac Medico2010-09-291-1/+4
| | | | MaskManager constructor.
* Fix RepoConfigLoader so that it's possible to use PORTDIR_OVERLAYZac Medico2010-09-281-2/+4
| | | | | | | | | | | to override the repo that PORTDIR refers to. This fixes a regression which prevented a common repoman use case from working in which the user has PORTDIR refering to a rsync tree and has a separate cvs tree with the same repo_name as PORTDIR. When the user tries to use repoman with the cvs tree, the cvs repo is appended to PORTDIR_OVERLAY and we want it to override the conflicting PORTDIR setting.