Gentoo Archives: gentoo-commits

From: "Fabian Groffen (grobian)" <grobian@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] portage r14512 - in main/branches/prefix: . bin cnf man pym/_emerge
Date: Wed, 07 Oct 2009 19:12:21
Message-Id: E1Mvbvv-00058r-0y@stork.gentoo.org
1 Author: grobian
2 Date: 2009-10-07 19:12:18 +0000 (Wed, 07 Oct 2009)
3 New Revision: 14512
4
5 Modified:
6 main/branches/prefix/NEWS
7 main/branches/prefix/bin/repoman
8 main/branches/prefix/cnf/make.globals
9 main/branches/prefix/man/emerge.1
10 main/branches/prefix/man/make.conf.5
11 main/branches/prefix/man/repoman.1
12 main/branches/prefix/pym/_emerge/Scheduler.py
13 main/branches/prefix/pym/_emerge/help.py
14 main/branches/prefix/pym/_emerge/main.py
15 main/branches/prefix/pym/_emerge/visible.py
16 Log:
17 Merged from trunk -r14497:14507
18
19 | 14498 | Enable FEATURES=news by default and document it. |
20 | zmedico | |
21
22 | 14499 | When restarting emerge, don't trust sys.argv[0] since |
23 | zmedico | eselect-python may modify it. |
24
25 | 14500 | Add a 'digest.missing' check, for cases like mythtv where |
26 | zmedico | the eclass has modified the SRC_URI and now the Manifest has |
27 | | missing digests. Thanks to Brian Harring for the suggestion. |
28
29 | 14501 | Add a new --accept-properties option so that users can |
30 | zmedico | temporarily override ACCEPT_PROPERTIES on the commandline, |
31 | | without relying on emerge's legacy behavior of allowing |
32 | | variables to leak in from the calling environment. A typical |
33 | | usage example for this option would be to use |
34 | | --accept-properties=-interactive to temporarily mask |
35 | | interactive packages. With default configuration, this would |
36 | | result in an effective ACCEPT_PROPERTIES value of "* |
37 | | -interactive". |
38
39 | 14502 | Add a note about --accept-properties and exclusion of |
40 | zmedico | interactive updates. |
41
42 | 14504 | Bug #287870 - Add -r option as short version of --resume. |
43 | zmedico | |
44
45 | 14505 | Fix collision in variable name 'x'. |
46 | zmedico | |
47
48 | 14506 | Exempt installed packages from PROPERTIES masking since the |
49 | zmedico | user is likely to temporarily alter ACCEPT_PROPERIES in |
50 | | order to avoid interactive updates and we don't want this to |
51 | | distort resolver choices or trigger warning messages about |
52 | | installed packages being masked. |
53
54 | 14507 | Bug #265267 - When disabling --jobs due to interactive |
55 | zmedico | package(s), hint about --accept-properties=-interactive |
56 | | option. |
57
58
59 Modified: main/branches/prefix/NEWS
60 ===================================================================
61 --- main/branches/prefix/NEWS 2009-10-07 19:09:55 UTC (rev 14511)
62 +++ main/branches/prefix/NEWS 2009-10-07 19:12:18 UTC (rev 14512)
63 @@ -7,6 +7,9 @@
64 in order to protect against uninstallation of required libraries.
65 * Add license visibility filtering (GLEP 23)
66 * Add support for generic package sets (also see RELEASE-NOTES)
67 +* Add --accept-properties option for emerge which allows you to use
68 + --accept-properties=-interactive in order to temporarily exclude
69 + interactive updates.
70
71 portage-2.1.6
72 -------------
73
74 Modified: main/branches/prefix/bin/repoman
75 ===================================================================
76 --- main/branches/prefix/bin/repoman 2009-10-07 19:09:55 UTC (rev 14511)
77 +++ main/branches/prefix/bin/repoman 2009-10-07 19:12:18 UTC (rev 14512)
78 @@ -312,7 +312,9 @@
79 "RDEPEND.implicit":"RDEPEND is unset in the ebuild which triggers implicit RDEPEND=$DEPEND assignment",
80 "RDEPEND.suspect":"RDEPEND contains a package that usually only belongs in DEPEND.",
81 "RESTRICT.invalid":"This ebuild contains invalid RESTRICT values.",
82 - "digestentry.unused":"Some files listed in the Manifest aren't referenced in SRC_URI",
83 + "digest.assumed":"Existing digest must be assumed correct (Package level only)",
84 + "digest.missing":"Some files listed in SRC_URI aren't referenced in the Manifest",
85 + "digest.unused":"Some files listed in the Manifest aren't referenced in SRC_URI",
86 "ebuild.nostable":"There are no ebuilds that are marked as stable for your ARCH",
87 "ebuild.allmasked":"All ebuilds are masked for this package (Package level only)",
88 "ebuild.majorsyn":"This ebuild has a major syntax error that may cause the ebuild to fail partially or fully",
89 @@ -335,7 +337,8 @@
90 "changelog.ebuildadded",
91 "changelog.missing",
92 "changelog.notadded",
93 -"digestentry.unused",
94 +"digest.assumed",
95 +"digest.unused",
96 "ebuild.notadded",
97 "ebuild.nostable",
98 "ebuild.allmasked",
99 @@ -1094,8 +1097,12 @@
100 myfiles_all = set(myfiles_all)
101 for entry in mydigests:
102 if entry not in myfiles_all:
103 - stats["digestentry.unused"] += 1
104 - fails["digestentry.unused"].append(checkdir+"::"+entry)
105 + stats["digest.unused"] += 1
106 + fails["digest.unused"].append(checkdir+"::"+entry)
107 + for entry in myfiles_all:
108 + if entry not in mydigests:
109 + stats["digest.missing"] += 1
110 + fails["digest.missing"].append(checkdir+"::"+entry)
111 del myfiles_all
112
113 if os.path.exists(checkdir+"/files"):
114 @@ -1496,8 +1503,8 @@
115 stats[m+".syntax"] += 1
116 fails[m+".syntax"].append(catpkg+".ebuild "+m+": "+b)
117
118 - badlicsyntax = len([x for x in type_list if x == "LICENSE"])
119 - badprovsyntax = len([x for x in type_list if x == "PROVIDE"])
120 + badlicsyntax = len([z for z in type_list if z == "LICENSE"])
121 + badprovsyntax = len([z for z in type_list if z == "PROVIDE"])
122 baddepsyntax = len(type_list) != badlicsyntax + badprovsyntax
123 badlicsyntax = badlicsyntax > 0
124 badprovsyntax = badprovsyntax > 0
125
126 Modified: main/branches/prefix/cnf/make.globals
127 ===================================================================
128 --- main/branches/prefix/cnf/make.globals 2009-10-07 19:09:55 UTC (rev 14511)
129 +++ main/branches/prefix/cnf/make.globals 2009-10-07 19:12:18 UTC (rev 14512)
130 @@ -41,7 +41,7 @@
131 RESUMECOMMAND="@PORTAGE_WGET@ -c -t 5 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
132
133 # Default user options
134 -FEATURES="assume-digests distlocks fixpackages parallel-fetch protect-owned
135 +FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned
136 sandbox sfperms strict unmerge-logs unmerge-orphans userfetch"
137
138 # Ignore file collisions in /lib/modules since files inside this directory
139
140 Modified: main/branches/prefix/man/emerge.1
141 ===================================================================
142 --- main/branches/prefix/man/emerge.1 2009-10-07 19:09:55 UTC (rev 14511)
143 +++ main/branches/prefix/man/emerge.1 2009-10-07 19:12:18 UTC (rev 14512)
144 @@ -182,7 +182,7 @@
145 the \fB\-\-jobs\fR and \fB\-\-load\-average\fR options. If you would like to
146 generate and distribute cache for use by others, use \fBegencache\fR(1).
147 .TP
148 -.BR "\-\-resume"
149 +.BR "\-\-resume" (\fB\-r\fR)
150 Resumes the most recent merge list that has been aborted due to an error.
151 Please note that this operation will only return an error on failure. If there
152 is nothing for portage to do, then portage will exit with a message and a
153 @@ -234,6 +234,20 @@
154 Displays the version number of \fBemerge\fR.
155 .SH "OPTIONS"
156 .TP
157 +.BR \-\-accept\-properties=ACCEPT_PROPERTIES
158 +This option temporarily overrides the \fBACCEPT_PROPERTIES\fR
159 +variable. The \fBACCEPT_PROPERTIES\fR variable is incremental,
160 +which means that the specified setting is appended to the
161 +existing value from your configuration. The special \fB-*\fR
162 +token can be used to discard the existing configuration
163 +value and start fresh. See the \fBMASKED PACKAGES\fR section
164 +and \fBmake.conf\fR(5) for more information about
165 +ACCEPT_PROPERTIES. A typical usage example for this option
166 +would be to use \fI\-\-accept\-properties=-interactive\fR to
167 +temporarily mask interactive packages. With default
168 +configuration, this would result in an effective
169 +\fBACCEPT_PROPERTIES\fR value of "* -interactive".
170 +.TP
171 .BR "\-\-alphabetical "
172 When displaying USE and other flag output, combines the enabled and
173 disabled lists into one list and sorts the whole list alphabetically.
174 @@ -667,7 +681,8 @@
175 \fBACCEPT_PROPERTIES\fR environment variable to allow or disallow the emerging
176 of a package masked by \fBPROPERTIES\fR. See \fBmake.conf\fR(5) for information
177 about \fBACCEPT_PROPERTIES\fR, and see \fBportage\fR(5) for information about
178 -\fI/etc/portage/package.properties\fR.
179 +\fI/etc/portage/package.properties\fR. Use the \fB\-\-accept\-properties\fR
180 +option to temporarily override \fBACCEPT_PROPERTIES\fR.
181 .SH "CONFIGURATION FILES"
182 Portage has a special feature called "config file protection". The purpose of
183 this feature is to prevent new package installs from clobbering existing
184
185 Modified: main/branches/prefix/man/make.conf.5
186 ===================================================================
187 --- main/branches/prefix/man/make.conf.5 2009-10-07 19:09:55 UTC (rev 14511)
188 +++ main/branches/prefix/man/make.conf.5 2009-10-07 19:12:18 UTC (rev 14512)
189 @@ -43,7 +43,9 @@
190 .TP
191 \fBACCEPT_PROPERTIES\fR = \fI[space delimited list of properties]\fR
192 This variable is used to mask packages based on PROPERTIES restrictions.
193 -See \fBebuild\fR(5) for more information about PROPERTIES.
194 +This varable can be temporarily overridden using the the
195 +\fB\-\-accept\-properties\fR option of \fBemerge\fR(1).
196 +See \fBebuild\fR(5) for more information about PROPERTIES.
197 .br
198 Defaults to the value of *.
199 .TP
200 @@ -266,6 +268,10 @@
201 portage feature called \fImultilib\-strict\fR. It will prevent emerge
202 from putting 64bit libraries into anything other than (/usr)/lib64.
203 .TP
204 +.B news
205 +Enable GLEP 42 new support. See
206 +\fIhttp://www.gentoo.org/proj/en/glep/glep-0042.html\fR.
207 +.TP
208 .B noauto
209 When utilizing \fBebuild\fR(1), only run the function requested.
210 .TP
211
212 Modified: main/branches/prefix/man/repoman.1
213 ===================================================================
214 --- main/branches/prefix/man/repoman.1 2009-10-07 19:09:55 UTC (rev 14511)
215 +++ main/branches/prefix/man/repoman.1 2009-10-07 19:12:18 UTC (rev 14512)
216 @@ -216,6 +216,12 @@
217 .B digest.assumed
218 Existing digest must be assumed correct (Package level only)
219 .TP
220 +.B digest.missing
221 +Some files listed in SRC_URI aren't referenced in the Manifest
222 +.TP
223 +.B digest.unused
224 +Some files listed in the Manifest aren't referenced in SRC_URI
225 +.TP
226 .B ebuild.allmasked
227 All ebuilds are masked for this package (Package level only)
228 .TP
229
230 Modified: main/branches/prefix/pym/_emerge/Scheduler.py
231 ===================================================================
232 --- main/branches/prefix/pym/_emerge/Scheduler.py 2009-10-07 19:09:55 UTC (rev 14511)
233 +++ main/branches/prefix/pym/_emerge/Scheduler.py 2009-10-07 19:12:18 UTC (rev 14512)
234 @@ -309,7 +309,10 @@
235 writemsg_level(">>> Setting --jobs=1 due " + \
236 "to the above interactive package(s)\n",
237 level=logging.INFO, noiselevel=-1)
238 -
239 + writemsg_level(">>> In order to temporarily mask " + \
240 + "interactive updates, you may\n" + \
241 + ">>> specify --accept-properties=-interactive\n",
242 + level=logging.INFO, noiselevel=-1)
243 self._status_display.quiet = \
244 not background or \
245 ("--quiet" in self.myopts and \
246 @@ -753,7 +756,9 @@
247 mtimedb["resume"]["mergelist"].remove(list(pkg))
248 mtimedb.commit()
249 portage.run_exitfuncs()
250 - mynewargv = [sys.argv[0], "--resume"]
251 + # Don't trust sys.argv[0] here because eselect-python may modify it.
252 + emerge_binary = os.path.join(portage.const.PORTAGE_BIN_PATH, 'emerge')
253 + mynewargv = [emerge_binary, "--resume"]
254 resume_opts = self.myopts.copy()
255 # For automatic resume, we need to prevent
256 # any of bad_resume_opts from leaking in
257
258 Modified: main/branches/prefix/pym/_emerge/help.py
259 ===================================================================
260 --- main/branches/prefix/pym/_emerge/help.py 2009-10-07 19:09:55 UTC (rev 14511)
261 +++ main/branches/prefix/pym/_emerge/help.py 2009-10-07 19:12:18 UTC (rev 14512)
262 @@ -14,7 +14,7 @@
263 print(" "+turquoise("emerge")+" < "+turquoise("--sync")+" | "+turquoise("--metadata")+" | "+turquoise("--info")+" >")
264 print(" "+turquoise("emerge")+" "+turquoise("--resume")+" [ "+green("--pretend")+" | "+green("--ask")+" | "+green("--skipfirst")+" ]")
265 print(" "+turquoise("emerge")+" "+turquoise("--help")+" [ "+green("--verbose")+" ] ")
266 - print(bold("Options:")+" "+green("-")+"["+green("abBcCdDefgGhjkKlnNoOpqPsStuvV")+"]")
267 + print(bold("Options:")+" "+green("-")+"["+green("abBcCdDefgGhjkKlnNoOpPqrsStuvV")+"]")
268 print(" [ " + green("--color")+" < " + turquoise("y") + " | "+ turquoise("n")+" > ] [ "+green("--columns")+" ]")
269 print(" [ "+green("--complete-graph")+" ] [ "+green("--deep")+" ]")
270 print(" [ "+green("--jobs") + " " + turquoise("JOBS")+" ] [ "+green("--keep-going")+" ] [ " + green("--load-average")+" " + turquoise("LOAD") + " ]")
271 @@ -161,7 +161,7 @@
272 for line in wrap(desc, desc_width):
273 print(desc_indent + line)
274 print()
275 - print(" "+green("--resume"))
276 + print(" "+green("--resume")+" ("+green("-r")+" short option)")
277 print(" Resumes the most recent merge list that has been aborted due to an")
278 print(" error. Please note that this operation will only return an error")
279 print(" on failure. If there is nothing for portage to do, then portage")
280 @@ -232,6 +232,22 @@
281 print(" "+bold("emerge info")+" for more advanced information.")
282 print()
283 print(turquoise("Options:"))
284 + print(" "+green("--accept-properties=ACCEPT_PROPERTIES"))
285 + desc = "This option temporarily overrides the ACCEPT_PROPERTIES " + \
286 + "variable. The ACCEPT_PROPERTIES variable is incremental, " + \
287 + "which means that the specified setting is appended to the " + \
288 + "existing value from your configuration. The special -* " + \
289 + "token can be used to discard the existing configuration " + \
290 + "value and start fresh. See the MASKED PACKAGES section " + \
291 + "and make.conf(5) for more information about " + \
292 + "ACCEPT_PROPERTIES. A typical usage example for this option " + \
293 + "would be to use --accept-properties=-interactive to " + \
294 + "temporarily mask interactive packages. With default " + \
295 + "configuration, this would result in an effective " + \
296 + "ACCEPT_PROPERTIES value of \"* -interactive\"."
297 + for line in wrap(desc, desc_width):
298 + print(desc_indent + line)
299 + print()
300 print(" "+green("--alphabetical"))
301 print(" When displaying USE and other flag output, combines the enabled")
302 print(" and disabled flags into a single list and sorts it alphabetically.")
303
304 Modified: main/branches/prefix/pym/_emerge/main.py
305 ===================================================================
306 --- main/branches/prefix/pym/_emerge/main.py 2009-10-07 19:09:55 UTC (rev 14511)
307 +++ main/branches/prefix/pym/_emerge/main.py 2009-10-07 19:12:18 UTC (rev 14512)
308 @@ -84,6 +84,7 @@
309 "o":"--onlydeps", "O":"--nodeps",
310 "p":"--pretend", "P":"--prune",
311 "q":"--quiet",
312 +"r":"--resume",
313 "s":"--search", "S":"--searchdesc",
314 "t":"--tree",
315 "u":"--update",
316 @@ -499,6 +500,10 @@
317
318 longopt_aliases = {"--cols":"--columns", "--skip-first":"--skipfirst"}
319 argument_options = {
320 + "--accept-properties": {
321 + "help":"temporarily override ACCEPT_PROPERTIES",
322 + "action":"store"
323 + },
324 "--config-root": {
325 "help":"specify the location for portage configuration files",
326 "action":"store"
327 @@ -1048,6 +1053,8 @@
328 os.environ["PORTAGE_CONFIGROOT"] = myopts["--config-root"]
329 if "--root" in myopts:
330 os.environ["ROOT"] = myopts["--root"]
331 + if "--accept-properties" in myopts:
332 + os.environ["ACCEPT_PROPERTIES"] = myopts["--accept-properties"]
333
334 # Portage needs to ensure a sane umask for the files it creates.
335 os.umask(0o22)
336
337 Modified: main/branches/prefix/pym/_emerge/visible.py
338 ===================================================================
339 --- main/branches/prefix/pym/_emerge/visible.py 2009-10-07 19:09:55 UTC (rev 14511)
340 +++ main/branches/prefix/pym/_emerge/visible.py 2009-10-07 19:12:18 UTC (rev 14512)
341 @@ -33,6 +33,11 @@
342 return False
343 if pkgsettings._getMissingKeywords(pkg.cpv, pkg.metadata):
344 return False
345 + try:
346 + if pkgsettings._getMissingProperties(pkg.cpv, pkg.metadata):
347 + return False
348 + except portage.exception.InvalidDependString:
349 + return False
350 if pkgsettings._getMaskAtom(pkg.cpv, pkg.metadata):
351 return False
352 if pkgsettings._getProfileMaskAtom(pkg.cpv, pkg.metadata):
353 @@ -40,9 +45,6 @@
354 try:
355 if pkgsettings._getMissingLicenses(pkg.cpv, pkg.metadata):
356 return False
357 - if pkgsettings._getMissingProperties(pkg.cpv, pkg.metadata):
358 - return False
359 except portage.exception.InvalidDependString:
360 return False
361 return True
362 -