Gentoo Archives: gentoo-commits

From: Thomas Sachau <tommy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:multilib commit in: /
Date: Sat, 01 Sep 2018 11:03:09
Message-Id: 1535794248.cb6737033d90f57168ed12e4b0cec8711b311b36.tommy@gentoo
1 commit: cb6737033d90f57168ed12e4b0cec8711b311b36
2 Author: Thomas Sachau <tommy <AT> gentoo <DOT> org>
3 AuthorDate: Sat Sep 1 09:30:48 2018 +0000
4 Commit: Thomas Sachau <tommy <AT> gentoo <DOT> org>
5 CommitDate: Sat Sep 1 09:30:48 2018 +0000
6 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=cb673703
7
8 Merge portage-2.3.48
9
10 .gitignore | 1 +
11 .travis.yml | 28 +--
12 NEWS | 10 +
13 README | 4 +-
14 RELEASE-NOTES | 98 +++++++++
15 TEST-NOTES | 6 +-
16 bin/archive-conf | 2 +-
17 bin/binhost-snapshot | 2 +-
18 bin/clean_locks | 2 +-
19 bin/dispatch-conf | 2 +-
20 bin/ebuild | 10 +-
21 bin/ebuild-ipc.py | 2 +-
22 bin/ebuild.sh | 2 +-
23 bin/egencache | 2 +-
24 bin/emaint | 2 +-
25 bin/emerge | 2 +-
26 bin/emerge-webrsync | 23 +-
27 bin/env-update | 2 +-
28 bin/etc-update | 18 +-
29 bin/fixpackages | 2 +-
30 bin/glsa-check | 2 +-
31 bin/install-qa-check.d/10executable-issues | 6 +-
32 bin/install-qa-check.d/10ignored-flags | 6 +-
33 bin/install-qa-check.d/60pngfix | 14 +-
34 bin/install-qa-check.d/90bad-bin-group-write | 55 +++++
35 bin/install-qa-check.d/90bad-bin-owner | 48 +++++
36 bin/isolated-functions.sh | 6 +-
37 bin/misc-functions.sh | 8 +-
38 bin/phase-functions.sh | 7 +-
39 bin/portageq | 2 +-
40 bin/quickpkg | 2 +-
41 bin/regenworld | 2 +-
42 cnf/make.conf.example | 8 +-
43 cnf/make.conf.example.arm64.diff | 37 ++++
44 cnf/make.globals | 2 +-
45 {pym => lib}/_emerge/AbstractDepPriority.py | 0
46 {pym => lib}/_emerge/AbstractEbuildProcess.py | 15 +-
47 {pym => lib}/_emerge/AbstractPollTask.py | 12 +-
48 {pym => lib}/_emerge/AsynchronousLock.py | 0
49 {pym => lib}/_emerge/AsynchronousTask.py | 0
50 {pym => lib}/_emerge/AtomArg.py | 0
51 {pym => lib}/_emerge/Binpkg.py | 10 +-
52 {pym => lib}/_emerge/BinpkgEnvExtractor.py | 0
53 {pym => lib}/_emerge/BinpkgExtractorAsync.py | 0
54 {pym => lib}/_emerge/BinpkgFetcher.py | 8 +
55 {pym => lib}/_emerge/BinpkgPrefetcher.py | 0
56 {pym => lib}/_emerge/BinpkgVerifier.py | 0
57 {pym => lib}/_emerge/Blocker.py | 0
58 {pym => lib}/_emerge/BlockerCache.py | 0
59 {pym => lib}/_emerge/BlockerDB.py | 0
60 {pym => lib}/_emerge/BlockerDepPriority.py | 0
61 {pym => lib}/_emerge/CompositeTask.py | 1 +
62 {pym => lib}/_emerge/DepPriority.py | 0
63 {pym => lib}/_emerge/DepPriorityNormalRange.py | 0
64 {pym => lib}/_emerge/DepPrioritySatisfiedRange.py | 0
65 {pym => lib}/_emerge/Dependency.py | 0
66 {pym => lib}/_emerge/DependencyArg.py | 0
67 {pym => lib}/_emerge/EbuildBinpkg.py | 0
68 {pym => lib}/_emerge/EbuildBuild.py | 34 ++-
69 {pym => lib}/_emerge/EbuildBuildDir.py | 0
70 {pym => lib}/_emerge/EbuildExecuter.py | 0
71 {pym => lib}/_emerge/EbuildFetcher.py | 12 ++
72 {pym => lib}/_emerge/EbuildFetchonly.py | 5 +-
73 {pym => lib}/_emerge/EbuildIpcDaemon.py | 0
74 {pym => lib}/_emerge/EbuildMerge.py | 0
75 {pym => lib}/_emerge/EbuildMetadataPhase.py | 0
76 {pym => lib}/_emerge/EbuildPhase.py | 34 ++-
77 {pym => lib}/_emerge/EbuildProcess.py | 0
78 {pym => lib}/_emerge/EbuildSpawnProcess.py | 0
79 {pym => lib}/_emerge/FakeVartree.py | 0
80 {pym => lib}/_emerge/FifoIpcDaemon.py | 0
81 {pym => lib}/_emerge/JobStatusDisplay.py | 0
82 {pym => lib}/_emerge/MergeListItem.py | 0
83 {pym => lib}/_emerge/MetadataRegen.py | 0
84 {pym => lib}/_emerge/MiscFunctionsProcess.py | 6 +-
85 {pym => lib}/_emerge/Package.py | 5 +-
86 {pym => lib}/_emerge/PackageArg.py | 0
87 {pym => lib}/_emerge/PackageMerge.py | 0
88 {pym => lib}/_emerge/PackagePhase.py | 0
89 {pym => lib}/_emerge/PackageUninstall.py | 10 +-
90 {pym => lib}/_emerge/PackageVirtualDbapi.py | 0
91 {pym => lib}/_emerge/PipeReader.py | 19 +-
92 {pym => lib}/_emerge/PollScheduler.py | 0
93 {pym => lib}/_emerge/ProgressHandler.py | 0
94 {pym => lib}/_emerge/RootConfig.py | 0
95 {pym => lib}/_emerge/Scheduler.py | 3 +
96 {pym => lib}/_emerge/SequentialTaskQueue.py | 0
97 {pym => lib}/_emerge/SetArg.py | 0
98 {pym => lib}/_emerge/SpawnProcess.py | 3 +
99 {pym => lib}/_emerge/SubProcess.py | 0
100 {pym => lib}/_emerge/Task.py | 0
101 {pym => lib}/_emerge/TaskSequence.py | 0
102 {pym => lib}/_emerge/UninstallFailure.py | 0
103 {pym => lib}/_emerge/UnmergeDepPriority.py | 0
104 {pym => lib}/_emerge/UseFlagDisplay.py | 0
105 {pym => lib}/_emerge/UserQuery.py | 0
106 {pym => lib}/_emerge/__init__.py | 0
107 .../_emerge/_find_deep_system_runtime_deps.py | 0
108 {pym => lib}/_emerge/_flush_elog_mod_echo.py | 0
109 {pym => lib}/_emerge/actions.py | 19 +-
110 {pym => lib}/_emerge/chk_updated_cfg_files.py | 0
111 {pym => lib}/_emerge/clear_caches.py | 0
112 {pym => lib}/_emerge/countdown.py | 0
113 {pym => lib}/_emerge/create_depgraph_params.py | 2 +-
114 {pym => lib}/_emerge/create_world_atom.py | 2 +-
115 {pym => lib}/_emerge/depgraph.py | 16 +-
116 {pym => lib}/_emerge/emergelog.py | 0
117 {pym => lib}/_emerge/getloadavg.py | 0
118 {pym => lib}/_emerge/help.py | 0
119 {pym => lib}/_emerge/is_valid_package_atom.py | 0
120 {pym => lib}/_emerge/main.py | 0
121 {pym => lib}/_emerge/post_emerge.py | 0
122 .../_emerge/resolver/DbapiProvidesIndex.py | 0
123 {pym => lib}/_emerge/resolver/__init__.py | 0
124 {pym => lib}/_emerge/resolver/backtracking.py | 0
125 .../_emerge/resolver/circular_dependency.py | 0
126 {pym => lib}/_emerge/resolver/output.py | 0
127 {pym => lib}/_emerge/resolver/output_helpers.py | 0
128 {pym => lib}/_emerge/resolver/package_tracker.py | 0
129 {pym => lib}/_emerge/resolver/slot_collision.py | 0
130 {pym => lib}/_emerge/search.py | 2 +-
131 .../_emerge/show_invalid_depstring_notice.py | 0
132 {pym => lib}/_emerge/stdout_spinner.py | 0
133 {pym => lib}/_emerge/unmerge.py | 0
134 {pym => lib}/portage/__init__.py | 2 +-
135 {pym => lib}/portage/_emirrordist/Config.py | 0
136 .../portage/_emirrordist/DeletionIterator.py | 0
137 {pym => lib}/portage/_emirrordist/DeletionTask.py | 0
138 {pym => lib}/portage/_emirrordist/FetchIterator.py | 10 +
139 {pym => lib}/portage/_emirrordist/FetchTask.py | 0
140 .../portage/_emirrordist/MirrorDistTask.py | 0
141 {pym => lib}/portage/_emirrordist/__init__.py | 0
142 {pym => lib}/portage/_emirrordist/main.py | 0
143 {pym => lib}/portage/_global_updates.py | 2 +-
144 {pym => lib}/portage/_legacy_globals.py | 0
145 {pym => lib}/portage/_selinux.py | 0
146 {pym => lib}/portage/_sets/ProfilePackageSet.py | 0
147 {pym => lib}/portage/_sets/__init__.py | 0
148 {pym => lib}/portage/_sets/base.py | 0
149 {pym => lib}/portage/_sets/dbapi.py | 0
150 {pym => lib}/portage/_sets/files.py | 0
151 {pym => lib}/portage/_sets/libs.py | 0
152 {pym => lib}/portage/_sets/profiles.py | 0
153 {pym => lib}/portage/_sets/security.py | 0
154 {pym => lib}/portage/_sets/shell.py | 0
155 {pym => lib}/portage/cache/__init__.py | 0
156 {pym => lib}/portage/cache/anydbm.py | 0
157 {pym => lib}/portage/cache/cache_errors.py | 0
158 {pym => lib}/portage/cache/ebuild_xattr.py | 0
159 {pym => lib}/portage/cache/flat_hash.py | 0
160 {pym => lib}/portage/cache/fs_template.py | 0
161 .../portage/cache/index/IndexStreamIterator.py | 0
162 {pym => lib}/portage/cache/index/__init__.py | 0
163 {pym => lib}/portage/cache/index/pkg_desc_index.py | 0
164 {pym => lib}/portage/cache/mappings.py | 0
165 {pym => lib}/portage/cache/metadata.py | 0
166 {pym => lib}/portage/cache/sql_template.py | 0
167 {pym => lib}/portage/cache/sqlite.py | 0
168 {pym => lib}/portage/cache/template.py | 0
169 {pym => lib}/portage/cache/volatile.py | 0
170 {pym => lib}/portage/checksum.py | 0
171 {pym => lib}/portage/const.py | 0
172 {pym => lib}/portage/cvstree.py | 0
173 {pym => lib}/portage/data.py | 0
174 {pym => lib}/portage/dbapi/DummyTree.py | 0
175 {pym => lib}/portage/dbapi/IndexedPortdb.py | 0
176 {pym => lib}/portage/dbapi/IndexedVardb.py | 0
177 .../dbapi/_ContentsCaseSensitivityManager.py | 0
178 {pym => lib}/portage/dbapi/_MergeProcess.py | 0
179 {pym => lib}/portage/dbapi/_SyncfsProcess.py | 0
180 {pym => lib}/portage/dbapi/_VdbMetadataDelta.py | 0
181 {pym => lib}/portage/dbapi/__init__.py | 12 ++
182 {pym => lib}/portage/dbapi/_expand_new_virt.py | 0
183 {pym => lib}/portage/dbapi/_similar_name_search.py | 0
184 {pym => lib}/portage/dbapi/bintree.py | 4 +-
185 {pym => lib}/portage/dbapi/cpv_expand.py | 0
186 {pym => lib}/portage/dbapi/dep_expand.py | 0
187 {pym => lib}/portage/dbapi/porttree.py | 83 +++++---
188 {pym => lib}/portage/dbapi/vartree.py | 27 ++-
189 {pym => lib}/portage/dbapi/virtual.py | 0
190 {pym => lib}/portage/debug.py | 2 +-
191 {pym => lib}/portage/dep/__init__.py | 0
192 {pym => lib}/portage/dep/_dnf.py | 0
193 {pym => lib}/portage/dep/_slot_operator.py | 0
194 {pym => lib}/portage/dep/dep_check.py | 0
195 {pym => lib}/portage/dep/soname/SonameAtom.py | 0
196 {pym => lib}/portage/dep/soname/__init__.py | 0
197 .../portage/dep/soname/multilib_category.py | 0
198 {pym => lib}/portage/dep/soname/parse.py | 0
199 {pym => lib}/portage/dispatch_conf.py | 0
200 {pym => lib}/portage/eapi.py | 2 +-
201 {pym => lib}/portage/eclass_cache.py | 0
202 {pym => lib}/portage/elog/__init__.py | 0
203 {pym => lib}/portage/elog/filtering.py | 0
204 {pym => lib}/portage/elog/messages.py | 0
205 {pym => lib}/portage/elog/mod_custom.py | 0
206 {pym => lib}/portage/elog/mod_echo.py | 0
207 {pym => lib}/portage/elog/mod_mail.py | 0
208 {pym => lib}/portage/elog/mod_mail_summary.py | 0
209 {pym => lib}/portage/elog/mod_save.py | 0
210 {pym => lib}/portage/elog/mod_save_summary.py | 0
211 {pym => lib}/portage/elog/mod_syslog.py | 0
212 {pym => lib}/portage/emaint/__init__.py | 0
213 {pym => lib}/portage/emaint/defaults.py | 0
214 {pym => lib}/portage/emaint/main.py | 0
215 {pym => lib}/portage/emaint/modules/__init__.py | 0
216 .../portage/emaint/modules/binhost/__init__.py | 0
217 .../portage/emaint/modules/binhost/binhost.py | 0
218 .../portage/emaint/modules/config/__init__.py | 0
219 .../portage/emaint/modules/config/config.py | 0
220 .../portage/emaint/modules/logs/__init__.py | 0
221 {pym => lib}/portage/emaint/modules/logs/logs.py | 0
222 .../portage/emaint/modules/merges/__init__.py | 0
223 .../portage/emaint/modules/merges/merges.py | 2 +-
224 .../portage/emaint/modules/move/__init__.py | 0
225 {pym => lib}/portage/emaint/modules/move/move.py | 0
226 .../portage/emaint/modules/resume/__init__.py | 0
227 .../portage/emaint/modules/resume/resume.py | 0
228 .../portage/emaint/modules/sync/__init__.py | 0
229 {pym => lib}/portage/emaint/modules/sync/sync.py | 0
230 .../portage/emaint/modules/world/__init__.py | 0
231 {pym => lib}/portage/emaint/modules/world/world.py | 0
232 {pym => lib}/portage/env/__init__.py | 0
233 {pym => lib}/portage/env/config.py | 0
234 {pym => lib}/portage/env/loaders.py | 0
235 {pym => lib}/portage/env/validators.py | 0
236 {pym => lib}/portage/exception.py | 0
237 {pym => lib}/portage/getbinpkg.py | 0
238 {pym => lib}/portage/glsa.py | 0
239 {pym => lib}/portage/localization.py | 0
240 {pym => lib}/portage/locks.py | 0
241 {pym => lib}/portage/mail.py | 0
242 {pym => lib}/portage/manifest.py | 0
243 {pym => lib}/portage/metadata.py | 6 +-
244 {pym => lib}/portage/module.py | 0
245 {pym => lib}/portage/news.py | 2 +-
246 {pym => lib}/portage/output.py | 0
247 {pym => lib}/portage/package/__init__.py | 0
248 {pym => lib}/portage/package/ebuild/__init__.py | 0
249 .../package/ebuild/_config/KeywordsManager.py | 0
250 .../package/ebuild/_config/LicenseManager.py | 0
251 .../package/ebuild/_config/LocationsManager.py | 5 +-
252 .../portage/package/ebuild/_config/MaskManager.py | 0
253 .../portage/package/ebuild/_config/UseManager.py | 0
254 .../package/ebuild/_config/VirtualsManager.py | 0
255 .../portage/package/ebuild/_config/__init__.py | 0
256 .../package/ebuild/_config/env_var_validation.py | 0
257 .../portage/package/ebuild/_config/features_set.py | 0
258 .../portage/package/ebuild/_config/helper.py | 0
259 .../package/ebuild/_config/special_env_vars.py | 0
260 .../package/ebuild/_config/unpack_dependencies.py | 0
261 .../portage/package/ebuild/_ipc/ExitCommand.py | 0
262 .../portage/package/ebuild/_ipc/IpcCommand.py | 0
263 .../portage/package/ebuild/_ipc/QueryCommand.py | 0
264 .../portage/package/ebuild/_ipc/__init__.py | 0
265 .../portage/package/ebuild/_metadata_invalid.py | 0
266 .../ebuild/_parallel_manifest/ManifestProcess.py | 0
267 .../ebuild/_parallel_manifest/ManifestScheduler.py | 0
268 .../ebuild/_parallel_manifest/ManifestTask.py | 0
269 .../package/ebuild/_parallel_manifest/__init__.py | 0
270 .../portage/package/ebuild/_spawn_nofetch.py | 0
271 {pym => lib}/portage/package/ebuild/config.py | 145 ++++++++-----
272 .../package/ebuild/deprecated_profile_check.py | 0
273 {pym => lib}/portage/package/ebuild/digestcheck.py | 0
274 {pym => lib}/portage/package/ebuild/digestgen.py | 0
275 {pym => lib}/portage/package/ebuild/doebuild.py | 73 ++++---
276 {pym => lib}/portage/package/ebuild/fetch.py | 0
277 .../portage/package/ebuild/getmaskingreason.py | 0
278 .../portage/package/ebuild/getmaskingstatus.py | 0
279 .../portage/package/ebuild/prepare_build_dirs.py | 5 +-
280 .../portage/package/ebuild/profile_iuse.py | 0
281 {pym => lib}/portage/process.py | 0
282 {pym => lib}/portage/progress.py | 0
283 {pym => lib}/portage/proxy/__init__.py | 0
284 {pym => lib}/portage/proxy/lazyimport.py | 0
285 {pym => lib}/portage/proxy/objectproxy.py | 0
286 {pym => lib}/portage/repository/__init__.py | 0
287 {pym => lib}/portage/repository/config.py | 16 +-
288 {pym => lib}/portage/sync/__init__.py | 0
289 {pym => lib}/portage/sync/config_checks.py | 0
290 {pym => lib}/portage/sync/controller.py | 0
291 {pym => lib}/portage/sync/getaddrinfo_validate.py | 0
292 {pym => lib}/portage/sync/modules/__init__.py | 0
293 {pym => lib}/portage/sync/modules/cvs/__init__.py | 0
294 {pym => lib}/portage/sync/modules/cvs/cvs.py | 0
295 {pym => lib}/portage/sync/modules/git/__init__.py | 0
296 {pym => lib}/portage/sync/modules/git/git.py | 72 ++++++-
297 .../portage/sync/modules/rsync/__init__.py | 0
298 {pym => lib}/portage/sync/modules/rsync/rsync.py | 122 +++++++----
299 {pym => lib}/portage/sync/modules/svn/__init__.py | 0
300 {pym => lib}/portage/sync/modules/svn/svn.py | 0
301 .../portage/sync/modules/webrsync/__init__.py | 6 +-
302 lib/portage/sync/modules/webrsync/webrsync.py | 136 ++++++++++++
303 {pym => lib}/portage/sync/old_tree_timestamp.py | 0
304 {pym => lib}/portage/sync/syncbase.py | 41 ++++
305 {pym => lib}/portage/tests/__init__.py | 0
306 {pym => lib}/portage/tests/bin/__init__.py | 0
307 {pym => lib}/portage/tests/bin/__test__.py | 0
308 {pym => lib}/portage/tests/bin/setup_env.py | 0
309 {pym => lib}/portage/tests/bin/test_dobin.py | 0
310 {pym => lib}/portage/tests/bin/test_dodir.py | 0
311 {pym => lib}/portage/tests/bin/test_doins.py | 0
312 .../portage/tests/bin/test_eapi7_ver_funcs.py | 0
313 .../portage/tests/bin/test_filter_bash_env.py | 0
314 {pym => lib}/portage/tests/dbapi/__init__.py | 0
315 {pym => lib}/portage/tests/dbapi/__test__.py | 0
316 {pym => lib}/portage/tests/dbapi/test_fakedbapi.py | 0
317 .../portage/tests/dbapi/test_portdb_cache.py | 0
318 {pym => lib}/portage/tests/dep/__init__.py | 0
319 {pym => lib}/portage/tests/dep/__test__.py | 0
320 {pym => lib}/portage/tests/dep/testAtom.py | 0
321 .../portage/tests/dep/testCheckRequiredUse.py | 0
322 .../portage/tests/dep/testExtendedAtomDict.py | 0
323 .../portage/tests/dep/testExtractAffectingUSE.py | 0
324 {pym => lib}/portage/tests/dep/testStandalone.py | 0
325 .../portage/tests/dep/test_best_match_to_list.py | 0
326 {pym => lib}/portage/tests/dep/test_dep_getcpv.py | 0
327 {pym => lib}/portage/tests/dep/test_dep_getrepo.py | 0
328 {pym => lib}/portage/tests/dep/test_dep_getslot.py | 0
329 .../portage/tests/dep/test_dep_getusedeps.py | 0
330 {pym => lib}/portage/tests/dep/test_dnf_convert.py | 0
331 .../portage/tests/dep/test_get_operator.py | 0
332 .../tests/dep/test_get_required_use_flags.py | 0
333 {pym => lib}/portage/tests/dep/test_isjustname.py | 0
334 {pym => lib}/portage/tests/dep/test_isvalidatom.py | 0
335 .../portage/tests/dep/test_match_from_list.py | 0
336 {pym => lib}/portage/tests/dep/test_overlap_dnf.py | 0
337 .../portage/tests/dep/test_paren_reduce.py | 0
338 {pym => lib}/portage/tests/dep/test_use_reduce.py | 0
339 {pym => lib}/portage/tests/ebuild/__init__.py | 0
340 {pym => lib}/portage/tests/ebuild/__test__.py | 0
341 .../tests/ebuild/test_array_fromfile_eof.py | 0
342 {pym => lib}/portage/tests/ebuild/test_config.py | 0
343 .../portage/tests/ebuild/test_doebuild_fd_pipes.py | 0
344 .../portage/tests/ebuild/test_doebuild_spawn.py | 0
345 .../portage/tests/ebuild/test_ipc_daemon.py | 0
346 {pym => lib}/portage/tests/ebuild/test_spawn.py | 0
347 .../tests/ebuild/test_use_expand_incremental.py | 0
348 {pym => lib}/portage/tests/emerge/__init__.py | 0
349 {pym => lib}/portage/tests/emerge/__test__.py | 0
350 .../portage/tests/emerge/test_config_protect.py | 0
351 .../emerge/test_emerge_blocker_file_collision.py | 0
352 .../portage/tests/emerge/test_emerge_slot_abi.py | 0
353 .../portage/tests/emerge/test_global_updates.py | 0
354 {pym => lib}/portage/tests/emerge/test_simple.py | 0
355 {pym => lib}/portage/tests/env/__init__.py | 0
356 {pym => lib}/portage/tests/env/__test__.py | 0
357 {pym => lib}/portage/tests/env/config/__init__.py | 0
358 {pym => lib}/portage/tests/env/config/__test__.py | 0
359 .../tests/env/config/test_PackageKeywordsFile.py | 0
360 .../tests/env/config/test_PackageMaskFile.py | 0
361 .../tests/env/config/test_PackageUseFile.py | 0
362 .../tests/env/config/test_PortageModulesFile.py | 0
363 {pym => lib}/portage/tests/glsa/__init__.py | 0
364 {pym => lib}/portage/tests/glsa/__test__.py | 0
365 .../portage/tests/glsa/test_security_set.py | 0
366 {pym => lib}/portage/tests/lafilefixer/__init__.py | 0
367 {pym => lib}/portage/tests/lafilefixer/__test__.py | 0
368 .../portage/tests/lafilefixer/test_lafilefixer.py | 0
369 {pym => lib}/portage/tests/lazyimport/__init__.py | 0
370 {pym => lib}/portage/tests/lazyimport/__test__.py | 0
371 .../test_lazy_import_portage_baseline.py | 0
372 .../lazyimport/test_preload_portage_submodules.py | 0
373 {pym => lib}/portage/tests/lint/__init__.py | 0
374 {pym => lib}/portage/tests/lint/__test__.py | 0
375 {pym => lib}/portage/tests/lint/metadata.py | 0
376 .../portage/tests/lint/test_bash_syntax.py | 0
377 .../portage/tests/lint/test_compile_modules.py | 0
378 .../portage/tests/lint/test_import_modules.py | 0
379 {pym => lib}/portage/tests/locks/__init__.py | 0
380 {pym => lib}/portage/tests/locks/__test__.py | 0
381 .../portage/tests/locks/test_asynchronous_lock.py | 0
382 .../portage/tests/locks/test_lock_nonblock.py | 0
383 {pym => lib}/portage/tests/news/__init__.py | 0
384 {pym => lib}/portage/tests/news/__test__.py | 0
385 {pym => lib}/portage/tests/news/test_NewsItem.py | 0
386 {pym => lib}/portage/tests/process/__init__.py | 0
387 {pym => lib}/portage/tests/process/__test__.py | 0
388 .../portage/tests/process/test_PopenProcess.py | 0
389 .../tests/process/test_PopenProcessBlockingIO.py | 0
390 {pym => lib}/portage/tests/process/test_poll.py | 75 ++++---
391 .../portage/tests/resolver/ResolverPlayground.py | 0
392 {pym => lib}/portage/tests/resolver/__init__.py | 0
393 {pym => lib}/portage/tests/resolver/__test__.py | 0
394 .../resolver/binpkg_multi_instance/__init__.py | 0
395 .../resolver/binpkg_multi_instance/__test__.py | 0
396 .../test_build_id_profile_format.py | 0
397 .../binpkg_multi_instance/test_rebuilt_binaries.py | 0
398 .../portage/tests/resolver/soname/__init__.py | 0
399 .../portage/tests/resolver/soname/__test__.py | 0
400 .../tests/resolver/soname/test_autounmask.py | 0
401 .../portage/tests/resolver/soname/test_depclean.py | 0
402 .../tests/resolver/soname/test_downgrade.py | 0
403 .../tests/resolver/soname/test_or_choices.py | 0
404 .../tests/resolver/soname/test_reinstall.py | 0
405 .../tests/resolver/soname/test_skip_update.py | 0
406 .../soname/test_slot_conflict_reinstall.py | 0
407 .../resolver/soname/test_slot_conflict_update.py | 0
408 .../tests/resolver/soname/test_soname_provided.py | 0
409 .../tests/resolver/soname/test_unsatisfiable.py | 0
410 .../tests/resolver/soname/test_unsatisfied.py | 0
411 .../portage/tests/resolver/test_autounmask.py | 0
412 .../tests/resolver/test_autounmask_binpkg_use.py | 0
413 .../resolver/test_autounmask_keep_keywords.py | 0
414 .../tests/resolver/test_autounmask_multilib_use.py | 0
415 .../tests/resolver/test_autounmask_parent.py | 0
416 .../resolver/test_autounmask_use_backtrack.py | 0
417 .../tests/resolver/test_autounmask_use_breakage.py | 0
418 .../portage/tests/resolver/test_backtracking.py | 0
419 {pym => lib}/portage/tests/resolver/test_bdeps.py | 0
420 .../resolver/test_binary_pkg_ebuild_visibility.py | 0
421 .../portage/tests/resolver/test_blocker.py | 0
422 .../portage/tests/resolver/test_changed_deps.py | 0
423 .../tests/resolver/test_circular_choices.py | 0
424 .../tests/resolver/test_circular_dependencies.py | 0
425 .../portage/tests/resolver/test_complete_graph.py | 0
426 ...test_complete_if_new_subslot_without_revbump.py | 0
427 .../portage/tests/resolver/test_depclean.py | 0
428 .../portage/tests/resolver/test_depclean_order.py | 0
429 .../resolver/test_depclean_slot_unavailable.py | 0
430 {pym => lib}/portage/tests/resolver/test_depth.py | 0
431 .../resolver/test_disjunctive_depend_order.py | 0
432 {pym => lib}/portage/tests/resolver/test_eapi.py | 0
433 .../tests/resolver/test_features_test_use.py | 88 ++++++++
434 .../resolver/test_imagemagick_graphicsmagick.py | 0
435 .../portage/tests/resolver/test_keywords.py | 0
436 .../portage/tests/resolver/test_merge_order.py | 0
437 .../test_missing_iuse_and_evaluated_atoms.py | 0
438 .../portage/tests/resolver/test_multirepo.py | 0
439 .../portage/tests/resolver/test_multislot.py | 0
440 .../tests/resolver/test_old_dep_chain_display.py | 0
441 .../portage/tests/resolver/test_onlydeps.py | 0
442 .../tests/resolver/test_onlydeps_circular.py | 0
443 .../tests/resolver/test_onlydeps_minimal.py | 0
444 .../portage/tests/resolver/test_or_choices.py | 0
445 .../tests/resolver/test_or_downgrade_installed.py | 0
446 .../tests/resolver/test_or_upgrade_installed.py | 0
447 {pym => lib}/portage/tests/resolver/test_output.py | 0
448 .../portage/tests/resolver/test_package_tracker.py | 0
449 .../tests/resolver/test_profile_default_eapi.py | 0
450 .../tests/resolver/test_profile_package_set.py | 0
451 .../portage/tests/resolver/test_rebuild.py | 0
452 .../test_regular_slot_change_without_revbump.py | 0
453 .../portage/tests/resolver/test_required_use.py | 0
454 .../resolver/test_runtime_cycle_merge_order.py | 0
455 {pym => lib}/portage/tests/resolver/test_simple.py | 0
456 .../portage/tests/resolver/test_slot_abi.py | 0
457 .../tests/resolver/test_slot_abi_downgrade.py | 0
458 .../resolver/test_slot_change_without_revbump.py | 0
459 .../portage/tests/resolver/test_slot_collisions.py | 0
460 .../resolver/test_slot_conflict_force_rebuild.py | 0
461 .../resolver/test_slot_conflict_mask_update.py | 0
462 .../tests/resolver/test_slot_conflict_rebuild.py | 0
463 .../test_slot_conflict_unsatisfied_deep_deps.py | 0
464 .../tests/resolver/test_slot_conflict_update.py | 0
465 .../resolver/test_slot_operator_autounmask.py | 0
466 .../resolver/test_slot_operator_complete_graph.py | 0
467 .../resolver/test_slot_operator_exclusive_slots.py | 0
468 .../tests/resolver/test_slot_operator_rebuild.py | 0
469 .../resolver/test_slot_operator_required_use.py | 0
470 .../resolver/test_slot_operator_reverse_deps.py | 0
471 .../test_slot_operator_runtime_pkg_mask.py | 0
472 .../resolver/test_slot_operator_unsatisfied.py | 0
473 .../tests/resolver/test_slot_operator_unsolved.py | 0
474 ..._slot_operator_update_probe_parent_downgrade.py | 0
475 .../test_solve_non_slot_operator_slot_conflicts.py | 0
476 .../portage/tests/resolver/test_targetroot.py | 0
477 .../tests/resolver/test_unpack_dependencies.py | 0
478 .../portage/tests/resolver/test_use_aliases.py | 0
479 .../tests/resolver/test_use_dep_defaults.py | 0
480 .../portage/tests/resolver/test_useflags.py | 0
481 .../resolver/test_virtual_minimize_children.py | 0
482 .../portage/tests/resolver/test_virtual_slot.py | 0
483 .../portage/tests/resolver/test_with_test_deps.py | 0
484 {pym => lib}/portage/tests/runTests.py | 0
485 {pym => lib}/portage/tests/sets/__init__.py | 0
486 {pym => lib}/portage/tests/sets/__test__.py | 0
487 {pym => lib}/portage/tests/sets/base/__init__.py | 0
488 {pym => lib}/portage/tests/sets/base/__test__.py | 0
489 .../tests/sets/base/testInternalPackageSet.py | 0
490 {pym => lib}/portage/tests/sets/files/__init__.py | 0
491 {pym => lib}/portage/tests/sets/files/__test__.py | 0
492 .../portage/tests/sets/files/testConfigFileSet.py | 0
493 .../portage/tests/sets/files/testStaticFileSet.py | 0
494 {pym => lib}/portage/tests/sets/shell/__init__.py | 0
495 {pym => lib}/portage/tests/sets/shell/__test__.py | 0
496 {pym => lib}/portage/tests/sets/shell/testShell.py | 0
497 {pym => lib}/portage/tests/sync/__init__.py | 0
498 {pym => lib}/portage/tests/sync/__test__.py | 0
499 {pym => lib}/portage/tests/sync/test_sync_local.py | 15 +-
500 {pym => lib}/portage/tests/unicode/__init__.py | 0
501 {pym => lib}/portage/tests/unicode/__test__.py | 0
502 .../portage/tests/unicode/test_string_format.py | 0
503 {pym => lib}/portage/tests/update/__init__.py | 0
504 {pym => lib}/portage/tests/update/__test__.py | 0
505 {pym => lib}/portage/tests/update/test_move_ent.py | 0
506 .../portage/tests/update/test_move_slot_ent.py | 0
507 .../portage/tests/update/test_update_dbentry.py | 0
508 {pym => lib}/portage/tests/util/__init__.py | 0
509 {pym => lib}/portage/tests/util/__test__.py | 0
510 .../portage/tests/util/dyn_libs}/__init__.py | 0
511 .../portage/tests/util/dyn_libs}/__test__.py | 0
512 .../tests/util/dyn_libs/test_soname_deps.py | 34 +++
513 .../portage/tests/util/eventloop}/__init__.py | 0
514 .../portage/tests/util/eventloop}/__test__.py | 0
515 .../tests/util/eventloop/test_call_soon_fifo.py | 0
516 .../portage/tests/util/file_copy}/__init__.py | 0
517 .../portage/tests/util/file_copy}/__test__.py | 0
518 .../portage/tests/util/file_copy/test_copyfile.py | 0
519 .../portage/tests/util/futures}/__init__.py | 0
520 .../portage/tests/util/futures}/__test__.py | 0
521 .../tests/util/futures/asyncio}/__init__.py | 0
522 .../tests/util/futures/asyncio}/__test__.py | 0
523 .../util/futures/asyncio/test_child_watcher.py | 0
524 .../futures/asyncio/test_event_loop_in_fork.py | 0
525 .../tests/util/futures/asyncio/test_pipe_closed.py | 0
526 .../asyncio/test_policy_wrapper_recursion.py | 0
527 .../futures/asyncio/test_run_until_complete.py | 0
528 .../util/futures/asyncio/test_subprocess_exec.py | 160 ++++++++++++++
529 .../util/futures/asyncio/test_wakeup_fd_sigchld.py | 76 +++++++
530 .../tests/util/futures/test_compat_coroutine.py | 159 ++++++++++++++
531 .../tests/util/futures/test_done_callback.py | 0
532 .../tests/util/futures/test_iter_completed.py | 0
533 .../portage/tests/util/futures/test_retry.py | 0
534 {pym => lib}/portage/tests/util/test_checksum.py | 0
535 {pym => lib}/portage/tests/util/test_digraph.py | 0
536 {pym => lib}/portage/tests/util/test_getconfig.py | 0
537 {pym => lib}/portage/tests/util/test_grabdict.py | 0
538 lib/portage/tests/util/test_install_mask.py | 129 +++++++++++
539 .../portage/tests/util/test_normalizedPath.py | 0
540 .../portage/tests/util/test_stackDictList.py | 0
541 {pym => lib}/portage/tests/util/test_stackDicts.py | 0
542 {pym => lib}/portage/tests/util/test_stackLists.py | 0
543 .../portage/tests/util/test_uniqueArray.py | 0
544 {pym => lib}/portage/tests/util/test_varExpand.py | 0
545 {pym => lib}/portage/tests/util/test_whirlpool.py | 0
546 {pym => lib}/portage/tests/util/test_xattr.py | 0
547 {pym => lib}/portage/tests/versions/__init__.py | 0
548 .../portage/tests/versions}/__test__.py | 0
549 .../portage/tests/versions/test_cpv_sort_key.py | 0
550 {pym => lib}/portage/tests/versions/test_vercmp.py | 0
551 {pym => lib}/portage/tests/xpak/__init__.py | 0
552 .../tests => lib/portage/tests/xpak}/__test__.py | 0
553 {pym => lib}/portage/tests/xpak/test_decodeint.py | 0
554 {pym => lib}/portage/update.py | 0
555 {pym => lib}/portage/util/ExtractKernelVersion.py | 0
556 {pym => lib}/portage/util/SlotObject.py | 0
557 {pym => lib}/portage/util/_ShelveUnicodeWrapper.py | 0
558 {pym => lib}/portage/util/__init__.py | 0
559 {pym => lib}/portage/util/_async/AsyncFunction.py | 0
560 {pym => lib}/portage/util/_async/AsyncScheduler.py | 0
561 .../portage/util/_async/AsyncTaskFuture.py | 0
562 {pym => lib}/portage/util/_async/FileCopier.py | 0
563 {pym => lib}/portage/util/_async/FileDigester.py | 0
564 {pym => lib}/portage/util/_async/ForkProcess.py | 0
565 {pym => lib}/portage/util/_async/PipeLogger.py | 0
566 .../portage/util/_async/PipeReaderBlockingIO.py | 0
567 {pym => lib}/portage/util/_async/PopenProcess.py | 0
568 .../portage/util/_async/SchedulerInterface.py | 0
569 {pym => lib}/portage/util/_async/TaskScheduler.py | 0
570 {pym => lib}/portage/util/_async/__init__.py | 0
571 .../portage/util/_async/run_main_scheduler.py | 0
572 {pym => lib}/portage/util/_ctypes.py | 0
573 {pym => lib}/portage/util/_desktop_entry.py | 0
574 .../portage/util/_dyn_libs/LinkageMapELF.py | 0
575 {pym => lib}/portage/util/_dyn_libs/NeededEntry.py | 0
576 .../util/_dyn_libs/PreservedLibsRegistry.py | 0
577 {pym => lib}/portage/util/_dyn_libs/__init__.py | 0
578 .../util/_dyn_libs/display_preserved_libs.py | 0
579 {pym => lib}/portage/util/_dyn_libs/soname_deps.py | 42 +++-
580 {pym => lib}/portage/util/_eventloop/EventLoop.py | 52 ++++-
581 .../portage/util/_eventloop/PollConstants.py | 0
582 .../portage/util/_eventloop/PollSelectAdapter.py | 0
583 {pym => lib}/portage/util/_eventloop/__init__.py | 0
584 .../portage/util/_eventloop/asyncio_event_loop.py | 66 +++++-
585 .../portage/util/_eventloop/global_event_loop.py | 0
586 {pym => lib}/portage/util/_get_vm_info.py | 0
587 {pym => lib}/portage/util/_info_files.py | 0
588 {pym => lib}/portage/util/_path.py | 0
589 {pym => lib}/portage/util/_pty.py | 0
590 {pym => lib}/portage/util/_urlopen.py | 0
591 {pym => lib}/portage/util/_xattr.py | 0
592 {pym => lib}/portage/util/backoff.py | 0
593 {pym => lib}/portage/util/changelog.py | 0
594 {pym => lib}/portage/util/compression_probe.py | 2 +-
595 {pym => lib}/portage/util/configparser.py | 0
596 {pym => lib}/portage/util/cpuinfo.py | 0
597 {pym => lib}/portage/util/digraph.py | 0
598 {pym => lib}/portage/util/elf/__init__.py | 0
599 {pym => lib}/portage/util/elf/constants.py | 0
600 {pym => lib}/portage/util/elf/header.py | 0
601 {pym => lib}/portage/util/endian/__init__.py | 0
602 {pym => lib}/portage/util/endian/decode.py | 0
603 {pym => lib}/portage/util/env_update.py | 0
604 {pym => lib}/portage/util/file_copy/__init__.py | 0
605 {pym => lib}/portage/util/formatter.py | 0
606 {pym => lib}/portage/util/futures/__init__.py | 0
607 .../portage/util/futures/_asyncio/__init__.py | 53 +++++
608 lib/portage/util/futures/_asyncio/process.py | 107 ++++++++++
609 lib/portage/util/futures/_asyncio/streams.py | 96 +++++++++
610 .../portage/util/futures/_asyncio/tasks.py | 0
611 lib/portage/util/futures/compat_coroutine.py | 116 ++++++++++
612 {pym => lib}/portage/util/futures/events.py | 0
613 .../portage/util/futures/executor}/__init__.py | 0
614 {pym => lib}/portage/util/futures/executor/fork.py | 0
615 .../portage/util/futures/extendedfutures.py | 0
616 {pym => lib}/portage/util/futures/futures.py | 0
617 .../portage/util/futures/iter_completed.py | 0
618 {pym => lib}/portage/util/futures/retry.py | 0
619 {pym => lib}/portage/util/futures/transports.py | 0
620 {pym => lib}/portage/util/futures/unix_events.py | 0
621 {pym => lib}/portage/util/install_mask.py | 7 +-
622 .../portage/util/iterators/MultiIterGroupBy.py | 0
623 {pym => lib}/portage/util/iterators/__init__.py | 0
624 {pym => lib}/portage/util/lafilefixer.py | 0
625 {pym => lib}/portage/util/listdir.py | 0
626 {pym => lib}/portage/util/locale.py | 0
627 {pym => lib}/portage/util/monotonic.py | 0
628 {pym => lib}/portage/util/movefile.py | 0
629 {pym => lib}/portage/util/mtimedb.py | 0
630 {pym => lib}/portage/util/path.py | 0
631 {pym => lib}/portage/util/socks5.py | 0
632 {pym => lib}/portage/util/whirlpool.py | 0
633 {pym => lib}/portage/util/writeable_check.py | 0
634 {pym => lib}/portage/versions.py | 0
635 {pym => lib}/portage/xml/__init__.py | 0
636 {pym => lib}/portage/xml/metadata.py | 0
637 {pym => lib}/portage/xpak.py | 0
638 man/color.map.5 | 2 +-
639 man/emerge.1 | 10 +-
640 man/make.conf.5 | 8 +-
641 man/portage.5 | 29 ++-
642 man/ru/color.map.5 | 2 +-
643 misc/emerge-delta-webrsync | 26 ++-
644 pym/portage/sync/modules/webrsync/webrsync.py | 70 ------
645 .../tests/resolver/test_features_test_use.py | 68 ------
646 .../util/futures/asyncio/test_subprocess_exec.py | 236 ---------------------
647 repoman/README | 2 +-
648 repoman/RELEASE-NOTES | 7 +
649 repoman/TEST-NOTES | 6 +-
650 repoman/bin/repoman | 4 +-
651 repoman/cnf/qa_data/qa_data.yaml | 2 +
652 repoman/cnf/repository/qa_data.yaml | 2 +
653 repoman/{pym => lib}/repoman/__init__.py | 2 +-
654 repoman/{pym => lib}/repoman/_portage.py | 0
655 repoman/{pym => lib}/repoman/_subprocess.py | 0
656 repoman/{pym => lib}/repoman/actions.py | 0
657 repoman/{pym => lib}/repoman/argparser.py | 0
658 repoman/{pym => lib}/repoman/check_missingslot.py | 0
659 .../herds => lib/repoman/checks}/__init__.py | 0
660 repoman/{pym => lib}/repoman/config.py | 8 +-
661 repoman/{pym => lib}/repoman/copyrights.py | 0
662 repoman/{pym => lib}/repoman/errors.py | 0
663 repoman/{pym => lib}/repoman/gpg.py | 0
664 repoman/{pym => lib}/repoman/main.py | 0
665 repoman/{pym => lib}/repoman/metadata.py | 0
666 repoman/{pym => lib}/repoman/modules/__init__.py | 0
667 .../repoman/modules/commit/__init__.py | 0
668 .../repoman/modules/commit/manifest.py | 0
669 .../repoman/modules/commit/repochecks.py | 0
670 .../repoman/modules/linechecks/__init__.py | 0
671 .../modules/linechecks/assignment/__init__.py | 0
672 .../modules/linechecks/assignment/assignment.py | 0
673 .../repoman/modules/linechecks/base.py | 0
674 .../repoman/modules/linechecks/config.py | 0
675 .../repoman/modules/linechecks/controller.py | 0
676 .../repoman/modules/linechecks/depend/__init__.py | 0
677 .../repoman/modules/linechecks/depend/implicit.py | 0
678 .../modules/linechecks/deprecated/__init__.py | 0
679 .../modules/linechecks/deprecated/deprecated.py | 0
680 .../modules/linechecks/deprecated/inherit.py | 0
681 .../repoman/modules/linechecks/do/__init__.py | 0
682 .../repoman/modules/linechecks/do/dosym.py | 0
683 .../repoman/modules/linechecks/eapi/__init__.py | 0
684 .../repoman/modules/linechecks/eapi/checks.py | 0
685 .../repoman/modules/linechecks/eapi/definition.py | 0
686 .../repoman/modules/linechecks/emake/__init__.py | 0
687 .../repoman/modules/linechecks/emake/emake.py | 0
688 .../modules/linechecks/gentoo_header/__init__.py | 0
689 .../modules/linechecks/gentoo_header/header.py | 0
690 .../repoman/modules/linechecks/helpers/__init__.py | 0
691 .../repoman/modules/linechecks/helpers/offset.py | 0
692 .../repoman/modules/linechecks/nested/__init__.py | 0
693 .../repoman/modules/linechecks/nested/nested.py | 0
694 .../repoman/modules/linechecks/nested/nesteddie.py | 0
695 .../repoman/modules/linechecks/patches/__init__.py | 0
696 .../repoman/modules/linechecks/patches/patches.py | 0
697 .../repoman/modules/linechecks/phases/__init__.py | 0
698 .../repoman/modules/linechecks/phases/phase.py | 0
699 .../repoman/modules/linechecks/portage/__init__.py | 0
700 .../repoman/modules/linechecks/portage/internal.py | 0
701 .../repoman/modules/linechecks/quotes/__init__.py | 0
702 .../repoman/modules/linechecks/quotes/quoteda.py | 0
703 .../repoman/modules/linechecks/quotes/quotes.py | 0
704 .../repoman/modules/linechecks/uri/__init__.py | 0
705 .../repoman/modules/linechecks/uri/uri.py | 0
706 .../repoman/modules/linechecks/use/__init__.py | 0
707 .../repoman/modules/linechecks/use/builtwith.py | 0
708 .../repoman/modules/linechecks/useless/__init__.py | 0
709 .../repoman/modules/linechecks/useless/cd.py | 0
710 .../repoman/modules/linechecks/useless/dodoc.py | 0
711 .../modules/linechecks/whitespace/__init__.py | 0
712 .../repoman/modules/linechecks/whitespace/blank.py | 0
713 .../modules/linechecks/whitespace/whitespace.py | 0
714 .../modules/linechecks/workaround/__init__.py | 0
715 .../modules/linechecks/workaround/workarounds.py | 0
716 .../{pym => lib}/repoman/modules/scan/__init__.py | 0
717 .../repoman/modules/scan/depend/__init__.py | 0
718 .../repoman/modules/scan/depend/_depend_checks.py | 9 +
719 .../repoman/modules/scan/depend/_gen_arches.py | 0
720 .../repoman/modules/scan/depend/profile.py | 36 ++++
721 .../repoman/modules/scan/directories/__init__.py | 0
722 .../repoman/modules/scan/directories/files.py | 0
723 .../repoman/modules/scan/directories/mtime.py | 0
724 .../repoman/modules/scan/eapi/__init__.py | 0
725 .../{pym => lib}/repoman/modules/scan/eapi/eapi.py | 0
726 .../repoman/modules/scan/ebuild/__init__.py | 0
727 .../repoman/modules/scan/ebuild/ebuild.py | 0
728 .../repoman/modules/scan/ebuild/multicheck.py | 0
729 .../repoman/modules/scan/eclasses/__init__.py | 0
730 .../repoman/modules/scan/eclasses/live.py | 0
731 .../repoman/modules/scan/eclasses/ruby.py | 0
732 .../repoman/modules/scan/fetch/__init__.py | 0
733 .../repoman/modules/scan/fetch/fetches.py | 0
734 .../repoman/modules/scan/keywords/__init__.py | 0
735 .../repoman/modules/scan/keywords/keywords.py | 21 ++
736 .../repoman/modules/scan/manifest/__init__.py | 0
737 .../repoman/modules/scan/manifest/manifests.py | 0
738 .../repoman/modules/scan/metadata/__init__.py | 0
739 .../repoman/modules/scan/metadata/description.py | 0
740 .../modules/scan/metadata/ebuild_metadata.py | 0
741 .../repoman/modules/scan/metadata/pkgmetadata.py | 0
742 .../repoman/modules/scan/metadata/restrict.py | 0
743 .../repoman/modules/scan/metadata/use_flags.py | 0
744 .../{pym => lib}/repoman/modules/scan/module.py | 0
745 .../repoman/modules/scan/options/__init__.py | 0
746 .../repoman/modules/scan/options/options.py | 0
747 repoman/{pym => lib}/repoman/modules/scan/scan.py | 0
748 .../{pym => lib}/repoman/modules/scan/scanbase.py | 0
749 .../repoman/modules/vcs/None/__init__.py | 0
750 .../repoman/modules/vcs/None/changes.py | 0
751 .../repoman/modules/vcs/None/status.py | 0
752 .../{pym => lib}/repoman/modules/vcs/__init__.py | 0
753 .../repoman/modules/vcs/bzr/__init__.py | 0
754 .../repoman/modules/vcs/bzr/changes.py | 0
755 .../{pym => lib}/repoman/modules/vcs/bzr/status.py | 0
756 .../{pym => lib}/repoman/modules/vcs/changes.py | 0
757 .../repoman/modules/vcs/cvs/__init__.py | 0
758 .../repoman/modules/vcs/cvs/changes.py | 0
759 .../{pym => lib}/repoman/modules/vcs/cvs/status.py | 0
760 .../repoman/modules/vcs/git/__init__.py | 0
761 .../repoman/modules/vcs/git/changes.py | 0
762 .../{pym => lib}/repoman/modules/vcs/git/status.py | 0
763 .../repoman/modules/vcs/hg/__init__.py | 0
764 .../{pym => lib}/repoman/modules/vcs/hg/changes.py | 0
765 .../{pym => lib}/repoman/modules/vcs/hg/status.py | 0
766 .../{pym => lib}/repoman/modules/vcs/settings.py | 0
767 .../repoman/modules/vcs/svn/__init__.py | 0
768 .../repoman/modules/vcs/svn/changes.py | 0
769 .../{pym => lib}/repoman/modules/vcs/svn/status.py | 0
770 repoman/{pym => lib}/repoman/modules/vcs/vcs.py | 0
771 repoman/{pym => lib}/repoman/profile.py | 0
772 repoman/{pym => lib}/repoman/qa_data.py | 0
773 repoman/{pym => lib}/repoman/qa_tracker.py | 0
774 repoman/{pym => lib}/repoman/repos.py | 0
775 repoman/{pym => lib}/repoman/scanner.py | 0
776 repoman/{pym => lib}/repoman/tests/__init__.py | 0
777 .../changelog => lib/repoman/tests}/__test__.py | 0
778 .../repoman/tests/changelog/__init__.py | 0
779 .../lib/repoman/tests/changelog}/__test__.py | 0
780 .../repoman/tests/changelog/test_echangelog.py | 0
781 .../{pym => lib}/repoman/tests/commit/__init__.py | 0
782 .../{pym => lib}/repoman/tests/commit/__test__.py | 0
783 .../repoman/tests/commit/test_commitmsg.py | 0
784 repoman/{pym => lib}/repoman/tests/runTests.py | 2 +-
785 .../{pym => lib}/repoman/tests/simple/__init__.py | 0
786 .../{pym => lib}/repoman/tests/simple/__test__.py | 0
787 .../repoman/tests/simple/test_simple.py | 0
788 repoman/{pym => lib}/repoman/utilities.py | 2 +-
789 repoman/man/repoman.1 | 5 +-
790 repoman/pym/repoman/checks/herds/herdbase.py | 135 ------------
791 repoman/pym/repoman/checks/herds/metadata.py | 26 ---
792 repoman/runtests | 4 +-
793 repoman/setup.py | 24 +--
794 runtests | 4 +-
795 setup.py | 8 +-
796 testpath | 4 +-
797 tox.ini | 16 ++
798 788 files changed, 2521 insertions(+), 954 deletions(-)
799
800 diff --cc lib/_emerge/Package.py
801 index e73c9d9d1,5f34f3d27..ed4bd2277
802 --- a/lib/_emerge/Package.py
803 +++ b/lib/_emerge/Package.py
804 @@@ -93,13 -93,10 +93,16 @@@ class Package(Task)
805 # sync metadata with validated repo (may be UNKNOWN_REPO)
806 self._metadata['repository'] = self.cpv.repo
807
808 - implicit_match = db._iuse_implicit_cnstr(self.cpv, self._metadata)
809 + if self.root_config.settings.local_config:
810 + implicit_match = db._iuse_implicit_cnstr(self.cpv, self._metadata)
811 + else:
812 + implicit_match = db._repoman_iuse_implicit_cnstr(self.cpv, self._metadata)
813 + if 'force-multilib' in self.root_config.settings.features:
814 + iuse = self._metadata["IUSE"]
815 + for multilib_abis in self.root_config.settings.get("MULTILIB_ABIS", '').split():
816 + iuse += " multilib_abi_" + multilib_abis
817 + iuse += " abiwrapper"
818 + self._metadata["IUSE"] = iuse
819 usealiases = self.root_config.settings._use_manager.getUseAliases(self)
820 self.iuse = self._iuse(self, self._metadata["IUSE"].split(),
821 implicit_match, usealiases, self.eapi)
822 diff --cc lib/portage/package/ebuild/config.py
823 index 1f1158d33,a68df5807..14a2193ef
824 --- a/lib/portage/package/ebuild/config.py
825 +++ b/lib/portage/package/ebuild/config.py
826 @@@ -952,14 -962,15 +962,22 @@@ class config(object)
827
828 # initialize self.features
829 self.regenerate()
830 + feature_use = []
831 + if "test" in self.features:
832 + feature_use.append("test")
833 + self.configdict["features"]["USE"] = self._default_features_use = " ".join(feature_use)
834 + if feature_use:
835 + # Regenerate USE so that the initial "test" flag state is
836 + # correct for evaluation of !test? conditionals in RESTRICT.
837 + self.regenerate()
838
839 + if 'force-multilib' in self.features:
840 + #add multilib_abi internally to list of USE_EXPANDed vars
841 + self["USE_EXPAND"] = "MULTILIB_ABI" + " " + self.get("USE_EXPAND", "")
842 + self.backup_changes("USE_EXPAND")
843 + default_abi = self.configdict["defaults"].get('DEFAULT_ABI', '').strip()
844 + if default_abi:
845 + self.configdict["defaults"]["USE"] = self.configdict["defaults"].get("USE", "") + " multilib_abi_" + default_abi
846 if unprivileged:
847 self.features.add('unprivileged')
848
849 @@@ -1906,16 -1938,6 +1947,10 @@@
850 iuse_implicit.add("build")
851 iuse_implicit.add("bootstrap")
852
853 - # Controlled by FEATURES=test. Make this implicit, so handling
854 - # of FEATURES=test is consistent regardless of explicit IUSE.
855 - # Users may use use.mask/package.use.mask to control
856 - # FEATURES=test for all ebuilds, regardless of explicit IUSE.
857 - iuse_implicit.add("test")
858 -
859 + if 'force-multilib' in self.features:
860 + for multilib_abis in self.get('MULTILIB_ABIS', '').split():
861 + iuse_implicit.add("multilib_abi_" + multilib_abis)
862 +
863 return iuse_implicit
864
865 def _getUseMask(self, pkg, stable=None):