Merge ~cjwatson/launchpad:codespell-testing-translations-xmlrpc into launchpad:master

Proposed by Colin Watson
Status: Merged
Approved by: Colin Watson
Approved revision: eb987c954f3bfa40b66073492531b4227131c98e
Merge reported by: Otto Co-Pilot
Merged at revision: not available
Proposed branch: ~cjwatson/launchpad:codespell-testing-translations-xmlrpc
Merge into: launchpad:master
Diff against target: 604 lines (+52/-52)
39 files modified
lib/lp/testing/factory.py (+3/-3)
lib/lp/testing/layers.py (+1/-1)
lib/lp/testing/matchers.py (+4/-4)
lib/lp/testing/pages.py (+1/-1)
lib/lp/testing/tests/test_fixture.py (+2/-2)
lib/lp/testing/tests/test_layers_functional.py (+1/-1)
lib/lp/testing/tests/test_login.py (+1/-1)
lib/lp/testing/tests/test_testcase.py (+1/-1)
lib/lp/testing/yuixhr.py (+1/-1)
lib/lp/translations/browser/distribution.py (+1/-1)
lib/lp/translations/browser/distributionsourcepackage.py (+1/-1)
lib/lp/translations/browser/language.py (+1/-1)
lib/lp/translations/browser/person.py (+1/-1)
lib/lp/translations/browser/tests/test_pofile_view.py (+1/-1)
lib/lp/translations/browser/tests/test_sharing_details.py (+1/-1)
lib/lp/translations/browser/tests/test_sharing_information.py (+1/-1)
lib/lp/translations/browser/translationtemplatesbuild.py (+2/-2)
lib/lp/translations/interfaces/pofiletranslator.py (+1/-1)
lib/lp/translations/interfaces/potemplate.py (+1/-1)
lib/lp/translations/interfaces/potmsgset.py (+1/-1)
lib/lp/translations/interfaces/translationimportqueue.py (+1/-1)
lib/lp/translations/interfaces/translationmessage.py (+1/-1)
lib/lp/translations/model/pofile.py (+1/-1)
lib/lp/translations/model/translationimportqueue.py (+1/-1)
lib/lp/translations/model/translationsharingjob.py (+2/-2)
lib/lp/translations/tests/test_pofile.py (+2/-2)
lib/lp/translations/tests/test_potemplate.py (+1/-1)
lib/lp/translations/tests/test_potmsgset.py (+1/-1)
lib/lp/translations/tests/test_productserieslanguage.py (+2/-2)
lib/lp/translations/tests/test_setcurrenttranslation.py (+1/-1)
lib/lp/translations/tests/test_translationmessage.py (+1/-1)
lib/lp/translations/tests/test_translations_to_review.py (+1/-1)
lib/lp/translations/utilities/gettext_po_parser.py (+1/-1)
lib/lp/translations/utilities/rosettastats.py (+4/-4)
lib/lp/translations/utilities/tests/helpers.py (+1/-1)
lib/lp/translations/utilities/tests/test_file_importer.py (+1/-1)
lib/lp/translations/utilities/translation_export.py (+1/-1)
lib/lp/translations/vocabularies.py (+1/-1)
lib/lp/xmlrpc/tests/test_private_xmlrpc.py (+1/-1)
Reviewer Review Type Date Requested Status
Colin Watson (community) Approve
Review via email: mp+438336@code.launchpad.net

Commit message

Fix spelling errors in lp.{testing,translations,xmlrpc}

To post a comment you must log in.
Revision history for this message
Colin Watson (cjwatson) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/lib/lp/testing/factory.py b/lib/lp/testing/factory.py
2index 54ab372..098b17f 100644
3--- a/lib/lp/testing/factory.py
4+++ b/lib/lp/testing/factory.py
5@@ -676,7 +676,7 @@ class LaunchpadObjectFactory(ObjectFactory):
6 del naked_person
7
8 if selfgenerated_bugnotifications:
9- # Set it explicitely only when True because the default
10+ # Set it explicitly only when True because the default
11 # is False.
12 person.selfgenerated_bugnotifications = True
13
14@@ -2940,13 +2940,13 @@ class LaunchpadObjectFactory(ObjectFactory):
15 )
16
17 def makePackageCodeImport(self, sourcepackage=None, **kwargs):
18- """Make a code import targetting a sourcepackage."""
19+ """Make a code import targeting a sourcepackage."""
20 if sourcepackage is None:
21 sourcepackage = self.makeSourcePackage()
22 return self.makeCodeImport(context=sourcepackage, **kwargs)
23
24 def makeProductCodeImport(self, product=None, **kwargs):
25- """Make a code import targetting a product."""
26+ """Make a code import targeting a product."""
27 if product is None:
28 product = self.makeProduct()
29 return self.makeCodeImport(context=product, **kwargs)
30diff --git a/lib/lp/testing/layers.py b/lib/lp/testing/layers.py
31index 1e27824..df1c60c 100644
32--- a/lib/lp/testing/layers.py
33+++ b/lib/lp/testing/layers.py
34@@ -762,7 +762,7 @@ class DatabaseLayer(BaseLayer):
35 )
36 # Reset/bring up the db - makes it available for either the next test,
37 # or a subordinate layer which builds on the db. This wastes one setup
38- # per db layer teardown per run, but thats tolerable.
39+ # per db layer teardown per run, but that's tolerable.
40 cls._db_fixture.setUp()
41
42 @classmethod
43diff --git a/lib/lp/testing/matchers.py b/lib/lp/testing/matchers.py
44index 47e7c92..ad089c0 100644
45--- a/lib/lp/testing/matchers.py
46+++ b/lib/lp/testing/matchers.py
47@@ -59,9 +59,9 @@ class BrowsesWithQueryLimit(Matcher):
48 def __init__(self, query_limit, user, view_name=None, **options):
49 """Create a BrowsesWithQueryLimit checking for limit query_limit.
50
51- :param query_limit: The number of queries permited for the page.
52+ :param query_limit: The number of queries permitted for the page.
53 :param user: The user to use to render the page.
54- :param view_name: The name of the view to use to render tha page.
55+ :param view_name: The name of the view to use to render the page.
56 :param options: Additional options for view generation eg rootsite.
57 """
58 self.query_limit = query_limit
59@@ -442,7 +442,7 @@ class MatchesTagText(Matcher):
60 return "matches widget %r text" % self.tag_id
61
62 def match(self, matchee):
63- # Here to avoid circular dependancies.
64+ # Here to avoid circular dependencies.
65 from lp.testing.pages import extract_text
66
67 widgets = self.soup_content.find_all(id=self.tag_id)
68@@ -467,7 +467,7 @@ class MatchesPickerText(Matcher):
69 return "matches widget %r text" % self.widget_id
70
71 def match(self, matchee):
72- # Here to avoid circular dependancies.
73+ # Here to avoid circular dependencies.
74 from lp.testing.pages import extract_text
75
76 widgets = self.soup_content.find_all(id=self.widget_id)
77diff --git a/lib/lp/testing/pages.py b/lib/lp/testing/pages.py
78index 0a032f4..c01071d 100644
79--- a/lib/lp/testing/pages.py
80+++ b/lib/lp/testing/pages.py
81@@ -1010,7 +1010,7 @@ def setUpGlobs(test):
82 )
83
84 test.globs["ANONYMOUS"] = ANONYMOUS
85- # If a unicode URL is opened by the test browswer, later navigation
86+ # If a unicode URL is opened by the test browser, later navigation
87 # raises ValueError exceptions in /usr/lib/python2.4/Cookie.py
88 test.globs["canonical_url"] = safe_canonical_url
89 test.globs["factory"] = LaunchpadObjectFactory()
90diff --git a/lib/lp/testing/tests/test_fixture.py b/lib/lp/testing/tests/test_fixture.py
91index 1fc6328..d258341 100644
92--- a/lib/lp/testing/tests/test_fixture.py
93+++ b/lib/lp/testing/tests/test_fixture.py
94@@ -175,7 +175,7 @@ class TestPGBouncerFixtureWithCA(TestCase):
95 with PGBouncerFixture() as pgbouncer:
96 assert self.is_connected()
97
98- # pgbouncer is transparant. To confirm we are connecting via
99+ # pgbouncer is transparent. To confirm we are connecting via
100 # pgbouncer, we need to shut it down and confirm our
101 # connections are dropped.
102 pgbouncer.stop()
103@@ -196,7 +196,7 @@ class TestPGBouncerFixtureWithCA(TestCase):
104 with PGBouncerFixture() as pgbouncer:
105 assert self.is_connected()
106
107- # pgbouncer is transparant. To confirm we are connecting via
108+ # pgbouncer is transparent. To confirm we are connecting via
109 # pgbouncer, we need to shut it down and confirm our
110 # connections are dropped.
111 pgbouncer.stop()
112diff --git a/lib/lp/testing/tests/test_layers_functional.py b/lib/lp/testing/tests/test_layers_functional.py
113index 84bca68..88a9079 100644
114--- a/lib/lp/testing/tests/test_layers_functional.py
115+++ b/lib/lp/testing/tests/test_layers_functional.py
116@@ -318,7 +318,7 @@ class LibrarianLayerTest(TestCase, TestWithFixtures):
117
118
119 class LibrarianResetTestCase(TestCase):
120- """Our page tests need to run multple tests without destroying
121+ """Our page tests need to run multiple tests without destroying
122 the librarian database in between.
123 """
124
125diff --git a/lib/lp/testing/tests/test_login.py b/lib/lp/testing/tests/test_login.py
126index 3cc8464..4824a77 100644
127--- a/lib/lp/testing/tests/test_login.py
128+++ b/lib/lp/testing/tests/test_login.py
129@@ -220,7 +220,7 @@ class TestLoginHelpers(TestCaseWithFactory):
130 self.assertLoggedOut()
131
132 def test_person_logged_in_restores_person_even_when_raises(self):
133- # Once outside of the person_logged_in context, the originially
134+ # Once outside of the person_logged_in context, the originally
135 # logged-in person is re-logged in.
136 a = self.factory.makePerson()
137 login_as(a)
138diff --git a/lib/lp/testing/tests/test_testcase.py b/lib/lp/testing/tests/test_testcase.py
139index a32d16c..9031f30 100644
140--- a/lib/lp/testing/tests/test_testcase.py
141+++ b/lib/lp/testing/tests/test_testcase.py
142@@ -87,7 +87,7 @@ class TestCaptureOops(TestCaseWithFactory):
143 content = io.BytesIO()
144 content.writelines(self.getDetails()["oops-0"].iter_bytes())
145 content.seek(0)
146- # Safety net: ensure that no autocasts have occured even on Python 2.6
147+ # Safety net: ensure that no autocasts have occurred even on Python 2.6
148 # which is slightly better.
149 self.assertIsInstance(content.getvalue(), bytes)
150 # In tests it should be rfc822 for easy reading.
151diff --git a/lib/lp/testing/yuixhr.py b/lib/lp/testing/yuixhr.py
152index 746105a..683a14f 100644
153--- a/lib/lp/testing/yuixhr.py
154+++ b/lib/lp/testing/yuixhr.py
155@@ -264,7 +264,7 @@ class YUITestFixtureControllerView(LaunchpadView):
156 return
157 path, ext = os.path.splitext(self.traversed_path)
158 # We need to route requests with build/js in them to the combo loader
159- # js files so we can load those to bootstap.
160+ # js files so we can load those to bootstrap.
161 if path.startswith("build/js"):
162 self.action = self.COMBOFILE
163 else:
164diff --git a/lib/lp/translations/browser/distribution.py b/lib/lp/translations/browser/distribution.py
165index 6488042..8cba72b 100644
166--- a/lib/lp/translations/browser/distribution.py
167+++ b/lib/lp/translations/browser/distribution.py
168@@ -88,7 +88,7 @@ class DistributionView(LaunchpadView):
169 def translation_focus(self):
170 """Return the IDistroSeries where the translators should work.
171
172- If ther isn't a defined focus, we return latest series.
173+ If there isn't a defined focus, we return latest series.
174 """
175 if self.context.translation_focus is None:
176 return self.context.currentseries
177diff --git a/lib/lp/translations/browser/distributionsourcepackage.py b/lib/lp/translations/browser/distributionsourcepackage.py
178index 3b6893c..6ec7c98 100644
179--- a/lib/lp/translations/browser/distributionsourcepackage.py
180+++ b/lib/lp/translations/browser/distributionsourcepackage.py
181@@ -21,7 +21,7 @@ class DistributionSourcePackageView(LaunchpadView):
182 def translation_focus(self):
183 """Return the ISourcePackage where the translators should work.
184
185- If ther isn't a defined focus, we return latest series.
186+ If there isn't a defined focus, we return latest series.
187 """
188 series = (
189 self.context.distribution.translation_focus
190diff --git a/lib/lp/translations/browser/language.py b/lib/lp/translations/browser/language.py
191index 7a0b15a..1b7e5b0 100644
192--- a/lib/lp/translations/browser/language.py
193+++ b/lib/lp/translations/browser/language.py
194@@ -262,7 +262,7 @@ class LanguageView(TranslationsMixin, LaunchpadView):
195 else:
196 translator_target = translator
197
198- # Add translator only if it was not previouly added as a
199+ # Add translator only if it was not previously added as a
200 # merged account
201 if translator_target not in top_translators:
202 top_translators.append(translator_target)
203diff --git a/lib/lp/translations/browser/person.py b/lib/lp/translations/browser/person.py
204index f7a5037..64fd9fc 100644
205--- a/lib/lp/translations/browser/person.py
206+++ b/lib/lp/translations/browser/person.py
207@@ -346,7 +346,7 @@ class PersonTranslationView(LaunchpadView):
208 ):
209 """Add `new_targets` to `existing_targets` list.
210
211- This is for use in showing top-10 ists of translations a user
212+ This is for use in showing top-10 lists of translations a user
213 should help review or complete.
214
215 :param existing_targets: Translation targets that are already
216diff --git a/lib/lp/translations/browser/tests/test_pofile_view.py b/lib/lp/translations/browser/tests/test_pofile_view.py
217index f68f2ff..4b0a90f 100644
218--- a/lib/lp/translations/browser/tests/test_pofile_view.py
219+++ b/lib/lp/translations/browser/tests/test_pofile_view.py
220@@ -87,7 +87,7 @@ class TestQueryCount(TestCaseWithFactory):
221 class TestPOFileTranslateViewInvalidFiltering(TestCaseWithFactory):
222 """Test how POFile views reacts to malformed GET requests.
223
224- Since any number of parameters can be entered throug the URL, the view
225+ Since any number of parameters can be entered through the URL, the view
226 should be robust about them and not produce OOPSes. This is achieved by
227 raising UnexpectedFormData which is communicated to the user instead of
228 being recorded as an OOPS.
229diff --git a/lib/lp/translations/browser/tests/test_sharing_details.py b/lib/lp/translations/browser/tests/test_sharing_details.py
230index 4828730..3c648e1 100644
231--- a/lib/lp/translations/browser/tests/test_sharing_details.py
232+++ b/lib/lp/translations/browser/tests/test_sharing_details.py
233@@ -254,7 +254,7 @@ class TestSourcePackageTranslationSharingDetailsView(
234
235 def test_is_configuration_complete__packaging_upstream_branch_set(self):
236 # If the packaging link is set and if an upstream branch is
237- # configuerd but if the other conditions are not fulfilled,
238+ # configured but if the other conditions are not fulfilled,
239 # is_configuration_complete is False.
240 self.configureSharing(set_upstream_branch=True)
241 self.assertFalse(self.view.is_configuration_complete)
242diff --git a/lib/lp/translations/browser/tests/test_sharing_information.py b/lib/lp/translations/browser/tests/test_sharing_information.py
243index bfaed87..1668a6f 100644
244--- a/lib/lp/translations/browser/tests/test_sharing_information.py
245+++ b/lib/lp/translations/browser/tests/test_sharing_information.py
246@@ -62,7 +62,7 @@ class TestSharingInfoMixin:
247 def getAuthorizedUserForProductseries(self, productseries):
248 """Get a user that has Edit rights on productseries.
249
250- If productseries is None, return an arbritrary user. Used by
251+ If productseries is None, return an arbitrary user. Used by
252 implementations of getAuthorizedUser.
253 """
254 logged_in_user = self.factory.makePerson()
255diff --git a/lib/lp/translations/browser/translationtemplatesbuild.py b/lib/lp/translations/browser/translationtemplatesbuild.py
256index 60e8fd7..e1a3a4d 100644
257--- a/lib/lp/translations/browser/translationtemplatesbuild.py
258+++ b/lib/lp/translations/browser/translationtemplatesbuild.py
259@@ -21,7 +21,7 @@ class TranslationTemplatesBuildView(LaunchpadView):
260 """View for `TranslationTemplatesBuild`."""
261
262 def getTargets(self):
263- """`ProducSeries` that will consume the generated templates."""
264+ """`ProductSeries` that will consume the generated templates."""
265 utility = getUtility(IProductSeriesSet)
266 return list(
267 utility.findByTranslationsImportBranch(self.context.branch)
268@@ -35,7 +35,7 @@ class TranslationTemplatesBuildView(LaunchpadView):
269 formatter.approximatedate(),
270 )
271
272- def initalize(self):
273+ def initialize(self):
274 """See `LaunchpadView`."""
275 self.last_score = HARDCODED_TRANSLATIONTEMPLATESBUILD_SCORE
276
277diff --git a/lib/lp/translations/interfaces/pofiletranslator.py b/lib/lp/translations/interfaces/pofiletranslator.py
278index 64331c8..1dd314e 100644
279--- a/lib/lp/translations/interfaces/pofiletranslator.py
280+++ b/lib/lp/translations/interfaces/pofiletranslator.py
281@@ -65,7 +65,7 @@ class IPOFileTranslatorSet(Interface):
282 """
283
284 def getForTemplate(potemplate):
285- """Retrieve `POFileTranslator` objects associated iwth `POTemplate`.
286+ """Retrieve `POFileTranslator` objects associated with `POTemplate`.
287
288 :param potemplate: `POTemplate` to look for.
289 :return: Result set of `POFileTranslator` records associated with
290diff --git a/lib/lp/translations/interfaces/potemplate.py b/lib/lp/translations/interfaces/potemplate.py
291index d394b64..92fcc0d 100644
292--- a/lib/lp/translations/interfaces/potemplate.py
293+++ b/lib/lp/translations/interfaces/potemplate.py
294@@ -419,7 +419,7 @@ class IPOTemplate(IRosettaStats):
295 """A key for determining the sharing precedence of a template.
296
297 Active templates have precedence over inactive ones.
298- Development foci have precendence over non-development foci.
299+ Development foci have precedence over non-development foci.
300 Product development foci have precedence over Package development
301 foci.
302 """
303diff --git a/lib/lp/translations/interfaces/potmsgset.py b/lib/lp/translations/interfaces/potmsgset.py
304index 30aa50d..b3cdbd8 100644
305--- a/lib/lp/translations/interfaces/potmsgset.py
306+++ b/lib/lp/translations/interfaces/potmsgset.py
307@@ -215,7 +215,7 @@ class IPOTMsgSet(Interface):
308 self.getExternallyUsedTranslationMessages for each language.
309
310 :param suggested_languages: languages we want suggestions for.
311- :param used_languages: languges we want used messages for.
312+ :param used_languages: languages we want used messages for.
313 """
314
315 def hasTranslationChangedInLaunchpad(potemplate, language):
316diff --git a/lib/lp/translations/interfaces/translationimportqueue.py b/lib/lp/translations/interfaces/translationimportqueue.py
317index 459760d..92e6c32 100644
318--- a/lib/lp/translations/interfaces/translationimportqueue.py
319+++ b/lib/lp/translations/interfaces/translationimportqueue.py
320@@ -247,7 +247,7 @@ class ITranslationImportQueueEntry(Interface):
321 "The IPOTemplate associated with this entry. If path"
322 " notes a .pot file, it should be used as the place where this"
323 " entry will be imported, if it's a .po file, it indicates the"
324- " template associated with tha translation."
325+ " template associated with the translation."
326 ),
327 required=False,
328 )
329diff --git a/lib/lp/translations/interfaces/translationmessage.py b/lib/lp/translations/interfaces/translationmessage.py
330index b8e68ee..c2ab498 100644
331--- a/lib/lp/translations/interfaces/translationmessage.py
332+++ b/lib/lp/translations/interfaces/translationmessage.py
333@@ -41,7 +41,7 @@ class RosettaTranslationOrigin(DBEnumeratedType):
334 Source Control Management Source
335
336 This translation sighting came from a PO File we
337- analysed in a source control managements sytem first.
338+ analysed in a source control managements system first.
339 """,
340 )
341
342diff --git a/lib/lp/translations/model/pofile.py b/lib/lp/translations/model/pofile.py
343index 06a70ce..be5ec5e 100644
344--- a/lib/lp/translations/model/pofile.py
345+++ b/lib/lp/translations/model/pofile.py
346@@ -1805,7 +1805,7 @@ class POFileToTranslationFileDataAdapter:
347 header_nplurals = header.number_plural_forms
348 database_nplurals = self._pofile.language.pluralforms
349 # These checks are here to catch cases where the plural information
350- # from the header might be more acurate than what we have in the
351+ # from the header might be more accurate than what we have in the
352 # database. This is usually the case when the number of plural forms
353 # has grown but not if it's the standard western form.
354 # See bug 565294
355diff --git a/lib/lp/translations/model/translationimportqueue.py b/lib/lp/translations/model/translationimportqueue.py
356index 0b7cc8c..4c9184f 100644
357--- a/lib/lp/translations/model/translationimportqueue.py
358+++ b/lib/lp/translations/model/translationimportqueue.py
359@@ -112,7 +112,7 @@ def compose_approval_conflict_notice(domain, templates_count, sample):
360 """Create a note to warn about an approval conflict.
361
362 The note warns about the situation where one productseries, or source
363- package, or in some cases distroseries has multiple actice templates
364+ package, or in some cases distroseries has multiple active templates
365 with the same translation domain.
366
367 :param domain: The domain that's causing trouble.
368diff --git a/lib/lp/translations/model/translationsharingjob.py b/lib/lp/translations/model/translationsharingjob.py
369index 0031914..950143b 100644
370--- a/lib/lp/translations/model/translationsharingjob.py
371+++ b/lib/lp/translations/model/translationsharingjob.py
372@@ -33,9 +33,9 @@ class TranslationSharingJobType(DBEnumeratedType):
373 PACKAGING_MERGE = DBItem(
374 0,
375 """
376- Merge translations betweeen productseries and sourcepackage.
377+ Merge translations between productseries and sourcepackage.
378
379- Merge translations betweeen productseries and sourcepackage.
380+ Merge translations between productseries and sourcepackage.
381 """,
382 )
383
384diff --git a/lib/lp/translations/tests/test_pofile.py b/lib/lp/translations/tests/test_pofile.py
385index e9f73c4..a6ed46d 100644
386--- a/lib/lp/translations/tests/test_pofile.py
387+++ b/lib/lp/translations/tests/test_pofile.py
388@@ -1750,7 +1750,7 @@ class TestPOFileSet(TestCaseWithFactory):
389 pofile1.date_changed = week_ago
390
391 # Let's make sure the condition from the bug holds,
392- # since pofile2 is created implicitely with the makePOTemplate call.
393+ # since pofile2 is created implicitly with the makePOTemplate call.
394 self.assertTrue(pofile1.id < pofile2.id)
395 pofiles = self.pofileset.getPOFilesTouchedSince(yesterday)
396 self.assertContentEqual([pofile1, pofile2], pofiles)
397@@ -2577,7 +2577,7 @@ class TestPOFile(TestCaseWithFactory):
398 )
399
400 def test_prepare_pomessage_error_message_sequence_is_invalid(self):
401- # The errordetails can be contructed when the sequnce is invalid.
402+ # The errordetails can be constructed when the sequence is invalid.
403 errors = [
404 {
405 "potmsgset": self.factory.makePOTMsgSet(
406diff --git a/lib/lp/translations/tests/test_potemplate.py b/lib/lp/translations/tests/test_potemplate.py
407index f4fd40c..72f2fd8 100644
408--- a/lib/lp/translations/tests/test_potemplate.py
409+++ b/lib/lp/translations/tests/test_potemplate.py
410@@ -576,7 +576,7 @@ class TestTemplatePrecedence(TestCaseWithFactory):
411
412
413 class TestTranslationFoci(TestCaseWithFactory):
414- """Test the precedence rules for tranlation foci."""
415+ """Test the precedence rules for translation foci."""
416
417 layer = DatabaseFunctionalLayer
418
419diff --git a/lib/lp/translations/tests/test_potmsgset.py b/lib/lp/translations/tests/test_potmsgset.py
420index 6e180af..640a3c2 100644
421--- a/lib/lp/translations/tests/test_potmsgset.py
422+++ b/lib/lp/translations/tests/test_potmsgset.py
423@@ -852,7 +852,7 @@ class TestPOTMsgSetSuggestions(TestCaseWithFactory):
424 ),
425 )
426 # Dismiss suggestions using an older timestamp fails if there is
427- # a newer curent translation.
428+ # a newer current translation.
429 self.assertRaises(
430 TranslationConflict,
431 self.potmsgset.dismissAllSuggestions,
432diff --git a/lib/lp/translations/tests/test_productserieslanguage.py b/lib/lp/translations/tests/test_productserieslanguage.py
433index 9295811..64468ee 100644
434--- a/lib/lp/translations/tests/test_productserieslanguage.py
435+++ b/lib/lp/translations/tests/test_productserieslanguage.py
436@@ -182,7 +182,7 @@ class TestProductSeriesLanguageStatsCalculation(TestCaseWithFactory):
437 )
438 self.assertEqual(psl.messageCount(), 0)
439
440- # We explicitely ask for stats to be recalculated.
441+ # We explicitly ask for stats to be recalculated.
442 psl.recalculateCounts()
443
444 self.assertPSLStatistics(
445@@ -213,7 +213,7 @@ class TestProductSeriesLanguageStatsCalculation(TestCaseWithFactory):
446 self.setPOFileStatistics(pofile2, 1, 1, 1, 1, pofile2.date_changed)
447
448 psl = self.productseries.productserieslanguages[0]
449- # We explicitely ask for stats to be recalculated.
450+ # We explicitly ask for stats to be recalculated.
451 psl.recalculateCounts()
452
453 # Total is a sum of totals in both POTemplates (10+20).
454diff --git a/lib/lp/translations/tests/test_setcurrenttranslation.py b/lib/lp/translations/tests/test_setcurrenttranslation.py
455index 0962aac..fd1b478 100644
456--- a/lib/lp/translations/tests/test_setcurrenttranslation.py
457+++ b/lib/lp/translations/tests/test_setcurrenttranslation.py
458@@ -215,7 +215,7 @@ class SetCurrentTranslationTestMixin:
459 self.assertTrue(tm is not None)
460 if follows:
461 # Even if the other side is supposed to follow this side,
462- # we ovverride the other only if the current side is Ubuntu.
463+ # we override the other only if the current side is Ubuntu.
464 expected_other = self.selectUpstreamTranslation(tm, tm_other)
465 else:
466 expected_other = tm_other
467diff --git a/lib/lp/translations/tests/test_translationmessage.py b/lib/lp/translations/tests/test_translationmessage.py
468index 00ed418..6ad2292 100644
469--- a/lib/lp/translations/tests/test_translationmessage.py
470+++ b/lib/lp/translations/tests/test_translationmessage.py
471@@ -1114,7 +1114,7 @@ class TestShareIfPossible(TestCaseWithFactory):
472 self.assertFalse(other_translation.is_current_ubuntu)
473
474 def test_current_upstream_no_clash(self):
475- """If tranlation is current-upstream, and there's no clash, delete."""
476+ """If translation is current-upstream, and there's no clash, delete."""
477 translation, other_translation = self.makeUnsharedTranslation(
478 is_current_upstream=True, clashing_upstream=False
479 )
480diff --git a/lib/lp/translations/tests/test_translations_to_review.py b/lib/lp/translations/tests/test_translations_to_review.py
481index fbe8e07..bac5cb7 100644
482--- a/lib/lp/translations/tests/test_translations_to_review.py
483+++ b/lib/lp/translations/tests/test_translations_to_review.py
484@@ -181,7 +181,7 @@ class TestReviewableProductTranslationFiles(
485 ReviewTestMixin.setUpMixin(self, for_product=True)
486
487 def test_getReviewableTranslationFiles_project_deactivated(self):
488- # Deactive project are excluded from the list.
489+ # Deactivated projects are excluded from the list.
490 from lp.testing import celebrity_logged_in
491
492 with celebrity_logged_in("admin"):
493diff --git a/lib/lp/translations/utilities/gettext_po_parser.py b/lib/lp/translations/utilities/gettext_po_parser.py
494index f43b18d..e0332dd 100644
495--- a/lib/lp/translations/utilities/gettext_po_parser.py
496+++ b/lib/lp/translations/utilities/gettext_po_parser.py
497@@ -195,7 +195,7 @@ class POHeader:
498
499 def _decode(self, text):
500 if text is None or isinstance(text, str):
501- # There is noo need to do anything.
502+ # There is no need to do anything.
503 return text
504 charset = self.charset
505 try:
506diff --git a/lib/lp/translations/utilities/rosettastats.py b/lib/lp/translations/utilities/rosettastats.py
507index 2f76757..ebb0ab5 100644
508--- a/lib/lp/translations/utilities/rosettastats.py
509+++ b/lib/lp/translations/utilities/rosettastats.py
510@@ -31,25 +31,25 @@ class RosettaStats:
511
512 def messageCount(self):
513 """See IRosettaStats."""
514- # This method should be overrided by the objects that inherit from
515+ # This method should be overridden by the objects that inherit from
516 # this class
517 return 0
518
519 def currentCount(self, language=None):
520 """See IRosettaStats."""
521- # This method should be overrided by the objects that inherit from
522+ # This method should be overridden by the objects that inherit from
523 # this class
524 return 0
525
526 def updatesCount(self, language=None):
527 """See IRosettaStats."""
528- # This method should be overrided by the objects that inherit from
529+ # This method should be overridden by the objects that inherit from
530 # this class
531 return 0
532
533 def rosettaCount(self, language=None):
534 """See IRosettaStats."""
535- # This method should be overrided by the objects that inherit from
536+ # This method should be overridden by the objects that inherit from
537 # this class
538 return 0
539
540diff --git a/lib/lp/translations/utilities/tests/helpers.py b/lib/lp/translations/utilities/tests/helpers.py
541index f5a0e8f..487aa6a 100644
542--- a/lib/lp/translations/utilities/tests/helpers.py
543+++ b/lib/lp/translations/utilities/tests/helpers.py
544@@ -30,7 +30,7 @@ def import_pofile_or_potemplate(
545 :param pofile: if uploading a `POFile`, file to import to; None otherwise.
546 :param potemplate: if uploading a `POTemplate`, file to import to; None
547 otherwise.
548- :param by_maintainer: true if this file was uplaoded by the maintainer
549+ :param by_maintainer: true if this file was uploaded by the maintainer
550 of the project or package.
551 :return: `TranslationImportQueueEntry` as added to the import queue.
552 """
553diff --git a/lib/lp/translations/utilities/tests/test_file_importer.py b/lib/lp/translations/utilities/tests/test_file_importer.py
554index fa3a82e..b33596e 100644
555--- a/lib/lp/translations/utilities/tests/test_file_importer.py
556+++ b/lib/lp/translations/utilities/tests/test_file_importer.py
557@@ -531,7 +531,7 @@ class FileImporterTestCase(TestCaseWithFactory):
558 def test_FileImporter_importFile_error(self):
559 # Test that a validation error is handled correctly during import.
560 # This is done by trying to store a translation (msgstr) with format
561- # spefifiers that do not match those in the msgid, as they should.
562+ # specifiers that do not match those in the msgid, as they should.
563 (pot_importer, po_importer) = self._createFileImporters(
564 TEST_TEMPLATE_FOR_ERROR, TEST_TRANSLATION_FILE_WITH_ERROR, False
565 )
566diff --git a/lib/lp/translations/utilities/translation_export.py b/lib/lp/translations/utilities/translation_export.py
567index e2e3114..e09264f 100644
568--- a/lib/lp/translations/utilities/translation_export.py
569+++ b/lib/lp/translations/utilities/translation_export.py
570@@ -189,7 +189,7 @@ class TarballFileStorageStrategy(StorageStrategy):
571 empty = False
572
573 def __init__(self, single_file_storage=None):
574- """Initialze empty storage strategy, or subsume single-file one."""
575+ """Initialize empty storage strategy, or subsume single-file one."""
576 self.buffer = tempfile.TemporaryFile()
577 self.tar_writer = LaunchpadWriteTarFile(self.buffer)
578 if single_file_storage is not None:
579diff --git a/lib/lp/translations/vocabularies.py b/lib/lp/translations/vocabularies.py
580index 501f89c..ff69730 100644
581--- a/lib/lp/translations/vocabularies.py
582+++ b/lib/lp/translations/vocabularies.py
583@@ -181,7 +181,7 @@ class FilteredLanguagePackVocabulary(FilteredLanguagePackVocabularyBase):
584 @property
585 def _clauses(self):
586 # We are interested on any full language pack or language pack
587- # that is a delta of the current base lanuage pack type,
588+ # that is a delta of the current base language pack type,
589 # except the ones already used.
590 used_lang_packs = []
591 if self.context.language_pack_base is not None:
592diff --git a/lib/lp/xmlrpc/tests/test_private_xmlrpc.py b/lib/lp/xmlrpc/tests/test_private_xmlrpc.py
593index 3b1e31a..66e8dea 100644
594--- a/lib/lp/xmlrpc/tests/test_private_xmlrpc.py
595+++ b/lib/lp/xmlrpc/tests/test_private_xmlrpc.py
596@@ -70,7 +70,7 @@ class TestPrivateXMLRPC(TestCase):
597 self.assertStartsWith(result, "http://bugs.launchpad.test/bugs/")
598
599 def test_internal_bugs_api(self):
600- """There is an interal bugs api, too, but that doesn't share the same
601+ """There is an internal bugs api, too, but that doesn't share the same
602 methods as those exposed publicly.
603 """
604 internal_api = self.get_private_proxy("bugs/")

Subscribers

People subscribed via source and target branches

to status/vote changes: