Merge ~jugmac00/launchpad:update-social-media-contacts into launchpad:master

Proposed by Jürgen Gmach
Status: Merged
Approved by: Jürgen Gmach
Approved revision: 751a55df0aa0a5304f9e843ac7a1906a415ff9c5
Merge reported by: Otto Co-Pilot
Merged at revision: not available
Proposed branch: ~jugmac00/launchpad:update-social-media-contacts
Merge into: launchpad:master
Diff against target: 502 lines (+30/-46)
26 files modified
lib/canonical/launchpad/offline-maintenance-haproxy.html (+3/-1)
lib/canonical/launchpad/offline-maintenance.html (+3/-1)
lib/canonical/launchpad/offline-unplanned-haproxy.html (+3/-1)
lib/canonical/launchpad/offline-unplanned.html (+3/-1)
lib/lp/answers/browser/tests/views.rst (+0/-1)
lib/lp/app/browser/doc/base-layout.rst (+1/-1)
lib/lp/app/doc/menus.rst (+0/-3)
lib/lp/app/doc/tales.rst (+0/-1)
lib/lp/app/templates/base-layout-macros.pt (+1/-2)
lib/lp/app/templates/launchpad-databaseunavailable.pt (+3/-1)
lib/lp/bugs/doc/bug-change.rst (+0/-2)
lib/lp/bugs/doc/checkwatches.rst (+0/-1)
lib/lp/bugs/doc/cve.rst (+1/-1)
lib/lp/bugs/doc/externalbugtracker-bug-imports.rst (+0/-1)
lib/lp/bugs/doc/externalbugtracker-bugzilla-api.rst (+0/-1)
lib/lp/bugs/doc/externalbugtracker-bugzilla.rst (+0/-3)
lib/lp/bugs/doc/externalbugtracker-comment-imports.rst (+0/-1)
lib/lp/bugs/doc/externalbugtracker-comment-pushing.rst (+0/-2)
lib/lp/bugs/doc/externalbugtracker.rst (+0/-2)
lib/lp/bugs/doc/product-update-remote-product.rst (+0/-1)
lib/lp/registry/doc/distribution-mirror.rst (+9/-9)
lib/lp/registry/tests/person_from_principal.rst (+0/-1)
lib/lp/services/librarianserver/web.py (+1/-0)
lib/lp/services/webapp/doc/menus.rst (+0/-3)
lib/lp/services/webapp/doc/navigation.rst (+0/-3)
lib/lp/translations/doc/translationgroup.rst (+2/-2)
Reviewer Review Type Date Requested Status
Colin Watson (community) Approve
Review via email: mp+436658@code.launchpad.net

Commit message

Add Mastodon account for status updates

To post a comment you must log in.
98937d5... by Jürgen Gmach

Make blackdoc linter happy

Revision history for this message
Jürgen Gmach (jugmac00) wrote :

When reviewing, please review each commit on its own.

For "reasons" many unrelated linter issues popped up, which I fixed in a separate commit.

Revision history for this message
Colin Watson (cjwatson) :
review: Approve
Revision history for this message
Jürgen Gmach (jugmac00) wrote :

Thanks for the review.

751a55d... by Jürgen Gmach

Apply feedback from review

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/lib/canonical/launchpad/offline-maintenance-haproxy.html b/lib/canonical/launchpad/offline-maintenance-haproxy.html
2index 329ae2e..30707bc 100644
3--- a/lib/canonical/launchpad/offline-maintenance-haproxy.html
4+++ b/lib/canonical/launchpad/offline-maintenance-haproxy.html
5@@ -31,7 +31,9 @@ Content-Type: text/html
6 <p>
7 We'll be back soon. Check
8 <a href="https://twitter.com/launchpadstatus">@launchpadstatus</a>
9- on Twitter for updates.
10+ on Twitter or
11+ <a href="https://ubuntu.social/@launchpadstatus">@launchpadstatus@ubuntu.social</a>
12+ on Mastodon for updates.
13 </p>
14 <p><a href="javascript:window.location.reload()">Reload</a>
15 this page or try again in a few minutes</p>
16diff --git a/lib/canonical/launchpad/offline-maintenance.html b/lib/canonical/launchpad/offline-maintenance.html
17index 2ed31ff..7f46f5c 100644
18--- a/lib/canonical/launchpad/offline-maintenance.html
19+++ b/lib/canonical/launchpad/offline-maintenance.html
20@@ -24,7 +24,9 @@
21 <p>
22 We'll be back soon. Check
23 <a href="https://twitter.com/launchpadstatus">@launchpadstatus</a>
24- on Twitter for updates.
25+ on Twitter or
26+ <a href="https://ubuntu.social/@launchpadstatus">@launchpadstatus@ubuntu.social</a>
27+ on Mastodon for updates.
28 </p>
29 <p><a href="javascript:window.location.reload()">Reload</a>
30 this page or try again in a few minutes</p>
31diff --git a/lib/canonical/launchpad/offline-unplanned-haproxy.html b/lib/canonical/launchpad/offline-unplanned-haproxy.html
32index 04965a0..9e59137 100644
33--- a/lib/canonical/launchpad/offline-unplanned-haproxy.html
34+++ b/lib/canonical/launchpad/offline-unplanned-haproxy.html
35@@ -33,7 +33,9 @@ Content-Type: text/html
36 back in a couple of minutes. Otherwise, we are working to
37 fix the unexpected problems. Check
38 <a href="https://twitter.com/launchpadstatus">@launchpadstatus</a>
39- on Twitter for updates.
40+ on Twitter or
41+ <a href="https://ubuntu.social/@launchpadstatus">@launchpadstatus@ubuntu.social</a>
42+ on Mastodon for updates.
43 </p>
44 <p>
45 If the problem persists, let us know in
46diff --git a/lib/canonical/launchpad/offline-unplanned.html b/lib/canonical/launchpad/offline-unplanned.html
47index ef1717a..4d8687c 100644
48--- a/lib/canonical/launchpad/offline-unplanned.html
49+++ b/lib/canonical/launchpad/offline-unplanned.html
50@@ -26,7 +26,9 @@
51 back in a couple of minutes. Otherwise, we are working to
52 fix the unexpected problems. Check
53 <a href="https://twitter.com/launchpadstatus">@launchpadstatus</a>
54- on Twitter for updates.
55+ on Twitter or
56+ <a href="https://ubuntu.social/@launchpadstatus">@launchpadstatus@ubuntu.social</a>
57+ on Mastodon for updates.
58 </p>
59 <p>
60 If the problem persists, let us know in
61diff --git a/lib/lp/answers/browser/tests/views.rst b/lib/lp/answers/browser/tests/views.rst
62index 70a10a6..5f58b10 100644
63--- a/lib/lp/answers/browser/tests/views.rst
64+++ b/lib/lp/answers/browser/tests/views.rst
65@@ -851,7 +851,6 @@ keeping those searchable.
66
67 >>> from lp.answers.browser.questiontarget import SearchQuestionsView
68 >>> class MyCustomSearchQuestionsView(SearchQuestionsView):
69- ...
70 ... default_filter = {}
71 ...
72 ... def getDefaultFilter(self):
73diff --git a/lib/lp/app/browser/doc/base-layout.rst b/lib/lp/app/browser/doc/base-layout.rst
74index c9d4758..bf4c87a 100644
75--- a/lib/lp/app/browser/doc/base-layout.rst
76+++ b/lib/lp/app/browser/doc/base-layout.rst
77@@ -162,7 +162,7 @@ Page Footers
78 Contact Launchpad Support /feedback
79 Blog http://blog.launchpad.net/
80 Careers https://canonical.com/careers
81- System status https://twitter.com/launchpadstatus
82+ System status https://ubuntu.social/@launchpadstatus
83 Get the code! https://dev.launchpad.net/
84
85
86diff --git a/lib/lp/app/doc/menus.rst b/lib/lp/app/doc/menus.rst
87index 3534dba..03ceb92 100644
88--- a/lib/lp/app/doc/menus.rst
89+++ b/lib/lp/app/doc/menus.rst
90@@ -252,7 +252,6 @@ are appropriate for a context object.
91 >>> from lp.services.webapp import Link
92
93 >>> class CookeryFacetMenu(FacetMenu):
94- ...
95 ... usedfor = ICookbook
96 ... links = ["summary", "questions", "variations"]
97 ... defaultlink = "summary"
98@@ -496,7 +495,6 @@ The RecipeFacetMenu subclass defined below only applies to IRecipe
99 content object and it has all facet links enabled.
100
101 >>> class RecipeFacetMenu(CookeryFacetMenu):
102- ...
103 ... usedfor = IRecipe
104 ... enable_only = ["summary", "questions", "variations"]
105 ...
106@@ -568,7 +566,6 @@ links. CookeryFacetMenu did not include 'non_link' in its links, so an
107 error is raised when BogusFacetMenu is used.
108
109 >>> class BogusFacetMenu(CookeryFacetMenu):
110- ...
111 ... usedfor = IRecipe
112 ... enable_only = ["summary", "non_link"]
113 ...
114diff --git a/lib/lp/app/doc/tales.rst b/lib/lp/app/doc/tales.rst
115index 162b579..e872cff 100644
116--- a/lib/lp/app/doc/tales.rst
117+++ b/lib/lp/app/doc/tales.rst
118@@ -1485,7 +1485,6 @@ Make a mock-up IBrowserRequest, and use this as the interaction.
119 ... ILaunchpadBrowserApplicationRequest,
120 ... )
121 ... class MockBrowserRequest:
122- ...
123 ... interaction = None
124 ... principal = None
125 ...
126diff --git a/lib/lp/app/templates/base-layout-macros.pt b/lib/lp/app/templates/base-layout-macros.pt
127index 54980ff..e9c2b1d 100644
128--- a/lib/lp/app/templates/base-layout-macros.pt
129+++ b/lib/lp/app/templates/base-layout-macros.pt
130@@ -305,8 +305,7 @@
131 >Careers</a>
132 </tal:careers_link>
133 &nbsp;&bull;&nbsp;
134- <a href="https://twitter.com/launchpadstatus"
135- >System status</a>
136+ <a href="https://ubuntu.social/@launchpadstatus">System status</a>
137 <span id="lp-version">
138 &nbsp;&bull;&nbsp;
139 <tal:display_revision replace="display_revision" />
140diff --git a/lib/lp/app/templates/launchpad-databaseunavailable.pt b/lib/lp/app/templates/launchpad-databaseunavailable.pt
141index 1e7d025..1c8a80c 100644
142--- a/lib/lp/app/templates/launchpad-databaseunavailable.pt
143+++ b/lib/lp/app/templates/launchpad-databaseunavailable.pt
144@@ -27,7 +27,9 @@
145 back in a couple of minutes. Otherwise, we are working to
146 fix the unexpected problems. Check
147 <a href="https://twitter.com/launchpadstatus">@launchpadstatus</a>
148- on Twitter for updates.
149+ on Twitter or
150+ <a href="https://ubuntu.social/@launchpadstatus">@launchpadstatus@ubuntu.social</a>
151+ on Mastodon for updates.
152 </p>
153 <p>
154 If the problem persists, let us know in
155diff --git a/lib/lp/bugs/doc/bug-change.rst b/lib/lp/bugs/doc/bug-change.rst
156index 5414629..de42def 100644
157--- a/lib/lp/bugs/doc/bug-change.rst
158+++ b/lib/lp/bugs/doc/bug-change.rst
159@@ -71,7 +71,6 @@ We'll create a test class that actually implements the methods we need.
160 >>> recipients.addDirectSubscriber(example_person_2)
161
162 >>> class TestBugChange(BugChangeBase):
163- ...
164 ... bug_activity_data = {
165 ... "whatchanged": "Nothing",
166 ... "oldvalue": "OldValue",
167@@ -217,7 +216,6 @@ If you try to send a notification without adding a text body for the
168 notification you'll get an error.
169
170 >>> class NoNotificationTextBugChange(TestBugChange):
171- ...
172 ... bug_notification_data = {
173 ... "text": None,
174 ... }
175diff --git a/lib/lp/bugs/doc/checkwatches.rst b/lib/lp/bugs/doc/checkwatches.rst
176index 47205b8..6969dc5 100644
177--- a/lib/lp/bugs/doc/checkwatches.rst
178+++ b/lib/lp/bugs/doc/checkwatches.rst
179@@ -344,7 +344,6 @@ We'll create a non-functioning ExternalBugtracker to demonstrate this.
180 ... ISupportsCommentPushing,
181 ... )
182 ... class UselessExternalBugTracker(ExternalBugTracker):
183- ...
184 ... batch_size = BATCH_SIZE_UNLIMITED
185 ...
186 ... def initializeRemoteBugDB(self, bug_ids):
187diff --git a/lib/lp/bugs/doc/cve.rst b/lib/lp/bugs/doc/cve.rst
188index 8adeabf..e06fe5f 100644
189--- a/lib/lp/bugs/doc/cve.rst
190+++ b/lib/lp/bugs/doc/cve.rst
191@@ -173,7 +173,7 @@ ICveSet.getBugCvesForBugTasks:
192 >>> ubuntu = Distribution.selectOneBy(name="ubuntu")
193 >>> ubuntu_tasks = ubuntu.searchTasks(params)
194 >>> bugcves = cveset.getBugCvesForBugTasks(ubuntu_tasks)
195- >>> for (bug, cve) in bugcves:
196+ >>> for bug, cve in bugcves:
197 ... print("%d: %s" % (bug.id, cve.title))
198 ...
199 1: CVE-1999-8979 (Entry)
200diff --git a/lib/lp/bugs/doc/externalbugtracker-bug-imports.rst b/lib/lp/bugs/doc/externalbugtracker-bug-imports.rst
201index 574e139..9eee801 100644
202--- a/lib/lp/bugs/doc/externalbugtracker-bug-imports.rst
203+++ b/lib/lp/bugs/doc/externalbugtracker-bug-imports.rst
204@@ -11,7 +11,6 @@ methods.
205 >>> from lp.bugs.externalbugtracker import ExternalBugTracker
206 >>> @implementer(ISupportsBugImport)
207 ... class BugImportingExternalBugTracker(ExternalBugTracker):
208- ...
209 ... _bugs = {}
210 ...
211 ... def getBugReporter(self, remote_bug):
212diff --git a/lib/lp/bugs/doc/externalbugtracker-bugzilla-api.rst b/lib/lp/bugs/doc/externalbugtracker-bugzilla-api.rst
213index 9e5a378..d647a20 100644
214--- a/lib/lp/bugs/doc/externalbugtracker-bugzilla-api.rst
215+++ b/lib/lp/bugs/doc/externalbugtracker-bugzilla-api.rst
216@@ -77,7 +77,6 @@ Trying to log in to a Bugzilla with incorrect credentials will also
217 raise an error.
218
219 >>> class BadCredentialsBugzillaAPI(BugzillaAPI):
220- ...
221 ... credentials = {"login": "fail", "password": "fail"}
222 ...
223
224diff --git a/lib/lp/bugs/doc/externalbugtracker-bugzilla.rst b/lib/lp/bugs/doc/externalbugtracker-bugzilla.rst
225index 5f8ca79..f3f09ab 100644
226--- a/lib/lp/bugs/doc/externalbugtracker-bugzilla.rst
227+++ b/lib/lp/bugs/doc/externalbugtracker-bugzilla.rst
228@@ -89,7 +89,6 @@ we override for the purpose of this test.
229
230 >>> import xmlrpc.client
231 >>> class FailingXMLRPCTransport(xmlrpc.client.Transport):
232- ...
233 ... error = xmlrpc.client.Fault(
234 ... xmlrpc.client.METHOD_NOT_FOUND, "Method doesn't exist"
235 ... )
236@@ -105,7 +104,6 @@ we override for the purpose of this test.
237 >>> test_transport = FailingXMLRPCTransport()
238
239 >>> class BugzillaWithFakeProxy(Bugzilla):
240- ...
241 ... _test_xmlrpc_proxy = xmlrpc.client.ServerProxy(
242 ... "http://example.com/xmlrpc.cgi", transport=test_transport
243 ... )
244@@ -181,7 +179,6 @@ BuzillaAPI will be returned. To test this, we use a specially-crafted
245 XML-RPC proxy that behaves like a Bugzilla 3.4 instance.
246
247 >>> class APIXMLRPCTransport(xmlrpc.client.Transport):
248- ...
249 ... version = "3.4.2"
250 ...
251 ... def request(self, host, handler, request, verbose=None):
252diff --git a/lib/lp/bugs/doc/externalbugtracker-comment-imports.rst b/lib/lp/bugs/doc/externalbugtracker-comment-imports.rst
253index 257c3d8..240edbc 100644
254--- a/lib/lp/bugs/doc/externalbugtracker-comment-imports.rst
255+++ b/lib/lp/bugs/doc/externalbugtracker-comment-imports.rst
256@@ -50,7 +50,6 @@ ExternalBugTracker class which implements these three methods.
257 ... )
258 >>> @implementer(ISupportsCommentImport)
259 ... class CommentImportingExternalBugTracker(ExternalBugTracker):
260- ...
261 ... comment_dict = {}
262 ... remote_comments = {
263 ... "1": "Example comment the first",
264diff --git a/lib/lp/bugs/doc/externalbugtracker-comment-pushing.rst b/lib/lp/bugs/doc/externalbugtracker-comment-pushing.rst
265index 56c1374..e73a4af 100644
266--- a/lib/lp/bugs/doc/externalbugtracker-comment-pushing.rst
267+++ b/lib/lp/bugs/doc/externalbugtracker-comment-pushing.rst
268@@ -60,7 +60,6 @@ ISupportsCommentPushing interface.
269
270 >>> @implementer(ISupportsCommentPushing)
271 ... class CommentPushingExternalBugTracker(ExternalBugTracker):
272- ...
273 ... next_comment_id = 1
274 ... remote_comments = {}
275 ...
276@@ -216,7 +215,6 @@ example ExternalBugTracker that does comment importing.
277 ... class CommentImportingExternalBugTracker(
278 ... CommentPushingExternalBugTracker
279 ... ):
280- ...
281 ... external_comment_dict = {
282 ... "4": "External comment 1.",
283 ... "5": "External comment 2.",
284diff --git a/lib/lp/bugs/doc/externalbugtracker.rst b/lib/lp/bugs/doc/externalbugtracker.rst
285index 94164ef..fe920fb 100644
286--- a/lib/lp/bugs/doc/externalbugtracker.rst
287+++ b/lib/lp/bugs/doc/externalbugtracker.rst
288@@ -181,7 +181,6 @@ Firstly, we'll subclass BugzillaAPI so that we don't have to
289 connect to any servers.
290
291 >>> class ProductQueryingBugzillaAPI(BugzillaAPI):
292- ...
293 ... remote_bug_products = {
294 ... 1: "HeartOfGold",
295 ... 2: "InfiniteImprobabilityDrive",
296@@ -994,7 +993,6 @@ We'll create some example unchecked watches as well as some watches with
297 comments to push in order to demonstrate this.
298
299 >>> class SmallBatchExternalBugTracker(TimeUnknownExternalBugTracker):
300- ...
301 ... batch_size = 5
302 ...
303 >>> external_bugtracker = SmallBatchExternalBugTracker(
304diff --git a/lib/lp/bugs/doc/product-update-remote-product.rst b/lib/lp/bugs/doc/product-update-remote-product.rst
305index b4b26ff..fb37a14 100644
306--- a/lib/lp/bugs/doc/product-update-remote-product.rst
307+++ b/lib/lp/bugs/doc/product-update-remote-product.rst
308@@ -52,7 +52,6 @@ ExternalBugTracker that doesn't require network access.
309
310
311 >>> class NoNetworkRemoteProductUpdater(RemoteProductUpdater):
312- ...
313 ... external_bugtracker_to_return = FakeExternalBugTracker
314 ...
315 ... def _getExternalBugTracker(self, bug_tracker):
316diff --git a/lib/lp/registry/doc/distribution-mirror.rst b/lib/lp/registry/doc/distribution-mirror.rst
317index 5fd9798..17f4e79 100644
318--- a/lib/lp/registry/doc/distribution-mirror.rst
319+++ b/lib/lp/registry/doc/distribution-mirror.rst
320@@ -482,7 +482,7 @@ IDistributionMirror.
321
322 >>> mirror = mirrorset.getByName("archive-mirror2")
323 >>> paths = mirror.getExpectedPackagesPaths()
324- >>> for (series, pocket, component, path) in paths:
325+ >>> for series, pocket, component, path in paths:
326 ... print(path)
327 ...
328 dists/breezy-autotest/main/binary-i386/Packages.gz
329@@ -529,7 +529,7 @@ IDistributionMirror.
330 >>> warty.status = SeriesStatus.OBSOLETE
331
332 >>> paths = mirror.getExpectedSourcesPaths()
333- >>> for (series, pocket, component, path) in paths:
334+ >>> for series, pocket, component, path in paths:
335 ... print(path)
336 ...
337 dists/breezy-autotest/main/source/Sources.gz
338@@ -577,7 +577,7 @@ config.distributionmirrorprober.releases_file_list_url option)
339 >>> from lp.registry.scripts.distributionmirror_prober import (
340 ... get_expected_cdimage_paths,
341 ... )
342- >>> for (series, flavour, paths) in get_expected_cdimage_paths():
343+ >>> for series, flavour, paths in get_expected_cdimage_paths():
344 ... for path in paths:
345 ... print(series.name, flavour, path)
346 ...
347@@ -626,7 +626,7 @@ checked if that mirror's last sync was in the last one or two days.
348
349 >>> when = datetime(2005, 9, 17, tzinfo=utc)
350 >>> urls = warty_mirror.getURLsToCheckUpdateness(when=when)
351- >>> for (freshness, url) in urls.items():
352+ >>> for freshness, url in urls.items():
353 ... print("%s: %s" % (freshness.name, url)) # noqa
354 ...
355 UP: http://foo.bar.com/pub/pool/main/a/alsa-utils/alsa-utils_1.0.9a-4.dsc
356@@ -638,7 +638,7 @@ last upload was mirrored and then mark the mirror as up-to-date. This is
357 because there were no recent uploads there.
358
359 >>> urls = warty_mirror.getURLsToCheckUpdateness()
360- >>> for (freshness, url) in urls.items():
361+ >>> for freshness, url in urls.items():
362 ... print("%s: %s" % (freshness.name, url))
363 ...
364 UP: http://foo.bar.com/pub/pool/main/c/cdrkit/foobar-1.0.dsc
365@@ -654,7 +654,7 @@ If the mirror has no HTTP base url, we'll use the FTP one.
366 ... "ftp://foo.bar.com/pub"
367 ... )
368 >>> urls = warty_mirror.getURLsToCheckUpdateness()
369- >>> for (freshness, url) in urls.items():
370+ >>> for freshness, url in urls.items():
371 ... print("%s: %s" % (freshness.name, url))
372 ...
373 UP: ftp://foo.bar.com/pub/pool/main/c/cdrkit/foobar-1.0.dsc
374@@ -697,7 +697,7 @@ so we need to skip that upload.
375
376 >>> when = datetime(2005, 6, 22, tzinfo=utc)
377 >>> urls = warty_i386_mirror.getURLsToCheckUpdateness(when=when)
378- >>> for (freshness, url) in urls.items():
379+ >>> for freshness, url in urls.items():
380 ... print("%s: %s" % (freshness.name, url)) # noqa
381 ...
382 UP: http://foo.bar.com/pub/pool/main/p/pmount/pmount_1.9-1_all.deb
383@@ -706,7 +706,7 @@ so we need to skip that upload.
384
385 >>> when = datetime(2005, 6, 20, 0, 1, tzinfo=utc)
386 >>> urls = warty_i386_mirror.getURLsToCheckUpdateness(when=when)
387- >>> for (freshness, url) in urls.items():
388+ >>> for freshness, url in urls.items():
389 ... print("%s: %s" % (freshness.name, url)) # noqa
390 ...
391 UP: http://foo.bar.com/pub/pool/main/p/pmount/pmount_1.9-1_all.deb
392@@ -722,7 +722,7 @@ If the mirror has no HTTP base url, we'll use the FTP one.
393 ... "ftp://foo.bar.com/pub"
394 ... )
395 >>> urls = warty_i386_mirror.getURLsToCheckUpdateness()
396- >>> for (freshness, url) in urls.items():
397+ >>> for freshness, url in urls.items():
398 ... print("%s: %s" % (freshness.name, url))
399 ...
400 UP: ftp://foo.bar.com/pub/pool/main/c/cdrkit/foobar_1.0_all.deb
401diff --git a/lib/lp/registry/tests/person_from_principal.rst b/lib/lp/registry/tests/person_from_principal.rst
402index 9f729e0..ad61707 100644
403--- a/lib/lp/registry/tests/person_from_principal.rst
404+++ b/lib/lp/registry/tests/person_from_principal.rst
405@@ -25,7 +25,6 @@ time we adapt.
406 >>> cached_person = object()
407 >>> @implementer(ILaunchpadPrincipal)
408 ... class LaunchpadPrincipal:
409- ...
410 ... person = cached_person
411 ...
412
413diff --git a/lib/lp/services/librarianserver/web.py b/lib/lp/services/librarianserver/web.py
414index 17a356e..23f6555 100644
415--- a/lib/lp/services/librarianserver/web.py
416+++ b/lib/lp/services/librarianserver/web.py
417@@ -148,6 +148,7 @@ class LibraryFileAliasResource(resource.Resource):
418 "Database unavailable",
419 "A required database is unavailable.\n"
420 "See https://twitter.com/launchpadstatus "
421+ "or https://ubuntu.social/@launchpadstatus "
422 "for maintenance and outage notifications.",
423 )
424 else:
425diff --git a/lib/lp/services/webapp/doc/menus.rst b/lib/lp/services/webapp/doc/menus.rst
426index f11fad5..23358a0 100644
427--- a/lib/lp/services/webapp/doc/menus.rst
428+++ b/lib/lp/services/webapp/doc/menus.rst
429@@ -468,7 +468,6 @@ in practice because we need to know how to register our menu as an
430 adapter. For this part of the test, we won't worry about that.
431
432 >>> class FooApplicationMenu(ApplicationMenu):
433- ...
434 ... links = ["first"]
435 ... facet = "foo"
436 ...
437@@ -540,7 +539,6 @@ tells the registration machinery how to render this menu as an adapter.
438 For this part of the test, we won't worry about that.
439
440 >>> class MyContextMenu(ContextMenu):
441- ...
442 ... links = ["first"]
443 ...
444 ... def first(self):
445@@ -725,7 +723,6 @@ link should appear linked. The request is also set as the menu's
446 >>> from lp.services.webapp.vhosts import allvhosts
447 >>> @implementer(IHTTPApplicationRequest, IBrowserRequest)
448 ... class FakeRequest:
449- ...
450 ... interaction = None
451 ...
452 ... def __init__(self, url, query=None, url1=None):
453diff --git a/lib/lp/services/webapp/doc/navigation.rst b/lib/lp/services/webapp/doc/navigation.rst
454index 2cf30a4..eef1360 100644
455--- a/lib/lp/services/webapp/doc/navigation.rst
456+++ b/lib/lp/services/webapp/doc/navigation.rst
457@@ -74,7 +74,6 @@ interface, we'll define one here.
458 >>> from zope.publisher.interfaces.browser import IBrowserRequest
459
460 >>> class Response:
461- ...
462 ... redirected_to = None
463 ... status = None
464 ...
465@@ -139,7 +138,6 @@ interface, we'll define one here.
466 >>> request = Request()
467
468 >>> class IThing(Interface):
469- ...
470 ... value = Attribute("the value of the thing")
471 ...
472
473@@ -211,7 +209,6 @@ which return None to indicate 'not found' and some that raise NotFoundError.
474
475
476 >>> class ThingSetNavigation(Navigation):
477- ...
478 ... usedfor = IThingSet
479 ...
480 ... newlayer = INewLayer
481diff --git a/lib/lp/translations/doc/translationgroup.rst b/lib/lp/translations/doc/translationgroup.rst
482index 075a4ae..db94a6b 100644
483--- a/lib/lp/translations/doc/translationgroup.rst
484+++ b/lib/lp/translations/doc/translationgroup.rst
485@@ -188,7 +188,7 @@ The method returns tuples of respectively a Translator ("translation
486 group membership entry"), its language, and the actual team or person
487 assigned to that language.
488
489- >>> for (translator, language, team) in group.fetchTranslatorData():
490+ >>> for translator, language, team in group.fetchTranslatorData():
491 ... print(translator.language.code, language.code, team.name)
492 ...
493 nl nl nl-team
494@@ -197,7 +197,7 @@ assigned to that language.
495
496 The members are sorted by language name in English.
497
498- >>> for (translator, language, person) in group.fetchTranslatorData():
499+ >>> for translator, language, person in group.fetchTranslatorData():
500 ... print(language.englishname)
501 ...
502 Dutch

Subscribers

People subscribed via source and target branches

to status/vote changes: