Merge lp:~zyga/checkbox/fix-1442708 into lp:checkbox

Proposed by Zygmunt Krynicki
Status: Merged
Approved by: Zygmunt Krynicki
Approved revision: 3714
Merged at revision: 3714
Proposed branch: lp:~zyga/checkbox/fix-1442708
Merge into: lp:checkbox
Diff against target: 13438 lines (+2780/-2439)
12 files modified
plainbox/po/de.po (+229/-201)
plainbox/po/en_AU.po (+229/-201)
plainbox/po/en_CA.po (+229/-201)
plainbox/po/en_GB.po (+241/-207)
plainbox/po/es.po (+230/-203)
plainbox/po/ja.po (+229/-201)
plainbox/po/pl.po (+241/-212)
plainbox/po/pt.po (+229/-201)
plainbox/po/ru.po (+234/-207)
plainbox/po/tr.po (+229/-201)
plainbox/po/uk.po (+231/-203)
plainbox/po/zh_TW.po (+229/-201)
To merge this branch: bzr merge lp:~zyga/checkbox/fix-1442708
Reviewer Review Type Date Requested Status
Zygmunt Krynicki (community) Approve
Review via email: mp+256966@code.launchpad.net

Description of the change

Lastly, let's refresh all the .po files so that the one liner is applied.

To post a comment you must log in.
Revision history for this message
Zygmunt Krynicki (zyga) wrote :

I'll just approve this. I start to question the utility of those line markers. They seem to cause the 90% of the delta for us.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plainbox/po/de.po'
2--- plainbox/po/de.po 2015-04-18 05:08:45 +0000
3+++ plainbox/po/de.po 2015-04-21 15:52:36 +0000
4@@ -6,11 +6,12 @@
5 msgid ""
6 msgstr ""
7 "Project-Id-Version: plainbox\n"
8-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9-"POT-Creation-Date: 2015-04-08 15:31+0200\n"
10+"Report-Msgid-Bugs-To: \n"
11+"POT-Creation-Date: 2015-04-21 17:42+0200\n"
12 "PO-Revision-Date: 2014-03-30 11:34+0000\n"
13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14 "Language-Team: German <de@li.org>\n"
15+"Language: de\n"
16 "MIME-Version: 1.0\n"
17 "Content-Type: text/plain; charset=UTF-8\n"
18 "Content-Transfer-Encoding: 8bit\n"
19@@ -390,9 +391,9 @@
20 #: .././plainbox/impl/commands/cmd_run.py:68
21 #: .././plainbox/impl/commands/cmd_run.py:84
22 #: .././plainbox/impl/commands/cmd_session.py:115
23-#: .././plainbox/impl/commands/inv_run.py:346
24-#: .././plainbox/impl/commands/inv_run.py:349
25-#: .././plainbox/impl/commands/inv_run.py:352
26+#: .././plainbox/impl/commands/inv_run.py:347
27+#: .././plainbox/impl/commands/inv_run.py:350
28+#: .././plainbox/impl/commands/inv_run.py:353
29 #: .././plainbox/impl/commands/inv_session.py:143
30 #: .././plainbox/impl/commands/inv_session.py:146
31 msgid "?"
32@@ -432,8 +433,7 @@
33 msgstr ""
34
35 #: .././plainbox/impl/commands/cmd_run.py:86
36-msgid ""
37-"use TRANSPORT to send results somewhere (pass ? for a list of choices)"
38+msgid "use TRANSPORT to send results somewhere (pass ? for a list of choices)"
39 msgstr ""
40
41 #: .././plainbox/impl/commands/cmd_run.py:90
42@@ -638,8 +638,8 @@
43 "\n"
44 " @EPILOG@\n"
45 "\n"
46-" The name of the provider must follow the pattern "
47-"``YYYY.example.org:name``\n"
48+" The name of the provider must follow the pattern ``YYYY.example.org:"
49+"name``\n"
50 " where ``YYYY`` is a four-digit year when the author of the provider "
51 "owned\n"
52 " the domain (here, ``example.org``) and ``name`` is arbitrary identifier\n"
53@@ -742,6 +742,7 @@
54 msgstr ""
55
56 #: .././plainbox/impl/commands/inv_analyze.py:163
57+#: .././plainbox/impl/commands/inv_run.py:733
58 msgid "unknown"
59 msgstr "unbekannt"
60
61@@ -850,314 +851,318 @@
62 msgid "Unable to decode input stream, must be valid UTF-8"
63 msgstr ""
64
65-#: .././plainbox/impl/commands/inv_run.py:79
66+#: .././plainbox/impl/commands/inv_run.py:80
67 msgid "Pick an action"
68 msgstr ""
69
70-#: .././plainbox/impl/commands/inv_run.py:169
71+#: .././plainbox/impl/commands/inv_run.py:170
72 #, python-brace-format
73 msgid "ID: {0}"
74 msgstr ""
75
76-#: .././plainbox/impl/commands/inv_run.py:170
77+#: .././plainbox/impl/commands/inv_run.py:171
78 #, python-brace-format
79 msgid "Category: {0}"
80 msgstr ""
81
82-#: .././plainbox/impl/commands/inv_run.py:177
83+#: .././plainbox/impl/commands/inv_run.py:178
84 msgid "press ENTER to continue"
85 msgstr ""
86
87-#: .././plainbox/impl/commands/inv_run.py:178
88-#: .././plainbox/impl/commands/inv_run.py:850
89+#: .././plainbox/impl/commands/inv_run.py:179
90+#: .././plainbox/impl/commands/inv_run.py:869
91 msgid "add a comment"
92 msgstr ""
93
94-#: .././plainbox/impl/commands/inv_run.py:179
95+#: .././plainbox/impl/commands/inv_run.py:180
96 msgid "skip this job"
97 msgstr ""
98
99-#: .././plainbox/impl/commands/inv_run.py:180
100+#: .././plainbox/impl/commands/inv_run.py:181
101 msgid "save the session and quit"
102 msgstr ""
103
104-#: .././plainbox/impl/commands/inv_run.py:190
105+#: .././plainbox/impl/commands/inv_run.py:191
106 msgid "Command output hidden"
107 msgstr ""
108
109-#: .././plainbox/impl/commands/inv_run.py:229
110+#: .././plainbox/impl/commands/inv_run.py:230
111 msgid "Job cannot be started because:"
112 msgstr ""
113
114-#: .././plainbox/impl/commands/inv_run.py:237
115+#: .././plainbox/impl/commands/inv_run.py:238
116 msgid "Outcome"
117 msgstr ""
118
119-#: .././plainbox/impl/commands/inv_run.py:243
120+#: .././plainbox/impl/commands/inv_run.py:244
121 msgid "Waiting for the system to shut down or reboot..."
122 msgstr ""
123
124-#: .././plainbox/impl/commands/inv_run.py:415
125+#: .././plainbox/impl/commands/inv_run.py:416
126 msgid "Resume Incomplete Session"
127 msgstr ""
128
129-#: .././plainbox/impl/commands/inv_run.py:417
130+#: .././plainbox/impl/commands/inv_run.py:418
131 #, python-brace-format
132 msgid "There is {0} incomplete session that might be resumed"
133 msgid_plural "There are {0} incomplete sessions that might be resumed"
134 msgstr[0] ""
135 msgstr[1] ""
136
137-#: .././plainbox/impl/commands/inv_run.py:424
138+#: .././plainbox/impl/commands/inv_run.py:425
139 msgid "resume this session"
140 msgstr ""
141
142-#: .././plainbox/impl/commands/inv_run.py:425
143+#: .././plainbox/impl/commands/inv_run.py:426
144 msgid "next session"
145 msgstr ""
146
147-#: .././plainbox/impl/commands/inv_run.py:426
148+#: .././plainbox/impl/commands/inv_run.py:427
149 msgid "create new session"
150 msgstr ""
151
152-#: .././plainbox/impl/commands/inv_run.py:427
153+#: .././plainbox/impl/commands/inv_run.py:428
154 msgid "Do you want to resume session {0!a}?"
155 msgstr ""
156
157-#: .././plainbox/impl/commands/inv_run.py:441
158+#: .././plainbox/impl/commands/inv_run.py:442
159 msgid "ignore this problem"
160 msgstr ""
161
162-#: .././plainbox/impl/commands/inv_run.py:442
163+#: .././plainbox/impl/commands/inv_run.py:443
164 msgid "erase this session"
165 msgstr ""
166
167-#: .././plainbox/impl/commands/inv_run.py:445
168+#: .././plainbox/impl/commands/inv_run.py:446
169 #: .././plainbox/impl/commands/inv_session.py:93
170 msgid "Session removed"
171 msgstr ""
172
173 #. TRANSLATORS: This is the exit message
174-#: .././plainbox/impl/commands/inv_run.py:457
175+#: .././plainbox/impl/commands/inv_run.py:458
176 msgid "Session not resumed"
177 msgstr ""
178
179-#: .././plainbox/impl/commands/inv_run.py:463
180+#: .././plainbox/impl/commands/inv_run.py:464
181 #: .././plainbox/impl/commands/inv_session.py:180
182 msgid "Available output formats: {}"
183 msgstr ""
184
185-#: .././plainbox/impl/commands/inv_run.py:467
186+#: .././plainbox/impl/commands/inv_run.py:468
187 #: .././plainbox/impl/commands/inv_session.py:184
188 msgid "Each format may support a different set of options"
189 msgstr ""
190
191-#: .././plainbox/impl/commands/inv_run.py:473
192+#: .././plainbox/impl/commands/inv_run.py:474
193 msgid "Available transports: {}"
194 msgstr ""
195
196-#: .././plainbox/impl/commands/inv_run.py:489
197+#: .././plainbox/impl/commands/inv_run.py:490
198 #, python-format
199 msgid "Corrupted session %s: %s"
200 msgstr ""
201
202-#: .././plainbox/impl/commands/inv_run.py:499
203+#: .././plainbox/impl/commands/inv_run.py:500
204 msgid "yes"
205 msgstr ""
206
207-#: .././plainbox/impl/commands/inv_run.py:500
208+#: .././plainbox/impl/commands/inv_run.py:501
209 msgid "no"
210 msgstr ""
211
212-#: .././plainbox/impl/commands/inv_run.py:505
213+#: .././plainbox/impl/commands/inv_run.py:506
214 msgid "Do you want to start a new session?"
215 msgstr ""
216
217-#: .././plainbox/impl/commands/inv_run.py:511
218+#: .././plainbox/impl/commands/inv_run.py:512
219 msgid "Previous session run tried to execute job: {}"
220 msgstr ""
221
222-#: .././plainbox/impl/commands/inv_run.py:514
223+#: .././plainbox/impl/commands/inv_run.py:515
224 msgid "skip that job"
225 msgstr ""
226
227-#: .././plainbox/impl/commands/inv_run.py:515
228+#: .././plainbox/impl/commands/inv_run.py:516
229 msgid "mark it as passed and continue"
230 msgstr ""
231
232-#: .././plainbox/impl/commands/inv_run.py:516
233+#: .././plainbox/impl/commands/inv_run.py:517
234 msgid "mark it as failed and continue"
235 msgstr ""
236
237-#: .././plainbox/impl/commands/inv_run.py:517
238+#: .././plainbox/impl/commands/inv_run.py:518
239 msgid "run it again"
240 msgstr ""
241
242-#: .././plainbox/impl/commands/inv_run.py:518
243+#: .././plainbox/impl/commands/inv_run.py:519
244 msgid "What do you want to do with that job?"
245 msgstr ""
246
247-#: .././plainbox/impl/commands/inv_run.py:522
248+#: .././plainbox/impl/commands/inv_run.py:523
249 msgid "Skipped after resuming execution"
250 msgstr ""
251
252-#: .././plainbox/impl/commands/inv_run.py:527
253+#: .././plainbox/impl/commands/inv_run.py:528
254 msgid "Passed after resuming execution"
255 msgstr ""
256
257-#: .././plainbox/impl/commands/inv_run.py:532
258+#: .././plainbox/impl/commands/inv_run.py:533
259 msgid "Failed after resuming execution"
260 msgstr ""
261
262-#: .././plainbox/impl/commands/inv_run.py:607
263+#: .././plainbox/impl/commands/inv_run.py:608
264 msgid "The job database you are currently using is broken"
265 msgstr ""
266
267-#: .././plainbox/impl/commands/inv_run.py:609
268+#: .././plainbox/impl/commands/inv_run.py:610
269 #, python-brace-format
270 msgid "At least two jobs contend for the id {0}"
271 msgstr ""
272
273-#: .././plainbox/impl/commands/inv_run.py:612
274+#: .././plainbox/impl/commands/inv_run.py:613
275 #, python-brace-format
276 msgid "First job defined in: {0}"
277 msgstr ""
278
279-#: .././plainbox/impl/commands/inv_run.py:614
280+#: .././plainbox/impl/commands/inv_run.py:615
281 #, python-brace-format
282 msgid "Second job defined in: {0}"
283 msgstr ""
284
285-#: .././plainbox/impl/commands/inv_run.py:619
286+#: .././plainbox/impl/commands/inv_run.py:620
287 msgid "This session cannot be resumed"
288 msgstr ""
289
290-#: .././plainbox/impl/commands/inv_run.py:683
291+#: .././plainbox/impl/commands/inv_run.py:684
292 msgid "Analyzing Jobs"
293 msgstr ""
294
295-#: .././plainbox/impl/commands/inv_run.py:701
296+#: .././plainbox/impl/commands/inv_run.py:702
297 msgid "Authentication"
298 msgstr ""
299
300-#: .././plainbox/impl/commands/inv_run.py:709
301+#: .././plainbox/impl/commands/inv_run.py:710
302 msgid "Running Selected Jobs"
303 msgstr ""
304
305-#: .././plainbox/impl/commands/inv_run.py:772
306-#: .././plainbox/impl/commands/inv_run.py:900
307+#: .././plainbox/impl/commands/inv_run.py:730
308+msgid "Running job {} / {}. Estimated time left: {}"
309+msgstr ""
310+
311+#: .././plainbox/impl/commands/inv_run.py:791
312+#: .././plainbox/impl/commands/inv_run.py:919
313 msgid "Please enter your comments:"
314 msgstr ""
315
316-#: .././plainbox/impl/commands/inv_run.py:779
317+#: .././plainbox/impl/commands/inv_run.py:798
318 msgid "Explicitly skipped before execution"
319 msgstr ""
320
321-#: .././plainbox/impl/commands/inv_run.py:826
322+#: .././plainbox/impl/commands/inv_run.py:845
323 msgid "Results"
324 msgstr ""
325
326-#: .././plainbox/impl/commands/inv_run.py:833
327+#: .././plainbox/impl/commands/inv_run.py:852
328 #: .././plainbox/impl/commands/inv_session.py:169
329 msgid "Saving results to {}"
330 msgstr ""
331
332-#: .././plainbox/impl/commands/inv_run.py:844
333+#: .././plainbox/impl/commands/inv_run.py:863
334 msgid "Select an outcome or an action: "
335 msgstr ""
336
337-#: .././plainbox/impl/commands/inv_run.py:854
338-#: .././plainbox/impl/commands/inv_run.py:859
339-#: .././plainbox/impl/commands/inv_run.py:864
340+#: .././plainbox/impl/commands/inv_run.py:873
341+#: .././plainbox/impl/commands/inv_run.py:878
342+#: .././plainbox/impl/commands/inv_run.py:883
343 #, python-brace-format
344 msgid "set outcome to {0}"
345 msgstr ""
346
347-#: .././plainbox/impl/commands/inv_run.py:855
348+#: .././plainbox/impl/commands/inv_run.py:874
349 msgctxt "set outcome to <pass>"
350 msgid "pass"
351 msgstr ""
352
353-#: .././plainbox/impl/commands/inv_run.py:860
354+#: .././plainbox/impl/commands/inv_run.py:879
355 msgctxt "set outcome to <fail>"
356 msgid "fail"
357 msgstr ""
358
359-#: .././plainbox/impl/commands/inv_run.py:865
360+#: .././plainbox/impl/commands/inv_run.py:884
361 msgctxt "set outcome to <skip>"
362 msgid "skip"
363 msgstr ""
364
365-#: .././plainbox/impl/commands/inv_run.py:869
366+#: .././plainbox/impl/commands/inv_run.py:888
367 msgid "re-run this job"
368 msgstr ""
369
370-#: .././plainbox/impl/commands/inv_run.py:876
371+#: .././plainbox/impl/commands/inv_run.py:895
372 #, python-brace-format
373 msgid "set suggested outcome [{0}]"
374 msgstr ""
375
376-#: .././plainbox/impl/commands/inv_run.py:879
377+#: .././plainbox/impl/commands/inv_run.py:898
378 msgid "Please decide what to do next:"
379 msgstr ""
380
381-#: .././plainbox/impl/commands/inv_run.py:880
382+#: .././plainbox/impl/commands/inv_run.py:899
383 msgid "outcome"
384 msgstr ""
385
386-#: .././plainbox/impl/commands/inv_run.py:882
387-#: .././plainbox/impl/commands/inv_run.py:885
388+#: .././plainbox/impl/commands/inv_run.py:901
389+#: .././plainbox/impl/commands/inv_run.py:904
390 msgid "comments"
391 msgstr "Kommentare"
392
393-#: .././plainbox/impl/commands/inv_run.py:883
394+#: .././plainbox/impl/commands/inv_run.py:902
395 msgctxt "none comment"
396 msgid "none"
397 msgstr ""
398
399-#: .././plainbox/impl/commands/inv_run.py:910
400+#: .././plainbox/impl/commands/inv_run.py:929
401 msgid "Warning"
402 msgstr ""
403
404-#: .././plainbox/impl/commands/inv_run.py:911
405+#: .././plainbox/impl/commands/inv_run.py:930
406 msgid "There were some problems with the selected jobs"
407 msgstr ""
408
409-#: .././plainbox/impl/commands/inv_run.py:914
410+#: .././plainbox/impl/commands/inv_run.py:933
411 msgid "Problematic jobs will not be considered"
412 msgstr ""
413
414-#: .././plainbox/impl/commands/inv_run.py:917
415+#: .././plainbox/impl/commands/inv_run.py:936
416 msgid "Session Statistics"
417 msgstr ""
418
419-#: .././plainbox/impl/commands/inv_run.py:918
420-#, python-brace-format, python-format
421-msgid "This session is about {0:.2f}% complete"
422+#: .././plainbox/impl/commands/inv_run.py:937
423+#, python-brace-format
424+msgid "This session is about {0:.2f}{percent} complete"
425 msgstr ""
426
427-#: .././plainbox/impl/commands/inv_run.py:923
428+#: .././plainbox/impl/commands/inv_run.py:942
429 msgid "Estimated duration is {:.2f} for automated jobs."
430 msgstr ""
431
432-#: .././plainbox/impl/commands/inv_run.py:927
433+#: .././plainbox/impl/commands/inv_run.py:946
434 msgid "Estimated duration cannot be determined for automated jobs."
435 msgstr ""
436
437-#: .././plainbox/impl/commands/inv_run.py:929
438+#: .././plainbox/impl/commands/inv_run.py:948
439 msgid "Estimated duration is {:.2f} for manual jobs."
440 msgstr ""
441
442-#: .././plainbox/impl/commands/inv_run.py:933
443+#: .././plainbox/impl/commands/inv_run.py:952
444 msgid "Estimated duration cannot be determined for manual jobs."
445 msgstr ""
446
447-#: .././plainbox/impl/commands/inv_run.py:934
448+#: .././plainbox/impl/commands/inv_run.py:953
449 #, python-brace-format
450 msgid "Size of the desired job list: {0}"
451 msgstr ""
452
453-#: .././plainbox/impl/commands/inv_run.py:936
454+#: .././plainbox/impl/commands/inv_run.py:955
455 #, python-brace-format
456 msgid "Size of the effective execution plan: {0}"
457 msgstr ""
458@@ -1302,129 +1307,163 @@
459 msgid "log messages at various levels"
460 msgstr ""
461
462-#: .././plainbox/impl/ctrl.py:278
463+#: .././plainbox/impl/ctrl.py:277
464 #, python-format
465 msgid "Storing resource record %r: %s"
466 msgstr ""
467
468-#: .././plainbox/impl/ctrl.py:294 .././plainbox/impl/secure/launcher1.py:138
469+#: .././plainbox/impl/ctrl.py:293 .././plainbox/impl/secure/launcher1.py:138
470 #, python-format
471 msgid "Instantiating unit: %s"
472 msgstr ""
473
474-#: .././plainbox/impl/ctrl.py:301
475+#: .././plainbox/impl/ctrl.py:300
476 #, python-format
477 msgid "Ignoring invalid instantiated unit %s: %s"
478 msgstr ""
479
480-#: .././plainbox/impl/ctrl.py:323
481+#: .././plainbox/impl/ctrl.py:326
482 #, python-format
483 msgid "Ignoring invalid generated job %s: %s"
484 msgstr ""
485
486 #. TRANSLATORS: keep the word "local" untranslated. It is a
487 #. special type of job that needs to be distinguished.
488-#: .././plainbox/impl/ctrl.py:340
489+#: .././plainbox/impl/ctrl.py:343
490 #, python-format
491 msgid ""
492 "Local job %s produced job %s that collides with an existing job %s (from "
493 "%s), the new job was discarded"
494 msgstr ""
495
496-#: .././plainbox/impl/ctrl.py:356
497+#: .././plainbox/impl/ctrl.py:369
498+#, python-format
499+msgid "Automatically breaking via-cycle: %s"
500+msgstr ""
501+
502+#: .././plainbox/impl/ctrl.py:416
503 #, python-format
504 msgid "processing output from a job: %r"
505 msgstr ""
506
507 #. TRANSLATORS: keep the word "local" untranslated. It is a
508 #. special type of job that needs to be distinguished.
509-#: .././plainbox/impl/ctrl.py:375
510+#: .././plainbox/impl/ctrl.py:435
511 #, python-format
512 msgid "local script %s returned invalid RFC822 data: %s"
513 msgstr ""
514
515-#: .././plainbox/impl/ctrl.py:405
516+#: .././plainbox/impl/ctrl.py:465
517 #, python-format
518 msgid "Adding executable %s to nest %s"
519 msgstr ""
520
521-#: .././plainbox/impl/ctrl.py:414
522+#: .././plainbox/impl/ctrl.py:474
523 #, python-format
524 msgid "Unable to create symlink s%s -> %s: %r"
525 msgstr ""
526
527 #. run the command
528-#: .././plainbox/impl/ctrl.py:476
529+#: .././plainbox/impl/ctrl.py:536
530 #, python-format
531 msgid "job[%s] executing %r with env %r in cwd %r"
532 msgstr ""
533
534-#: .././plainbox/impl/ctrl.py:503
535+#: .././plainbox/impl/ctrl.py:563
536 #, python-format
537 msgid "Symlink nest for executables: %s"
538 msgstr ""
539
540-#: .././plainbox/impl/ctrl.py:533
541+#: .././plainbox/impl/ctrl.py:593
542 #, python-format
543 msgid "Job temporary current working directory: %s"
544 msgstr ""
545
546-#: .././plainbox/impl/ctrl.py:886
547+#: .././plainbox/impl/ctrl.py:947
548 #, python-format
549 msgid "Generating job repr for job: %r"
550 msgstr ""
551
552 #. run the command
553-#: .././plainbox/impl/ctrl.py:960
554+#: .././plainbox/impl/ctrl.py:1021
555 #, python-format
556 msgid "job[%s] executing %r withenv %r in cwd %r"
557 msgstr ""
558
559-#: .././plainbox/impl/ctrl.py:1089
560+#: .././plainbox/impl/ctrl.py:1150
561 #, python-format
562 msgid "Cannot check if plainbox-trusted-launcher-1 is available: %s"
563 msgstr ""
564
565-#: .././plainbox/impl/depmgr.py:100
566+#: .././plainbox/impl/depmgr.py:97
567+msgid "unknown job referenced: {!a}"
568+msgstr ""
569+
570+#: .././plainbox/impl/depmgr.py:153
571 msgid "dependency cycle detected: {}"
572 msgstr ""
573
574-#: .././plainbox/impl/depmgr.py:139
575+#: .././plainbox/impl/depmgr.py:195
576 msgid "missing dependency: {!r} ({})"
577 msgstr ""
578
579-#: .././plainbox/impl/depmgr.py:173
580+#: .././plainbox/impl/depmgr.py:248
581 msgid "duplicate job id: {!r}"
582 msgstr ""
583
584 #. Visit the visit list
585-#: .././plainbox/impl/depmgr.py:243
586+#: .././plainbox/impl/depmgr.py:336
587 msgid "Starting solve"
588 msgstr ""
589
590-#: .././plainbox/impl/depmgr.py:248
591+#: .././plainbox/impl/depmgr.py:337
592+#, python-format
593+msgid "Solver job list: %r"
594+msgstr ""
595+
596+#: .././plainbox/impl/depmgr.py:338
597+#, python-format
598+msgid "Solver visit list: %r"
599+msgstr ""
600+
601+#: .././plainbox/impl/depmgr.py:343
602 msgid "Done solving"
603 msgstr ""
604
605-#: .././plainbox/impl/depmgr.py:262
606+#: .././plainbox/impl/depmgr.py:359
607+#, python-format
608+msgid "Visiting job that's not on the job_list: %r"
609+msgstr ""
610+
611+#: .././plainbox/impl/depmgr.py:361
612 #, python-format
613 msgid "Visiting job %s (color %s)"
614 msgstr ""
615
616+#: .././plainbox/impl/depmgr.py:376
617+#, python-format
618+msgid "Found missing dependency: %r from %r"
619+msgstr ""
620+
621 #. For each dependency that we visit let's reuse the trail
622 #. to give proper error messages if a dependency loop exists
623-#: .././plainbox/impl/depmgr.py:281
624+#: .././plainbox/impl/depmgr.py:382
625 #, python-format
626 msgid "Visiting dependency: %r"
627 msgstr ""
628
629 #. We've visited (recursively) all dependencies of this node,
630 #. let's color it black and append it to the solution list.
631-#: .././plainbox/impl/depmgr.py:288
632+#: .././plainbox/impl/depmgr.py:389
633 #, python-format
634 msgid "Appending %r to solution"
635 msgstr ""
636
637+#: .././plainbox/impl/depmgr.py:398
638+#, python-format
639+msgid "Found dependency cycle: %r"
640+msgstr ""
641+
642 #: .././plainbox/impl/device.py:98
643 #, python-format
644 msgid "Unsupported platform: %s"
645@@ -1444,16 +1483,6 @@
646 msgid "Unable to import %s: %s"
647 msgstr ""
648
649-#: .././plainbox/impl/exporter/html.py:56
650-#, python-format
651-msgid "Unable to load resource %s, not inlining"
652-msgstr ""
653-
654-#: .././plainbox/impl/exporter/html.py:69
655-#, python-format
656-msgid "Resource of type %s unknown"
657-msgstr ""
658-
659 #: .././plainbox/impl/exporter/xlsx.py:88
660 msgid "Unsupported option: {}"
661 msgstr ""
662@@ -1810,83 +1839,82 @@
663 msgstr ""
664
665 #. TRANSLATORS: %r is the name of the job
666-#: .././plainbox/impl/runner.py:401
667+#: .././plainbox/impl/runner.py:410
668 #, python-format
669 msgid "Running %r"
670 msgstr ""
671
672-#: .././plainbox/impl/runner.py:408
673+#: .././plainbox/impl/runner.py:417
674 msgid "This type of job is not supported"
675 msgstr ""
676
677 #. TRANSLATORS: please keep 'plugin' untranslated
678-#: .././plainbox/impl/runner.py:441 .././plainbox/impl/runner.py:466
679-#: .././plainbox/impl/runner.py:492 .././plainbox/impl/runner.py:518
680-#: .././plainbox/impl/runner.py:544 .././plainbox/impl/runner.py:585
681-#: .././plainbox/impl/runner.py:629 .././plainbox/impl/runner.py:678
682-#: .././plainbox/impl/runner.py:703
683+#: .././plainbox/impl/runner.py:450 .././plainbox/impl/runner.py:475
684+#: .././plainbox/impl/runner.py:501 .././plainbox/impl/runner.py:527
685+#: .././plainbox/impl/runner.py:553 .././plainbox/impl/runner.py:594
686+#: .././plainbox/impl/runner.py:638 .././plainbox/impl/runner.py:687
687+#: .././plainbox/impl/runner.py:712
688 msgid "bad job plugin value"
689 msgstr ""
690
691-#: .././plainbox/impl/runner.py:709 .././plainbox/impl/runner.py:781
692+#: .././plainbox/impl/runner.py:718 .././plainbox/impl/runner.py:790
693 msgid "No suitable execution controller is available)"
694 msgstr ""
695
696-#: .././plainbox/impl/runner.py:734
697+#: .././plainbox/impl/runner.py:743
698 #, python-format
699 msgid "job[%s] starting qml shell: %s"
700 msgstr ""
701
702-#: .././plainbox/impl/runner.py:739
703+#: .././plainbox/impl/runner.py:748
704 #, python-format
705 msgid "job[%s] shell return code: %r"
706 msgstr ""
707
708-#: .././plainbox/impl/runner.py:765
709+#: .././plainbox/impl/runner.py:774
710 msgid "Job skipped in dry-run mode"
711 msgstr ""
712
713-#: .././plainbox/impl/runner.py:844
714+#: .././plainbox/impl/runner.py:853
715 #, python-format
716 msgid "job[%s] extcmd delegate: %r"
717 msgstr ""
718
719-#: .././plainbox/impl/runner.py:859
720+#: .././plainbox/impl/runner.py:868
721 #, python-brace-format
722 msgid "job {0} has no command to run"
723 msgstr ""
724
725-#: .././plainbox/impl/runner.py:882
726+#: .././plainbox/impl/runner.py:895
727 #, python-format
728 msgid "job[%s] starting command: %s"
729 msgstr ""
730
731-#: .././plainbox/impl/runner.py:887
732+#: .././plainbox/impl/runner.py:900
733 #, python-format
734 msgid "job[%s] command return code: %r"
735 msgstr ""
736
737-#: .././plainbox/impl/runner.py:923 .././plainbox/impl/session/state.py:454
738+#: .././plainbox/impl/runner.py:936 .././plainbox/impl/session/state.py:455
739 msgid "No exec controller supports job {}"
740 msgstr ""
741
742-#: .././plainbox/impl/runner.py:925 .././plainbox/impl/session/state.py:456
743+#: .././plainbox/impl/runner.py:938 .././plainbox/impl/session/state.py:457
744 #, python-format
745 msgid "Selected execution controller %s (score %d) for job %r"
746 msgstr ""
747
748-#: .././plainbox/impl/runner.py:952
749+#: .././plainbox/impl/runner.py:965
750 #, python-brace-format
751-msgid ""
752-"Job {0} created leftover filesystem artefacts in its working directory"
753+msgid "Job {0} created leftover filesystem artefacts in its working directory"
754 msgstr ""
755
756-#: .././plainbox/impl/runner.py:955
757+#: .././plainbox/impl/runner.py:968
758 #, python-format
759 msgid "Leftover file/directory: %r"
760 msgstr ""
761
762-#: .././plainbox/impl/runner.py:958
763+#: .././plainbox/impl/runner.py:971
764 msgid ""
765 "Please store desired files in $PLAINBOX_SESSION_SHARE and use regular "
766 "temporary files for everything else"
767@@ -2223,15 +2251,15 @@
768 msgid "resource expression {!r} evaluates to false"
769 msgstr ""
770
771-#: .././plainbox/impl/session/jobs.py:312
772+#: .././plainbox/impl/session/jobs.py:313
773 msgid "job cannot be started: {}"
774 msgstr ""
775
776-#: .././plainbox/impl/session/jobs.py:316
777+#: .././plainbox/impl/session/jobs.py:317
778 msgid "job can be started"
779 msgstr ""
780
781-#: .././plainbox/impl/session/jobs.py:363
782+#: .././plainbox/impl/session/jobs.py:364
783 msgid "{!r} is not overridable"
784 msgstr ""
785
786@@ -2248,41 +2276,41 @@
787 msgstr ""
788
789 #: .././plainbox/impl/session/manager.py:96
790-#: .././plainbox/impl/session/manager.py:452
791+#: .././plainbox/impl/session/manager.py:453
792 msgid ""
793 "session manager currently doesn't support sessions involving multiple "
794 "devices (a.k.a multi-node testing)"
795 msgstr ""
796
797-#: .././plainbox/impl/session/manager.py:361
798+#: .././plainbox/impl/session/manager.py:362
799 #, python-format
800 msgid "Saving %d byte of checkpoint data to %r"
801 msgid_plural "Saving %d bytes of checkpoint data to %r"
802 msgstr[0] ""
803 msgstr[1] ""
804
805-#: .././plainbox/impl/session/manager.py:396
806+#: .././plainbox/impl/session/manager.py:397
807 msgid ""
808 "attmpting to add a context for device {} which is already represented in "
809 "this session manager"
810 msgstr ""
811
812-#: .././plainbox/impl/session/manager.py:425
813+#: .././plainbox/impl/session/manager.py:426
814 msgid ""
815 "attempting to remove a device context not present in this session manager"
816 msgstr ""
817
818-#: .././plainbox/impl/session/manager.py:436
819+#: .././plainbox/impl/session/manager.py:437
820 #, python-format
821 msgid "Device context %s added to session manager %s"
822 msgstr ""
823
824-#: .././plainbox/impl/session/manager.py:446
825+#: .././plainbox/impl/session/manager.py:447
826 #, python-format
827 msgid "Device context %s removed from session manager %s"
828 msgstr ""
829
830-#: .././plainbox/impl/session/manager.py:457
831+#: .././plainbox/impl/session/manager.py:458
832 msgid "Propagating test plans to all devices"
833 msgstr ""
834
835@@ -2302,192 +2330,192 @@
836 msgid "Peeking at json... (see below)"
837 msgstr ""
838
839-#: .././plainbox/impl/session/resume.py:177
840-#: .././plainbox/impl/session/resume.py:259
841+#: .././plainbox/impl/session/resume.py:179
842+#: .././plainbox/impl/session/resume.py:303
843 msgid "Unsupported version {}"
844 msgstr ""
845
846-#: .././plainbox/impl/session/resume.py:241
847+#: .././plainbox/impl/session/resume.py:282
848 msgid "Resuming from json... (see below)"
849 msgstr ""
850
851-#: .././plainbox/impl/session/resume.py:294
852+#: .././plainbox/impl/session/resume.py:338
853 msgid "Each flag must be a string"
854 msgstr ""
855
856 #. TRANSLATORS: please don't translate app_blob
857-#: .././plainbox/impl/session/resume.py:322
858+#: .././plainbox/impl/session/resume.py:366
859 msgid "app_blob is not ASCII"
860 msgstr ""
861
862 #. TRANSLATORS: please don't translate app_blob
863-#: .././plainbox/impl/session/resume.py:327
864+#: .././plainbox/impl/session/resume.py:371
865 msgid "Cannot base64 decode app_blob"
866 msgstr ""
867
868-#: .././plainbox/impl/session/resume.py:381
869-#: .././plainbox/impl/session/resume.py:518
870+#: .././plainbox/impl/session/resume.py:425
871+#: .././plainbox/impl/session/resume.py:593
872 msgid "Starting to restore metadata..."
873 msgstr ""
874
875-#: .././plainbox/impl/session/resume.py:502
876+#: .././plainbox/impl/session/resume.py:577
877 #, python-format
878 msgid "Constructed new session for resume %r"
879 msgstr ""
880
881-#: .././plainbox/impl/session/resume.py:508
882+#: .././plainbox/impl/session/resume.py:583
883 #, python-format
884 msgid "Invoking early callback %r"
885 msgstr ""
886
887-#: .././plainbox/impl/session/resume.py:512
888+#: .././plainbox/impl/session/resume.py:587
889 #, python-format
890 msgid "Using different session for resume: %r"
891 msgstr ""
892
893-#: .././plainbox/impl/session/resume.py:516
894+#: .././plainbox/impl/session/resume.py:591
895 #, python-format
896 msgid "Starting to restore jobs and results to %r..."
897 msgstr ""
898
899-#: .././plainbox/impl/session/resume.py:520
900+#: .././plainbox/impl/session/resume.py:595
901 #, python-format
902 msgid "restored metadata %r"
903 msgstr ""
904
905-#: .././plainbox/impl/session/resume.py:521
906+#: .././plainbox/impl/session/resume.py:596
907 msgid "Starting to restore desired job list..."
908 msgstr ""
909
910-#: .././plainbox/impl/session/resume.py:523
911+#: .././plainbox/impl/session/resume.py:598
912 msgid "Starting to restore job list..."
913 msgstr ""
914
915 #. Return whatever we've got
916-#: .././plainbox/impl/session/resume.py:526
917+#: .././plainbox/impl/session/resume.py:601
918 msgid "Resume complete!"
919 msgstr ""
920
921-#: .././plainbox/impl/session/resume.py:583
922+#: .././plainbox/impl/session/resume.py:658
923 msgid "Unknown jobs remaining: {}"
924 msgstr ""
925
926-#: .././plainbox/impl/session/resume.py:618
927+#: .././plainbox/impl/session/resume.py:693
928 #, python-format
929 msgid "Ignoring changes to job %r)"
930 msgstr ""
931
932-#: .././plainbox/impl/session/resume.py:621
933+#: .././plainbox/impl/session/resume.py:696
934 msgid "Definition of job {!r} has changed"
935 msgstr ""
936
937-#: .././plainbox/impl/session/resume.py:640
938+#: .././plainbox/impl/session/resume.py:715
939 #, python-format
940 msgid "calling update_job_result(%r, %r)"
941 msgstr ""
942
943-#: .././plainbox/impl/session/resume.py:657
944+#: .././plainbox/impl/session/resume.py:732
945 msgid "Each job id must be a string"
946 msgstr ""
947
948-#: .././plainbox/impl/session/resume.py:662
949+#: .././plainbox/impl/session/resume.py:737
950 #, python-format
951 msgid "calling update_desired_job_list(%r)"
952 msgstr ""
953
954-#: .././plainbox/impl/session/resume.py:669
955+#: .././plainbox/impl/session/resume.py:744
956 msgid "'desired_job_list' refers to unknown job {!r}"
957 msgstr ""
958
959-#: .././plainbox/impl/session/resume.py:734
960+#: .././plainbox/impl/session/resume.py:809
961 #, python-format
962 msgid "Rewrote file name from %r to %r"
963 msgstr ""
964
965-#: .././plainbox/impl/session/resume.py:740
966+#: .././plainbox/impl/session/resume.py:815
967 msgid "cannot access file: {!r}"
968 msgstr ""
969
970 #. TRANSLATORS: please keep delay untranslated
971-#: .././plainbox/impl/session/resume.py:775
972+#: .././plainbox/impl/session/resume.py:854
973 msgid "delay cannot be negative"
974 msgstr ""
975
976-#: .././plainbox/impl/session/resume.py:787
977+#: .././plainbox/impl/session/resume.py:866
978 msgid "record data {!r} is not ASCII"
979 msgstr ""
980
981-#: .././plainbox/impl/session/resume.py:792
982+#: .././plainbox/impl/session/resume.py:871
983 msgid "record data {!r} is not correct base64"
984 msgstr ""
985
986-#: .././plainbox/impl/session/resume.py:860
987+#: .././plainbox/impl/session/resume.py:968
988 msgid "key {!r}"
989 msgstr ""
990
991-#: .././plainbox/impl/session/resume.py:866
992+#: .././plainbox/impl/session/resume.py:974
993 msgid "Missing value for key {!r}"
994 msgstr ""
995
996-#: .././plainbox/impl/session/resume.py:870
997+#: .././plainbox/impl/session/resume.py:978
998 msgid "object"
999 msgstr ""
1000
1001-#: .././plainbox/impl/session/resume.py:876
1002+#: .././plainbox/impl/session/resume.py:984
1003 msgid "Value of {} cannot be None"
1004 msgstr ""
1005
1006-#: .././plainbox/impl/session/resume.py:884
1007+#: .././plainbox/impl/session/resume.py:992
1008 msgid "Value of {} is of incorrect type {}"
1009 msgstr ""
1010
1011-#: .././plainbox/impl/session/resume.py:893
1012+#: .././plainbox/impl/session/resume.py:1001
1013 msgid "Value for {} not in allowed set {!r}"
1014 msgstr ""
1015
1016 #. TRANSLATORS: please don't translate app_blob, None and bytes
1017-#: .././plainbox/impl/session/state.py:164
1018+#: .././plainbox/impl/session/state.py:165
1019 msgid "app_blob must be either None or bytes"
1020 msgstr ""
1021
1022 #. TRANSLATORS: please don't translate app_blob, None and bytes
1023-#: .././plainbox/impl/session/state.py:182
1024+#: .././plainbox/impl/session/state.py:183
1025 msgid "app_id must be either None or str"
1026 msgstr ""
1027
1028-#: .././plainbox/impl/session/state.py:384
1029+#: .././plainbox/impl/session/state.py:385
1030 msgid "attempting to add the same provider twice"
1031 msgstr ""
1032
1033-#: .././plainbox/impl/session/state.py:406
1034+#: .././plainbox/impl/session/state.py:407
1035 msgid "attempting to add the same unit twice"
1036 msgstr ""
1037
1038-#: .././plainbox/impl/session/state.py:422
1039+#: .././plainbox/impl/session/state.py:423
1040 msgid "attempting to remove unit not in this context"
1041 msgstr ""
1042
1043-#: .././plainbox/impl/session/state.py:463
1044+#: .././plainbox/impl/session/state.py:464
1045 #, python-format
1046 msgid "Provider %s added to context %s"
1047 msgstr ""
1048
1049-#: .././plainbox/impl/session/state.py:471
1050+#: .././plainbox/impl/session/state.py:472
1051 #, python-format
1052 msgid "Unit %s added to context %s"
1053 msgstr ""
1054
1055-#: .././plainbox/impl/session/state.py:483
1056+#: .././plainbox/impl/session/state.py:484
1057 #, python-format
1058 msgid "Unit %s removed from context %s"
1059 msgstr ""
1060
1061-#: .././plainbox/impl/session/state.py:677
1062+#: .././plainbox/impl/session/state.py:678
1063 #, python-format
1064 msgid "Job %s result changed to %r"
1065 msgstr ""
1066
1067-#: .././plainbox/impl/session/state.py:792
1068+#: .././plainbox/impl/session/state.py:793
1069 msgid "cannot remove jobs that are on the run list: {}"
1070 msgstr ""
1071
1072@@ -2662,7 +2690,7 @@
1073
1074 #. TRANSLATORS: please don't translate fsync()
1075 #. Flush kernel buffers on the directory.
1076-#.
1077+#.
1078 #. This should ensure the rename operation is really on disk by now.
1079 #. As noted above, this is essential for being able to survive
1080 #. system crash immediately after exiting this method.
1081@@ -2767,12 +2795,12 @@
1082 msgstr ""
1083
1084 #: .././plainbox/impl/unit/category.py:119 .././plainbox/impl/unit/job.py:650
1085-#: .././plainbox/impl/unit/testplan.py:411
1086+#: .././plainbox/impl/unit/testplan.py:415
1087 msgid "please use only one line"
1088 msgstr ""
1089
1090 #: .././plainbox/impl/unit/category.py:125 .././plainbox/impl/unit/job.py:656
1091-#: .././plainbox/impl/unit/testplan.py:417
1092+#: .././plainbox/impl/unit/testplan.py:421
1093 msgid "please stay under 80 characters"
1094 msgstr ""
1095
1096@@ -3349,8 +3377,8 @@
1097 " hopefully, in most cases, you don't need to do anything. If your src/\n"
1098 " directory has a Makefile or .go source files you should be good to go.\n"
1099 "\n"
1100-" If the automatic defaults are somehow unsuitable you need to edit "
1101-"manage.py\n"
1102+" If the automatic defaults are somehow unsuitable you need to edit manage."
1103+"py\n"
1104 " so that it specifies the build command.\n"
1105 "\n"
1106 " IMPORTANT: It is expected that the build command will create binary "
1107
1108=== modified file 'plainbox/po/en_AU.po'
1109--- plainbox/po/en_AU.po 2015-04-18 05:08:45 +0000
1110+++ plainbox/po/en_AU.po 2015-04-21 15:52:36 +0000
1111@@ -6,11 +6,12 @@
1112 msgid ""
1113 msgstr ""
1114 "Project-Id-Version: plainbox\n"
1115-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1116-"POT-Creation-Date: 2015-04-08 15:31+0200\n"
1117+"Report-Msgid-Bugs-To: \n"
1118+"POT-Creation-Date: 2015-04-21 17:42+0200\n"
1119 "PO-Revision-Date: 2014-03-31 18:03+0000\n"
1120 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1121 "Language-Team: English (Australia) <en_AU@li.org>\n"
1122+"Language: \n"
1123 "MIME-Version: 1.0\n"
1124 "Content-Type: text/plain; charset=UTF-8\n"
1125 "Content-Transfer-Encoding: 8bit\n"
1126@@ -390,9 +391,9 @@
1127 #: .././plainbox/impl/commands/cmd_run.py:68
1128 #: .././plainbox/impl/commands/cmd_run.py:84
1129 #: .././plainbox/impl/commands/cmd_session.py:115
1130-#: .././plainbox/impl/commands/inv_run.py:346
1131-#: .././plainbox/impl/commands/inv_run.py:349
1132-#: .././plainbox/impl/commands/inv_run.py:352
1133+#: .././plainbox/impl/commands/inv_run.py:347
1134+#: .././plainbox/impl/commands/inv_run.py:350
1135+#: .././plainbox/impl/commands/inv_run.py:353
1136 #: .././plainbox/impl/commands/inv_session.py:143
1137 #: .././plainbox/impl/commands/inv_session.py:146
1138 msgid "?"
1139@@ -432,8 +433,7 @@
1140 msgstr ""
1141
1142 #: .././plainbox/impl/commands/cmd_run.py:86
1143-msgid ""
1144-"use TRANSPORT to send results somewhere (pass ? for a list of choices)"
1145+msgid "use TRANSPORT to send results somewhere (pass ? for a list of choices)"
1146 msgstr ""
1147
1148 #: .././plainbox/impl/commands/cmd_run.py:90
1149@@ -638,8 +638,8 @@
1150 "\n"
1151 " @EPILOG@\n"
1152 "\n"
1153-" The name of the provider must follow the pattern "
1154-"``YYYY.example.org:name``\n"
1155+" The name of the provider must follow the pattern ``YYYY.example.org:"
1156+"name``\n"
1157 " where ``YYYY`` is a four-digit year when the author of the provider "
1158 "owned\n"
1159 " the domain (here, ``example.org``) and ``name`` is arbitrary identifier\n"
1160@@ -742,6 +742,7 @@
1161 msgstr ""
1162
1163 #: .././plainbox/impl/commands/inv_analyze.py:163
1164+#: .././plainbox/impl/commands/inv_run.py:733
1165 msgid "unknown"
1166 msgstr ""
1167
1168@@ -850,314 +851,318 @@
1169 msgid "Unable to decode input stream, must be valid UTF-8"
1170 msgstr ""
1171
1172-#: .././plainbox/impl/commands/inv_run.py:79
1173+#: .././plainbox/impl/commands/inv_run.py:80
1174 msgid "Pick an action"
1175 msgstr ""
1176
1177-#: .././plainbox/impl/commands/inv_run.py:169
1178+#: .././plainbox/impl/commands/inv_run.py:170
1179 #, python-brace-format
1180 msgid "ID: {0}"
1181 msgstr ""
1182
1183-#: .././plainbox/impl/commands/inv_run.py:170
1184+#: .././plainbox/impl/commands/inv_run.py:171
1185 #, python-brace-format
1186 msgid "Category: {0}"
1187 msgstr ""
1188
1189-#: .././plainbox/impl/commands/inv_run.py:177
1190+#: .././plainbox/impl/commands/inv_run.py:178
1191 msgid "press ENTER to continue"
1192 msgstr ""
1193
1194-#: .././plainbox/impl/commands/inv_run.py:178
1195-#: .././plainbox/impl/commands/inv_run.py:850
1196+#: .././plainbox/impl/commands/inv_run.py:179
1197+#: .././plainbox/impl/commands/inv_run.py:869
1198 msgid "add a comment"
1199 msgstr ""
1200
1201-#: .././plainbox/impl/commands/inv_run.py:179
1202+#: .././plainbox/impl/commands/inv_run.py:180
1203 msgid "skip this job"
1204 msgstr ""
1205
1206-#: .././plainbox/impl/commands/inv_run.py:180
1207+#: .././plainbox/impl/commands/inv_run.py:181
1208 msgid "save the session and quit"
1209 msgstr ""
1210
1211-#: .././plainbox/impl/commands/inv_run.py:190
1212+#: .././plainbox/impl/commands/inv_run.py:191
1213 msgid "Command output hidden"
1214 msgstr ""
1215
1216-#: .././plainbox/impl/commands/inv_run.py:229
1217+#: .././plainbox/impl/commands/inv_run.py:230
1218 msgid "Job cannot be started because:"
1219 msgstr ""
1220
1221-#: .././plainbox/impl/commands/inv_run.py:237
1222+#: .././plainbox/impl/commands/inv_run.py:238
1223 msgid "Outcome"
1224 msgstr ""
1225
1226-#: .././plainbox/impl/commands/inv_run.py:243
1227+#: .././plainbox/impl/commands/inv_run.py:244
1228 msgid "Waiting for the system to shut down or reboot..."
1229 msgstr ""
1230
1231-#: .././plainbox/impl/commands/inv_run.py:415
1232+#: .././plainbox/impl/commands/inv_run.py:416
1233 msgid "Resume Incomplete Session"
1234 msgstr ""
1235
1236-#: .././plainbox/impl/commands/inv_run.py:417
1237+#: .././plainbox/impl/commands/inv_run.py:418
1238 #, python-brace-format
1239 msgid "There is {0} incomplete session that might be resumed"
1240 msgid_plural "There are {0} incomplete sessions that might be resumed"
1241 msgstr[0] ""
1242 msgstr[1] ""
1243
1244-#: .././plainbox/impl/commands/inv_run.py:424
1245+#: .././plainbox/impl/commands/inv_run.py:425
1246 msgid "resume this session"
1247 msgstr ""
1248
1249-#: .././plainbox/impl/commands/inv_run.py:425
1250+#: .././plainbox/impl/commands/inv_run.py:426
1251 msgid "next session"
1252 msgstr ""
1253
1254-#: .././plainbox/impl/commands/inv_run.py:426
1255+#: .././plainbox/impl/commands/inv_run.py:427
1256 msgid "create new session"
1257 msgstr ""
1258
1259-#: .././plainbox/impl/commands/inv_run.py:427
1260+#: .././plainbox/impl/commands/inv_run.py:428
1261 msgid "Do you want to resume session {0!a}?"
1262 msgstr ""
1263
1264-#: .././plainbox/impl/commands/inv_run.py:441
1265+#: .././plainbox/impl/commands/inv_run.py:442
1266 msgid "ignore this problem"
1267 msgstr ""
1268
1269-#: .././plainbox/impl/commands/inv_run.py:442
1270+#: .././plainbox/impl/commands/inv_run.py:443
1271 msgid "erase this session"
1272 msgstr ""
1273
1274-#: .././plainbox/impl/commands/inv_run.py:445
1275+#: .././plainbox/impl/commands/inv_run.py:446
1276 #: .././plainbox/impl/commands/inv_session.py:93
1277 msgid "Session removed"
1278 msgstr ""
1279
1280 #. TRANSLATORS: This is the exit message
1281-#: .././plainbox/impl/commands/inv_run.py:457
1282+#: .././plainbox/impl/commands/inv_run.py:458
1283 msgid "Session not resumed"
1284 msgstr ""
1285
1286-#: .././plainbox/impl/commands/inv_run.py:463
1287+#: .././plainbox/impl/commands/inv_run.py:464
1288 #: .././plainbox/impl/commands/inv_session.py:180
1289 msgid "Available output formats: {}"
1290 msgstr ""
1291
1292-#: .././plainbox/impl/commands/inv_run.py:467
1293+#: .././plainbox/impl/commands/inv_run.py:468
1294 #: .././plainbox/impl/commands/inv_session.py:184
1295 msgid "Each format may support a different set of options"
1296 msgstr ""
1297
1298-#: .././plainbox/impl/commands/inv_run.py:473
1299+#: .././plainbox/impl/commands/inv_run.py:474
1300 msgid "Available transports: {}"
1301 msgstr ""
1302
1303-#: .././plainbox/impl/commands/inv_run.py:489
1304+#: .././plainbox/impl/commands/inv_run.py:490
1305 #, python-format
1306 msgid "Corrupted session %s: %s"
1307 msgstr ""
1308
1309-#: .././plainbox/impl/commands/inv_run.py:499
1310+#: .././plainbox/impl/commands/inv_run.py:500
1311 msgid "yes"
1312 msgstr ""
1313
1314-#: .././plainbox/impl/commands/inv_run.py:500
1315+#: .././plainbox/impl/commands/inv_run.py:501
1316 msgid "no"
1317 msgstr ""
1318
1319-#: .././plainbox/impl/commands/inv_run.py:505
1320+#: .././plainbox/impl/commands/inv_run.py:506
1321 msgid "Do you want to start a new session?"
1322 msgstr ""
1323
1324-#: .././plainbox/impl/commands/inv_run.py:511
1325+#: .././plainbox/impl/commands/inv_run.py:512
1326 msgid "Previous session run tried to execute job: {}"
1327 msgstr ""
1328
1329-#: .././plainbox/impl/commands/inv_run.py:514
1330+#: .././plainbox/impl/commands/inv_run.py:515
1331 msgid "skip that job"
1332 msgstr ""
1333
1334-#: .././plainbox/impl/commands/inv_run.py:515
1335+#: .././plainbox/impl/commands/inv_run.py:516
1336 msgid "mark it as passed and continue"
1337 msgstr ""
1338
1339-#: .././plainbox/impl/commands/inv_run.py:516
1340+#: .././plainbox/impl/commands/inv_run.py:517
1341 msgid "mark it as failed and continue"
1342 msgstr ""
1343
1344-#: .././plainbox/impl/commands/inv_run.py:517
1345+#: .././plainbox/impl/commands/inv_run.py:518
1346 msgid "run it again"
1347 msgstr ""
1348
1349-#: .././plainbox/impl/commands/inv_run.py:518
1350+#: .././plainbox/impl/commands/inv_run.py:519
1351 msgid "What do you want to do with that job?"
1352 msgstr ""
1353
1354-#: .././plainbox/impl/commands/inv_run.py:522
1355+#: .././plainbox/impl/commands/inv_run.py:523
1356 msgid "Skipped after resuming execution"
1357 msgstr ""
1358
1359-#: .././plainbox/impl/commands/inv_run.py:527
1360+#: .././plainbox/impl/commands/inv_run.py:528
1361 msgid "Passed after resuming execution"
1362 msgstr ""
1363
1364-#: .././plainbox/impl/commands/inv_run.py:532
1365+#: .././plainbox/impl/commands/inv_run.py:533
1366 msgid "Failed after resuming execution"
1367 msgstr ""
1368
1369-#: .././plainbox/impl/commands/inv_run.py:607
1370+#: .././plainbox/impl/commands/inv_run.py:608
1371 msgid "The job database you are currently using is broken"
1372 msgstr ""
1373
1374-#: .././plainbox/impl/commands/inv_run.py:609
1375+#: .././plainbox/impl/commands/inv_run.py:610
1376 #, python-brace-format
1377 msgid "At least two jobs contend for the id {0}"
1378 msgstr ""
1379
1380-#: .././plainbox/impl/commands/inv_run.py:612
1381+#: .././plainbox/impl/commands/inv_run.py:613
1382 #, python-brace-format
1383 msgid "First job defined in: {0}"
1384 msgstr ""
1385
1386-#: .././plainbox/impl/commands/inv_run.py:614
1387+#: .././plainbox/impl/commands/inv_run.py:615
1388 #, python-brace-format
1389 msgid "Second job defined in: {0}"
1390 msgstr ""
1391
1392-#: .././plainbox/impl/commands/inv_run.py:619
1393+#: .././plainbox/impl/commands/inv_run.py:620
1394 msgid "This session cannot be resumed"
1395 msgstr ""
1396
1397-#: .././plainbox/impl/commands/inv_run.py:683
1398+#: .././plainbox/impl/commands/inv_run.py:684
1399 msgid "Analyzing Jobs"
1400 msgstr ""
1401
1402-#: .././plainbox/impl/commands/inv_run.py:701
1403+#: .././plainbox/impl/commands/inv_run.py:702
1404 msgid "Authentication"
1405 msgstr ""
1406
1407-#: .././plainbox/impl/commands/inv_run.py:709
1408+#: .././plainbox/impl/commands/inv_run.py:710
1409 msgid "Running Selected Jobs"
1410 msgstr ""
1411
1412-#: .././plainbox/impl/commands/inv_run.py:772
1413-#: .././plainbox/impl/commands/inv_run.py:900
1414+#: .././plainbox/impl/commands/inv_run.py:730
1415+msgid "Running job {} / {}. Estimated time left: {}"
1416+msgstr ""
1417+
1418+#: .././plainbox/impl/commands/inv_run.py:791
1419+#: .././plainbox/impl/commands/inv_run.py:919
1420 msgid "Please enter your comments:"
1421 msgstr ""
1422
1423-#: .././plainbox/impl/commands/inv_run.py:779
1424+#: .././plainbox/impl/commands/inv_run.py:798
1425 msgid "Explicitly skipped before execution"
1426 msgstr ""
1427
1428-#: .././plainbox/impl/commands/inv_run.py:826
1429+#: .././plainbox/impl/commands/inv_run.py:845
1430 msgid "Results"
1431 msgstr ""
1432
1433-#: .././plainbox/impl/commands/inv_run.py:833
1434+#: .././plainbox/impl/commands/inv_run.py:852
1435 #: .././plainbox/impl/commands/inv_session.py:169
1436 msgid "Saving results to {}"
1437 msgstr ""
1438
1439-#: .././plainbox/impl/commands/inv_run.py:844
1440+#: .././plainbox/impl/commands/inv_run.py:863
1441 msgid "Select an outcome or an action: "
1442 msgstr ""
1443
1444-#: .././plainbox/impl/commands/inv_run.py:854
1445-#: .././plainbox/impl/commands/inv_run.py:859
1446-#: .././plainbox/impl/commands/inv_run.py:864
1447+#: .././plainbox/impl/commands/inv_run.py:873
1448+#: .././plainbox/impl/commands/inv_run.py:878
1449+#: .././plainbox/impl/commands/inv_run.py:883
1450 #, python-brace-format
1451 msgid "set outcome to {0}"
1452 msgstr ""
1453
1454-#: .././plainbox/impl/commands/inv_run.py:855
1455+#: .././plainbox/impl/commands/inv_run.py:874
1456 msgctxt "set outcome to <pass>"
1457 msgid "pass"
1458 msgstr ""
1459
1460-#: .././plainbox/impl/commands/inv_run.py:860
1461+#: .././plainbox/impl/commands/inv_run.py:879
1462 msgctxt "set outcome to <fail>"
1463 msgid "fail"
1464 msgstr ""
1465
1466-#: .././plainbox/impl/commands/inv_run.py:865
1467+#: .././plainbox/impl/commands/inv_run.py:884
1468 msgctxt "set outcome to <skip>"
1469 msgid "skip"
1470 msgstr ""
1471
1472-#: .././plainbox/impl/commands/inv_run.py:869
1473+#: .././plainbox/impl/commands/inv_run.py:888
1474 msgid "re-run this job"
1475 msgstr ""
1476
1477-#: .././plainbox/impl/commands/inv_run.py:876
1478+#: .././plainbox/impl/commands/inv_run.py:895
1479 #, python-brace-format
1480 msgid "set suggested outcome [{0}]"
1481 msgstr ""
1482
1483-#: .././plainbox/impl/commands/inv_run.py:879
1484+#: .././plainbox/impl/commands/inv_run.py:898
1485 msgid "Please decide what to do next:"
1486 msgstr ""
1487
1488-#: .././plainbox/impl/commands/inv_run.py:880
1489+#: .././plainbox/impl/commands/inv_run.py:899
1490 msgid "outcome"
1491 msgstr ""
1492
1493-#: .././plainbox/impl/commands/inv_run.py:882
1494-#: .././plainbox/impl/commands/inv_run.py:885
1495+#: .././plainbox/impl/commands/inv_run.py:901
1496+#: .././plainbox/impl/commands/inv_run.py:904
1497 msgid "comments"
1498 msgstr ""
1499
1500-#: .././plainbox/impl/commands/inv_run.py:883
1501+#: .././plainbox/impl/commands/inv_run.py:902
1502 msgctxt "none comment"
1503 msgid "none"
1504 msgstr ""
1505
1506-#: .././plainbox/impl/commands/inv_run.py:910
1507+#: .././plainbox/impl/commands/inv_run.py:929
1508 msgid "Warning"
1509 msgstr ""
1510
1511-#: .././plainbox/impl/commands/inv_run.py:911
1512+#: .././plainbox/impl/commands/inv_run.py:930
1513 msgid "There were some problems with the selected jobs"
1514 msgstr ""
1515
1516-#: .././plainbox/impl/commands/inv_run.py:914
1517+#: .././plainbox/impl/commands/inv_run.py:933
1518 msgid "Problematic jobs will not be considered"
1519 msgstr ""
1520
1521-#: .././plainbox/impl/commands/inv_run.py:917
1522+#: .././plainbox/impl/commands/inv_run.py:936
1523 msgid "Session Statistics"
1524 msgstr ""
1525
1526-#: .././plainbox/impl/commands/inv_run.py:918
1527-#, python-brace-format, python-format
1528-msgid "This session is about {0:.2f}% complete"
1529+#: .././plainbox/impl/commands/inv_run.py:937
1530+#, python-brace-format
1531+msgid "This session is about {0:.2f}{percent} complete"
1532 msgstr ""
1533
1534-#: .././plainbox/impl/commands/inv_run.py:923
1535+#: .././plainbox/impl/commands/inv_run.py:942
1536 msgid "Estimated duration is {:.2f} for automated jobs."
1537 msgstr ""
1538
1539-#: .././plainbox/impl/commands/inv_run.py:927
1540+#: .././plainbox/impl/commands/inv_run.py:946
1541 msgid "Estimated duration cannot be determined for automated jobs."
1542 msgstr ""
1543
1544-#: .././plainbox/impl/commands/inv_run.py:929
1545+#: .././plainbox/impl/commands/inv_run.py:948
1546 msgid "Estimated duration is {:.2f} for manual jobs."
1547 msgstr ""
1548
1549-#: .././plainbox/impl/commands/inv_run.py:933
1550+#: .././plainbox/impl/commands/inv_run.py:952
1551 msgid "Estimated duration cannot be determined for manual jobs."
1552 msgstr ""
1553
1554-#: .././plainbox/impl/commands/inv_run.py:934
1555+#: .././plainbox/impl/commands/inv_run.py:953
1556 #, python-brace-format
1557 msgid "Size of the desired job list: {0}"
1558 msgstr ""
1559
1560-#: .././plainbox/impl/commands/inv_run.py:936
1561+#: .././plainbox/impl/commands/inv_run.py:955
1562 #, python-brace-format
1563 msgid "Size of the effective execution plan: {0}"
1564 msgstr ""
1565@@ -1302,129 +1307,163 @@
1566 msgid "log messages at various levels"
1567 msgstr ""
1568
1569-#: .././plainbox/impl/ctrl.py:278
1570+#: .././plainbox/impl/ctrl.py:277
1571 #, python-format
1572 msgid "Storing resource record %r: %s"
1573 msgstr ""
1574
1575-#: .././plainbox/impl/ctrl.py:294 .././plainbox/impl/secure/launcher1.py:138
1576+#: .././plainbox/impl/ctrl.py:293 .././plainbox/impl/secure/launcher1.py:138
1577 #, python-format
1578 msgid "Instantiating unit: %s"
1579 msgstr ""
1580
1581-#: .././plainbox/impl/ctrl.py:301
1582+#: .././plainbox/impl/ctrl.py:300
1583 #, python-format
1584 msgid "Ignoring invalid instantiated unit %s: %s"
1585 msgstr ""
1586
1587-#: .././plainbox/impl/ctrl.py:323
1588+#: .././plainbox/impl/ctrl.py:326
1589 #, python-format
1590 msgid "Ignoring invalid generated job %s: %s"
1591 msgstr ""
1592
1593 #. TRANSLATORS: keep the word "local" untranslated. It is a
1594 #. special type of job that needs to be distinguished.
1595-#: .././plainbox/impl/ctrl.py:340
1596+#: .././plainbox/impl/ctrl.py:343
1597 #, python-format
1598 msgid ""
1599 "Local job %s produced job %s that collides with an existing job %s (from "
1600 "%s), the new job was discarded"
1601 msgstr ""
1602
1603-#: .././plainbox/impl/ctrl.py:356
1604+#: .././plainbox/impl/ctrl.py:369
1605+#, python-format
1606+msgid "Automatically breaking via-cycle: %s"
1607+msgstr ""
1608+
1609+#: .././plainbox/impl/ctrl.py:416
1610 #, python-format
1611 msgid "processing output from a job: %r"
1612 msgstr ""
1613
1614 #. TRANSLATORS: keep the word "local" untranslated. It is a
1615 #. special type of job that needs to be distinguished.
1616-#: .././plainbox/impl/ctrl.py:375
1617+#: .././plainbox/impl/ctrl.py:435
1618 #, python-format
1619 msgid "local script %s returned invalid RFC822 data: %s"
1620 msgstr ""
1621
1622-#: .././plainbox/impl/ctrl.py:405
1623+#: .././plainbox/impl/ctrl.py:465
1624 #, python-format
1625 msgid "Adding executable %s to nest %s"
1626 msgstr ""
1627
1628-#: .././plainbox/impl/ctrl.py:414
1629+#: .././plainbox/impl/ctrl.py:474
1630 #, python-format
1631 msgid "Unable to create symlink s%s -> %s: %r"
1632 msgstr ""
1633
1634 #. run the command
1635-#: .././plainbox/impl/ctrl.py:476
1636+#: .././plainbox/impl/ctrl.py:536
1637 #, python-format
1638 msgid "job[%s] executing %r with env %r in cwd %r"
1639 msgstr ""
1640
1641-#: .././plainbox/impl/ctrl.py:503
1642+#: .././plainbox/impl/ctrl.py:563
1643 #, python-format
1644 msgid "Symlink nest for executables: %s"
1645 msgstr ""
1646
1647-#: .././plainbox/impl/ctrl.py:533
1648+#: .././plainbox/impl/ctrl.py:593
1649 #, python-format
1650 msgid "Job temporary current working directory: %s"
1651 msgstr ""
1652
1653-#: .././plainbox/impl/ctrl.py:886
1654+#: .././plainbox/impl/ctrl.py:947
1655 #, python-format
1656 msgid "Generating job repr for job: %r"
1657 msgstr ""
1658
1659 #. run the command
1660-#: .././plainbox/impl/ctrl.py:960
1661+#: .././plainbox/impl/ctrl.py:1021
1662 #, python-format
1663 msgid "job[%s] executing %r withenv %r in cwd %r"
1664 msgstr ""
1665
1666-#: .././plainbox/impl/ctrl.py:1089
1667+#: .././plainbox/impl/ctrl.py:1150
1668 #, python-format
1669 msgid "Cannot check if plainbox-trusted-launcher-1 is available: %s"
1670 msgstr ""
1671
1672-#: .././plainbox/impl/depmgr.py:100
1673+#: .././plainbox/impl/depmgr.py:97
1674+msgid "unknown job referenced: {!a}"
1675+msgstr ""
1676+
1677+#: .././plainbox/impl/depmgr.py:153
1678 msgid "dependency cycle detected: {}"
1679 msgstr ""
1680
1681-#: .././plainbox/impl/depmgr.py:139
1682+#: .././plainbox/impl/depmgr.py:195
1683 msgid "missing dependency: {!r} ({})"
1684 msgstr ""
1685
1686-#: .././plainbox/impl/depmgr.py:173
1687+#: .././plainbox/impl/depmgr.py:248
1688 msgid "duplicate job id: {!r}"
1689 msgstr ""
1690
1691 #. Visit the visit list
1692-#: .././plainbox/impl/depmgr.py:243
1693+#: .././plainbox/impl/depmgr.py:336
1694 msgid "Starting solve"
1695 msgstr ""
1696
1697-#: .././plainbox/impl/depmgr.py:248
1698+#: .././plainbox/impl/depmgr.py:337
1699+#, python-format
1700+msgid "Solver job list: %r"
1701+msgstr ""
1702+
1703+#: .././plainbox/impl/depmgr.py:338
1704+#, python-format
1705+msgid "Solver visit list: %r"
1706+msgstr ""
1707+
1708+#: .././plainbox/impl/depmgr.py:343
1709 msgid "Done solving"
1710 msgstr ""
1711
1712-#: .././plainbox/impl/depmgr.py:262
1713+#: .././plainbox/impl/depmgr.py:359
1714+#, python-format
1715+msgid "Visiting job that's not on the job_list: %r"
1716+msgstr ""
1717+
1718+#: .././plainbox/impl/depmgr.py:361
1719 #, python-format
1720 msgid "Visiting job %s (color %s)"
1721 msgstr ""
1722
1723+#: .././plainbox/impl/depmgr.py:376
1724+#, python-format
1725+msgid "Found missing dependency: %r from %r"
1726+msgstr ""
1727+
1728 #. For each dependency that we visit let's reuse the trail
1729 #. to give proper error messages if a dependency loop exists
1730-#: .././plainbox/impl/depmgr.py:281
1731+#: .././plainbox/impl/depmgr.py:382
1732 #, python-format
1733 msgid "Visiting dependency: %r"
1734 msgstr ""
1735
1736 #. We've visited (recursively) all dependencies of this node,
1737 #. let's color it black and append it to the solution list.
1738-#: .././plainbox/impl/depmgr.py:288
1739+#: .././plainbox/impl/depmgr.py:389
1740 #, python-format
1741 msgid "Appending %r to solution"
1742 msgstr ""
1743
1744+#: .././plainbox/impl/depmgr.py:398
1745+#, python-format
1746+msgid "Found dependency cycle: %r"
1747+msgstr ""
1748+
1749 #: .././plainbox/impl/device.py:98
1750 #, python-format
1751 msgid "Unsupported platform: %s"
1752@@ -1444,16 +1483,6 @@
1753 msgid "Unable to import %s: %s"
1754 msgstr ""
1755
1756-#: .././plainbox/impl/exporter/html.py:56
1757-#, python-format
1758-msgid "Unable to load resource %s, not inlining"
1759-msgstr ""
1760-
1761-#: .././plainbox/impl/exporter/html.py:69
1762-#, python-format
1763-msgid "Resource of type %s unknown"
1764-msgstr ""
1765-
1766 #: .././plainbox/impl/exporter/xlsx.py:88
1767 msgid "Unsupported option: {}"
1768 msgstr ""
1769@@ -1810,83 +1839,82 @@
1770 msgstr ""
1771
1772 #. TRANSLATORS: %r is the name of the job
1773-#: .././plainbox/impl/runner.py:401
1774+#: .././plainbox/impl/runner.py:410
1775 #, python-format
1776 msgid "Running %r"
1777 msgstr ""
1778
1779-#: .././plainbox/impl/runner.py:408
1780+#: .././plainbox/impl/runner.py:417
1781 msgid "This type of job is not supported"
1782 msgstr ""
1783
1784 #. TRANSLATORS: please keep 'plugin' untranslated
1785-#: .././plainbox/impl/runner.py:441 .././plainbox/impl/runner.py:466
1786-#: .././plainbox/impl/runner.py:492 .././plainbox/impl/runner.py:518
1787-#: .././plainbox/impl/runner.py:544 .././plainbox/impl/runner.py:585
1788-#: .././plainbox/impl/runner.py:629 .././plainbox/impl/runner.py:678
1789-#: .././plainbox/impl/runner.py:703
1790+#: .././plainbox/impl/runner.py:450 .././plainbox/impl/runner.py:475
1791+#: .././plainbox/impl/runner.py:501 .././plainbox/impl/runner.py:527
1792+#: .././plainbox/impl/runner.py:553 .././plainbox/impl/runner.py:594
1793+#: .././plainbox/impl/runner.py:638 .././plainbox/impl/runner.py:687
1794+#: .././plainbox/impl/runner.py:712
1795 msgid "bad job plugin value"
1796 msgstr ""
1797
1798-#: .././plainbox/impl/runner.py:709 .././plainbox/impl/runner.py:781
1799+#: .././plainbox/impl/runner.py:718 .././plainbox/impl/runner.py:790
1800 msgid "No suitable execution controller is available)"
1801 msgstr ""
1802
1803-#: .././plainbox/impl/runner.py:734
1804+#: .././plainbox/impl/runner.py:743
1805 #, python-format
1806 msgid "job[%s] starting qml shell: %s"
1807 msgstr ""
1808
1809-#: .././plainbox/impl/runner.py:739
1810+#: .././plainbox/impl/runner.py:748
1811 #, python-format
1812 msgid "job[%s] shell return code: %r"
1813 msgstr ""
1814
1815-#: .././plainbox/impl/runner.py:765
1816+#: .././plainbox/impl/runner.py:774
1817 msgid "Job skipped in dry-run mode"
1818 msgstr ""
1819
1820-#: .././plainbox/impl/runner.py:844
1821+#: .././plainbox/impl/runner.py:853
1822 #, python-format
1823 msgid "job[%s] extcmd delegate: %r"
1824 msgstr ""
1825
1826-#: .././plainbox/impl/runner.py:859
1827+#: .././plainbox/impl/runner.py:868
1828 #, python-brace-format
1829 msgid "job {0} has no command to run"
1830 msgstr ""
1831
1832-#: .././plainbox/impl/runner.py:882
1833+#: .././plainbox/impl/runner.py:895
1834 #, python-format
1835 msgid "job[%s] starting command: %s"
1836 msgstr ""
1837
1838-#: .././plainbox/impl/runner.py:887
1839+#: .././plainbox/impl/runner.py:900
1840 #, python-format
1841 msgid "job[%s] command return code: %r"
1842 msgstr ""
1843
1844-#: .././plainbox/impl/runner.py:923 .././plainbox/impl/session/state.py:454
1845+#: .././plainbox/impl/runner.py:936 .././plainbox/impl/session/state.py:455
1846 msgid "No exec controller supports job {}"
1847 msgstr ""
1848
1849-#: .././plainbox/impl/runner.py:925 .././plainbox/impl/session/state.py:456
1850+#: .././plainbox/impl/runner.py:938 .././plainbox/impl/session/state.py:457
1851 #, python-format
1852 msgid "Selected execution controller %s (score %d) for job %r"
1853 msgstr ""
1854
1855-#: .././plainbox/impl/runner.py:952
1856+#: .././plainbox/impl/runner.py:965
1857 #, python-brace-format
1858-msgid ""
1859-"Job {0} created leftover filesystem artefacts in its working directory"
1860+msgid "Job {0} created leftover filesystem artefacts in its working directory"
1861 msgstr ""
1862
1863-#: .././plainbox/impl/runner.py:955
1864+#: .././plainbox/impl/runner.py:968
1865 #, python-format
1866 msgid "Leftover file/directory: %r"
1867 msgstr ""
1868
1869-#: .././plainbox/impl/runner.py:958
1870+#: .././plainbox/impl/runner.py:971
1871 msgid ""
1872 "Please store desired files in $PLAINBOX_SESSION_SHARE and use regular "
1873 "temporary files for everything else"
1874@@ -2223,15 +2251,15 @@
1875 msgid "resource expression {!r} evaluates to false"
1876 msgstr ""
1877
1878-#: .././plainbox/impl/session/jobs.py:312
1879+#: .././plainbox/impl/session/jobs.py:313
1880 msgid "job cannot be started: {}"
1881 msgstr ""
1882
1883-#: .././plainbox/impl/session/jobs.py:316
1884+#: .././plainbox/impl/session/jobs.py:317
1885 msgid "job can be started"
1886 msgstr ""
1887
1888-#: .././plainbox/impl/session/jobs.py:363
1889+#: .././plainbox/impl/session/jobs.py:364
1890 msgid "{!r} is not overridable"
1891 msgstr ""
1892
1893@@ -2248,41 +2276,41 @@
1894 msgstr ""
1895
1896 #: .././plainbox/impl/session/manager.py:96
1897-#: .././plainbox/impl/session/manager.py:452
1898+#: .././plainbox/impl/session/manager.py:453
1899 msgid ""
1900 "session manager currently doesn't support sessions involving multiple "
1901 "devices (a.k.a multi-node testing)"
1902 msgstr ""
1903
1904-#: .././plainbox/impl/session/manager.py:361
1905+#: .././plainbox/impl/session/manager.py:362
1906 #, python-format
1907 msgid "Saving %d byte of checkpoint data to %r"
1908 msgid_plural "Saving %d bytes of checkpoint data to %r"
1909 msgstr[0] ""
1910 msgstr[1] ""
1911
1912-#: .././plainbox/impl/session/manager.py:396
1913+#: .././plainbox/impl/session/manager.py:397
1914 msgid ""
1915 "attmpting to add a context for device {} which is already represented in "
1916 "this session manager"
1917 msgstr ""
1918
1919-#: .././plainbox/impl/session/manager.py:425
1920+#: .././plainbox/impl/session/manager.py:426
1921 msgid ""
1922 "attempting to remove a device context not present in this session manager"
1923 msgstr ""
1924
1925-#: .././plainbox/impl/session/manager.py:436
1926+#: .././plainbox/impl/session/manager.py:437
1927 #, python-format
1928 msgid "Device context %s added to session manager %s"
1929 msgstr ""
1930
1931-#: .././plainbox/impl/session/manager.py:446
1932+#: .././plainbox/impl/session/manager.py:447
1933 #, python-format
1934 msgid "Device context %s removed from session manager %s"
1935 msgstr ""
1936
1937-#: .././plainbox/impl/session/manager.py:457
1938+#: .././plainbox/impl/session/manager.py:458
1939 msgid "Propagating test plans to all devices"
1940 msgstr ""
1941
1942@@ -2302,192 +2330,192 @@
1943 msgid "Peeking at json... (see below)"
1944 msgstr ""
1945
1946-#: .././plainbox/impl/session/resume.py:177
1947-#: .././plainbox/impl/session/resume.py:259
1948+#: .././plainbox/impl/session/resume.py:179
1949+#: .././plainbox/impl/session/resume.py:303
1950 msgid "Unsupported version {}"
1951 msgstr ""
1952
1953-#: .././plainbox/impl/session/resume.py:241
1954+#: .././plainbox/impl/session/resume.py:282
1955 msgid "Resuming from json... (see below)"
1956 msgstr ""
1957
1958-#: .././plainbox/impl/session/resume.py:294
1959+#: .././plainbox/impl/session/resume.py:338
1960 msgid "Each flag must be a string"
1961 msgstr ""
1962
1963 #. TRANSLATORS: please don't translate app_blob
1964-#: .././plainbox/impl/session/resume.py:322
1965+#: .././plainbox/impl/session/resume.py:366
1966 msgid "app_blob is not ASCII"
1967 msgstr ""
1968
1969 #. TRANSLATORS: please don't translate app_blob
1970-#: .././plainbox/impl/session/resume.py:327
1971+#: .././plainbox/impl/session/resume.py:371
1972 msgid "Cannot base64 decode app_blob"
1973 msgstr ""
1974
1975-#: .././plainbox/impl/session/resume.py:381
1976-#: .././plainbox/impl/session/resume.py:518
1977+#: .././plainbox/impl/session/resume.py:425
1978+#: .././plainbox/impl/session/resume.py:593
1979 msgid "Starting to restore metadata..."
1980 msgstr ""
1981
1982-#: .././plainbox/impl/session/resume.py:502
1983+#: .././plainbox/impl/session/resume.py:577
1984 #, python-format
1985 msgid "Constructed new session for resume %r"
1986 msgstr ""
1987
1988-#: .././plainbox/impl/session/resume.py:508
1989+#: .././plainbox/impl/session/resume.py:583
1990 #, python-format
1991 msgid "Invoking early callback %r"
1992 msgstr ""
1993
1994-#: .././plainbox/impl/session/resume.py:512
1995+#: .././plainbox/impl/session/resume.py:587
1996 #, python-format
1997 msgid "Using different session for resume: %r"
1998 msgstr ""
1999
2000-#: .././plainbox/impl/session/resume.py:516
2001+#: .././plainbox/impl/session/resume.py:591
2002 #, python-format
2003 msgid "Starting to restore jobs and results to %r..."
2004 msgstr ""
2005
2006-#: .././plainbox/impl/session/resume.py:520
2007+#: .././plainbox/impl/session/resume.py:595
2008 #, python-format
2009 msgid "restored metadata %r"
2010 msgstr ""
2011
2012-#: .././plainbox/impl/session/resume.py:521
2013+#: .././plainbox/impl/session/resume.py:596
2014 msgid "Starting to restore desired job list..."
2015 msgstr ""
2016
2017-#: .././plainbox/impl/session/resume.py:523
2018+#: .././plainbox/impl/session/resume.py:598
2019 msgid "Starting to restore job list..."
2020 msgstr ""
2021
2022 #. Return whatever we've got
2023-#: .././plainbox/impl/session/resume.py:526
2024+#: .././plainbox/impl/session/resume.py:601
2025 msgid "Resume complete!"
2026 msgstr ""
2027
2028-#: .././plainbox/impl/session/resume.py:583
2029+#: .././plainbox/impl/session/resume.py:658
2030 msgid "Unknown jobs remaining: {}"
2031 msgstr ""
2032
2033-#: .././plainbox/impl/session/resume.py:618
2034+#: .././plainbox/impl/session/resume.py:693
2035 #, python-format
2036 msgid "Ignoring changes to job %r)"
2037 msgstr ""
2038
2039-#: .././plainbox/impl/session/resume.py:621
2040+#: .././plainbox/impl/session/resume.py:696
2041 msgid "Definition of job {!r} has changed"
2042 msgstr ""
2043
2044-#: .././plainbox/impl/session/resume.py:640
2045+#: .././plainbox/impl/session/resume.py:715
2046 #, python-format
2047 msgid "calling update_job_result(%r, %r)"
2048 msgstr ""
2049
2050-#: .././plainbox/impl/session/resume.py:657
2051+#: .././plainbox/impl/session/resume.py:732
2052 msgid "Each job id must be a string"
2053 msgstr ""
2054
2055-#: .././plainbox/impl/session/resume.py:662
2056+#: .././plainbox/impl/session/resume.py:737
2057 #, python-format
2058 msgid "calling update_desired_job_list(%r)"
2059 msgstr ""
2060
2061-#: .././plainbox/impl/session/resume.py:669
2062+#: .././plainbox/impl/session/resume.py:744
2063 msgid "'desired_job_list' refers to unknown job {!r}"
2064 msgstr ""
2065
2066-#: .././plainbox/impl/session/resume.py:734
2067+#: .././plainbox/impl/session/resume.py:809
2068 #, python-format
2069 msgid "Rewrote file name from %r to %r"
2070 msgstr ""
2071
2072-#: .././plainbox/impl/session/resume.py:740
2073+#: .././plainbox/impl/session/resume.py:815
2074 msgid "cannot access file: {!r}"
2075 msgstr ""
2076
2077 #. TRANSLATORS: please keep delay untranslated
2078-#: .././plainbox/impl/session/resume.py:775
2079+#: .././plainbox/impl/session/resume.py:854
2080 msgid "delay cannot be negative"
2081 msgstr ""
2082
2083-#: .././plainbox/impl/session/resume.py:787
2084+#: .././plainbox/impl/session/resume.py:866
2085 msgid "record data {!r} is not ASCII"
2086 msgstr ""
2087
2088-#: .././plainbox/impl/session/resume.py:792
2089+#: .././plainbox/impl/session/resume.py:871
2090 msgid "record data {!r} is not correct base64"
2091 msgstr ""
2092
2093-#: .././plainbox/impl/session/resume.py:860
2094+#: .././plainbox/impl/session/resume.py:968
2095 msgid "key {!r}"
2096 msgstr ""
2097
2098-#: .././plainbox/impl/session/resume.py:866
2099+#: .././plainbox/impl/session/resume.py:974
2100 msgid "Missing value for key {!r}"
2101 msgstr ""
2102
2103-#: .././plainbox/impl/session/resume.py:870
2104+#: .././plainbox/impl/session/resume.py:978
2105 msgid "object"
2106 msgstr ""
2107
2108-#: .././plainbox/impl/session/resume.py:876
2109+#: .././plainbox/impl/session/resume.py:984
2110 msgid "Value of {} cannot be None"
2111 msgstr ""
2112
2113-#: .././plainbox/impl/session/resume.py:884
2114+#: .././plainbox/impl/session/resume.py:992
2115 msgid "Value of {} is of incorrect type {}"
2116 msgstr ""
2117
2118-#: .././plainbox/impl/session/resume.py:893
2119+#: .././plainbox/impl/session/resume.py:1001
2120 msgid "Value for {} not in allowed set {!r}"
2121 msgstr ""
2122
2123 #. TRANSLATORS: please don't translate app_blob, None and bytes
2124-#: .././plainbox/impl/session/state.py:164
2125+#: .././plainbox/impl/session/state.py:165
2126 msgid "app_blob must be either None or bytes"
2127 msgstr ""
2128
2129 #. TRANSLATORS: please don't translate app_blob, None and bytes
2130-#: .././plainbox/impl/session/state.py:182
2131+#: .././plainbox/impl/session/state.py:183
2132 msgid "app_id must be either None or str"
2133 msgstr ""
2134
2135-#: .././plainbox/impl/session/state.py:384
2136+#: .././plainbox/impl/session/state.py:385
2137 msgid "attempting to add the same provider twice"
2138 msgstr ""
2139
2140-#: .././plainbox/impl/session/state.py:406
2141+#: .././plainbox/impl/session/state.py:407
2142 msgid "attempting to add the same unit twice"
2143 msgstr ""
2144
2145-#: .././plainbox/impl/session/state.py:422
2146+#: .././plainbox/impl/session/state.py:423
2147 msgid "attempting to remove unit not in this context"
2148 msgstr ""
2149
2150-#: .././plainbox/impl/session/state.py:463
2151+#: .././plainbox/impl/session/state.py:464
2152 #, python-format
2153 msgid "Provider %s added to context %s"
2154 msgstr ""
2155
2156-#: .././plainbox/impl/session/state.py:471
2157+#: .././plainbox/impl/session/state.py:472
2158 #, python-format
2159 msgid "Unit %s added to context %s"
2160 msgstr ""
2161
2162-#: .././plainbox/impl/session/state.py:483
2163+#: .././plainbox/impl/session/state.py:484
2164 #, python-format
2165 msgid "Unit %s removed from context %s"
2166 msgstr ""
2167
2168-#: .././plainbox/impl/session/state.py:677
2169+#: .././plainbox/impl/session/state.py:678
2170 #, python-format
2171 msgid "Job %s result changed to %r"
2172 msgstr ""
2173
2174-#: .././plainbox/impl/session/state.py:792
2175+#: .././plainbox/impl/session/state.py:793
2176 msgid "cannot remove jobs that are on the run list: {}"
2177 msgstr ""
2178
2179@@ -2662,7 +2690,7 @@
2180
2181 #. TRANSLATORS: please don't translate fsync()
2182 #. Flush kernel buffers on the directory.
2183-#.
2184+#.
2185 #. This should ensure the rename operation is really on disk by now.
2186 #. As noted above, this is essential for being able to survive
2187 #. system crash immediately after exiting this method.
2188@@ -2767,12 +2795,12 @@
2189 msgstr ""
2190
2191 #: .././plainbox/impl/unit/category.py:119 .././plainbox/impl/unit/job.py:650
2192-#: .././plainbox/impl/unit/testplan.py:411
2193+#: .././plainbox/impl/unit/testplan.py:415
2194 msgid "please use only one line"
2195 msgstr ""
2196
2197 #: .././plainbox/impl/unit/category.py:125 .././plainbox/impl/unit/job.py:656
2198-#: .././plainbox/impl/unit/testplan.py:417
2199+#: .././plainbox/impl/unit/testplan.py:421
2200 msgid "please stay under 80 characters"
2201 msgstr ""
2202
2203@@ -3349,8 +3377,8 @@
2204 " hopefully, in most cases, you don't need to do anything. If your src/\n"
2205 " directory has a Makefile or .go source files you should be good to go.\n"
2206 "\n"
2207-" If the automatic defaults are somehow unsuitable you need to edit "
2208-"manage.py\n"
2209+" If the automatic defaults are somehow unsuitable you need to edit manage."
2210+"py\n"
2211 " so that it specifies the build command.\n"
2212 "\n"
2213 " IMPORTANT: It is expected that the build command will create binary "
2214
2215=== modified file 'plainbox/po/en_CA.po'
2216--- plainbox/po/en_CA.po 2015-04-18 05:08:45 +0000
2217+++ plainbox/po/en_CA.po 2015-04-21 15:52:36 +0000
2218@@ -6,11 +6,12 @@
2219 msgid ""
2220 msgstr ""
2221 "Project-Id-Version: plainbox\n"
2222-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
2223-"POT-Creation-Date: 2015-04-08 15:31+0200\n"
2224+"Report-Msgid-Bugs-To: \n"
2225+"POT-Creation-Date: 2015-04-21 17:42+0200\n"
2226 "PO-Revision-Date: 2014-03-31 18:03+0000\n"
2227 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
2228 "Language-Team: English (Canada) <en_CA@li.org>\n"
2229+"Language: \n"
2230 "MIME-Version: 1.0\n"
2231 "Content-Type: text/plain; charset=UTF-8\n"
2232 "Content-Transfer-Encoding: 8bit\n"
2233@@ -390,9 +391,9 @@
2234 #: .././plainbox/impl/commands/cmd_run.py:68
2235 #: .././plainbox/impl/commands/cmd_run.py:84
2236 #: .././plainbox/impl/commands/cmd_session.py:115
2237-#: .././plainbox/impl/commands/inv_run.py:346
2238-#: .././plainbox/impl/commands/inv_run.py:349
2239-#: .././plainbox/impl/commands/inv_run.py:352
2240+#: .././plainbox/impl/commands/inv_run.py:347
2241+#: .././plainbox/impl/commands/inv_run.py:350
2242+#: .././plainbox/impl/commands/inv_run.py:353
2243 #: .././plainbox/impl/commands/inv_session.py:143
2244 #: .././plainbox/impl/commands/inv_session.py:146
2245 msgid "?"
2246@@ -432,8 +433,7 @@
2247 msgstr ""
2248
2249 #: .././plainbox/impl/commands/cmd_run.py:86
2250-msgid ""
2251-"use TRANSPORT to send results somewhere (pass ? for a list of choices)"
2252+msgid "use TRANSPORT to send results somewhere (pass ? for a list of choices)"
2253 msgstr ""
2254
2255 #: .././plainbox/impl/commands/cmd_run.py:90
2256@@ -638,8 +638,8 @@
2257 "\n"
2258 " @EPILOG@\n"
2259 "\n"
2260-" The name of the provider must follow the pattern "
2261-"``YYYY.example.org:name``\n"
2262+" The name of the provider must follow the pattern ``YYYY.example.org:"
2263+"name``\n"
2264 " where ``YYYY`` is a four-digit year when the author of the provider "
2265 "owned\n"
2266 " the domain (here, ``example.org``) and ``name`` is arbitrary identifier\n"
2267@@ -742,6 +742,7 @@
2268 msgstr ""
2269
2270 #: .././plainbox/impl/commands/inv_analyze.py:163
2271+#: .././plainbox/impl/commands/inv_run.py:733
2272 msgid "unknown"
2273 msgstr ""
2274
2275@@ -850,314 +851,318 @@
2276 msgid "Unable to decode input stream, must be valid UTF-8"
2277 msgstr ""
2278
2279-#: .././plainbox/impl/commands/inv_run.py:79
2280+#: .././plainbox/impl/commands/inv_run.py:80
2281 msgid "Pick an action"
2282 msgstr ""
2283
2284-#: .././plainbox/impl/commands/inv_run.py:169
2285+#: .././plainbox/impl/commands/inv_run.py:170
2286 #, python-brace-format
2287 msgid "ID: {0}"
2288 msgstr ""
2289
2290-#: .././plainbox/impl/commands/inv_run.py:170
2291+#: .././plainbox/impl/commands/inv_run.py:171
2292 #, python-brace-format
2293 msgid "Category: {0}"
2294 msgstr ""
2295
2296-#: .././plainbox/impl/commands/inv_run.py:177
2297+#: .././plainbox/impl/commands/inv_run.py:178
2298 msgid "press ENTER to continue"
2299 msgstr ""
2300
2301-#: .././plainbox/impl/commands/inv_run.py:178
2302-#: .././plainbox/impl/commands/inv_run.py:850
2303+#: .././plainbox/impl/commands/inv_run.py:179
2304+#: .././plainbox/impl/commands/inv_run.py:869
2305 msgid "add a comment"
2306 msgstr ""
2307
2308-#: .././plainbox/impl/commands/inv_run.py:179
2309+#: .././plainbox/impl/commands/inv_run.py:180
2310 msgid "skip this job"
2311 msgstr ""
2312
2313-#: .././plainbox/impl/commands/inv_run.py:180
2314+#: .././plainbox/impl/commands/inv_run.py:181
2315 msgid "save the session and quit"
2316 msgstr ""
2317
2318-#: .././plainbox/impl/commands/inv_run.py:190
2319+#: .././plainbox/impl/commands/inv_run.py:191
2320 msgid "Command output hidden"
2321 msgstr ""
2322
2323-#: .././plainbox/impl/commands/inv_run.py:229
2324+#: .././plainbox/impl/commands/inv_run.py:230
2325 msgid "Job cannot be started because:"
2326 msgstr ""
2327
2328-#: .././plainbox/impl/commands/inv_run.py:237
2329+#: .././plainbox/impl/commands/inv_run.py:238
2330 msgid "Outcome"
2331 msgstr ""
2332
2333-#: .././plainbox/impl/commands/inv_run.py:243
2334+#: .././plainbox/impl/commands/inv_run.py:244
2335 msgid "Waiting for the system to shut down or reboot..."
2336 msgstr ""
2337
2338-#: .././plainbox/impl/commands/inv_run.py:415
2339+#: .././plainbox/impl/commands/inv_run.py:416
2340 msgid "Resume Incomplete Session"
2341 msgstr ""
2342
2343-#: .././plainbox/impl/commands/inv_run.py:417
2344+#: .././plainbox/impl/commands/inv_run.py:418
2345 #, python-brace-format
2346 msgid "There is {0} incomplete session that might be resumed"
2347 msgid_plural "There are {0} incomplete sessions that might be resumed"
2348 msgstr[0] ""
2349 msgstr[1] ""
2350
2351-#: .././plainbox/impl/commands/inv_run.py:424
2352+#: .././plainbox/impl/commands/inv_run.py:425
2353 msgid "resume this session"
2354 msgstr ""
2355
2356-#: .././plainbox/impl/commands/inv_run.py:425
2357+#: .././plainbox/impl/commands/inv_run.py:426
2358 msgid "next session"
2359 msgstr ""
2360
2361-#: .././plainbox/impl/commands/inv_run.py:426
2362+#: .././plainbox/impl/commands/inv_run.py:427
2363 msgid "create new session"
2364 msgstr ""
2365
2366-#: .././plainbox/impl/commands/inv_run.py:427
2367+#: .././plainbox/impl/commands/inv_run.py:428
2368 msgid "Do you want to resume session {0!a}?"
2369 msgstr ""
2370
2371-#: .././plainbox/impl/commands/inv_run.py:441
2372+#: .././plainbox/impl/commands/inv_run.py:442
2373 msgid "ignore this problem"
2374 msgstr ""
2375
2376-#: .././plainbox/impl/commands/inv_run.py:442
2377+#: .././plainbox/impl/commands/inv_run.py:443
2378 msgid "erase this session"
2379 msgstr ""
2380
2381-#: .././plainbox/impl/commands/inv_run.py:445
2382+#: .././plainbox/impl/commands/inv_run.py:446
2383 #: .././plainbox/impl/commands/inv_session.py:93
2384 msgid "Session removed"
2385 msgstr ""
2386
2387 #. TRANSLATORS: This is the exit message
2388-#: .././plainbox/impl/commands/inv_run.py:457
2389+#: .././plainbox/impl/commands/inv_run.py:458
2390 msgid "Session not resumed"
2391 msgstr ""
2392
2393-#: .././plainbox/impl/commands/inv_run.py:463
2394+#: .././plainbox/impl/commands/inv_run.py:464
2395 #: .././plainbox/impl/commands/inv_session.py:180
2396 msgid "Available output formats: {}"
2397 msgstr ""
2398
2399-#: .././plainbox/impl/commands/inv_run.py:467
2400+#: .././plainbox/impl/commands/inv_run.py:468
2401 #: .././plainbox/impl/commands/inv_session.py:184
2402 msgid "Each format may support a different set of options"
2403 msgstr ""
2404
2405-#: .././plainbox/impl/commands/inv_run.py:473
2406+#: .././plainbox/impl/commands/inv_run.py:474
2407 msgid "Available transports: {}"
2408 msgstr ""
2409
2410-#: .././plainbox/impl/commands/inv_run.py:489
2411+#: .././plainbox/impl/commands/inv_run.py:490
2412 #, python-format
2413 msgid "Corrupted session %s: %s"
2414 msgstr ""
2415
2416-#: .././plainbox/impl/commands/inv_run.py:499
2417+#: .././plainbox/impl/commands/inv_run.py:500
2418 msgid "yes"
2419 msgstr ""
2420
2421-#: .././plainbox/impl/commands/inv_run.py:500
2422+#: .././plainbox/impl/commands/inv_run.py:501
2423 msgid "no"
2424 msgstr ""
2425
2426-#: .././plainbox/impl/commands/inv_run.py:505
2427+#: .././plainbox/impl/commands/inv_run.py:506
2428 msgid "Do you want to start a new session?"
2429 msgstr ""
2430
2431-#: .././plainbox/impl/commands/inv_run.py:511
2432+#: .././plainbox/impl/commands/inv_run.py:512
2433 msgid "Previous session run tried to execute job: {}"
2434 msgstr ""
2435
2436-#: .././plainbox/impl/commands/inv_run.py:514
2437+#: .././plainbox/impl/commands/inv_run.py:515
2438 msgid "skip that job"
2439 msgstr ""
2440
2441-#: .././plainbox/impl/commands/inv_run.py:515
2442+#: .././plainbox/impl/commands/inv_run.py:516
2443 msgid "mark it as passed and continue"
2444 msgstr ""
2445
2446-#: .././plainbox/impl/commands/inv_run.py:516
2447+#: .././plainbox/impl/commands/inv_run.py:517
2448 msgid "mark it as failed and continue"
2449 msgstr ""
2450
2451-#: .././plainbox/impl/commands/inv_run.py:517
2452+#: .././plainbox/impl/commands/inv_run.py:518
2453 msgid "run it again"
2454 msgstr ""
2455
2456-#: .././plainbox/impl/commands/inv_run.py:518
2457+#: .././plainbox/impl/commands/inv_run.py:519
2458 msgid "What do you want to do with that job?"
2459 msgstr ""
2460
2461-#: .././plainbox/impl/commands/inv_run.py:522
2462+#: .././plainbox/impl/commands/inv_run.py:523
2463 msgid "Skipped after resuming execution"
2464 msgstr ""
2465
2466-#: .././plainbox/impl/commands/inv_run.py:527
2467+#: .././plainbox/impl/commands/inv_run.py:528
2468 msgid "Passed after resuming execution"
2469 msgstr ""
2470
2471-#: .././plainbox/impl/commands/inv_run.py:532
2472+#: .././plainbox/impl/commands/inv_run.py:533
2473 msgid "Failed after resuming execution"
2474 msgstr ""
2475
2476-#: .././plainbox/impl/commands/inv_run.py:607
2477+#: .././plainbox/impl/commands/inv_run.py:608
2478 msgid "The job database you are currently using is broken"
2479 msgstr ""
2480
2481-#: .././plainbox/impl/commands/inv_run.py:609
2482+#: .././plainbox/impl/commands/inv_run.py:610
2483 #, python-brace-format
2484 msgid "At least two jobs contend for the id {0}"
2485 msgstr ""
2486
2487-#: .././plainbox/impl/commands/inv_run.py:612
2488+#: .././plainbox/impl/commands/inv_run.py:613
2489 #, python-brace-format
2490 msgid "First job defined in: {0}"
2491 msgstr ""
2492
2493-#: .././plainbox/impl/commands/inv_run.py:614
2494+#: .././plainbox/impl/commands/inv_run.py:615
2495 #, python-brace-format
2496 msgid "Second job defined in: {0}"
2497 msgstr ""
2498
2499-#: .././plainbox/impl/commands/inv_run.py:619
2500+#: .././plainbox/impl/commands/inv_run.py:620
2501 msgid "This session cannot be resumed"
2502 msgstr ""
2503
2504-#: .././plainbox/impl/commands/inv_run.py:683
2505+#: .././plainbox/impl/commands/inv_run.py:684
2506 msgid "Analyzing Jobs"
2507 msgstr ""
2508
2509-#: .././plainbox/impl/commands/inv_run.py:701
2510+#: .././plainbox/impl/commands/inv_run.py:702
2511 msgid "Authentication"
2512 msgstr ""
2513
2514-#: .././plainbox/impl/commands/inv_run.py:709
2515+#: .././plainbox/impl/commands/inv_run.py:710
2516 msgid "Running Selected Jobs"
2517 msgstr ""
2518
2519-#: .././plainbox/impl/commands/inv_run.py:772
2520-#: .././plainbox/impl/commands/inv_run.py:900
2521+#: .././plainbox/impl/commands/inv_run.py:730
2522+msgid "Running job {} / {}. Estimated time left: {}"
2523+msgstr ""
2524+
2525+#: .././plainbox/impl/commands/inv_run.py:791
2526+#: .././plainbox/impl/commands/inv_run.py:919
2527 msgid "Please enter your comments:"
2528 msgstr ""
2529
2530-#: .././plainbox/impl/commands/inv_run.py:779
2531+#: .././plainbox/impl/commands/inv_run.py:798
2532 msgid "Explicitly skipped before execution"
2533 msgstr ""
2534
2535-#: .././plainbox/impl/commands/inv_run.py:826
2536+#: .././plainbox/impl/commands/inv_run.py:845
2537 msgid "Results"
2538 msgstr ""
2539
2540-#: .././plainbox/impl/commands/inv_run.py:833
2541+#: .././plainbox/impl/commands/inv_run.py:852
2542 #: .././plainbox/impl/commands/inv_session.py:169
2543 msgid "Saving results to {}"
2544 msgstr ""
2545
2546-#: .././plainbox/impl/commands/inv_run.py:844
2547+#: .././plainbox/impl/commands/inv_run.py:863
2548 msgid "Select an outcome or an action: "
2549 msgstr ""
2550
2551-#: .././plainbox/impl/commands/inv_run.py:854
2552-#: .././plainbox/impl/commands/inv_run.py:859
2553-#: .././plainbox/impl/commands/inv_run.py:864
2554+#: .././plainbox/impl/commands/inv_run.py:873
2555+#: .././plainbox/impl/commands/inv_run.py:878
2556+#: .././plainbox/impl/commands/inv_run.py:883
2557 #, python-brace-format
2558 msgid "set outcome to {0}"
2559 msgstr ""
2560
2561-#: .././plainbox/impl/commands/inv_run.py:855
2562+#: .././plainbox/impl/commands/inv_run.py:874
2563 msgctxt "set outcome to <pass>"
2564 msgid "pass"
2565 msgstr ""
2566
2567-#: .././plainbox/impl/commands/inv_run.py:860
2568+#: .././plainbox/impl/commands/inv_run.py:879
2569 msgctxt "set outcome to <fail>"
2570 msgid "fail"
2571 msgstr ""
2572
2573-#: .././plainbox/impl/commands/inv_run.py:865
2574+#: .././plainbox/impl/commands/inv_run.py:884
2575 msgctxt "set outcome to <skip>"
2576 msgid "skip"
2577 msgstr ""
2578
2579-#: .././plainbox/impl/commands/inv_run.py:869
2580+#: .././plainbox/impl/commands/inv_run.py:888
2581 msgid "re-run this job"
2582 msgstr ""
2583
2584-#: .././plainbox/impl/commands/inv_run.py:876
2585+#: .././plainbox/impl/commands/inv_run.py:895
2586 #, python-brace-format
2587 msgid "set suggested outcome [{0}]"
2588 msgstr ""
2589
2590-#: .././plainbox/impl/commands/inv_run.py:879
2591+#: .././plainbox/impl/commands/inv_run.py:898
2592 msgid "Please decide what to do next:"
2593 msgstr ""
2594
2595-#: .././plainbox/impl/commands/inv_run.py:880
2596+#: .././plainbox/impl/commands/inv_run.py:899
2597 msgid "outcome"
2598 msgstr ""
2599
2600-#: .././plainbox/impl/commands/inv_run.py:882
2601-#: .././plainbox/impl/commands/inv_run.py:885
2602+#: .././plainbox/impl/commands/inv_run.py:901
2603+#: .././plainbox/impl/commands/inv_run.py:904
2604 msgid "comments"
2605 msgstr ""
2606
2607-#: .././plainbox/impl/commands/inv_run.py:883
2608+#: .././plainbox/impl/commands/inv_run.py:902
2609 msgctxt "none comment"
2610 msgid "none"
2611 msgstr ""
2612
2613-#: .././plainbox/impl/commands/inv_run.py:910
2614+#: .././plainbox/impl/commands/inv_run.py:929
2615 msgid "Warning"
2616 msgstr ""
2617
2618-#: .././plainbox/impl/commands/inv_run.py:911
2619+#: .././plainbox/impl/commands/inv_run.py:930
2620 msgid "There were some problems with the selected jobs"
2621 msgstr ""
2622
2623-#: .././plainbox/impl/commands/inv_run.py:914
2624+#: .././plainbox/impl/commands/inv_run.py:933
2625 msgid "Problematic jobs will not be considered"
2626 msgstr ""
2627
2628-#: .././plainbox/impl/commands/inv_run.py:917
2629+#: .././plainbox/impl/commands/inv_run.py:936
2630 msgid "Session Statistics"
2631 msgstr ""
2632
2633-#: .././plainbox/impl/commands/inv_run.py:918
2634-#, python-brace-format, python-format
2635-msgid "This session is about {0:.2f}% complete"
2636+#: .././plainbox/impl/commands/inv_run.py:937
2637+#, python-brace-format
2638+msgid "This session is about {0:.2f}{percent} complete"
2639 msgstr ""
2640
2641-#: .././plainbox/impl/commands/inv_run.py:923
2642+#: .././plainbox/impl/commands/inv_run.py:942
2643 msgid "Estimated duration is {:.2f} for automated jobs."
2644 msgstr ""
2645
2646-#: .././plainbox/impl/commands/inv_run.py:927
2647+#: .././plainbox/impl/commands/inv_run.py:946
2648 msgid "Estimated duration cannot be determined for automated jobs."
2649 msgstr ""
2650
2651-#: .././plainbox/impl/commands/inv_run.py:929
2652+#: .././plainbox/impl/commands/inv_run.py:948
2653 msgid "Estimated duration is {:.2f} for manual jobs."
2654 msgstr ""
2655
2656-#: .././plainbox/impl/commands/inv_run.py:933
2657+#: .././plainbox/impl/commands/inv_run.py:952
2658 msgid "Estimated duration cannot be determined for manual jobs."
2659 msgstr ""
2660
2661-#: .././plainbox/impl/commands/inv_run.py:934
2662+#: .././plainbox/impl/commands/inv_run.py:953
2663 #, python-brace-format
2664 msgid "Size of the desired job list: {0}"
2665 msgstr ""
2666
2667-#: .././plainbox/impl/commands/inv_run.py:936
2668+#: .././plainbox/impl/commands/inv_run.py:955
2669 #, python-brace-format
2670 msgid "Size of the effective execution plan: {0}"
2671 msgstr ""
2672@@ -1302,129 +1307,163 @@
2673 msgid "log messages at various levels"
2674 msgstr ""
2675
2676-#: .././plainbox/impl/ctrl.py:278
2677+#: .././plainbox/impl/ctrl.py:277
2678 #, python-format
2679 msgid "Storing resource record %r: %s"
2680 msgstr ""
2681
2682-#: .././plainbox/impl/ctrl.py:294 .././plainbox/impl/secure/launcher1.py:138
2683+#: .././plainbox/impl/ctrl.py:293 .././plainbox/impl/secure/launcher1.py:138
2684 #, python-format
2685 msgid "Instantiating unit: %s"
2686 msgstr ""
2687
2688-#: .././plainbox/impl/ctrl.py:301
2689+#: .././plainbox/impl/ctrl.py:300
2690 #, python-format
2691 msgid "Ignoring invalid instantiated unit %s: %s"
2692 msgstr ""
2693
2694-#: .././plainbox/impl/ctrl.py:323
2695+#: .././plainbox/impl/ctrl.py:326
2696 #, python-format
2697 msgid "Ignoring invalid generated job %s: %s"
2698 msgstr ""
2699
2700 #. TRANSLATORS: keep the word "local" untranslated. It is a
2701 #. special type of job that needs to be distinguished.
2702-#: .././plainbox/impl/ctrl.py:340
2703+#: .././plainbox/impl/ctrl.py:343
2704 #, python-format
2705 msgid ""
2706 "Local job %s produced job %s that collides with an existing job %s (from "
2707 "%s), the new job was discarded"
2708 msgstr ""
2709
2710-#: .././plainbox/impl/ctrl.py:356
2711+#: .././plainbox/impl/ctrl.py:369
2712+#, python-format
2713+msgid "Automatically breaking via-cycle: %s"
2714+msgstr ""
2715+
2716+#: .././plainbox/impl/ctrl.py:416
2717 #, python-format
2718 msgid "processing output from a job: %r"
2719 msgstr ""
2720
2721 #. TRANSLATORS: keep the word "local" untranslated. It is a
2722 #. special type of job that needs to be distinguished.
2723-#: .././plainbox/impl/ctrl.py:375
2724+#: .././plainbox/impl/ctrl.py:435
2725 #, python-format
2726 msgid "local script %s returned invalid RFC822 data: %s"
2727 msgstr ""
2728
2729-#: .././plainbox/impl/ctrl.py:405
2730+#: .././plainbox/impl/ctrl.py:465
2731 #, python-format
2732 msgid "Adding executable %s to nest %s"
2733 msgstr ""
2734
2735-#: .././plainbox/impl/ctrl.py:414
2736+#: .././plainbox/impl/ctrl.py:474
2737 #, python-format
2738 msgid "Unable to create symlink s%s -> %s: %r"
2739 msgstr ""
2740
2741 #. run the command
2742-#: .././plainbox/impl/ctrl.py:476
2743+#: .././plainbox/impl/ctrl.py:536
2744 #, python-format
2745 msgid "job[%s] executing %r with env %r in cwd %r"
2746 msgstr ""
2747
2748-#: .././plainbox/impl/ctrl.py:503
2749+#: .././plainbox/impl/ctrl.py:563
2750 #, python-format
2751 msgid "Symlink nest for executables: %s"
2752 msgstr ""
2753
2754-#: .././plainbox/impl/ctrl.py:533
2755+#: .././plainbox/impl/ctrl.py:593
2756 #, python-format
2757 msgid "Job temporary current working directory: %s"
2758 msgstr ""
2759
2760-#: .././plainbox/impl/ctrl.py:886
2761+#: .././plainbox/impl/ctrl.py:947
2762 #, python-format
2763 msgid "Generating job repr for job: %r"
2764 msgstr ""
2765
2766 #. run the command
2767-#: .././plainbox/impl/ctrl.py:960
2768+#: .././plainbox/impl/ctrl.py:1021
2769 #, python-format
2770 msgid "job[%s] executing %r withenv %r in cwd %r"
2771 msgstr ""
2772
2773-#: .././plainbox/impl/ctrl.py:1089
2774+#: .././plainbox/impl/ctrl.py:1150
2775 #, python-format
2776 msgid "Cannot check if plainbox-trusted-launcher-1 is available: %s"
2777 msgstr ""
2778
2779-#: .././plainbox/impl/depmgr.py:100
2780+#: .././plainbox/impl/depmgr.py:97
2781+msgid "unknown job referenced: {!a}"
2782+msgstr ""
2783+
2784+#: .././plainbox/impl/depmgr.py:153
2785 msgid "dependency cycle detected: {}"
2786 msgstr ""
2787
2788-#: .././plainbox/impl/depmgr.py:139
2789+#: .././plainbox/impl/depmgr.py:195
2790 msgid "missing dependency: {!r} ({})"
2791 msgstr ""
2792
2793-#: .././plainbox/impl/depmgr.py:173
2794+#: .././plainbox/impl/depmgr.py:248
2795 msgid "duplicate job id: {!r}"
2796 msgstr ""
2797
2798 #. Visit the visit list
2799-#: .././plainbox/impl/depmgr.py:243
2800+#: .././plainbox/impl/depmgr.py:336
2801 msgid "Starting solve"
2802 msgstr ""
2803
2804-#: .././plainbox/impl/depmgr.py:248
2805+#: .././plainbox/impl/depmgr.py:337
2806+#, python-format
2807+msgid "Solver job list: %r"
2808+msgstr ""
2809+
2810+#: .././plainbox/impl/depmgr.py:338
2811+#, python-format
2812+msgid "Solver visit list: %r"
2813+msgstr ""
2814+
2815+#: .././plainbox/impl/depmgr.py:343
2816 msgid "Done solving"
2817 msgstr ""
2818
2819-#: .././plainbox/impl/depmgr.py:262
2820+#: .././plainbox/impl/depmgr.py:359
2821+#, python-format
2822+msgid "Visiting job that's not on the job_list: %r"
2823+msgstr ""
2824+
2825+#: .././plainbox/impl/depmgr.py:361
2826 #, python-format
2827 msgid "Visiting job %s (color %s)"
2828 msgstr ""
2829
2830+#: .././plainbox/impl/depmgr.py:376
2831+#, python-format
2832+msgid "Found missing dependency: %r from %r"
2833+msgstr ""
2834+
2835 #. For each dependency that we visit let's reuse the trail
2836 #. to give proper error messages if a dependency loop exists
2837-#: .././plainbox/impl/depmgr.py:281
2838+#: .././plainbox/impl/depmgr.py:382
2839 #, python-format
2840 msgid "Visiting dependency: %r"
2841 msgstr ""
2842
2843 #. We've visited (recursively) all dependencies of this node,
2844 #. let's color it black and append it to the solution list.
2845-#: .././plainbox/impl/depmgr.py:288
2846+#: .././plainbox/impl/depmgr.py:389
2847 #, python-format
2848 msgid "Appending %r to solution"
2849 msgstr ""
2850
2851+#: .././plainbox/impl/depmgr.py:398
2852+#, python-format
2853+msgid "Found dependency cycle: %r"
2854+msgstr ""
2855+
2856 #: .././plainbox/impl/device.py:98
2857 #, python-format
2858 msgid "Unsupported platform: %s"
2859@@ -1444,16 +1483,6 @@
2860 msgid "Unable to import %s: %s"
2861 msgstr ""
2862
2863-#: .././plainbox/impl/exporter/html.py:56
2864-#, python-format
2865-msgid "Unable to load resource %s, not inlining"
2866-msgstr ""
2867-
2868-#: .././plainbox/impl/exporter/html.py:69
2869-#, python-format
2870-msgid "Resource of type %s unknown"
2871-msgstr ""
2872-
2873 #: .././plainbox/impl/exporter/xlsx.py:88
2874 msgid "Unsupported option: {}"
2875 msgstr ""
2876@@ -1810,83 +1839,82 @@
2877 msgstr ""
2878
2879 #. TRANSLATORS: %r is the name of the job
2880-#: .././plainbox/impl/runner.py:401
2881+#: .././plainbox/impl/runner.py:410
2882 #, python-format
2883 msgid "Running %r"
2884 msgstr ""
2885
2886-#: .././plainbox/impl/runner.py:408
2887+#: .././plainbox/impl/runner.py:417
2888 msgid "This type of job is not supported"
2889 msgstr ""
2890
2891 #. TRANSLATORS: please keep 'plugin' untranslated
2892-#: .././plainbox/impl/runner.py:441 .././plainbox/impl/runner.py:466
2893-#: .././plainbox/impl/runner.py:492 .././plainbox/impl/runner.py:518
2894-#: .././plainbox/impl/runner.py:544 .././plainbox/impl/runner.py:585
2895-#: .././plainbox/impl/runner.py:629 .././plainbox/impl/runner.py:678
2896-#: .././plainbox/impl/runner.py:703
2897+#: .././plainbox/impl/runner.py:450 .././plainbox/impl/runner.py:475
2898+#: .././plainbox/impl/runner.py:501 .././plainbox/impl/runner.py:527
2899+#: .././plainbox/impl/runner.py:553 .././plainbox/impl/runner.py:594
2900+#: .././plainbox/impl/runner.py:638 .././plainbox/impl/runner.py:687
2901+#: .././plainbox/impl/runner.py:712
2902 msgid "bad job plugin value"
2903 msgstr ""
2904
2905-#: .././plainbox/impl/runner.py:709 .././plainbox/impl/runner.py:781
2906+#: .././plainbox/impl/runner.py:718 .././plainbox/impl/runner.py:790
2907 msgid "No suitable execution controller is available)"
2908 msgstr ""
2909
2910-#: .././plainbox/impl/runner.py:734
2911+#: .././plainbox/impl/runner.py:743
2912 #, python-format
2913 msgid "job[%s] starting qml shell: %s"
2914 msgstr ""
2915
2916-#: .././plainbox/impl/runner.py:739
2917+#: .././plainbox/impl/runner.py:748
2918 #, python-format
2919 msgid "job[%s] shell return code: %r"
2920 msgstr ""
2921
2922-#: .././plainbox/impl/runner.py:765
2923+#: .././plainbox/impl/runner.py:774
2924 msgid "Job skipped in dry-run mode"
2925 msgstr ""
2926
2927-#: .././plainbox/impl/runner.py:844
2928+#: .././plainbox/impl/runner.py:853
2929 #, python-format
2930 msgid "job[%s] extcmd delegate: %r"
2931 msgstr ""
2932
2933-#: .././plainbox/impl/runner.py:859
2934+#: .././plainbox/impl/runner.py:868
2935 #, python-brace-format
2936 msgid "job {0} has no command to run"
2937 msgstr ""
2938
2939-#: .././plainbox/impl/runner.py:882
2940+#: .././plainbox/impl/runner.py:895
2941 #, python-format
2942 msgid "job[%s] starting command: %s"
2943 msgstr ""
2944
2945-#: .././plainbox/impl/runner.py:887
2946+#: .././plainbox/impl/runner.py:900
2947 #, python-format
2948 msgid "job[%s] command return code: %r"
2949 msgstr ""
2950
2951-#: .././plainbox/impl/runner.py:923 .././plainbox/impl/session/state.py:454
2952+#: .././plainbox/impl/runner.py:936 .././plainbox/impl/session/state.py:455
2953 msgid "No exec controller supports job {}"
2954 msgstr ""
2955
2956-#: .././plainbox/impl/runner.py:925 .././plainbox/impl/session/state.py:456
2957+#: .././plainbox/impl/runner.py:938 .././plainbox/impl/session/state.py:457
2958 #, python-format
2959 msgid "Selected execution controller %s (score %d) for job %r"
2960 msgstr ""
2961
2962-#: .././plainbox/impl/runner.py:952
2963+#: .././plainbox/impl/runner.py:965
2964 #, python-brace-format
2965-msgid ""
2966-"Job {0} created leftover filesystem artefacts in its working directory"
2967+msgid "Job {0} created leftover filesystem artefacts in its working directory"
2968 msgstr ""
2969
2970-#: .././plainbox/impl/runner.py:955
2971+#: .././plainbox/impl/runner.py:968
2972 #, python-format
2973 msgid "Leftover file/directory: %r"
2974 msgstr ""
2975
2976-#: .././plainbox/impl/runner.py:958
2977+#: .././plainbox/impl/runner.py:971
2978 msgid ""
2979 "Please store desired files in $PLAINBOX_SESSION_SHARE and use regular "
2980 "temporary files for everything else"
2981@@ -2223,15 +2251,15 @@
2982 msgid "resource expression {!r} evaluates to false"
2983 msgstr ""
2984
2985-#: .././plainbox/impl/session/jobs.py:312
2986+#: .././plainbox/impl/session/jobs.py:313
2987 msgid "job cannot be started: {}"
2988 msgstr ""
2989
2990-#: .././plainbox/impl/session/jobs.py:316
2991+#: .././plainbox/impl/session/jobs.py:317
2992 msgid "job can be started"
2993 msgstr ""
2994
2995-#: .././plainbox/impl/session/jobs.py:363
2996+#: .././plainbox/impl/session/jobs.py:364
2997 msgid "{!r} is not overridable"
2998 msgstr ""
2999
3000@@ -2248,41 +2276,41 @@
3001 msgstr ""
3002
3003 #: .././plainbox/impl/session/manager.py:96
3004-#: .././plainbox/impl/session/manager.py:452
3005+#: .././plainbox/impl/session/manager.py:453
3006 msgid ""
3007 "session manager currently doesn't support sessions involving multiple "
3008 "devices (a.k.a multi-node testing)"
3009 msgstr ""
3010
3011-#: .././plainbox/impl/session/manager.py:361
3012+#: .././plainbox/impl/session/manager.py:362
3013 #, python-format
3014 msgid "Saving %d byte of checkpoint data to %r"
3015 msgid_plural "Saving %d bytes of checkpoint data to %r"
3016 msgstr[0] ""
3017 msgstr[1] ""
3018
3019-#: .././plainbox/impl/session/manager.py:396
3020+#: .././plainbox/impl/session/manager.py:397
3021 msgid ""
3022 "attmpting to add a context for device {} which is already represented in "
3023 "this session manager"
3024 msgstr ""
3025
3026-#: .././plainbox/impl/session/manager.py:425
3027+#: .././plainbox/impl/session/manager.py:426
3028 msgid ""
3029 "attempting to remove a device context not present in this session manager"
3030 msgstr ""
3031
3032-#: .././plainbox/impl/session/manager.py:436
3033+#: .././plainbox/impl/session/manager.py:437
3034 #, python-format
3035 msgid "Device context %s added to session manager %s"
3036 msgstr ""
3037
3038-#: .././plainbox/impl/session/manager.py:446
3039+#: .././plainbox/impl/session/manager.py:447
3040 #, python-format
3041 msgid "Device context %s removed from session manager %s"
3042 msgstr ""
3043
3044-#: .././plainbox/impl/session/manager.py:457
3045+#: .././plainbox/impl/session/manager.py:458
3046 msgid "Propagating test plans to all devices"
3047 msgstr ""
3048
3049@@ -2302,192 +2330,192 @@
3050 msgid "Peeking at json... (see below)"
3051 msgstr ""
3052
3053-#: .././plainbox/impl/session/resume.py:177
3054-#: .././plainbox/impl/session/resume.py:259
3055+#: .././plainbox/impl/session/resume.py:179
3056+#: .././plainbox/impl/session/resume.py:303
3057 msgid "Unsupported version {}"
3058 msgstr ""
3059
3060-#: .././plainbox/impl/session/resume.py:241
3061+#: .././plainbox/impl/session/resume.py:282
3062 msgid "Resuming from json... (see below)"
3063 msgstr ""
3064
3065-#: .././plainbox/impl/session/resume.py:294
3066+#: .././plainbox/impl/session/resume.py:338
3067 msgid "Each flag must be a string"
3068 msgstr ""
3069
3070 #. TRANSLATORS: please don't translate app_blob
3071-#: .././plainbox/impl/session/resume.py:322
3072+#: .././plainbox/impl/session/resume.py:366
3073 msgid "app_blob is not ASCII"
3074 msgstr ""
3075
3076 #. TRANSLATORS: please don't translate app_blob
3077-#: .././plainbox/impl/session/resume.py:327
3078+#: .././plainbox/impl/session/resume.py:371
3079 msgid "Cannot base64 decode app_blob"
3080 msgstr ""
3081
3082-#: .././plainbox/impl/session/resume.py:381
3083-#: .././plainbox/impl/session/resume.py:518
3084+#: .././plainbox/impl/session/resume.py:425
3085+#: .././plainbox/impl/session/resume.py:593
3086 msgid "Starting to restore metadata..."
3087 msgstr ""
3088
3089-#: .././plainbox/impl/session/resume.py:502
3090+#: .././plainbox/impl/session/resume.py:577
3091 #, python-format
3092 msgid "Constructed new session for resume %r"
3093 msgstr ""
3094
3095-#: .././plainbox/impl/session/resume.py:508
3096+#: .././plainbox/impl/session/resume.py:583
3097 #, python-format
3098 msgid "Invoking early callback %r"
3099 msgstr ""
3100
3101-#: .././plainbox/impl/session/resume.py:512
3102+#: .././plainbox/impl/session/resume.py:587
3103 #, python-format
3104 msgid "Using different session for resume: %r"
3105 msgstr ""
3106
3107-#: .././plainbox/impl/session/resume.py:516
3108+#: .././plainbox/impl/session/resume.py:591
3109 #, python-format
3110 msgid "Starting to restore jobs and results to %r..."
3111 msgstr ""
3112
3113-#: .././plainbox/impl/session/resume.py:520
3114+#: .././plainbox/impl/session/resume.py:595
3115 #, python-format
3116 msgid "restored metadata %r"
3117 msgstr ""
3118
3119-#: .././plainbox/impl/session/resume.py:521
3120+#: .././plainbox/impl/session/resume.py:596
3121 msgid "Starting to restore desired job list..."
3122 msgstr ""
3123
3124-#: .././plainbox/impl/session/resume.py:523
3125+#: .././plainbox/impl/session/resume.py:598
3126 msgid "Starting to restore job list..."
3127 msgstr ""
3128
3129 #. Return whatever we've got
3130-#: .././plainbox/impl/session/resume.py:526
3131+#: .././plainbox/impl/session/resume.py:601
3132 msgid "Resume complete!"
3133 msgstr ""
3134
3135-#: .././plainbox/impl/session/resume.py:583
3136+#: .././plainbox/impl/session/resume.py:658
3137 msgid "Unknown jobs remaining: {}"
3138 msgstr ""
3139
3140-#: .././plainbox/impl/session/resume.py:618
3141+#: .././plainbox/impl/session/resume.py:693
3142 #, python-format
3143 msgid "Ignoring changes to job %r)"
3144 msgstr ""
3145
3146-#: .././plainbox/impl/session/resume.py:621
3147+#: .././plainbox/impl/session/resume.py:696
3148 msgid "Definition of job {!r} has changed"
3149 msgstr ""
3150
3151-#: .././plainbox/impl/session/resume.py:640
3152+#: .././plainbox/impl/session/resume.py:715
3153 #, python-format
3154 msgid "calling update_job_result(%r, %r)"
3155 msgstr ""
3156
3157-#: .././plainbox/impl/session/resume.py:657
3158+#: .././plainbox/impl/session/resume.py:732
3159 msgid "Each job id must be a string"
3160 msgstr ""
3161
3162-#: .././plainbox/impl/session/resume.py:662
3163+#: .././plainbox/impl/session/resume.py:737
3164 #, python-format
3165 msgid "calling update_desired_job_list(%r)"
3166 msgstr ""
3167
3168-#: .././plainbox/impl/session/resume.py:669
3169+#: .././plainbox/impl/session/resume.py:744
3170 msgid "'desired_job_list' refers to unknown job {!r}"
3171 msgstr ""
3172
3173-#: .././plainbox/impl/session/resume.py:734
3174+#: .././plainbox/impl/session/resume.py:809
3175 #, python-format
3176 msgid "Rewrote file name from %r to %r"
3177 msgstr ""
3178
3179-#: .././plainbox/impl/session/resume.py:740
3180+#: .././plainbox/impl/session/resume.py:815
3181 msgid "cannot access file: {!r}"
3182 msgstr ""
3183
3184 #. TRANSLATORS: please keep delay untranslated
3185-#: .././plainbox/impl/session/resume.py:775
3186+#: .././plainbox/impl/session/resume.py:854
3187 msgid "delay cannot be negative"
3188 msgstr ""
3189
3190-#: .././plainbox/impl/session/resume.py:787
3191+#: .././plainbox/impl/session/resume.py:866
3192 msgid "record data {!r} is not ASCII"
3193 msgstr ""
3194
3195-#: .././plainbox/impl/session/resume.py:792
3196+#: .././plainbox/impl/session/resume.py:871
3197 msgid "record data {!r} is not correct base64"
3198 msgstr ""
3199
3200-#: .././plainbox/impl/session/resume.py:860
3201+#: .././plainbox/impl/session/resume.py:968
3202 msgid "key {!r}"
3203 msgstr ""
3204
3205-#: .././plainbox/impl/session/resume.py:866
3206+#: .././plainbox/impl/session/resume.py:974
3207 msgid "Missing value for key {!r}"
3208 msgstr ""
3209
3210-#: .././plainbox/impl/session/resume.py:870
3211+#: .././plainbox/impl/session/resume.py:978
3212 msgid "object"
3213 msgstr ""
3214
3215-#: .././plainbox/impl/session/resume.py:876
3216+#: .././plainbox/impl/session/resume.py:984
3217 msgid "Value of {} cannot be None"
3218 msgstr ""
3219
3220-#: .././plainbox/impl/session/resume.py:884
3221+#: .././plainbox/impl/session/resume.py:992
3222 msgid "Value of {} is of incorrect type {}"
3223 msgstr ""
3224
3225-#: .././plainbox/impl/session/resume.py:893
3226+#: .././plainbox/impl/session/resume.py:1001
3227 msgid "Value for {} not in allowed set {!r}"
3228 msgstr ""
3229
3230 #. TRANSLATORS: please don't translate app_blob, None and bytes
3231-#: .././plainbox/impl/session/state.py:164
3232+#: .././plainbox/impl/session/state.py:165
3233 msgid "app_blob must be either None or bytes"
3234 msgstr ""
3235
3236 #. TRANSLATORS: please don't translate app_blob, None and bytes
3237-#: .././plainbox/impl/session/state.py:182
3238+#: .././plainbox/impl/session/state.py:183
3239 msgid "app_id must be either None or str"
3240 msgstr ""
3241
3242-#: .././plainbox/impl/session/state.py:384
3243+#: .././plainbox/impl/session/state.py:385
3244 msgid "attempting to add the same provider twice"
3245 msgstr ""
3246
3247-#: .././plainbox/impl/session/state.py:406
3248+#: .././plainbox/impl/session/state.py:407
3249 msgid "attempting to add the same unit twice"
3250 msgstr ""
3251
3252-#: .././plainbox/impl/session/state.py:422
3253+#: .././plainbox/impl/session/state.py:423
3254 msgid "attempting to remove unit not in this context"
3255 msgstr ""
3256
3257-#: .././plainbox/impl/session/state.py:463
3258+#: .././plainbox/impl/session/state.py:464
3259 #, python-format
3260 msgid "Provider %s added to context %s"
3261 msgstr ""
3262
3263-#: .././plainbox/impl/session/state.py:471
3264+#: .././plainbox/impl/session/state.py:472
3265 #, python-format
3266 msgid "Unit %s added to context %s"
3267 msgstr ""
3268
3269-#: .././plainbox/impl/session/state.py:483
3270+#: .././plainbox/impl/session/state.py:484
3271 #, python-format
3272 msgid "Unit %s removed from context %s"
3273 msgstr ""
3274
3275-#: .././plainbox/impl/session/state.py:677
3276+#: .././plainbox/impl/session/state.py:678
3277 #, python-format
3278 msgid "Job %s result changed to %r"
3279 msgstr ""
3280
3281-#: .././plainbox/impl/session/state.py:792
3282+#: .././plainbox/impl/session/state.py:793
3283 msgid "cannot remove jobs that are on the run list: {}"
3284 msgstr ""
3285
3286@@ -2662,7 +2690,7 @@
3287
3288 #. TRANSLATORS: please don't translate fsync()
3289 #. Flush kernel buffers on the directory.
3290-#.
3291+#.
3292 #. This should ensure the rename operation is really on disk by now.
3293 #. As noted above, this is essential for being able to survive
3294 #. system crash immediately after exiting this method.
3295@@ -2767,12 +2795,12 @@
3296 msgstr ""
3297
3298 #: .././plainbox/impl/unit/category.py:119 .././plainbox/impl/unit/job.py:650
3299-#: .././plainbox/impl/unit/testplan.py:411
3300+#: .././plainbox/impl/unit/testplan.py:415
3301 msgid "please use only one line"
3302 msgstr ""
3303
3304 #: .././plainbox/impl/unit/category.py:125 .././plainbox/impl/unit/job.py:656
3305-#: .././plainbox/impl/unit/testplan.py:417
3306+#: .././plainbox/impl/unit/testplan.py:421
3307 msgid "please stay under 80 characters"
3308 msgstr ""
3309
3310@@ -3349,8 +3377,8 @@
3311 " hopefully, in most cases, you don't need to do anything. If your src/\n"
3312 " directory has a Makefile or .go source files you should be good to go.\n"
3313 "\n"
3314-" If the automatic defaults are somehow unsuitable you need to edit "
3315-"manage.py\n"
3316+" If the automatic defaults are somehow unsuitable you need to edit manage."
3317+"py\n"
3318 " so that it specifies the build command.\n"
3319 "\n"
3320 " IMPORTANT: It is expected that the build command will create binary "
3321
3322=== modified file 'plainbox/po/en_GB.po'
3323--- plainbox/po/en_GB.po 2015-04-18 05:08:45 +0000
3324+++ plainbox/po/en_GB.po 2015-04-21 15:52:36 +0000
3325@@ -6,11 +6,12 @@
3326 msgid ""
3327 msgstr ""
3328 "Project-Id-Version: plainbox\n"
3329-"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
3330-"POT-Creation-Date: 2015-04-08 15:31+0200\n"
3331+"Report-Msgid-Bugs-To: \n"
3332+"POT-Creation-Date: 2015-04-21 17:42+0200\n"
3333 "PO-Revision-Date: 2014-04-10 10:08+0000\n"
3334 "Last-Translator: Andi Chandler <Unknown>\n"
3335 "Language-Team: English (United Kingdom) <en_GB@li.org>\n"
3336+"Language: \n"
3337 "MIME-Version: 1.0\n"
3338 "Content-Type: text/plain; charset=UTF-8\n"
3339 "Content-Transfer-Encoding: 8bit\n"
3340@@ -401,9 +402,9 @@
3341 #: .././plainbox/impl/commands/cmd_run.py:68
3342 #: .././plainbox/impl/commands/cmd_run.py:84
3343 #: .././plainbox/impl/commands/cmd_session.py:115
3344-#: .././plainbox/impl/commands/inv_run.py:346
3345-#: .././plainbox/impl/commands/inv_run.py:349
3346-#: .././plainbox/impl/commands/inv_run.py:352
3347+#: .././plainbox/impl/commands/inv_run.py:347
3348+#: .././plainbox/impl/commands/inv_run.py:350
3349+#: .././plainbox/impl/commands/inv_run.py:353
3350 #: .././plainbox/impl/commands/inv_session.py:143
3351 #: .././plainbox/impl/commands/inv_session.py:146
3352 msgid "?"
3353@@ -446,10 +447,8 @@
3354 msgstr "TRANSPORT"
3355
3356 #: .././plainbox/impl/commands/cmd_run.py:86
3357-msgid ""
3358-"use TRANSPORT to send results somewhere (pass ? for a list of choices)"
3359-msgstr ""
3360-"use TRANSPORT to send results somewhere (pass ? for a list of choices)"
3361+msgid "use TRANSPORT to send results somewhere (pass ? for a list of choices)"
3362+msgstr "use TRANSPORT to send results somewhere (pass ? for a list of choices)"
3363
3364 #: .././plainbox/impl/commands/cmd_run.py:90
3365 msgid "WHERE"
3366@@ -654,8 +653,8 @@
3367 "\n"
3368 " @EPILOG@\n"
3369 "\n"
3370-" The name of the provider must follow the pattern "
3371-"``YYYY.example.org:name``\n"
3372+" The name of the provider must follow the pattern ``YYYY.example.org:"
3373+"name``\n"
3374 " where ``YYYY`` is a four-digit year when the author of the provider "
3375 "owned\n"
3376 " the domain (here, ``example.org``) and ``name`` is arbitrary identifier\n"
3377@@ -679,8 +678,8 @@
3378 "\n"
3379 " @EPILOG@\n"
3380 "\n"
3381-" The name of the provider must follow the pattern "
3382-"``YYYY.example.org:name``\n"
3383+" The name of the provider must follow the pattern ``YYYY.example.org:"
3384+"name``\n"
3385 " where ``YYYY`` is a four-digit year when the author of the provider "
3386 "owned\n"
3387 " the domain (here, ``example.org``) and ``name`` is arbitrary identifier\n"
3388@@ -782,6 +781,7 @@
3389 msgstr "interactive"
3390
3391 #: .././plainbox/impl/commands/inv_analyze.py:163
3392+#: .././plainbox/impl/commands/inv_run.py:733
3393 msgid "unknown"
3394 msgstr "unknown"
3395
3396@@ -890,314 +890,318 @@
3397 msgid "Unable to decode input stream, must be valid UTF-8"
3398 msgstr "Unable to decode input stream, must be valid UTF-8"
3399
3400-#: .././plainbox/impl/commands/inv_run.py:79
3401+#: .././plainbox/impl/commands/inv_run.py:80
3402 msgid "Pick an action"
3403 msgstr ""
3404
3405-#: .././plainbox/impl/commands/inv_run.py:169
3406+#: .././plainbox/impl/commands/inv_run.py:170
3407 #, python-brace-format
3408 msgid "ID: {0}"
3409 msgstr ""
3410
3411-#: .././plainbox/impl/commands/inv_run.py:170
3412+#: .././plainbox/impl/commands/inv_run.py:171
3413 #, python-brace-format
3414 msgid "Category: {0}"
3415 msgstr ""
3416
3417-#: .././plainbox/impl/commands/inv_run.py:177
3418+#: .././plainbox/impl/commands/inv_run.py:178
3419 msgid "press ENTER to continue"
3420 msgstr ""
3421
3422-#: .././plainbox/impl/commands/inv_run.py:178
3423-#: .././plainbox/impl/commands/inv_run.py:850
3424+#: .././plainbox/impl/commands/inv_run.py:179
3425+#: .././plainbox/impl/commands/inv_run.py:869
3426 msgid "add a comment"
3427 msgstr ""
3428
3429-#: .././plainbox/impl/commands/inv_run.py:179
3430+#: .././plainbox/impl/commands/inv_run.py:180
3431 msgid "skip this job"
3432 msgstr ""
3433
3434-#: .././plainbox/impl/commands/inv_run.py:180
3435+#: .././plainbox/impl/commands/inv_run.py:181
3436 msgid "save the session and quit"
3437 msgstr ""
3438
3439-#: .././plainbox/impl/commands/inv_run.py:190
3440+#: .././plainbox/impl/commands/inv_run.py:191
3441 msgid "Command output hidden"
3442 msgstr ""
3443
3444-#: .././plainbox/impl/commands/inv_run.py:229
3445+#: .././plainbox/impl/commands/inv_run.py:230
3446 msgid "Job cannot be started because:"
3447 msgstr ""
3448
3449-#: .././plainbox/impl/commands/inv_run.py:237
3450+#: .././plainbox/impl/commands/inv_run.py:238
3451 msgid "Outcome"
3452 msgstr ""
3453
3454-#: .././plainbox/impl/commands/inv_run.py:243
3455+#: .././plainbox/impl/commands/inv_run.py:244
3456 msgid "Waiting for the system to shut down or reboot..."
3457 msgstr ""
3458
3459-#: .././plainbox/impl/commands/inv_run.py:415
3460+#: .././plainbox/impl/commands/inv_run.py:416
3461 msgid "Resume Incomplete Session"
3462 msgstr ""
3463
3464-#: .././plainbox/impl/commands/inv_run.py:417
3465+#: .././plainbox/impl/commands/inv_run.py:418
3466 #, python-brace-format
3467 msgid "There is {0} incomplete session that might be resumed"
3468 msgid_plural "There are {0} incomplete sessions that might be resumed"
3469 msgstr[0] ""
3470 msgstr[1] ""
3471
3472-#: .././plainbox/impl/commands/inv_run.py:424
3473+#: .././plainbox/impl/commands/inv_run.py:425
3474 msgid "resume this session"
3475 msgstr ""
3476
3477-#: .././plainbox/impl/commands/inv_run.py:425
3478+#: .././plainbox/impl/commands/inv_run.py:426
3479 msgid "next session"
3480 msgstr ""
3481
3482-#: .././plainbox/impl/commands/inv_run.py:426
3483+#: .././plainbox/impl/commands/inv_run.py:427
3484 msgid "create new session"
3485 msgstr ""
3486
3487-#: .././plainbox/impl/commands/inv_run.py:427
3488+#: .././plainbox/impl/commands/inv_run.py:428
3489 msgid "Do you want to resume session {0!a}?"
3490 msgstr ""
3491
3492-#: .././plainbox/impl/commands/inv_run.py:441
3493+#: .././plainbox/impl/commands/inv_run.py:442
3494 msgid "ignore this problem"
3495 msgstr ""
3496
3497-#: .././plainbox/impl/commands/inv_run.py:442
3498+#: .././plainbox/impl/commands/inv_run.py:443
3499 msgid "erase this session"
3500 msgstr ""
3501
3502-#: .././plainbox/impl/commands/inv_run.py:445
3503+#: .././plainbox/impl/commands/inv_run.py:446
3504 #: .././plainbox/impl/commands/inv_session.py:93
3505 msgid "Session removed"
3506 msgstr ""
3507
3508 #. TRANSLATORS: This is the exit message
3509-#: .././plainbox/impl/commands/inv_run.py:457
3510+#: .././plainbox/impl/commands/inv_run.py:458
3511 msgid "Session not resumed"
3512 msgstr ""
3513
3514-#: .././plainbox/impl/commands/inv_run.py:463
3515+#: .././plainbox/impl/commands/inv_run.py:464
3516 #: .././plainbox/impl/commands/inv_session.py:180
3517 msgid "Available output formats: {}"
3518 msgstr "Available output formats: {}"
3519
3520-#: .././plainbox/impl/commands/inv_run.py:467
3521+#: .././plainbox/impl/commands/inv_run.py:468
3522 #: .././plainbox/impl/commands/inv_session.py:184
3523 msgid "Each format may support a different set of options"
3524 msgstr "Each format may support a different set of options"
3525
3526-#: .././plainbox/impl/commands/inv_run.py:473
3527+#: .././plainbox/impl/commands/inv_run.py:474
3528 msgid "Available transports: {}"
3529 msgstr "Available transports: {}"
3530
3531-#: .././plainbox/impl/commands/inv_run.py:489
3532+#: .././plainbox/impl/commands/inv_run.py:490
3533 #, python-format
3534 msgid "Corrupted session %s: %s"
3535 msgstr ""
3536
3537-#: .././plainbox/impl/commands/inv_run.py:499
3538+#: .././plainbox/impl/commands/inv_run.py:500
3539 msgid "yes"
3540 msgstr ""
3541
3542-#: .././plainbox/impl/commands/inv_run.py:500
3543+#: .././plainbox/impl/commands/inv_run.py:501
3544 msgid "no"
3545 msgstr ""
3546
3547-#: .././plainbox/impl/commands/inv_run.py:505
3548+#: .././plainbox/impl/commands/inv_run.py:506
3549 msgid "Do you want to start a new session?"
3550 msgstr ""
3551
3552-#: .././plainbox/impl/commands/inv_run.py:511
3553+#: .././plainbox/impl/commands/inv_run.py:512
3554 msgid "Previous session run tried to execute job: {}"
3555 msgstr ""
3556
3557-#: .././plainbox/impl/commands/inv_run.py:514
3558+#: .././plainbox/impl/commands/inv_run.py:515
3559 msgid "skip that job"
3560 msgstr ""
3561
3562-#: .././plainbox/impl/commands/inv_run.py:515
3563+#: .././plainbox/impl/commands/inv_run.py:516
3564 msgid "mark it as passed and continue"
3565 msgstr ""
3566
3567-#: .././plainbox/impl/commands/inv_run.py:516
3568+#: .././plainbox/impl/commands/inv_run.py:517
3569 msgid "mark it as failed and continue"
3570 msgstr ""
3571
3572-#: .././plainbox/impl/commands/inv_run.py:517
3573+#: .././plainbox/impl/commands/inv_run.py:518
3574 msgid "run it again"
3575 msgstr ""
3576
3577-#: .././plainbox/impl/commands/inv_run.py:518
3578+#: .././plainbox/impl/commands/inv_run.py:519
3579 msgid "What do you want to do with that job?"
3580 msgstr "What do you want to do with that job?"
3581
3582-#: .././plainbox/impl/commands/inv_run.py:522
3583+#: .././plainbox/impl/commands/inv_run.py:523
3584 msgid "Skipped after resuming execution"
3585 msgstr "Skipped after resuming execution"
3586
3587-#: .././plainbox/impl/commands/inv_run.py:527
3588+#: .././plainbox/impl/commands/inv_run.py:528
3589 msgid "Passed after resuming execution"
3590 msgstr ""
3591
3592-#: .././plainbox/impl/commands/inv_run.py:532
3593+#: .././plainbox/impl/commands/inv_run.py:533
3594 msgid "Failed after resuming execution"
3595 msgstr "Failed after resuming execution"
3596
3597-#: .././plainbox/impl/commands/inv_run.py:607
3598+#: .././plainbox/impl/commands/inv_run.py:608
3599 msgid "The job database you are currently using is broken"
3600 msgstr "The job database you are currently using is broken"
3601
3602-#: .././plainbox/impl/commands/inv_run.py:609
3603+#: .././plainbox/impl/commands/inv_run.py:610
3604 #, python-brace-format
3605 msgid "At least two jobs contend for the id {0}"
3606 msgstr "At least two jobs contend for the id {0}"
3607
3608-#: .././plainbox/impl/commands/inv_run.py:612
3609+#: .././plainbox/impl/commands/inv_run.py:613
3610 #, python-brace-format
3611 msgid "First job defined in: {0}"
3612 msgstr "First job defined in: {0}"
3613
3614-#: .././plainbox/impl/commands/inv_run.py:614
3615+#: .././plainbox/impl/commands/inv_run.py:615
3616 #, python-brace-format
3617 msgid "Second job defined in: {0}"
3618 msgstr "Second job defined in: {0}"
3619
3620-#: .././plainbox/impl/commands/inv_run.py:619
3621+#: .././plainbox/impl/commands/inv_run.py:620
3622 msgid "This session cannot be resumed"
3623 msgstr ""
3624
3625-#: .././plainbox/impl/commands/inv_run.py:683
3626+#: .././plainbox/impl/commands/inv_run.py:684
3627 msgid "Analyzing Jobs"
3628 msgstr ""
3629
3630-#: .././plainbox/impl/commands/inv_run.py:701
3631+#: .././plainbox/impl/commands/inv_run.py:702
3632 msgid "Authentication"
3633 msgstr ""
3634
3635-#: .././plainbox/impl/commands/inv_run.py:709
3636+#: .././plainbox/impl/commands/inv_run.py:710
3637 msgid "Running Selected Jobs"
3638 msgstr ""
3639
3640-#: .././plainbox/impl/commands/inv_run.py:772
3641-#: .././plainbox/impl/commands/inv_run.py:900
3642+#: .././plainbox/impl/commands/inv_run.py:730
3643+msgid "Running job {} / {}. Estimated time left: {}"
3644+msgstr ""
3645+
3646+#: .././plainbox/impl/commands/inv_run.py:791
3647+#: .././plainbox/impl/commands/inv_run.py:919
3648 msgid "Please enter your comments:"
3649 msgstr ""
3650
3651-#: .././plainbox/impl/commands/inv_run.py:779
3652+#: .././plainbox/impl/commands/inv_run.py:798
3653 msgid "Explicitly skipped before execution"
3654 msgstr ""
3655
3656-#: .././plainbox/impl/commands/inv_run.py:826
3657+#: .././plainbox/impl/commands/inv_run.py:845
3658 msgid "Results"
3659 msgstr ""
3660
3661-#: .././plainbox/impl/commands/inv_run.py:833
3662+#: .././plainbox/impl/commands/inv_run.py:852
3663 #: .././plainbox/impl/commands/inv_session.py:169
3664 msgid "Saving results to {}"
3665 msgstr "Saving results to {}"
3666
3667-#: .././plainbox/impl/commands/inv_run.py:844
3668+#: .././plainbox/impl/commands/inv_run.py:863
3669 msgid "Select an outcome or an action: "
3670 msgstr "Select an outcome or an action: "
3671
3672-#: .././plainbox/impl/commands/inv_run.py:854
3673-#: .././plainbox/impl/commands/inv_run.py:859
3674-#: .././plainbox/impl/commands/inv_run.py:864
3675+#: .././plainbox/impl/commands/inv_run.py:873
3676+#: .././plainbox/impl/commands/inv_run.py:878
3677+#: .././plainbox/impl/commands/inv_run.py:883
3678 #, python-brace-format
3679 msgid "set outcome to {0}"
3680 msgstr ""
3681
3682-#: .././plainbox/impl/commands/inv_run.py:855
3683+#: .././plainbox/impl/commands/inv_run.py:874
3684 msgctxt "set outcome to <pass>"
3685 msgid "pass"
3686 msgstr ""
3687
3688-#: .././plainbox/impl/commands/inv_run.py:860
3689+#: .././plainbox/impl/commands/inv_run.py:879
3690 msgctxt "set outcome to <fail>"
3691 msgid "fail"
3692 msgstr ""
3693
3694-#: .././plainbox/impl/commands/inv_run.py:865
3695+#: .././plainbox/impl/commands/inv_run.py:884
3696 msgctxt "set outcome to <skip>"
3697 msgid "skip"
3698 msgstr ""
3699
3700-#: .././plainbox/impl/commands/inv_run.py:869
3701+#: .././plainbox/impl/commands/inv_run.py:888
3702 msgid "re-run this job"
3703 msgstr ""
3704
3705-#: .././plainbox/impl/commands/inv_run.py:876
3706+#: .././plainbox/impl/commands/inv_run.py:895
3707 #, python-brace-format
3708 msgid "set suggested outcome [{0}]"
3709 msgstr ""
3710
3711-#: .././plainbox/impl/commands/inv_run.py:879
3712+#: .././plainbox/impl/commands/inv_run.py:898
3713 msgid "Please decide what to do next:"
3714 msgstr ""
3715
3716-#: .././plainbox/impl/commands/inv_run.py:880
3717+#: .././plainbox/impl/commands/inv_run.py:899
3718 msgid "outcome"
3719 msgstr ""
3720
3721-#: .././plainbox/impl/commands/inv_run.py:882
3722-#: .././plainbox/impl/commands/inv_run.py:885
3723+#: .././plainbox/impl/commands/inv_run.py:901
3724+#: .././plainbox/impl/commands/inv_run.py:904
3725 msgid "comments"
3726 msgstr "comments"
3727
3728-#: .././plainbox/impl/commands/inv_run.py:883
3729+#: .././plainbox/impl/commands/inv_run.py:902
3730 msgctxt "none comment"
3731 msgid "none"
3732 msgstr ""
3733
3734-#: .././plainbox/impl/commands/inv_run.py:910
3735+#: .././plainbox/impl/commands/inv_run.py:929
3736 msgid "Warning"
3737 msgstr ""
3738
3739-#: .././plainbox/impl/commands/inv_run.py:911
3740+#: .././plainbox/impl/commands/inv_run.py:930
3741 msgid "There were some problems with the selected jobs"
3742 msgstr "There were some problems with the selected jobs"
3743
3744-#: .././plainbox/impl/commands/inv_run.py:914
3745+#: .././plainbox/impl/commands/inv_run.py:933
3746 msgid "Problematic jobs will not be considered"
3747 msgstr "Problematic jobs will not be considered"
3748
3749-#: .././plainbox/impl/commands/inv_run.py:917
3750+#: .././plainbox/impl/commands/inv_run.py:936
3751 msgid "Session Statistics"
3752 msgstr ""
3753
3754-#: .././plainbox/impl/commands/inv_run.py:918
3755-#, python-brace-format, python-format
3756-msgid "This session is about {0:.2f}% complete"
3757+#: .././plainbox/impl/commands/inv_run.py:937
3758+#, python-brace-format
3759+msgid "This session is about {0:.2f}{percent} complete"
3760 msgstr ""
3761
3762-#: .././plainbox/impl/commands/inv_run.py:923
3763+#: .././plainbox/impl/commands/inv_run.py:942
3764 msgid "Estimated duration is {:.2f} for automated jobs."
3765 msgstr "Estimated duration is {:.2f} for automated jobs."
3766
3767-#: .././plainbox/impl/commands/inv_run.py:927
3768+#: .././plainbox/impl/commands/inv_run.py:946
3769 msgid "Estimated duration cannot be determined for automated jobs."
3770 msgstr "Estimated duration cannot be determined for automated jobs."
3771
3772-#: .././plainbox/impl/commands/inv_run.py:929
3773+#: .././plainbox/impl/commands/inv_run.py:948
3774 msgid "Estimated duration is {:.2f} for manual jobs."
3775 msgstr "Estimated duration is {:.2f} for manual jobs."
3776
3777-#: .././plainbox/impl/commands/inv_run.py:933
3778+#: .././plainbox/impl/commands/inv_run.py:952
3779 msgid "Estimated duration cannot be determined for manual jobs."
3780 msgstr "Estimated duration cannot be determined for manual jobs."
3781
3782-#: .././plainbox/impl/commands/inv_run.py:934
3783+#: .././plainbox/impl/commands/inv_run.py:953
3784 #, python-brace-format
3785 msgid "Size of the desired job list: {0}"
3786 msgstr ""
3787
3788-#: .././plainbox/impl/commands/inv_run.py:936
3789+#: .././plainbox/impl/commands/inv_run.py:955
3790 #, python-brace-format
3791 msgid "Size of the effective execution plan: {0}"
3792 msgstr ""
3793@@ -1342,129 +1346,164 @@
3794 msgid "log messages at various levels"
3795 msgstr "log messages at various levels"
3796
3797-#: .././plainbox/impl/ctrl.py:278
3798+#: .././plainbox/impl/ctrl.py:277
3799 #, python-format
3800 msgid "Storing resource record %r: %s"
3801 msgstr "Storing resource record %r: %s"
3802
3803-#: .././plainbox/impl/ctrl.py:294 .././plainbox/impl/secure/launcher1.py:138
3804+#: .././plainbox/impl/ctrl.py:293 .././plainbox/impl/secure/launcher1.py:138
3805 #, python-format
3806 msgid "Instantiating unit: %s"
3807 msgstr ""
3808
3809-#: .././plainbox/impl/ctrl.py:301
3810+#: .././plainbox/impl/ctrl.py:300
3811 #, python-format
3812 msgid "Ignoring invalid instantiated unit %s: %s"
3813 msgstr ""
3814
3815-#: .././plainbox/impl/ctrl.py:323
3816+#: .././plainbox/impl/ctrl.py:326
3817 #, python-format
3818 msgid "Ignoring invalid generated job %s: %s"
3819 msgstr ""
3820
3821 #. TRANSLATORS: keep the word "local" untranslated. It is a
3822 #. special type of job that needs to be distinguished.
3823-#: .././plainbox/impl/ctrl.py:340
3824+#: .././plainbox/impl/ctrl.py:343
3825 #, python-format
3826 msgid ""
3827 "Local job %s produced job %s that collides with an existing job %s (from "
3828 "%s), the new job was discarded"
3829 msgstr ""
3830
3831-#: .././plainbox/impl/ctrl.py:356
3832+#: .././plainbox/impl/ctrl.py:369
3833+#, python-format
3834+msgid "Automatically breaking via-cycle: %s"
3835+msgstr ""
3836+
3837+#: .././plainbox/impl/ctrl.py:416
3838 #, python-format
3839 msgid "processing output from a job: %r"
3840 msgstr "processing output from a job: %r"
3841
3842 #. TRANSLATORS: keep the word "local" untranslated. It is a
3843 #. special type of job that needs to be distinguished.
3844-#: .././plainbox/impl/ctrl.py:375
3845+#: .././plainbox/impl/ctrl.py:435
3846 #, python-format
3847 msgid "local script %s returned invalid RFC822 data: %s"
3848 msgstr "local script %s returned invalid RFC822 data: %s"
3849
3850-#: .././plainbox/impl/ctrl.py:405
3851+#: .././plainbox/impl/ctrl.py:465
3852 #, python-format
3853 msgid "Adding executable %s to nest %s"
3854 msgstr "Adding executable %s to nest %s"
3855
3856-#: .././plainbox/impl/ctrl.py:414
3857+#: .././plainbox/impl/ctrl.py:474
3858 #, python-format
3859 msgid "Unable to create symlink s%s -> %s: %r"
3860 msgstr ""
3861
3862 #. run the command
3863-#: .././plainbox/impl/ctrl.py:476
3864+#: .././plainbox/impl/ctrl.py:536
3865 #, python-format
3866 msgid "job[%s] executing %r with env %r in cwd %r"
3867 msgstr ""
3868
3869-#: .././plainbox/impl/ctrl.py:503
3870+#: .././plainbox/impl/ctrl.py:563
3871 #, python-format
3872 msgid "Symlink nest for executables: %s"
3873 msgstr "Symlink nest for executables: %s"
3874
3875-#: .././plainbox/impl/ctrl.py:533
3876+#: .././plainbox/impl/ctrl.py:593
3877 #, python-format
3878 msgid "Job temporary current working directory: %s"
3879 msgstr ""
3880
3881-#: .././plainbox/impl/ctrl.py:886
3882+#: .././plainbox/impl/ctrl.py:947
3883 #, python-format
3884 msgid "Generating job repr for job: %r"
3885 msgstr ""
3886
3887 #. run the command
3888-#: .././plainbox/impl/ctrl.py:960
3889+#: .././plainbox/impl/ctrl.py:1021
3890 #, python-format
3891 msgid "job[%s] executing %r withenv %r in cwd %r"
3892 msgstr ""
3893
3894-#: .././plainbox/impl/ctrl.py:1089
3895+#: .././plainbox/impl/ctrl.py:1150
3896 #, python-format
3897 msgid "Cannot check if plainbox-trusted-launcher-1 is available: %s"
3898 msgstr ""
3899
3900-#: .././plainbox/impl/depmgr.py:100
3901+#: .././plainbox/impl/depmgr.py:97
3902+#, fuzzy
3903+msgid "unknown job referenced: {!a}"
3904+msgstr "Unknown jobs remaining: {}"
3905+
3906+#: .././plainbox/impl/depmgr.py:153
3907 msgid "dependency cycle detected: {}"
3908 msgstr "dependency cycle detected: {}"
3909
3910-#: .././plainbox/impl/depmgr.py:139
3911+#: .././plainbox/impl/depmgr.py:195
3912 msgid "missing dependency: {!r} ({})"
3913 msgstr "missing dependency: {!r} ({})"
3914
3915-#: .././plainbox/impl/depmgr.py:173
3916+#: .././plainbox/impl/depmgr.py:248
3917 msgid "duplicate job id: {!r}"
3918 msgstr "duplicate job id: {!r}"
3919
3920 #. Visit the visit list
3921-#: .././plainbox/impl/depmgr.py:243
3922+#: .././plainbox/impl/depmgr.py:336
3923 msgid "Starting solve"
3924 msgstr "Starting solve"
3925
3926-#: .././plainbox/impl/depmgr.py:248
3927+#: .././plainbox/impl/depmgr.py:337
3928+#, python-format
3929+msgid "Solver job list: %r"
3930+msgstr ""
3931+
3932+#: .././plainbox/impl/depmgr.py:338
3933+#, python-format
3934+msgid "Solver visit list: %r"
3935+msgstr ""
3936+
3937+#: .././plainbox/impl/depmgr.py:343
3938 msgid "Done solving"
3939 msgstr "Done solving"
3940
3941-#: .././plainbox/impl/depmgr.py:262
3942+#: .././plainbox/impl/depmgr.py:359
3943+#, python-format
3944+msgid "Visiting job that's not on the job_list: %r"
3945+msgstr ""
3946+
3947+#: .././plainbox/impl/depmgr.py:361
3948 #, python-format
3949 msgid "Visiting job %s (color %s)"
3950 msgstr "Visiting job %s (colour %s)"
3951
3952+#: .././plainbox/impl/depmgr.py:376
3953+#, fuzzy, python-format
3954+msgid "Found missing dependency: %r from %r"
3955+msgstr "Visiting dependency: %r"
3956+
3957 #. For each dependency that we visit let's reuse the trail
3958 #. to give proper error messages if a dependency loop exists
3959-#: .././plainbox/impl/depmgr.py:281
3960+#: .././plainbox/impl/depmgr.py:382
3961 #, python-format
3962 msgid "Visiting dependency: %r"
3963 msgstr "Visiting dependency: %r"
3964
3965 #. We've visited (recursively) all dependencies of this node,
3966 #. let's color it black and append it to the solution list.
3967-#: .././plainbox/impl/depmgr.py:288
3968+#: .././plainbox/impl/depmgr.py:389
3969 #, python-format
3970 msgid "Appending %r to solution"
3971 msgstr "Appending %r to solution"
3972
3973+#: .././plainbox/impl/depmgr.py:398
3974+#, fuzzy, python-format
3975+msgid "Found dependency cycle: %r"
3976+msgstr "dependency cycle detected: {}"
3977+
3978 #: .././plainbox/impl/device.py:98
3979 #, python-format
3980 msgid "Unsupported platform: %s"
3981@@ -1484,16 +1523,6 @@
3982 msgid "Unable to import %s: %s"
3983 msgstr "Unable to import %s: %s"
3984
3985-#: .././plainbox/impl/exporter/html.py:56
3986-#, python-format
3987-msgid "Unable to load resource %s, not inlining"
3988-msgstr "Unable to load resource %s, not inlining"
3989-
3990-#: .././plainbox/impl/exporter/html.py:69
3991-#, python-format
3992-msgid "Resource of type %s unknown"
3993-msgstr "Resource of type %s unknown"
3994-
3995 #: .././plainbox/impl/exporter/xlsx.py:88
3996 msgid "Unsupported option: {}"
3997 msgstr "Unsupported option: {}"
3998@@ -1850,83 +1879,82 @@
3999 msgstr "io log generated %r"
4000
4001 #. TRANSLATORS: %r is the name of the job
4002-#: .././plainbox/impl/runner.py:401
4003+#: .././plainbox/impl/runner.py:410
4004 #, python-format
4005 msgid "Running %r"
4006 msgstr "Running %r"
4007
4008-#: .././plainbox/impl/runner.py:408
4009+#: .././plainbox/impl/runner.py:417
4010 msgid "This type of job is not supported"
4011 msgstr "This type of job is not supported"
4012
4013 #. TRANSLATORS: please keep 'plugin' untranslated
4014-#: .././plainbox/impl/runner.py:441 .././plainbox/impl/runner.py:466
4015-#: .././plainbox/impl/runner.py:492 .././plainbox/impl/runner.py:518
4016-#: .././plainbox/impl/runner.py:544 .././plainbox/impl/runner.py:585
4017-#: .././plainbox/impl/runner.py:629 .././plainbox/impl/runner.py:678
4018-#: .././plainbox/impl/runner.py:703
4019+#: .././plainbox/impl/runner.py:450 .././plainbox/impl/runner.py:475
4020+#: .././plainbox/impl/runner.py:501 .././plainbox/impl/runner.py:527
4021+#: .././plainbox/impl/runner.py:553 .././plainbox/impl/runner.py:594
4022+#: .././plainbox/impl/runner.py:638 .././plainbox/impl/runner.py:687
4023+#: .././plainbox/impl/runner.py:712
4024 msgid "bad job plugin value"
4025 msgstr "bad job plugin value"
4026
4027-#: .././plainbox/impl/runner.py:709 .././plainbox/impl/runner.py:781
4028+#: .././plainbox/impl/runner.py:718 .././plainbox/impl/runner.py:790
4029 msgid "No suitable execution controller is available)"
4030 msgstr ""
4031
4032-#: .././plainbox/impl/runner.py:734
4033+#: .././plainbox/impl/runner.py:743
4034 #, python-format
4035 msgid "job[%s] starting qml shell: %s"
4036 msgstr ""
4037
4038-#: .././plainbox/impl/runner.py:739
4039+#: .././plainbox/impl/runner.py:748
4040 #, python-format
4041 msgid "job[%s] shell return code: %r"
4042 msgstr ""
4043
4044-#: .././plainbox/impl/runner.py:765
4045+#: .././plainbox/impl/runner.py:774
4046 msgid "Job skipped in dry-run mode"
4047 msgstr "Job skipped in dry-run mode"
4048
4049-#: .././plainbox/impl/runner.py:844
4050+#: .././plainbox/impl/runner.py:853
4051 #, python-format
4052 msgid "job[%s] extcmd delegate: %r"
4053 msgstr "job[%s] extcmd delegate: %r"
4054
4055-#: .././plainbox/impl/runner.py:859
4056+#: .././plainbox/impl/runner.py:868
4057 #, python-brace-format
4058 msgid "job {0} has no command to run"
4059 msgstr ""
4060
4061-#: .././plainbox/impl/runner.py:882
4062+#: .././plainbox/impl/runner.py:895
4063 #, python-format
4064 msgid "job[%s] starting command: %s"
4065 msgstr "job[%s] starting command: %s"
4066
4067-#: .././plainbox/impl/runner.py:887
4068+#: .././plainbox/impl/runner.py:900
4069 #, python-format
4070 msgid "job[%s] command return code: %r"
4071 msgstr "job[%s] command return code: %r"
4072
4073-#: .././plainbox/impl/runner.py:923 .././plainbox/impl/session/state.py:454
4074+#: .././plainbox/impl/runner.py:936 .././plainbox/impl/session/state.py:455
4075 msgid "No exec controller supports job {}"
4076 msgstr "No exec controller supports job {}"
4077
4078-#: .././plainbox/impl/runner.py:925 .././plainbox/impl/session/state.py:456
4079+#: .././plainbox/impl/runner.py:938 .././plainbox/impl/session/state.py:457
4080 #, python-format
4081 msgid "Selected execution controller %s (score %d) for job %r"
4082 msgstr "Selected execution controller %s (score %d) for job %r"
4083
4084-#: .././plainbox/impl/runner.py:952
4085+#: .././plainbox/impl/runner.py:965
4086 #, python-brace-format
4087-msgid ""
4088-"Job {0} created leftover filesystem artefacts in its working directory"
4089+msgid "Job {0} created leftover filesystem artefacts in its working directory"
4090 msgstr ""
4091
4092-#: .././plainbox/impl/runner.py:955
4093+#: .././plainbox/impl/runner.py:968
4094 #, python-format
4095 msgid "Leftover file/directory: %r"
4096 msgstr ""
4097
4098-#: .././plainbox/impl/runner.py:958
4099+#: .././plainbox/impl/runner.py:971
4100 msgid ""
4101 "Please store desired files in $PLAINBOX_SESSION_SHARE and use regular "
4102 "temporary files for everything else"
4103@@ -2265,15 +2293,15 @@
4104 msgid "resource expression {!r} evaluates to false"
4105 msgstr "resource expression {!r} evaluates to false"
4106
4107-#: .././plainbox/impl/session/jobs.py:312
4108+#: .././plainbox/impl/session/jobs.py:313
4109 msgid "job cannot be started: {}"
4110 msgstr "job cannot be started: {}"
4111
4112-#: .././plainbox/impl/session/jobs.py:316
4113+#: .././plainbox/impl/session/jobs.py:317
4114 msgid "job can be started"
4115 msgstr ""
4116
4117-#: .././plainbox/impl/session/jobs.py:363
4118+#: .././plainbox/impl/session/jobs.py:364
4119 msgid "{!r} is not overridable"
4120 msgstr ""
4121
4122@@ -2290,41 +2318,41 @@
4123 msgstr "_commit_resume() finished"
4124
4125 #: .././plainbox/impl/session/manager.py:96
4126-#: .././plainbox/impl/session/manager.py:452
4127+#: .././plainbox/impl/session/manager.py:453
4128 msgid ""
4129 "session manager currently doesn't support sessions involving multiple "
4130 "devices (a.k.a multi-node testing)"
4131 msgstr ""
4132
4133-#: .././plainbox/impl/session/manager.py:361
4134+#: .././plainbox/impl/session/manager.py:362
4135 #, python-format
4136 msgid "Saving %d byte of checkpoint data to %r"
4137 msgid_plural "Saving %d bytes of checkpoint data to %r"
4138 msgstr[0] "Saving %d byte of checkpoint data to %r"
4139 msgstr[1] "Saving %d bytes of checkpoint data to %r"
4140
4141-#: .././plainbox/impl/session/manager.py:396
4142+#: .././plainbox/impl/session/manager.py:397
4143 msgid ""
4144 "attmpting to add a context for device {} which is already represented in "
4145 "this session manager"
4146 msgstr ""
4147
4148-#: .././plainbox/impl/session/manager.py:425
4149+#: .././plainbox/impl/session/manager.py:426
4150 msgid ""
4151 "attempting to remove a device context not present in this session manager"
4152 msgstr ""
4153
4154-#: .././plainbox/impl/session/manager.py:436
4155+#: .././plainbox/impl/session/manager.py:437
4156 #, python-format
4157 msgid "Device context %s added to session manager %s"
4158 msgstr ""
4159
4160-#: .././plainbox/impl/session/manager.py:446
4161+#: .././plainbox/impl/session/manager.py:447
4162 #, python-format
4163 msgid "Device context %s removed from session manager %s"
4164 msgstr ""
4165
4166-#: .././plainbox/impl/session/manager.py:457
4167+#: .././plainbox/impl/session/manager.py:458
4168 msgid "Propagating test plans to all devices"
4169 msgstr ""
4170
4171@@ -2344,192 +2372,192 @@
4172 msgid "Peeking at json... (see below)"
4173 msgstr ""
4174
4175-#: .././plainbox/impl/session/resume.py:177
4176-#: .././plainbox/impl/session/resume.py:259
4177+#: .././plainbox/impl/session/resume.py:179
4178+#: .././plainbox/impl/session/resume.py:303
4179 msgid "Unsupported version {}"
4180 msgstr "Unsupported version {}"
4181
4182-#: .././plainbox/impl/session/resume.py:241
4183+#: .././plainbox/impl/session/resume.py:282
4184 msgid "Resuming from json... (see below)"
4185 msgstr "Resuming from json... (see below)"
4186
4187-#: .././plainbox/impl/session/resume.py:294
4188+#: .././plainbox/impl/session/resume.py:338
4189 msgid "Each flag must be a string"
4190 msgstr "Each flag must be a string"
4191
4192 #. TRANSLATORS: please don't translate app_blob
4193-#: .././plainbox/impl/session/resume.py:322
4194+#: .././plainbox/impl/session/resume.py:366
4195 msgid "app_blob is not ASCII"
4196 msgstr "app_blob is not ASCII"
4197
4198 #. TRANSLATORS: please don't translate app_blob
4199-#: .././plainbox/impl/session/resume.py:327
4200+#: .././plainbox/impl/session/resume.py:371
4201 msgid "Cannot base64 decode app_blob"
4202 msgstr "Cannot base64 decode app_blob"
4203
4204-#: .././plainbox/impl/session/resume.py:381
4205-#: .././plainbox/impl/session/resume.py:518
4206+#: .././plainbox/impl/session/resume.py:425
4207+#: .././plainbox/impl/session/resume.py:593
4208 msgid "Starting to restore metadata..."
4209 msgstr "Starting to restore metadata..."
4210
4211-#: .././plainbox/impl/session/resume.py:502
4212+#: .././plainbox/impl/session/resume.py:577
4213 #, python-format
4214 msgid "Constructed new session for resume %r"
4215 msgstr "Constructed new session for resume %r"
4216
4217-#: .././plainbox/impl/session/resume.py:508
4218+#: .././plainbox/impl/session/resume.py:583
4219 #, python-format
4220 msgid "Invoking early callback %r"
4221 msgstr "Invoking early callback %r"
4222
4223-#: .././plainbox/impl/session/resume.py:512
4224+#: .././plainbox/impl/session/resume.py:587
4225 #, python-format
4226 msgid "Using different session for resume: %r"
4227 msgstr "Using different session for resume: %r"
4228
4229-#: .././plainbox/impl/session/resume.py:516
4230+#: .././plainbox/impl/session/resume.py:591
4231 #, python-format
4232 msgid "Starting to restore jobs and results to %r..."
4233 msgstr "Starting to restore jobs and results to %r..."
4234
4235-#: .././plainbox/impl/session/resume.py:520
4236+#: .././plainbox/impl/session/resume.py:595
4237 #, python-format
4238 msgid "restored metadata %r"
4239 msgstr "restored metadata %r"
4240
4241-#: .././plainbox/impl/session/resume.py:521
4242+#: .././plainbox/impl/session/resume.py:596
4243 msgid "Starting to restore desired job list..."
4244 msgstr "Starting to restore desired job list..."
4245
4246-#: .././plainbox/impl/session/resume.py:523
4247+#: .././plainbox/impl/session/resume.py:598
4248 msgid "Starting to restore job list..."
4249 msgstr "Starting to restore job list..."
4250
4251 #. Return whatever we've got
4252-#: .././plainbox/impl/session/resume.py:526
4253+#: .././plainbox/impl/session/resume.py:601
4254 msgid "Resume complete!"
4255 msgstr "Resume complete!"
4256
4257-#: .././plainbox/impl/session/resume.py:583
4258+#: .././plainbox/impl/session/resume.py:658
4259 msgid "Unknown jobs remaining: {}"
4260 msgstr "Unknown jobs remaining: {}"
4261
4262-#: .././plainbox/impl/session/resume.py:618
4263+#: .././plainbox/impl/session/resume.py:693
4264 #, python-format
4265 msgid "Ignoring changes to job %r)"
4266 msgstr ""
4267
4268-#: .././plainbox/impl/session/resume.py:621
4269+#: .././plainbox/impl/session/resume.py:696
4270 msgid "Definition of job {!r} has changed"
4271 msgstr "Definition of job {!r} has changed"
4272
4273-#: .././plainbox/impl/session/resume.py:640
4274+#: .././plainbox/impl/session/resume.py:715
4275 #, python-format
4276 msgid "calling update_job_result(%r, %r)"
4277 msgstr "calling update_job_result(%r, %r)"
4278
4279-#: .././plainbox/impl/session/resume.py:657
4280+#: .././plainbox/impl/session/resume.py:732
4281 msgid "Each job id must be a string"
4282 msgstr "Each job id must be a string"
4283
4284-#: .././plainbox/impl/session/resume.py:662
4285+#: .././plainbox/impl/session/resume.py:737
4286 #, python-format
4287 msgid "calling update_desired_job_list(%r)"
4288 msgstr "calling update_desired_job_list(%r)"
4289
4290-#: .././plainbox/impl/session/resume.py:669
4291+#: .././plainbox/impl/session/resume.py:744
4292 msgid "'desired_job_list' refers to unknown job {!r}"
4293 msgstr "'desired_job_list' refers to unknown job {!r}"
4294
4295-#: .././plainbox/impl/session/resume.py:734
4296+#: .././plainbox/impl/session/resume.py:809
4297 #, python-format
4298 msgid "Rewrote file name from %r to %r"
4299 msgstr ""
4300
4301-#: .././plainbox/impl/session/resume.py:740
4302+#: .././plainbox/impl/session/resume.py:815
4303 msgid "cannot access file: {!r}"
4304 msgstr ""
4305
4306 #. TRANSLATORS: please keep delay untranslated
4307-#: .././plainbox/impl/session/resume.py:775
4308+#: .././plainbox/impl/session/resume.py:854
4309 msgid "delay cannot be negative"
4310 msgstr "delay cannot be negative"
4311
4312-#: .././plainbox/impl/session/resume.py:787
4313+#: .././plainbox/impl/session/resume.py:866
4314 msgid "record data {!r} is not ASCII"
4315 msgstr "record data {!r} is not ASCII"
4316
4317-#: .././plainbox/impl/session/resume.py:792
4318+#: .././plainbox/impl/session/resume.py:871
4319 msgid "record data {!r} is not correct base64"
4320 msgstr "record data {!r} is not correct base64"
4321
4322-#: .././plainbox/impl/session/resume.py:860
4323+#: .././plainbox/impl/session/resume.py:968
4324 msgid "key {!r}"
4325 msgstr "key {!r}"
4326
4327-#: .././plainbox/impl/session/resume.py:866
4328+#: .././plainbox/impl/session/resume.py:974
4329 msgid "Missing value for key {!r}"
4330 msgstr "Missing value for key {!r}"
4331
4332-#: .././plainbox/impl/session/resume.py:870
4333+#: .././plainbox/impl/session/resume.py:978
4334 msgid "object"
4335 msgstr "object"
4336
4337-#: .././plainbox/impl/session/resume.py:876
4338+#: .././plainbox/impl/session/resume.py:984
4339 msgid "Value of {} cannot be None"
4340 msgstr "Value of {} cannot be None"
4341
4342-#: .././plainbox/impl/session/resume.py:884
4343+#: .././plainbox/impl/session/resume.py:992
4344 msgid "Value of {} is of incorrect type {}"
4345 msgstr "Value of {} is of incorrect type {}"
4346
4347-#: .././plainbox/impl/session/resume.py:893
4348+#: .././plainbox/impl/session/resume.py:1001
4349 msgid "Value for {} not in allowed set {!r}"
4350 msgstr "Value for {} not in allowed set {!r}"
4351
4352 #. TRANSLATORS: please don't translate app_blob, None and bytes
4353-#: .././plainbox/impl/session/state.py:164
4354+#: .././plainbox/impl/session/state.py:165
4355 msgid "app_blob must be either None or bytes"
4356 msgstr "app_blob must be either None or bytes"
4357
4358 #. TRANSLATORS: please don't translate app_blob, None and bytes
4359-#: .././plainbox/impl/session/state.py:182
4360+#: .././plainbox/impl/session/state.py:183
4361 msgid "app_id must be either None or str"
4362 msgstr "app_id must be either None or str"
4363
4364-#: .././plainbox/impl/session/state.py:384
4365+#: .././plainbox/impl/session/state.py:385
4366 msgid "attempting to add the same provider twice"
4367 msgstr ""
4368
4369-#: .././plainbox/impl/session/state.py:406
4370+#: .././plainbox/impl/session/state.py:407
4371 msgid "attempting to add the same unit twice"
4372 msgstr ""
4373
4374-#: .././plainbox/impl/session/state.py:422
4375+#: .././plainbox/impl/session/state.py:423
4376 msgid "attempting to remove unit not in this context"
4377 msgstr ""
4378
4379-#: .././plainbox/impl/session/state.py:463
4380+#: .././plainbox/impl/session/state.py:464
4381 #, python-format
4382 msgid "Provider %s added to context %s"
4383 msgstr ""
4384
4385-#: .././plainbox/impl/session/state.py:471
4386+#: .././plainbox/impl/session/state.py:472
4387 #, python-format
4388 msgid "Unit %s added to context %s"
4389 msgstr ""
4390
4391-#: .././plainbox/impl/session/state.py:483
4392+#: .././plainbox/impl/session/state.py:484
4393 #, python-format
4394 msgid "Unit %s removed from context %s"
4395 msgstr ""
4396
4397-#: .././plainbox/impl/session/state.py:677
4398+#: .././plainbox/impl/session/state.py:678
4399 #, python-format
4400 msgid "Job %s result changed to %r"
4401 msgstr "Job %s result changed to %r"
4402
4403-#: .././plainbox/impl/session/state.py:792
4404+#: .././plainbox/impl/session/state.py:793
4405 msgid "cannot remove jobs that are on the run list: {}"
4406 msgstr "cannot remove jobs that are on the run list: {}"
4407
4408@@ -2704,7 +2732,7 @@
4409
4410 #. TRANSLATORS: please don't translate fsync()
4411 #. Flush kernel buffers on the directory.
4412-#.
4413+#.
4414 #. This should ensure the rename operation is really on disk by now.
4415 #. As noted above, this is essential for being able to survive
4416 #. system crash immediately after exiting this method.
4417@@ -2809,12 +2837,12 @@
4418 msgstr ""
4419
4420 #: .././plainbox/impl/unit/category.py:119 .././plainbox/impl/unit/job.py:650
4421-#: .././plainbox/impl/unit/testplan.py:411
4422+#: .././plainbox/impl/unit/testplan.py:415
4423 msgid "please use only one line"
4424 msgstr ""
4425
4426 #: .././plainbox/impl/unit/category.py:125 .././plainbox/impl/unit/job.py:656
4427-#: .././plainbox/impl/unit/testplan.py:417
4428+#: .././plainbox/impl/unit/testplan.py:421
4429 msgid "please stay under 80 characters"
4430 msgstr ""
4431
4432@@ -3483,8 +3511,8 @@
4433 " hopefully, in most cases, you don't need to do anything. If your src/\n"
4434 " directory has a Makefile or .go source files you should be good to go.\n"
4435 "\n"
4436-" If the automatic defaults are somehow unsuitable you need to edit "
4437-"manage.py\n"
4438+" If the automatic defaults are somehow unsuitable you need to edit manage."
4439+"py\n"
4440 " so that it specifies the build command.\n"
4441 "\n"
4442 " IMPORTANT: It is expected that the build command will create binary "
4443@@ -3511,8 +3539,8 @@
4444 " hopefully, in most cases, you don't need to do anything. If your src/\n"
4445 " directory has a Makefile or .go source files you should be good to go.\n"
4446 "\n"
4447-" If the automatic defaults are somehow unsuitable you need to edit "
4448-"manage.py\n"
4449+" If the automatic defaults are somehow unsuitable you need to edit manage."
4450+"py\n"
4451 " so that it specifies the build command.\n"
4452 "\n"
4453 " IMPORTANT: It is expected that the build command will create binary "
4454@@ -4257,3 +4285,9 @@
4455 msgid ""
4456 "command to run on the phablet, if left out an interactive shell is started"
4457 msgstr ""
4458+
4459+#~ msgid "Unable to load resource %s, not inlining"
4460+#~ msgstr "Unable to load resource %s, not inlining"
4461+
4462+#~ msgid "Resource of type %s unknown"
4463+#~ msgstr "Resource of type %s unknown"
4464
4465=== modified file 'plainbox/po/es.po'
4466--- plainbox/po/es.po 2015-04-18 05:08:45 +0000
4467+++ plainbox/po/es.po 2015-04-21 15:52:36 +0000
4468@@ -7,17 +7,17 @@
4469 msgstr ""
4470 "Project-Id-Version: plainbox 0.5\n"
4471 "Report-Msgid-Bugs-To: \n"
4472-"POT-Creation-Date: 2015-04-08 15:31+0200\n"
4473+"POT-Creation-Date: 2015-04-21 17:42+0200\n"
4474 "PO-Revision-Date: 2014-03-19 09:43+0000\n"
4475 "Last-Translator: Daniel Manrique <daniel.manrique@canonical.com>\n"
4476 "Language-Team: Spanish <es@li.org>\n"
4477+"Language: \n"
4478 "MIME-Version: 1.0\n"
4479 "Content-Type: text/plain; charset=utf-8\n"
4480 "Content-Transfer-Encoding: 8bit\n"
4481 "Plural-Forms: nplurals=2; plural=n != 1;\n"
4482 "X-Launchpad-Export-Date: 2015-04-18 05:08+0000\n"
4483 "X-Generator: Launchpad (build 17430)\n"
4484-"Language: \n"
4485
4486 #: .././plainbox/impl/_argparse.py:139
4487 #: .././plainbox/vendor/argparse/py32-argparse.py:298
4488@@ -393,9 +393,9 @@
4489 #: .././plainbox/impl/commands/cmd_run.py:68
4490 #: .././plainbox/impl/commands/cmd_run.py:84
4491 #: .././plainbox/impl/commands/cmd_session.py:115
4492-#: .././plainbox/impl/commands/inv_run.py:346
4493-#: .././plainbox/impl/commands/inv_run.py:349
4494-#: .././plainbox/impl/commands/inv_run.py:352
4495+#: .././plainbox/impl/commands/inv_run.py:347
4496+#: .././plainbox/impl/commands/inv_run.py:350
4497+#: .././plainbox/impl/commands/inv_run.py:353
4498 #: .././plainbox/impl/commands/inv_session.py:143
4499 #: .././plainbox/impl/commands/inv_session.py:146
4500 msgid "?"
4501@@ -441,8 +441,7 @@
4502 msgstr "TRANSPORTE"
4503
4504 #: .././plainbox/impl/commands/cmd_run.py:86
4505-msgid ""
4506-"use TRANSPORT to send results somewhere (pass ? for a list of choices)"
4507+msgid "use TRANSPORT to send results somewhere (pass ? for a list of choices)"
4508 msgstr ""
4509 "utilizar TRANSPORTE para transmitir los resultados a algún lado (use ? para "
4510 "ver una lista de opciones)"
4511@@ -653,8 +652,8 @@
4512 "\n"
4513 " @EPILOG@\n"
4514 "\n"
4515-" The name of the provider must follow the pattern "
4516-"``YYYY.example.org:name``\n"
4517+" The name of the provider must follow the pattern ``YYYY.example.org:"
4518+"name``\n"
4519 " where ``YYYY`` is a four-digit year when the author of the provider "
4520 "owned\n"
4521 " the domain (here, ``example.org``) and ``name`` is arbitrary identifier\n"
4522@@ -678,8 +677,8 @@
4523 "\n"
4524 " @EPILOG@\n"
4525 "\n"
4526-" El nombre del proveedor debe respetar la forma "
4527-"``YYYY.example.org:nombre``\n"
4528+" El nombre del proveedor debe respetar la forma ``YYYY.example.org:"
4529+"nombre``\n"
4530 " donde ``YYYY`` es un año con cuatro dígitos en el cual el autor del "
4531 "proveedor era propietario\n"
4532 " del dominio(por ejemplo ``example.org``) y ``nombre`` es un "
4533@@ -783,6 +782,7 @@
4534 msgstr "interactivo"
4535
4536 #: .././plainbox/impl/commands/inv_analyze.py:163
4537+#: .././plainbox/impl/commands/inv_run.py:733
4538 msgid "unknown"
4539 msgstr "desconocido"
4540
4541@@ -891,316 +891,320 @@
4542 msgid "Unable to decode input stream, must be valid UTF-8"
4543 msgstr "Imposible decodificar datos de entrada, debería ser UTF-8 válido"
4544
4545-#: .././plainbox/impl/commands/inv_run.py:79
4546+#: .././plainbox/impl/commands/inv_run.py:80
4547 msgid "Pick an action"
4548 msgstr ""
4549
4550-#: .././plainbox/impl/commands/inv_run.py:169
4551+#: .././plainbox/impl/commands/inv_run.py:170
4552 #, python-brace-format
4553 msgid "ID: {0}"
4554 msgstr ""
4555
4556-#: .././plainbox/impl/commands/inv_run.py:170
4557+#: .././plainbox/impl/commands/inv_run.py:171
4558 #, python-brace-format
4559 msgid "Category: {0}"
4560 msgstr ""
4561
4562-#: .././plainbox/impl/commands/inv_run.py:177
4563+#: .././plainbox/impl/commands/inv_run.py:178
4564 msgid "press ENTER to continue"
4565 msgstr ""
4566
4567-#: .././plainbox/impl/commands/inv_run.py:178
4568-#: .././plainbox/impl/commands/inv_run.py:850
4569+#: .././plainbox/impl/commands/inv_run.py:179
4570+#: .././plainbox/impl/commands/inv_run.py:869
4571 msgid "add a comment"
4572 msgstr ""
4573
4574-#: .././plainbox/impl/commands/inv_run.py:179
4575+#: .././plainbox/impl/commands/inv_run.py:180
4576 msgid "skip this job"
4577 msgstr ""
4578
4579-#: .././plainbox/impl/commands/inv_run.py:180
4580+#: .././plainbox/impl/commands/inv_run.py:181
4581 msgid "save the session and quit"
4582 msgstr ""
4583
4584-#: .././plainbox/impl/commands/inv_run.py:190
4585+#: .././plainbox/impl/commands/inv_run.py:191
4586 msgid "Command output hidden"
4587 msgstr ""
4588
4589-#: .././plainbox/impl/commands/inv_run.py:229
4590+#: .././plainbox/impl/commands/inv_run.py:230
4591 msgid "Job cannot be started because:"
4592 msgstr ""
4593
4594-#: .././plainbox/impl/commands/inv_run.py:237
4595+#: .././plainbox/impl/commands/inv_run.py:238
4596 msgid "Outcome"
4597 msgstr ""
4598
4599-#: .././plainbox/impl/commands/inv_run.py:243
4600+#: .././plainbox/impl/commands/inv_run.py:244
4601 msgid "Waiting for the system to shut down or reboot..."
4602 msgstr ""
4603
4604-#: .././plainbox/impl/commands/inv_run.py:415
4605+#: .././plainbox/impl/commands/inv_run.py:416
4606 msgid "Resume Incomplete Session"
4607 msgstr ""
4608
4609-#: .././plainbox/impl/commands/inv_run.py:417
4610+#: .././plainbox/impl/commands/inv_run.py:418
4611 #, python-brace-format
4612 msgid "There is {0} incomplete session that might be resumed"
4613 msgid_plural "There are {0} incomplete sessions that might be resumed"
4614 msgstr[0] ""
4615 msgstr[1] ""
4616
4617-#: .././plainbox/impl/commands/inv_run.py:424
4618+#: .././plainbox/impl/commands/inv_run.py:425
4619 msgid "resume this session"
4620 msgstr ""
4621
4622-#: .././plainbox/impl/commands/inv_run.py:425
4623+#: .././plainbox/impl/commands/inv_run.py:426
4624 msgid "next session"
4625 msgstr ""
4626
4627-#: .././plainbox/impl/commands/inv_run.py:426
4628+#: .././plainbox/impl/commands/inv_run.py:427
4629 msgid "create new session"
4630 msgstr ""
4631
4632-#: .././plainbox/impl/commands/inv_run.py:427
4633+#: .././plainbox/impl/commands/inv_run.py:428
4634 msgid "Do you want to resume session {0!a}?"
4635 msgstr ""
4636
4637-#: .././plainbox/impl/commands/inv_run.py:441
4638+#: .././plainbox/impl/commands/inv_run.py:442
4639 msgid "ignore this problem"
4640 msgstr ""
4641
4642-#: .././plainbox/impl/commands/inv_run.py:442
4643+#: .././plainbox/impl/commands/inv_run.py:443
4644 msgid "erase this session"
4645 msgstr ""
4646
4647-#: .././plainbox/impl/commands/inv_run.py:445
4648+#: .././plainbox/impl/commands/inv_run.py:446
4649 #: .././plainbox/impl/commands/inv_session.py:93
4650 msgid "Session removed"
4651 msgstr ""
4652
4653 #. TRANSLATORS: This is the exit message
4654-#: .././plainbox/impl/commands/inv_run.py:457
4655+#: .././plainbox/impl/commands/inv_run.py:458
4656 msgid "Session not resumed"
4657 msgstr ""
4658
4659-#: .././plainbox/impl/commands/inv_run.py:463
4660+#: .././plainbox/impl/commands/inv_run.py:464
4661 #: .././plainbox/impl/commands/inv_session.py:180
4662 msgid "Available output formats: {}"
4663 msgstr "Formatos de salida disponibles: {}"
4664
4665-#: .././plainbox/impl/commands/inv_run.py:467
4666+#: .././plainbox/impl/commands/inv_run.py:468
4667 #: .././plainbox/impl/commands/inv_session.py:184
4668 msgid "Each format may support a different set of options"
4669 msgstr "Cada formato puede soportar un conjunto de opciones distinto"
4670
4671-#: .././plainbox/impl/commands/inv_run.py:473
4672+#: .././plainbox/impl/commands/inv_run.py:474
4673 msgid "Available transports: {}"
4674 msgstr "Transportes disponibles: {}"
4675
4676-#: .././plainbox/impl/commands/inv_run.py:489
4677+#: .././plainbox/impl/commands/inv_run.py:490
4678 #, python-format
4679 msgid "Corrupted session %s: %s"
4680 msgstr ""
4681
4682-#: .././plainbox/impl/commands/inv_run.py:499
4683+#: .././plainbox/impl/commands/inv_run.py:500
4684 msgid "yes"
4685 msgstr ""
4686
4687-#: .././plainbox/impl/commands/inv_run.py:500
4688+#: .././plainbox/impl/commands/inv_run.py:501
4689 msgid "no"
4690 msgstr ""
4691
4692-#: .././plainbox/impl/commands/inv_run.py:505
4693+#: .././plainbox/impl/commands/inv_run.py:506
4694 msgid "Do you want to start a new session?"
4695 msgstr ""
4696
4697-#: .././plainbox/impl/commands/inv_run.py:511
4698+#: .././plainbox/impl/commands/inv_run.py:512
4699 msgid "Previous session run tried to execute job: {}"
4700 msgstr ""
4701
4702-#: .././plainbox/impl/commands/inv_run.py:514
4703+#: .././plainbox/impl/commands/inv_run.py:515
4704 msgid "skip that job"
4705 msgstr ""
4706
4707-#: .././plainbox/impl/commands/inv_run.py:515
4708+#: .././plainbox/impl/commands/inv_run.py:516
4709 msgid "mark it as passed and continue"
4710 msgstr ""
4711
4712-#: .././plainbox/impl/commands/inv_run.py:516
4713+#: .././plainbox/impl/commands/inv_run.py:517
4714 msgid "mark it as failed and continue"
4715 msgstr ""
4716
4717-#: .././plainbox/impl/commands/inv_run.py:517
4718+#: .././plainbox/impl/commands/inv_run.py:518
4719 msgid "run it again"
4720 msgstr ""
4721
4722-#: .././plainbox/impl/commands/inv_run.py:518
4723+#: .././plainbox/impl/commands/inv_run.py:519
4724 msgid "What do you want to do with that job?"
4725 msgstr "¿Qué desea hacer con ese trabajo?"
4726
4727-#: .././plainbox/impl/commands/inv_run.py:522
4728+#: .././plainbox/impl/commands/inv_run.py:523
4729 msgid "Skipped after resuming execution"
4730 msgstr "Saltado tras continuar la ejecución"
4731
4732-#: .././plainbox/impl/commands/inv_run.py:527
4733+#: .././plainbox/impl/commands/inv_run.py:528
4734 msgid "Passed after resuming execution"
4735 msgstr ""
4736
4737-#: .././plainbox/impl/commands/inv_run.py:532
4738+#: .././plainbox/impl/commands/inv_run.py:533
4739 msgid "Failed after resuming execution"
4740 msgstr "Fallado tras continuar la ejecución"
4741
4742-#: .././plainbox/impl/commands/inv_run.py:607
4743+#: .././plainbox/impl/commands/inv_run.py:608
4744 msgid "The job database you are currently using is broken"
4745 msgstr "La base de datos de trabajos es incorrecta"
4746
4747-#: .././plainbox/impl/commands/inv_run.py:609
4748+#: .././plainbox/impl/commands/inv_run.py:610
4749 #, python-brace-format
4750 msgid "At least two jobs contend for the id {0}"
4751 msgstr "Al menos dos trabajos en conflicto por el identificador {0}"
4752
4753-#: .././plainbox/impl/commands/inv_run.py:612
4754+#: .././plainbox/impl/commands/inv_run.py:613
4755 #, python-brace-format
4756 msgid "First job defined in: {0}"
4757 msgstr "El primer trabajo está definido en: {0}"
4758
4759-#: .././plainbox/impl/commands/inv_run.py:614
4760+#: .././plainbox/impl/commands/inv_run.py:615
4761 #, python-brace-format
4762 msgid "Second job defined in: {0}"
4763 msgstr "El segundo trabajo está definido en: {0}"
4764
4765-#: .././plainbox/impl/commands/inv_run.py:619
4766+#: .././plainbox/impl/commands/inv_run.py:620
4767 msgid "This session cannot be resumed"
4768 msgstr ""
4769
4770-#: .././plainbox/impl/commands/inv_run.py:683
4771+#: .././plainbox/impl/commands/inv_run.py:684
4772 msgid "Analyzing Jobs"
4773 msgstr ""
4774
4775-#: .././plainbox/impl/commands/inv_run.py:701
4776+#: .././plainbox/impl/commands/inv_run.py:702
4777 msgid "Authentication"
4778 msgstr ""
4779
4780-#: .././plainbox/impl/commands/inv_run.py:709
4781+#: .././plainbox/impl/commands/inv_run.py:710
4782 msgid "Running Selected Jobs"
4783 msgstr ""
4784
4785-#: .././plainbox/impl/commands/inv_run.py:772
4786-#: .././plainbox/impl/commands/inv_run.py:900
4787+#: .././plainbox/impl/commands/inv_run.py:730
4788+msgid "Running job {} / {}. Estimated time left: {}"
4789+msgstr ""
4790+
4791+#: .././plainbox/impl/commands/inv_run.py:791
4792+#: .././plainbox/impl/commands/inv_run.py:919
4793 msgid "Please enter your comments:"
4794 msgstr ""
4795
4796-#: .././plainbox/impl/commands/inv_run.py:779
4797+#: .././plainbox/impl/commands/inv_run.py:798
4798 msgid "Explicitly skipped before execution"
4799 msgstr ""
4800
4801-#: .././plainbox/impl/commands/inv_run.py:826
4802+#: .././plainbox/impl/commands/inv_run.py:845
4803 msgid "Results"
4804 msgstr ""
4805
4806-#: .././plainbox/impl/commands/inv_run.py:833
4807+#: .././plainbox/impl/commands/inv_run.py:852
4808 #: .././plainbox/impl/commands/inv_session.py:169
4809 msgid "Saving results to {}"
4810 msgstr "Salvando resultados en {}"
4811
4812-#: .././plainbox/impl/commands/inv_run.py:844
4813+#: .././plainbox/impl/commands/inv_run.py:863
4814 msgid "Select an outcome or an action: "
4815 msgstr "Seleccione un resultado o acción: "
4816
4817-#: .././plainbox/impl/commands/inv_run.py:854
4818-#: .././plainbox/impl/commands/inv_run.py:859
4819-#: .././plainbox/impl/commands/inv_run.py:864
4820+#: .././plainbox/impl/commands/inv_run.py:873
4821+#: .././plainbox/impl/commands/inv_run.py:878
4822+#: .././plainbox/impl/commands/inv_run.py:883
4823 #, python-brace-format
4824 msgid "set outcome to {0}"
4825 msgstr ""
4826
4827-#: .././plainbox/impl/commands/inv_run.py:855
4828+#: .././plainbox/impl/commands/inv_run.py:874
4829 msgctxt "set outcome to <pass>"
4830 msgid "pass"
4831 msgstr ""
4832
4833-#: .././plainbox/impl/commands/inv_run.py:860
4834+#: .././plainbox/impl/commands/inv_run.py:879
4835 msgctxt "set outcome to <fail>"
4836 msgid "fail"
4837 msgstr ""
4838
4839-#: .././plainbox/impl/commands/inv_run.py:865
4840+#: .././plainbox/impl/commands/inv_run.py:884
4841 msgctxt "set outcome to <skip>"
4842 msgid "skip"
4843 msgstr ""
4844
4845-#: .././plainbox/impl/commands/inv_run.py:869
4846+#: .././plainbox/impl/commands/inv_run.py:888
4847 msgid "re-run this job"
4848 msgstr ""
4849
4850-#: .././plainbox/impl/commands/inv_run.py:876
4851+#: .././plainbox/impl/commands/inv_run.py:895
4852 #, python-brace-format
4853 msgid "set suggested outcome [{0}]"
4854 msgstr ""
4855
4856-#: .././plainbox/impl/commands/inv_run.py:879
4857+#: .././plainbox/impl/commands/inv_run.py:898
4858 msgid "Please decide what to do next:"
4859 msgstr ""
4860
4861-#: .././plainbox/impl/commands/inv_run.py:880
4862+#: .././plainbox/impl/commands/inv_run.py:899
4863 msgid "outcome"
4864 msgstr ""
4865
4866-#: .././plainbox/impl/commands/inv_run.py:882
4867-#: .././plainbox/impl/commands/inv_run.py:885
4868+#: .././plainbox/impl/commands/inv_run.py:901
4869+#: .././plainbox/impl/commands/inv_run.py:904
4870 msgid "comments"
4871 msgstr "comentarios"
4872
4873-#: .././plainbox/impl/commands/inv_run.py:883
4874+#: .././plainbox/impl/commands/inv_run.py:902
4875 msgctxt "none comment"
4876 msgid "none"
4877 msgstr ""
4878
4879-#: .././plainbox/impl/commands/inv_run.py:910
4880+#: .././plainbox/impl/commands/inv_run.py:929
4881 msgid "Warning"
4882 msgstr ""
4883
4884-#: .././plainbox/impl/commands/inv_run.py:911
4885+#: .././plainbox/impl/commands/inv_run.py:930
4886 msgid "There were some problems with the selected jobs"
4887 msgstr "Los trabajos seleccionados tuvieron problemas"
4888
4889-#: .././plainbox/impl/commands/inv_run.py:914
4890+#: .././plainbox/impl/commands/inv_run.py:933
4891 msgid "Problematic jobs will not be considered"
4892 msgstr "Los trabajos con problemas no serán considerados"
4893
4894-#: .././plainbox/impl/commands/inv_run.py:917
4895+#: .././plainbox/impl/commands/inv_run.py:936
4896 msgid "Session Statistics"
4897 msgstr ""
4898
4899-#: .././plainbox/impl/commands/inv_run.py:918
4900-#, python-brace-format, python-format
4901-msgid "This session is about {0:.2f}% complete"
4902+#: .././plainbox/impl/commands/inv_run.py:937
4903+#, python-brace-format
4904+msgid "This session is about {0:.2f}{percent} complete"
4905 msgstr ""
4906
4907-#: .././plainbox/impl/commands/inv_run.py:923
4908+#: .././plainbox/impl/commands/inv_run.py:942
4909 msgid "Estimated duration is {:.2f} for automated jobs."
4910 msgstr "La duración estimada es {:.2f} para los trabajos automatizados."
4911
4912-#: .././plainbox/impl/commands/inv_run.py:927
4913+#: .././plainbox/impl/commands/inv_run.py:946
4914 msgid "Estimated duration cannot be determined for automated jobs."
4915 msgstr ""
4916 "La duración estimada no pudo ser determinada para los trabajos automatizados."
4917
4918-#: .././plainbox/impl/commands/inv_run.py:929
4919+#: .././plainbox/impl/commands/inv_run.py:948
4920 msgid "Estimated duration is {:.2f} for manual jobs."
4921 msgstr "La duración estimada es {:.2f} para los trabajos manuales."
4922
4923-#: .././plainbox/impl/commands/inv_run.py:933
4924+#: .././plainbox/impl/commands/inv_run.py:952
4925 msgid "Estimated duration cannot be determined for manual jobs."
4926 msgstr ""
4927 "La duración estimada no pudo ser determinada para los trabajos manuales."
4928
4929-#: .././plainbox/impl/commands/inv_run.py:934
4930+#: .././plainbox/impl/commands/inv_run.py:953
4931 #, python-brace-format
4932 msgid "Size of the desired job list: {0}"
4933 msgstr ""
4934
4935-#: .././plainbox/impl/commands/inv_run.py:936
4936+#: .././plainbox/impl/commands/inv_run.py:955
4937 #, python-brace-format
4938 msgid "Size of the effective execution plan: {0}"
4939 msgstr ""
4940@@ -1345,129 +1349,163 @@
4941 msgid "log messages at various levels"
4942 msgstr "mensajes de bitácora en diversos niveles"
4943
4944-#: .././plainbox/impl/ctrl.py:278
4945+#: .././plainbox/impl/ctrl.py:277
4946 #, python-format
4947 msgid "Storing resource record %r: %s"
4948 msgstr "Almacenando registro de recurso %r: %s"
4949
4950-#: .././plainbox/impl/ctrl.py:294 .././plainbox/impl/secure/launcher1.py:138
4951+#: .././plainbox/impl/ctrl.py:293 .././plainbox/impl/secure/launcher1.py:138
4952 #, python-format
4953 msgid "Instantiating unit: %s"
4954 msgstr ""
4955
4956-#: .././plainbox/impl/ctrl.py:301
4957+#: .././plainbox/impl/ctrl.py:300
4958 #, python-format
4959 msgid "Ignoring invalid instantiated unit %s: %s"
4960 msgstr ""
4961
4962-#: .././plainbox/impl/ctrl.py:323
4963+#: .././plainbox/impl/ctrl.py:326
4964 #, python-format
4965 msgid "Ignoring invalid generated job %s: %s"
4966 msgstr ""
4967
4968 #. TRANSLATORS: keep the word "local" untranslated. It is a
4969 #. special type of job that needs to be distinguished.
4970-#: .././plainbox/impl/ctrl.py:340
4971+#: .././plainbox/impl/ctrl.py:343
4972 #, python-format
4973 msgid ""
4974 "Local job %s produced job %s that collides with an existing job %s (from "
4975 "%s), the new job was discarded"
4976 msgstr ""
4977
4978-#: .././plainbox/impl/ctrl.py:356
4979+#: .././plainbox/impl/ctrl.py:369
4980+#, python-format
4981+msgid "Automatically breaking via-cycle: %s"
4982+msgstr ""
4983+
4984+#: .././plainbox/impl/ctrl.py:416
4985 #, python-format
4986 msgid "processing output from a job: %r"
4987 msgstr "procesando salida del trabajo: %r"
4988
4989 #. TRANSLATORS: keep the word "local" untranslated. It is a
4990 #. special type of job that needs to be distinguished.
4991-#: .././plainbox/impl/ctrl.py:375
4992+#: .././plainbox/impl/ctrl.py:435
4993 #, python-format
4994 msgid "local script %s returned invalid RFC822 data: %s"
4995 msgstr "guión local %s regresó datos RFC822 inválidos: %s"
4996
4997-#: .././plainbox/impl/ctrl.py:405
4998+#: .././plainbox/impl/ctrl.py:465
4999 #, python-format
5000 msgid "Adding executable %s to nest %s"
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches