Merge ~cjwatson/launchpad:flake8-line-length into launchpad:master
- Git
- lp:~cjwatson/launchpad
- flake8-line-length
- Merge into master
Proposed by
Colin Watson
Status: | Merged |
---|---|
Approved by: | Colin Watson |
Approved revision: | 98d05f79d5525bd68170a061f2f8686dfd9a7860 |
Merge reported by: | Otto Co-Pilot |
Merged at revision: | not available |
Proposed branch: | ~cjwatson/launchpad:flake8-line-length |
Merge into: | launchpad:master |
Diff against target: |
712 lines (+187/-159) 25 files modified
doc/conf.py (+12/-9) lib/lp/app/validators/email.py (+1/-0) lib/lp/app/validators/tests/test_validation.py (+2/-1) lib/lp/app/widgets/date.py (+2/-0) lib/lp/archivepublisher/customupload.py (+3/-1) lib/lp/archivepublisher/tests/test_signing.py (+2/-1) lib/lp/archiveuploader/tests/test_tagfiles.py (+5/-5) lib/lp/code/mail/tests/test_codehandler.py (+2/-1) lib/lp/code/mail/tests/test_codeimport.py (+2/-1) lib/lp/code/model/tests/test_branch.py (+4/-3) lib/lp/oci/tests/test_ocirecipe.py (+2/-2) lib/lp/registry/model/distributionsourcepackage.py (+2/-1) lib/lp/registry/tests/test_prf_walker.py (+2/-2) lib/lp/services/librarianserver/testing/server.py (+23/-14) lib/lp/soyuz/browser/archivesubscription.py (+2/-1) lib/lp/soyuz/browser/tests/test_distroarchseries_webservice.py (+2/-1) lib/lp/soyuz/mail/tests/test_packageupload.py (+1/-1) lib/lp/testing/keyserver/tests/test_web.py (+1/-1) lib/lp/translations/scripts/tests/test_packaging_translations.py (+2/-2) lib/lp/translations/utilities/gettext_po_parser.py (+1/-1) lib/lp/translations/utilities/tests/test_gettext_po_exporter.py (+1/-1) lib/lp/translations/utilities/tests/test_xpi_po_exporter.py (+2/-2) scripts/update-stacked-on.py (+2/-1) test_on_merge.py (+2/-1) utilities/community-contributions.py (+107/-106) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Cristian Gonzalez (community) | Approve | ||
Review via email: mp+406337@code.launchpad.net |
Commit message
Fix/ignore flake8 line length errors
Description of the change
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | diff --git a/doc/conf.py b/doc/conf.py | |||
2 | index 212dd6b..c4a73e4 100644 | |||
3 | --- a/doc/conf.py | |||
4 | +++ b/doc/conf.py | |||
5 | @@ -3,7 +3,8 @@ | |||
6 | 3 | # Launchpad documentation build configuration file, created by | 3 | # Launchpad documentation build configuration file, created by |
7 | 4 | # sphinx-quickstart on Thu Feb 3 16:06:09 2011. | 4 | # sphinx-quickstart on Thu Feb 3 16:06:09 2011. |
8 | 5 | # | 5 | # |
10 | 6 | # This file is execfile()d with the current directory set to its containing dir. | 6 | # This file is execfile()d with the current directory set to its containing |
11 | 7 | # dir. | ||
12 | 7 | # | 8 | # |
13 | 8 | # Note that not all possible configuration values are present in this | 9 | # Note that not all possible configuration values are present in this |
14 | 9 | # autogenerated file. | 10 | # autogenerated file. |
15 | @@ -16,13 +17,13 @@ | |||
16 | 16 | # documentation root, use os.path.abspath to make it absolute, like shown here. | 17 | # documentation root, use os.path.abspath to make it absolute, like shown here. |
17 | 17 | #sys.path.insert(0, os.path.abspath('.')) | 18 | #sys.path.insert(0, os.path.abspath('.')) |
18 | 18 | 19 | ||
20 | 19 | # -- General configuration ----------------------------------------------------- | 20 | # -- General configuration ---------------------------------------------------- |
21 | 20 | 21 | ||
22 | 21 | # If your documentation needs a minimal Sphinx version, state it here. | 22 | # If your documentation needs a minimal Sphinx version, state it here. |
23 | 22 | #needs_sphinx = '1.0' | 23 | #needs_sphinx = '1.0' |
24 | 23 | 24 | ||
27 | 24 | # Add any Sphinx extension module names here, as strings. They can be extensions | 25 | # Add any Sphinx extension module names here, as strings. They can be |
28 | 25 | # coming with Sphinx (named 'sphinx.ext.*') or your custom ones. | 26 | # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones. |
29 | 26 | extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.todo'] | 27 | extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.todo'] |
30 | 27 | 28 | ||
31 | 28 | # Add any paths that contain templates here, relative to this directory. | 29 | # Add any paths that contain templates here, relative to this directory. |
32 | @@ -64,7 +65,8 @@ release = 'dev' | |||
33 | 64 | # directories to ignore when looking for source files. | 65 | # directories to ignore when looking for source files. |
34 | 65 | exclude_patterns = ['_build'] | 66 | exclude_patterns = ['_build'] |
35 | 66 | 67 | ||
37 | 67 | # The reST default role (used for this markup: `text`) to use for all documents. | 68 | # The reST default role (used for this markup: `text`) to use for all |
38 | 69 | # documents. | ||
39 | 68 | #default_role = None | 70 | #default_role = None |
40 | 69 | 71 | ||
41 | 70 | # If true, '()' will be appended to :func: etc. cross-reference text. | 72 | # If true, '()' will be appended to :func: etc. cross-reference text. |
42 | @@ -85,7 +87,7 @@ pygments_style = 'sphinx' | |||
43 | 85 | #modindex_common_prefix = [] | 87 | #modindex_common_prefix = [] |
44 | 86 | 88 | ||
45 | 87 | 89 | ||
47 | 88 | # -- Options for HTML output --------------------------------------------------- | 90 | # -- Options for HTML output -------------------------------------------------- |
48 | 89 | 91 | ||
49 | 90 | # The theme to use for HTML and HTML Help pages. See the documentation for | 92 | # The theme to use for HTML and HTML Help pages. See the documentation for |
50 | 91 | # a list of builtin themes. | 93 | # a list of builtin themes. |
51 | @@ -165,7 +167,7 @@ html_static_path = ['_static'] | |||
52 | 165 | htmlhelp_basename = 'Launchpaddoc' | 167 | htmlhelp_basename = 'Launchpaddoc' |
53 | 166 | 168 | ||
54 | 167 | 169 | ||
56 | 168 | # -- Options for LaTeX output -------------------------------------------------- | 170 | # -- Options for LaTeX output ------------------------------------------------- |
57 | 169 | 171 | ||
58 | 170 | # The paper size ('letter' or 'a4'). | 172 | # The paper size ('letter' or 'a4'). |
59 | 171 | #latex_paper_size = 'letter' | 173 | #latex_paper_size = 'letter' |
60 | @@ -174,7 +176,8 @@ htmlhelp_basename = 'Launchpaddoc' | |||
61 | 174 | #latex_font_size = '10pt' | 176 | #latex_font_size = '10pt' |
62 | 175 | 177 | ||
63 | 176 | # Grouping the document tree into LaTeX files. List of tuples | 178 | # Grouping the document tree into LaTeX files. List of tuples |
65 | 177 | # (source start file, target name, title, author, documentclass [howto/manual]). | 179 | # (source start file, target name, title, author, |
66 | 180 | # documentclass [howto/manual]). | ||
67 | 178 | latex_documents = [ | 181 | latex_documents = [ |
68 | 179 | ('index', 'Launchpad.tex', u'Launchpad Documentation', | 182 | ('index', 'Launchpad.tex', u'Launchpad Documentation', |
69 | 180 | u'The Launchpad Developers', 'manual'), | 183 | u'The Launchpad Developers', 'manual'), |
70 | @@ -204,7 +207,7 @@ latex_documents = [ | |||
71 | 204 | #latex_domain_indices = True | 207 | #latex_domain_indices = True |
72 | 205 | 208 | ||
73 | 206 | 209 | ||
75 | 207 | # -- Options for manual page output -------------------------------------------- | 210 | # -- Options for manual page output ------------------------------------------- |
76 | 208 | 211 | ||
77 | 209 | # One entry per manual page. List of tuples | 212 | # One entry per manual page. List of tuples |
78 | 210 | # (source start file, name, description, authors, manual section). | 213 | # (source start file, name, description, authors, manual section). |
79 | diff --git a/lib/lp/app/validators/email.py b/lib/lp/app/validators/email.py | |||
80 | index ce959fc..04d02dc 100644 | |||
81 | --- a/lib/lp/app/validators/email.py | |||
82 | +++ b/lib/lp/app/validators/email.py | |||
83 | @@ -79,6 +79,7 @@ def email_validator(emailaddr): | |||
84 | 79 | >>> email_validator('bugs@example.com') | 79 | >>> email_validator('bugs@example.com') |
85 | 80 | True | 80 | True |
86 | 81 | >>> email_validator('not-valid') | 81 | >>> email_validator('not-valid') |
87 | 82 | ... # noqa | ||
88 | 82 | ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2 | 83 | ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2 |
89 | 83 | Traceback (most recent call last): | 84 | Traceback (most recent call last): |
90 | 84 | ... | 85 | ... |
91 | diff --git a/lib/lp/app/validators/tests/test_validation.py b/lib/lp/app/validators/tests/test_validation.py | |||
92 | index 7c9c8b5..3cd87d9 100644 | |||
93 | --- a/lib/lp/app/validators/tests/test_validation.py | |||
94 | +++ b/lib/lp/app/validators/tests/test_validation.py | |||
95 | @@ -38,4 +38,5 @@ class TestOCIBranchValidator(TestCase): | |||
96 | 38 | self.assertTrue(validate_oci_branch_name('refs/tags/v2-1.0-20.04')) | 38 | self.assertTrue(validate_oci_branch_name('refs/tags/v2-1.0-20.04')) |
97 | 39 | 39 | ||
98 | 40 | def test_validate_oci_branch_name_heads_and_tags(self): | 40 | def test_validate_oci_branch_name_heads_and_tags(self): |
100 | 41 | self.assertFalse(validate_oci_branch_name("refs/heads/refs/tags/v1.0-20.04")) | 41 | self.assertFalse(validate_oci_branch_name( |
101 | 42 | "refs/heads/refs/tags/v1.0-20.04")) | ||
102 | diff --git a/lib/lp/app/widgets/date.py b/lib/lp/app/widgets/date.py | |||
103 | index 85d0756..c24da8f 100644 | |||
104 | --- a/lib/lp/app/widgets/date.py | |||
105 | +++ b/lib/lp/app/widgets/date.py | |||
106 | @@ -85,6 +85,7 @@ class DateTimeWidget(TextWidget): | |||
107 | 85 | >>> widget.from_date = datetime(2006, 5, 23, | 85 | >>> widget.from_date = datetime(2006, 5, 23, |
108 | 86 | ... tzinfo=pytz.timezone('UTC')) | 86 | ... tzinfo=pytz.timezone('UTC')) |
109 | 87 | >>> print(widget.getInputValue()) | 87 | >>> print(widget.getInputValue()) |
110 | 88 | ... # noqa | ||
111 | 88 | ... # doctest: +NORMALIZE_WHITESPACE,+ELLIPSIS | 89 | ... # doctest: +NORMALIZE_WHITESPACE,+ELLIPSIS |
112 | 89 | ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2 | 90 | ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2 |
113 | 90 | Traceback (most recent call last): | 91 | Traceback (most recent call last): |
114 | @@ -103,6 +104,7 @@ class DateTimeWidget(TextWidget): | |||
115 | 103 | >>> widget.to_date = datetime(2008, 1, 26, | 104 | >>> widget.to_date = datetime(2008, 1, 26, |
116 | 104 | ... tzinfo=pytz.timezone('UTC')) | 105 | ... tzinfo=pytz.timezone('UTC')) |
117 | 105 | >>> print(widget.getInputValue()) | 106 | >>> print(widget.getInputValue()) |
118 | 107 | ... # noqa | ||
119 | 106 | ... # doctest: +NORMALIZE_WHITESPACE,+ELLIPSIS | 108 | ... # doctest: +NORMALIZE_WHITESPACE,+ELLIPSIS |
120 | 107 | ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2 | 109 | ... # doctest: +IGNORE_EXCEPTION_MODULE_IN_PYTHON2 |
121 | 108 | Traceback (most recent call last): | 110 | Traceback (most recent call last): |
122 | diff --git a/lib/lp/archivepublisher/customupload.py b/lib/lp/archivepublisher/customupload.py | |||
123 | index 0c6a2c9..741211a 100644 | |||
124 | --- a/lib/lp/archivepublisher/customupload.py | |||
125 | +++ b/lib/lp/archivepublisher/customupload.py | |||
126 | @@ -27,7 +27,9 @@ from lp.archivepublisher.debversion import ( | |||
127 | 27 | Version as make_version, | 27 | Version as make_version, |
128 | 28 | VersionError, | 28 | VersionError, |
129 | 29 | ) | 29 | ) |
131 | 30 | from lp.archivepublisher.interfaces.archivegpgsigningkey import ISignableArchive | 30 | from lp.archivepublisher.interfaces.archivegpgsigningkey import ( |
132 | 31 | ISignableArchive, | ||
133 | 32 | ) | ||
134 | 31 | from lp.services.librarian.utils import copy_and_close | 33 | from lp.services.librarian.utils import copy_and_close |
135 | 32 | from lp.soyuz.interfaces.queue import ( | 34 | from lp.soyuz.interfaces.queue import ( |
136 | 33 | CustomUploadError, | 35 | CustomUploadError, |
137 | diff --git a/lib/lp/archivepublisher/tests/test_signing.py b/lib/lp/archivepublisher/tests/test_signing.py | |||
138 | index 8e01ca1..e57ae72 100644 | |||
139 | --- a/lib/lp/archivepublisher/tests/test_signing.py | |||
140 | +++ b/lib/lp/archivepublisher/tests/test_signing.py | |||
141 | @@ -1770,7 +1770,8 @@ class TestSigningUploadWithSigningService(TestSigningHelpers): | |||
142 | 1770 | '1.0/empty.sipl.sig', '1.0/control/sipl.x509', | 1770 | '1.0/empty.sipl.sig', '1.0/control/sipl.x509', |
143 | 1771 | '1.0/empty.fit.signed', '1.0/control/fit.crt', | 1771 | '1.0/empty.fit.signed', '1.0/control/fit.crt', |
144 | 1772 | '1.0/empty.cv2-kernel.sig', '1.0/control/cv2-kernel.pub', | 1772 | '1.0/empty.cv2-kernel.sig', '1.0/control/cv2-kernel.pub', |
146 | 1773 | '1.0/empty.android-kernel.sig', '1.0/control/android-kernel.x509', | 1773 | '1.0/empty.android-kernel.sig', |
147 | 1774 | '1.0/control/android-kernel.x509', | ||
148 | 1774 | ], tarball.getnames()) | 1775 | ], tarball.getnames()) |
149 | 1775 | self.assertEqual(0, self.signing_service_client.generate.call_count) | 1776 | self.assertEqual(0, self.signing_service_client.generate.call_count) |
150 | 1776 | keys = self.signing_keys | 1777 | keys = self.signing_keys |
151 | diff --git a/lib/lp/archiveuploader/tests/test_tagfiles.py b/lib/lp/archiveuploader/tests/test_tagfiles.py | |||
152 | index f5bf552..5c541d9 100755 | |||
153 | --- a/lib/lp/archiveuploader/tests/test_tagfiles.py | |||
154 | +++ b/lib/lp/archiveuploader/tests/test_tagfiles.py | |||
155 | @@ -119,9 +119,9 @@ class TestTagFileDebianPolicyCompat(unittest.TestCase): | |||
156 | 119 | Note: in the past, our parse_tagfile function left the leading | 119 | Note: in the past, our parse_tagfile function left the leading |
157 | 120 | '\n' in the parsed value, whereas it should not have. | 120 | '\n' in the parsed value, whereas it should not have. |
158 | 121 | 121 | ||
162 | 122 | For an example, | 122 | For an example, see |
163 | 123 | see http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Files | 123 | https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-files |
164 | 124 | """ | 124 | """ # noqa: E501 |
165 | 125 | 125 | ||
166 | 126 | expected_bytes = ( | 126 | expected_bytes = ( |
167 | 127 | b'f26bb9b29b1108e53139da3584a4dc92 1511 test75874_0.1.tar.gz\n ' | 127 | b'f26bb9b29b1108e53139da3584a4dc92 1511 test75874_0.1.tar.gz\n ' |
168 | @@ -142,8 +142,8 @@ class TestTagFileDebianPolicyCompat(unittest.TestCase): | |||
169 | 142 | """Apt-pkg preserves the blank-line indicator and does not strip | 142 | """Apt-pkg preserves the blank-line indicator and does not strip |
170 | 143 | leading spaces. | 143 | leading spaces. |
171 | 144 | 144 | ||
174 | 145 | See http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Description | 145 | See https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-description |
175 | 146 | """ | 146 | """ # noqa: E501 |
176 | 147 | expected_bytes = ( | 147 | expected_bytes = ( |
177 | 148 | b"Here's the single-line synopsis.\n" | 148 | b"Here's the single-line synopsis.\n" |
178 | 149 | b" Then there is the extended description which can\n" | 149 | b" Then there is the extended description which can\n" |
179 | diff --git a/lib/lp/code/mail/tests/test_codehandler.py b/lib/lp/code/mail/tests/test_codehandler.py | |||
180 | index 47dc486..55fd4a5 100644 | |||
181 | --- a/lib/lp/code/mail/tests/test_codehandler.py | |||
182 | +++ b/lib/lp/code/mail/tests/test_codehandler.py | |||
183 | @@ -229,7 +229,8 @@ class TestCodeHandler(TestCaseWithFactory): | |||
184 | 229 | Error message: | 229 | Error message: |
185 | 230 | 230 | ||
186 | 231 | The 'review' command expects any of the following arguments: | 231 | The 'review' command expects any of the following arguments: |
188 | 232 | abstain, approve, disapprove, needs-fixing, needs-info, needs-resubmitting | 232 | abstain, approve, disapprove, needs-fixing, needs-info, |
189 | 233 | needs-resubmitting | ||
190 | 233 | 234 | ||
191 | 234 | For example: | 235 | For example: |
192 | 235 | 236 | ||
193 | diff --git a/lib/lp/code/mail/tests/test_codeimport.py b/lib/lp/code/mail/tests/test_codeimport.py | |||
194 | index b37f538..03411f5 100644 | |||
195 | --- a/lib/lp/code/mail/tests/test_codeimport.py | |||
196 | +++ b/lib/lp/code/mail/tests/test_codeimport.py | |||
197 | @@ -150,7 +150,8 @@ class TestNewCodeImports(TestCaseWithFactory): | |||
198 | 150 | self.assertEqual( | 150 | self.assertEqual( |
199 | 151 | 'A new git code import has been requested ' | 151 | 'A new git code import has been requested ' |
200 | 152 | 'by Eric:\n' | 152 | 'by Eric:\n' |
202 | 153 | ' http://code.launchpad.test/~eric/foobuntu/manic/fooix/master\n' | 153 | ' http://code.launchpad.test/' |
203 | 154 | '~eric/foobuntu/manic/fooix/master\n' | ||
204 | 154 | 'from\n' | 155 | 'from\n' |
205 | 155 | ' git://git.example.com/fooix.git\n' | 156 | ' git://git.example.com/fooix.git\n' |
206 | 156 | '\n' | 157 | '\n' |
207 | diff --git a/lib/lp/code/model/tests/test_branch.py b/lib/lp/code/model/tests/test_branch.py | |||
208 | index 1649dc9..d69c650 100644 | |||
209 | --- a/lib/lp/code/model/tests/test_branch.py | |||
210 | +++ b/lib/lp/code/model/tests/test_branch.py | |||
211 | @@ -3273,8 +3273,8 @@ class TestGetBzrBranch(TestCaseWithFactory): | |||
212 | 3273 | self.useBzrBranches(direct_database=True) | 3273 | self.useBzrBranches(direct_database=True) |
213 | 3274 | 3274 | ||
214 | 3275 | def test_simple(self): | 3275 | def test_simple(self): |
217 | 3276 | # open_only_scheme returns the underlying bzr branch of a database branch in | 3276 | # open_only_scheme returns the underlying bzr branch of a database |
218 | 3277 | # the simple, unstacked, case. | 3277 | # branch in the simple, unstacked, case. |
219 | 3278 | db_branch, tree = self.create_branch_and_tree() | 3278 | db_branch, tree = self.create_branch_and_tree() |
220 | 3279 | # XXX: AaronBentley 2010-08-06 bug=614404: a bzr username is | 3279 | # XXX: AaronBentley 2010-08-06 bug=614404: a bzr username is |
221 | 3280 | # required to generate the revision-id. | 3280 | # required to generate the revision-id. |
222 | @@ -3335,7 +3335,8 @@ class TestBranchGetBlob(TestCaseWithFactory): | |||
223 | 3335 | [((branch.id, 'some-file-id'), {'rev': 'scanned-id'})], | 3335 | [((branch.id, 'some-file-id'), {'rev': 'scanned-id'})], |
224 | 3336 | hosting_fixture.getBlob.calls) | 3336 | hosting_fixture.getBlob.calls) |
225 | 3337 | key = ( | 3337 | key = ( |
227 | 3338 | 'bazaar.launchpad.test:bzr-file-list:%s:scanned-id:src' % branch.id) | 3338 | 'bazaar.launchpad.test:bzr-file-list:%s:scanned-id:src' % |
228 | 3339 | branch.id) | ||
229 | 3339 | self.assertEqual( | 3340 | self.assertEqual( |
230 | 3340 | json.dumps({'README.txt': 'some-file-id'}), | 3341 | json.dumps({'README.txt': 'some-file-id'}), |
231 | 3341 | getUtility(IMemcacheClient).get(key.encode('UTF-8'))) | 3342 | getUtility(IMemcacheClient).get(key.encode('UTF-8'))) |
232 | diff --git a/lib/lp/oci/tests/test_ocirecipe.py b/lib/lp/oci/tests/test_ocirecipe.py | |||
233 | index 95e30a8..c3bb8f8 100644 | |||
234 | --- a/lib/lp/oci/tests/test_ocirecipe.py | |||
235 | +++ b/lib/lp/oci/tests/test_ocirecipe.py | |||
236 | @@ -680,8 +680,8 @@ class TestOCIRecipe(OCIConfigHelperMixin, TestCaseWithFactory): | |||
237 | 680 | oci_project=oci_project, registrant=owner) | 680 | oci_project=oci_project, registrant=owner) |
238 | 681 | 681 | ||
239 | 682 | self.assertRaises( | 682 | self.assertRaises( |
242 | 683 | OCIProjectRecipeInvalid, another_oci_project.setOfficialRecipeStatus, | 683 | OCIProjectRecipeInvalid, |
243 | 684 | recipe, True) | 684 | another_oci_project.setOfficialRecipeStatus, recipe, True) |
244 | 685 | 685 | ||
245 | 686 | def test_permission_check_on_setOfficialRecipe(self): | 686 | def test_permission_check_on_setOfficialRecipe(self): |
246 | 687 | distro = self.factory.makeDistribution() | 687 | distro = self.factory.makeDistribution() |
247 | diff --git a/lib/lp/registry/model/distributionsourcepackage.py b/lib/lp/registry/model/distributionsourcepackage.py | |||
248 | index 863ae85..e7611be 100644 | |||
249 | --- a/lib/lp/registry/model/distributionsourcepackage.py | |||
250 | +++ b/lib/lp/registry/model/distributionsourcepackage.py | |||
251 | @@ -263,7 +263,8 @@ class DistributionSourcePackage(BugTargetBase, | |||
252 | 263 | self.distribution.all_distro_archive_ids), | 263 | self.distribution.all_distro_archive_ids), |
253 | 264 | SourcePackagePublishingHistory.sourcepackagerelease == | 264 | SourcePackagePublishingHistory.sourcepackagerelease == |
254 | 265 | SourcePackageRelease.id, | 265 | SourcePackageRelease.id, |
256 | 266 | SourcePackagePublishingHistory.sourcepackagename == self.sourcepackagename, | 266 | SourcePackagePublishingHistory.sourcepackagename == |
257 | 267 | self.sourcepackagename, | ||
258 | 267 | SourcePackageRelease.sourcepackagename == self.sourcepackagename, | 268 | SourcePackageRelease.sourcepackagename == self.sourcepackagename, |
259 | 268 | Cast(SourcePackageRelease.version, "text") == | 269 | Cast(SourcePackageRelease.version, "text") == |
260 | 269 | six.ensure_text(version), | 270 | six.ensure_text(version), |
261 | diff --git a/lib/lp/registry/tests/test_prf_walker.py b/lib/lp/registry/tests/test_prf_walker.py | |||
262 | index 9a1f32d..cf82294 100644 | |||
263 | --- a/lib/lp/registry/tests/test_prf_walker.py | |||
264 | +++ b/lib/lp/registry/tests/test_prf_walker.py | |||
265 | @@ -282,7 +282,7 @@ class HTTPWalker_ListDir(TestCase): | |||
266 | 282 | 282 | ||
267 | 283 | <address>Apache/2.2.3 (Unix) Server at <a href="mailto:ftp-adm@acc.umu.se">ftp.acc.umu.se</a> Port 80</address> | 283 | <address>Apache/2.2.3 (Unix) Server at <a href="mailto:ftp-adm@acc.umu.se">ftp.acc.umu.se</a> Port 80</address> |
268 | 284 | </body></html> | 284 | </body></html> |
270 | 285 | ''' | 285 | ''' # noqa: E501 |
271 | 286 | listing_url = 'http://ftp.gnome.org/pub/GNOME/sources/gnome-gpg/0.5/' | 286 | listing_url = 'http://ftp.gnome.org/pub/GNOME/sources/gnome-gpg/0.5/' |
272 | 287 | responses.add('GET', listing_url, body=content) | 287 | responses.add('GET', listing_url, body=content) |
273 | 288 | expected_filenames = [ | 288 | expected_filenames = [ |
274 | @@ -323,7 +323,7 @@ FTP Directory: <A HREF="/">ftp://ftp.gnome.org</A>/<A HREF="/pub/">pub</A>/<A HR | |||
275 | 323 | <ADDRESS> | 323 | <ADDRESS> |
276 | 324 | Generated Wed, 06 Sep 2006 11:04:02 GMT by squid (squid/2.5.STABLE12) | 324 | Generated Wed, 06 Sep 2006 11:04:02 GMT by squid (squid/2.5.STABLE12) |
277 | 325 | </ADDRESS></BODY></HTML> | 325 | </ADDRESS></BODY></HTML> |
279 | 326 | ''' | 326 | ''' # noqa: E501 |
280 | 327 | listing_url = 'ftp://ftp.gnome.org/pub/GNOME/sources/gnome-gpg/0.5/' | 327 | listing_url = 'ftp://ftp.gnome.org/pub/GNOME/sources/gnome-gpg/0.5/' |
281 | 328 | responses.add('GET', listing_url, body=content) | 328 | responses.add('GET', listing_url, body=content) |
282 | 329 | walker = HTTPWalker(listing_url, logging.getLogger()) | 329 | walker = HTTPWalker(listing_url, logging.getLogger()) |
283 | diff --git a/lib/lp/services/librarianserver/testing/server.py b/lib/lp/services/librarianserver/testing/server.py | |||
284 | index 20bfdfd..535d504 100644 | |||
285 | --- a/lib/lp/services/librarianserver/testing/server.py | |||
286 | +++ b/lib/lp/services/librarianserver/testing/server.py | |||
287 | @@ -161,20 +161,29 @@ class LibrarianServerFixture(TacTestSetup): | |||
288 | 161 | return | 161 | return |
289 | 162 | chunks = self.getLogChunks() | 162 | chunks = self.getLogChunks() |
290 | 163 | # A typical startup: upload, download, restricted up, restricted down. | 163 | # A typical startup: upload, download, restricted up, restricted down. |
305 | 164 | #2017-12-09 06:33:13+0530 [-] Loading /home/ubuntu/launchpad/lp-branches/devel/daemons/librarian.tac... | 164 | # (Line-wrapped to pacify flake8.) |
306 | 165 | #2017-12-09 06:33:19+0530 [-] Loaded. | 165 | # 2017-12-09 06:33:13+0530 [-] Loading .../daemons/librarian.tac... |
307 | 166 | #2017-12-09 06:33:19+0530 [-] twistd 16.5.0 (/home/ubuntu/launchpad/lp-branches/devel/env/bin/python2.7 2.7.12) starting up. | 166 | # 2017-12-09 06:33:19+0530 [-] Loaded. |
308 | 167 | #2017-12-09 06:33:19+0530 [-] reactor class: twisted.internet.epollreactor.EPollReactor. | 167 | # 2017-12-09 06:33:19+0530 [-] twistd 16.5.0 |
309 | 168 | #2017-12-09 06:33:19+0530 [-] FileUploadFactory starting on 39851 | 168 | # (.../env/bin/python2.7 2.7.12) starting up. |
310 | 169 | #2017-12-09 06:33:19+0530 [-] Starting factory <lp.services.librarianserver.libraryprotocol.FileUploadFactory instance at 0xf0ef80ac> | 169 | # 2017-12-09 06:33:19+0530 [-] reactor class: |
311 | 170 | #2017-12-09 06:33:19+0530 [-] Site starting on 45355 | 170 | # twisted.internet.epollreactor.EPollReactor. |
312 | 171 | #2017-12-09 06:33:19+0530 [-] Starting factory <twisted.web.server.Site instance at 0xf0ef848c> | 171 | # 2017-12-09 06:33:19+0530 [-] FileUploadFactory starting on 39851 |
313 | 172 | #2017-12-09 06:33:19+0530 [-] FileUploadFactory starting on 42150 | 172 | # 2017-12-09 06:33:19+0530 [-] Starting factory |
314 | 173 | #2017-12-09 06:33:19+0530 [-] Starting factory <lp.services.librarianserver.libraryprotocol.FileUploadFactory instance at 0xf0ef856c> | 173 | # <lp.services.librarianserver.libraryprotocol.FileUploadFactory |
315 | 174 | #2017-12-09 06:33:19+0530 [-] Site starting on 37341 | 174 | # instance at 0xf0ef80ac> |
316 | 175 | #2017-12-09 06:33:19+0530 [-] Starting factory <twisted.web.server.Site instance at 0xf0ef85ec> | 175 | # 2017-12-09 06:33:19+0530 [-] Site starting on 45355 |
317 | 176 | #2017-12-09 06:33:19+0530 [-] Not using upstream librarian | 176 | # 2017-12-09 06:33:19+0530 [-] Starting factory |
318 | 177 | #2017-12-09 06:33:19+0530 [-] daemon ready! | 177 | # <twisted.web.server.Site instance at 0xf0ef848c> |
319 | 178 | # 2017-12-09 06:33:19+0530 [-] FileUploadFactory starting on 42150 | ||
320 | 179 | # 2017-12-09 06:33:19+0530 [-] Starting factory | ||
321 | 180 | # <lp.services.librarianserver.libraryprotocol.FileUploadFactory | ||
322 | 181 | # instance at 0xf0ef856c> | ||
323 | 182 | # 2017-12-09 06:33:19+0530 [-] Site starting on 37341 | ||
324 | 183 | # 2017-12-09 06:33:19+0530 [-] Starting factory | ||
325 | 184 | # <twisted.web.server.Site instance at 0xf0ef85ec> | ||
326 | 185 | # 2017-12-09 06:33:19+0530 [-] Not using upstream librarian | ||
327 | 186 | # 2017-12-09 06:33:19+0530 [-] daemon ready! | ||
328 | 178 | self.upload_port = int(chunks[4].split()[-1]) | 187 | self.upload_port = int(chunks[4].split()[-1]) |
329 | 179 | self.download_port = int(chunks[6].split()[-1]) | 188 | self.download_port = int(chunks[6].split()[-1]) |
330 | 180 | self.restricted_upload_port = int(chunks[8].split()[-1]) | 189 | self.restricted_upload_port = int(chunks[8].split()[-1]) |
331 | diff --git a/lib/lp/soyuz/browser/archivesubscription.py b/lib/lp/soyuz/browser/archivesubscription.py | |||
332 | index f05a506..e78b7cd 100644 | |||
333 | --- a/lib/lp/soyuz/browser/archivesubscription.py | |||
334 | +++ b/lib/lp/soyuz/browser/archivesubscription.py | |||
335 | @@ -129,7 +129,8 @@ class ArchiveSubscribersView(LaunchpadFormView): | |||
336 | 129 | 129 | ||
337 | 130 | schema = IArchiveSubscriberUI | 130 | schema = IArchiveSubscriberUI |
338 | 131 | field_names = ['subscriber', 'date_expires', 'description'] | 131 | field_names = ['subscriber', 'date_expires', 'description'] |
340 | 132 | custom_widget_description = CustomWidgetFactory(TextWidget, displayWidth=40) | 132 | custom_widget_description = CustomWidgetFactory( |
341 | 133 | TextWidget, displayWidth=40) | ||
342 | 133 | custom_widget_date_expires = DateWidget | 134 | custom_widget_date_expires = DateWidget |
343 | 134 | custom_widget_subscriber = CustomWidgetFactory( | 135 | custom_widget_subscriber = CustomWidgetFactory( |
344 | 135 | PersonPickerWidget, header="Select the subscriber") | 136 | PersonPickerWidget, header="Select the subscriber") |
345 | diff --git a/lib/lp/soyuz/browser/tests/test_distroarchseries_webservice.py b/lib/lp/soyuz/browser/tests/test_distroarchseries_webservice.py | |||
346 | index 4555f60..1db0346 100644 | |||
347 | --- a/lib/lp/soyuz/browser/tests/test_distroarchseries_webservice.py | |||
348 | +++ b/lib/lp/soyuz/browser/tests/test_distroarchseries_webservice.py | |||
349 | @@ -198,7 +198,8 @@ class TestDistroArchSeriesWebservice(TestCaseWithFactory): | |||
350 | 198 | sha1_1 = hashlib.sha1(b'abcxyz').hexdigest() | 198 | sha1_1 = hashlib.sha1(b'abcxyz').hexdigest() |
351 | 199 | ws_das.setChroot(data=b'abcxyz', sha1sum=sha1_1) | 199 | ws_das.setChroot(data=b'abcxyz', sha1sum=sha1_1) |
352 | 200 | sha1_2 = hashlib.sha1(b'123456').hexdigest() | 200 | sha1_2 = hashlib.sha1(b'123456').hexdigest() |
354 | 201 | ws_das.setChroot(data=b'123456', sha1sum=sha1_2, image_type='LXD image') | 201 | ws_das.setChroot( |
355 | 202 | data=b'123456', sha1sum=sha1_2, image_type='LXD image') | ||
356 | 202 | chroot_image = das.getChroot(image_type=BuildBaseImageType.CHROOT) | 203 | chroot_image = das.getChroot(image_type=BuildBaseImageType.CHROOT) |
357 | 203 | self.assertEqual(sha1_1, chroot_image.content.sha1) | 204 | self.assertEqual(sha1_1, chroot_image.content.sha1) |
358 | 204 | lxd_image = das.getChroot(image_type=BuildBaseImageType.LXD) | 205 | lxd_image = das.getChroot(image_type=BuildBaseImageType.LXD) |
359 | diff --git a/lib/lp/soyuz/mail/tests/test_packageupload.py b/lib/lp/soyuz/mail/tests/test_packageupload.py | |||
360 | index c7378f9..1b59fd5 100644 | |||
361 | --- a/lib/lp/soyuz/mail/tests/test_packageupload.py | |||
362 | +++ b/lib/lp/soyuz/mail/tests/test_packageupload.py | |||
363 | @@ -243,7 +243,7 @@ class TestNotificationRequiringLibrarian(TestCaseWithFactory): | |||
364 | 243 | %s | 243 | %s |
365 | 244 | http://launchpad.test/~archiver/+archive/ubuntu/ppa | 244 | http://launchpad.test/~archiver/+archive/ubuntu/ppa |
366 | 245 | You are receiving this email because you made this upload. | 245 | You are receiving this email because you made this upload. |
368 | 246 | """ % "-- ") | 246 | """ % "-- ") # noqa: E501 |
369 | 247 | self.assertEqual(expected_body, body) | 247 | self.assertEqual(expected_body, body) |
370 | 248 | 248 | ||
371 | 249 | 249 | ||
372 | diff --git a/lib/lp/testing/keyserver/tests/test_web.py b/lib/lp/testing/keyserver/tests/test_web.py | |||
373 | index e11f86c..74c343b 100644 | |||
374 | --- a/lib/lp/testing/keyserver/tests/test_web.py | |||
375 | +++ b/lib/lp/testing/keyserver/tests/test_web.py | |||
376 | @@ -120,7 +120,7 @@ class TestWebResources(TestCase): | |||
377 | 120 | ... | 120 | ... |
378 | 121 | pub 1024D/DFD20543 2005-04-13 Sample Person (revoked) <sample.revoked@canonical.com> | 121 | pub 1024D/DFD20543 2005-04-13 Sample Person (revoked) <sample.revoked@canonical.com> |
379 | 122 | ... | 122 | ... |
381 | 123 | ''') | 123 | ''') # noqa: E501 |
382 | 124 | 124 | ||
383 | 125 | def test_content_lookup(self): | 125 | def test_content_lookup(self): |
384 | 126 | # A key content lookup form via GET. | 126 | # A key content lookup form via GET. |
385 | diff --git a/lib/lp/translations/scripts/tests/test_packaging_translations.py b/lib/lp/translations/scripts/tests/test_packaging_translations.py | |||
386 | index 77673b8..766c749 100644 | |||
387 | --- a/lib/lp/translations/scripts/tests/test_packaging_translations.py | |||
388 | +++ b/lib/lp/translations/scripts/tests/test_packaging_translations.py | |||
389 | @@ -39,7 +39,7 @@ class TestMergeTranslations(TestCaseWithFactory): | |||
390 | 39 | INFO Merging template 1/2. | 39 | INFO Merging template 1/2. |
391 | 40 | INFO Merging template 2/2. | 40 | INFO Merging template 2/2. |
392 | 41 | INFO Ran 1 TranslationMergeJob jobs. | 41 | INFO Ran 1 TranslationMergeJob jobs. |
394 | 42 | """)) | 42 | """)) # noqa: E501 |
395 | 43 | self.assertThat(stderr, matcher) | 43 | self.assertThat(stderr, matcher) |
396 | 44 | self.assertEqual('', stdout) | 44 | self.assertEqual('', stdout) |
397 | 45 | 45 | ||
398 | @@ -57,6 +57,6 @@ class TestMergeTranslations(TestCaseWithFactory): | |||
399 | 57 | INFO Splitting .* and .* in Ubuntu Distroseries.* | 57 | INFO Splitting .* and .* in Ubuntu Distroseries.* |
400 | 58 | INFO 1 entries split. | 58 | INFO 1 entries split. |
401 | 59 | INFO Ran 1 TranslationSplitJob jobs. | 59 | INFO Ran 1 TranslationSplitJob jobs. |
403 | 60 | """)) | 60 | """)) # noqa: E501 |
404 | 61 | self.assertThat(stderr, matcher) | 61 | self.assertThat(stderr, matcher) |
405 | 62 | self.assertEqual('', stdout) | 62 | self.assertEqual('', stdout) |
406 | diff --git a/lib/lp/translations/utilities/gettext_po_parser.py b/lib/lp/translations/utilities/gettext_po_parser.py | |||
407 | index 925af2d..4756050 100644 | |||
408 | --- a/lib/lp/translations/utilities/gettext_po_parser.py | |||
409 | +++ b/lib/lp/translations/utilities/gettext_po_parser.py | |||
410 | @@ -801,7 +801,7 @@ class POParser(object): | |||
411 | 801 | Traceback (most recent call last): | 801 | Traceback (most recent call last): |
412 | 802 | ... | 802 | ... |
413 | 803 | lp.translations.interfaces.translationimporter.TranslationFormatSyntaxError: Extra content found after string: (x) | 803 | lp.translations.interfaces.translationimporter.TranslationFormatSyntaxError: Extra content found after string: (x) |
415 | 804 | """ | 804 | """ # noqa: E501 |
416 | 805 | if self._escaped_line_break: | 805 | if self._escaped_line_break: |
417 | 806 | # Continuing a line after an escaped newline. Strip indentation. | 806 | # Continuing a line after an escaped newline. Strip indentation. |
418 | 807 | string = string.lstrip() | 807 | string = string.lstrip() |
419 | diff --git a/lib/lp/translations/utilities/tests/test_gettext_po_exporter.py b/lib/lp/translations/utilities/tests/test_gettext_po_exporter.py | |||
420 | index 7bf5479..916965e 100644 | |||
421 | --- a/lib/lp/translations/utilities/tests/test_gettext_po_exporter.py | |||
422 | +++ b/lib/lp/translations/utilities/tests/test_gettext_po_exporter.py | |||
423 | @@ -133,7 +133,7 @@ class GettextPOExporterTestCase(TestCaseWithFactory): | |||
424 | 133 | 133 | ||
425 | 134 | #~ msgid "zot" | 134 | #~ msgid "zot" |
426 | 135 | #~ msgstr "zat" | 135 | #~ msgstr "zat" |
428 | 136 | ''').encode('UTF-8') | 136 | ''').encode('UTF-8') # noqa: E501 |
429 | 137 | cy_translation_file = self.parser.parse(pofile_cy) | 137 | cy_translation_file = self.parser.parse(pofile_cy) |
430 | 138 | cy_translation_file.is_template = False | 138 | cy_translation_file.is_template = False |
431 | 139 | cy_translation_file.language_code = 'cy' | 139 | cy_translation_file.language_code = 'cy' |
432 | diff --git a/lib/lp/translations/utilities/tests/test_xpi_po_exporter.py b/lib/lp/translations/utilities/tests/test_xpi_po_exporter.py | |||
433 | index 78ab7cc..a28be12 100644 | |||
434 | --- a/lib/lp/translations/utilities/tests/test_xpi_po_exporter.py | |||
435 | +++ b/lib/lp/translations/utilities/tests/test_xpi_po_exporter.py | |||
436 | @@ -80,7 +80,7 @@ test_xpi_header = dedent(u'''\ | |||
437 | 80 | </em:targetApplication> | 80 | </em:targetApplication> |
438 | 81 | </Description> | 81 | </Description> |
439 | 82 | </RDF> | 82 | </RDF> |
441 | 83 | ''') | 83 | ''') # noqa: E501 |
442 | 84 | test_xpi_messages = [ | 84 | test_xpi_messages = [ |
443 | 85 | (u'foozilla.menu.title', u'main/subdir/test2.dtd', | 85 | (u'foozilla.menu.title', u'main/subdir/test2.dtd', |
444 | 86 | u'jar:chrome/en-US.jar!/subdir/test2.dtd', u'MENU', | 86 | u'jar:chrome/en-US.jar!/subdir/test2.dtd', u'MENU', |
445 | @@ -385,7 +385,7 @@ class XPIPOExporterTestCase(TestCase): | |||
446 | 385 | msgctxt "main/test1.properties" | 385 | msgctxt "main/test1.properties" |
447 | 386 | msgid "Дан=Day" | 386 | msgid "Дан=Day" |
448 | 387 | msgstr "" | 387 | msgstr "" |
450 | 388 | ''').strip() | 388 | ''').strip() # noqa: E501 |
451 | 389 | 389 | ||
452 | 390 | output = storage.export().read().decode("utf-8") | 390 | output = storage.export().read().decode("utf-8") |
453 | 391 | self._compareExpectedAndExported(expected_template, output) | 391 | self._compareExpectedAndExported(expected_template, output) |
454 | diff --git a/scripts/update-stacked-on.py b/scripts/update-stacked-on.py | |||
455 | index 1648ec9..85d4df3 100755 | |||
456 | --- a/scripts/update-stacked-on.py | |||
457 | +++ b/scripts/update-stacked-on.py | |||
458 | @@ -6,7 +6,8 @@ | |||
459 | 6 | """Update stacked_on_location for all Bazaar branches. | 6 | """Update stacked_on_location for all Bazaar branches. |
460 | 7 | 7 | ||
461 | 8 | Expects standard input of: | 8 | Expects standard input of: |
463 | 9 | '<id> <branch_type> <unique_name> <stacked_on_id> <stacked_on_unique_name>\n'. | 9 | '<id> <branch_type> <unique_name> <stacked_on_id> |
464 | 10 | <stacked_on_unique_name>\n'. | ||
465 | 10 | 11 | ||
466 | 11 | Such input can be provided using "get-stacked-on-branches.py". | 12 | Such input can be provided using "get-stacked-on-branches.py". |
467 | 12 | 13 | ||
468 | diff --git a/test_on_merge.py b/test_on_merge.py | |||
469 | index a1cd0e2..59fa01b 100755 | |||
470 | --- a/test_on_merge.py | |||
471 | +++ b/test_on_merge.py | |||
472 | @@ -179,7 +179,8 @@ def run_test_process(): | |||
473 | 179 | # bzr. -- mbp 20100924 | 179 | # bzr. -- mbp 20100924 |
474 | 180 | while True: | 180 | while True: |
475 | 181 | try: | 181 | try: |
477 | 182 | rlist, wlist, xlist = select.select(open_readers, [], [], TIMEOUT) | 182 | rlist, wlist, xlist = select.select( |
478 | 183 | open_readers, [], [], TIMEOUT) | ||
479 | 183 | break | 184 | break |
480 | 184 | except select.error as e: | 185 | except select.error as e: |
481 | 185 | # nb: select.error doesn't expose a named 'errno' attribute, | 186 | # nb: select.error doesn't expose a named 'errno' attribute, |
482 | diff --git a/utilities/community-contributions.py b/utilities/community-contributions.py | |||
483 | index 10f07e9..d9c59e2 100755 | |||
484 | --- a/utilities/community-contributions.py | |||
485 | +++ b/utilities/community-contributions.py | |||
486 | @@ -104,111 +104,112 @@ CANONICAL_ADDR = wiki_encode(u" {_AT_} canonical.com") | |||
487 | 104 | 104 | ||
488 | 105 | # People on the Canonical Launchpad team. | 105 | # People on the Canonical Launchpad team. |
489 | 106 | known_canonical_lp_devs = \ | 106 | known_canonical_lp_devs = \ |
595 | 107 | [wiki_encode(x) for x in (u'Aaron Bentley', | 107 | [wiki_encode(x) for x in ( |
596 | 108 | u'Abel Deuring', | 108 | u'Aaron Bentley', |
597 | 109 | u'Andrew Bennetts', | 109 | u'Abel Deuring', |
598 | 110 | u'Barry Warsaw', | 110 | u'Andrew Bennetts', |
599 | 111 | u'Benji York', | 111 | u'Barry Warsaw', |
600 | 112 | u'Bjorn Tillenius', | 112 | u'Benji York', |
601 | 113 | u'Björn Tillenius', | 113 | u'Bjorn Tillenius', |
602 | 114 | u'Brad Bollenbach', | 114 | u'Björn Tillenius', |
603 | 115 | u'Brad Crittenden', | 115 | u'Brad Bollenbach', |
604 | 116 | u'Brian Fromme', | 116 | u'Brad Crittenden', |
605 | 117 | u'Canonical.com Patch Queue Manager', | 117 | u'Brian Fromme', |
606 | 118 | u'Carlos Perello Marin', | 118 | u'Canonical.com Patch Queue Manager', |
607 | 119 | u'Carlos Perelló Marín', | 119 | u'Carlos Perello Marin', |
608 | 120 | u'carlos.perello {_AT_} canonical.com', | 120 | u'Carlos Perelló Marín', |
609 | 121 | u'Celso Providelo', | 121 | u'carlos.perello {_AT_} canonical.com', |
610 | 122 | u'Christian Reis', | 122 | u'Celso Providelo', |
611 | 123 | u'Christian Robottom Reis', | 123 | u'Christian Reis', |
612 | 124 | u'kiko {_AT_} beetle', | 124 | u'Christian Robottom Reis', |
613 | 125 | u'Colin Watson', | 125 | u'kiko {_AT_} beetle', |
614 | 126 | u'Curtis Hovey', | 126 | u'Colin Watson', |
615 | 127 | u'Dafydd Harries', | 127 | u'Curtis Hovey', |
616 | 128 | u'Danilo Šegan', | 128 | u'Dafydd Harries', |
617 | 129 | u'Danilo Segan', | 129 | u'Danilo Šegan', |
618 | 130 | u'david <david {_AT_} marvin>', | 130 | u'Danilo Segan', |
619 | 131 | u'Данило Шеган', | 131 | u'david <david {_AT_} marvin>', |
620 | 132 | u'данило шеган', | 132 | u'Данило Шеган', |
621 | 133 | u'Daniel Silverstone', | 133 | u'данило шеган', |
622 | 134 | u'David Allouche', | 134 | u'Daniel Silverstone', |
623 | 135 | u'Deryck Hodge', | 135 | u'David Allouche', |
624 | 136 | u'Diogo Matsubara', | 136 | u'Deryck Hodge', |
625 | 137 | u'Edwin Grubbs', | 137 | u'Diogo Matsubara', |
626 | 138 | u'Elliot Murphy', | 138 | u'Edwin Grubbs', |
627 | 139 | u'Firstname Lastname', | 139 | u'Elliot Murphy', |
628 | 140 | u'Francesco Banconi', | 140 | u'Firstname Lastname', |
629 | 141 | u'Francis Lacoste', | 141 | u'Francesco Banconi', |
630 | 142 | u'Francis J. Lacoste', | 142 | u'Francis Lacoste', |
631 | 143 | u'Gary Poster', | 143 | u'Francis J. Lacoste', |
632 | 144 | u'Gavin Panella', | 144 | u'Gary Poster', |
633 | 145 | u'Graham Binns', | 145 | u'Gavin Panella', |
634 | 146 | u'Guilherme Salgado', | 146 | u'Graham Binns', |
635 | 147 | u'Henning Eggers', | 147 | u'Guilherme Salgado', |
636 | 148 | u'Herb McNew', | 148 | u'Henning Eggers', |
637 | 149 | u'Huw Wilkins', | 149 | u'Herb McNew', |
638 | 150 | u'Ian Booth', | 150 | u'Huw Wilkins', |
639 | 151 | u'James Henstridge', | 151 | u'Ian Booth', |
640 | 152 | u'j.c.sackett', | 152 | u'James Henstridge', |
641 | 153 | u'jc', | 153 | u'j.c.sackett', |
642 | 154 | u'Jelmer Vernooij', | 154 | u'jc', |
643 | 155 | u'Jeroen Vermeulen', | 155 | u'Jelmer Vernooij', |
644 | 156 | u'Jeroen T. Vermeulen', | 156 | u'Jeroen Vermeulen', |
645 | 157 | u'Joey Stanford', | 157 | u'Jeroen T. Vermeulen', |
646 | 158 | u'Jon Sackett', | 158 | u'Joey Stanford', |
647 | 159 | u'Jonathan Lange', | 159 | u'Jon Sackett', |
648 | 160 | u'j.c.sackett', | 160 | u'Jonathan Lange', |
649 | 161 | u'jonathan.sackett {_AT_} canonical.com', | 161 | u'j.c.sackett', |
650 | 162 | u'jml {_AT_} canonical.com', | 162 | u'jonathan.sackett {_AT_} canonical.com', |
651 | 163 | u'jml {_AT_} mumak.net', | 163 | u'jml {_AT_} canonical.com', |
652 | 164 | u'Jonathan Knowles', | 164 | u'jml {_AT_} mumak.net', |
653 | 165 | u'jonathan.knowles {_AT_} canonical.com', | 165 | u'Jonathan Knowles', |
654 | 166 | u'Julian Edwards', | 166 | u'jonathan.knowles {_AT_} canonical.com', |
655 | 167 | u'Karl Fogel', | 167 | u'Julian Edwards', |
656 | 168 | u'Kit Randel', | 168 | u'Karl Fogel', |
657 | 169 | u'Launch Pad', | 169 | u'Kit Randel', |
658 | 170 | u'Launchpad APA', | 170 | u'Launch Pad', |
659 | 171 | u'Launchpad Developers', | 171 | u'Launchpad APA', |
660 | 172 | u'Launchpad Patch Queue Manager', | 172 | u'Launchpad Developers', |
661 | 173 | u'Launchpad PQM Bot', | 173 | u'Launchpad Patch Queue Manager', |
662 | 174 | u'Leonard Richardson', | 174 | u'Launchpad PQM Bot', |
663 | 175 | u'Malcolm Cleaton', | 175 | u'Leonard Richardson', |
664 | 176 | u'Maris Fogels', | 176 | u'Malcolm Cleaton', |
665 | 177 | u'Mark Shuttleworth', | 177 | u'Maris Fogels', |
666 | 178 | u'Martin Albisetti', | 178 | u'Mark Shuttleworth', |
667 | 179 | u'Matt Zimmerman', | 179 | u'Martin Albisetti', |
668 | 180 | u'Matthew Paul Thomas', | 180 | u'Matt Zimmerman', |
669 | 181 | u'Matthew Thomas', | 181 | u'Matthew Paul Thomas', |
670 | 182 | u'Matthew Revell', | 182 | u'Matthew Thomas', |
671 | 183 | u'matthew.revell {_AT_} canonical.com', | 183 | u'Matthew Revell', |
672 | 184 | u'Michael Hudson', | 184 | u'matthew.revell {_AT_} canonical.com', |
673 | 185 | u'michael.hudson {_AT_} canonical.com', | 185 | u'Michael Hudson', |
674 | 186 | u'Michael Nelson', | 186 | u'michael.hudson {_AT_} canonical.com', |
675 | 187 | u'Muharem Hrnjadovic', | 187 | u'Michael Nelson', |
676 | 188 | u'muharem {_AT_} canonical.com', | 188 | u'Muharem Hrnjadovic', |
677 | 189 | u'Patch Queue Manager', | 189 | u'muharem {_AT_} canonical.com', |
678 | 190 | u'Paul Hummer', | 190 | u'Patch Queue Manager', |
679 | 191 | u'Raphael Badin', | 191 | u'Paul Hummer', |
680 | 192 | u'Raphaël Badin', | 192 | u'Raphael Badin', |
681 | 193 | u'Richard Harding', | 193 | u'Raphaël Badin', |
682 | 194 | u'Rick Harding', | 194 | u'Richard Harding', |
683 | 195 | u'Rick harding', | 195 | u'Rick Harding', |
684 | 196 | u'Robert Collins', | 196 | u'Rick harding', |
685 | 197 | u'root <root {_AT_} ubuntu>', | 197 | u'Robert Collins', |
686 | 198 | u'rvb', | 198 | u'root <root {_AT_} ubuntu>', |
687 | 199 | u'Stuart Bishop', | 199 | u'rvb', |
688 | 200 | u'Steve Alexander', | 200 | u'Stuart Bishop', |
689 | 201 | u'Steve Kowalik', | 201 | u'Steve Alexander', |
690 | 202 | u'Steve McInerney', | 202 | u'Steve Kowalik', |
691 | 203 | u'<steve {_AT_} stedee.id.au>', | 203 | u'Steve McInerney', |
692 | 204 | u'test {_AT_} canonical.com', | 204 | u'<steve {_AT_} stedee.id.au>', |
693 | 205 | u'Tom Haddon', | 205 | u'test {_AT_} canonical.com', |
694 | 206 | u'Tim Penhey', | 206 | u'Tom Haddon', |
695 | 207 | u'Tom Berger', | 207 | u'Tim Penhey', |
696 | 208 | u'ubuntu <ubuntu {_AT_} lp-dev>', | 208 | u'Tom Berger', |
697 | 209 | u'Ursula Junque', | 209 | u'ubuntu <ubuntu {_AT_} lp-dev>', |
698 | 210 | u'William Grant <william.grant {_AT_} canonical.com>', | 210 | u'Ursula Junque', |
699 | 211 | )] | 211 | u'William Grant <william.grant {_AT_} canonical.com>', |
700 | 212 | )] | ||
701 | 212 | 213 | ||
702 | 213 | # People known to work for Canonical but not on the Launchpad team. | 214 | # People known to work for Canonical but not on the Launchpad team. |
703 | 214 | # Anyone with "@canonical.com" in their email address is considered to | 215 | # Anyone with "@canonical.com" in their email address is considered to |
704 | @@ -641,7 +642,7 @@ generates this page is \ | |||
705 | 641 | [[https://bazaar.launchpad.net/%7Elaunchpad-pqm/launchpad/devel/annotate/head%3A/utilities/community-contributions.py|utilities/community-contributions.py]] \ | 642 | [[https://bazaar.launchpad.net/%7Elaunchpad-pqm/launchpad/devel/annotate/head%3A/utilities/community-contributions.py|utilities/community-contributions.py]] \ |
706 | 642 | in the Launchpad tree.''-~ | 643 | in the Launchpad tree.''-~ |
707 | 643 | 644 | ||
709 | 644 | """ | 645 | """ # noqa: E501 |
710 | 645 | 646 | ||
711 | 646 | 647 | ||
712 | 647 | def main(): | 648 | def main(): |
Looks good!