diff --git a/warehouse/locale/be/LC_MESSAGES/messages.po b/warehouse/locale/be/LC_MESSAGES/messages.po
index 8416c09d0210..877c93b66058 100644
--- a/warehouse/locale/be/LC_MESSAGES/messages.po
+++ b/warehouse/locale/be/LC_MESSAGES/messages.po
@@ -17,7 +17,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Weblate 5.8.2\n"
-#: warehouse/views.py:149
+#: warehouse/views.py:150
msgid ""
"You must verify your **primary** email address before you can perform this "
"action."
@@ -25,26 +25,26 @@ msgstr ""
"Вы павінны спраўдзіць ваш **асноўны** адрас электроннай пошты перад тым, як "
"выканаць гэтую дзею."
-#: warehouse/views.py:165
+#: warehouse/views.py:166
msgid ""
"Two-factor authentication must be enabled on your account to perform this "
"action."
msgstr ""
"Каб выканаць дадзеную дзею, вы павінны ўключыць двухфактарную аўтэнтыфікацыю."
-#: warehouse/views.py:376
+#: warehouse/views.py:377
msgid "Locale updated"
msgstr "Лакалізацыя абноўленая"
-#: warehouse/accounts/forms.py:42 warehouse/accounts/forms.py:304
+#: warehouse/accounts/forms.py:40 warehouse/accounts/forms.py:305
msgid "The email address isn't valid. Try again."
msgstr "Няслушны адрас электроннай пошты. Паспрабуйце ўвесці яшчэ раз."
-#: warehouse/accounts/forms.py:43
+#: warehouse/accounts/forms.py:41
msgid "The password is invalid. Try again."
msgstr "Няслушны пароль. Паспрабуйце яшчэ раз."
-#: warehouse/accounts/forms.py:45
+#: warehouse/accounts/forms.py:43
msgid ""
"The username is invalid. Usernames must be composed of letters, numbers, "
"dots, hyphens and underscores. And must also start and finish with a letter "
@@ -54,46 +54,46 @@ msgstr ""
"злучнікі і падкрэсліванні. Таксама павінна пачынацца і сканчвацца на літару "
"або лічбу. Абярыце іншае імя карыстальніка."
-#: warehouse/accounts/forms.py:62
+#: warehouse/accounts/forms.py:60
msgid "Null bytes are not allowed."
msgstr "Пустыя байты не дазваляюцца."
-#: warehouse/accounts/forms.py:78
+#: warehouse/accounts/forms.py:76
msgid ""
"Usernames are not the same as email addresses. Enter your username instead "
"of your email address."
msgstr ""
-#: warehouse/accounts/forms.py:90
+#: warehouse/accounts/forms.py:88
msgid "No user found with that username"
msgstr "Па дадзеным імі карыстальнік не знойдзены"
-#: warehouse/accounts/forms.py:118
+#: warehouse/accounts/forms.py:116
#, python-brace-format
msgid "TOTP code must be ${totp_length} digits."
msgstr "Код аўтэнтыфікацыі павінен мець ${totp_length} лічбаў."
-#: warehouse/accounts/forms.py:141
+#: warehouse/accounts/forms.py:139
#, python-brace-format
msgid "Recovery Codes must be ${recovery_code_length} characters."
msgstr "Коды ўзнаўлення павінны мець ${recovery_code_length} сімвалаў."
-#: warehouse/accounts/forms.py:155
+#: warehouse/accounts/forms.py:153
msgid "Choose a username with 50 characters or less."
msgstr "Абярыце імя карыстальніка, у якім менш за 50 сімвалаў."
-#: warehouse/accounts/forms.py:173
+#: warehouse/accounts/forms.py:171
msgid ""
"This username is already being used by another account. Choose a different "
"username."
msgstr "Гэтае імя ўжо выкарыстоўваецца. Абярыце іншае імя."
-#: warehouse/accounts/forms.py:186 warehouse/accounts/forms.py:235
-#: warehouse/accounts/forms.py:248
+#: warehouse/accounts/forms.py:184 warehouse/accounts/forms.py:236
+#: warehouse/accounts/forms.py:249
msgid "Password too long."
msgstr "Пароль задоўгі."
-#: warehouse/accounts/forms.py:218
+#: warehouse/accounts/forms.py:219
#, python-brace-format
msgid ""
"There have been too many unsuccessful login attempts. You have been locked "
@@ -102,21 +102,21 @@ msgstr ""
"Перавышаная колькасць няўдалых уводаў логіну. Увод заблакаваны на ${time}. "
"Калі ласка, паўтарыце пазней."
-#: warehouse/accounts/forms.py:251
+#: warehouse/accounts/forms.py:252
msgid "Your passwords don't match. Try again."
msgstr "Ваш пароль не пасуе. Паспрабуйце ўвесці яшчэ раз."
-#: warehouse/accounts/forms.py:285
+#: warehouse/accounts/forms.py:286
msgid "The email address is too long. Try again."
msgstr "Адрас электроннай пошты задоўгі. Паспрабуйце ўвесці яшчэ раз."
-#: warehouse/accounts/forms.py:357
+#: warehouse/accounts/forms.py:358
msgid "You can't use an email address from this domain. Use a different email."
msgstr ""
"Вы не можаце выкарыстоўваць адрас электроннай пошты з гэтым даменам. "
"Выкарыстайце іншую электронную пошту."
-#: warehouse/accounts/forms.py:372
+#: warehouse/accounts/forms.py:373
msgid ""
"This email address is already being used by this account. Use a different "
"email."
@@ -124,7 +124,7 @@ msgstr ""
"Гэты адрас электроннай пошты ўжо выкарыстоўваецца на гэтым акаўнце. "
"Выкарыстайце іншую электронную пошту."
-#: warehouse/accounts/forms.py:383
+#: warehouse/accounts/forms.py:384
msgid ""
"This email address is already being used by another account. Use a different "
"email."
@@ -132,8 +132,8 @@ msgstr ""
"Гэты адрас электроннай пошты ўжо выкарыстоўваецца на іншым акаўнце. "
"Выкарыстайце іншую электронную пошту."
-#: warehouse/accounts/forms.py:423 warehouse/manage/forms.py:132
-#: warehouse/manage/forms.py:824
+#: warehouse/accounts/forms.py:424 warehouse/manage/forms.py:130
+#: warehouse/manage/forms.py:818
msgid "The name is too long. Choose a name with 100 characters or less."
msgstr "Гэтае імя задоўгае. Абярыце імя з памерам менш за 100 сімвалаў."
@@ -149,23 +149,26 @@ msgstr "Няслушны код аўтэнтыфікацыі."
msgid "Invalid WebAuthn assertion: Bad payload"
msgstr "Няслушнае цверджанне WebAuthn: благія даныя"
-#: warehouse/accounts/forms.py:606
+#: warehouse/accounts/forms.py:609
msgid "Invalid recovery code."
msgstr "Няслушны код узнаўлення."
-#: warehouse/accounts/forms.py:615
+#: warehouse/accounts/forms.py:618
msgid "Recovery code has been previously used."
msgstr "Код узнаўлення ўжо выкарыстаны."
-#: warehouse/accounts/forms.py:645
+#: warehouse/accounts/forms.py:647
msgid "The username isn't valid. Try again."
msgstr "Імя карыстальніка няслушнае. Паспрабуйце яшчэ раз."
-#: warehouse/accounts/views.py:119
-#, python-brace-format
+#: warehouse/accounts/views.py:120
+#, fuzzy
+#| msgid ""
+#| "There have been too many unsuccessful login attempts. You have been "
+#| "locked out for {}. Please try again later."
msgid ""
"There have been too many unsuccessful login attempts. You have been locked "
-"out for {}. Please try again later."
+"out for Please try again later."
msgstr ""
"Зашмат непаспяховых уводаў логіну. Увод заблакаваны на {}. Калі ласка, "
"паспрабуйце пазней."
@@ -190,25 +193,25 @@ msgstr ""
"Зашмат запытаў на скід паролю для гэтага ўліковага запісу. Праверце вашу "
"скрынку электроннай пошты і перайдзіце па спасылцы спраўджання. (IP: ${ip})"
-#: warehouse/accounts/views.py:384 warehouse/accounts/views.py:454
-#: warehouse/accounts/views.py:456 warehouse/accounts/views.py:485
-#: warehouse/accounts/views.py:487 warehouse/accounts/views.py:603
+#: warehouse/accounts/views.py:375 warehouse/accounts/views.py:443
+#: warehouse/accounts/views.py:445 warehouse/accounts/views.py:474
+#: warehouse/accounts/views.py:476 warehouse/accounts/views.py:592
msgid "Invalid or expired two factor login."
msgstr "Няслушны або пратэрмінаваны уваход з двухфактарнай аўтэнтыфікацыяй."
-#: warehouse/accounts/views.py:448
+#: warehouse/accounts/views.py:437
msgid "Already authenticated"
msgstr "Ужо аўтэнтыфікаваны"
-#: warehouse/accounts/views.py:522
+#: warehouse/accounts/views.py:511
msgid "Successful WebAuthn assertion"
msgstr "Паспяховае цверджанне WebAuthn"
-#: warehouse/accounts/views.py:633 warehouse/manage/views/__init__.py:948
+#: warehouse/accounts/views.py:622 warehouse/manage/views/__init__.py:944
msgid "Recovery code accepted. The supplied code cannot be used again."
msgstr "Код узнаўлення прыняты. Дадзены код не можа выкарыстоўвацца зноўку."
-#: warehouse/accounts/views.py:732
+#: warehouse/accounts/views.py:719
msgid ""
"New user registration temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
@@ -216,207 +219,207 @@ msgstr ""
"Рэгістрацыя новых карыстальнікаў часова перапыненая. Глядзіце ў https://"
"pypi.org/help#admin-intervention for details."
-#: warehouse/accounts/views.py:895
+#: warehouse/accounts/views.py:880
msgid "Expired token: request a new password reset link"
msgstr "Пратэрмінаваны токен: запытайце спасылку на скід паролю"
-#: warehouse/accounts/views.py:897
+#: warehouse/accounts/views.py:882
msgid "Invalid token: request a new password reset link"
msgstr "Няслушны токен: запытайце спасылку на скід паролю"
-#: warehouse/accounts/views.py:899 warehouse/accounts/views.py:1008
-#: warehouse/accounts/views.py:1073 warehouse/accounts/views.py:1179
-#: warehouse/accounts/views.py:1350
+#: warehouse/accounts/views.py:884 warehouse/accounts/views.py:993
+#: warehouse/accounts/views.py:1058 warehouse/accounts/views.py:1164
+#: warehouse/accounts/views.py:1335
msgid "Invalid token: no token supplied"
msgstr "Няслушны токен: токен не падтрымліваецца"
-#: warehouse/accounts/views.py:903
+#: warehouse/accounts/views.py:888
msgid "Invalid token: not a password reset token"
msgstr "Няслушны токен: гэта не токен для скіду паролю"
-#: warehouse/accounts/views.py:908 warehouse/accounts/views.py:1017
+#: warehouse/accounts/views.py:893 warehouse/accounts/views.py:1002
msgid "Invalid token: user not found"
msgstr "Няслушны токен: карыстальнік не знойдзены"
-#: warehouse/accounts/views.py:919
+#: warehouse/accounts/views.py:904
msgid "Invalid token: user has logged in since this token was requested"
msgstr ""
"Няслушны токен: карыстальнік ужо ўвайшоў у сістэму з моманту запыту гэтага "
"токену"
-#: warehouse/accounts/views.py:937
+#: warehouse/accounts/views.py:922
msgid ""
"Invalid token: password has already been changed since this token was "
"requested"
msgstr ""
"Няслушны токен: пароль ужо быў зменены перад тым, як гэты токен быў запытаны"
-#: warehouse/accounts/views.py:968
+#: warehouse/accounts/views.py:953
msgid "You have reset your password"
msgstr "Вы скінулі пароль"
-#: warehouse/accounts/views.py:1004
+#: warehouse/accounts/views.py:989
#, fuzzy
#| msgid "Expired token: request a new organization invitation"
msgid "Expired token: please try to login again"
msgstr "Пратэрмінаваны токен: запытайце запрашэнне ў новую арганізацыю"
-#: warehouse/accounts/views.py:1006
+#: warehouse/accounts/views.py:991
#, fuzzy
#| msgid "Invalid token: user not found"
msgid "Invalid token: please try to login again"
msgstr "Няслушны токен: карыстальнік не знойдзены"
-#: warehouse/accounts/views.py:1012
+#: warehouse/accounts/views.py:997
#, fuzzy
#| msgid "Invalid token: not a collaboration invitation token"
msgid "Invalid token: not a login confirmation token"
msgstr "Няслушны токен: гэта не токен на запрашэнне ў супрацоўніцтве"
-#: warehouse/accounts/views.py:1027
+#: warehouse/accounts/views.py:1012
msgid "Invalid login attempt."
msgstr ""
-#: warehouse/accounts/views.py:1032
+#: warehouse/accounts/views.py:1017
msgid ""
"Device details didn't match, please try again from the device you originally "
"used to log in."
msgstr ""
-#: warehouse/accounts/views.py:1043
+#: warehouse/accounts/views.py:1028
msgid "Your login has been confirmed and this device is now recognized."
msgstr ""
-#: warehouse/accounts/views.py:1069
+#: warehouse/accounts/views.py:1054
msgid "Expired token: request a new email verification link"
msgstr ""
"Пратэрмінаваны токен: запытайце спасылку на спраўджанне электроннай пошты"
-#: warehouse/accounts/views.py:1071
+#: warehouse/accounts/views.py:1056
msgid "Invalid token: request a new email verification link"
msgstr "Няслушны токен: запытайце спасылку на спраўджанне электроннай пошты"
-#: warehouse/accounts/views.py:1077
+#: warehouse/accounts/views.py:1062
msgid "Invalid token: not an email verification token"
msgstr "Няслушны токен: гэта не токен спраўджання электроннай пошты"
-#: warehouse/accounts/views.py:1086
+#: warehouse/accounts/views.py:1071
msgid "Email not found"
msgstr "Электронная пошта не знойдзеная"
-#: warehouse/accounts/views.py:1089
+#: warehouse/accounts/views.py:1074
msgid "Email already verified"
msgstr "Электронная пошта ўжо спраўджаная"
-#: warehouse/accounts/views.py:1109
+#: warehouse/accounts/views.py:1094
msgid "You can now set this email as your primary address"
msgstr "Вы цяпер можаце ўсталяваць асноўны адрас электроннай пошты"
-#: warehouse/accounts/views.py:1112
+#: warehouse/accounts/views.py:1097
msgid "This is your primary address"
msgstr "Гэта ваш асноўны адрас электроннай пошты"
-#: warehouse/accounts/views.py:1118
+#: warehouse/accounts/views.py:1103
#, python-brace-format
msgid "Email address ${email_address} verified. ${confirm_message}."
msgstr ""
"Адрас электроннчй пошты ${email_address} спраўджаны. ${confirm_message}."
-#: warehouse/accounts/views.py:1175
+#: warehouse/accounts/views.py:1160
msgid "Expired token: request a new organization invitation"
msgstr "Пратэрмінаваны токен: запытайце запрашэнне ў новую арганізацыю"
-#: warehouse/accounts/views.py:1177
+#: warehouse/accounts/views.py:1162
msgid "Invalid token: request a new organization invitation"
msgstr "Няслушны токен: запытайце запрашэнне ў новую арганізацыю"
-#: warehouse/accounts/views.py:1183
+#: warehouse/accounts/views.py:1168
msgid "Invalid token: not an organization invitation token"
msgstr "Няслушны токен: гэта не токен запрашэння ў арганізацыю"
-#: warehouse/accounts/views.py:1187 warehouse/accounts/views.py:1198
+#: warehouse/accounts/views.py:1172 warehouse/accounts/views.py:1183
msgid "Organization invitation is not valid."
msgstr "Запрашэнне ў арганізацыю няслушнае."
-#: warehouse/accounts/views.py:1196
+#: warehouse/accounts/views.py:1181
msgid "Organization invitation no longer exists."
msgstr "Запрашэнне ў арганізацыю больш не існуе."
-#: warehouse/accounts/views.py:1250
+#: warehouse/accounts/views.py:1235
#, python-brace-format
msgid "Invitation for '${organization_name}' is declined."
msgstr "Запрашэнне ў «${organization_name}» адхілены."
-#: warehouse/accounts/views.py:1313
+#: warehouse/accounts/views.py:1298
#, python-brace-format
msgid "You are now ${role} of the '${organization_name}' organization."
msgstr "Цяпер вы ${role} у арганізацыі «${organization_name}» ."
-#: warehouse/accounts/views.py:1346
+#: warehouse/accounts/views.py:1331
msgid "Expired token: request a new project role invitation"
msgstr "Пратэрмінаваны токен: запытайце новую ролю ў праекце"
-#: warehouse/accounts/views.py:1348
+#: warehouse/accounts/views.py:1333
msgid "Invalid token: request a new project role invitation"
msgstr "Няслушны токен: запытайце новую ролю ў праекце"
-#: warehouse/accounts/views.py:1354
+#: warehouse/accounts/views.py:1339
msgid "Invalid token: not a collaboration invitation token"
msgstr "Няслушны токен: гэта не токен на запрашэнне ў супрацоўніцтве"
-#: warehouse/accounts/views.py:1358 warehouse/accounts/views.py:1378
+#: warehouse/accounts/views.py:1343 warehouse/accounts/views.py:1363
msgid "Role invitation is not valid."
msgstr "Няслушнае запрашэнне на ролю."
-#: warehouse/accounts/views.py:1365
+#: warehouse/accounts/views.py:1350
#, fuzzy
#| msgid "Invalid token: request a new project role invitation"
msgid "Invalid token: project does not exist"
msgstr "Няслушны токен: запытайце новую ролю ў праекце"
-#: warehouse/accounts/views.py:1376
+#: warehouse/accounts/views.py:1361
msgid "Role invitation no longer exists."
msgstr "Запрашэнне на ролю больш не існуе."
-#: warehouse/accounts/views.py:1410
+#: warehouse/accounts/views.py:1395
#, python-brace-format
msgid "Invitation for '${project_name}' is declined."
msgstr "Запрашэнне для «${project_name}» адхіленае."
-#: warehouse/accounts/views.py:1476
+#: warehouse/accounts/views.py:1461
#, python-brace-format
msgid "You are now ${role} of the '${project_name}' project."
msgstr "Вы цяпер ${role} у праекце «${project_name}»."
-#: warehouse/accounts/views.py:1588
+#: warehouse/accounts/views.py:1572
#, python-brace-format
msgid "Please review our updated Terms of Service."
msgstr ""
-#: warehouse/accounts/views.py:1798 warehouse/accounts/views.py:2052
+#: warehouse/accounts/views.py:1793 warehouse/accounts/views.py:2056
#: warehouse/manage/views/oidc_publishers.py:126
-#: warehouse/manage/views/organizations.py:1822
+#: warehouse/manage/views/organizations.py:1820
msgid ""
"Trusted publishing is temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1819
-#: warehouse/manage/views/organizations.py:1845
+#: warehouse/accounts/views.py:1814
+#: warehouse/manage/views/organizations.py:1843
msgid "disabled. See https://pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1835
+#: warehouse/accounts/views.py:1830
msgid ""
"You must have a verified email in order to register a pending trusted "
"publisher. See https://pypi.org/help#openid-connect for details."
msgstr ""
-#: warehouse/accounts/views.py:1848
+#: warehouse/accounts/views.py:1843
msgid "You can't register more than 3 pending trusted publishers at once."
msgstr ""
-#: warehouse/accounts/views.py:1863
+#: warehouse/accounts/views.py:1858
#: warehouse/manage/views/oidc_publishers.py:308
#: warehouse/manage/views/oidc_publishers.py:423
#: warehouse/manage/views/oidc_publishers.py:539
@@ -426,32 +429,39 @@ msgid ""
"again later."
msgstr ""
-#: warehouse/accounts/views.py:1873
+#: warehouse/accounts/views.py:1868
#: warehouse/manage/views/oidc_publishers.py:321
#: warehouse/manage/views/oidc_publishers.py:436
#: warehouse/manage/views/oidc_publishers.py:552
#: warehouse/manage/views/oidc_publishers.py:664
-#: warehouse/manage/views/organizations.py:1861
+#: warehouse/manage/views/organizations.py:1859
msgid "The trusted publisher could not be registered"
msgstr ""
-#: warehouse/accounts/views.py:1888
+#: warehouse/accounts/views.py:1883
msgid ""
"This trusted publisher has already been registered. Please contact PyPI's "
"admins if this wasn't intentional."
msgstr ""
-#: warehouse/accounts/views.py:1922
-#: warehouse/manage/views/organizations.py:1910
+#: warehouse/accounts/views.py:1903
+msgid ""
+"A pending trusted publisher matching this configuration has already been "
+"registered for a different project name. Please contact PyPI's admins if "
+"this wasn't intentional."
+msgstr ""
+
+#: warehouse/accounts/views.py:1926
+#: warehouse/manage/views/organizations.py:1908
msgid "Registered a new pending publisher to create "
msgstr ""
-#: warehouse/accounts/views.py:2065 warehouse/accounts/views.py:2078
-#: warehouse/accounts/views.py:2085
+#: warehouse/accounts/views.py:2069 warehouse/accounts/views.py:2082
+#: warehouse/accounts/views.py:2089
msgid "Invalid publisher ID"
msgstr "Несапраўдны ID выдаўца"
-#: warehouse/accounts/views.py:2092
+#: warehouse/accounts/views.py:2096
msgid "Removed trusted publisher for project "
msgstr "Выдалены давераны выдавец для праекту "
@@ -459,32 +469,32 @@ msgstr "Выдалены давераны выдавец для праекту "
msgid "Banner Preview"
msgstr "Папярэдні прагляд банэра"
-#: warehouse/manage/forms.py:292
+#: warehouse/manage/forms.py:289
msgid "Specify an association ID"
msgstr ""
-#: warehouse/manage/forms.py:293
+#: warehouse/manage/forms.py:290
msgid "Association must be specified by ID"
msgstr ""
-#: warehouse/manage/forms.py:308
+#: warehouse/manage/forms.py:305
msgid "No account association with given ID"
msgstr ""
-#: warehouse/manage/forms.py:313
+#: warehouse/manage/forms.py:310
msgid "This association does not belong to you"
msgstr ""
-#: warehouse/manage/forms.py:417
+#: warehouse/manage/forms.py:414
msgid "Provide your response to the request."
msgstr ""
-#: warehouse/manage/forms.py:459
+#: warehouse/manage/forms.py:456
msgid "Choose an organization account name with 50 characters or less."
msgstr ""
"Выберыце назву ўліковага запісу арганізацыі, даўжынёю ў 50 сімвалаў ці менш."
-#: warehouse/manage/forms.py:467
+#: warehouse/manage/forms.py:464
msgid ""
"The organization account name is invalid. Organization account names must be "
"composed of letters, numbers, dots, hyphens and underscores. And must also "
@@ -496,7 +506,7 @@ msgstr ""
"падкрэсліванняў. Таксама яны мусяць пачынацца ды заканчвацца на літару або "
"лічбу. Выберыце іншую назву ўліковага запісу арганізацыі."
-#: warehouse/manage/forms.py:490
+#: warehouse/manage/forms.py:487
msgid ""
"This organization account name has already been used. Choose a different "
"organization account name."
@@ -504,59 +514,59 @@ msgstr ""
"Такая назва ўліковага запісу арганізацыі ўжо выкарыстоўваецца. Выберыце "
"іншую назву ўліковага запісу арганізацыі."
-#: warehouse/manage/forms.py:505
+#: warehouse/manage/forms.py:502
msgid ""
"You have already submitted an application for that name. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:540
+#: warehouse/manage/forms.py:536
msgid "Select project"
msgstr "Выбраць праект"
-#: warehouse/manage/forms.py:545 warehouse/oidc/forms/_core.py:36
+#: warehouse/manage/forms.py:541 warehouse/oidc/forms/_core.py:36
#: warehouse/oidc/forms/gitlab.py:54
msgid "Specify project name"
msgstr "Удакладніце назву праекта"
-#: warehouse/manage/forms.py:549
+#: warehouse/manage/forms.py:545
msgid ""
"Start and end with a letter or numeral containing only ASCII numeric and "
"'.', '_' and '-'."
msgstr ""
-#: warehouse/manage/forms.py:556
+#: warehouse/manage/forms.py:552
msgid ""
"This project name has already been used. Choose a different project name."
msgstr "Праект з такой назвай ужо існуе. Выберыце іншую назву праекта."
-#: warehouse/manage/forms.py:589
+#: warehouse/manage/forms.py:585
msgid "Cannot transfer to Company Organization with inactive billing"
msgstr ""
-#: warehouse/manage/forms.py:642
+#: warehouse/manage/forms.py:638
msgid ""
"The organization name is too long. Choose a organization name with 100 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:654
+#: warehouse/manage/forms.py:650
msgid ""
"The organization URL is too long. Choose a organization URL with 400 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:660
+#: warehouse/manage/forms.py:656
msgid "The organization URL must start with http:// or https://"
msgstr ""
-#: warehouse/manage/forms.py:672
+#: warehouse/manage/forms.py:668
msgid ""
"The organization description is too long. Choose a organization description "
"with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:715
+#: warehouse/manage/forms.py:711
#, fuzzy
#| msgid "The name is too long. Choose a name with 100 characters or less."
msgid ""
@@ -564,39 +574,41 @@ msgid ""
"1024 characters or less."
msgstr "Гэтае імя задоўгае. Абярыце імя з памерам менш за 100 сімвалаў."
-#: warehouse/manage/forms.py:737
-msgid "You have already submitted the maximum number of "
+#: warehouse/manage/forms.py:733
+#, python-format
+msgid ""
+"You have already submitted the maximum number of Organization requests (%s)."
msgstr ""
-#: warehouse/manage/forms.py:766
+#: warehouse/manage/forms.py:763
msgid "Choose a team name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:773
+#: warehouse/manage/forms.py:770
msgid ""
"The team name is invalid. Team names cannot start or end with a space, "
"period, underscore, hyphen, or slash. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:801
+#: warehouse/manage/forms.py:797
msgid "This team name has already been used. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:819
+#: warehouse/manage/forms.py:813
msgid "Specify your alternate repository name"
msgstr ""
-#: warehouse/manage/forms.py:833
+#: warehouse/manage/forms.py:826
msgid "Specify your alternate repository URL"
msgstr ""
-#: warehouse/manage/forms.py:838
+#: warehouse/manage/forms.py:831
#, fuzzy
#| msgid "The name is too long. Choose a name with 100 characters or less."
msgid "The URL is too long. Choose a URL with 400 characters or less."
msgstr "Гэтае імя задоўгае. Абярыце імя з памерам менш за 100 сімвалаў."
-#: warehouse/manage/forms.py:852
+#: warehouse/manage/forms.py:845
#, fuzzy
#| msgid "The name is too long. Choose a name with 100 characters or less."
msgid ""
@@ -604,145 +616,149 @@ msgid ""
"less."
msgstr "Гэтае імя задоўгае. Абярыце імя з памерам менш за 100 сімвалаў."
-#: warehouse/manage/views/__init__.py:408
+#: warehouse/manage/views/__init__.py:404
msgid "Account details updated"
msgstr ""
-#: warehouse/manage/views/__init__.py:439
+#: warehouse/manage/views/__init__.py:435
#, python-brace-format
msgid "Email ${email_address} added - check your email for a verification link"
msgstr ""
-#: warehouse/manage/views/__init__.py:895
+#: warehouse/manage/views/__init__.py:891
msgid "Recovery codes already generated"
msgstr ""
-#: warehouse/manage/views/__init__.py:897
+#: warehouse/manage/views/__init__.py:893
msgid "Generating new recovery codes will invalidate your existing codes."
msgstr ""
-#: warehouse/manage/views/__init__.py:1005
+#: warehouse/manage/views/__init__.py:1001
msgid "Verify your email to create an API token."
msgstr ""
-#: warehouse/manage/views/__init__.py:1107
+#: warehouse/manage/views/__init__.py:1103
msgid "API Token does not exist."
msgstr ""
-#: warehouse/manage/views/__init__.py:1139
+#: warehouse/manage/views/__init__.py:1135
msgid "Invalid credentials. Try again"
msgstr ""
-#: warehouse/manage/views/__init__.py:1258
+#: warehouse/manage/views/__init__.py:1256
msgid "Invalid alternate repository location details"
msgstr ""
-#: warehouse/manage/views/__init__.py:1296
+#: warehouse/manage/views/__init__.py:1294
#, python-brace-format
msgid "Added alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1329
-#: warehouse/manage/views/__init__.py:1590
-#: warehouse/manage/views/__init__.py:1675
-#: warehouse/manage/views/__init__.py:1776
-#: warehouse/manage/views/__init__.py:1876
+#: warehouse/manage/views/__init__.py:1327
+#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1690
+#: warehouse/manage/views/__init__.py:1793
+#: warehouse/manage/views/__init__.py:1896
msgid "Confirm the request"
msgstr ""
-#: warehouse/manage/views/__init__.py:1341
+#: warehouse/manage/views/__init__.py:1339
msgid "Invalid alternate repository id"
msgstr ""
-#: warehouse/manage/views/__init__.py:1352
+#: warehouse/manage/views/__init__.py:1350
msgid "Invalid alternate repository for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:1361
+#: warehouse/manage/views/__init__.py:1359
#, python-brace-format
msgid ""
"Could not delete alternate repository - ${confirm} is not the same as $"
"{alt_repo_name}"
msgstr ""
-#: warehouse/manage/views/__init__.py:1391
+#: warehouse/manage/views/__init__.py:1389
#, python-brace-format
msgid "Deleted alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1459
-#: warehouse/manage/views/__init__.py:1760
-#: warehouse/manage/views/__init__.py:1868
+#: warehouse/manage/views/__init__.py:1457
+#: warehouse/manage/views/__init__.py:1777
+#: warehouse/manage/views/__init__.py:1888
msgid ""
"Project deletion temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1579
+msgid "This release is in quarantine and cannot be modified."
+msgstr ""
+
+#: warehouse/manage/views/__init__.py:1616
msgid "Could not yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1688
+#: warehouse/manage/views/__init__.py:1703
msgid "Could not un-yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1789
+#: warehouse/manage/views/__init__.py:1806
msgid "Could not delete release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1888
+#: warehouse/manage/views/__init__.py:1908
msgid "Could not find file"
msgstr ""
-#: warehouse/manage/views/__init__.py:1893
+#: warehouse/manage/views/__init__.py:1913
msgid "Could not delete file - "
msgstr ""
-#: warehouse/manage/views/__init__.py:2043
+#: warehouse/manage/views/__init__.py:2063
#, python-brace-format
msgid "Team '${team_name}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2150
+#: warehouse/manage/views/__init__.py:2170
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2217
+#: warehouse/manage/views/__init__.py:2237
#, python-brace-format
msgid "${username} is now ${role} of the '${project_name}' project."
msgstr ""
-#: warehouse/manage/views/__init__.py:2249
+#: warehouse/manage/views/__init__.py:2268
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2262
-#: warehouse/manage/views/organizations.py:981
+#: warehouse/manage/views/__init__.py:2281
+#: warehouse/manage/views/organizations.py:980
#, python-brace-format
msgid ""
"User '${username}' already has an active invite. Please try again later."
msgstr ""
-#: warehouse/manage/views/__init__.py:2327
-#: warehouse/manage/views/organizations.py:1056
+#: warehouse/manage/views/__init__.py:2346
+#: warehouse/manage/views/organizations.py:1055
#, python-brace-format
msgid "Invitation sent to '${username}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:2359
+#: warehouse/manage/views/__init__.py:2378
msgid "Could not find role invitation."
msgstr ""
-#: warehouse/manage/views/__init__.py:2370
+#: warehouse/manage/views/__init__.py:2389
msgid "Invitation already expired."
msgstr ""
-#: warehouse/manage/views/__init__.py:2403
-#: warehouse/manage/views/organizations.py:1256
+#: warehouse/manage/views/__init__.py:2422
+#: warehouse/manage/views/organizations.py:1255
#, python-brace-format
msgid "Invitation revoked from '${username}'."
msgstr ""
@@ -837,37 +853,37 @@ msgid ""
"pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/manage/views/organizations.py:957
+#: warehouse/manage/views/organizations.py:956
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:968
+#: warehouse/manage/views/organizations.py:967
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:992
+#: warehouse/manage/views/organizations.py:991
msgid "Cannot invite new member. Organization is not in good standing."
msgstr ""
-#: warehouse/manage/views/organizations.py:1151
-#: warehouse/manage/views/organizations.py:1193
+#: warehouse/manage/views/organizations.py:1150
+#: warehouse/manage/views/organizations.py:1192
msgid "Could not find organization invitation."
msgstr ""
-#: warehouse/manage/views/organizations.py:1161
+#: warehouse/manage/views/organizations.py:1160
msgid "Organization invitation could not be re-sent."
msgstr ""
-#: warehouse/manage/views/organizations.py:1209
+#: warehouse/manage/views/organizations.py:1208
#, python-brace-format
msgid "Expired invitation for '${username}' deleted."
msgstr ""
-#: warehouse/manage/views/organizations.py:1877
+#: warehouse/manage/views/organizations.py:1875
msgid ""
"This publisher has already been registered in your organization. See your "
"existing pending publishers below."
@@ -885,33 +901,33 @@ msgid ""
"{url}'>here to create a Trusted Publisher for it."
msgstr ""
-#: warehouse/oidc/forms/_core.py:77
+#: warehouse/oidc/forms/_core.py:75
msgid "This project already exists."
msgstr ""
-#: warehouse/oidc/forms/_core.py:82
+#: warehouse/oidc/forms/_core.py:79
msgid "This project name isn't allowed"
msgstr ""
-#: warehouse/oidc/forms/_core.py:86
+#: warehouse/oidc/forms/_core.py:83
msgid "This project name is too similar to an existing project"
msgstr ""
-#: warehouse/oidc/forms/_core.py:91
+#: warehouse/oidc/forms/_core.py:88
msgid ""
"This project name isn't allowed (conflict with the Python standard library "
"module name)"
msgstr ""
-#: warehouse/oidc/forms/_core.py:119 warehouse/oidc/forms/_core.py:130
+#: warehouse/oidc/forms/_core.py:115 warehouse/oidc/forms/_core.py:126
msgid "Specify a publisher ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:120 warehouse/oidc/forms/_core.py:131
+#: warehouse/oidc/forms/_core.py:116 warehouse/oidc/forms/_core.py:127
msgid "Publisher must be specified by ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:136
+#: warehouse/oidc/forms/_core.py:132
#, fuzzy
#| msgid "Specify project name"
msgid "Specify an environment name"
@@ -952,7 +968,7 @@ msgstr ""
msgid "ActiveState organization not found"
msgstr ""
-#: warehouse/oidc/forms/activestate.py:166
+#: warehouse/oidc/forms/activestate.py:164
msgid "ActiveState actor not found"
msgstr ""
@@ -980,43 +996,43 @@ msgstr ""
msgid "GitHub has rate-limited this action. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:95
+#: warehouse/oidc/forms/github.py:94
msgid "Unexpected error from GitHub. Try again."
msgstr ""
-#: warehouse/oidc/forms/github.py:103
+#: warehouse/oidc/forms/github.py:102
msgid "Unexpected connection error from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:112
+#: warehouse/oidc/forms/github.py:111
msgid "Unexpected timeout from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:124
+#: warehouse/oidc/forms/github.py:123
msgid "Invalid GitHub user or organization name."
msgstr ""
-#: warehouse/oidc/forms/github.py:140
+#: warehouse/oidc/forms/github.py:137
msgid "Workflow name must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/github.py:145
+#: warehouse/oidc/forms/github.py:142
msgid "Workflow filename must be a filename only, without directories"
msgstr ""
-#: warehouse/oidc/forms/github.py:156
+#: warehouse/oidc/forms/github.py:153
msgid "Environment name is too long (maximum is 255 characters)"
msgstr ""
-#: warehouse/oidc/forms/github.py:161
+#: warehouse/oidc/forms/github.py:158
msgid "Environment name may not start with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:166
+#: warehouse/oidc/forms/github.py:163
msgid "Environment name may not end with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:172
+#: warehouse/oidc/forms/github.py:169
msgid ""
"Environment name must not contain non-printable characters or the characters "
"\"'\", \"\"\", \"`\", \",\", \";\", \"\\\""
@@ -1046,11 +1062,11 @@ msgstr ""
msgid "Choose GitLab issuer URL"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:111
+#: warehouse/oidc/forms/gitlab.py:109
msgid "Top-level pipeline file path must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:115
+#: warehouse/oidc/forms/gitlab.py:113
msgid "Top-level pipeline file path cannot start or end with /"
msgstr ""
@@ -1058,7 +1074,7 @@ msgstr ""
msgid "Provide an Inspector link to specific lines of code."
msgstr ""
-#: warehouse/packaging/views.py:346
+#: warehouse/packaging/views.py:357
msgid "Your report has been recorded. Thank you for your help."
msgstr ""
@@ -1180,14 +1196,14 @@ msgstr ""
#: warehouse/templates/404.html:33 warehouse/templates/500.html:18
#: warehouse/templates/accounts/two-factor.html:35
-#: warehouse/templates/base.html:340 warehouse/templates/base.html:346
-#: warehouse/templates/base.html:352 warehouse/templates/base.html:358
-#: warehouse/templates/base.html:374 warehouse/templates/base.html:380
-#: warehouse/templates/base.html:405 warehouse/templates/base.html:411
-#: warehouse/templates/base.html:420 warehouse/templates/base.html:433
-#: warehouse/templates/base.html:442 warehouse/templates/base.html:448
-#: warehouse/templates/base.html:454 warehouse/templates/base.html:467
-#: warehouse/templates/base.html:484
+#: warehouse/templates/base.html:342 warehouse/templates/base.html:348
+#: warehouse/templates/base.html:354 warehouse/templates/base.html:360
+#: warehouse/templates/base.html:376 warehouse/templates/base.html:382
+#: warehouse/templates/base.html:407 warehouse/templates/base.html:413
+#: warehouse/templates/base.html:422 warehouse/templates/base.html:435
+#: warehouse/templates/base.html:444 warehouse/templates/base.html:450
+#: warehouse/templates/base.html:456 warehouse/templates/base.html:469
+#: warehouse/templates/base.html:486 warehouse/templates/base.html:494
#: warehouse/templates/includes/accounts/profile-callout.html:17
#: warehouse/templates/includes/file-details.html:129
#: warehouse/templates/index.html:98 warehouse/templates/index.html:105
@@ -1199,13 +1215,13 @@ msgstr ""
#: warehouse/templates/manage/account/webauthn-provision.html:51
#: warehouse/templates/manage/account/webauthn-provision.html:68
#: warehouse/templates/manage/manage_base.html:210
-#: warehouse/templates/manage/project/release.html:162
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
-#: warehouse/templates/manage/project/releases.html:190
-#: warehouse/templates/packaging/detail.html:446
-#: warehouse/templates/packaging/detail.html:464
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
+#: warehouse/templates/manage/project/releases.html:210
+#: warehouse/templates/packaging/detail.html:469
+#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:503
#: warehouse/templates/pages/classifiers.html:17
#: warehouse/templates/pages/help.html:7
#: warehouse/templates/pages/help.html:441
@@ -1251,23 +1267,23 @@ msgstr ""
#: warehouse/templates/pages/help.html:1213
#: warehouse/templates/pages/help.html:1256
#: warehouse/templates/pages/help.html:1263
-#: warehouse/templates/pages/help.html:1309
-#: warehouse/templates/pages/help.html:1314
-#: warehouse/templates/pages/help.html:1319
-#: warehouse/templates/pages/help.html:1334
-#: warehouse/templates/pages/help.html:1347
-#: warehouse/templates/pages/help.html:1366
-#: warehouse/templates/pages/help.html:1378
-#: warehouse/templates/pages/help.html:1395
-#: warehouse/templates/pages/help.html:1403
-#: warehouse/templates/pages/help.html:1414
-#: warehouse/templates/pages/help.html:1444
-#: warehouse/templates/pages/help.html:1459
-#: warehouse/templates/pages/help.html:1465
-#: warehouse/templates/pages/help.html:1471
-#: warehouse/templates/pages/help.html:1477
-#: warehouse/templates/pages/help.html:1483
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1310
+#: warehouse/templates/pages/help.html:1315
+#: warehouse/templates/pages/help.html:1320
+#: warehouse/templates/pages/help.html:1335
+#: warehouse/templates/pages/help.html:1348
+#: warehouse/templates/pages/help.html:1367
+#: warehouse/templates/pages/help.html:1379
+#: warehouse/templates/pages/help.html:1396
+#: warehouse/templates/pages/help.html:1404
+#: warehouse/templates/pages/help.html:1415
+#: warehouse/templates/pages/help.html:1445
+#: warehouse/templates/pages/help.html:1460
+#: warehouse/templates/pages/help.html:1466
+#: warehouse/templates/pages/help.html:1472
+#: warehouse/templates/pages/help.html:1478
+#: warehouse/templates/pages/help.html:1484
+#: warehouse/templates/pages/help.html:1491
#: warehouse/templates/pages/sponsors.html:23
#: warehouse/templates/pages/sponsors.html:34
#: warehouse/templates/pages/sponsors.html:42
@@ -1341,7 +1357,7 @@ msgid "Main navigation"
msgstr ""
#: warehouse/templates/base.html:34 warehouse/templates/base.html:68
-#: warehouse/templates/base.html:335
+#: warehouse/templates/base.html:337
#: warehouse/templates/includes/current-user-indicator.html:77
#: warehouse/templates/pages/help.html:209
#: warehouse/templates/pages/sitemap.html:19
@@ -1416,16 +1432,16 @@ msgstr ""
msgid "RSS: 40 newest packages"
msgstr ""
-#: warehouse/templates/base.html:206
+#: warehouse/templates/base.html:208
msgid "Skip to main content"
msgstr ""
-#: warehouse/templates/base.html:210
+#: warehouse/templates/base.html:212
msgid "Switch to mobile version"
msgstr ""
-#: warehouse/templates/base.html:217 warehouse/templates/base.html:226
-#: warehouse/templates/base.html:236
+#: warehouse/templates/base.html:219 warehouse/templates/base.html:228
+#: warehouse/templates/base.html:238
#: warehouse/templates/includes/flash-messages.html:41
#: warehouse/templates/includes/session-notifications.html:19
#: warehouse/templates/manage/account.html:1011
@@ -1434,7 +1450,7 @@ msgstr ""
#: warehouse/templates/manage/organization/settings.html:291
#: warehouse/templates/manage/organization/settings.html:297
#: warehouse/templates/manage/project/documentation.html:13
-#: warehouse/templates/manage/project/release.html:209
+#: warehouse/templates/manage/project/release.html:236
#: warehouse/templates/manage/project/settings.html:78
#: warehouse/templates/manage/project/settings.html:124
#: warehouse/templates/manage/project/settings.html:365
@@ -1442,176 +1458,183 @@ msgstr ""
msgid "Warning"
msgstr ""
-#: warehouse/templates/base.html:219
+#: warehouse/templates/base.html:221
msgid "You are using an unsupported browser, upgrade to a newer version."
msgstr ""
-#: warehouse/templates/base.html:228
+#: warehouse/templates/base.html:230
msgid ""
"You are using TestPyPI – a separate instance of the Python Package Index "
"that allows you to try distribution tools and processes without affecting "
"the real index."
msgstr ""
-#: warehouse/templates/base.html:238
+#: warehouse/templates/base.html:240
msgid ""
"Some features may not work without JavaScript. Please try enabling it if you "
"encounter problems."
msgstr ""
-#: warehouse/templates/base.html:273 warehouse/templates/base.html:305
+#: warehouse/templates/base.html:275 warehouse/templates/base.html:307
#: warehouse/templates/error-base-with-search.html:8
#: warehouse/templates/index.html:29
msgid "Search PyPI"
msgstr ""
-#: warehouse/templates/base.html:278 warehouse/templates/index.html:35
+#: warehouse/templates/base.html:280 warehouse/templates/index.html:35
msgid "Type '/' to search projects"
msgstr ""
-#: warehouse/templates/base.html:289 warehouse/templates/base.html:318
+#: warehouse/templates/base.html:291 warehouse/templates/base.html:320
#: warehouse/templates/error-base-with-search.html:19
#: warehouse/templates/index.html:44
msgid "Search"
msgstr ""
-#: warehouse/templates/base.html:310
+#: warehouse/templates/base.html:312
#: warehouse/templates/error-base-with-search.html:13
msgid "Search projects"
msgstr ""
-#: warehouse/templates/base.html:336
+#: warehouse/templates/base.html:338
msgid "Help navigation"
msgstr ""
-#: warehouse/templates/base.html:342
+#: warehouse/templates/base.html:344
msgid "Installing packages"
msgstr ""
-#: warehouse/templates/base.html:348
+#: warehouse/templates/base.html:350
msgid "Uploading packages"
msgstr ""
-#: warehouse/templates/base.html:354
+#: warehouse/templates/base.html:356
msgid "User guide"
msgstr ""
-#: warehouse/templates/base.html:360
+#: warehouse/templates/base.html:362
msgid "Project name retention"
msgstr ""
-#: warehouse/templates/base.html:363
+#: warehouse/templates/base.html:365
msgid "FAQs"
msgstr ""
-#: warehouse/templates/base.html:369 warehouse/templates/pages/sitemap.html:34
+#: warehouse/templates/base.html:371 warehouse/templates/pages/sitemap.html:34
msgid "About PyPI"
msgstr ""
-#: warehouse/templates/base.html:370
+#: warehouse/templates/base.html:372
msgid "About PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:376
+#: warehouse/templates/base.html:378
msgid "PyPI Blog"
msgstr ""
-#: warehouse/templates/base.html:382
+#: warehouse/templates/base.html:384
msgid "Infrastructure dashboard"
msgstr ""
-#: warehouse/templates/base.html:385 warehouse/templates/pages/sitemap.html:40
+#: warehouse/templates/base.html:387 warehouse/templates/pages/sitemap.html:40
#: warehouse/templates/pages/stats.html:4
msgid "Statistics"
msgstr ""
-#: warehouse/templates/base.html:388
+#: warehouse/templates/base.html:390
msgid "Logos & trademarks"
msgstr ""
-#: warehouse/templates/base.html:391
+#: warehouse/templates/base.html:393
msgid "Our sponsors"
msgstr ""
-#: warehouse/templates/base.html:397
+#: warehouse/templates/base.html:399
msgid "Contributing to PyPI"
msgstr ""
-#: warehouse/templates/base.html:398
+#: warehouse/templates/base.html:400
msgid "How to contribute navigation"
msgstr ""
-#: warehouse/templates/base.html:401
+#: warehouse/templates/base.html:403
msgid "Bugs and feedback"
msgstr ""
-#: warehouse/templates/base.html:407
+#: warehouse/templates/base.html:409
msgid "Contribute on GitHub"
msgstr ""
-#: warehouse/templates/base.html:413
+#: warehouse/templates/base.html:415
msgid "Translate PyPI"
msgstr ""
-#: warehouse/templates/base.html:416
+#: warehouse/templates/base.html:418
msgid "Sponsor PyPI"
msgstr ""
-#: warehouse/templates/base.html:422
+#: warehouse/templates/base.html:424
msgid "Development credits"
msgstr ""
-#: warehouse/templates/base.html:428 warehouse/templates/pages/sitemap.html:10
+#: warehouse/templates/base.html:430 warehouse/templates/pages/sitemap.html:10
msgid "Using PyPI"
msgstr ""
-#: warehouse/templates/base.html:429
+#: warehouse/templates/base.html:431
msgid "Using PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:435
+#: warehouse/templates/base.html:437
#: warehouse/templates/manage/organization/activate_subscription.html:21
msgid "Terms of Service"
msgstr ""
-#: warehouse/templates/base.html:438
+#: warehouse/templates/base.html:440
msgid "Report security issue"
msgstr ""
-#: warehouse/templates/base.html:444
+#: warehouse/templates/base.html:446
msgid "Code of conduct"
msgstr ""
-#: warehouse/templates/base.html:450
+#: warehouse/templates/base.html:452
msgid "Privacy Notice"
msgstr ""
-#: warehouse/templates/base.html:456
+#: warehouse/templates/base.html:458
msgid "Acceptable Use Policy"
msgstr ""
-#: warehouse/templates/base.html:466
+#: warehouse/templates/base.html:468
msgid "Status:"
msgstr ""
-#: warehouse/templates/base.html:470
+#: warehouse/templates/base.html:472
msgid "all systems operational"
msgstr ""
-#: warehouse/templates/base.html:474
+#: warehouse/templates/base.html:476
msgid ""
"Developed and maintained by the Python community, for the Python community."
msgstr ""
-#: warehouse/templates/base.html:476
+#: warehouse/templates/base.html:478
msgid "Donate today!"
msgstr ""
-#: warehouse/templates/base.html:488 warehouse/templates/pages/sitemap.html:4
+#: warehouse/templates/base.html:490 warehouse/templates/pages/sitemap.html:4
msgid "Site map"
msgstr ""
-#: warehouse/templates/base.html:495
+#: warehouse/templates/base.html:494
+#, python-format
+msgid ""
+"Deployed from %(sha)s"
+msgstr ""
+
+#: warehouse/templates/base.html:502
msgid "Switch to desktop version"
msgstr ""
@@ -3142,8 +3165,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:546
#: warehouse/templates/manage/manage_base.html:344
#: warehouse/templates/manage/manage_base.html:347
-#: warehouse/templates/manage/project/release.html:158
-#: warehouse/templates/manage/project/releases.html:186
+#: warehouse/templates/manage/project/release.html:180
+#: warehouse/templates/manage/project/releases.html:206
#: warehouse/templates/manage/project/settings.html:63
#: warehouse/templates/manage/unverified-account.html:186
#: warehouse/templates/manage/unverified-account.html:189
@@ -3234,7 +3257,7 @@ msgstr ""
#: warehouse/templates/manage/account/totp-provision.html:46
#: warehouse/templates/manage/unverified-account.html:200
#: warehouse/templates/packaging/detail.html:150
-#: warehouse/templates/packaging/detail.html:500
+#: warehouse/templates/packaging/detail.html:523
#: warehouse/templates/pages/classifiers.html:42
msgid "Copy to clipboard"
msgstr ""
@@ -3246,7 +3269,7 @@ msgstr ""
#: warehouse/templates/manage/account/recovery_codes-provision.html:54
#: warehouse/templates/manage/account/totp-provision.html:47
#: warehouse/templates/manage/unverified-account.html:201
-#: warehouse/templates/packaging/detail.html:501
+#: warehouse/templates/packaging/detail.html:524
#: warehouse/templates/pages/classifiers.html:43
msgid "Copy"
msgstr ""
@@ -3384,7 +3407,7 @@ msgstr ""
#: warehouse/templates/includes/manage/manage-project-menu.html:9
#: warehouse/templates/manage/project/release.html:21
-#: warehouse/templates/manage/project/releases.html:161
+#: warehouse/templates/manage/project/releases.html:181
msgid "Releases"
msgstr ""
@@ -3585,8 +3608,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:84
#: warehouse/templates/manage/account.html:177
-#: warehouse/templates/manage/project/release.html:74
-#: warehouse/templates/manage/project/releases.html:53
+#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/releases.html:56
#: warehouse/templates/manage/unverified-account.html:69
#: warehouse/templates/manage/unverified-account.html:147
msgid "Options"
@@ -3978,7 +4001,7 @@ msgid "Two factor method:"
msgstr ""
#: warehouse/templates/manage/account.html:692
-#: warehouse/templates/manage/project/release.html:61
+#: warehouse/templates/manage/project/release.html:79
#: warehouse/templates/manage/unverified-account.html:330
msgid "None"
msgstr ""
@@ -4440,7 +4463,8 @@ msgstr ""
#: warehouse/templates/manage/organizations.html:128
#: warehouse/templates/manage/organizations.html:134
#: warehouse/templates/manage/organizations.html:183
-#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:69
+#: warehouse/templates/manage/project/releases.html:94
#: warehouse/templates/manage/projects.html:99
#: warehouse/templates/manage/projects.html:105
#: warehouse/templates/manage/team/projects.html:49
@@ -4836,7 +4860,8 @@ msgstr ""
#: warehouse/templates/manage/organization/projects.html:67
#: warehouse/templates/manage/organization/teams.html:44
#: warehouse/templates/manage/organizations.html:106
-#: warehouse/templates/manage/project/releases.html:83
+#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:101
#: warehouse/templates/manage/projects.html:111
#: warehouse/templates/manage/projects.html:116
#: warehouse/templates/manage/team/projects.html:61
@@ -5309,7 +5334,7 @@ msgstr ""
#: warehouse/templates/manage/organization/publishing.html:156
#: warehouse/templates/manage/project/documentation.html:21
#: warehouse/templates/manage/project/publishing.html:153
-#: warehouse/templates/manage/project/release.html:139
+#: warehouse/templates/manage/project/release.html:160
#: warehouse/templates/pages/stats.html:65
msgid "Project name"
msgstr ""
@@ -5478,51 +5503,51 @@ msgstr ""
msgid "Manage publishers"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:387
+#: warehouse/templates/manage/account/publishing.html:386
msgid "Project"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:407
+#: warehouse/templates/manage/account/publishing.html:404
msgid ""
"No publishers are currently configured. Publishers for existing projects can "
"be added in the publishing configuration for each individual project."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:417
+#: warehouse/templates/manage/account/publishing.html:414
#: warehouse/templates/manage/organization/publishing.html:414
msgid "Pending project name"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:418
+#: warehouse/templates/manage/account/publishing.html:415
#: warehouse/templates/manage/organization/publishing.html:415
#: warehouse/templates/manage/project/publishing.html:375
msgid "Publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:419
+#: warehouse/templates/manage/account/publishing.html:416
#: warehouse/templates/manage/organization/publishing.html:416
#: warehouse/templates/manage/project/publishing.html:376
msgid "Details"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:429
+#: warehouse/templates/manage/account/publishing.html:426
#: warehouse/templates/manage/organization/publishing.html:426
msgid ""
"No pending publishers are currently configured. Publishers for projects that "
"don't exist yet can be added below."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:436
+#: warehouse/templates/manage/account/publishing.html:433
#: warehouse/templates/manage/organization/publishing.html:431
msgid "Add a new pending publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:438
+#: warehouse/templates/manage/account/publishing.html:435
#: warehouse/templates/manage/organization/publishing.html:432
msgid "You can use this page to register \"pending\" trusted publishers."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:443
+#: warehouse/templates/manage/account/publishing.html:440
#: warehouse/templates/manage/organization/publishing.html:434
#, python-format
msgid ""
@@ -5534,7 +5559,7 @@ msgid ""
"href=\"%(href)s\">here."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:453
+#: warehouse/templates/manage/account/publishing.html:450
#: warehouse/templates/manage/organization/publishing.html:444
msgid ""
"Configuring a \"pending\" publisher for a project name does not"
@@ -5542,7 +5567,7 @@ msgid ""
"create it, including via their own \"pending\" publisher."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:488
+#: warehouse/templates/manage/account/publishing.html:485
#: warehouse/templates/manage/project/publishing.html:419
#, python-format
msgid ""
@@ -6500,8 +6525,8 @@ msgid "Delete expired invitation for %(user)s"
msgstr ""
#: warehouse/templates/manage/organization/roles.html:352
-#: warehouse/templates/manage/project/release.html:96
-#: warehouse/templates/manage/project/releases.html:98
+#: warehouse/templates/manage/project/release.html:115
+#: warehouse/templates/manage/project/releases.html:116
#: warehouse/templates/manage/project/settings.html:239
msgid "Delete"
msgstr ""
@@ -6833,7 +6858,7 @@ msgstr ""
#: warehouse/templates/manage/project/history.html:77
#: warehouse/templates/manage/project/history.html:108
-#: warehouse/templates/manage/project/release.html:103
+#: warehouse/templates/manage/project/release.html:122
msgid "Filename:"
msgstr ""
@@ -7022,12 +7047,12 @@ msgid "Back to projects"
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:51
-#: warehouse/templates/packaging/detail.html:329
+#: warehouse/templates/packaging/detail.html:335
msgid "This project has been quarantined."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:53
-#: warehouse/templates/packaging/detail.html:331
+#: warehouse/templates/packaging/detail.html:337
msgid ""
"PyPI Admins need to review this project before it can be restored. While in "
"quarantine, the project is not installable by clients, and cannot be being "
@@ -7035,14 +7060,16 @@ msgid ""
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:60
-#: warehouse/templates/packaging/detail.html:338
+#: warehouse/templates/manage/project/release.html:46
+#: warehouse/templates/packaging/detail.html:344
+#: warehouse/templates/packaging/detail.html:361
#, python-format
msgid ""
"Read more in the project in quarantine help article."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:67
-#: warehouse/templates/packaging/detail.html:345
+#: warehouse/templates/packaging/detail.html:368
msgid "This project has been archived."
msgstr ""
@@ -7118,7 +7145,7 @@ msgid "Version %(version)s"
msgstr ""
#: warehouse/templates/manage/project/release.html:25
-#: warehouse/templates/manage/project/releases.html:169
+#: warehouse/templates/manage/project/releases.html:189
msgid "Yanked releases"
msgstr ""
@@ -7127,57 +7154,70 @@ msgid "view release"
msgstr ""
#: warehouse/templates/manage/project/release.html:36
+#: warehouse/templates/packaging/detail.html:351
+msgid "This release has been quarantined."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:38
+#: warehouse/templates/packaging/detail.html:353
+msgid ""
+"PyPI Admins need to review this release before it can be restored. While in "
+"quarantine, the release is not installable by clients, and cannot be "
+"modified by its maintainers. Other releases of this project are unaffected."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:54
#, python-format
msgid "Files for release %(version)s of %(project_name)s"
msgstr ""
-#: warehouse/templates/manage/project/release.html:39
-#: warehouse/templates/manage/project/release.html:50
+#: warehouse/templates/manage/project/release.html:57
+#: warehouse/templates/manage/project/release.html:68
msgid "Filename, size"
msgstr ""
-#: warehouse/templates/manage/project/release.html:40
-#: warehouse/templates/manage/project/release.html:56
+#: warehouse/templates/manage/project/release.html:58
+#: warehouse/templates/manage/project/release.html:74
msgid "Type"
msgstr ""
-#: warehouse/templates/manage/project/release.html:41
-#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:59
+#: warehouse/templates/manage/project/release.html:78
msgid "Python version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:42
-#: warehouse/templates/manage/project/release.html:64
+#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:82
msgid "Upload date"
msgstr ""
-#: warehouse/templates/manage/project/release.html:73
+#: warehouse/templates/manage/project/release.html:91
msgid "View file options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:81
+#: warehouse/templates/manage/project/release.html:99
msgid "File options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:86
+#: warehouse/templates/manage/project/release.html:104
msgid "Download"
msgstr ""
-#: warehouse/templates/manage/project/release.html:90
+#: warehouse/templates/manage/project/release.html:109
msgid "Delete file from"
msgstr ""
-#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/release.html:111
msgid "Delete file"
msgstr ""
-#: warehouse/templates/manage/project/release.html:111
+#: warehouse/templates/manage/project/release.html:130
msgid ""
"I understand that my users will no longer be able to install this file for "
"this release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:118
+#: warehouse/templates/manage/project/release.html:137
#, python-format
msgid ""
"I understand that I will %(filename)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:125
-#: warehouse/templates/manage/project/release.html:257
+#: warehouse/templates/manage/project/release.html:144
+#: warehouse/templates/manage/project/release.html:284
msgid "I understand that I will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:132
-#: warehouse/templates/manage/project/release.html:263
+#: warehouse/templates/manage/project/release.html:151
+#: warehouse/templates/manage/project/release.html:290
msgid ""
"I understand that the PyPI administrators will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:150
+#: warehouse/templates/manage/project/release.html:172
msgid "Uploading new files"
msgstr ""
-#: warehouse/templates/manage/project/release.html:152
+#: warehouse/templates/manage/project/release.html:174
msgid "No files found"
msgstr ""
-#: warehouse/templates/manage/project/release.html:155
-#: warehouse/templates/manage/project/releases.html:183
+#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/releases.html:203
#: warehouse/templates/manage/project/settings.html:60
msgid "Dismiss"
msgstr ""
-#: warehouse/templates/manage/project/release.html:162
+#: warehouse/templates/manage/project/release.html:184
#, python-format
msgid ""
"Learn how to upload files on the Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/manage/project/release.html:165
+#: warehouse/templates/manage/project/release.html:187
msgid "Release settings"
msgstr ""
-#: warehouse/templates/manage/project/release.html:168
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/releases.html:111
+#: warehouse/templates/manage/project/release.html:190
+msgid ""
+"Yank and delete actions are unavailable while this release is in quarantine."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:195
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/releases.html:131
msgid "Yank release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:171
+#: warehouse/templates/manage/project/release.html:198
#, python-format
msgid ""
"Yanking will mark this release (and %(count)s file within it) to be ignored "
@@ -7238,53 +7283,53 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/release.html:204
msgid ""
"Yanking will mark this release to be ignored when installing in most common "
"scenarios."
msgstr ""
-#: warehouse/templates/manage/project/release.html:181
+#: warehouse/templates/manage/project/release.html:208
#, python-format
msgid ""
"This release will still be installable for users pinning to this exact "
"version, e.g. when using %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:211
#, python-format
msgid "For more information, see PEP 592."
msgstr ""
-#: warehouse/templates/manage/project/release.html:190
-#: warehouse/templates/manage/project/releases.html:114
+#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/releases.html:134
#, python-format
msgid ""
"You may provide a reason for yanking this release, which will be displayed "
"by pip to users who install %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:194
-#: warehouse/templates/manage/project/releases.html:118
+#: warehouse/templates/manage/project/release.html:221
+#: warehouse/templates/manage/project/releases.html:138
msgid "Reason (optional)"
msgstr ""
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/release.html:267
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/release.html:294
#: warehouse/templates/manage/project/releases.html:9
-#: warehouse/templates/manage/project/releases.html:108
-#: warehouse/templates/manage/project/releases.html:126
+#: warehouse/templates/manage/project/releases.html:128
#: warehouse/templates/manage/project/releases.html:146
+#: warehouse/templates/manage/project/releases.html:166
msgid "Version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:207
-#: warehouse/templates/manage/project/release.html:267
-#: warehouse/templates/manage/project/releases.html:128
+#: warehouse/templates/manage/project/release.html:234
+#: warehouse/templates/manage/project/release.html:294
+#: warehouse/templates/manage/project/releases.html:148
msgid "Delete release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:211
+#: warehouse/templates/manage/project/release.html:238
#, python-format
msgid ""
"Deleting will irreversibly delete this release along with %(count)s file."
@@ -7293,27 +7338,27 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/release.html:244
msgid "Deleting will irreversibly delete this release."
msgstr ""
-#: warehouse/templates/manage/project/release.html:220
-#: warehouse/templates/manage/project/releases.html:131
+#: warehouse/templates/manage/project/release.html:247
+#: warehouse/templates/manage/project/releases.html:151
msgid ""
"You will not be able to re-upload a new distribution of the same type with "
"the same version number."
msgstr ""
-#: warehouse/templates/manage/project/release.html:223
-#: warehouse/templates/manage/project/releases.html:134
+#: warehouse/templates/manage/project/release.html:250
+#: warehouse/templates/manage/project/releases.html:154
msgid ""
"Deletion will break any downstream projects relying on a pinned version of "
"this package. It is intended as a last resort to address legal issues or "
"remove harmful releases."
msgstr ""
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
#, python-format
msgid ""
"Consider post release instead."
msgstr ""
-#: warehouse/templates/manage/project/release.html:239
+#: warehouse/templates/manage/project/release.html:266
#, python-format
msgid ""
"I understand that I am permanently deleting all files for the "
"%(release_version)s release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:245
+#: warehouse/templates/manage/project/release.html:272
msgid ""
"I understand that my users will no longer be able to install this release of "
"this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:251
+#: warehouse/templates/manage/project/release.html:278
#, python-format
msgid ""
"I understand that I will installing packages."
msgstr ""
-#: warehouse/templates/packaging/detail.html:449
+#: warehouse/templates/packaging/detail.html:472
msgid "Source Distribution"
msgid_plural "Source Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:463
+#: warehouse/templates/packaging/detail.html:486
msgid "No source distribution files available for this release."
msgstr ""
-#: warehouse/templates/packaging/detail.html:464
+#: warehouse/templates/packaging/detail.html:487
#, python-format
msgid ""
"See tutorial on generating distribution archives."
msgstr ""
-#: warehouse/templates/packaging/detail.html:470
+#: warehouse/templates/packaging/detail.html:493
msgid "Built Distribution"
msgid_plural "Built Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:477
+#: warehouse/templates/packaging/detail.html:500
msgid "Filter files by name, interpreter, ABI, and platform."
msgstr ""
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/packaging/detail.html:503
#, python-format
msgid ""
"If you're not sure about the file name format, learn more about wheel file names."
msgstr ""
-#: warehouse/templates/packaging/detail.html:484
+#: warehouse/templates/packaging/detail.html:507
msgid ""
"The dropdown lists show the available interpreters, ABIs, and platforms."
msgstr ""
-#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:510
msgid "Enable javascript to be able to filter the list of wheel files."
msgstr ""
-#: warehouse/templates/packaging/detail.html:491
+#: warehouse/templates/packaging/detail.html:514
msgid "Copy a direct link to the current filters"
msgstr ""
-#: warehouse/templates/packaging/detail.html:509
-#: warehouse/templates/packaging/detail.html:514
+#: warehouse/templates/packaging/detail.html:532
+#: warehouse/templates/packaging/detail.html:537
msgid "File name"
msgstr ""
@@ -8471,7 +8524,7 @@ msgid ""
msgstr ""
#: warehouse/templates/pages/help.html:181
-msgid "My project says it's in quarantine. What does that mean?"
+msgid "My project or release says it's in quarantine. What does that mean?"
msgstr ""
#: warehouse/templates/pages/help.html:185
@@ -8537,7 +8590,7 @@ msgid "Troubleshooting"
msgstr ""
#: warehouse/templates/pages/help.html:393
-#: warehouse/templates/pages/help.html:1306
+#: warehouse/templates/pages/help.html:1307
msgid "About"
msgstr ""
@@ -9341,7 +9394,7 @@ msgstr ""
#: warehouse/templates/pages/help.html:1079
msgid ""
"Deletion of a project, release or file on PyPI is permanent and "
-"irreversable, without exception. Deletion of a project makes it "
+"irreversible, without exception. Deletion of a project makes it "
"uninstallable, and releases the project name for use by any other PyPI user. "
"Deleted files cannot be re-uploaded. "
"Deleted projects, releases or files cannot be restored by PyPI "
@@ -9609,29 +9662,30 @@ msgstr ""
#: warehouse/templates/pages/help.html:1282
#, python-format
msgid ""
-"Projects may get placed in quarantine for any number of reasons, such as "
-"suspicion of malicious activity, spam, or other violations of the Terms of Service or "
-"Acceptable Use "
-"Policy."
+"Projects or individual releases may get placed in quarantine for any number "
+"of reasons, such as suspicion of malicious activity, spam, or other "
+"violations of the Terms of Service or Acceptable Use Policy."
msgstr ""
#: warehouse/templates/pages/help.html:1291
msgid ""
-"While in quarantine, the project is not installable by clients, and cannot "
-"be being modified by its maintainers. PyPI Administrators will need to "
-"review this project before it can be restored."
+"While in quarantine, the project or release is not installable by clients, "
+"and cannot be modified by its maintainers. PyPI Administrators will need to "
+"review it before it can be restored. When a single release is quarantined, "
+"other releases of the same project are unaffected."
msgstr ""
-#: warehouse/templates/pages/help.html:1298
+#: warehouse/templates/pages/help.html:1299
#, python-format
msgid ""
-"If you believe your project has mistakenly been flagged for quarantine, "
-"contact PyPI via security@pypi.org with any "
-"details."
+"If you believe your project or release has mistakenly been flagged for "
+"quarantine, contact PyPI via security@pypi.org "
+"with any details."
msgstr ""
-#: warehouse/templates/pages/help.html:1309
+#: warehouse/templates/pages/help.html:1310
#, python-format
msgid ""
"PyPI is powered by the Warehouse project; ."
msgstr ""
-#: warehouse/templates/pages/help.html:1344
+#: warehouse/templates/pages/help.html:1345
msgid ""
"As of April 16, 2018, PyPI.org is at \"production\" status, meaning that it "
"has moved out of beta and replaced the old site (pypi.python.org). It is now "
"robust, tested, and ready for expected browser and API traffic."
msgstr ""
-#: warehouse/templates/pages/help.html:1347
+#: warehouse/templates/pages/help.html:1348
#, python-format
msgid ""
"PyPI is heavily cached and distributed via private index."
msgstr ""
-#: warehouse/templates/pages/help.html:1366
+#: warehouse/templates/pages/help.html:1367
#, python-format
msgid ""
"We have a huge amount of work to do to continue to maintain and improve PyPI "
@@ -9703,22 +9757,22 @@ msgid ""
"rel=\"noopener\">the Warehouse project)."
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
msgid "Financial:"
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
#, python-format
msgid ""
"We would deeply appreciate your donations to fund "
"development and maintenance."
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid "Development:"
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid ""
"Warehouse is open source, and we would love to see some new faces working on "
"the project. You do not need to be an experienced open-"
@@ -9726,7 +9780,7 @@ msgid ""
"make your first open source pull request!"
msgstr ""
-#: warehouse/templates/pages/help.html:1378
+#: warehouse/templates/pages/help.html:1379
#, python-format
msgid ""
"If you have skills in Python, Full-Text Search, HTML, SCSS, JavaScript, or "
@@ -9739,7 +9793,7 @@ msgid ""
"recommend you start here."
msgstr ""
-#: warehouse/templates/pages/help.html:1395
+#: warehouse/templates/pages/help.html:1396
#, python-format
msgid ""
"Issues are grouped into Python packaging forum on Discourse."
msgstr ""
-#: warehouse/templates/pages/help.html:1414
+#: warehouse/templates/pages/help.html:1415
#, python-format
msgid ""
"Changes to PyPI are generally announced on both the RSS feed."
msgstr ""
-#: warehouse/templates/pages/help.html:1432
+#: warehouse/templates/pages/help.html:1433
#, python-format
msgid ""
"All traffic is routed through our global CDN, which lists their public IP "
"addresses here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1435
+#: warehouse/templates/pages/help.html:1436
#, python-format
msgid ""
"More information about this list can be found here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1439
+#: warehouse/templates/pages/help.html:1440
msgid ""
"When Warehouse's maintainers are deploying new features, at first we mark "
"them with a small \"beta feature\" symbol to tell you: this should probably "
"work fine, but it's new and less tested than other site functionality."
msgstr ""
-#: warehouse/templates/pages/help.html:1441
+#: warehouse/templates/pages/help.html:1442
msgid "Currently, no features are in beta."
msgstr ""
-#: warehouse/templates/pages/help.html:1444
+#: warehouse/templates/pages/help.html:1445
#, python-format
msgid ""
"\"PyPI\" should be pronounced like \"pie pea eye\", specifically with the "
@@ -9808,43 +9862,43 @@ msgid ""
"language."
msgstr ""
-#: warehouse/templates/pages/help.html:1454
+#: warehouse/templates/pages/help.html:1455
msgid "Resources"
msgstr ""
-#: warehouse/templates/pages/help.html:1455
+#: warehouse/templates/pages/help.html:1456
msgid "Looking for something else? Perhaps these links will help:"
msgstr ""
-#: warehouse/templates/pages/help.html:1461
+#: warehouse/templates/pages/help.html:1462
msgid "PyPI User Documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1467
+#: warehouse/templates/pages/help.html:1468
msgid "Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/pages/help.html:1473
+#: warehouse/templates/pages/help.html:1474
msgid "Python documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1479
+#: warehouse/templates/pages/help.html:1480
msgid "(main Python website)"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "Python community page"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "(lists IRC channels, mailing lists, etc.)"
msgstr ""
-#: warehouse/templates/pages/help.html:1488
+#: warehouse/templates/pages/help.html:1489
msgid "Contact"
msgstr ""
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1491
#, python-format
msgid ""
"The Terms of Service."
msgstr ""
-#: warehouse/accounts/views.py:1798 warehouse/accounts/views.py:2052
+#: warehouse/accounts/views.py:1793 warehouse/accounts/views.py:2056
#: warehouse/manage/views/oidc_publishers.py:126
-#: warehouse/manage/views/organizations.py:1822
+#: warehouse/manage/views/organizations.py:1820
msgid ""
"Trusted publishing is temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1819
-#: warehouse/manage/views/organizations.py:1845
+#: warehouse/accounts/views.py:1814
+#: warehouse/manage/views/organizations.py:1843
msgid "disabled. See https://pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1835
+#: warehouse/accounts/views.py:1830
msgid ""
"You must have a verified email in order to register a pending trusted "
"publisher. See https://pypi.org/help#openid-connect for details."
msgstr ""
-#: warehouse/accounts/views.py:1848
+#: warehouse/accounts/views.py:1843
msgid "You can't register more than 3 pending trusted publishers at once."
msgstr ""
-#: warehouse/accounts/views.py:1863
+#: warehouse/accounts/views.py:1858
#: warehouse/manage/views/oidc_publishers.py:308
#: warehouse/manage/views/oidc_publishers.py:423
#: warehouse/manage/views/oidc_publishers.py:539
@@ -389,32 +388,39 @@ msgid ""
"again later."
msgstr ""
-#: warehouse/accounts/views.py:1873
+#: warehouse/accounts/views.py:1868
#: warehouse/manage/views/oidc_publishers.py:321
#: warehouse/manage/views/oidc_publishers.py:436
#: warehouse/manage/views/oidc_publishers.py:552
#: warehouse/manage/views/oidc_publishers.py:664
-#: warehouse/manage/views/organizations.py:1861
+#: warehouse/manage/views/organizations.py:1859
msgid "The trusted publisher could not be registered"
msgstr ""
-#: warehouse/accounts/views.py:1888
+#: warehouse/accounts/views.py:1883
msgid ""
"This trusted publisher has already been registered. Please contact PyPI's "
"admins if this wasn't intentional."
msgstr ""
-#: warehouse/accounts/views.py:1922
-#: warehouse/manage/views/organizations.py:1910
+#: warehouse/accounts/views.py:1903
+msgid ""
+"A pending trusted publisher matching this configuration has already been "
+"registered for a different project name. Please contact PyPI's admins if "
+"this wasn't intentional."
+msgstr ""
+
+#: warehouse/accounts/views.py:1926
+#: warehouse/manage/views/organizations.py:1908
msgid "Registered a new pending publisher to create "
msgstr ""
-#: warehouse/accounts/views.py:2065 warehouse/accounts/views.py:2078
-#: warehouse/accounts/views.py:2085
+#: warehouse/accounts/views.py:2069 warehouse/accounts/views.py:2082
+#: warehouse/accounts/views.py:2089
msgid "Invalid publisher ID"
msgstr ""
-#: warehouse/accounts/views.py:2092
+#: warehouse/accounts/views.py:2096
msgid "Removed trusted publisher for project "
msgstr ""
@@ -422,31 +428,31 @@ msgstr ""
msgid "Banner Preview"
msgstr ""
-#: warehouse/manage/forms.py:292
+#: warehouse/manage/forms.py:289
msgid "Specify an association ID"
msgstr ""
-#: warehouse/manage/forms.py:293
+#: warehouse/manage/forms.py:290
msgid "Association must be specified by ID"
msgstr ""
-#: warehouse/manage/forms.py:308
+#: warehouse/manage/forms.py:305
msgid "No account association with given ID"
msgstr ""
-#: warehouse/manage/forms.py:313
+#: warehouse/manage/forms.py:310
msgid "This association does not belong to you"
msgstr ""
-#: warehouse/manage/forms.py:417
+#: warehouse/manage/forms.py:414
msgid "Provide your response to the request."
msgstr ""
-#: warehouse/manage/forms.py:459
+#: warehouse/manage/forms.py:456
msgid "Choose an organization account name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:467
+#: warehouse/manage/forms.py:464
msgid ""
"The organization account name is invalid. Organization account names must be "
"composed of letters, numbers, dots, hyphens and underscores. And must also "
@@ -454,245 +460,251 @@ msgid ""
"account name."
msgstr ""
-#: warehouse/manage/forms.py:490
+#: warehouse/manage/forms.py:487
msgid ""
"This organization account name has already been used. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:505
+#: warehouse/manage/forms.py:502
msgid ""
"You have already submitted an application for that name. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:540
+#: warehouse/manage/forms.py:536
msgid "Select project"
msgstr ""
-#: warehouse/manage/forms.py:545 warehouse/oidc/forms/_core.py:36
+#: warehouse/manage/forms.py:541 warehouse/oidc/forms/_core.py:36
#: warehouse/oidc/forms/gitlab.py:54
msgid "Specify project name"
msgstr ""
-#: warehouse/manage/forms.py:549
+#: warehouse/manage/forms.py:545
msgid ""
"Start and end with a letter or numeral containing only ASCII numeric and "
"'.', '_' and '-'."
msgstr ""
-#: warehouse/manage/forms.py:556
+#: warehouse/manage/forms.py:552
msgid ""
"This project name has already been used. Choose a different project name."
msgstr ""
-#: warehouse/manage/forms.py:589
+#: warehouse/manage/forms.py:585
msgid "Cannot transfer to Company Organization with inactive billing"
msgstr ""
-#: warehouse/manage/forms.py:642
+#: warehouse/manage/forms.py:638
msgid ""
"The organization name is too long. Choose a organization name with 100 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:654
+#: warehouse/manage/forms.py:650
msgid ""
"The organization URL is too long. Choose a organization URL with 400 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:660
+#: warehouse/manage/forms.py:656
msgid "The organization URL must start with http:// or https://"
msgstr ""
-#: warehouse/manage/forms.py:672
+#: warehouse/manage/forms.py:668
msgid ""
"The organization description is too long. Choose a organization description "
"with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:715
+#: warehouse/manage/forms.py:711
msgid ""
"We don't need to know quite that much :), limit your usage description to "
"1024 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:737
-msgid "You have already submitted the maximum number of "
+#: warehouse/manage/forms.py:733
+#, python-format
+msgid ""
+"You have already submitted the maximum number of Organization requests (%s)."
msgstr ""
-#: warehouse/manage/forms.py:766
+#: warehouse/manage/forms.py:763
msgid "Choose a team name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:773
+#: warehouse/manage/forms.py:770
msgid ""
"The team name is invalid. Team names cannot start or end with a space, "
"period, underscore, hyphen, or slash. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:801
+#: warehouse/manage/forms.py:797
msgid "This team name has already been used. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:819
+#: warehouse/manage/forms.py:813
msgid "Specify your alternate repository name"
msgstr ""
-#: warehouse/manage/forms.py:833
+#: warehouse/manage/forms.py:826
msgid "Specify your alternate repository URL"
msgstr ""
-#: warehouse/manage/forms.py:838
+#: warehouse/manage/forms.py:831
msgid "The URL is too long. Choose a URL with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:852
+#: warehouse/manage/forms.py:845
msgid ""
"The description is too long. Choose a description with 400 characters or "
"less."
msgstr ""
-#: warehouse/manage/views/__init__.py:408
+#: warehouse/manage/views/__init__.py:404
msgid "Account details updated"
msgstr ""
-#: warehouse/manage/views/__init__.py:439
+#: warehouse/manage/views/__init__.py:435
#, python-brace-format
msgid "Email ${email_address} added - check your email for a verification link"
msgstr ""
-#: warehouse/manage/views/__init__.py:895
+#: warehouse/manage/views/__init__.py:891
msgid "Recovery codes already generated"
msgstr ""
-#: warehouse/manage/views/__init__.py:897
+#: warehouse/manage/views/__init__.py:893
msgid "Generating new recovery codes will invalidate your existing codes."
msgstr ""
-#: warehouse/manage/views/__init__.py:1005
+#: warehouse/manage/views/__init__.py:1001
msgid "Verify your email to create an API token."
msgstr ""
-#: warehouse/manage/views/__init__.py:1107
+#: warehouse/manage/views/__init__.py:1103
msgid "API Token does not exist."
msgstr ""
-#: warehouse/manage/views/__init__.py:1139
+#: warehouse/manage/views/__init__.py:1135
msgid "Invalid credentials. Try again"
msgstr ""
-#: warehouse/manage/views/__init__.py:1258
+#: warehouse/manage/views/__init__.py:1256
msgid "Invalid alternate repository location details"
msgstr ""
-#: warehouse/manage/views/__init__.py:1296
+#: warehouse/manage/views/__init__.py:1294
#, python-brace-format
msgid "Added alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1329
-#: warehouse/manage/views/__init__.py:1590
-#: warehouse/manage/views/__init__.py:1675
-#: warehouse/manage/views/__init__.py:1776
-#: warehouse/manage/views/__init__.py:1876
+#: warehouse/manage/views/__init__.py:1327
+#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1690
+#: warehouse/manage/views/__init__.py:1793
+#: warehouse/manage/views/__init__.py:1896
msgid "Confirm the request"
msgstr ""
-#: warehouse/manage/views/__init__.py:1341
+#: warehouse/manage/views/__init__.py:1339
msgid "Invalid alternate repository id"
msgstr ""
-#: warehouse/manage/views/__init__.py:1352
+#: warehouse/manage/views/__init__.py:1350
msgid "Invalid alternate repository for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:1361
+#: warehouse/manage/views/__init__.py:1359
#, python-brace-format
msgid ""
"Could not delete alternate repository - ${confirm} is not the same as $"
"{alt_repo_name}"
msgstr ""
-#: warehouse/manage/views/__init__.py:1391
+#: warehouse/manage/views/__init__.py:1389
#, python-brace-format
msgid "Deleted alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1459
-#: warehouse/manage/views/__init__.py:1760
-#: warehouse/manage/views/__init__.py:1868
+#: warehouse/manage/views/__init__.py:1457
+#: warehouse/manage/views/__init__.py:1777
+#: warehouse/manage/views/__init__.py:1888
msgid ""
"Project deletion temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1579
+msgid "This release is in quarantine and cannot be modified."
+msgstr ""
+
+#: warehouse/manage/views/__init__.py:1616
msgid "Could not yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1688
+#: warehouse/manage/views/__init__.py:1703
msgid "Could not un-yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1789
+#: warehouse/manage/views/__init__.py:1806
msgid "Could not delete release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1888
+#: warehouse/manage/views/__init__.py:1908
msgid "Could not find file"
msgstr ""
-#: warehouse/manage/views/__init__.py:1893
+#: warehouse/manage/views/__init__.py:1913
msgid "Could not delete file - "
msgstr ""
-#: warehouse/manage/views/__init__.py:2043
+#: warehouse/manage/views/__init__.py:2063
#, python-brace-format
msgid "Team '${team_name}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2150
+#: warehouse/manage/views/__init__.py:2170
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2217
+#: warehouse/manage/views/__init__.py:2237
#, python-brace-format
msgid "${username} is now ${role} of the '${project_name}' project."
msgstr ""
-#: warehouse/manage/views/__init__.py:2249
+#: warehouse/manage/views/__init__.py:2268
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2262
-#: warehouse/manage/views/organizations.py:981
+#: warehouse/manage/views/__init__.py:2281
+#: warehouse/manage/views/organizations.py:980
#, python-brace-format
msgid ""
"User '${username}' already has an active invite. Please try again later."
msgstr ""
-#: warehouse/manage/views/__init__.py:2327
-#: warehouse/manage/views/organizations.py:1056
+#: warehouse/manage/views/__init__.py:2346
+#: warehouse/manage/views/organizations.py:1055
#, python-brace-format
msgid "Invitation sent to '${username}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:2359
+#: warehouse/manage/views/__init__.py:2378
msgid "Could not find role invitation."
msgstr ""
-#: warehouse/manage/views/__init__.py:2370
+#: warehouse/manage/views/__init__.py:2389
msgid "Invitation already expired."
msgstr ""
-#: warehouse/manage/views/__init__.py:2403
-#: warehouse/manage/views/organizations.py:1256
+#: warehouse/manage/views/__init__.py:2422
+#: warehouse/manage/views/organizations.py:1255
#, python-brace-format
msgid "Invitation revoked from '${username}'."
msgstr ""
@@ -785,37 +797,37 @@ msgid ""
"pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/manage/views/organizations.py:957
+#: warehouse/manage/views/organizations.py:956
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:968
+#: warehouse/manage/views/organizations.py:967
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:992
+#: warehouse/manage/views/organizations.py:991
msgid "Cannot invite new member. Organization is not in good standing."
msgstr ""
-#: warehouse/manage/views/organizations.py:1151
-#: warehouse/manage/views/organizations.py:1193
+#: warehouse/manage/views/organizations.py:1150
+#: warehouse/manage/views/organizations.py:1192
msgid "Could not find organization invitation."
msgstr ""
-#: warehouse/manage/views/organizations.py:1161
+#: warehouse/manage/views/organizations.py:1160
msgid "Organization invitation could not be re-sent."
msgstr ""
-#: warehouse/manage/views/organizations.py:1209
+#: warehouse/manage/views/organizations.py:1208
#, python-brace-format
msgid "Expired invitation for '${username}' deleted."
msgstr ""
-#: warehouse/manage/views/organizations.py:1877
+#: warehouse/manage/views/organizations.py:1875
msgid ""
"This publisher has already been registered in your organization. See your "
"existing pending publishers below."
@@ -833,33 +845,33 @@ msgid ""
"{url}'>here to create a Trusted Publisher for it."
msgstr ""
-#: warehouse/oidc/forms/_core.py:77
+#: warehouse/oidc/forms/_core.py:75
msgid "This project already exists."
msgstr ""
-#: warehouse/oidc/forms/_core.py:82
+#: warehouse/oidc/forms/_core.py:79
msgid "This project name isn't allowed"
msgstr ""
-#: warehouse/oidc/forms/_core.py:86
+#: warehouse/oidc/forms/_core.py:83
msgid "This project name is too similar to an existing project"
msgstr ""
-#: warehouse/oidc/forms/_core.py:91
+#: warehouse/oidc/forms/_core.py:88
msgid ""
"This project name isn't allowed (conflict with the Python standard library "
"module name)"
msgstr ""
-#: warehouse/oidc/forms/_core.py:119 warehouse/oidc/forms/_core.py:130
+#: warehouse/oidc/forms/_core.py:115 warehouse/oidc/forms/_core.py:126
msgid "Specify a publisher ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:120 warehouse/oidc/forms/_core.py:131
+#: warehouse/oidc/forms/_core.py:116 warehouse/oidc/forms/_core.py:127
msgid "Publisher must be specified by ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:136
+#: warehouse/oidc/forms/_core.py:132
msgid "Specify an environment name"
msgstr ""
@@ -898,7 +910,7 @@ msgstr ""
msgid "ActiveState organization not found"
msgstr ""
-#: warehouse/oidc/forms/activestate.py:166
+#: warehouse/oidc/forms/activestate.py:164
msgid "ActiveState actor not found"
msgstr ""
@@ -926,43 +938,43 @@ msgstr ""
msgid "GitHub has rate-limited this action. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:95
+#: warehouse/oidc/forms/github.py:94
msgid "Unexpected error from GitHub. Try again."
msgstr ""
-#: warehouse/oidc/forms/github.py:103
+#: warehouse/oidc/forms/github.py:102
msgid "Unexpected connection error from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:112
+#: warehouse/oidc/forms/github.py:111
msgid "Unexpected timeout from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:124
+#: warehouse/oidc/forms/github.py:123
msgid "Invalid GitHub user or organization name."
msgstr ""
-#: warehouse/oidc/forms/github.py:140
+#: warehouse/oidc/forms/github.py:137
msgid "Workflow name must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/github.py:145
+#: warehouse/oidc/forms/github.py:142
msgid "Workflow filename must be a filename only, without directories"
msgstr ""
-#: warehouse/oidc/forms/github.py:156
+#: warehouse/oidc/forms/github.py:153
msgid "Environment name is too long (maximum is 255 characters)"
msgstr ""
-#: warehouse/oidc/forms/github.py:161
+#: warehouse/oidc/forms/github.py:158
msgid "Environment name may not start with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:166
+#: warehouse/oidc/forms/github.py:163
msgid "Environment name may not end with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:172
+#: warehouse/oidc/forms/github.py:169
msgid ""
"Environment name must not contain non-printable characters or the characters "
"\"'\", \"\"\", \"`\", \",\", \";\", \"\\\""
@@ -992,11 +1004,11 @@ msgstr ""
msgid "Choose GitLab issuer URL"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:111
+#: warehouse/oidc/forms/gitlab.py:109
msgid "Top-level pipeline file path must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:115
+#: warehouse/oidc/forms/gitlab.py:113
msgid "Top-level pipeline file path cannot start or end with /"
msgstr ""
@@ -1004,7 +1016,7 @@ msgstr ""
msgid "Provide an Inspector link to specific lines of code."
msgstr ""
-#: warehouse/packaging/views.py:346
+#: warehouse/packaging/views.py:357
msgid "Your report has been recorded. Thank you for your help."
msgstr ""
@@ -1116,14 +1128,14 @@ msgstr ""
#: warehouse/templates/404.html:33 warehouse/templates/500.html:18
#: warehouse/templates/accounts/two-factor.html:35
-#: warehouse/templates/base.html:340 warehouse/templates/base.html:346
-#: warehouse/templates/base.html:352 warehouse/templates/base.html:358
-#: warehouse/templates/base.html:374 warehouse/templates/base.html:380
-#: warehouse/templates/base.html:405 warehouse/templates/base.html:411
-#: warehouse/templates/base.html:420 warehouse/templates/base.html:433
-#: warehouse/templates/base.html:442 warehouse/templates/base.html:448
-#: warehouse/templates/base.html:454 warehouse/templates/base.html:467
-#: warehouse/templates/base.html:484
+#: warehouse/templates/base.html:342 warehouse/templates/base.html:348
+#: warehouse/templates/base.html:354 warehouse/templates/base.html:360
+#: warehouse/templates/base.html:376 warehouse/templates/base.html:382
+#: warehouse/templates/base.html:407 warehouse/templates/base.html:413
+#: warehouse/templates/base.html:422 warehouse/templates/base.html:435
+#: warehouse/templates/base.html:444 warehouse/templates/base.html:450
+#: warehouse/templates/base.html:456 warehouse/templates/base.html:469
+#: warehouse/templates/base.html:486 warehouse/templates/base.html:494
#: warehouse/templates/includes/accounts/profile-callout.html:17
#: warehouse/templates/includes/file-details.html:129
#: warehouse/templates/index.html:98 warehouse/templates/index.html:105
@@ -1135,13 +1147,13 @@ msgstr ""
#: warehouse/templates/manage/account/webauthn-provision.html:51
#: warehouse/templates/manage/account/webauthn-provision.html:68
#: warehouse/templates/manage/manage_base.html:210
-#: warehouse/templates/manage/project/release.html:162
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
-#: warehouse/templates/manage/project/releases.html:190
-#: warehouse/templates/packaging/detail.html:446
-#: warehouse/templates/packaging/detail.html:464
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
+#: warehouse/templates/manage/project/releases.html:210
+#: warehouse/templates/packaging/detail.html:469
+#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:503
#: warehouse/templates/pages/classifiers.html:17
#: warehouse/templates/pages/help.html:7
#: warehouse/templates/pages/help.html:441
@@ -1187,23 +1199,23 @@ msgstr ""
#: warehouse/templates/pages/help.html:1213
#: warehouse/templates/pages/help.html:1256
#: warehouse/templates/pages/help.html:1263
-#: warehouse/templates/pages/help.html:1309
-#: warehouse/templates/pages/help.html:1314
-#: warehouse/templates/pages/help.html:1319
-#: warehouse/templates/pages/help.html:1334
-#: warehouse/templates/pages/help.html:1347
-#: warehouse/templates/pages/help.html:1366
-#: warehouse/templates/pages/help.html:1378
-#: warehouse/templates/pages/help.html:1395
-#: warehouse/templates/pages/help.html:1403
-#: warehouse/templates/pages/help.html:1414
-#: warehouse/templates/pages/help.html:1444
-#: warehouse/templates/pages/help.html:1459
-#: warehouse/templates/pages/help.html:1465
-#: warehouse/templates/pages/help.html:1471
-#: warehouse/templates/pages/help.html:1477
-#: warehouse/templates/pages/help.html:1483
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1310
+#: warehouse/templates/pages/help.html:1315
+#: warehouse/templates/pages/help.html:1320
+#: warehouse/templates/pages/help.html:1335
+#: warehouse/templates/pages/help.html:1348
+#: warehouse/templates/pages/help.html:1367
+#: warehouse/templates/pages/help.html:1379
+#: warehouse/templates/pages/help.html:1396
+#: warehouse/templates/pages/help.html:1404
+#: warehouse/templates/pages/help.html:1415
+#: warehouse/templates/pages/help.html:1445
+#: warehouse/templates/pages/help.html:1460
+#: warehouse/templates/pages/help.html:1466
+#: warehouse/templates/pages/help.html:1472
+#: warehouse/templates/pages/help.html:1478
+#: warehouse/templates/pages/help.html:1484
+#: warehouse/templates/pages/help.html:1491
#: warehouse/templates/pages/sponsors.html:23
#: warehouse/templates/pages/sponsors.html:34
#: warehouse/templates/pages/sponsors.html:42
@@ -1277,7 +1289,7 @@ msgid "Main navigation"
msgstr ""
#: warehouse/templates/base.html:34 warehouse/templates/base.html:68
-#: warehouse/templates/base.html:335
+#: warehouse/templates/base.html:337
#: warehouse/templates/includes/current-user-indicator.html:77
#: warehouse/templates/pages/help.html:209
#: warehouse/templates/pages/sitemap.html:19
@@ -1352,16 +1364,16 @@ msgstr ""
msgid "RSS: 40 newest packages"
msgstr ""
-#: warehouse/templates/base.html:206
+#: warehouse/templates/base.html:208
msgid "Skip to main content"
msgstr ""
-#: warehouse/templates/base.html:210
+#: warehouse/templates/base.html:212
msgid "Switch to mobile version"
msgstr ""
-#: warehouse/templates/base.html:217 warehouse/templates/base.html:226
-#: warehouse/templates/base.html:236
+#: warehouse/templates/base.html:219 warehouse/templates/base.html:228
+#: warehouse/templates/base.html:238
#: warehouse/templates/includes/flash-messages.html:41
#: warehouse/templates/includes/session-notifications.html:19
#: warehouse/templates/manage/account.html:1011
@@ -1370,7 +1382,7 @@ msgstr ""
#: warehouse/templates/manage/organization/settings.html:291
#: warehouse/templates/manage/organization/settings.html:297
#: warehouse/templates/manage/project/documentation.html:13
-#: warehouse/templates/manage/project/release.html:209
+#: warehouse/templates/manage/project/release.html:236
#: warehouse/templates/manage/project/settings.html:78
#: warehouse/templates/manage/project/settings.html:124
#: warehouse/templates/manage/project/settings.html:365
@@ -1378,176 +1390,183 @@ msgstr ""
msgid "Warning"
msgstr ""
-#: warehouse/templates/base.html:219
+#: warehouse/templates/base.html:221
msgid "You are using an unsupported browser, upgrade to a newer version."
msgstr ""
-#: warehouse/templates/base.html:228
+#: warehouse/templates/base.html:230
msgid ""
"You are using TestPyPI – a separate instance of the Python Package Index "
"that allows you to try distribution tools and processes without affecting "
"the real index."
msgstr ""
-#: warehouse/templates/base.html:238
+#: warehouse/templates/base.html:240
msgid ""
"Some features may not work without JavaScript. Please try enabling it if you "
"encounter problems."
msgstr ""
-#: warehouse/templates/base.html:273 warehouse/templates/base.html:305
+#: warehouse/templates/base.html:275 warehouse/templates/base.html:307
#: warehouse/templates/error-base-with-search.html:8
#: warehouse/templates/index.html:29
msgid "Search PyPI"
msgstr ""
-#: warehouse/templates/base.html:278 warehouse/templates/index.html:35
+#: warehouse/templates/base.html:280 warehouse/templates/index.html:35
msgid "Type '/' to search projects"
msgstr ""
-#: warehouse/templates/base.html:289 warehouse/templates/base.html:318
+#: warehouse/templates/base.html:291 warehouse/templates/base.html:320
#: warehouse/templates/error-base-with-search.html:19
#: warehouse/templates/index.html:44
msgid "Search"
msgstr ""
-#: warehouse/templates/base.html:310
+#: warehouse/templates/base.html:312
#: warehouse/templates/error-base-with-search.html:13
msgid "Search projects"
msgstr ""
-#: warehouse/templates/base.html:336
+#: warehouse/templates/base.html:338
msgid "Help navigation"
msgstr ""
-#: warehouse/templates/base.html:342
+#: warehouse/templates/base.html:344
msgid "Installing packages"
msgstr ""
-#: warehouse/templates/base.html:348
+#: warehouse/templates/base.html:350
msgid "Uploading packages"
msgstr ""
-#: warehouse/templates/base.html:354
+#: warehouse/templates/base.html:356
msgid "User guide"
msgstr ""
-#: warehouse/templates/base.html:360
+#: warehouse/templates/base.html:362
msgid "Project name retention"
msgstr ""
-#: warehouse/templates/base.html:363
+#: warehouse/templates/base.html:365
msgid "FAQs"
msgstr ""
-#: warehouse/templates/base.html:369 warehouse/templates/pages/sitemap.html:34
+#: warehouse/templates/base.html:371 warehouse/templates/pages/sitemap.html:34
msgid "About PyPI"
msgstr ""
-#: warehouse/templates/base.html:370
+#: warehouse/templates/base.html:372
msgid "About PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:376
+#: warehouse/templates/base.html:378
msgid "PyPI Blog"
msgstr ""
-#: warehouse/templates/base.html:382
+#: warehouse/templates/base.html:384
msgid "Infrastructure dashboard"
msgstr ""
-#: warehouse/templates/base.html:385 warehouse/templates/pages/sitemap.html:40
+#: warehouse/templates/base.html:387 warehouse/templates/pages/sitemap.html:40
#: warehouse/templates/pages/stats.html:4
msgid "Statistics"
msgstr ""
-#: warehouse/templates/base.html:388
+#: warehouse/templates/base.html:390
msgid "Logos & trademarks"
msgstr ""
-#: warehouse/templates/base.html:391
+#: warehouse/templates/base.html:393
msgid "Our sponsors"
msgstr ""
-#: warehouse/templates/base.html:397
+#: warehouse/templates/base.html:399
msgid "Contributing to PyPI"
msgstr ""
-#: warehouse/templates/base.html:398
+#: warehouse/templates/base.html:400
msgid "How to contribute navigation"
msgstr ""
-#: warehouse/templates/base.html:401
+#: warehouse/templates/base.html:403
msgid "Bugs and feedback"
msgstr ""
-#: warehouse/templates/base.html:407
+#: warehouse/templates/base.html:409
msgid "Contribute on GitHub"
msgstr ""
-#: warehouse/templates/base.html:413
+#: warehouse/templates/base.html:415
msgid "Translate PyPI"
msgstr ""
-#: warehouse/templates/base.html:416
+#: warehouse/templates/base.html:418
msgid "Sponsor PyPI"
msgstr ""
-#: warehouse/templates/base.html:422
+#: warehouse/templates/base.html:424
msgid "Development credits"
msgstr ""
-#: warehouse/templates/base.html:428 warehouse/templates/pages/sitemap.html:10
+#: warehouse/templates/base.html:430 warehouse/templates/pages/sitemap.html:10
msgid "Using PyPI"
msgstr ""
-#: warehouse/templates/base.html:429
+#: warehouse/templates/base.html:431
msgid "Using PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:435
+#: warehouse/templates/base.html:437
#: warehouse/templates/manage/organization/activate_subscription.html:21
msgid "Terms of Service"
msgstr ""
-#: warehouse/templates/base.html:438
+#: warehouse/templates/base.html:440
msgid "Report security issue"
msgstr ""
-#: warehouse/templates/base.html:444
+#: warehouse/templates/base.html:446
msgid "Code of conduct"
msgstr ""
-#: warehouse/templates/base.html:450
+#: warehouse/templates/base.html:452
msgid "Privacy Notice"
msgstr ""
-#: warehouse/templates/base.html:456
+#: warehouse/templates/base.html:458
msgid "Acceptable Use Policy"
msgstr ""
-#: warehouse/templates/base.html:466
+#: warehouse/templates/base.html:468
msgid "Status:"
msgstr ""
-#: warehouse/templates/base.html:470
+#: warehouse/templates/base.html:472
msgid "all systems operational"
msgstr ""
-#: warehouse/templates/base.html:474
+#: warehouse/templates/base.html:476
msgid ""
"Developed and maintained by the Python community, for the Python community."
msgstr ""
-#: warehouse/templates/base.html:476
+#: warehouse/templates/base.html:478
msgid "Donate today!"
msgstr ""
-#: warehouse/templates/base.html:488 warehouse/templates/pages/sitemap.html:4
+#: warehouse/templates/base.html:490 warehouse/templates/pages/sitemap.html:4
msgid "Site map"
msgstr ""
-#: warehouse/templates/base.html:495
+#: warehouse/templates/base.html:494
+#, python-format
+msgid ""
+"Deployed from %(sha)s"
+msgstr ""
+
+#: warehouse/templates/base.html:502
msgid "Switch to desktop version"
msgstr ""
@@ -3075,8 +3094,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:546
#: warehouse/templates/manage/manage_base.html:344
#: warehouse/templates/manage/manage_base.html:347
-#: warehouse/templates/manage/project/release.html:158
-#: warehouse/templates/manage/project/releases.html:186
+#: warehouse/templates/manage/project/release.html:180
+#: warehouse/templates/manage/project/releases.html:206
#: warehouse/templates/manage/project/settings.html:63
#: warehouse/templates/manage/unverified-account.html:186
#: warehouse/templates/manage/unverified-account.html:189
@@ -3167,7 +3186,7 @@ msgstr ""
#: warehouse/templates/manage/account/totp-provision.html:46
#: warehouse/templates/manage/unverified-account.html:200
#: warehouse/templates/packaging/detail.html:150
-#: warehouse/templates/packaging/detail.html:500
+#: warehouse/templates/packaging/detail.html:523
#: warehouse/templates/pages/classifiers.html:42
msgid "Copy to clipboard"
msgstr ""
@@ -3179,7 +3198,7 @@ msgstr ""
#: warehouse/templates/manage/account/recovery_codes-provision.html:54
#: warehouse/templates/manage/account/totp-provision.html:47
#: warehouse/templates/manage/unverified-account.html:201
-#: warehouse/templates/packaging/detail.html:501
+#: warehouse/templates/packaging/detail.html:524
#: warehouse/templates/pages/classifiers.html:43
msgid "Copy"
msgstr ""
@@ -3317,7 +3336,7 @@ msgstr ""
#: warehouse/templates/includes/manage/manage-project-menu.html:9
#: warehouse/templates/manage/project/release.html:21
-#: warehouse/templates/manage/project/releases.html:161
+#: warehouse/templates/manage/project/releases.html:181
msgid "Releases"
msgstr ""
@@ -3518,8 +3537,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:84
#: warehouse/templates/manage/account.html:177
-#: warehouse/templates/manage/project/release.html:74
-#: warehouse/templates/manage/project/releases.html:53
+#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/releases.html:56
#: warehouse/templates/manage/unverified-account.html:69
#: warehouse/templates/manage/unverified-account.html:147
msgid "Options"
@@ -3911,7 +3930,7 @@ msgid "Two factor method:"
msgstr ""
#: warehouse/templates/manage/account.html:692
-#: warehouse/templates/manage/project/release.html:61
+#: warehouse/templates/manage/project/release.html:79
#: warehouse/templates/manage/unverified-account.html:330
msgid "None"
msgstr ""
@@ -4373,7 +4392,8 @@ msgstr ""
#: warehouse/templates/manage/organizations.html:128
#: warehouse/templates/manage/organizations.html:134
#: warehouse/templates/manage/organizations.html:183
-#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:69
+#: warehouse/templates/manage/project/releases.html:94
#: warehouse/templates/manage/projects.html:99
#: warehouse/templates/manage/projects.html:105
#: warehouse/templates/manage/team/projects.html:49
@@ -4765,7 +4785,8 @@ msgstr ""
#: warehouse/templates/manage/organization/projects.html:67
#: warehouse/templates/manage/organization/teams.html:44
#: warehouse/templates/manage/organizations.html:106
-#: warehouse/templates/manage/project/releases.html:83
+#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:101
#: warehouse/templates/manage/projects.html:111
#: warehouse/templates/manage/projects.html:116
#: warehouse/templates/manage/team/projects.html:61
@@ -5224,7 +5245,7 @@ msgstr ""
#: warehouse/templates/manage/organization/publishing.html:156
#: warehouse/templates/manage/project/documentation.html:21
#: warehouse/templates/manage/project/publishing.html:153
-#: warehouse/templates/manage/project/release.html:139
+#: warehouse/templates/manage/project/release.html:160
#: warehouse/templates/pages/stats.html:65
msgid "Project name"
msgstr ""
@@ -5393,51 +5414,51 @@ msgstr ""
msgid "Manage publishers"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:387
+#: warehouse/templates/manage/account/publishing.html:386
msgid "Project"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:407
+#: warehouse/templates/manage/account/publishing.html:404
msgid ""
"No publishers are currently configured. Publishers for existing projects can "
"be added in the publishing configuration for each individual project."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:417
+#: warehouse/templates/manage/account/publishing.html:414
#: warehouse/templates/manage/organization/publishing.html:414
msgid "Pending project name"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:418
+#: warehouse/templates/manage/account/publishing.html:415
#: warehouse/templates/manage/organization/publishing.html:415
#: warehouse/templates/manage/project/publishing.html:375
msgid "Publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:419
+#: warehouse/templates/manage/account/publishing.html:416
#: warehouse/templates/manage/organization/publishing.html:416
#: warehouse/templates/manage/project/publishing.html:376
msgid "Details"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:429
+#: warehouse/templates/manage/account/publishing.html:426
#: warehouse/templates/manage/organization/publishing.html:426
msgid ""
"No pending publishers are currently configured. Publishers for projects that "
"don't exist yet can be added below."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:436
+#: warehouse/templates/manage/account/publishing.html:433
#: warehouse/templates/manage/organization/publishing.html:431
msgid "Add a new pending publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:438
+#: warehouse/templates/manage/account/publishing.html:435
#: warehouse/templates/manage/organization/publishing.html:432
msgid "You can use this page to register \"pending\" trusted publishers."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:443
+#: warehouse/templates/manage/account/publishing.html:440
#: warehouse/templates/manage/organization/publishing.html:434
#, python-format
msgid ""
@@ -5449,7 +5470,7 @@ msgid ""
"href=\"%(href)s\">here."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:453
+#: warehouse/templates/manage/account/publishing.html:450
#: warehouse/templates/manage/organization/publishing.html:444
msgid ""
"Configuring a \"pending\" publisher for a project name does not"
@@ -5457,7 +5478,7 @@ msgid ""
"create it, including via their own \"pending\" publisher."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:488
+#: warehouse/templates/manage/account/publishing.html:485
#: warehouse/templates/manage/project/publishing.html:419
#, python-format
msgid ""
@@ -6413,8 +6434,8 @@ msgid "Delete expired invitation for %(user)s"
msgstr ""
#: warehouse/templates/manage/organization/roles.html:352
-#: warehouse/templates/manage/project/release.html:96
-#: warehouse/templates/manage/project/releases.html:98
+#: warehouse/templates/manage/project/release.html:115
+#: warehouse/templates/manage/project/releases.html:116
#: warehouse/templates/manage/project/settings.html:239
msgid "Delete"
msgstr ""
@@ -6746,7 +6767,7 @@ msgstr ""
#: warehouse/templates/manage/project/history.html:77
#: warehouse/templates/manage/project/history.html:108
-#: warehouse/templates/manage/project/release.html:103
+#: warehouse/templates/manage/project/release.html:122
msgid "Filename:"
msgstr ""
@@ -6931,12 +6952,12 @@ msgid "Back to projects"
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:51
-#: warehouse/templates/packaging/detail.html:329
+#: warehouse/templates/packaging/detail.html:335
msgid "This project has been quarantined."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:53
-#: warehouse/templates/packaging/detail.html:331
+#: warehouse/templates/packaging/detail.html:337
msgid ""
"PyPI Admins need to review this project before it can be restored. While in "
"quarantine, the project is not installable by clients, and cannot be being "
@@ -6944,14 +6965,16 @@ msgid ""
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:60
-#: warehouse/templates/packaging/detail.html:338
+#: warehouse/templates/manage/project/release.html:46
+#: warehouse/templates/packaging/detail.html:344
+#: warehouse/templates/packaging/detail.html:361
#, python-format
msgid ""
"Read more in the project in quarantine help article."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:67
-#: warehouse/templates/packaging/detail.html:345
+#: warehouse/templates/packaging/detail.html:368
msgid "This project has been archived."
msgstr ""
@@ -7027,7 +7050,7 @@ msgid "Version %(version)s"
msgstr ""
#: warehouse/templates/manage/project/release.html:25
-#: warehouse/templates/manage/project/releases.html:169
+#: warehouse/templates/manage/project/releases.html:189
msgid "Yanked releases"
msgstr ""
@@ -7036,57 +7059,70 @@ msgid "view release"
msgstr ""
#: warehouse/templates/manage/project/release.html:36
+#: warehouse/templates/packaging/detail.html:351
+msgid "This release has been quarantined."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:38
+#: warehouse/templates/packaging/detail.html:353
+msgid ""
+"PyPI Admins need to review this release before it can be restored. While in "
+"quarantine, the release is not installable by clients, and cannot be "
+"modified by its maintainers. Other releases of this project are unaffected."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:54
#, python-format
msgid "Files for release %(version)s of %(project_name)s"
msgstr ""
-#: warehouse/templates/manage/project/release.html:39
-#: warehouse/templates/manage/project/release.html:50
+#: warehouse/templates/manage/project/release.html:57
+#: warehouse/templates/manage/project/release.html:68
msgid "Filename, size"
msgstr ""
-#: warehouse/templates/manage/project/release.html:40
-#: warehouse/templates/manage/project/release.html:56
+#: warehouse/templates/manage/project/release.html:58
+#: warehouse/templates/manage/project/release.html:74
msgid "Type"
msgstr ""
-#: warehouse/templates/manage/project/release.html:41
-#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:59
+#: warehouse/templates/manage/project/release.html:78
msgid "Python version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:42
-#: warehouse/templates/manage/project/release.html:64
+#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:82
msgid "Upload date"
msgstr ""
-#: warehouse/templates/manage/project/release.html:73
+#: warehouse/templates/manage/project/release.html:91
msgid "View file options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:81
+#: warehouse/templates/manage/project/release.html:99
msgid "File options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:86
+#: warehouse/templates/manage/project/release.html:104
msgid "Download"
msgstr ""
-#: warehouse/templates/manage/project/release.html:90
+#: warehouse/templates/manage/project/release.html:109
msgid "Delete file from"
msgstr ""
-#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/release.html:111
msgid "Delete file"
msgstr ""
-#: warehouse/templates/manage/project/release.html:111
+#: warehouse/templates/manage/project/release.html:130
msgid ""
"I understand that my users will no longer be able to install this file for "
"this release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:118
+#: warehouse/templates/manage/project/release.html:137
#, python-format
msgid ""
"I understand that I will %(filename)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:125
-#: warehouse/templates/manage/project/release.html:257
+#: warehouse/templates/manage/project/release.html:144
+#: warehouse/templates/manage/project/release.html:284
msgid "I understand that I will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:132
-#: warehouse/templates/manage/project/release.html:263
+#: warehouse/templates/manage/project/release.html:151
+#: warehouse/templates/manage/project/release.html:290
msgid ""
"I understand that the PyPI administrators will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:150
+#: warehouse/templates/manage/project/release.html:172
msgid "Uploading new files"
msgstr ""
-#: warehouse/templates/manage/project/release.html:152
+#: warehouse/templates/manage/project/release.html:174
msgid "No files found"
msgstr ""
-#: warehouse/templates/manage/project/release.html:155
-#: warehouse/templates/manage/project/releases.html:183
+#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/releases.html:203
#: warehouse/templates/manage/project/settings.html:60
msgid "Dismiss"
msgstr ""
-#: warehouse/templates/manage/project/release.html:162
+#: warehouse/templates/manage/project/release.html:184
#, python-format
msgid ""
"Learn how to upload files on the Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/manage/project/release.html:165
+#: warehouse/templates/manage/project/release.html:187
msgid "Release settings"
msgstr ""
-#: warehouse/templates/manage/project/release.html:168
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/releases.html:111
+#: warehouse/templates/manage/project/release.html:190
+msgid ""
+"Yank and delete actions are unavailable while this release is in quarantine."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:195
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/releases.html:131
msgid "Yank release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:171
+#: warehouse/templates/manage/project/release.html:198
#, python-format
msgid ""
"Yanking will mark this release (and %(count)s file within it) to be ignored "
@@ -7147,53 +7188,53 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/release.html:204
msgid ""
"Yanking will mark this release to be ignored when installing in most common "
"scenarios."
msgstr ""
-#: warehouse/templates/manage/project/release.html:181
+#: warehouse/templates/manage/project/release.html:208
#, python-format
msgid ""
"This release will still be installable for users pinning to this exact "
"version, e.g. when using %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:211
#, python-format
msgid "For more information, see PEP 592."
msgstr ""
-#: warehouse/templates/manage/project/release.html:190
-#: warehouse/templates/manage/project/releases.html:114
+#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/releases.html:134
#, python-format
msgid ""
"You may provide a reason for yanking this release, which will be displayed "
"by pip to users who install %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:194
-#: warehouse/templates/manage/project/releases.html:118
+#: warehouse/templates/manage/project/release.html:221
+#: warehouse/templates/manage/project/releases.html:138
msgid "Reason (optional)"
msgstr ""
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/release.html:267
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/release.html:294
#: warehouse/templates/manage/project/releases.html:9
-#: warehouse/templates/manage/project/releases.html:108
-#: warehouse/templates/manage/project/releases.html:126
+#: warehouse/templates/manage/project/releases.html:128
#: warehouse/templates/manage/project/releases.html:146
+#: warehouse/templates/manage/project/releases.html:166
msgid "Version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:207
-#: warehouse/templates/manage/project/release.html:267
-#: warehouse/templates/manage/project/releases.html:128
+#: warehouse/templates/manage/project/release.html:234
+#: warehouse/templates/manage/project/release.html:294
+#: warehouse/templates/manage/project/releases.html:148
msgid "Delete release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:211
+#: warehouse/templates/manage/project/release.html:238
#, python-format
msgid ""
"Deleting will irreversibly delete this release along with %(count)s file."
@@ -7202,27 +7243,27 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/release.html:244
msgid "Deleting will irreversibly delete this release."
msgstr ""
-#: warehouse/templates/manage/project/release.html:220
-#: warehouse/templates/manage/project/releases.html:131
+#: warehouse/templates/manage/project/release.html:247
+#: warehouse/templates/manage/project/releases.html:151
msgid ""
"You will not be able to re-upload a new distribution of the same type with "
"the same version number."
msgstr ""
-#: warehouse/templates/manage/project/release.html:223
-#: warehouse/templates/manage/project/releases.html:134
+#: warehouse/templates/manage/project/release.html:250
+#: warehouse/templates/manage/project/releases.html:154
msgid ""
"Deletion will break any downstream projects relying on a pinned version of "
"this package. It is intended as a last resort to address legal issues or "
"remove harmful releases."
msgstr ""
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
#, python-format
msgid ""
"Consider post release instead."
msgstr ""
-#: warehouse/templates/manage/project/release.html:239
+#: warehouse/templates/manage/project/release.html:266
#, python-format
msgid ""
"I understand that I am permanently deleting all files for the "
"%(release_version)s release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:245
+#: warehouse/templates/manage/project/release.html:272
msgid ""
"I understand that my users will no longer be able to install this release of "
"this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:251
+#: warehouse/templates/manage/project/release.html:278
#, python-format
msgid ""
"I understand that I will installing packages."
msgstr ""
-#: warehouse/templates/packaging/detail.html:449
+#: warehouse/templates/packaging/detail.html:472
msgid "Source Distribution"
msgid_plural "Source Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:463
+#: warehouse/templates/packaging/detail.html:486
msgid "No source distribution files available for this release."
msgstr ""
-#: warehouse/templates/packaging/detail.html:464
+#: warehouse/templates/packaging/detail.html:487
#, python-format
msgid ""
"See tutorial on generating distribution archives."
msgstr ""
-#: warehouse/templates/packaging/detail.html:470
+#: warehouse/templates/packaging/detail.html:493
msgid "Built Distribution"
msgid_plural "Built Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:477
+#: warehouse/templates/packaging/detail.html:500
msgid "Filter files by name, interpreter, ABI, and platform."
msgstr ""
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/packaging/detail.html:503
#, python-format
msgid ""
"If you're not sure about the file name format, learn more about wheel file names."
msgstr ""
-#: warehouse/templates/packaging/detail.html:484
+#: warehouse/templates/packaging/detail.html:507
msgid ""
"The dropdown lists show the available interpreters, ABIs, and platforms."
msgstr ""
-#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:510
msgid "Enable javascript to be able to filter the list of wheel files."
msgstr ""
-#: warehouse/templates/packaging/detail.html:491
+#: warehouse/templates/packaging/detail.html:514
msgid "Copy a direct link to the current filters"
msgstr ""
-#: warehouse/templates/packaging/detail.html:509
-#: warehouse/templates/packaging/detail.html:514
+#: warehouse/templates/packaging/detail.html:532
+#: warehouse/templates/packaging/detail.html:537
msgid "File name"
msgstr ""
@@ -8376,7 +8425,7 @@ msgid ""
msgstr ""
#: warehouse/templates/pages/help.html:181
-msgid "My project says it's in quarantine. What does that mean?"
+msgid "My project or release says it's in quarantine. What does that mean?"
msgstr ""
#: warehouse/templates/pages/help.html:185
@@ -8442,7 +8491,7 @@ msgid "Troubleshooting"
msgstr ""
#: warehouse/templates/pages/help.html:393
-#: warehouse/templates/pages/help.html:1306
+#: warehouse/templates/pages/help.html:1307
msgid "About"
msgstr ""
@@ -9246,7 +9295,7 @@ msgstr ""
#: warehouse/templates/pages/help.html:1079
msgid ""
"Deletion of a project, release or file on PyPI is permanent and "
-"irreversable, without exception. Deletion of a project makes it "
+"irreversible, without exception. Deletion of a project makes it "
"uninstallable, and releases the project name for use by any other PyPI user. "
"Deleted files cannot be re-uploaded. "
"Deleted projects, releases or files cannot be restored by PyPI "
@@ -9514,29 +9563,30 @@ msgstr ""
#: warehouse/templates/pages/help.html:1282
#, python-format
msgid ""
-"Projects may get placed in quarantine for any number of reasons, such as "
-"suspicion of malicious activity, spam, or other violations of the Terms of Service or "
-"Acceptable Use "
-"Policy."
+"Projects or individual releases may get placed in quarantine for any number "
+"of reasons, such as suspicion of malicious activity, spam, or other "
+"violations of the Terms of Service or Acceptable Use Policy."
msgstr ""
#: warehouse/templates/pages/help.html:1291
msgid ""
-"While in quarantine, the project is not installable by clients, and cannot "
-"be being modified by its maintainers. PyPI Administrators will need to "
-"review this project before it can be restored."
+"While in quarantine, the project or release is not installable by clients, "
+"and cannot be modified by its maintainers. PyPI Administrators will need to "
+"review it before it can be restored. When a single release is quarantined, "
+"other releases of the same project are unaffected."
msgstr ""
-#: warehouse/templates/pages/help.html:1298
+#: warehouse/templates/pages/help.html:1299
#, python-format
msgid ""
-"If you believe your project has mistakenly been flagged for quarantine, "
-"contact PyPI via security@pypi.org with any "
-"details."
+"If you believe your project or release has mistakenly been flagged for "
+"quarantine, contact PyPI via security@pypi.org "
+"with any details."
msgstr ""
-#: warehouse/templates/pages/help.html:1309
+#: warehouse/templates/pages/help.html:1310
#, python-format
msgid ""
"PyPI is powered by the Warehouse project; ."
msgstr ""
-#: warehouse/templates/pages/help.html:1344
+#: warehouse/templates/pages/help.html:1345
msgid ""
"As of April 16, 2018, PyPI.org is at \"production\" status, meaning that it "
"has moved out of beta and replaced the old site (pypi.python.org). It is now "
"robust, tested, and ready for expected browser and API traffic."
msgstr ""
-#: warehouse/templates/pages/help.html:1347
+#: warehouse/templates/pages/help.html:1348
#, python-format
msgid ""
"PyPI is heavily cached and distributed via private index."
msgstr ""
-#: warehouse/templates/pages/help.html:1366
+#: warehouse/templates/pages/help.html:1367
#, python-format
msgid ""
"We have a huge amount of work to do to continue to maintain and improve PyPI "
@@ -9608,22 +9658,22 @@ msgid ""
"rel=\"noopener\">the Warehouse project)."
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
msgid "Financial:"
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
#, python-format
msgid ""
"We would deeply appreciate your donations to fund "
"development and maintenance."
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid "Development:"
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid ""
"Warehouse is open source, and we would love to see some new faces working on "
"the project. You do not need to be an experienced open-"
@@ -9631,7 +9681,7 @@ msgid ""
"make your first open source pull request!"
msgstr ""
-#: warehouse/templates/pages/help.html:1378
+#: warehouse/templates/pages/help.html:1379
#, python-format
msgid ""
"If you have skills in Python, Full-Text Search, HTML, SCSS, JavaScript, or "
@@ -9644,7 +9694,7 @@ msgid ""
"recommend you start here."
msgstr ""
-#: warehouse/templates/pages/help.html:1395
+#: warehouse/templates/pages/help.html:1396
#, python-format
msgid ""
"Issues are grouped into Python packaging forum on Discourse."
msgstr ""
-#: warehouse/templates/pages/help.html:1414
+#: warehouse/templates/pages/help.html:1415
#, python-format
msgid ""
"Changes to PyPI are generally announced on both the RSS feed."
msgstr ""
-#: warehouse/templates/pages/help.html:1432
+#: warehouse/templates/pages/help.html:1433
#, python-format
msgid ""
"All traffic is routed through our global CDN, which lists their public IP "
"addresses here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1435
+#: warehouse/templates/pages/help.html:1436
#, python-format
msgid ""
"More information about this list can be found here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1439
+#: warehouse/templates/pages/help.html:1440
msgid ""
"When Warehouse's maintainers are deploying new features, at first we mark "
"them with a small \"beta feature\" symbol to tell you: this should probably "
"work fine, but it's new and less tested than other site functionality."
msgstr ""
-#: warehouse/templates/pages/help.html:1441
+#: warehouse/templates/pages/help.html:1442
msgid "Currently, no features are in beta."
msgstr ""
-#: warehouse/templates/pages/help.html:1444
+#: warehouse/templates/pages/help.html:1445
#, python-format
msgid ""
"\"PyPI\" should be pronounced like \"pie pea eye\", specifically with the "
@@ -9713,43 +9763,43 @@ msgid ""
"language."
msgstr ""
-#: warehouse/templates/pages/help.html:1454
+#: warehouse/templates/pages/help.html:1455
msgid "Resources"
msgstr ""
-#: warehouse/templates/pages/help.html:1455
+#: warehouse/templates/pages/help.html:1456
msgid "Looking for something else? Perhaps these links will help:"
msgstr ""
-#: warehouse/templates/pages/help.html:1461
+#: warehouse/templates/pages/help.html:1462
msgid "PyPI User Documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1467
+#: warehouse/templates/pages/help.html:1468
msgid "Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/pages/help.html:1473
+#: warehouse/templates/pages/help.html:1474
msgid "Python documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1479
+#: warehouse/templates/pages/help.html:1480
msgid "(main Python website)"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "Python community page"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "(lists IRC channels, mailing lists, etc.)"
msgstr ""
-#: warehouse/templates/pages/help.html:1488
+#: warehouse/templates/pages/help.html:1489
msgid "Contact"
msgstr ""
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1491
#, python-format
msgid ""
"The 1;\n"
"X-Generator: Weblate 5.15-dev\n"
-#: warehouse/views.py:149
+#: warehouse/views.py:150
msgid ""
"You must verify your **primary** email address before you can perform this "
"action."
msgstr ""
-#: warehouse/views.py:165
+#: warehouse/views.py:166
msgid ""
"Two-factor authentication must be enabled on your account to perform this "
"action."
msgstr ""
-#: warehouse/views.py:376
+#: warehouse/views.py:377
msgid "Locale updated"
msgstr ""
-#: warehouse/accounts/forms.py:42 warehouse/accounts/forms.py:304
+#: warehouse/accounts/forms.py:40 warehouse/accounts/forms.py:305
msgid "The email address isn't valid. Try again."
msgstr ""
-#: warehouse/accounts/forms.py:43
+#: warehouse/accounts/forms.py:41
msgid "The password is invalid. Try again."
msgstr ""
-#: warehouse/accounts/forms.py:45
+#: warehouse/accounts/forms.py:43
msgid ""
"The username is invalid. Usernames must be composed of letters, numbers, "
"dots, hyphens and underscores. And must also start and finish with a letter "
"or number. Choose a different username."
msgstr ""
-#: warehouse/accounts/forms.py:62
+#: warehouse/accounts/forms.py:60
msgid "Null bytes are not allowed."
msgstr ""
-#: warehouse/accounts/forms.py:78
+#: warehouse/accounts/forms.py:76
msgid ""
"Usernames are not the same as email addresses. Enter your username instead "
"of your email address."
msgstr ""
-#: warehouse/accounts/forms.py:90
+#: warehouse/accounts/forms.py:88
msgid "No user found with that username"
msgstr ""
-#: warehouse/accounts/forms.py:118
+#: warehouse/accounts/forms.py:116
#, python-brace-format
msgid "TOTP code must be ${totp_length} digits."
msgstr ""
-#: warehouse/accounts/forms.py:141
+#: warehouse/accounts/forms.py:139
#, python-brace-format
msgid "Recovery Codes must be ${recovery_code_length} characters."
msgstr ""
-#: warehouse/accounts/forms.py:155
+#: warehouse/accounts/forms.py:153
msgid "Choose a username with 50 characters or less."
msgstr ""
-#: warehouse/accounts/forms.py:173
+#: warehouse/accounts/forms.py:171
msgid ""
"This username is already being used by another account. Choose a different "
"username."
msgstr ""
-#: warehouse/accounts/forms.py:186 warehouse/accounts/forms.py:235
-#: warehouse/accounts/forms.py:248
+#: warehouse/accounts/forms.py:184 warehouse/accounts/forms.py:236
+#: warehouse/accounts/forms.py:249
msgid "Password too long."
msgstr ""
-#: warehouse/accounts/forms.py:218
+#: warehouse/accounts/forms.py:219
#, python-brace-format
msgid ""
"There have been too many unsuccessful login attempts. You have been locked "
"out for ${time}. Please try again later."
msgstr ""
-#: warehouse/accounts/forms.py:251
+#: warehouse/accounts/forms.py:252
msgid "Your passwords don't match. Try again."
msgstr ""
-#: warehouse/accounts/forms.py:285
+#: warehouse/accounts/forms.py:286
msgid "The email address is too long. Try again."
msgstr ""
-#: warehouse/accounts/forms.py:357
+#: warehouse/accounts/forms.py:358
msgid "You can't use an email address from this domain. Use a different email."
msgstr ""
-#: warehouse/accounts/forms.py:372
+#: warehouse/accounts/forms.py:373
msgid ""
"This email address is already being used by this account. Use a different "
"email."
msgstr ""
-#: warehouse/accounts/forms.py:383
+#: warehouse/accounts/forms.py:384
msgid ""
"This email address is already being used by another account. Use a different "
"email."
msgstr ""
-#: warehouse/accounts/forms.py:423 warehouse/manage/forms.py:132
-#: warehouse/manage/forms.py:824
+#: warehouse/accounts/forms.py:424 warehouse/manage/forms.py:130
+#: warehouse/manage/forms.py:818
msgid "The name is too long. Choose a name with 100 characters or less."
msgstr ""
@@ -133,23 +133,22 @@ msgstr ""
msgid "Invalid WebAuthn assertion: Bad payload"
msgstr ""
-#: warehouse/accounts/forms.py:606
+#: warehouse/accounts/forms.py:609
msgid "Invalid recovery code."
msgstr ""
-#: warehouse/accounts/forms.py:615
+#: warehouse/accounts/forms.py:618
msgid "Recovery code has been previously used."
msgstr ""
-#: warehouse/accounts/forms.py:645
+#: warehouse/accounts/forms.py:647
msgid "The username isn't valid. Try again."
msgstr ""
-#: warehouse/accounts/views.py:119
-#, python-brace-format
+#: warehouse/accounts/views.py:120
msgid ""
"There have been too many unsuccessful login attempts. You have been locked "
-"out for {}. Please try again later."
+"out for Please try again later."
msgstr ""
#: warehouse/accounts/views.py:140
@@ -167,218 +166,218 @@ msgid ""
"{ip})"
msgstr ""
-#: warehouse/accounts/views.py:384 warehouse/accounts/views.py:454
-#: warehouse/accounts/views.py:456 warehouse/accounts/views.py:485
-#: warehouse/accounts/views.py:487 warehouse/accounts/views.py:603
+#: warehouse/accounts/views.py:375 warehouse/accounts/views.py:443
+#: warehouse/accounts/views.py:445 warehouse/accounts/views.py:474
+#: warehouse/accounts/views.py:476 warehouse/accounts/views.py:592
msgid "Invalid or expired two factor login."
msgstr ""
-#: warehouse/accounts/views.py:448
+#: warehouse/accounts/views.py:437
msgid "Already authenticated"
msgstr ""
-#: warehouse/accounts/views.py:522
+#: warehouse/accounts/views.py:511
msgid "Successful WebAuthn assertion"
msgstr ""
-#: warehouse/accounts/views.py:633 warehouse/manage/views/__init__.py:948
+#: warehouse/accounts/views.py:622 warehouse/manage/views/__init__.py:944
msgid "Recovery code accepted. The supplied code cannot be used again."
msgstr ""
-#: warehouse/accounts/views.py:732
+#: warehouse/accounts/views.py:719
msgid ""
"New user registration temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:895
+#: warehouse/accounts/views.py:880
msgid "Expired token: request a new password reset link"
msgstr ""
-#: warehouse/accounts/views.py:897
+#: warehouse/accounts/views.py:882
msgid "Invalid token: request a new password reset link"
msgstr ""
-#: warehouse/accounts/views.py:899 warehouse/accounts/views.py:1008
-#: warehouse/accounts/views.py:1073 warehouse/accounts/views.py:1179
-#: warehouse/accounts/views.py:1350
+#: warehouse/accounts/views.py:884 warehouse/accounts/views.py:993
+#: warehouse/accounts/views.py:1058 warehouse/accounts/views.py:1164
+#: warehouse/accounts/views.py:1335
msgid "Invalid token: no token supplied"
msgstr ""
-#: warehouse/accounts/views.py:903
+#: warehouse/accounts/views.py:888
msgid "Invalid token: not a password reset token"
msgstr ""
-#: warehouse/accounts/views.py:908 warehouse/accounts/views.py:1017
+#: warehouse/accounts/views.py:893 warehouse/accounts/views.py:1002
msgid "Invalid token: user not found"
msgstr ""
-#: warehouse/accounts/views.py:919
+#: warehouse/accounts/views.py:904
msgid "Invalid token: user has logged in since this token was requested"
msgstr ""
-#: warehouse/accounts/views.py:937
+#: warehouse/accounts/views.py:922
msgid ""
"Invalid token: password has already been changed since this token was "
"requested"
msgstr ""
-#: warehouse/accounts/views.py:968
+#: warehouse/accounts/views.py:953
msgid "You have reset your password"
msgstr ""
-#: warehouse/accounts/views.py:1004
+#: warehouse/accounts/views.py:989
msgid "Expired token: please try to login again"
msgstr ""
-#: warehouse/accounts/views.py:1006
+#: warehouse/accounts/views.py:991
msgid "Invalid token: please try to login again"
msgstr ""
-#: warehouse/accounts/views.py:1012
+#: warehouse/accounts/views.py:997
msgid "Invalid token: not a login confirmation token"
msgstr ""
-#: warehouse/accounts/views.py:1027
+#: warehouse/accounts/views.py:1012
msgid "Invalid login attempt."
msgstr ""
-#: warehouse/accounts/views.py:1032
+#: warehouse/accounts/views.py:1017
msgid ""
"Device details didn't match, please try again from the device you originally "
"used to log in."
msgstr ""
-#: warehouse/accounts/views.py:1043
+#: warehouse/accounts/views.py:1028
msgid "Your login has been confirmed and this device is now recognized."
msgstr ""
-#: warehouse/accounts/views.py:1069
+#: warehouse/accounts/views.py:1054
msgid "Expired token: request a new email verification link"
msgstr ""
-#: warehouse/accounts/views.py:1071
+#: warehouse/accounts/views.py:1056
msgid "Invalid token: request a new email verification link"
msgstr ""
-#: warehouse/accounts/views.py:1077
+#: warehouse/accounts/views.py:1062
msgid "Invalid token: not an email verification token"
msgstr ""
-#: warehouse/accounts/views.py:1086
+#: warehouse/accounts/views.py:1071
msgid "Email not found"
msgstr ""
-#: warehouse/accounts/views.py:1089
+#: warehouse/accounts/views.py:1074
msgid "Email already verified"
msgstr ""
-#: warehouse/accounts/views.py:1109
+#: warehouse/accounts/views.py:1094
msgid "You can now set this email as your primary address"
msgstr ""
-#: warehouse/accounts/views.py:1112
+#: warehouse/accounts/views.py:1097
msgid "This is your primary address"
msgstr ""
-#: warehouse/accounts/views.py:1118
+#: warehouse/accounts/views.py:1103
#, python-brace-format
msgid "Email address ${email_address} verified. ${confirm_message}."
msgstr ""
-#: warehouse/accounts/views.py:1175
+#: warehouse/accounts/views.py:1160
msgid "Expired token: request a new organization invitation"
msgstr ""
-#: warehouse/accounts/views.py:1177
+#: warehouse/accounts/views.py:1162
msgid "Invalid token: request a new organization invitation"
msgstr ""
-#: warehouse/accounts/views.py:1183
+#: warehouse/accounts/views.py:1168
msgid "Invalid token: not an organization invitation token"
msgstr ""
-#: warehouse/accounts/views.py:1187 warehouse/accounts/views.py:1198
+#: warehouse/accounts/views.py:1172 warehouse/accounts/views.py:1183
msgid "Organization invitation is not valid."
msgstr ""
-#: warehouse/accounts/views.py:1196
+#: warehouse/accounts/views.py:1181
msgid "Organization invitation no longer exists."
msgstr ""
-#: warehouse/accounts/views.py:1250
+#: warehouse/accounts/views.py:1235
#, python-brace-format
msgid "Invitation for '${organization_name}' is declined."
msgstr ""
-#: warehouse/accounts/views.py:1313
+#: warehouse/accounts/views.py:1298
#, python-brace-format
msgid "You are now ${role} of the '${organization_name}' organization."
msgstr ""
-#: warehouse/accounts/views.py:1346
+#: warehouse/accounts/views.py:1331
msgid "Expired token: request a new project role invitation"
msgstr ""
-#: warehouse/accounts/views.py:1348
+#: warehouse/accounts/views.py:1333
msgid "Invalid token: request a new project role invitation"
msgstr ""
-#: warehouse/accounts/views.py:1354
+#: warehouse/accounts/views.py:1339
msgid "Invalid token: not a collaboration invitation token"
msgstr ""
-#: warehouse/accounts/views.py:1358 warehouse/accounts/views.py:1378
+#: warehouse/accounts/views.py:1343 warehouse/accounts/views.py:1363
msgid "Role invitation is not valid."
msgstr ""
-#: warehouse/accounts/views.py:1365
+#: warehouse/accounts/views.py:1350
msgid "Invalid token: project does not exist"
msgstr ""
-#: warehouse/accounts/views.py:1376
+#: warehouse/accounts/views.py:1361
msgid "Role invitation no longer exists."
msgstr ""
-#: warehouse/accounts/views.py:1410
+#: warehouse/accounts/views.py:1395
#, python-brace-format
msgid "Invitation for '${project_name}' is declined."
msgstr ""
-#: warehouse/accounts/views.py:1476
+#: warehouse/accounts/views.py:1461
#, python-brace-format
msgid "You are now ${role} of the '${project_name}' project."
msgstr ""
-#: warehouse/accounts/views.py:1588
+#: warehouse/accounts/views.py:1572
#, python-brace-format
msgid "Please review our updated Terms of Service."
msgstr ""
-#: warehouse/accounts/views.py:1798 warehouse/accounts/views.py:2052
+#: warehouse/accounts/views.py:1793 warehouse/accounts/views.py:2056
#: warehouse/manage/views/oidc_publishers.py:126
-#: warehouse/manage/views/organizations.py:1822
+#: warehouse/manage/views/organizations.py:1820
msgid ""
"Trusted publishing is temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1819
-#: warehouse/manage/views/organizations.py:1845
+#: warehouse/accounts/views.py:1814
+#: warehouse/manage/views/organizations.py:1843
msgid "disabled. See https://pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1835
+#: warehouse/accounts/views.py:1830
msgid ""
"You must have a verified email in order to register a pending trusted "
"publisher. See https://pypi.org/help#openid-connect for details."
msgstr ""
-#: warehouse/accounts/views.py:1848
+#: warehouse/accounts/views.py:1843
msgid "You can't register more than 3 pending trusted publishers at once."
msgstr ""
-#: warehouse/accounts/views.py:1863
+#: warehouse/accounts/views.py:1858
#: warehouse/manage/views/oidc_publishers.py:308
#: warehouse/manage/views/oidc_publishers.py:423
#: warehouse/manage/views/oidc_publishers.py:539
@@ -388,32 +387,39 @@ msgid ""
"again later."
msgstr ""
-#: warehouse/accounts/views.py:1873
+#: warehouse/accounts/views.py:1868
#: warehouse/manage/views/oidc_publishers.py:321
#: warehouse/manage/views/oidc_publishers.py:436
#: warehouse/manage/views/oidc_publishers.py:552
#: warehouse/manage/views/oidc_publishers.py:664
-#: warehouse/manage/views/organizations.py:1861
+#: warehouse/manage/views/organizations.py:1859
msgid "The trusted publisher could not be registered"
msgstr ""
-#: warehouse/accounts/views.py:1888
+#: warehouse/accounts/views.py:1883
msgid ""
"This trusted publisher has already been registered. Please contact PyPI's "
"admins if this wasn't intentional."
msgstr ""
-#: warehouse/accounts/views.py:1922
-#: warehouse/manage/views/organizations.py:1910
+#: warehouse/accounts/views.py:1903
+msgid ""
+"A pending trusted publisher matching this configuration has already been "
+"registered for a different project name. Please contact PyPI's admins if "
+"this wasn't intentional."
+msgstr ""
+
+#: warehouse/accounts/views.py:1926
+#: warehouse/manage/views/organizations.py:1908
msgid "Registered a new pending publisher to create "
msgstr ""
-#: warehouse/accounts/views.py:2065 warehouse/accounts/views.py:2078
-#: warehouse/accounts/views.py:2085
+#: warehouse/accounts/views.py:2069 warehouse/accounts/views.py:2082
+#: warehouse/accounts/views.py:2089
msgid "Invalid publisher ID"
msgstr ""
-#: warehouse/accounts/views.py:2092
+#: warehouse/accounts/views.py:2096
msgid "Removed trusted publisher for project "
msgstr ""
@@ -421,31 +427,31 @@ msgstr ""
msgid "Banner Preview"
msgstr ""
-#: warehouse/manage/forms.py:292
+#: warehouse/manage/forms.py:289
msgid "Specify an association ID"
msgstr ""
-#: warehouse/manage/forms.py:293
+#: warehouse/manage/forms.py:290
msgid "Association must be specified by ID"
msgstr ""
-#: warehouse/manage/forms.py:308
+#: warehouse/manage/forms.py:305
msgid "No account association with given ID"
msgstr ""
-#: warehouse/manage/forms.py:313
+#: warehouse/manage/forms.py:310
msgid "This association does not belong to you"
msgstr ""
-#: warehouse/manage/forms.py:417
+#: warehouse/manage/forms.py:414
msgid "Provide your response to the request."
msgstr ""
-#: warehouse/manage/forms.py:459
+#: warehouse/manage/forms.py:456
msgid "Choose an organization account name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:467
+#: warehouse/manage/forms.py:464
msgid ""
"The organization account name is invalid. Organization account names must be "
"composed of letters, numbers, dots, hyphens and underscores. And must also "
@@ -453,245 +459,251 @@ msgid ""
"account name."
msgstr ""
-#: warehouse/manage/forms.py:490
+#: warehouse/manage/forms.py:487
msgid ""
"This organization account name has already been used. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:505
+#: warehouse/manage/forms.py:502
msgid ""
"You have already submitted an application for that name. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:540
+#: warehouse/manage/forms.py:536
msgid "Select project"
msgstr ""
-#: warehouse/manage/forms.py:545 warehouse/oidc/forms/_core.py:36
+#: warehouse/manage/forms.py:541 warehouse/oidc/forms/_core.py:36
#: warehouse/oidc/forms/gitlab.py:54
msgid "Specify project name"
msgstr ""
-#: warehouse/manage/forms.py:549
+#: warehouse/manage/forms.py:545
msgid ""
"Start and end with a letter or numeral containing only ASCII numeric and "
"'.', '_' and '-'."
msgstr ""
-#: warehouse/manage/forms.py:556
+#: warehouse/manage/forms.py:552
msgid ""
"This project name has already been used. Choose a different project name."
msgstr ""
-#: warehouse/manage/forms.py:589
+#: warehouse/manage/forms.py:585
msgid "Cannot transfer to Company Organization with inactive billing"
msgstr ""
-#: warehouse/manage/forms.py:642
+#: warehouse/manage/forms.py:638
msgid ""
"The organization name is too long. Choose a organization name with 100 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:654
+#: warehouse/manage/forms.py:650
msgid ""
"The organization URL is too long. Choose a organization URL with 400 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:660
+#: warehouse/manage/forms.py:656
msgid "The organization URL must start with http:// or https://"
msgstr ""
-#: warehouse/manage/forms.py:672
+#: warehouse/manage/forms.py:668
msgid ""
"The organization description is too long. Choose a organization description "
"with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:715
+#: warehouse/manage/forms.py:711
msgid ""
"We don't need to know quite that much :), limit your usage description to "
"1024 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:737
-msgid "You have already submitted the maximum number of "
+#: warehouse/manage/forms.py:733
+#, python-format
+msgid ""
+"You have already submitted the maximum number of Organization requests (%s)."
msgstr ""
-#: warehouse/manage/forms.py:766
+#: warehouse/manage/forms.py:763
msgid "Choose a team name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:773
+#: warehouse/manage/forms.py:770
msgid ""
"The team name is invalid. Team names cannot start or end with a space, "
"period, underscore, hyphen, or slash. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:801
+#: warehouse/manage/forms.py:797
msgid "This team name has already been used. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:819
+#: warehouse/manage/forms.py:813
msgid "Specify your alternate repository name"
msgstr ""
-#: warehouse/manage/forms.py:833
+#: warehouse/manage/forms.py:826
msgid "Specify your alternate repository URL"
msgstr ""
-#: warehouse/manage/forms.py:838
+#: warehouse/manage/forms.py:831
msgid "The URL is too long. Choose a URL with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:852
+#: warehouse/manage/forms.py:845
msgid ""
"The description is too long. Choose a description with 400 characters or "
"less."
msgstr ""
-#: warehouse/manage/views/__init__.py:408
+#: warehouse/manage/views/__init__.py:404
msgid "Account details updated"
msgstr ""
-#: warehouse/manage/views/__init__.py:439
+#: warehouse/manage/views/__init__.py:435
#, python-brace-format
msgid "Email ${email_address} added - check your email for a verification link"
msgstr ""
-#: warehouse/manage/views/__init__.py:895
+#: warehouse/manage/views/__init__.py:891
msgid "Recovery codes already generated"
msgstr ""
-#: warehouse/manage/views/__init__.py:897
+#: warehouse/manage/views/__init__.py:893
msgid "Generating new recovery codes will invalidate your existing codes."
msgstr ""
-#: warehouse/manage/views/__init__.py:1005
+#: warehouse/manage/views/__init__.py:1001
msgid "Verify your email to create an API token."
msgstr ""
-#: warehouse/manage/views/__init__.py:1107
+#: warehouse/manage/views/__init__.py:1103
msgid "API Token does not exist."
msgstr ""
-#: warehouse/manage/views/__init__.py:1139
+#: warehouse/manage/views/__init__.py:1135
msgid "Invalid credentials. Try again"
msgstr ""
-#: warehouse/manage/views/__init__.py:1258
+#: warehouse/manage/views/__init__.py:1256
msgid "Invalid alternate repository location details"
msgstr ""
-#: warehouse/manage/views/__init__.py:1296
+#: warehouse/manage/views/__init__.py:1294
#, python-brace-format
msgid "Added alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1329
-#: warehouse/manage/views/__init__.py:1590
-#: warehouse/manage/views/__init__.py:1675
-#: warehouse/manage/views/__init__.py:1776
-#: warehouse/manage/views/__init__.py:1876
+#: warehouse/manage/views/__init__.py:1327
+#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1690
+#: warehouse/manage/views/__init__.py:1793
+#: warehouse/manage/views/__init__.py:1896
msgid "Confirm the request"
msgstr ""
-#: warehouse/manage/views/__init__.py:1341
+#: warehouse/manage/views/__init__.py:1339
msgid "Invalid alternate repository id"
msgstr ""
-#: warehouse/manage/views/__init__.py:1352
+#: warehouse/manage/views/__init__.py:1350
msgid "Invalid alternate repository for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:1361
+#: warehouse/manage/views/__init__.py:1359
#, python-brace-format
msgid ""
"Could not delete alternate repository - ${confirm} is not the same as $"
"{alt_repo_name}"
msgstr ""
-#: warehouse/manage/views/__init__.py:1391
+#: warehouse/manage/views/__init__.py:1389
#, python-brace-format
msgid "Deleted alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1459
-#: warehouse/manage/views/__init__.py:1760
-#: warehouse/manage/views/__init__.py:1868
+#: warehouse/manage/views/__init__.py:1457
+#: warehouse/manage/views/__init__.py:1777
+#: warehouse/manage/views/__init__.py:1888
msgid ""
"Project deletion temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1579
+msgid "This release is in quarantine and cannot be modified."
+msgstr ""
+
+#: warehouse/manage/views/__init__.py:1616
msgid "Could not yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1688
+#: warehouse/manage/views/__init__.py:1703
msgid "Could not un-yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1789
+#: warehouse/manage/views/__init__.py:1806
msgid "Could not delete release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1888
+#: warehouse/manage/views/__init__.py:1908
msgid "Could not find file"
msgstr ""
-#: warehouse/manage/views/__init__.py:1893
+#: warehouse/manage/views/__init__.py:1913
msgid "Could not delete file - "
msgstr ""
-#: warehouse/manage/views/__init__.py:2043
+#: warehouse/manage/views/__init__.py:2063
#, python-brace-format
msgid "Team '${team_name}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2150
+#: warehouse/manage/views/__init__.py:2170
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2217
+#: warehouse/manage/views/__init__.py:2237
#, python-brace-format
msgid "${username} is now ${role} of the '${project_name}' project."
msgstr ""
-#: warehouse/manage/views/__init__.py:2249
+#: warehouse/manage/views/__init__.py:2268
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2262
-#: warehouse/manage/views/organizations.py:981
+#: warehouse/manage/views/__init__.py:2281
+#: warehouse/manage/views/organizations.py:980
#, python-brace-format
msgid ""
"User '${username}' already has an active invite. Please try again later."
msgstr ""
-#: warehouse/manage/views/__init__.py:2327
-#: warehouse/manage/views/organizations.py:1056
+#: warehouse/manage/views/__init__.py:2346
+#: warehouse/manage/views/organizations.py:1055
#, python-brace-format
msgid "Invitation sent to '${username}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:2359
+#: warehouse/manage/views/__init__.py:2378
msgid "Could not find role invitation."
msgstr ""
-#: warehouse/manage/views/__init__.py:2370
+#: warehouse/manage/views/__init__.py:2389
msgid "Invitation already expired."
msgstr ""
-#: warehouse/manage/views/__init__.py:2403
-#: warehouse/manage/views/organizations.py:1256
+#: warehouse/manage/views/__init__.py:2422
+#: warehouse/manage/views/organizations.py:1255
#, python-brace-format
msgid "Invitation revoked from '${username}'."
msgstr ""
@@ -784,37 +796,37 @@ msgid ""
"pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/manage/views/organizations.py:957
+#: warehouse/manage/views/organizations.py:956
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:968
+#: warehouse/manage/views/organizations.py:967
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:992
+#: warehouse/manage/views/organizations.py:991
msgid "Cannot invite new member. Organization is not in good standing."
msgstr ""
-#: warehouse/manage/views/organizations.py:1151
-#: warehouse/manage/views/organizations.py:1193
+#: warehouse/manage/views/organizations.py:1150
+#: warehouse/manage/views/organizations.py:1192
msgid "Could not find organization invitation."
msgstr ""
-#: warehouse/manage/views/organizations.py:1161
+#: warehouse/manage/views/organizations.py:1160
msgid "Organization invitation could not be re-sent."
msgstr ""
-#: warehouse/manage/views/organizations.py:1209
+#: warehouse/manage/views/organizations.py:1208
#, python-brace-format
msgid "Expired invitation for '${username}' deleted."
msgstr ""
-#: warehouse/manage/views/organizations.py:1877
+#: warehouse/manage/views/organizations.py:1875
msgid ""
"This publisher has already been registered in your organization. See your "
"existing pending publishers below."
@@ -832,33 +844,33 @@ msgid ""
"{url}'>here to create a Trusted Publisher for it."
msgstr ""
-#: warehouse/oidc/forms/_core.py:77
+#: warehouse/oidc/forms/_core.py:75
msgid "This project already exists."
msgstr ""
-#: warehouse/oidc/forms/_core.py:82
+#: warehouse/oidc/forms/_core.py:79
msgid "This project name isn't allowed"
msgstr ""
-#: warehouse/oidc/forms/_core.py:86
+#: warehouse/oidc/forms/_core.py:83
msgid "This project name is too similar to an existing project"
msgstr ""
-#: warehouse/oidc/forms/_core.py:91
+#: warehouse/oidc/forms/_core.py:88
msgid ""
"This project name isn't allowed (conflict with the Python standard library "
"module name)"
msgstr ""
-#: warehouse/oidc/forms/_core.py:119 warehouse/oidc/forms/_core.py:130
+#: warehouse/oidc/forms/_core.py:115 warehouse/oidc/forms/_core.py:126
msgid "Specify a publisher ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:120 warehouse/oidc/forms/_core.py:131
+#: warehouse/oidc/forms/_core.py:116 warehouse/oidc/forms/_core.py:127
msgid "Publisher must be specified by ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:136
+#: warehouse/oidc/forms/_core.py:132
msgid "Specify an environment name"
msgstr ""
@@ -897,7 +909,7 @@ msgstr ""
msgid "ActiveState organization not found"
msgstr ""
-#: warehouse/oidc/forms/activestate.py:166
+#: warehouse/oidc/forms/activestate.py:164
msgid "ActiveState actor not found"
msgstr ""
@@ -925,43 +937,43 @@ msgstr ""
msgid "GitHub has rate-limited this action. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:95
+#: warehouse/oidc/forms/github.py:94
msgid "Unexpected error from GitHub. Try again."
msgstr ""
-#: warehouse/oidc/forms/github.py:103
+#: warehouse/oidc/forms/github.py:102
msgid "Unexpected connection error from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:112
+#: warehouse/oidc/forms/github.py:111
msgid "Unexpected timeout from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:124
+#: warehouse/oidc/forms/github.py:123
msgid "Invalid GitHub user or organization name."
msgstr ""
-#: warehouse/oidc/forms/github.py:140
+#: warehouse/oidc/forms/github.py:137
msgid "Workflow name must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/github.py:145
+#: warehouse/oidc/forms/github.py:142
msgid "Workflow filename must be a filename only, without directories"
msgstr ""
-#: warehouse/oidc/forms/github.py:156
+#: warehouse/oidc/forms/github.py:153
msgid "Environment name is too long (maximum is 255 characters)"
msgstr ""
-#: warehouse/oidc/forms/github.py:161
+#: warehouse/oidc/forms/github.py:158
msgid "Environment name may not start with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:166
+#: warehouse/oidc/forms/github.py:163
msgid "Environment name may not end with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:172
+#: warehouse/oidc/forms/github.py:169
msgid ""
"Environment name must not contain non-printable characters or the characters "
"\"'\", \"\"\", \"`\", \",\", \";\", \"\\\""
@@ -991,11 +1003,11 @@ msgstr ""
msgid "Choose GitLab issuer URL"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:111
+#: warehouse/oidc/forms/gitlab.py:109
msgid "Top-level pipeline file path must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:115
+#: warehouse/oidc/forms/gitlab.py:113
msgid "Top-level pipeline file path cannot start or end with /"
msgstr ""
@@ -1003,7 +1015,7 @@ msgstr ""
msgid "Provide an Inspector link to specific lines of code."
msgstr ""
-#: warehouse/packaging/views.py:346
+#: warehouse/packaging/views.py:357
msgid "Your report has been recorded. Thank you for your help."
msgstr ""
@@ -1115,14 +1127,14 @@ msgstr ""
#: warehouse/templates/404.html:33 warehouse/templates/500.html:18
#: warehouse/templates/accounts/two-factor.html:35
-#: warehouse/templates/base.html:340 warehouse/templates/base.html:346
-#: warehouse/templates/base.html:352 warehouse/templates/base.html:358
-#: warehouse/templates/base.html:374 warehouse/templates/base.html:380
-#: warehouse/templates/base.html:405 warehouse/templates/base.html:411
-#: warehouse/templates/base.html:420 warehouse/templates/base.html:433
-#: warehouse/templates/base.html:442 warehouse/templates/base.html:448
-#: warehouse/templates/base.html:454 warehouse/templates/base.html:467
-#: warehouse/templates/base.html:484
+#: warehouse/templates/base.html:342 warehouse/templates/base.html:348
+#: warehouse/templates/base.html:354 warehouse/templates/base.html:360
+#: warehouse/templates/base.html:376 warehouse/templates/base.html:382
+#: warehouse/templates/base.html:407 warehouse/templates/base.html:413
+#: warehouse/templates/base.html:422 warehouse/templates/base.html:435
+#: warehouse/templates/base.html:444 warehouse/templates/base.html:450
+#: warehouse/templates/base.html:456 warehouse/templates/base.html:469
+#: warehouse/templates/base.html:486 warehouse/templates/base.html:494
#: warehouse/templates/includes/accounts/profile-callout.html:17
#: warehouse/templates/includes/file-details.html:129
#: warehouse/templates/index.html:98 warehouse/templates/index.html:105
@@ -1134,13 +1146,13 @@ msgstr ""
#: warehouse/templates/manage/account/webauthn-provision.html:51
#: warehouse/templates/manage/account/webauthn-provision.html:68
#: warehouse/templates/manage/manage_base.html:210
-#: warehouse/templates/manage/project/release.html:162
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
-#: warehouse/templates/manage/project/releases.html:190
-#: warehouse/templates/packaging/detail.html:446
-#: warehouse/templates/packaging/detail.html:464
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
+#: warehouse/templates/manage/project/releases.html:210
+#: warehouse/templates/packaging/detail.html:469
+#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:503
#: warehouse/templates/pages/classifiers.html:17
#: warehouse/templates/pages/help.html:7
#: warehouse/templates/pages/help.html:441
@@ -1186,23 +1198,23 @@ msgstr ""
#: warehouse/templates/pages/help.html:1213
#: warehouse/templates/pages/help.html:1256
#: warehouse/templates/pages/help.html:1263
-#: warehouse/templates/pages/help.html:1309
-#: warehouse/templates/pages/help.html:1314
-#: warehouse/templates/pages/help.html:1319
-#: warehouse/templates/pages/help.html:1334
-#: warehouse/templates/pages/help.html:1347
-#: warehouse/templates/pages/help.html:1366
-#: warehouse/templates/pages/help.html:1378
-#: warehouse/templates/pages/help.html:1395
-#: warehouse/templates/pages/help.html:1403
-#: warehouse/templates/pages/help.html:1414
-#: warehouse/templates/pages/help.html:1444
-#: warehouse/templates/pages/help.html:1459
-#: warehouse/templates/pages/help.html:1465
-#: warehouse/templates/pages/help.html:1471
-#: warehouse/templates/pages/help.html:1477
-#: warehouse/templates/pages/help.html:1483
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1310
+#: warehouse/templates/pages/help.html:1315
+#: warehouse/templates/pages/help.html:1320
+#: warehouse/templates/pages/help.html:1335
+#: warehouse/templates/pages/help.html:1348
+#: warehouse/templates/pages/help.html:1367
+#: warehouse/templates/pages/help.html:1379
+#: warehouse/templates/pages/help.html:1396
+#: warehouse/templates/pages/help.html:1404
+#: warehouse/templates/pages/help.html:1415
+#: warehouse/templates/pages/help.html:1445
+#: warehouse/templates/pages/help.html:1460
+#: warehouse/templates/pages/help.html:1466
+#: warehouse/templates/pages/help.html:1472
+#: warehouse/templates/pages/help.html:1478
+#: warehouse/templates/pages/help.html:1484
+#: warehouse/templates/pages/help.html:1491
#: warehouse/templates/pages/sponsors.html:23
#: warehouse/templates/pages/sponsors.html:34
#: warehouse/templates/pages/sponsors.html:42
@@ -1276,7 +1288,7 @@ msgid "Main navigation"
msgstr "Tunigin tagejdant"
#: warehouse/templates/base.html:34 warehouse/templates/base.html:68
-#: warehouse/templates/base.html:335
+#: warehouse/templates/base.html:337
#: warehouse/templates/includes/current-user-indicator.html:77
#: warehouse/templates/pages/help.html:209
#: warehouse/templates/pages/sitemap.html:19
@@ -1351,16 +1363,16 @@ msgstr ""
msgid "RSS: 40 newest packages"
msgstr ""
-#: warehouse/templates/base.html:206
+#: warehouse/templates/base.html:208
msgid "Skip to main content"
msgstr ""
-#: warehouse/templates/base.html:210
+#: warehouse/templates/base.html:212
msgid "Switch to mobile version"
msgstr ""
-#: warehouse/templates/base.html:217 warehouse/templates/base.html:226
-#: warehouse/templates/base.html:236
+#: warehouse/templates/base.html:219 warehouse/templates/base.html:228
+#: warehouse/templates/base.html:238
#: warehouse/templates/includes/flash-messages.html:41
#: warehouse/templates/includes/session-notifications.html:19
#: warehouse/templates/manage/account.html:1011
@@ -1369,7 +1381,7 @@ msgstr ""
#: warehouse/templates/manage/organization/settings.html:291
#: warehouse/templates/manage/organization/settings.html:297
#: warehouse/templates/manage/project/documentation.html:13
-#: warehouse/templates/manage/project/release.html:209
+#: warehouse/templates/manage/project/release.html:236
#: warehouse/templates/manage/project/settings.html:78
#: warehouse/templates/manage/project/settings.html:124
#: warehouse/templates/manage/project/settings.html:365
@@ -1377,176 +1389,183 @@ msgstr ""
msgid "Warning"
msgstr ""
-#: warehouse/templates/base.html:219
+#: warehouse/templates/base.html:221
msgid "You are using an unsupported browser, upgrade to a newer version."
msgstr ""
-#: warehouse/templates/base.html:228
+#: warehouse/templates/base.html:230
msgid ""
"You are using TestPyPI – a separate instance of the Python Package Index "
"that allows you to try distribution tools and processes without affecting "
"the real index."
msgstr ""
-#: warehouse/templates/base.html:238
+#: warehouse/templates/base.html:240
msgid ""
"Some features may not work without JavaScript. Please try enabling it if you "
"encounter problems."
msgstr ""
-#: warehouse/templates/base.html:273 warehouse/templates/base.html:305
+#: warehouse/templates/base.html:275 warehouse/templates/base.html:307
#: warehouse/templates/error-base-with-search.html:8
#: warehouse/templates/index.html:29
msgid "Search PyPI"
msgstr ""
-#: warehouse/templates/base.html:278 warehouse/templates/index.html:35
+#: warehouse/templates/base.html:280 warehouse/templates/index.html:35
msgid "Type '/' to search projects"
msgstr "Aru '/' i unadi n yisenfaren"
-#: warehouse/templates/base.html:289 warehouse/templates/base.html:318
+#: warehouse/templates/base.html:291 warehouse/templates/base.html:320
#: warehouse/templates/error-base-with-search.html:19
#: warehouse/templates/index.html:44
msgid "Search"
msgstr "Nadi"
-#: warehouse/templates/base.html:310
+#: warehouse/templates/base.html:312
#: warehouse/templates/error-base-with-search.html:13
msgid "Search projects"
msgstr "Nadi isenfaren"
-#: warehouse/templates/base.html:336
+#: warehouse/templates/base.html:338
msgid "Help navigation"
msgstr "Tunigin deg tallalt"
-#: warehouse/templates/base.html:342
+#: warehouse/templates/base.html:344
msgid "Installing packages"
msgstr "Asebded n ikemmusen"
-#: warehouse/templates/base.html:348
+#: warehouse/templates/base.html:350
msgid "Uploading packages"
msgstr ""
-#: warehouse/templates/base.html:354
+#: warehouse/templates/base.html:356
msgid "User guide"
msgstr "Amnir n useqdac"
-#: warehouse/templates/base.html:360
+#: warehouse/templates/base.html:362
msgid "Project name retention"
msgstr ""
-#: warehouse/templates/base.html:363
+#: warehouse/templates/base.html:365
msgid "FAQs"
msgstr ""
-#: warehouse/templates/base.html:369 warehouse/templates/pages/sitemap.html:34
+#: warehouse/templates/base.html:371 warehouse/templates/pages/sitemap.html:34
msgid "About PyPI"
msgstr "Ɣef PyPI"
-#: warehouse/templates/base.html:370
+#: warehouse/templates/base.html:372
msgid "About PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:376
+#: warehouse/templates/base.html:378
msgid "PyPI Blog"
msgstr "Ablug n PyPI"
-#: warehouse/templates/base.html:382
+#: warehouse/templates/base.html:384
msgid "Infrastructure dashboard"
msgstr ""
-#: warehouse/templates/base.html:385 warehouse/templates/pages/sitemap.html:40
+#: warehouse/templates/base.html:387 warehouse/templates/pages/sitemap.html:40
#: warehouse/templates/pages/stats.html:4
msgid "Statistics"
msgstr "Tidaddanin"
-#: warehouse/templates/base.html:388
+#: warehouse/templates/base.html:390
msgid "Logos & trademarks"
msgstr ""
-#: warehouse/templates/base.html:391
+#: warehouse/templates/base.html:393
msgid "Our sponsors"
msgstr ""
-#: warehouse/templates/base.html:397
+#: warehouse/templates/base.html:399
msgid "Contributing to PyPI"
msgstr "Attekki deg PyPI"
-#: warehouse/templates/base.html:398
+#: warehouse/templates/base.html:400
msgid "How to contribute navigation"
msgstr ""
-#: warehouse/templates/base.html:401
+#: warehouse/templates/base.html:403
msgid "Bugs and feedback"
msgstr ""
-#: warehouse/templates/base.html:407
+#: warehouse/templates/base.html:409
msgid "Contribute on GitHub"
msgstr ""
-#: warehouse/templates/base.html:413
+#: warehouse/templates/base.html:415
msgid "Translate PyPI"
msgstr "Asuqel n PyPI"
-#: warehouse/templates/base.html:416
+#: warehouse/templates/base.html:418
msgid "Sponsor PyPI"
msgstr ""
-#: warehouse/templates/base.html:422
+#: warehouse/templates/base.html:424
msgid "Development credits"
msgstr ""
-#: warehouse/templates/base.html:428 warehouse/templates/pages/sitemap.html:10
+#: warehouse/templates/base.html:430 warehouse/templates/pages/sitemap.html:10
msgid "Using PyPI"
msgstr "Aseqdec n PyPI"
-#: warehouse/templates/base.html:429
+#: warehouse/templates/base.html:431
msgid "Using PyPI navigation"
msgstr "Aseqdec n tunigin n PyPI"
-#: warehouse/templates/base.html:435
+#: warehouse/templates/base.html:437
#: warehouse/templates/manage/organization/activate_subscription.html:21
msgid "Terms of Service"
msgstr "Tiwtilin n useqdec"
-#: warehouse/templates/base.html:438
+#: warehouse/templates/base.html:440
msgid "Report security issue"
msgstr ""
-#: warehouse/templates/base.html:444
+#: warehouse/templates/base.html:446
msgid "Code of conduct"
msgstr ""
-#: warehouse/templates/base.html:450
+#: warehouse/templates/base.html:452
msgid "Privacy Notice"
msgstr ""
-#: warehouse/templates/base.html:456
+#: warehouse/templates/base.html:458
msgid "Acceptable Use Policy"
msgstr ""
-#: warehouse/templates/base.html:466
+#: warehouse/templates/base.html:468
msgid "Status:"
msgstr ""
-#: warehouse/templates/base.html:470
+#: warehouse/templates/base.html:472
msgid "all systems operational"
msgstr ""
-#: warehouse/templates/base.html:474
+#: warehouse/templates/base.html:476
msgid ""
"Developed and maintained by the Python community, for the Python community."
msgstr ""
-#: warehouse/templates/base.html:476
+#: warehouse/templates/base.html:478
msgid "Donate today!"
msgstr ""
-#: warehouse/templates/base.html:488 warehouse/templates/pages/sitemap.html:4
+#: warehouse/templates/base.html:490 warehouse/templates/pages/sitemap.html:4
msgid "Site map"
msgstr ""
-#: warehouse/templates/base.html:495
+#: warehouse/templates/base.html:494
+#, python-format
+msgid ""
+"Deployed from %(sha)s"
+msgstr ""
+
+#: warehouse/templates/base.html:502
msgid "Switch to desktop version"
msgstr ""
@@ -3075,8 +3094,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:546
#: warehouse/templates/manage/manage_base.html:344
#: warehouse/templates/manage/manage_base.html:347
-#: warehouse/templates/manage/project/release.html:158
-#: warehouse/templates/manage/project/releases.html:186
+#: warehouse/templates/manage/project/release.html:180
+#: warehouse/templates/manage/project/releases.html:206
#: warehouse/templates/manage/project/settings.html:63
#: warehouse/templates/manage/unverified-account.html:186
#: warehouse/templates/manage/unverified-account.html:189
@@ -3167,7 +3186,7 @@ msgstr ""
#: warehouse/templates/manage/account/totp-provision.html:46
#: warehouse/templates/manage/unverified-account.html:200
#: warehouse/templates/packaging/detail.html:150
-#: warehouse/templates/packaging/detail.html:500
+#: warehouse/templates/packaging/detail.html:523
#: warehouse/templates/pages/classifiers.html:42
msgid "Copy to clipboard"
msgstr ""
@@ -3179,7 +3198,7 @@ msgstr ""
#: warehouse/templates/manage/account/recovery_codes-provision.html:54
#: warehouse/templates/manage/account/totp-provision.html:47
#: warehouse/templates/manage/unverified-account.html:201
-#: warehouse/templates/packaging/detail.html:501
+#: warehouse/templates/packaging/detail.html:524
#: warehouse/templates/pages/classifiers.html:43
msgid "Copy"
msgstr "Nɣel"
@@ -3317,7 +3336,7 @@ msgstr ""
#: warehouse/templates/includes/manage/manage-project-menu.html:9
#: warehouse/templates/manage/project/release.html:21
-#: warehouse/templates/manage/project/releases.html:161
+#: warehouse/templates/manage/project/releases.html:181
msgid "Releases"
msgstr ""
@@ -3518,8 +3537,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:84
#: warehouse/templates/manage/account.html:177
-#: warehouse/templates/manage/project/release.html:74
-#: warehouse/templates/manage/project/releases.html:53
+#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/releases.html:56
#: warehouse/templates/manage/unverified-account.html:69
#: warehouse/templates/manage/unverified-account.html:147
msgid "Options"
@@ -3915,7 +3934,7 @@ msgid "Two factor method:"
msgstr ""
#: warehouse/templates/manage/account.html:692
-#: warehouse/templates/manage/project/release.html:61
+#: warehouse/templates/manage/project/release.html:79
#: warehouse/templates/manage/unverified-account.html:330
msgid "None"
msgstr ""
@@ -4383,7 +4402,8 @@ msgstr ""
#: warehouse/templates/manage/organizations.html:128
#: warehouse/templates/manage/organizations.html:134
#: warehouse/templates/manage/organizations.html:183
-#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:69
+#: warehouse/templates/manage/project/releases.html:94
#: warehouse/templates/manage/projects.html:99
#: warehouse/templates/manage/projects.html:105
#: warehouse/templates/manage/team/projects.html:49
@@ -4775,7 +4795,8 @@ msgstr ""
#: warehouse/templates/manage/organization/projects.html:67
#: warehouse/templates/manage/organization/teams.html:44
#: warehouse/templates/manage/organizations.html:106
-#: warehouse/templates/manage/project/releases.html:83
+#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:101
#: warehouse/templates/manage/projects.html:111
#: warehouse/templates/manage/projects.html:116
#: warehouse/templates/manage/team/projects.html:61
@@ -5230,7 +5251,7 @@ msgstr ""
#: warehouse/templates/manage/organization/publishing.html:156
#: warehouse/templates/manage/project/documentation.html:21
#: warehouse/templates/manage/project/publishing.html:153
-#: warehouse/templates/manage/project/release.html:139
+#: warehouse/templates/manage/project/release.html:160
#: warehouse/templates/pages/stats.html:65
msgid "Project name"
msgstr ""
@@ -5399,51 +5420,51 @@ msgstr ""
msgid "Manage publishers"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:387
+#: warehouse/templates/manage/account/publishing.html:386
msgid "Project"
msgstr "Asenfar"
-#: warehouse/templates/manage/account/publishing.html:407
+#: warehouse/templates/manage/account/publishing.html:404
msgid ""
"No publishers are currently configured. Publishers for existing projects can "
"be added in the publishing configuration for each individual project."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:417
+#: warehouse/templates/manage/account/publishing.html:414
#: warehouse/templates/manage/organization/publishing.html:414
msgid "Pending project name"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:418
+#: warehouse/templates/manage/account/publishing.html:415
#: warehouse/templates/manage/organization/publishing.html:415
#: warehouse/templates/manage/project/publishing.html:375
msgid "Publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:419
+#: warehouse/templates/manage/account/publishing.html:416
#: warehouse/templates/manage/organization/publishing.html:416
#: warehouse/templates/manage/project/publishing.html:376
msgid "Details"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:429
+#: warehouse/templates/manage/account/publishing.html:426
#: warehouse/templates/manage/organization/publishing.html:426
msgid ""
"No pending publishers are currently configured. Publishers for projects that "
"don't exist yet can be added below."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:436
+#: warehouse/templates/manage/account/publishing.html:433
#: warehouse/templates/manage/organization/publishing.html:431
msgid "Add a new pending publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:438
+#: warehouse/templates/manage/account/publishing.html:435
#: warehouse/templates/manage/organization/publishing.html:432
msgid "You can use this page to register \"pending\" trusted publishers."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:443
+#: warehouse/templates/manage/account/publishing.html:440
#: warehouse/templates/manage/organization/publishing.html:434
#, python-format
msgid ""
@@ -5455,7 +5476,7 @@ msgid ""
"href=\"%(href)s\">here."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:453
+#: warehouse/templates/manage/account/publishing.html:450
#: warehouse/templates/manage/organization/publishing.html:444
msgid ""
"Configuring a \"pending\" publisher for a project name does not"
@@ -5463,7 +5484,7 @@ msgid ""
"create it, including via their own \"pending\" publisher."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:488
+#: warehouse/templates/manage/account/publishing.html:485
#: warehouse/templates/manage/project/publishing.html:419
#, python-format
msgid ""
@@ -6422,8 +6443,8 @@ msgid "Delete expired invitation for %(user)s"
msgstr ""
#: warehouse/templates/manage/organization/roles.html:352
-#: warehouse/templates/manage/project/release.html:96
-#: warehouse/templates/manage/project/releases.html:98
+#: warehouse/templates/manage/project/release.html:115
+#: warehouse/templates/manage/project/releases.html:116
#: warehouse/templates/manage/project/settings.html:239
msgid "Delete"
msgstr ""
@@ -6755,7 +6776,7 @@ msgstr ""
#: warehouse/templates/manage/project/history.html:77
#: warehouse/templates/manage/project/history.html:108
-#: warehouse/templates/manage/project/release.html:103
+#: warehouse/templates/manage/project/release.html:122
msgid "Filename:"
msgstr ""
@@ -6940,12 +6961,12 @@ msgid "Back to projects"
msgstr "Tuɣalin ar isenfaren"
#: warehouse/templates/manage/project/manage_project_base.html:51
-#: warehouse/templates/packaging/detail.html:329
+#: warehouse/templates/packaging/detail.html:335
msgid "This project has been quarantined."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:53
-#: warehouse/templates/packaging/detail.html:331
+#: warehouse/templates/packaging/detail.html:337
msgid ""
"PyPI Admins need to review this project before it can be restored. While in "
"quarantine, the project is not installable by clients, and cannot be being "
@@ -6953,14 +6974,16 @@ msgid ""
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:60
-#: warehouse/templates/packaging/detail.html:338
+#: warehouse/templates/manage/project/release.html:46
+#: warehouse/templates/packaging/detail.html:344
+#: warehouse/templates/packaging/detail.html:361
#, python-format
msgid ""
"Read more in the project in quarantine help article."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:67
-#: warehouse/templates/packaging/detail.html:345
+#: warehouse/templates/packaging/detail.html:368
msgid "This project has been archived."
msgstr ""
@@ -7036,7 +7059,7 @@ msgid "Version %(version)s"
msgstr ""
#: warehouse/templates/manage/project/release.html:25
-#: warehouse/templates/manage/project/releases.html:169
+#: warehouse/templates/manage/project/releases.html:189
msgid "Yanked releases"
msgstr ""
@@ -7045,57 +7068,70 @@ msgid "view release"
msgstr ""
#: warehouse/templates/manage/project/release.html:36
+#: warehouse/templates/packaging/detail.html:351
+msgid "This release has been quarantined."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:38
+#: warehouse/templates/packaging/detail.html:353
+msgid ""
+"PyPI Admins need to review this release before it can be restored. While in "
+"quarantine, the release is not installable by clients, and cannot be "
+"modified by its maintainers. Other releases of this project are unaffected."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:54
#, python-format
msgid "Files for release %(version)s of %(project_name)s"
msgstr ""
-#: warehouse/templates/manage/project/release.html:39
-#: warehouse/templates/manage/project/release.html:50
+#: warehouse/templates/manage/project/release.html:57
+#: warehouse/templates/manage/project/release.html:68
msgid "Filename, size"
msgstr ""
-#: warehouse/templates/manage/project/release.html:40
-#: warehouse/templates/manage/project/release.html:56
+#: warehouse/templates/manage/project/release.html:58
+#: warehouse/templates/manage/project/release.html:74
msgid "Type"
msgstr "Tawsit"
-#: warehouse/templates/manage/project/release.html:41
-#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:59
+#: warehouse/templates/manage/project/release.html:78
msgid "Python version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:42
-#: warehouse/templates/manage/project/release.html:64
+#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:82
msgid "Upload date"
msgstr ""
-#: warehouse/templates/manage/project/release.html:73
+#: warehouse/templates/manage/project/release.html:91
msgid "View file options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:81
+#: warehouse/templates/manage/project/release.html:99
msgid "File options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:86
+#: warehouse/templates/manage/project/release.html:104
msgid "Download"
msgstr ""
-#: warehouse/templates/manage/project/release.html:90
+#: warehouse/templates/manage/project/release.html:109
msgid "Delete file from"
msgstr ""
-#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/release.html:111
msgid "Delete file"
msgstr ""
-#: warehouse/templates/manage/project/release.html:111
+#: warehouse/templates/manage/project/release.html:130
msgid ""
"I understand that my users will no longer be able to install this file for "
"this release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:118
+#: warehouse/templates/manage/project/release.html:137
#, python-format
msgid ""
"I understand that I will %(filename)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:125
-#: warehouse/templates/manage/project/release.html:257
+#: warehouse/templates/manage/project/release.html:144
+#: warehouse/templates/manage/project/release.html:284
msgid "I understand that I will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:132
-#: warehouse/templates/manage/project/release.html:263
+#: warehouse/templates/manage/project/release.html:151
+#: warehouse/templates/manage/project/release.html:290
msgid ""
"I understand that the PyPI administrators will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:150
+#: warehouse/templates/manage/project/release.html:172
msgid "Uploading new files"
msgstr ""
-#: warehouse/templates/manage/project/release.html:152
+#: warehouse/templates/manage/project/release.html:174
msgid "No files found"
msgstr "Ur nufi ara ifuyla"
-#: warehouse/templates/manage/project/release.html:155
-#: warehouse/templates/manage/project/releases.html:183
+#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/releases.html:203
#: warehouse/templates/manage/project/settings.html:60
msgid "Dismiss"
msgstr ""
-#: warehouse/templates/manage/project/release.html:162
+#: warehouse/templates/manage/project/release.html:184
#, python-format
msgid ""
"Learn how to upload files on the Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/manage/project/release.html:165
+#: warehouse/templates/manage/project/release.html:187
msgid "Release settings"
msgstr ""
-#: warehouse/templates/manage/project/release.html:168
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/releases.html:111
+#: warehouse/templates/manage/project/release.html:190
+msgid ""
+"Yank and delete actions are unavailable while this release is in quarantine."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:195
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/releases.html:131
msgid "Yank release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:171
+#: warehouse/templates/manage/project/release.html:198
#, python-format
msgid ""
"Yanking will mark this release (and %(count)s file within it) to be ignored "
@@ -7156,53 +7197,53 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/release.html:204
msgid ""
"Yanking will mark this release to be ignored when installing in most common "
"scenarios."
msgstr ""
-#: warehouse/templates/manage/project/release.html:181
+#: warehouse/templates/manage/project/release.html:208
#, python-format
msgid ""
"This release will still be installable for users pinning to this exact "
"version, e.g. when using %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:211
#, python-format
msgid "For more information, see PEP 592."
msgstr ""
-#: warehouse/templates/manage/project/release.html:190
-#: warehouse/templates/manage/project/releases.html:114
+#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/releases.html:134
#, python-format
msgid ""
"You may provide a reason for yanking this release, which will be displayed "
"by pip to users who install %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:194
-#: warehouse/templates/manage/project/releases.html:118
+#: warehouse/templates/manage/project/release.html:221
+#: warehouse/templates/manage/project/releases.html:138
msgid "Reason (optional)"
msgstr ""
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/release.html:267
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/release.html:294
#: warehouse/templates/manage/project/releases.html:9
-#: warehouse/templates/manage/project/releases.html:108
-#: warehouse/templates/manage/project/releases.html:126
+#: warehouse/templates/manage/project/releases.html:128
#: warehouse/templates/manage/project/releases.html:146
+#: warehouse/templates/manage/project/releases.html:166
msgid "Version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:207
-#: warehouse/templates/manage/project/release.html:267
-#: warehouse/templates/manage/project/releases.html:128
+#: warehouse/templates/manage/project/release.html:234
+#: warehouse/templates/manage/project/release.html:294
+#: warehouse/templates/manage/project/releases.html:148
msgid "Delete release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:211
+#: warehouse/templates/manage/project/release.html:238
#, python-format
msgid ""
"Deleting will irreversibly delete this release along with %(count)s file."
@@ -7211,27 +7252,27 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/release.html:244
msgid "Deleting will irreversibly delete this release."
msgstr ""
-#: warehouse/templates/manage/project/release.html:220
-#: warehouse/templates/manage/project/releases.html:131
+#: warehouse/templates/manage/project/release.html:247
+#: warehouse/templates/manage/project/releases.html:151
msgid ""
"You will not be able to re-upload a new distribution of the same type with "
"the same version number."
msgstr ""
-#: warehouse/templates/manage/project/release.html:223
-#: warehouse/templates/manage/project/releases.html:134
+#: warehouse/templates/manage/project/release.html:250
+#: warehouse/templates/manage/project/releases.html:154
msgid ""
"Deletion will break any downstream projects relying on a pinned version of "
"this package. It is intended as a last resort to address legal issues or "
"remove harmful releases."
msgstr ""
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
#, python-format
msgid ""
"Consider post release instead."
msgstr ""
-#: warehouse/templates/manage/project/release.html:239
+#: warehouse/templates/manage/project/release.html:266
#, python-format
msgid ""
"I understand that I am permanently deleting all files for the "
"%(release_version)s release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:245
+#: warehouse/templates/manage/project/release.html:272
msgid ""
"I understand that my users will no longer be able to install this release of "
"this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:251
+#: warehouse/templates/manage/project/release.html:278
#, python-format
msgid ""
"I understand that I will installing packages."
msgstr ""
-#: warehouse/templates/packaging/detail.html:449
+#: warehouse/templates/packaging/detail.html:472
msgid "Source Distribution"
msgid_plural "Source Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:463
+#: warehouse/templates/packaging/detail.html:486
msgid "No source distribution files available for this release."
msgstr ""
-#: warehouse/templates/packaging/detail.html:464
+#: warehouse/templates/packaging/detail.html:487
#, python-format
msgid ""
"See tutorial on generating distribution archives."
msgstr ""
-#: warehouse/templates/packaging/detail.html:470
+#: warehouse/templates/packaging/detail.html:493
msgid "Built Distribution"
msgid_plural "Built Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:477
+#: warehouse/templates/packaging/detail.html:500
msgid "Filter files by name, interpreter, ABI, and platform."
msgstr ""
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/packaging/detail.html:503
#, python-format
msgid ""
"If you're not sure about the file name format, learn more about wheel file names."
msgstr ""
-#: warehouse/templates/packaging/detail.html:484
+#: warehouse/templates/packaging/detail.html:507
msgid ""
"The dropdown lists show the available interpreters, ABIs, and platforms."
msgstr ""
-#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:510
msgid "Enable javascript to be able to filter the list of wheel files."
msgstr ""
-#: warehouse/templates/packaging/detail.html:491
+#: warehouse/templates/packaging/detail.html:514
msgid "Copy a direct link to the current filters"
msgstr ""
-#: warehouse/templates/packaging/detail.html:509
-#: warehouse/templates/packaging/detail.html:514
+#: warehouse/templates/packaging/detail.html:532
+#: warehouse/templates/packaging/detail.html:537
msgid "File name"
msgstr ""
@@ -8385,7 +8434,7 @@ msgid ""
msgstr ""
#: warehouse/templates/pages/help.html:181
-msgid "My project says it's in quarantine. What does that mean?"
+msgid "My project or release says it's in quarantine. What does that mean?"
msgstr ""
#: warehouse/templates/pages/help.html:185
@@ -8451,7 +8500,7 @@ msgid "Troubleshooting"
msgstr ""
#: warehouse/templates/pages/help.html:393
-#: warehouse/templates/pages/help.html:1306
+#: warehouse/templates/pages/help.html:1307
msgid "About"
msgstr ""
@@ -9255,7 +9304,7 @@ msgstr ""
#: warehouse/templates/pages/help.html:1079
msgid ""
"Deletion of a project, release or file on PyPI is permanent and "
-"irreversable, without exception. Deletion of a project makes it "
+"irreversible, without exception. Deletion of a project makes it "
"uninstallable, and releases the project name for use by any other PyPI user. "
"Deleted files cannot be re-uploaded. "
"Deleted projects, releases or files cannot be restored by PyPI "
@@ -9523,29 +9572,30 @@ msgstr ""
#: warehouse/templates/pages/help.html:1282
#, python-format
msgid ""
-"Projects may get placed in quarantine for any number of reasons, such as "
-"suspicion of malicious activity, spam, or other violations of the Terms of Service or "
-"Acceptable Use "
-"Policy."
+"Projects or individual releases may get placed in quarantine for any number "
+"of reasons, such as suspicion of malicious activity, spam, or other "
+"violations of the Terms of Service or Acceptable Use Policy."
msgstr ""
#: warehouse/templates/pages/help.html:1291
msgid ""
-"While in quarantine, the project is not installable by clients, and cannot "
-"be being modified by its maintainers. PyPI Administrators will need to "
-"review this project before it can be restored."
+"While in quarantine, the project or release is not installable by clients, "
+"and cannot be modified by its maintainers. PyPI Administrators will need to "
+"review it before it can be restored. When a single release is quarantined, "
+"other releases of the same project are unaffected."
msgstr ""
-#: warehouse/templates/pages/help.html:1298
+#: warehouse/templates/pages/help.html:1299
#, python-format
msgid ""
-"If you believe your project has mistakenly been flagged for quarantine, "
-"contact PyPI via security@pypi.org with any "
-"details."
+"If you believe your project or release has mistakenly been flagged for "
+"quarantine, contact PyPI via security@pypi.org "
+"with any details."
msgstr ""
-#: warehouse/templates/pages/help.html:1309
+#: warehouse/templates/pages/help.html:1310
#, python-format
msgid ""
"PyPI is powered by the Warehouse project; ."
msgstr ""
-#: warehouse/templates/pages/help.html:1344
+#: warehouse/templates/pages/help.html:1345
msgid ""
"As of April 16, 2018, PyPI.org is at \"production\" status, meaning that it "
"has moved out of beta and replaced the old site (pypi.python.org). It is now "
"robust, tested, and ready for expected browser and API traffic."
msgstr ""
-#: warehouse/templates/pages/help.html:1347
+#: warehouse/templates/pages/help.html:1348
#, python-format
msgid ""
"PyPI is heavily cached and distributed via private index."
msgstr ""
-#: warehouse/templates/pages/help.html:1366
+#: warehouse/templates/pages/help.html:1367
#, python-format
msgid ""
"We have a huge amount of work to do to continue to maintain and improve PyPI "
@@ -9617,22 +9667,22 @@ msgid ""
"rel=\"noopener\">the Warehouse project)."
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
msgid "Financial:"
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
#, python-format
msgid ""
"We would deeply appreciate your donations to fund "
"development and maintenance."
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid "Development:"
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid ""
"Warehouse is open source, and we would love to see some new faces working on "
"the project. You do not need to be an experienced open-"
@@ -9640,7 +9690,7 @@ msgid ""
"make your first open source pull request!"
msgstr ""
-#: warehouse/templates/pages/help.html:1378
+#: warehouse/templates/pages/help.html:1379
#, python-format
msgid ""
"If you have skills in Python, Full-Text Search, HTML, SCSS, JavaScript, or "
@@ -9653,7 +9703,7 @@ msgid ""
"recommend you start here."
msgstr ""
-#: warehouse/templates/pages/help.html:1395
+#: warehouse/templates/pages/help.html:1396
#, python-format
msgid ""
"Issues are grouped into Python packaging forum on Discourse."
msgstr ""
-#: warehouse/templates/pages/help.html:1414
+#: warehouse/templates/pages/help.html:1415
#, python-format
msgid ""
"Changes to PyPI are generally announced on both the RSS feed."
msgstr ""
-#: warehouse/templates/pages/help.html:1432
+#: warehouse/templates/pages/help.html:1433
#, python-format
msgid ""
"All traffic is routed through our global CDN, which lists their public IP "
"addresses here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1435
+#: warehouse/templates/pages/help.html:1436
#, python-format
msgid ""
"More information about this list can be found here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1439
+#: warehouse/templates/pages/help.html:1440
msgid ""
"When Warehouse's maintainers are deploying new features, at first we mark "
"them with a small \"beta feature\" symbol to tell you: this should probably "
"work fine, but it's new and less tested than other site functionality."
msgstr ""
-#: warehouse/templates/pages/help.html:1441
+#: warehouse/templates/pages/help.html:1442
msgid "Currently, no features are in beta."
msgstr ""
-#: warehouse/templates/pages/help.html:1444
+#: warehouse/templates/pages/help.html:1445
#, python-format
msgid ""
"\"PyPI\" should be pronounced like \"pie pea eye\", specifically with the "
@@ -9722,43 +9772,43 @@ msgid ""
"language."
msgstr ""
-#: warehouse/templates/pages/help.html:1454
+#: warehouse/templates/pages/help.html:1455
msgid "Resources"
msgstr ""
-#: warehouse/templates/pages/help.html:1455
+#: warehouse/templates/pages/help.html:1456
msgid "Looking for something else? Perhaps these links will help:"
msgstr ""
-#: warehouse/templates/pages/help.html:1461
+#: warehouse/templates/pages/help.html:1462
msgid "PyPI User Documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1467
+#: warehouse/templates/pages/help.html:1468
msgid "Python Packaging User Guide"
msgstr "Amnir n useqdec n ikemmusen n Python"
-#: warehouse/templates/pages/help.html:1473
+#: warehouse/templates/pages/help.html:1474
msgid "Python documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1479
+#: warehouse/templates/pages/help.html:1480
msgid "(main Python website)"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "Python community page"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "(lists IRC channels, mailing lists, etc.)"
msgstr ""
-#: warehouse/templates/pages/help.html:1488
+#: warehouse/templates/pages/help.html:1489
msgid "Contact"
msgstr ""
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1491
#, python-format
msgid ""
"The Terms of Service."
msgstr ""
-#: warehouse/accounts/views.py:1798 warehouse/accounts/views.py:2052
+#: warehouse/accounts/views.py:1793 warehouse/accounts/views.py:2056
#: warehouse/manage/views/oidc_publishers.py:126
-#: warehouse/manage/views/organizations.py:1822
+#: warehouse/manage/views/organizations.py:1820
msgid ""
"Trusted publishing is temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1819
-#: warehouse/manage/views/organizations.py:1845
+#: warehouse/accounts/views.py:1814
+#: warehouse/manage/views/organizations.py:1843
msgid "disabled. See https://pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1835
+#: warehouse/accounts/views.py:1830
msgid ""
"You must have a verified email in order to register a pending trusted "
"publisher. See https://pypi.org/help#openid-connect for details."
msgstr ""
-#: warehouse/accounts/views.py:1848
+#: warehouse/accounts/views.py:1843
msgid "You can't register more than 3 pending trusted publishers at once."
msgstr ""
-#: warehouse/accounts/views.py:1863
+#: warehouse/accounts/views.py:1858
#: warehouse/manage/views/oidc_publishers.py:308
#: warehouse/manage/views/oidc_publishers.py:423
#: warehouse/manage/views/oidc_publishers.py:539
@@ -386,32 +385,39 @@ msgid ""
"again later."
msgstr ""
-#: warehouse/accounts/views.py:1873
+#: warehouse/accounts/views.py:1868
#: warehouse/manage/views/oidc_publishers.py:321
#: warehouse/manage/views/oidc_publishers.py:436
#: warehouse/manage/views/oidc_publishers.py:552
#: warehouse/manage/views/oidc_publishers.py:664
-#: warehouse/manage/views/organizations.py:1861
+#: warehouse/manage/views/organizations.py:1859
msgid "The trusted publisher could not be registered"
msgstr ""
-#: warehouse/accounts/views.py:1888
+#: warehouse/accounts/views.py:1883
msgid ""
"This trusted publisher has already been registered. Please contact PyPI's "
"admins if this wasn't intentional."
msgstr ""
-#: warehouse/accounts/views.py:1922
-#: warehouse/manage/views/organizations.py:1910
+#: warehouse/accounts/views.py:1903
+msgid ""
+"A pending trusted publisher matching this configuration has already been "
+"registered for a different project name. Please contact PyPI's admins if "
+"this wasn't intentional."
+msgstr ""
+
+#: warehouse/accounts/views.py:1926
+#: warehouse/manage/views/organizations.py:1908
msgid "Registered a new pending publisher to create "
msgstr ""
-#: warehouse/accounts/views.py:2065 warehouse/accounts/views.py:2078
-#: warehouse/accounts/views.py:2085
+#: warehouse/accounts/views.py:2069 warehouse/accounts/views.py:2082
+#: warehouse/accounts/views.py:2089
msgid "Invalid publisher ID"
msgstr ""
-#: warehouse/accounts/views.py:2092
+#: warehouse/accounts/views.py:2096
msgid "Removed trusted publisher for project "
msgstr ""
@@ -419,31 +425,31 @@ msgstr ""
msgid "Banner Preview"
msgstr ""
-#: warehouse/manage/forms.py:292
+#: warehouse/manage/forms.py:289
msgid "Specify an association ID"
msgstr ""
-#: warehouse/manage/forms.py:293
+#: warehouse/manage/forms.py:290
msgid "Association must be specified by ID"
msgstr ""
-#: warehouse/manage/forms.py:308
+#: warehouse/manage/forms.py:305
msgid "No account association with given ID"
msgstr ""
-#: warehouse/manage/forms.py:313
+#: warehouse/manage/forms.py:310
msgid "This association does not belong to you"
msgstr ""
-#: warehouse/manage/forms.py:417
+#: warehouse/manage/forms.py:414
msgid "Provide your response to the request."
msgstr ""
-#: warehouse/manage/forms.py:459
+#: warehouse/manage/forms.py:456
msgid "Choose an organization account name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:467
+#: warehouse/manage/forms.py:464
msgid ""
"The organization account name is invalid. Organization account names must be "
"composed of letters, numbers, dots, hyphens and underscores. And must also "
@@ -451,245 +457,251 @@ msgid ""
"account name."
msgstr ""
-#: warehouse/manage/forms.py:490
+#: warehouse/manage/forms.py:487
msgid ""
"This organization account name has already been used. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:505
+#: warehouse/manage/forms.py:502
msgid ""
"You have already submitted an application for that name. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:540
+#: warehouse/manage/forms.py:536
msgid "Select project"
msgstr ""
-#: warehouse/manage/forms.py:545 warehouse/oidc/forms/_core.py:36
+#: warehouse/manage/forms.py:541 warehouse/oidc/forms/_core.py:36
#: warehouse/oidc/forms/gitlab.py:54
msgid "Specify project name"
msgstr ""
-#: warehouse/manage/forms.py:549
+#: warehouse/manage/forms.py:545
msgid ""
"Start and end with a letter or numeral containing only ASCII numeric and "
"'.', '_' and '-'."
msgstr ""
-#: warehouse/manage/forms.py:556
+#: warehouse/manage/forms.py:552
msgid ""
"This project name has already been used. Choose a different project name."
msgstr ""
-#: warehouse/manage/forms.py:589
+#: warehouse/manage/forms.py:585
msgid "Cannot transfer to Company Organization with inactive billing"
msgstr ""
-#: warehouse/manage/forms.py:642
+#: warehouse/manage/forms.py:638
msgid ""
"The organization name is too long. Choose a organization name with 100 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:654
+#: warehouse/manage/forms.py:650
msgid ""
"The organization URL is too long. Choose a organization URL with 400 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:660
+#: warehouse/manage/forms.py:656
msgid "The organization URL must start with http:// or https://"
msgstr ""
-#: warehouse/manage/forms.py:672
+#: warehouse/manage/forms.py:668
msgid ""
"The organization description is too long. Choose a organization description "
"with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:715
+#: warehouse/manage/forms.py:711
msgid ""
"We don't need to know quite that much :), limit your usage description to "
"1024 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:737
-msgid "You have already submitted the maximum number of "
+#: warehouse/manage/forms.py:733
+#, python-format
+msgid ""
+"You have already submitted the maximum number of Organization requests (%s)."
msgstr ""
-#: warehouse/manage/forms.py:766
+#: warehouse/manage/forms.py:763
msgid "Choose a team name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:773
+#: warehouse/manage/forms.py:770
msgid ""
"The team name is invalid. Team names cannot start or end with a space, "
"period, underscore, hyphen, or slash. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:801
+#: warehouse/manage/forms.py:797
msgid "This team name has already been used. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:819
+#: warehouse/manage/forms.py:813
msgid "Specify your alternate repository name"
msgstr ""
-#: warehouse/manage/forms.py:833
+#: warehouse/manage/forms.py:826
msgid "Specify your alternate repository URL"
msgstr ""
-#: warehouse/manage/forms.py:838
+#: warehouse/manage/forms.py:831
msgid "The URL is too long. Choose a URL with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:852
+#: warehouse/manage/forms.py:845
msgid ""
"The description is too long. Choose a description with 400 characters or "
"less."
msgstr ""
-#: warehouse/manage/views/__init__.py:408
+#: warehouse/manage/views/__init__.py:404
msgid "Account details updated"
msgstr ""
-#: warehouse/manage/views/__init__.py:439
+#: warehouse/manage/views/__init__.py:435
#, python-brace-format
msgid "Email ${email_address} added - check your email for a verification link"
msgstr ""
-#: warehouse/manage/views/__init__.py:895
+#: warehouse/manage/views/__init__.py:891
msgid "Recovery codes already generated"
msgstr ""
-#: warehouse/manage/views/__init__.py:897
+#: warehouse/manage/views/__init__.py:893
msgid "Generating new recovery codes will invalidate your existing codes."
msgstr ""
-#: warehouse/manage/views/__init__.py:1005
+#: warehouse/manage/views/__init__.py:1001
msgid "Verify your email to create an API token."
msgstr ""
-#: warehouse/manage/views/__init__.py:1107
+#: warehouse/manage/views/__init__.py:1103
msgid "API Token does not exist."
msgstr ""
-#: warehouse/manage/views/__init__.py:1139
+#: warehouse/manage/views/__init__.py:1135
msgid "Invalid credentials. Try again"
msgstr ""
-#: warehouse/manage/views/__init__.py:1258
+#: warehouse/manage/views/__init__.py:1256
msgid "Invalid alternate repository location details"
msgstr ""
-#: warehouse/manage/views/__init__.py:1296
+#: warehouse/manage/views/__init__.py:1294
#, python-brace-format
msgid "Added alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1329
-#: warehouse/manage/views/__init__.py:1590
-#: warehouse/manage/views/__init__.py:1675
-#: warehouse/manage/views/__init__.py:1776
-#: warehouse/manage/views/__init__.py:1876
+#: warehouse/manage/views/__init__.py:1327
+#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1690
+#: warehouse/manage/views/__init__.py:1793
+#: warehouse/manage/views/__init__.py:1896
msgid "Confirm the request"
msgstr ""
-#: warehouse/manage/views/__init__.py:1341
+#: warehouse/manage/views/__init__.py:1339
msgid "Invalid alternate repository id"
msgstr ""
-#: warehouse/manage/views/__init__.py:1352
+#: warehouse/manage/views/__init__.py:1350
msgid "Invalid alternate repository for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:1361
+#: warehouse/manage/views/__init__.py:1359
#, python-brace-format
msgid ""
"Could not delete alternate repository - ${confirm} is not the same as $"
"{alt_repo_name}"
msgstr ""
-#: warehouse/manage/views/__init__.py:1391
+#: warehouse/manage/views/__init__.py:1389
#, python-brace-format
msgid "Deleted alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1459
-#: warehouse/manage/views/__init__.py:1760
-#: warehouse/manage/views/__init__.py:1868
+#: warehouse/manage/views/__init__.py:1457
+#: warehouse/manage/views/__init__.py:1777
+#: warehouse/manage/views/__init__.py:1888
msgid ""
"Project deletion temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1579
+msgid "This release is in quarantine and cannot be modified."
+msgstr ""
+
+#: warehouse/manage/views/__init__.py:1616
msgid "Could not yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1688
+#: warehouse/manage/views/__init__.py:1703
msgid "Could not un-yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1789
+#: warehouse/manage/views/__init__.py:1806
msgid "Could not delete release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1888
+#: warehouse/manage/views/__init__.py:1908
msgid "Could not find file"
msgstr ""
-#: warehouse/manage/views/__init__.py:1893
+#: warehouse/manage/views/__init__.py:1913
msgid "Could not delete file - "
msgstr ""
-#: warehouse/manage/views/__init__.py:2043
+#: warehouse/manage/views/__init__.py:2063
#, python-brace-format
msgid "Team '${team_name}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2150
+#: warehouse/manage/views/__init__.py:2170
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2217
+#: warehouse/manage/views/__init__.py:2237
#, python-brace-format
msgid "${username} is now ${role} of the '${project_name}' project."
msgstr ""
-#: warehouse/manage/views/__init__.py:2249
+#: warehouse/manage/views/__init__.py:2268
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2262
-#: warehouse/manage/views/organizations.py:981
+#: warehouse/manage/views/__init__.py:2281
+#: warehouse/manage/views/organizations.py:980
#, python-brace-format
msgid ""
"User '${username}' already has an active invite. Please try again later."
msgstr ""
-#: warehouse/manage/views/__init__.py:2327
-#: warehouse/manage/views/organizations.py:1056
+#: warehouse/manage/views/__init__.py:2346
+#: warehouse/manage/views/organizations.py:1055
#, python-brace-format
msgid "Invitation sent to '${username}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:2359
+#: warehouse/manage/views/__init__.py:2378
msgid "Could not find role invitation."
msgstr ""
-#: warehouse/manage/views/__init__.py:2370
+#: warehouse/manage/views/__init__.py:2389
msgid "Invitation already expired."
msgstr ""
-#: warehouse/manage/views/__init__.py:2403
-#: warehouse/manage/views/organizations.py:1256
+#: warehouse/manage/views/__init__.py:2422
+#: warehouse/manage/views/organizations.py:1255
#, python-brace-format
msgid "Invitation revoked from '${username}'."
msgstr ""
@@ -782,37 +794,37 @@ msgid ""
"pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/manage/views/organizations.py:957
+#: warehouse/manage/views/organizations.py:956
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:968
+#: warehouse/manage/views/organizations.py:967
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:992
+#: warehouse/manage/views/organizations.py:991
msgid "Cannot invite new member. Organization is not in good standing."
msgstr ""
-#: warehouse/manage/views/organizations.py:1151
-#: warehouse/manage/views/organizations.py:1193
+#: warehouse/manage/views/organizations.py:1150
+#: warehouse/manage/views/organizations.py:1192
msgid "Could not find organization invitation."
msgstr ""
-#: warehouse/manage/views/organizations.py:1161
+#: warehouse/manage/views/organizations.py:1160
msgid "Organization invitation could not be re-sent."
msgstr ""
-#: warehouse/manage/views/organizations.py:1209
+#: warehouse/manage/views/organizations.py:1208
#, python-brace-format
msgid "Expired invitation for '${username}' deleted."
msgstr ""
-#: warehouse/manage/views/organizations.py:1877
+#: warehouse/manage/views/organizations.py:1875
msgid ""
"This publisher has already been registered in your organization. See your "
"existing pending publishers below."
@@ -830,33 +842,33 @@ msgid ""
"{url}'>here to create a Trusted Publisher for it."
msgstr ""
-#: warehouse/oidc/forms/_core.py:77
+#: warehouse/oidc/forms/_core.py:75
msgid "This project already exists."
msgstr ""
-#: warehouse/oidc/forms/_core.py:82
+#: warehouse/oidc/forms/_core.py:79
msgid "This project name isn't allowed"
msgstr ""
-#: warehouse/oidc/forms/_core.py:86
+#: warehouse/oidc/forms/_core.py:83
msgid "This project name is too similar to an existing project"
msgstr ""
-#: warehouse/oidc/forms/_core.py:91
+#: warehouse/oidc/forms/_core.py:88
msgid ""
"This project name isn't allowed (conflict with the Python standard library "
"module name)"
msgstr ""
-#: warehouse/oidc/forms/_core.py:119 warehouse/oidc/forms/_core.py:130
+#: warehouse/oidc/forms/_core.py:115 warehouse/oidc/forms/_core.py:126
msgid "Specify a publisher ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:120 warehouse/oidc/forms/_core.py:131
+#: warehouse/oidc/forms/_core.py:116 warehouse/oidc/forms/_core.py:127
msgid "Publisher must be specified by ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:136
+#: warehouse/oidc/forms/_core.py:132
msgid "Specify an environment name"
msgstr ""
@@ -895,7 +907,7 @@ msgstr ""
msgid "ActiveState organization not found"
msgstr ""
-#: warehouse/oidc/forms/activestate.py:166
+#: warehouse/oidc/forms/activestate.py:164
msgid "ActiveState actor not found"
msgstr ""
@@ -923,43 +935,43 @@ msgstr ""
msgid "GitHub has rate-limited this action. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:95
+#: warehouse/oidc/forms/github.py:94
msgid "Unexpected error from GitHub. Try again."
msgstr ""
-#: warehouse/oidc/forms/github.py:103
+#: warehouse/oidc/forms/github.py:102
msgid "Unexpected connection error from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:112
+#: warehouse/oidc/forms/github.py:111
msgid "Unexpected timeout from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:124
+#: warehouse/oidc/forms/github.py:123
msgid "Invalid GitHub user or organization name."
msgstr ""
-#: warehouse/oidc/forms/github.py:140
+#: warehouse/oidc/forms/github.py:137
msgid "Workflow name must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/github.py:145
+#: warehouse/oidc/forms/github.py:142
msgid "Workflow filename must be a filename only, without directories"
msgstr ""
-#: warehouse/oidc/forms/github.py:156
+#: warehouse/oidc/forms/github.py:153
msgid "Environment name is too long (maximum is 255 characters)"
msgstr ""
-#: warehouse/oidc/forms/github.py:161
+#: warehouse/oidc/forms/github.py:158
msgid "Environment name may not start with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:166
+#: warehouse/oidc/forms/github.py:163
msgid "Environment name may not end with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:172
+#: warehouse/oidc/forms/github.py:169
msgid ""
"Environment name must not contain non-printable characters or the characters "
"\"'\", \"\"\", \"`\", \",\", \";\", \"\\\""
@@ -989,11 +1001,11 @@ msgstr ""
msgid "Choose GitLab issuer URL"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:111
+#: warehouse/oidc/forms/gitlab.py:109
msgid "Top-level pipeline file path must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:115
+#: warehouse/oidc/forms/gitlab.py:113
msgid "Top-level pipeline file path cannot start or end with /"
msgstr ""
@@ -1001,7 +1013,7 @@ msgstr ""
msgid "Provide an Inspector link to specific lines of code."
msgstr ""
-#: warehouse/packaging/views.py:346
+#: warehouse/packaging/views.py:357
msgid "Your report has been recorded. Thank you for your help."
msgstr ""
@@ -1113,14 +1125,14 @@ msgstr ""
#: warehouse/templates/404.html:33 warehouse/templates/500.html:18
#: warehouse/templates/accounts/two-factor.html:35
-#: warehouse/templates/base.html:340 warehouse/templates/base.html:346
-#: warehouse/templates/base.html:352 warehouse/templates/base.html:358
-#: warehouse/templates/base.html:374 warehouse/templates/base.html:380
-#: warehouse/templates/base.html:405 warehouse/templates/base.html:411
-#: warehouse/templates/base.html:420 warehouse/templates/base.html:433
-#: warehouse/templates/base.html:442 warehouse/templates/base.html:448
-#: warehouse/templates/base.html:454 warehouse/templates/base.html:467
-#: warehouse/templates/base.html:484
+#: warehouse/templates/base.html:342 warehouse/templates/base.html:348
+#: warehouse/templates/base.html:354 warehouse/templates/base.html:360
+#: warehouse/templates/base.html:376 warehouse/templates/base.html:382
+#: warehouse/templates/base.html:407 warehouse/templates/base.html:413
+#: warehouse/templates/base.html:422 warehouse/templates/base.html:435
+#: warehouse/templates/base.html:444 warehouse/templates/base.html:450
+#: warehouse/templates/base.html:456 warehouse/templates/base.html:469
+#: warehouse/templates/base.html:486 warehouse/templates/base.html:494
#: warehouse/templates/includes/accounts/profile-callout.html:17
#: warehouse/templates/includes/file-details.html:129
#: warehouse/templates/index.html:98 warehouse/templates/index.html:105
@@ -1132,13 +1144,13 @@ msgstr ""
#: warehouse/templates/manage/account/webauthn-provision.html:51
#: warehouse/templates/manage/account/webauthn-provision.html:68
#: warehouse/templates/manage/manage_base.html:210
-#: warehouse/templates/manage/project/release.html:162
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
-#: warehouse/templates/manage/project/releases.html:190
-#: warehouse/templates/packaging/detail.html:446
-#: warehouse/templates/packaging/detail.html:464
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
+#: warehouse/templates/manage/project/releases.html:210
+#: warehouse/templates/packaging/detail.html:469
+#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:503
#: warehouse/templates/pages/classifiers.html:17
#: warehouse/templates/pages/help.html:7
#: warehouse/templates/pages/help.html:441
@@ -1184,23 +1196,23 @@ msgstr ""
#: warehouse/templates/pages/help.html:1213
#: warehouse/templates/pages/help.html:1256
#: warehouse/templates/pages/help.html:1263
-#: warehouse/templates/pages/help.html:1309
-#: warehouse/templates/pages/help.html:1314
-#: warehouse/templates/pages/help.html:1319
-#: warehouse/templates/pages/help.html:1334
-#: warehouse/templates/pages/help.html:1347
-#: warehouse/templates/pages/help.html:1366
-#: warehouse/templates/pages/help.html:1378
-#: warehouse/templates/pages/help.html:1395
-#: warehouse/templates/pages/help.html:1403
-#: warehouse/templates/pages/help.html:1414
-#: warehouse/templates/pages/help.html:1444
-#: warehouse/templates/pages/help.html:1459
-#: warehouse/templates/pages/help.html:1465
-#: warehouse/templates/pages/help.html:1471
-#: warehouse/templates/pages/help.html:1477
-#: warehouse/templates/pages/help.html:1483
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1310
+#: warehouse/templates/pages/help.html:1315
+#: warehouse/templates/pages/help.html:1320
+#: warehouse/templates/pages/help.html:1335
+#: warehouse/templates/pages/help.html:1348
+#: warehouse/templates/pages/help.html:1367
+#: warehouse/templates/pages/help.html:1379
+#: warehouse/templates/pages/help.html:1396
+#: warehouse/templates/pages/help.html:1404
+#: warehouse/templates/pages/help.html:1415
+#: warehouse/templates/pages/help.html:1445
+#: warehouse/templates/pages/help.html:1460
+#: warehouse/templates/pages/help.html:1466
+#: warehouse/templates/pages/help.html:1472
+#: warehouse/templates/pages/help.html:1478
+#: warehouse/templates/pages/help.html:1484
+#: warehouse/templates/pages/help.html:1491
#: warehouse/templates/pages/sponsors.html:23
#: warehouse/templates/pages/sponsors.html:34
#: warehouse/templates/pages/sponsors.html:42
@@ -1274,7 +1286,7 @@ msgid "Main navigation"
msgstr ""
#: warehouse/templates/base.html:34 warehouse/templates/base.html:68
-#: warehouse/templates/base.html:335
+#: warehouse/templates/base.html:337
#: warehouse/templates/includes/current-user-indicator.html:77
#: warehouse/templates/pages/help.html:209
#: warehouse/templates/pages/sitemap.html:19
@@ -1349,16 +1361,16 @@ msgstr ""
msgid "RSS: 40 newest packages"
msgstr ""
-#: warehouse/templates/base.html:206
+#: warehouse/templates/base.html:208
msgid "Skip to main content"
msgstr ""
-#: warehouse/templates/base.html:210
+#: warehouse/templates/base.html:212
msgid "Switch to mobile version"
msgstr ""
-#: warehouse/templates/base.html:217 warehouse/templates/base.html:226
-#: warehouse/templates/base.html:236
+#: warehouse/templates/base.html:219 warehouse/templates/base.html:228
+#: warehouse/templates/base.html:238
#: warehouse/templates/includes/flash-messages.html:41
#: warehouse/templates/includes/session-notifications.html:19
#: warehouse/templates/manage/account.html:1011
@@ -1367,7 +1379,7 @@ msgstr ""
#: warehouse/templates/manage/organization/settings.html:291
#: warehouse/templates/manage/organization/settings.html:297
#: warehouse/templates/manage/project/documentation.html:13
-#: warehouse/templates/manage/project/release.html:209
+#: warehouse/templates/manage/project/release.html:236
#: warehouse/templates/manage/project/settings.html:78
#: warehouse/templates/manage/project/settings.html:124
#: warehouse/templates/manage/project/settings.html:365
@@ -1375,176 +1387,183 @@ msgstr ""
msgid "Warning"
msgstr ""
-#: warehouse/templates/base.html:219
+#: warehouse/templates/base.html:221
msgid "You are using an unsupported browser, upgrade to a newer version."
msgstr ""
-#: warehouse/templates/base.html:228
+#: warehouse/templates/base.html:230
msgid ""
"You are using TestPyPI – a separate instance of the Python Package Index "
"that allows you to try distribution tools and processes without affecting "
"the real index."
msgstr ""
-#: warehouse/templates/base.html:238
+#: warehouse/templates/base.html:240
msgid ""
"Some features may not work without JavaScript. Please try enabling it if you "
"encounter problems."
msgstr ""
-#: warehouse/templates/base.html:273 warehouse/templates/base.html:305
+#: warehouse/templates/base.html:275 warehouse/templates/base.html:307
#: warehouse/templates/error-base-with-search.html:8
#: warehouse/templates/index.html:29
msgid "Search PyPI"
msgstr ""
-#: warehouse/templates/base.html:278 warehouse/templates/index.html:35
+#: warehouse/templates/base.html:280 warehouse/templates/index.html:35
msgid "Type '/' to search projects"
msgstr ""
-#: warehouse/templates/base.html:289 warehouse/templates/base.html:318
+#: warehouse/templates/base.html:291 warehouse/templates/base.html:320
#: warehouse/templates/error-base-with-search.html:19
#: warehouse/templates/index.html:44
msgid "Search"
msgstr ""
-#: warehouse/templates/base.html:310
+#: warehouse/templates/base.html:312
#: warehouse/templates/error-base-with-search.html:13
msgid "Search projects"
msgstr ""
-#: warehouse/templates/base.html:336
+#: warehouse/templates/base.html:338
msgid "Help navigation"
msgstr ""
-#: warehouse/templates/base.html:342
+#: warehouse/templates/base.html:344
msgid "Installing packages"
msgstr ""
-#: warehouse/templates/base.html:348
+#: warehouse/templates/base.html:350
msgid "Uploading packages"
msgstr ""
-#: warehouse/templates/base.html:354
+#: warehouse/templates/base.html:356
msgid "User guide"
msgstr ""
-#: warehouse/templates/base.html:360
+#: warehouse/templates/base.html:362
msgid "Project name retention"
msgstr ""
-#: warehouse/templates/base.html:363
+#: warehouse/templates/base.html:365
msgid "FAQs"
msgstr ""
-#: warehouse/templates/base.html:369 warehouse/templates/pages/sitemap.html:34
+#: warehouse/templates/base.html:371 warehouse/templates/pages/sitemap.html:34
msgid "About PyPI"
msgstr ""
-#: warehouse/templates/base.html:370
+#: warehouse/templates/base.html:372
msgid "About PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:376
+#: warehouse/templates/base.html:378
msgid "PyPI Blog"
msgstr ""
-#: warehouse/templates/base.html:382
+#: warehouse/templates/base.html:384
msgid "Infrastructure dashboard"
msgstr ""
-#: warehouse/templates/base.html:385 warehouse/templates/pages/sitemap.html:40
+#: warehouse/templates/base.html:387 warehouse/templates/pages/sitemap.html:40
#: warehouse/templates/pages/stats.html:4
msgid "Statistics"
msgstr ""
-#: warehouse/templates/base.html:388
+#: warehouse/templates/base.html:390
msgid "Logos & trademarks"
msgstr ""
-#: warehouse/templates/base.html:391
+#: warehouse/templates/base.html:393
msgid "Our sponsors"
msgstr ""
-#: warehouse/templates/base.html:397
+#: warehouse/templates/base.html:399
msgid "Contributing to PyPI"
msgstr ""
-#: warehouse/templates/base.html:398
+#: warehouse/templates/base.html:400
msgid "How to contribute navigation"
msgstr ""
-#: warehouse/templates/base.html:401
+#: warehouse/templates/base.html:403
msgid "Bugs and feedback"
msgstr ""
-#: warehouse/templates/base.html:407
+#: warehouse/templates/base.html:409
msgid "Contribute on GitHub"
msgstr ""
-#: warehouse/templates/base.html:413
+#: warehouse/templates/base.html:415
msgid "Translate PyPI"
msgstr ""
-#: warehouse/templates/base.html:416
+#: warehouse/templates/base.html:418
msgid "Sponsor PyPI"
msgstr ""
-#: warehouse/templates/base.html:422
+#: warehouse/templates/base.html:424
msgid "Development credits"
msgstr ""
-#: warehouse/templates/base.html:428 warehouse/templates/pages/sitemap.html:10
+#: warehouse/templates/base.html:430 warehouse/templates/pages/sitemap.html:10
msgid "Using PyPI"
msgstr ""
-#: warehouse/templates/base.html:429
+#: warehouse/templates/base.html:431
msgid "Using PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:435
+#: warehouse/templates/base.html:437
#: warehouse/templates/manage/organization/activate_subscription.html:21
msgid "Terms of Service"
msgstr ""
-#: warehouse/templates/base.html:438
+#: warehouse/templates/base.html:440
msgid "Report security issue"
msgstr ""
-#: warehouse/templates/base.html:444
+#: warehouse/templates/base.html:446
msgid "Code of conduct"
msgstr ""
-#: warehouse/templates/base.html:450
+#: warehouse/templates/base.html:452
msgid "Privacy Notice"
msgstr ""
-#: warehouse/templates/base.html:456
+#: warehouse/templates/base.html:458
msgid "Acceptable Use Policy"
msgstr ""
-#: warehouse/templates/base.html:466
+#: warehouse/templates/base.html:468
msgid "Status:"
msgstr ""
-#: warehouse/templates/base.html:470
+#: warehouse/templates/base.html:472
msgid "all systems operational"
msgstr ""
-#: warehouse/templates/base.html:474
+#: warehouse/templates/base.html:476
msgid ""
"Developed and maintained by the Python community, for the Python community."
msgstr ""
-#: warehouse/templates/base.html:476
+#: warehouse/templates/base.html:478
msgid "Donate today!"
msgstr ""
-#: warehouse/templates/base.html:488 warehouse/templates/pages/sitemap.html:4
+#: warehouse/templates/base.html:490 warehouse/templates/pages/sitemap.html:4
msgid "Site map"
msgstr ""
-#: warehouse/templates/base.html:495
+#: warehouse/templates/base.html:494
+#, python-format
+msgid ""
+"Deployed from %(sha)s"
+msgstr ""
+
+#: warehouse/templates/base.html:502
msgid "Switch to desktop version"
msgstr ""
@@ -3072,8 +3091,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:546
#: warehouse/templates/manage/manage_base.html:344
#: warehouse/templates/manage/manage_base.html:347
-#: warehouse/templates/manage/project/release.html:158
-#: warehouse/templates/manage/project/releases.html:186
+#: warehouse/templates/manage/project/release.html:180
+#: warehouse/templates/manage/project/releases.html:206
#: warehouse/templates/manage/project/settings.html:63
#: warehouse/templates/manage/unverified-account.html:186
#: warehouse/templates/manage/unverified-account.html:189
@@ -3164,7 +3183,7 @@ msgstr ""
#: warehouse/templates/manage/account/totp-provision.html:46
#: warehouse/templates/manage/unverified-account.html:200
#: warehouse/templates/packaging/detail.html:150
-#: warehouse/templates/packaging/detail.html:500
+#: warehouse/templates/packaging/detail.html:523
#: warehouse/templates/pages/classifiers.html:42
msgid "Copy to clipboard"
msgstr ""
@@ -3176,7 +3195,7 @@ msgstr ""
#: warehouse/templates/manage/account/recovery_codes-provision.html:54
#: warehouse/templates/manage/account/totp-provision.html:47
#: warehouse/templates/manage/unverified-account.html:201
-#: warehouse/templates/packaging/detail.html:501
+#: warehouse/templates/packaging/detail.html:524
#: warehouse/templates/pages/classifiers.html:43
msgid "Copy"
msgstr ""
@@ -3314,7 +3333,7 @@ msgstr ""
#: warehouse/templates/includes/manage/manage-project-menu.html:9
#: warehouse/templates/manage/project/release.html:21
-#: warehouse/templates/manage/project/releases.html:161
+#: warehouse/templates/manage/project/releases.html:181
msgid "Releases"
msgstr ""
@@ -3515,8 +3534,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:84
#: warehouse/templates/manage/account.html:177
-#: warehouse/templates/manage/project/release.html:74
-#: warehouse/templates/manage/project/releases.html:53
+#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/releases.html:56
#: warehouse/templates/manage/unverified-account.html:69
#: warehouse/templates/manage/unverified-account.html:147
msgid "Options"
@@ -3908,7 +3927,7 @@ msgid "Two factor method:"
msgstr ""
#: warehouse/templates/manage/account.html:692
-#: warehouse/templates/manage/project/release.html:61
+#: warehouse/templates/manage/project/release.html:79
#: warehouse/templates/manage/unverified-account.html:330
msgid "None"
msgstr ""
@@ -4370,7 +4389,8 @@ msgstr ""
#: warehouse/templates/manage/organizations.html:128
#: warehouse/templates/manage/organizations.html:134
#: warehouse/templates/manage/organizations.html:183
-#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:69
+#: warehouse/templates/manage/project/releases.html:94
#: warehouse/templates/manage/projects.html:99
#: warehouse/templates/manage/projects.html:105
#: warehouse/templates/manage/team/projects.html:49
@@ -4762,7 +4782,8 @@ msgstr ""
#: warehouse/templates/manage/organization/projects.html:67
#: warehouse/templates/manage/organization/teams.html:44
#: warehouse/templates/manage/organizations.html:106
-#: warehouse/templates/manage/project/releases.html:83
+#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:101
#: warehouse/templates/manage/projects.html:111
#: warehouse/templates/manage/projects.html:116
#: warehouse/templates/manage/team/projects.html:61
@@ -5217,7 +5238,7 @@ msgstr ""
#: warehouse/templates/manage/organization/publishing.html:156
#: warehouse/templates/manage/project/documentation.html:21
#: warehouse/templates/manage/project/publishing.html:153
-#: warehouse/templates/manage/project/release.html:139
+#: warehouse/templates/manage/project/release.html:160
#: warehouse/templates/pages/stats.html:65
msgid "Project name"
msgstr ""
@@ -5386,51 +5407,51 @@ msgstr ""
msgid "Manage publishers"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:387
+#: warehouse/templates/manage/account/publishing.html:386
msgid "Project"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:407
+#: warehouse/templates/manage/account/publishing.html:404
msgid ""
"No publishers are currently configured. Publishers for existing projects can "
"be added in the publishing configuration for each individual project."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:417
+#: warehouse/templates/manage/account/publishing.html:414
#: warehouse/templates/manage/organization/publishing.html:414
msgid "Pending project name"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:418
+#: warehouse/templates/manage/account/publishing.html:415
#: warehouse/templates/manage/organization/publishing.html:415
#: warehouse/templates/manage/project/publishing.html:375
msgid "Publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:419
+#: warehouse/templates/manage/account/publishing.html:416
#: warehouse/templates/manage/organization/publishing.html:416
#: warehouse/templates/manage/project/publishing.html:376
msgid "Details"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:429
+#: warehouse/templates/manage/account/publishing.html:426
#: warehouse/templates/manage/organization/publishing.html:426
msgid ""
"No pending publishers are currently configured. Publishers for projects that "
"don't exist yet can be added below."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:436
+#: warehouse/templates/manage/account/publishing.html:433
#: warehouse/templates/manage/organization/publishing.html:431
msgid "Add a new pending publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:438
+#: warehouse/templates/manage/account/publishing.html:435
#: warehouse/templates/manage/organization/publishing.html:432
msgid "You can use this page to register \"pending\" trusted publishers."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:443
+#: warehouse/templates/manage/account/publishing.html:440
#: warehouse/templates/manage/organization/publishing.html:434
#, python-format
msgid ""
@@ -5442,7 +5463,7 @@ msgid ""
"href=\"%(href)s\">here."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:453
+#: warehouse/templates/manage/account/publishing.html:450
#: warehouse/templates/manage/organization/publishing.html:444
msgid ""
"Configuring a \"pending\" publisher for a project name does not"
@@ -5450,7 +5471,7 @@ msgid ""
"create it, including via their own \"pending\" publisher."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:488
+#: warehouse/templates/manage/account/publishing.html:485
#: warehouse/templates/manage/project/publishing.html:419
#, python-format
msgid ""
@@ -6406,8 +6427,8 @@ msgid "Delete expired invitation for %(user)s"
msgstr ""
#: warehouse/templates/manage/organization/roles.html:352
-#: warehouse/templates/manage/project/release.html:96
-#: warehouse/templates/manage/project/releases.html:98
+#: warehouse/templates/manage/project/release.html:115
+#: warehouse/templates/manage/project/releases.html:116
#: warehouse/templates/manage/project/settings.html:239
msgid "Delete"
msgstr ""
@@ -6739,7 +6760,7 @@ msgstr ""
#: warehouse/templates/manage/project/history.html:77
#: warehouse/templates/manage/project/history.html:108
-#: warehouse/templates/manage/project/release.html:103
+#: warehouse/templates/manage/project/release.html:122
msgid "Filename:"
msgstr ""
@@ -6924,12 +6945,12 @@ msgid "Back to projects"
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:51
-#: warehouse/templates/packaging/detail.html:329
+#: warehouse/templates/packaging/detail.html:335
msgid "This project has been quarantined."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:53
-#: warehouse/templates/packaging/detail.html:331
+#: warehouse/templates/packaging/detail.html:337
msgid ""
"PyPI Admins need to review this project before it can be restored. While in "
"quarantine, the project is not installable by clients, and cannot be being "
@@ -6937,14 +6958,16 @@ msgid ""
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:60
-#: warehouse/templates/packaging/detail.html:338
+#: warehouse/templates/manage/project/release.html:46
+#: warehouse/templates/packaging/detail.html:344
+#: warehouse/templates/packaging/detail.html:361
#, python-format
msgid ""
"Read more in the project in quarantine help article."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:67
-#: warehouse/templates/packaging/detail.html:345
+#: warehouse/templates/packaging/detail.html:368
msgid "This project has been archived."
msgstr ""
@@ -7020,7 +7043,7 @@ msgid "Version %(version)s"
msgstr ""
#: warehouse/templates/manage/project/release.html:25
-#: warehouse/templates/manage/project/releases.html:169
+#: warehouse/templates/manage/project/releases.html:189
msgid "Yanked releases"
msgstr ""
@@ -7029,57 +7052,70 @@ msgid "view release"
msgstr ""
#: warehouse/templates/manage/project/release.html:36
+#: warehouse/templates/packaging/detail.html:351
+msgid "This release has been quarantined."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:38
+#: warehouse/templates/packaging/detail.html:353
+msgid ""
+"PyPI Admins need to review this release before it can be restored. While in "
+"quarantine, the release is not installable by clients, and cannot be "
+"modified by its maintainers. Other releases of this project are unaffected."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:54
#, python-format
msgid "Files for release %(version)s of %(project_name)s"
msgstr ""
-#: warehouse/templates/manage/project/release.html:39
-#: warehouse/templates/manage/project/release.html:50
+#: warehouse/templates/manage/project/release.html:57
+#: warehouse/templates/manage/project/release.html:68
msgid "Filename, size"
msgstr ""
-#: warehouse/templates/manage/project/release.html:40
-#: warehouse/templates/manage/project/release.html:56
+#: warehouse/templates/manage/project/release.html:58
+#: warehouse/templates/manage/project/release.html:74
msgid "Type"
msgstr ""
-#: warehouse/templates/manage/project/release.html:41
-#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:59
+#: warehouse/templates/manage/project/release.html:78
msgid "Python version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:42
-#: warehouse/templates/manage/project/release.html:64
+#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:82
msgid "Upload date"
msgstr ""
-#: warehouse/templates/manage/project/release.html:73
+#: warehouse/templates/manage/project/release.html:91
msgid "View file options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:81
+#: warehouse/templates/manage/project/release.html:99
msgid "File options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:86
+#: warehouse/templates/manage/project/release.html:104
msgid "Download"
msgstr ""
-#: warehouse/templates/manage/project/release.html:90
+#: warehouse/templates/manage/project/release.html:109
msgid "Delete file from"
msgstr ""
-#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/release.html:111
msgid "Delete file"
msgstr ""
-#: warehouse/templates/manage/project/release.html:111
+#: warehouse/templates/manage/project/release.html:130
msgid ""
"I understand that my users will no longer be able to install this file for "
"this release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:118
+#: warehouse/templates/manage/project/release.html:137
#, python-format
msgid ""
"I understand that I will %(filename)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:125
-#: warehouse/templates/manage/project/release.html:257
+#: warehouse/templates/manage/project/release.html:144
+#: warehouse/templates/manage/project/release.html:284
msgid "I understand that I will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:132
-#: warehouse/templates/manage/project/release.html:263
+#: warehouse/templates/manage/project/release.html:151
+#: warehouse/templates/manage/project/release.html:290
msgid ""
"I understand that the PyPI administrators will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:150
+#: warehouse/templates/manage/project/release.html:172
msgid "Uploading new files"
msgstr ""
-#: warehouse/templates/manage/project/release.html:152
+#: warehouse/templates/manage/project/release.html:174
msgid "No files found"
msgstr ""
-#: warehouse/templates/manage/project/release.html:155
-#: warehouse/templates/manage/project/releases.html:183
+#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/releases.html:203
#: warehouse/templates/manage/project/settings.html:60
msgid "Dismiss"
msgstr ""
-#: warehouse/templates/manage/project/release.html:162
+#: warehouse/templates/manage/project/release.html:184
#, python-format
msgid ""
"Learn how to upload files on the Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/manage/project/release.html:165
+#: warehouse/templates/manage/project/release.html:187
msgid "Release settings"
msgstr ""
-#: warehouse/templates/manage/project/release.html:168
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/releases.html:111
+#: warehouse/templates/manage/project/release.html:190
+msgid ""
+"Yank and delete actions are unavailable while this release is in quarantine."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:195
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/releases.html:131
msgid "Yank release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:171
+#: warehouse/templates/manage/project/release.html:198
#, python-format
msgid ""
"Yanking will mark this release (and %(count)s file within it) to be ignored "
@@ -7140,53 +7181,53 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/release.html:204
msgid ""
"Yanking will mark this release to be ignored when installing in most common "
"scenarios."
msgstr ""
-#: warehouse/templates/manage/project/release.html:181
+#: warehouse/templates/manage/project/release.html:208
#, python-format
msgid ""
"This release will still be installable for users pinning to this exact "
"version, e.g. when using %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:211
#, python-format
msgid "For more information, see PEP 592."
msgstr ""
-#: warehouse/templates/manage/project/release.html:190
-#: warehouse/templates/manage/project/releases.html:114
+#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/releases.html:134
#, python-format
msgid ""
"You may provide a reason for yanking this release, which will be displayed "
"by pip to users who install %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:194
-#: warehouse/templates/manage/project/releases.html:118
+#: warehouse/templates/manage/project/release.html:221
+#: warehouse/templates/manage/project/releases.html:138
msgid "Reason (optional)"
msgstr ""
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/release.html:267
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/release.html:294
#: warehouse/templates/manage/project/releases.html:9
-#: warehouse/templates/manage/project/releases.html:108
-#: warehouse/templates/manage/project/releases.html:126
+#: warehouse/templates/manage/project/releases.html:128
#: warehouse/templates/manage/project/releases.html:146
+#: warehouse/templates/manage/project/releases.html:166
msgid "Version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:207
-#: warehouse/templates/manage/project/release.html:267
-#: warehouse/templates/manage/project/releases.html:128
+#: warehouse/templates/manage/project/release.html:234
+#: warehouse/templates/manage/project/release.html:294
+#: warehouse/templates/manage/project/releases.html:148
msgid "Delete release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:211
+#: warehouse/templates/manage/project/release.html:238
#, python-format
msgid ""
"Deleting will irreversibly delete this release along with %(count)s file."
@@ -7195,27 +7236,27 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/release.html:244
msgid "Deleting will irreversibly delete this release."
msgstr ""
-#: warehouse/templates/manage/project/release.html:220
-#: warehouse/templates/manage/project/releases.html:131
+#: warehouse/templates/manage/project/release.html:247
+#: warehouse/templates/manage/project/releases.html:151
msgid ""
"You will not be able to re-upload a new distribution of the same type with "
"the same version number."
msgstr ""
-#: warehouse/templates/manage/project/release.html:223
-#: warehouse/templates/manage/project/releases.html:134
+#: warehouse/templates/manage/project/release.html:250
+#: warehouse/templates/manage/project/releases.html:154
msgid ""
"Deletion will break any downstream projects relying on a pinned version of "
"this package. It is intended as a last resort to address legal issues or "
"remove harmful releases."
msgstr ""
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
#, python-format
msgid ""
"Consider post release instead."
msgstr ""
-#: warehouse/templates/manage/project/release.html:239
+#: warehouse/templates/manage/project/release.html:266
#, python-format
msgid ""
"I understand that I am permanently deleting all files for the "
"%(release_version)s release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:245
+#: warehouse/templates/manage/project/release.html:272
msgid ""
"I understand that my users will no longer be able to install this release of "
"this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:251
+#: warehouse/templates/manage/project/release.html:278
#, python-format
msgid ""
"I understand that I will installing packages."
msgstr ""
-#: warehouse/templates/packaging/detail.html:449
+#: warehouse/templates/packaging/detail.html:472
msgid "Source Distribution"
msgid_plural "Source Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:463
+#: warehouse/templates/packaging/detail.html:486
msgid "No source distribution files available for this release."
msgstr ""
-#: warehouse/templates/packaging/detail.html:464
+#: warehouse/templates/packaging/detail.html:487
#, python-format
msgid ""
"See tutorial on generating distribution archives."
msgstr ""
-#: warehouse/templates/packaging/detail.html:470
+#: warehouse/templates/packaging/detail.html:493
msgid "Built Distribution"
msgid_plural "Built Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:477
+#: warehouse/templates/packaging/detail.html:500
msgid "Filter files by name, interpreter, ABI, and platform."
msgstr ""
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/packaging/detail.html:503
#, python-format
msgid ""
"If you're not sure about the file name format, learn more about wheel file names."
msgstr ""
-#: warehouse/templates/packaging/detail.html:484
+#: warehouse/templates/packaging/detail.html:507
msgid ""
"The dropdown lists show the available interpreters, ABIs, and platforms."
msgstr ""
-#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:510
msgid "Enable javascript to be able to filter the list of wheel files."
msgstr ""
-#: warehouse/templates/packaging/detail.html:491
+#: warehouse/templates/packaging/detail.html:514
msgid "Copy a direct link to the current filters"
msgstr ""
-#: warehouse/templates/packaging/detail.html:509
-#: warehouse/templates/packaging/detail.html:514
+#: warehouse/templates/packaging/detail.html:532
+#: warehouse/templates/packaging/detail.html:537
msgid "File name"
msgstr ""
@@ -8369,7 +8418,7 @@ msgid ""
msgstr ""
#: warehouse/templates/pages/help.html:181
-msgid "My project says it's in quarantine. What does that mean?"
+msgid "My project or release says it's in quarantine. What does that mean?"
msgstr ""
#: warehouse/templates/pages/help.html:185
@@ -8435,7 +8484,7 @@ msgid "Troubleshooting"
msgstr ""
#: warehouse/templates/pages/help.html:393
-#: warehouse/templates/pages/help.html:1306
+#: warehouse/templates/pages/help.html:1307
msgid "About"
msgstr ""
@@ -9239,7 +9288,7 @@ msgstr ""
#: warehouse/templates/pages/help.html:1079
msgid ""
"Deletion of a project, release or file on PyPI is permanent and "
-"irreversable, without exception. Deletion of a project makes it "
+"irreversible, without exception. Deletion of a project makes it "
"uninstallable, and releases the project name for use by any other PyPI user. "
"Deleted files cannot be re-uploaded. "
"Deleted projects, releases or files cannot be restored by PyPI "
@@ -9507,29 +9556,30 @@ msgstr ""
#: warehouse/templates/pages/help.html:1282
#, python-format
msgid ""
-"Projects may get placed in quarantine for any number of reasons, such as "
-"suspicion of malicious activity, spam, or other violations of the Terms of Service or "
-"Acceptable Use "
-"Policy."
+"Projects or individual releases may get placed in quarantine for any number "
+"of reasons, such as suspicion of malicious activity, spam, or other "
+"violations of the Terms of Service or Acceptable Use Policy."
msgstr ""
#: warehouse/templates/pages/help.html:1291
msgid ""
-"While in quarantine, the project is not installable by clients, and cannot "
-"be being modified by its maintainers. PyPI Administrators will need to "
-"review this project before it can be restored."
+"While in quarantine, the project or release is not installable by clients, "
+"and cannot be modified by its maintainers. PyPI Administrators will need to "
+"review it before it can be restored. When a single release is quarantined, "
+"other releases of the same project are unaffected."
msgstr ""
-#: warehouse/templates/pages/help.html:1298
+#: warehouse/templates/pages/help.html:1299
#, python-format
msgid ""
-"If you believe your project has mistakenly been flagged for quarantine, "
-"contact PyPI via security@pypi.org with any "
-"details."
+"If you believe your project or release has mistakenly been flagged for "
+"quarantine, contact PyPI via security@pypi.org "
+"with any details."
msgstr ""
-#: warehouse/templates/pages/help.html:1309
+#: warehouse/templates/pages/help.html:1310
#, python-format
msgid ""
"PyPI is powered by the Warehouse project; ."
msgstr ""
-#: warehouse/templates/pages/help.html:1344
+#: warehouse/templates/pages/help.html:1345
msgid ""
"As of April 16, 2018, PyPI.org is at \"production\" status, meaning that it "
"has moved out of beta and replaced the old site (pypi.python.org). It is now "
"robust, tested, and ready for expected browser and API traffic."
msgstr ""
-#: warehouse/templates/pages/help.html:1347
+#: warehouse/templates/pages/help.html:1348
#, python-format
msgid ""
"PyPI is heavily cached and distributed via private index."
msgstr ""
-#: warehouse/templates/pages/help.html:1366
+#: warehouse/templates/pages/help.html:1367
#, python-format
msgid ""
"We have a huge amount of work to do to continue to maintain and improve PyPI "
@@ -9601,22 +9651,22 @@ msgid ""
"rel=\"noopener\">the Warehouse project)."
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
msgid "Financial:"
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
#, python-format
msgid ""
"We would deeply appreciate your donations to fund "
"development and maintenance."
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid "Development:"
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid ""
"Warehouse is open source, and we would love to see some new faces working on "
"the project. You do not need to be an experienced open-"
@@ -9624,7 +9674,7 @@ msgid ""
"make your first open source pull request!"
msgstr ""
-#: warehouse/templates/pages/help.html:1378
+#: warehouse/templates/pages/help.html:1379
#, python-format
msgid ""
"If you have skills in Python, Full-Text Search, HTML, SCSS, JavaScript, or "
@@ -9637,7 +9687,7 @@ msgid ""
"recommend you start here."
msgstr ""
-#: warehouse/templates/pages/help.html:1395
+#: warehouse/templates/pages/help.html:1396
#, python-format
msgid ""
"Issues are grouped into Python packaging forum on Discourse."
msgstr ""
-#: warehouse/templates/pages/help.html:1414
+#: warehouse/templates/pages/help.html:1415
#, python-format
msgid ""
"Changes to PyPI are generally announced on both the RSS feed."
msgstr ""
-#: warehouse/templates/pages/help.html:1432
+#: warehouse/templates/pages/help.html:1433
#, python-format
msgid ""
"All traffic is routed through our global CDN, which lists their public IP "
"addresses here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1435
+#: warehouse/templates/pages/help.html:1436
#, python-format
msgid ""
"More information about this list can be found here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1439
+#: warehouse/templates/pages/help.html:1440
msgid ""
"When Warehouse's maintainers are deploying new features, at first we mark "
"them with a small \"beta feature\" symbol to tell you: this should probably "
"work fine, but it's new and less tested than other site functionality."
msgstr ""
-#: warehouse/templates/pages/help.html:1441
+#: warehouse/templates/pages/help.html:1442
msgid "Currently, no features are in beta."
msgstr ""
-#: warehouse/templates/pages/help.html:1444
+#: warehouse/templates/pages/help.html:1445
#, python-format
msgid ""
"\"PyPI\" should be pronounced like \"pie pea eye\", specifically with the "
@@ -9706,43 +9756,43 @@ msgid ""
"language."
msgstr ""
-#: warehouse/templates/pages/help.html:1454
+#: warehouse/templates/pages/help.html:1455
msgid "Resources"
msgstr ""
-#: warehouse/templates/pages/help.html:1455
+#: warehouse/templates/pages/help.html:1456
msgid "Looking for something else? Perhaps these links will help:"
msgstr ""
-#: warehouse/templates/pages/help.html:1461
+#: warehouse/templates/pages/help.html:1462
msgid "PyPI User Documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1467
+#: warehouse/templates/pages/help.html:1468
msgid "Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/pages/help.html:1473
+#: warehouse/templates/pages/help.html:1474
msgid "Python documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1479
+#: warehouse/templates/pages/help.html:1480
msgid "(main Python website)"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "Python community page"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "(lists IRC channels, mailing lists, etc.)"
msgstr ""
-#: warehouse/templates/pages/help.html:1488
+#: warehouse/templates/pages/help.html:1489
msgid "Contact"
msgstr ""
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1491
#, python-format
msgid ""
"The Terms of Service."
msgstr ""
-#: warehouse/accounts/views.py:1798 warehouse/accounts/views.py:2052
+#: warehouse/accounts/views.py:1793 warehouse/accounts/views.py:2056
#: warehouse/manage/views/oidc_publishers.py:126
-#: warehouse/manage/views/organizations.py:1822
+#: warehouse/manage/views/organizations.py:1820
msgid ""
"Trusted publishing is temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1819
-#: warehouse/manage/views/organizations.py:1845
+#: warehouse/accounts/views.py:1814
+#: warehouse/manage/views/organizations.py:1843
msgid "disabled. See https://pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/accounts/views.py:1835
+#: warehouse/accounts/views.py:1830
msgid ""
"You must have a verified email in order to register a pending trusted "
"publisher. See https://pypi.org/help#openid-connect for details."
msgstr ""
-#: warehouse/accounts/views.py:1848
+#: warehouse/accounts/views.py:1843
msgid "You can't register more than 3 pending trusted publishers at once."
msgstr ""
-#: warehouse/accounts/views.py:1863
+#: warehouse/accounts/views.py:1858
#: warehouse/manage/views/oidc_publishers.py:308
#: warehouse/manage/views/oidc_publishers.py:423
#: warehouse/manage/views/oidc_publishers.py:539
@@ -388,32 +387,39 @@ msgid ""
"again later."
msgstr ""
-#: warehouse/accounts/views.py:1873
+#: warehouse/accounts/views.py:1868
#: warehouse/manage/views/oidc_publishers.py:321
#: warehouse/manage/views/oidc_publishers.py:436
#: warehouse/manage/views/oidc_publishers.py:552
#: warehouse/manage/views/oidc_publishers.py:664
-#: warehouse/manage/views/organizations.py:1861
+#: warehouse/manage/views/organizations.py:1859
msgid "The trusted publisher could not be registered"
msgstr ""
-#: warehouse/accounts/views.py:1888
+#: warehouse/accounts/views.py:1883
msgid ""
"This trusted publisher has already been registered. Please contact PyPI's "
"admins if this wasn't intentional."
msgstr ""
-#: warehouse/accounts/views.py:1922
-#: warehouse/manage/views/organizations.py:1910
+#: warehouse/accounts/views.py:1903
+msgid ""
+"A pending trusted publisher matching this configuration has already been "
+"registered for a different project name. Please contact PyPI's admins if "
+"this wasn't intentional."
+msgstr ""
+
+#: warehouse/accounts/views.py:1926
+#: warehouse/manage/views/organizations.py:1908
msgid "Registered a new pending publisher to create "
msgstr ""
-#: warehouse/accounts/views.py:2065 warehouse/accounts/views.py:2078
-#: warehouse/accounts/views.py:2085
+#: warehouse/accounts/views.py:2069 warehouse/accounts/views.py:2082
+#: warehouse/accounts/views.py:2089
msgid "Invalid publisher ID"
msgstr ""
-#: warehouse/accounts/views.py:2092
+#: warehouse/accounts/views.py:2096
msgid "Removed trusted publisher for project "
msgstr ""
@@ -421,31 +427,31 @@ msgstr ""
msgid "Banner Preview"
msgstr ""
-#: warehouse/manage/forms.py:292
+#: warehouse/manage/forms.py:289
msgid "Specify an association ID"
msgstr ""
-#: warehouse/manage/forms.py:293
+#: warehouse/manage/forms.py:290
msgid "Association must be specified by ID"
msgstr ""
-#: warehouse/manage/forms.py:308
+#: warehouse/manage/forms.py:305
msgid "No account association with given ID"
msgstr ""
-#: warehouse/manage/forms.py:313
+#: warehouse/manage/forms.py:310
msgid "This association does not belong to you"
msgstr ""
-#: warehouse/manage/forms.py:417
+#: warehouse/manage/forms.py:414
msgid "Provide your response to the request."
msgstr ""
-#: warehouse/manage/forms.py:459
+#: warehouse/manage/forms.py:456
msgid "Choose an organization account name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:467
+#: warehouse/manage/forms.py:464
msgid ""
"The organization account name is invalid. Organization account names must be "
"composed of letters, numbers, dots, hyphens and underscores. And must also "
@@ -453,245 +459,251 @@ msgid ""
"account name."
msgstr ""
-#: warehouse/manage/forms.py:490
+#: warehouse/manage/forms.py:487
msgid ""
"This organization account name has already been used. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:505
+#: warehouse/manage/forms.py:502
msgid ""
"You have already submitted an application for that name. Choose a different "
"organization account name."
msgstr ""
-#: warehouse/manage/forms.py:540
+#: warehouse/manage/forms.py:536
msgid "Select project"
msgstr ""
-#: warehouse/manage/forms.py:545 warehouse/oidc/forms/_core.py:36
+#: warehouse/manage/forms.py:541 warehouse/oidc/forms/_core.py:36
#: warehouse/oidc/forms/gitlab.py:54
msgid "Specify project name"
msgstr ""
-#: warehouse/manage/forms.py:549
+#: warehouse/manage/forms.py:545
msgid ""
"Start and end with a letter or numeral containing only ASCII numeric and "
"'.', '_' and '-'."
msgstr ""
-#: warehouse/manage/forms.py:556
+#: warehouse/manage/forms.py:552
msgid ""
"This project name has already been used. Choose a different project name."
msgstr ""
-#: warehouse/manage/forms.py:589
+#: warehouse/manage/forms.py:585
msgid "Cannot transfer to Company Organization with inactive billing"
msgstr ""
-#: warehouse/manage/forms.py:642
+#: warehouse/manage/forms.py:638
msgid ""
"The organization name is too long. Choose a organization name with 100 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:654
+#: warehouse/manage/forms.py:650
msgid ""
"The organization URL is too long. Choose a organization URL with 400 "
"characters or less."
msgstr ""
-#: warehouse/manage/forms.py:660
+#: warehouse/manage/forms.py:656
msgid "The organization URL must start with http:// or https://"
msgstr ""
-#: warehouse/manage/forms.py:672
+#: warehouse/manage/forms.py:668
msgid ""
"The organization description is too long. Choose a organization description "
"with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:715
+#: warehouse/manage/forms.py:711
msgid ""
"We don't need to know quite that much :), limit your usage description to "
"1024 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:737
-msgid "You have already submitted the maximum number of "
+#: warehouse/manage/forms.py:733
+#, python-format
+msgid ""
+"You have already submitted the maximum number of Organization requests (%s)."
msgstr ""
-#: warehouse/manage/forms.py:766
+#: warehouse/manage/forms.py:763
msgid "Choose a team name with 50 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:773
+#: warehouse/manage/forms.py:770
msgid ""
"The team name is invalid. Team names cannot start or end with a space, "
"period, underscore, hyphen, or slash. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:801
+#: warehouse/manage/forms.py:797
msgid "This team name has already been used. Choose a different team name."
msgstr ""
-#: warehouse/manage/forms.py:819
+#: warehouse/manage/forms.py:813
msgid "Specify your alternate repository name"
msgstr ""
-#: warehouse/manage/forms.py:833
+#: warehouse/manage/forms.py:826
msgid "Specify your alternate repository URL"
msgstr ""
-#: warehouse/manage/forms.py:838
+#: warehouse/manage/forms.py:831
msgid "The URL is too long. Choose a URL with 400 characters or less."
msgstr ""
-#: warehouse/manage/forms.py:852
+#: warehouse/manage/forms.py:845
msgid ""
"The description is too long. Choose a description with 400 characters or "
"less."
msgstr ""
-#: warehouse/manage/views/__init__.py:408
+#: warehouse/manage/views/__init__.py:404
msgid "Account details updated"
msgstr ""
-#: warehouse/manage/views/__init__.py:439
+#: warehouse/manage/views/__init__.py:435
#, python-brace-format
msgid "Email ${email_address} added - check your email for a verification link"
msgstr ""
-#: warehouse/manage/views/__init__.py:895
+#: warehouse/manage/views/__init__.py:891
msgid "Recovery codes already generated"
msgstr ""
-#: warehouse/manage/views/__init__.py:897
+#: warehouse/manage/views/__init__.py:893
msgid "Generating new recovery codes will invalidate your existing codes."
msgstr ""
-#: warehouse/manage/views/__init__.py:1005
+#: warehouse/manage/views/__init__.py:1001
msgid "Verify your email to create an API token."
msgstr ""
-#: warehouse/manage/views/__init__.py:1107
+#: warehouse/manage/views/__init__.py:1103
msgid "API Token does not exist."
msgstr ""
-#: warehouse/manage/views/__init__.py:1139
+#: warehouse/manage/views/__init__.py:1135
msgid "Invalid credentials. Try again"
msgstr ""
-#: warehouse/manage/views/__init__.py:1258
+#: warehouse/manage/views/__init__.py:1256
msgid "Invalid alternate repository location details"
msgstr ""
-#: warehouse/manage/views/__init__.py:1296
+#: warehouse/manage/views/__init__.py:1294
#, python-brace-format
msgid "Added alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1329
-#: warehouse/manage/views/__init__.py:1590
-#: warehouse/manage/views/__init__.py:1675
-#: warehouse/manage/views/__init__.py:1776
-#: warehouse/manage/views/__init__.py:1876
+#: warehouse/manage/views/__init__.py:1327
+#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1690
+#: warehouse/manage/views/__init__.py:1793
+#: warehouse/manage/views/__init__.py:1896
msgid "Confirm the request"
msgstr ""
-#: warehouse/manage/views/__init__.py:1341
+#: warehouse/manage/views/__init__.py:1339
msgid "Invalid alternate repository id"
msgstr ""
-#: warehouse/manage/views/__init__.py:1352
+#: warehouse/manage/views/__init__.py:1350
msgid "Invalid alternate repository for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:1361
+#: warehouse/manage/views/__init__.py:1359
#, python-brace-format
msgid ""
"Could not delete alternate repository - ${confirm} is not the same as $"
"{alt_repo_name}"
msgstr ""
-#: warehouse/manage/views/__init__.py:1391
+#: warehouse/manage/views/__init__.py:1389
#, python-brace-format
msgid "Deleted alternate repository '${name}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:1459
-#: warehouse/manage/views/__init__.py:1760
-#: warehouse/manage/views/__init__.py:1868
+#: warehouse/manage/views/__init__.py:1457
+#: warehouse/manage/views/__init__.py:1777
+#: warehouse/manage/views/__init__.py:1888
msgid ""
"Project deletion temporarily disabled. See https://pypi.org/help#admin-"
"intervention for details."
msgstr ""
-#: warehouse/manage/views/__init__.py:1603
+#: warehouse/manage/views/__init__.py:1579
+msgid "This release is in quarantine and cannot be modified."
+msgstr ""
+
+#: warehouse/manage/views/__init__.py:1616
msgid "Could not yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1688
+#: warehouse/manage/views/__init__.py:1703
msgid "Could not un-yank release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1789
+#: warehouse/manage/views/__init__.py:1806
msgid "Could not delete release - "
msgstr ""
-#: warehouse/manage/views/__init__.py:1888
+#: warehouse/manage/views/__init__.py:1908
msgid "Could not find file"
msgstr ""
-#: warehouse/manage/views/__init__.py:1893
+#: warehouse/manage/views/__init__.py:1913
msgid "Could not delete file - "
msgstr ""
-#: warehouse/manage/views/__init__.py:2043
+#: warehouse/manage/views/__init__.py:2063
#, python-brace-format
msgid "Team '${team_name}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2150
+#: warehouse/manage/views/__init__.py:2170
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2217
+#: warehouse/manage/views/__init__.py:2237
#, python-brace-format
msgid "${username} is now ${role} of the '${project_name}' project."
msgstr ""
-#: warehouse/manage/views/__init__.py:2249
+#: warehouse/manage/views/__init__.py:2268
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for project"
msgstr ""
-#: warehouse/manage/views/__init__.py:2262
-#: warehouse/manage/views/organizations.py:981
+#: warehouse/manage/views/__init__.py:2281
+#: warehouse/manage/views/organizations.py:980
#, python-brace-format
msgid ""
"User '${username}' already has an active invite. Please try again later."
msgstr ""
-#: warehouse/manage/views/__init__.py:2327
-#: warehouse/manage/views/organizations.py:1056
+#: warehouse/manage/views/__init__.py:2346
+#: warehouse/manage/views/organizations.py:1055
#, python-brace-format
msgid "Invitation sent to '${username}'"
msgstr ""
-#: warehouse/manage/views/__init__.py:2359
+#: warehouse/manage/views/__init__.py:2378
msgid "Could not find role invitation."
msgstr ""
-#: warehouse/manage/views/__init__.py:2370
+#: warehouse/manage/views/__init__.py:2389
msgid "Invitation already expired."
msgstr ""
-#: warehouse/manage/views/__init__.py:2403
-#: warehouse/manage/views/organizations.py:1256
+#: warehouse/manage/views/__init__.py:2422
+#: warehouse/manage/views/organizations.py:1255
#, python-brace-format
msgid "Invitation revoked from '${username}'."
msgstr ""
@@ -784,37 +796,37 @@ msgid ""
"pypi.org/help#admin-intervention for details."
msgstr ""
-#: warehouse/manage/views/organizations.py:957
+#: warehouse/manage/views/organizations.py:956
#, python-brace-format
msgid "User '${username}' already has ${role_name} role for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:968
+#: warehouse/manage/views/organizations.py:967
#, python-brace-format
msgid ""
"User '${username}' does not have a verified primary email address and cannot "
"be added as a ${role_name} for organization"
msgstr ""
-#: warehouse/manage/views/organizations.py:992
+#: warehouse/manage/views/organizations.py:991
msgid "Cannot invite new member. Organization is not in good standing."
msgstr ""
-#: warehouse/manage/views/organizations.py:1151
-#: warehouse/manage/views/organizations.py:1193
+#: warehouse/manage/views/organizations.py:1150
+#: warehouse/manage/views/organizations.py:1192
msgid "Could not find organization invitation."
msgstr ""
-#: warehouse/manage/views/organizations.py:1161
+#: warehouse/manage/views/organizations.py:1160
msgid "Organization invitation could not be re-sent."
msgstr ""
-#: warehouse/manage/views/organizations.py:1209
+#: warehouse/manage/views/organizations.py:1208
#, python-brace-format
msgid "Expired invitation for '${username}' deleted."
msgstr ""
-#: warehouse/manage/views/organizations.py:1877
+#: warehouse/manage/views/organizations.py:1875
msgid ""
"This publisher has already been registered in your organization. See your "
"existing pending publishers below."
@@ -832,33 +844,33 @@ msgid ""
"{url}'>here to create a Trusted Publisher for it."
msgstr ""
-#: warehouse/oidc/forms/_core.py:77
+#: warehouse/oidc/forms/_core.py:75
msgid "This project already exists."
msgstr ""
-#: warehouse/oidc/forms/_core.py:82
+#: warehouse/oidc/forms/_core.py:79
msgid "This project name isn't allowed"
msgstr ""
-#: warehouse/oidc/forms/_core.py:86
+#: warehouse/oidc/forms/_core.py:83
msgid "This project name is too similar to an existing project"
msgstr ""
-#: warehouse/oidc/forms/_core.py:91
+#: warehouse/oidc/forms/_core.py:88
msgid ""
"This project name isn't allowed (conflict with the Python standard library "
"module name)"
msgstr ""
-#: warehouse/oidc/forms/_core.py:119 warehouse/oidc/forms/_core.py:130
+#: warehouse/oidc/forms/_core.py:115 warehouse/oidc/forms/_core.py:126
msgid "Specify a publisher ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:120 warehouse/oidc/forms/_core.py:131
+#: warehouse/oidc/forms/_core.py:116 warehouse/oidc/forms/_core.py:127
msgid "Publisher must be specified by ID"
msgstr ""
-#: warehouse/oidc/forms/_core.py:136
+#: warehouse/oidc/forms/_core.py:132
msgid "Specify an environment name"
msgstr ""
@@ -897,7 +909,7 @@ msgstr ""
msgid "ActiveState organization not found"
msgstr ""
-#: warehouse/oidc/forms/activestate.py:166
+#: warehouse/oidc/forms/activestate.py:164
msgid "ActiveState actor not found"
msgstr ""
@@ -925,43 +937,43 @@ msgstr ""
msgid "GitHub has rate-limited this action. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:95
+#: warehouse/oidc/forms/github.py:94
msgid "Unexpected error from GitHub. Try again."
msgstr ""
-#: warehouse/oidc/forms/github.py:103
+#: warehouse/oidc/forms/github.py:102
msgid "Unexpected connection error from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:112
+#: warehouse/oidc/forms/github.py:111
msgid "Unexpected timeout from GitHub. Try again in a few minutes."
msgstr ""
-#: warehouse/oidc/forms/github.py:124
+#: warehouse/oidc/forms/github.py:123
msgid "Invalid GitHub user or organization name."
msgstr ""
-#: warehouse/oidc/forms/github.py:140
+#: warehouse/oidc/forms/github.py:137
msgid "Workflow name must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/github.py:145
+#: warehouse/oidc/forms/github.py:142
msgid "Workflow filename must be a filename only, without directories"
msgstr ""
-#: warehouse/oidc/forms/github.py:156
+#: warehouse/oidc/forms/github.py:153
msgid "Environment name is too long (maximum is 255 characters)"
msgstr ""
-#: warehouse/oidc/forms/github.py:161
+#: warehouse/oidc/forms/github.py:158
msgid "Environment name may not start with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:166
+#: warehouse/oidc/forms/github.py:163
msgid "Environment name may not end with whitespace"
msgstr ""
-#: warehouse/oidc/forms/github.py:172
+#: warehouse/oidc/forms/github.py:169
msgid ""
"Environment name must not contain non-printable characters or the characters "
"\"'\", \"\"\", \"`\", \",\", \";\", \"\\\""
@@ -991,11 +1003,11 @@ msgstr ""
msgid "Choose GitLab issuer URL"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:111
+#: warehouse/oidc/forms/gitlab.py:109
msgid "Top-level pipeline file path must end with .yml or .yaml"
msgstr ""
-#: warehouse/oidc/forms/gitlab.py:115
+#: warehouse/oidc/forms/gitlab.py:113
msgid "Top-level pipeline file path cannot start or end with /"
msgstr ""
@@ -1003,7 +1015,7 @@ msgstr ""
msgid "Provide an Inspector link to specific lines of code."
msgstr ""
-#: warehouse/packaging/views.py:346
+#: warehouse/packaging/views.py:357
msgid "Your report has been recorded. Thank you for your help."
msgstr ""
@@ -1121,14 +1133,14 @@ msgstr ""
#: warehouse/templates/404.html:33 warehouse/templates/500.html:18
#: warehouse/templates/accounts/two-factor.html:35
-#: warehouse/templates/base.html:340 warehouse/templates/base.html:346
-#: warehouse/templates/base.html:352 warehouse/templates/base.html:358
-#: warehouse/templates/base.html:374 warehouse/templates/base.html:380
-#: warehouse/templates/base.html:405 warehouse/templates/base.html:411
-#: warehouse/templates/base.html:420 warehouse/templates/base.html:433
-#: warehouse/templates/base.html:442 warehouse/templates/base.html:448
-#: warehouse/templates/base.html:454 warehouse/templates/base.html:467
-#: warehouse/templates/base.html:484
+#: warehouse/templates/base.html:342 warehouse/templates/base.html:348
+#: warehouse/templates/base.html:354 warehouse/templates/base.html:360
+#: warehouse/templates/base.html:376 warehouse/templates/base.html:382
+#: warehouse/templates/base.html:407 warehouse/templates/base.html:413
+#: warehouse/templates/base.html:422 warehouse/templates/base.html:435
+#: warehouse/templates/base.html:444 warehouse/templates/base.html:450
+#: warehouse/templates/base.html:456 warehouse/templates/base.html:469
+#: warehouse/templates/base.html:486 warehouse/templates/base.html:494
#: warehouse/templates/includes/accounts/profile-callout.html:17
#: warehouse/templates/includes/file-details.html:129
#: warehouse/templates/index.html:98 warehouse/templates/index.html:105
@@ -1140,13 +1152,13 @@ msgstr ""
#: warehouse/templates/manage/account/webauthn-provision.html:51
#: warehouse/templates/manage/account/webauthn-provision.html:68
#: warehouse/templates/manage/manage_base.html:210
-#: warehouse/templates/manage/project/release.html:162
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
-#: warehouse/templates/manage/project/releases.html:190
-#: warehouse/templates/packaging/detail.html:446
-#: warehouse/templates/packaging/detail.html:464
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
+#: warehouse/templates/manage/project/releases.html:210
+#: warehouse/templates/packaging/detail.html:469
+#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:503
#: warehouse/templates/pages/classifiers.html:17
#: warehouse/templates/pages/help.html:7
#: warehouse/templates/pages/help.html:441
@@ -1192,23 +1204,23 @@ msgstr ""
#: warehouse/templates/pages/help.html:1213
#: warehouse/templates/pages/help.html:1256
#: warehouse/templates/pages/help.html:1263
-#: warehouse/templates/pages/help.html:1309
-#: warehouse/templates/pages/help.html:1314
-#: warehouse/templates/pages/help.html:1319
-#: warehouse/templates/pages/help.html:1334
-#: warehouse/templates/pages/help.html:1347
-#: warehouse/templates/pages/help.html:1366
-#: warehouse/templates/pages/help.html:1378
-#: warehouse/templates/pages/help.html:1395
-#: warehouse/templates/pages/help.html:1403
-#: warehouse/templates/pages/help.html:1414
-#: warehouse/templates/pages/help.html:1444
-#: warehouse/templates/pages/help.html:1459
-#: warehouse/templates/pages/help.html:1465
-#: warehouse/templates/pages/help.html:1471
-#: warehouse/templates/pages/help.html:1477
-#: warehouse/templates/pages/help.html:1483
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1310
+#: warehouse/templates/pages/help.html:1315
+#: warehouse/templates/pages/help.html:1320
+#: warehouse/templates/pages/help.html:1335
+#: warehouse/templates/pages/help.html:1348
+#: warehouse/templates/pages/help.html:1367
+#: warehouse/templates/pages/help.html:1379
+#: warehouse/templates/pages/help.html:1396
+#: warehouse/templates/pages/help.html:1404
+#: warehouse/templates/pages/help.html:1415
+#: warehouse/templates/pages/help.html:1445
+#: warehouse/templates/pages/help.html:1460
+#: warehouse/templates/pages/help.html:1466
+#: warehouse/templates/pages/help.html:1472
+#: warehouse/templates/pages/help.html:1478
+#: warehouse/templates/pages/help.html:1484
+#: warehouse/templates/pages/help.html:1491
#: warehouse/templates/pages/sponsors.html:23
#: warehouse/templates/pages/sponsors.html:34
#: warehouse/templates/pages/sponsors.html:42
@@ -1282,7 +1294,7 @@ msgid "Main navigation"
msgstr ""
#: warehouse/templates/base.html:34 warehouse/templates/base.html:68
-#: warehouse/templates/base.html:335
+#: warehouse/templates/base.html:337
#: warehouse/templates/includes/current-user-indicator.html:77
#: warehouse/templates/pages/help.html:209
#: warehouse/templates/pages/sitemap.html:19
@@ -1357,16 +1369,16 @@ msgstr ""
msgid "RSS: 40 newest packages"
msgstr ""
-#: warehouse/templates/base.html:206
+#: warehouse/templates/base.html:208
msgid "Skip to main content"
msgstr ""
-#: warehouse/templates/base.html:210
+#: warehouse/templates/base.html:212
msgid "Switch to mobile version"
msgstr ""
-#: warehouse/templates/base.html:217 warehouse/templates/base.html:226
-#: warehouse/templates/base.html:236
+#: warehouse/templates/base.html:219 warehouse/templates/base.html:228
+#: warehouse/templates/base.html:238
#: warehouse/templates/includes/flash-messages.html:41
#: warehouse/templates/includes/session-notifications.html:19
#: warehouse/templates/manage/account.html:1011
@@ -1375,7 +1387,7 @@ msgstr ""
#: warehouse/templates/manage/organization/settings.html:291
#: warehouse/templates/manage/organization/settings.html:297
#: warehouse/templates/manage/project/documentation.html:13
-#: warehouse/templates/manage/project/release.html:209
+#: warehouse/templates/manage/project/release.html:236
#: warehouse/templates/manage/project/settings.html:78
#: warehouse/templates/manage/project/settings.html:124
#: warehouse/templates/manage/project/settings.html:365
@@ -1383,176 +1395,183 @@ msgstr ""
msgid "Warning"
msgstr ""
-#: warehouse/templates/base.html:219
+#: warehouse/templates/base.html:221
msgid "You are using an unsupported browser, upgrade to a newer version."
msgstr ""
-#: warehouse/templates/base.html:228
+#: warehouse/templates/base.html:230
msgid ""
"You are using TestPyPI – a separate instance of the Python Package Index "
"that allows you to try distribution tools and processes without affecting "
"the real index."
msgstr ""
-#: warehouse/templates/base.html:238
+#: warehouse/templates/base.html:240
msgid ""
"Some features may not work without JavaScript. Please try enabling it if you "
"encounter problems."
msgstr ""
-#: warehouse/templates/base.html:273 warehouse/templates/base.html:305
+#: warehouse/templates/base.html:275 warehouse/templates/base.html:307
#: warehouse/templates/error-base-with-search.html:8
#: warehouse/templates/index.html:29
msgid "Search PyPI"
msgstr ""
-#: warehouse/templates/base.html:278 warehouse/templates/index.html:35
+#: warehouse/templates/base.html:280 warehouse/templates/index.html:35
msgid "Type '/' to search projects"
msgstr ""
-#: warehouse/templates/base.html:289 warehouse/templates/base.html:318
+#: warehouse/templates/base.html:291 warehouse/templates/base.html:320
#: warehouse/templates/error-base-with-search.html:19
#: warehouse/templates/index.html:44
msgid "Search"
msgstr ""
-#: warehouse/templates/base.html:310
+#: warehouse/templates/base.html:312
#: warehouse/templates/error-base-with-search.html:13
msgid "Search projects"
msgstr ""
-#: warehouse/templates/base.html:336
+#: warehouse/templates/base.html:338
msgid "Help navigation"
msgstr ""
-#: warehouse/templates/base.html:342
+#: warehouse/templates/base.html:344
msgid "Installing packages"
msgstr ""
-#: warehouse/templates/base.html:348
+#: warehouse/templates/base.html:350
msgid "Uploading packages"
msgstr ""
-#: warehouse/templates/base.html:354
+#: warehouse/templates/base.html:356
msgid "User guide"
msgstr ""
-#: warehouse/templates/base.html:360
+#: warehouse/templates/base.html:362
msgid "Project name retention"
msgstr ""
-#: warehouse/templates/base.html:363
+#: warehouse/templates/base.html:365
msgid "FAQs"
msgstr ""
-#: warehouse/templates/base.html:369 warehouse/templates/pages/sitemap.html:34
+#: warehouse/templates/base.html:371 warehouse/templates/pages/sitemap.html:34
msgid "About PyPI"
msgstr ""
-#: warehouse/templates/base.html:370
+#: warehouse/templates/base.html:372
msgid "About PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:376
+#: warehouse/templates/base.html:378
msgid "PyPI Blog"
msgstr ""
-#: warehouse/templates/base.html:382
+#: warehouse/templates/base.html:384
msgid "Infrastructure dashboard"
msgstr ""
-#: warehouse/templates/base.html:385 warehouse/templates/pages/sitemap.html:40
+#: warehouse/templates/base.html:387 warehouse/templates/pages/sitemap.html:40
#: warehouse/templates/pages/stats.html:4
msgid "Statistics"
msgstr ""
-#: warehouse/templates/base.html:388
+#: warehouse/templates/base.html:390
msgid "Logos & trademarks"
msgstr ""
-#: warehouse/templates/base.html:391
+#: warehouse/templates/base.html:393
msgid "Our sponsors"
msgstr ""
-#: warehouse/templates/base.html:397
+#: warehouse/templates/base.html:399
msgid "Contributing to PyPI"
msgstr ""
-#: warehouse/templates/base.html:398
+#: warehouse/templates/base.html:400
msgid "How to contribute navigation"
msgstr ""
-#: warehouse/templates/base.html:401
+#: warehouse/templates/base.html:403
msgid "Bugs and feedback"
msgstr ""
-#: warehouse/templates/base.html:407
+#: warehouse/templates/base.html:409
msgid "Contribute on GitHub"
msgstr ""
-#: warehouse/templates/base.html:413
+#: warehouse/templates/base.html:415
msgid "Translate PyPI"
msgstr ""
-#: warehouse/templates/base.html:416
+#: warehouse/templates/base.html:418
msgid "Sponsor PyPI"
msgstr ""
-#: warehouse/templates/base.html:422
+#: warehouse/templates/base.html:424
msgid "Development credits"
msgstr ""
-#: warehouse/templates/base.html:428 warehouse/templates/pages/sitemap.html:10
+#: warehouse/templates/base.html:430 warehouse/templates/pages/sitemap.html:10
msgid "Using PyPI"
msgstr ""
-#: warehouse/templates/base.html:429
+#: warehouse/templates/base.html:431
msgid "Using PyPI navigation"
msgstr ""
-#: warehouse/templates/base.html:435
+#: warehouse/templates/base.html:437
#: warehouse/templates/manage/organization/activate_subscription.html:21
msgid "Terms of Service"
msgstr ""
-#: warehouse/templates/base.html:438
+#: warehouse/templates/base.html:440
msgid "Report security issue"
msgstr ""
-#: warehouse/templates/base.html:444
+#: warehouse/templates/base.html:446
msgid "Code of conduct"
msgstr ""
-#: warehouse/templates/base.html:450
+#: warehouse/templates/base.html:452
msgid "Privacy Notice"
msgstr ""
-#: warehouse/templates/base.html:456
+#: warehouse/templates/base.html:458
msgid "Acceptable Use Policy"
msgstr ""
-#: warehouse/templates/base.html:466
+#: warehouse/templates/base.html:468
msgid "Status:"
msgstr ""
-#: warehouse/templates/base.html:470
+#: warehouse/templates/base.html:472
msgid "all systems operational"
msgstr ""
-#: warehouse/templates/base.html:474
+#: warehouse/templates/base.html:476
msgid ""
"Developed and maintained by the Python community, for the Python community."
msgstr ""
-#: warehouse/templates/base.html:476
+#: warehouse/templates/base.html:478
msgid "Donate today!"
msgstr ""
-#: warehouse/templates/base.html:488 warehouse/templates/pages/sitemap.html:4
+#: warehouse/templates/base.html:490 warehouse/templates/pages/sitemap.html:4
msgid "Site map"
msgstr ""
-#: warehouse/templates/base.html:495
+#: warehouse/templates/base.html:494
+#, python-format
+msgid ""
+"Deployed from %(sha)s"
+msgstr ""
+
+#: warehouse/templates/base.html:502
msgid "Switch to desktop version"
msgstr ""
@@ -3080,8 +3099,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:546
#: warehouse/templates/manage/manage_base.html:344
#: warehouse/templates/manage/manage_base.html:347
-#: warehouse/templates/manage/project/release.html:158
-#: warehouse/templates/manage/project/releases.html:186
+#: warehouse/templates/manage/project/release.html:180
+#: warehouse/templates/manage/project/releases.html:206
#: warehouse/templates/manage/project/settings.html:63
#: warehouse/templates/manage/unverified-account.html:186
#: warehouse/templates/manage/unverified-account.html:189
@@ -3172,7 +3191,7 @@ msgstr ""
#: warehouse/templates/manage/account/totp-provision.html:46
#: warehouse/templates/manage/unverified-account.html:200
#: warehouse/templates/packaging/detail.html:150
-#: warehouse/templates/packaging/detail.html:500
+#: warehouse/templates/packaging/detail.html:523
#: warehouse/templates/pages/classifiers.html:42
msgid "Copy to clipboard"
msgstr ""
@@ -3184,7 +3203,7 @@ msgstr ""
#: warehouse/templates/manage/account/recovery_codes-provision.html:54
#: warehouse/templates/manage/account/totp-provision.html:47
#: warehouse/templates/manage/unverified-account.html:201
-#: warehouse/templates/packaging/detail.html:501
+#: warehouse/templates/packaging/detail.html:524
#: warehouse/templates/pages/classifiers.html:43
msgid "Copy"
msgstr ""
@@ -3322,7 +3341,7 @@ msgstr ""
#: warehouse/templates/includes/manage/manage-project-menu.html:9
#: warehouse/templates/manage/project/release.html:21
-#: warehouse/templates/manage/project/releases.html:161
+#: warehouse/templates/manage/project/releases.html:181
msgid "Releases"
msgstr ""
@@ -3523,8 +3542,8 @@ msgstr ""
#: warehouse/templates/manage/account.html:84
#: warehouse/templates/manage/account.html:177
-#: warehouse/templates/manage/project/release.html:74
-#: warehouse/templates/manage/project/releases.html:53
+#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/releases.html:56
#: warehouse/templates/manage/unverified-account.html:69
#: warehouse/templates/manage/unverified-account.html:147
msgid "Options"
@@ -3916,7 +3935,7 @@ msgid "Two factor method:"
msgstr ""
#: warehouse/templates/manage/account.html:692
-#: warehouse/templates/manage/project/release.html:61
+#: warehouse/templates/manage/project/release.html:79
#: warehouse/templates/manage/unverified-account.html:330
msgid "None"
msgstr ""
@@ -4378,7 +4397,8 @@ msgstr ""
#: warehouse/templates/manage/organizations.html:128
#: warehouse/templates/manage/organizations.html:134
#: warehouse/templates/manage/organizations.html:183
-#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:69
+#: warehouse/templates/manage/project/releases.html:94
#: warehouse/templates/manage/projects.html:99
#: warehouse/templates/manage/projects.html:105
#: warehouse/templates/manage/team/projects.html:49
@@ -4770,7 +4790,8 @@ msgstr ""
#: warehouse/templates/manage/organization/projects.html:67
#: warehouse/templates/manage/organization/teams.html:44
#: warehouse/templates/manage/organizations.html:106
-#: warehouse/templates/manage/project/releases.html:83
+#: warehouse/templates/manage/project/releases.html:76
+#: warehouse/templates/manage/project/releases.html:101
#: warehouse/templates/manage/projects.html:111
#: warehouse/templates/manage/projects.html:116
#: warehouse/templates/manage/team/projects.html:61
@@ -5225,7 +5246,7 @@ msgstr ""
#: warehouse/templates/manage/organization/publishing.html:156
#: warehouse/templates/manage/project/documentation.html:21
#: warehouse/templates/manage/project/publishing.html:153
-#: warehouse/templates/manage/project/release.html:139
+#: warehouse/templates/manage/project/release.html:160
#: warehouse/templates/pages/stats.html:65
msgid "Project name"
msgstr ""
@@ -5394,51 +5415,51 @@ msgstr ""
msgid "Manage publishers"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:387
+#: warehouse/templates/manage/account/publishing.html:386
msgid "Project"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:407
+#: warehouse/templates/manage/account/publishing.html:404
msgid ""
"No publishers are currently configured. Publishers for existing projects can "
"be added in the publishing configuration for each individual project."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:417
+#: warehouse/templates/manage/account/publishing.html:414
#: warehouse/templates/manage/organization/publishing.html:414
msgid "Pending project name"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:418
+#: warehouse/templates/manage/account/publishing.html:415
#: warehouse/templates/manage/organization/publishing.html:415
#: warehouse/templates/manage/project/publishing.html:375
msgid "Publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:419
+#: warehouse/templates/manage/account/publishing.html:416
#: warehouse/templates/manage/organization/publishing.html:416
#: warehouse/templates/manage/project/publishing.html:376
msgid "Details"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:429
+#: warehouse/templates/manage/account/publishing.html:426
#: warehouse/templates/manage/organization/publishing.html:426
msgid ""
"No pending publishers are currently configured. Publishers for projects that "
"don't exist yet can be added below."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:436
+#: warehouse/templates/manage/account/publishing.html:433
#: warehouse/templates/manage/organization/publishing.html:431
msgid "Add a new pending publisher"
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:438
+#: warehouse/templates/manage/account/publishing.html:435
#: warehouse/templates/manage/organization/publishing.html:432
msgid "You can use this page to register \"pending\" trusted publishers."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:443
+#: warehouse/templates/manage/account/publishing.html:440
#: warehouse/templates/manage/organization/publishing.html:434
#, python-format
msgid ""
@@ -5450,7 +5471,7 @@ msgid ""
"href=\"%(href)s\">here."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:453
+#: warehouse/templates/manage/account/publishing.html:450
#: warehouse/templates/manage/organization/publishing.html:444
msgid ""
"Configuring a \"pending\" publisher for a project name does not"
@@ -5458,7 +5479,7 @@ msgid ""
"create it, including via their own \"pending\" publisher."
msgstr ""
-#: warehouse/templates/manage/account/publishing.html:488
+#: warehouse/templates/manage/account/publishing.html:485
#: warehouse/templates/manage/project/publishing.html:419
#, python-format
msgid ""
@@ -6414,8 +6435,8 @@ msgid "Delete expired invitation for %(user)s"
msgstr ""
#: warehouse/templates/manage/organization/roles.html:352
-#: warehouse/templates/manage/project/release.html:96
-#: warehouse/templates/manage/project/releases.html:98
+#: warehouse/templates/manage/project/release.html:115
+#: warehouse/templates/manage/project/releases.html:116
#: warehouse/templates/manage/project/settings.html:239
msgid "Delete"
msgstr ""
@@ -6747,7 +6768,7 @@ msgstr ""
#: warehouse/templates/manage/project/history.html:77
#: warehouse/templates/manage/project/history.html:108
-#: warehouse/templates/manage/project/release.html:103
+#: warehouse/templates/manage/project/release.html:122
msgid "Filename:"
msgstr ""
@@ -6932,12 +6953,12 @@ msgid "Back to projects"
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:51
-#: warehouse/templates/packaging/detail.html:329
+#: warehouse/templates/packaging/detail.html:335
msgid "This project has been quarantined."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:53
-#: warehouse/templates/packaging/detail.html:331
+#: warehouse/templates/packaging/detail.html:337
msgid ""
"PyPI Admins need to review this project before it can be restored. While in "
"quarantine, the project is not installable by clients, and cannot be being "
@@ -6945,14 +6966,16 @@ msgid ""
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:60
-#: warehouse/templates/packaging/detail.html:338
+#: warehouse/templates/manage/project/release.html:46
+#: warehouse/templates/packaging/detail.html:344
+#: warehouse/templates/packaging/detail.html:361
#, python-format
msgid ""
"Read more in the project in quarantine help article."
msgstr ""
#: warehouse/templates/manage/project/manage_project_base.html:67
-#: warehouse/templates/packaging/detail.html:345
+#: warehouse/templates/packaging/detail.html:368
msgid "This project has been archived."
msgstr ""
@@ -7028,7 +7051,7 @@ msgid "Version %(version)s"
msgstr ""
#: warehouse/templates/manage/project/release.html:25
-#: warehouse/templates/manage/project/releases.html:169
+#: warehouse/templates/manage/project/releases.html:189
msgid "Yanked releases"
msgstr ""
@@ -7037,57 +7060,70 @@ msgid "view release"
msgstr ""
#: warehouse/templates/manage/project/release.html:36
+#: warehouse/templates/packaging/detail.html:351
+msgid "This release has been quarantined."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:38
+#: warehouse/templates/packaging/detail.html:353
+msgid ""
+"PyPI Admins need to review this release before it can be restored. While in "
+"quarantine, the release is not installable by clients, and cannot be "
+"modified by its maintainers. Other releases of this project are unaffected."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:54
#, python-format
msgid "Files for release %(version)s of %(project_name)s"
msgstr ""
-#: warehouse/templates/manage/project/release.html:39
-#: warehouse/templates/manage/project/release.html:50
+#: warehouse/templates/manage/project/release.html:57
+#: warehouse/templates/manage/project/release.html:68
msgid "Filename, size"
msgstr ""
-#: warehouse/templates/manage/project/release.html:40
-#: warehouse/templates/manage/project/release.html:56
+#: warehouse/templates/manage/project/release.html:58
+#: warehouse/templates/manage/project/release.html:74
msgid "Type"
msgstr ""
-#: warehouse/templates/manage/project/release.html:41
-#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:59
+#: warehouse/templates/manage/project/release.html:78
msgid "Python version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:42
-#: warehouse/templates/manage/project/release.html:64
+#: warehouse/templates/manage/project/release.html:60
+#: warehouse/templates/manage/project/release.html:82
msgid "Upload date"
msgstr ""
-#: warehouse/templates/manage/project/release.html:73
+#: warehouse/templates/manage/project/release.html:91
msgid "View file options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:81
+#: warehouse/templates/manage/project/release.html:99
msgid "File options"
msgstr ""
-#: warehouse/templates/manage/project/release.html:86
+#: warehouse/templates/manage/project/release.html:104
msgid "Download"
msgstr ""
-#: warehouse/templates/manage/project/release.html:90
+#: warehouse/templates/manage/project/release.html:109
msgid "Delete file from"
msgstr ""
-#: warehouse/templates/manage/project/release.html:92
+#: warehouse/templates/manage/project/release.html:111
msgid "Delete file"
msgstr ""
-#: warehouse/templates/manage/project/release.html:111
+#: warehouse/templates/manage/project/release.html:130
msgid ""
"I understand that my users will no longer be able to install this file for "
"this release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:118
+#: warehouse/templates/manage/project/release.html:137
#, python-format
msgid ""
"I understand that I will %(filename)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:125
-#: warehouse/templates/manage/project/release.html:257
+#: warehouse/templates/manage/project/release.html:144
+#: warehouse/templates/manage/project/release.html:284
msgid "I understand that I will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:132
-#: warehouse/templates/manage/project/release.html:263
+#: warehouse/templates/manage/project/release.html:151
+#: warehouse/templates/manage/project/release.html:290
msgid ""
"I understand that the PyPI administrators will not be able to undo this."
msgstr ""
-#: warehouse/templates/manage/project/release.html:150
+#: warehouse/templates/manage/project/release.html:172
msgid "Uploading new files"
msgstr ""
-#: warehouse/templates/manage/project/release.html:152
+#: warehouse/templates/manage/project/release.html:174
msgid "No files found"
msgstr ""
-#: warehouse/templates/manage/project/release.html:155
-#: warehouse/templates/manage/project/releases.html:183
+#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/releases.html:203
#: warehouse/templates/manage/project/settings.html:60
msgid "Dismiss"
msgstr ""
-#: warehouse/templates/manage/project/release.html:162
+#: warehouse/templates/manage/project/release.html:184
#, python-format
msgid ""
"Learn how to upload files on the Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/manage/project/release.html:165
+#: warehouse/templates/manage/project/release.html:187
msgid "Release settings"
msgstr ""
-#: warehouse/templates/manage/project/release.html:168
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/releases.html:111
+#: warehouse/templates/manage/project/release.html:190
+msgid ""
+"Yank and delete actions are unavailable while this release is in quarantine."
+msgstr ""
+
+#: warehouse/templates/manage/project/release.html:195
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/releases.html:131
msgid "Yank release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:171
+#: warehouse/templates/manage/project/release.html:198
#, python-format
msgid ""
"Yanking will mark this release (and %(count)s file within it) to be ignored "
@@ -7148,53 +7189,53 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:177
+#: warehouse/templates/manage/project/release.html:204
msgid ""
"Yanking will mark this release to be ignored when installing in most common "
"scenarios."
msgstr ""
-#: warehouse/templates/manage/project/release.html:181
+#: warehouse/templates/manage/project/release.html:208
#, python-format
msgid ""
"This release will still be installable for users pinning to this exact "
"version, e.g. when using %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:184
+#: warehouse/templates/manage/project/release.html:211
#, python-format
msgid "For more information, see PEP 592."
msgstr ""
-#: warehouse/templates/manage/project/release.html:190
-#: warehouse/templates/manage/project/releases.html:114
+#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/releases.html:134
#, python-format
msgid ""
"You may provide a reason for yanking this release, which will be displayed "
"by pip to users who install %(project_name)s==%(version)s."
msgstr ""
-#: warehouse/templates/manage/project/release.html:194
-#: warehouse/templates/manage/project/releases.html:118
+#: warehouse/templates/manage/project/release.html:221
+#: warehouse/templates/manage/project/releases.html:138
msgid "Reason (optional)"
msgstr ""
-#: warehouse/templates/manage/project/release.html:202
-#: warehouse/templates/manage/project/release.html:267
+#: warehouse/templates/manage/project/release.html:229
+#: warehouse/templates/manage/project/release.html:294
#: warehouse/templates/manage/project/releases.html:9
-#: warehouse/templates/manage/project/releases.html:108
-#: warehouse/templates/manage/project/releases.html:126
+#: warehouse/templates/manage/project/releases.html:128
#: warehouse/templates/manage/project/releases.html:146
+#: warehouse/templates/manage/project/releases.html:166
msgid "Version"
msgstr ""
-#: warehouse/templates/manage/project/release.html:207
-#: warehouse/templates/manage/project/release.html:267
-#: warehouse/templates/manage/project/releases.html:128
+#: warehouse/templates/manage/project/release.html:234
+#: warehouse/templates/manage/project/release.html:294
+#: warehouse/templates/manage/project/releases.html:148
msgid "Delete release"
msgstr ""
-#: warehouse/templates/manage/project/release.html:211
+#: warehouse/templates/manage/project/release.html:238
#, python-format
msgid ""
"Deleting will irreversibly delete this release along with %(count)s file."
@@ -7203,27 +7244,27 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/manage/project/release.html:217
+#: warehouse/templates/manage/project/release.html:244
msgid "Deleting will irreversibly delete this release."
msgstr ""
-#: warehouse/templates/manage/project/release.html:220
-#: warehouse/templates/manage/project/releases.html:131
+#: warehouse/templates/manage/project/release.html:247
+#: warehouse/templates/manage/project/releases.html:151
msgid ""
"You will not be able to re-upload a new distribution of the same type with "
"the same version number."
msgstr ""
-#: warehouse/templates/manage/project/release.html:223
-#: warehouse/templates/manage/project/releases.html:134
+#: warehouse/templates/manage/project/release.html:250
+#: warehouse/templates/manage/project/releases.html:154
msgid ""
"Deletion will break any downstream projects relying on a pinned version of "
"this package. It is intended as a last resort to address legal issues or "
"remove harmful releases."
msgstr ""
-#: warehouse/templates/manage/project/release.html:226
-#: warehouse/templates/manage/project/releases.html:137
+#: warehouse/templates/manage/project/release.html:253
+#: warehouse/templates/manage/project/releases.html:157
#, python-format
msgid ""
"Consider post release instead."
msgstr ""
-#: warehouse/templates/manage/project/release.html:239
+#: warehouse/templates/manage/project/release.html:266
#, python-format
msgid ""
"I understand that I am permanently deleting all files for the "
"%(release_version)s release of this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:245
+#: warehouse/templates/manage/project/release.html:272
msgid ""
"I understand that my users will no longer be able to install this release of "
"this project."
msgstr ""
-#: warehouse/templates/manage/project/release.html:251
+#: warehouse/templates/manage/project/release.html:278
#, python-format
msgid ""
"I understand that I will installing packages."
msgstr ""
-#: warehouse/templates/packaging/detail.html:449
+#: warehouse/templates/packaging/detail.html:472
msgid "Source Distribution"
msgid_plural "Source Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:463
+#: warehouse/templates/packaging/detail.html:486
msgid "No source distribution files available for this release."
msgstr ""
-#: warehouse/templates/packaging/detail.html:464
+#: warehouse/templates/packaging/detail.html:487
#, python-format
msgid ""
"See tutorial on generating distribution archives."
msgstr ""
-#: warehouse/templates/packaging/detail.html:470
+#: warehouse/templates/packaging/detail.html:493
msgid "Built Distribution"
msgid_plural "Built Distributions"
msgstr[0] ""
msgstr[1] ""
-#: warehouse/templates/packaging/detail.html:477
+#: warehouse/templates/packaging/detail.html:500
msgid "Filter files by name, interpreter, ABI, and platform."
msgstr ""
-#: warehouse/templates/packaging/detail.html:480
+#: warehouse/templates/packaging/detail.html:503
#, python-format
msgid ""
"If you're not sure about the file name format, learn more about wheel file names."
msgstr ""
-#: warehouse/templates/packaging/detail.html:484
+#: warehouse/templates/packaging/detail.html:507
msgid ""
"The dropdown lists show the available interpreters, ABIs, and platforms."
msgstr ""
-#: warehouse/templates/packaging/detail.html:487
+#: warehouse/templates/packaging/detail.html:510
msgid "Enable javascript to be able to filter the list of wheel files."
msgstr ""
-#: warehouse/templates/packaging/detail.html:491
+#: warehouse/templates/packaging/detail.html:514
msgid "Copy a direct link to the current filters"
msgstr ""
-#: warehouse/templates/packaging/detail.html:509
-#: warehouse/templates/packaging/detail.html:514
+#: warehouse/templates/packaging/detail.html:532
+#: warehouse/templates/packaging/detail.html:537
msgid "File name"
msgstr ""
@@ -8377,7 +8426,7 @@ msgid ""
msgstr ""
#: warehouse/templates/pages/help.html:181
-msgid "My project says it's in quarantine. What does that mean?"
+msgid "My project or release says it's in quarantine. What does that mean?"
msgstr ""
#: warehouse/templates/pages/help.html:185
@@ -8443,7 +8492,7 @@ msgid "Troubleshooting"
msgstr ""
#: warehouse/templates/pages/help.html:393
-#: warehouse/templates/pages/help.html:1306
+#: warehouse/templates/pages/help.html:1307
msgid "About"
msgstr ""
@@ -9247,7 +9296,7 @@ msgstr ""
#: warehouse/templates/pages/help.html:1079
msgid ""
"Deletion of a project, release or file on PyPI is permanent and "
-"irreversable, without exception. Deletion of a project makes it "
+"irreversible, without exception. Deletion of a project makes it "
"uninstallable, and releases the project name for use by any other PyPI user. "
"Deleted files cannot be re-uploaded. "
"Deleted projects, releases or files cannot be restored by PyPI "
@@ -9515,29 +9564,30 @@ msgstr ""
#: warehouse/templates/pages/help.html:1282
#, python-format
msgid ""
-"Projects may get placed in quarantine for any number of reasons, such as "
-"suspicion of malicious activity, spam, or other violations of the Terms of Service or "
-"Acceptable Use "
-"Policy."
+"Projects or individual releases may get placed in quarantine for any number "
+"of reasons, such as suspicion of malicious activity, spam, or other "
+"violations of the Terms of Service or Acceptable Use Policy."
msgstr ""
#: warehouse/templates/pages/help.html:1291
msgid ""
-"While in quarantine, the project is not installable by clients, and cannot "
-"be being modified by its maintainers. PyPI Administrators will need to "
-"review this project before it can be restored."
+"While in quarantine, the project or release is not installable by clients, "
+"and cannot be modified by its maintainers. PyPI Administrators will need to "
+"review it before it can be restored. When a single release is quarantined, "
+"other releases of the same project are unaffected."
msgstr ""
-#: warehouse/templates/pages/help.html:1298
+#: warehouse/templates/pages/help.html:1299
#, python-format
msgid ""
-"If you believe your project has mistakenly been flagged for quarantine, "
-"contact PyPI via security@pypi.org with any "
-"details."
+"If you believe your project or release has mistakenly been flagged for "
+"quarantine, contact PyPI via security@pypi.org "
+"with any details."
msgstr ""
-#: warehouse/templates/pages/help.html:1309
+#: warehouse/templates/pages/help.html:1310
#, python-format
msgid ""
"PyPI is powered by the Warehouse project; ."
msgstr ""
-#: warehouse/templates/pages/help.html:1344
+#: warehouse/templates/pages/help.html:1345
msgid ""
"As of April 16, 2018, PyPI.org is at \"production\" status, meaning that it "
"has moved out of beta and replaced the old site (pypi.python.org). It is now "
"robust, tested, and ready for expected browser and API traffic."
msgstr ""
-#: warehouse/templates/pages/help.html:1347
+#: warehouse/templates/pages/help.html:1348
#, python-format
msgid ""
"PyPI is heavily cached and distributed via private index."
msgstr ""
-#: warehouse/templates/pages/help.html:1366
+#: warehouse/templates/pages/help.html:1367
#, python-format
msgid ""
"We have a huge amount of work to do to continue to maintain and improve PyPI "
@@ -9609,22 +9659,22 @@ msgid ""
"rel=\"noopener\">the Warehouse project)."
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
msgid "Financial:"
msgstr ""
-#: warehouse/templates/pages/help.html:1372
+#: warehouse/templates/pages/help.html:1373
#, python-format
msgid ""
"We would deeply appreciate your donations to fund "
"development and maintenance."
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid "Development:"
msgstr ""
-#: warehouse/templates/pages/help.html:1375
+#: warehouse/templates/pages/help.html:1376
msgid ""
"Warehouse is open source, and we would love to see some new faces working on "
"the project. You do not need to be an experienced open-"
@@ -9632,7 +9682,7 @@ msgid ""
"make your first open source pull request!"
msgstr ""
-#: warehouse/templates/pages/help.html:1378
+#: warehouse/templates/pages/help.html:1379
#, python-format
msgid ""
"If you have skills in Python, Full-Text Search, HTML, SCSS, JavaScript, or "
@@ -9645,7 +9695,7 @@ msgid ""
"recommend you start here."
msgstr ""
-#: warehouse/templates/pages/help.html:1395
+#: warehouse/templates/pages/help.html:1396
#, python-format
msgid ""
"Issues are grouped into Python packaging forum on Discourse."
msgstr ""
-#: warehouse/templates/pages/help.html:1414
+#: warehouse/templates/pages/help.html:1415
#, python-format
msgid ""
"Changes to PyPI are generally announced on both the RSS feed."
msgstr ""
-#: warehouse/templates/pages/help.html:1432
+#: warehouse/templates/pages/help.html:1433
#, python-format
msgid ""
"All traffic is routed through our global CDN, which lists their public IP "
"addresses here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1435
+#: warehouse/templates/pages/help.html:1436
#, python-format
msgid ""
"More information about this list can be found here: %(href)s."
msgstr ""
-#: warehouse/templates/pages/help.html:1439
+#: warehouse/templates/pages/help.html:1440
msgid ""
"When Warehouse's maintainers are deploying new features, at first we mark "
"them with a small \"beta feature\" symbol to tell you: this should probably "
"work fine, but it's new and less tested than other site functionality."
msgstr ""
-#: warehouse/templates/pages/help.html:1441
+#: warehouse/templates/pages/help.html:1442
msgid "Currently, no features are in beta."
msgstr ""
-#: warehouse/templates/pages/help.html:1444
+#: warehouse/templates/pages/help.html:1445
#, python-format
msgid ""
"\"PyPI\" should be pronounced like \"pie pea eye\", specifically with the "
@@ -9714,43 +9764,43 @@ msgid ""
"language."
msgstr ""
-#: warehouse/templates/pages/help.html:1454
+#: warehouse/templates/pages/help.html:1455
msgid "Resources"
msgstr ""
-#: warehouse/templates/pages/help.html:1455
+#: warehouse/templates/pages/help.html:1456
msgid "Looking for something else? Perhaps these links will help:"
msgstr ""
-#: warehouse/templates/pages/help.html:1461
+#: warehouse/templates/pages/help.html:1462
msgid "PyPI User Documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1467
+#: warehouse/templates/pages/help.html:1468
msgid "Python Packaging User Guide"
msgstr ""
-#: warehouse/templates/pages/help.html:1473
+#: warehouse/templates/pages/help.html:1474
msgid "Python documentation"
msgstr ""
-#: warehouse/templates/pages/help.html:1479
+#: warehouse/templates/pages/help.html:1480
msgid "(main Python website)"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "Python community page"
msgstr ""
-#: warehouse/templates/pages/help.html:1485
+#: warehouse/templates/pages/help.html:1486
msgid "(lists IRC channels, mailing lists, etc.)"
msgstr ""
-#: warehouse/templates/pages/help.html:1488
+#: warehouse/templates/pages/help.html:1489
msgid "Contact"
msgstr ""
-#: warehouse/templates/pages/help.html:1490
+#: warehouse/templates/pages/help.html:1491
#, python-format
msgid ""
"The