Skip to content

Commit c57a991

Browse files
committed
Fix workflow issues
1 parent dc7b3a9 commit c57a991

69 files changed

Lines changed: 8446 additions & 2007 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/build-and-deploy.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,15 @@ jobs:
3535
- name: Setup virtual environment
3636
run: make venv
3737
working-directory: ./Doc
38-
38+
39+
- name: Pin Sphinx to 9.1.0
40+
# make venv may resolve an older Sphinx via requirements.txt; pin
41+
# explicitly so we get the reordered-ref / translated-display-text
42+
# i18n fixes (sphinx-doc/sphinx#14144). Bump this once #14162 lands
43+
# upstream and re-check whether the suppression below is still needed.
44+
run: ./venv/bin/pip install "sphinx==9.1.0"
45+
working-directory: ./Doc
46+
3947
- name: Checkout translation files
4048
uses: actions/checkout@v4
4149
with:
@@ -50,7 +58,7 @@ jobs:
5058
uses: sphinx-doc/github-problem-matcher@v1.1
5159

5260
- name: Build documentation
53-
run: make -e SPHINXERRORHANDLING="" SPHINXOPTS="--color -D language='fa' -D gettext_allow_fuzzy_translations=1 -D html_theme_options.is_rtl=true --keep-going" html
61+
run: make -e SPHINXERRORHANDLING="" SPHINXOPTS="--color -D language='fa' -D gettext_allow_fuzzy_translations=1 -D html_theme_options.is_rtl=true -D suppress_warnings=i18n.inconsistent_references --keep-going" html
5462
working-directory: ./Doc
5563

5664
- name: Setup Pages

.github/workflows/lint.yml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,14 @@ jobs:
3636
run: make venv
3737
working-directory: ./Doc
3838

39+
- name: Pin Sphinx to 9.1.0
40+
# make venv may resolve an older Sphinx via requirements.txt; pin
41+
# explicitly so we get the reordered-ref / translated-display-text
42+
# i18n fixes (sphinx-doc/sphinx#14144). Bump this once #14162 lands
43+
# upstream and re-check whether the suppression below is still needed.
44+
run: ./venv/bin/pip install "sphinx==9.1.0"
45+
working-directory: ./Doc
46+
3947
- name: Checkout translation files
4048
uses: actions/checkout@v4
4149
with:
@@ -59,5 +67,9 @@ jobs:
5967
working-directory: Doc/locales/fa/LC_MESSAGES
6068

6169
- name: Build documentation
62-
run: make -e SPHINXOPTS="--color -D language='fa' -D gettext_allow_fuzzy_translations=1 -W --keep-going" html
70+
# suppress_warnings for i18n.inconsistent_references: confirmed
71+
# upstream false positive for translated display text / custom
72+
# pending_xref directives (e.g. CPython's `.. availability::`),
73+
# tracked and still open at sphinx-doc/sphinx#14162.
74+
run: make -e SPHINXOPTS="--color -D language='fa' -D gettext_allow_fuzzy_translations=1 -D suppress_warnings=i18n.inconsistent_references -W --keep-going" html
6375
working-directory: ./Doc

.readthedocs.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,11 @@ build:
77
commands:
88
- git clone --depth 1 --branch v3.14.7 https://github.com/python/cpython venv/cpython
99
- pip install -r venv/cpython/Doc/requirements.txt
10+
# Pin Sphinx separately: requirements.txt may resolve to an older version,
11+
# and 9.1.0+ is needed for the reordered- ref / translated-display-text
12+
# i18n fixes (sphinx-doc/sphinx#14144). Bump this once #14162 lands
13+
# upstream and re-check whether the suppression below is still needed.
14+
- pip install "sphinx==9.1.0"
1015
- mkdir -p venv/cpython/Doc/locales/fa/LC_MESSAGES
1116
- cp --parents *.po venv/cpython/Doc/locales/fa/LC_MESSAGES/
1217
- find */ -name "*.po" -not -path "venv/*" | xargs -I{} cp --parents {} venv/cpython/Doc/locales/fa/LC_MESSAGES/
@@ -18,6 +23,7 @@ build:
1823
-D gettext_allow_fuzzy_translations=1
1924
-D gettext_compact=0
2025
-D html_theme_options.is_rtl=true
26+
-D suppress_warnings=i18n.inconsistent_references
2127
--keep-going
2228
venv/cpython/Doc
23-
$READTHEDOCS_OUTPUT/html
29+
$READTHEDOCS_OUTPUT/html

c-api/apiabiversion.po

Lines changed: 73 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,21 @@ msgstr "نسخه‌گذاری API و ABI"
3333
msgid "Build-time version constants"
3434
msgstr "ثابتهای نسخه در زمان ساخت"
3535

36-
msgid "CPython exposes its version number in the following macros. Note that these correspond to the version code is **built** with. See :c:var:`Py_Version` for the version used at **run time**."
37-
msgstr "CPython شماره‌ی نسخه‌ی خود را در ماکروهای زیر در معرض دید قرار می‌دهد. توجه داشته باشید که اینها مربوط به نسخه‌ای هستند که کد با آن **ساخته ** شده است. برای نسخه‌ای که در **زمان اجرا** استفاده می‌شود، به :c:var:`Py_Version` مراجعه کنید."
36+
msgid ""
37+
"CPython exposes its version number in the following macros. Note that these "
38+
"correspond to the version code is **built** with. See :c:var:`Py_Version` "
39+
"for the version used at **run time**."
40+
msgstr ""
41+
"CPython شماره‌ی نسخه‌ی خود را در ماکروهای زیر در معرض دید قرار می‌دهد. توجه "
42+
"داشته باشید که اینها مربوط به نسخه‌ای هستند که کد با آن **ساخته** شده است. "
43+
"برای نسخه‌ای که در **زمان اجرا** استفاده می‌شود، به :c:var:`Py_Version` "
44+
"مراجعه کنید."
3845

39-
msgid "See :ref:`stable` for a discussion of API and ABI stability across versions."
40-
msgstr "برای بحث درباره‌ی پایداری API و ABI در میان نسخه‌ها، به :ref:`stable` مراجعه کنید."
46+
msgid ""
47+
"See :ref:`stable` for a discussion of API and ABI stability across versions."
48+
msgstr ""
49+
"برای بحث درباره‌ی پایداری API و ABI در میان نسخه‌ها، به :ref:`stable` مراجعه"
50+
" کنید."
4151

4252
msgid "The ``3`` in ``3.4.1a2``."
4353
msgstr "``3`` در ``3.4.1a2``."
@@ -48,35 +58,61 @@ msgstr "``4`` در ``3.4.1a2``."
4858
msgid "The ``1`` in ``3.4.1a2``."
4959
msgstr "``1`` در ``3.4.1a2``."
5060

51-
msgid "The ``a`` in ``3.4.1a2``. This can be ``0xA`` for alpha, ``0xB`` for beta, ``0xC`` for release candidate or ``0xF`` for final."
52-
msgstr "``a`` در ``3.4.1a2``. این می‌تواند ``0xA`` برای آلفا باشد، ``0xB`` برای بتا، ``0xC`` برای کاندیدای انتشار (release candidate) یا ``0xF`` برای نهایی (final)."
61+
msgid ""
62+
"The ``a`` in ``3.4.1a2``. This can be ``0xA`` for alpha, ``0xB`` for beta, "
63+
"``0xC`` for release candidate or ``0xF`` for final."
64+
msgstr ""
65+
"``a`` در ``3.4.1a2``. این می‌تواند ``0xA`` برای آلفا باشد، ``0xB`` برای بتا،"
66+
" ``0xC`` برای کاندیدای انتشار (release candidate) یا ``0xF`` برای نهایی "
67+
"(final)."
5368

5469
msgid "The ``2`` in ``3.4.1a2``. Zero for final releases."
5570
msgstr "``2`` در ``3.4.1a2``. برای انتشارهای نهایی، صفر است."
5671

57-
msgid "The Python version number encoded in a single integer. See :c:func:`Py_PACK_FULL_VERSION` for the encoding details."
58-
msgstr "شماره‌ی نسخه‌ی پایتون که در یک عدد صحیح کدگذاری شده است. برای جزئیات کدگذاری، به :c:func:`Py_PACK_FULL_VERSION` مراجعه کنید."
72+
msgid ""
73+
"The Python version number encoded in a single integer. See "
74+
":c:func:`Py_PACK_FULL_VERSION` for the encoding details."
75+
msgstr ""
76+
"شماره‌ی نسخه‌ی پایتون که در یک عدد صحیح کدگذاری شده است. برای جزئیات "
77+
"کدگذاری، به :c:func:`Py_PACK_FULL_VERSION` مراجعه کنید."
5978

60-
msgid "Use this for numeric comparisons, for example, ``#if PY_VERSION_HEX >= ...``."
61-
msgstr "از این (مقدار) برای مقایسه‌های عددی استفاده کنید، برای مثال، ``#if PY_VERSION_HEX >= ...``."
79+
msgid ""
80+
"Use this for numeric comparisons, for example, ``#if PY_VERSION_HEX >= "
81+
"...``."
82+
msgstr ""
83+
"از این (مقدار) برای مقایسه‌های عددی استفاده کنید، برای مثال، ``#if "
84+
"PY_VERSION_HEX >= ...``."
6285

6386
msgid "These macros are defined in :source:`Include/patchlevel.h`."
6487
msgstr "این ماکروها در :source:`Include/patchlevel.h` تعریف می‌شوند."
6588

6689
msgid "Run-time version"
6790
msgstr "نسخه‌ی زمان اجرا"
6891

69-
msgid "The Python runtime version number encoded in a single constant integer. See :c:func:`Py_PACK_FULL_VERSION` for the encoding details. This contains the Python version used at run time."
70-
msgstr "شماره‌ی نسخه‌ی ران‌تایم پایتون که در یک عدد صحیح ثابت کدگذاری شده است. برای جزئیات کدگذاری، به :c:func:`Py_PACK_FULL_VERSION` مراجعه کنید. این (مقدار) شامل نسخه‌ی پایتون است که در زمان اجرا استفاده می‌شود."
92+
msgid ""
93+
"The Python runtime version number encoded in a single constant integer. See "
94+
":c:func:`Py_PACK_FULL_VERSION` for the encoding details. This contains the "
95+
"Python version used at run time."
96+
msgstr ""
97+
"شماره‌ی نسخه‌ی ران‌تایم پایتون که در یک عدد صحیح ثابت کدگذاری شده است. برای "
98+
"جزئیات کدگذاری، به :c:func:`Py_PACK_FULL_VERSION` مراجعه کنید. این (مقدار) "
99+
"شامل نسخه‌ی پایتون است که در زمان اجرا استفاده می‌شود."
71100

72-
msgid "Use this for numeric comparisons, for example, ``if (Py_Version >= ...)``."
73-
msgstr "از این (مقدار) برای مقایسه‌های عددی استفاده کنید، برای مثال، ``if (Py_Version >= ...)``."
101+
msgid ""
102+
"Use this for numeric comparisons, for example, ``if (Py_Version >= ...)``."
103+
msgstr ""
104+
"از این (مقدار) برای مقایسه‌های عددی استفاده کنید، برای مثال، ``if "
105+
"(Py_Version >= ...)``."
74106

75107
msgid "Bit-packing macros"
76108
msgstr "ماکروهای بسته‌بندی بیتی"
77109

78-
msgid "Return the given version, encoded as a single 32-bit integer with the following structure:"
79-
msgstr "نسخه‌ی داده‌شده را که به صورت یک عدد صحیح ۳۲-بیتی با ساختار زیر کدگذاری شده است، برمی‌گرداند:"
110+
msgid ""
111+
"Return the given version, encoded as a single 32-bit integer with the "
112+
"following structure:"
113+
msgstr ""
114+
"نسخه‌ی داده‌شده را که به صورت یک عدد صحیح ۳۲-بیتی با ساختار زیر کدگذاری شده "
115+
"است، برمی‌گرداند:"
80116

81117
msgid "Argument"
82118
msgstr "آرگومان"
@@ -195,8 +231,12 @@ msgstr "``(3, 10, 0, 0xF, 0)``"
195231
msgid "``0x030a00f0``"
196232
msgstr "``0x030a00f0``"
197233

198-
msgid "Out-of range bits in the arguments are ignored. That is, the macro can be defined as:"
199-
msgstr "بیت‌های خارج از محدوده در آرگومان‌ها نادیده گرفته می‌شوند. به عبارت دیگر، این ماکرو را می‌توان به صورت زیر تعریف کرد:"
234+
msgid ""
235+
"Out-of range bits in the arguments are ignored. That is, the macro can be "
236+
"defined as:"
237+
msgstr ""
238+
"بیت‌های خارج از محدوده در آرگومان‌ها نادیده گرفته می‌شوند. به عبارت دیگر، "
239+
"این ماکرو را می‌توان به صورت زیر تعریف کرد:"
200240

201241
msgid ""
202242
"#ifndef Py_PACK_FULL_VERSION\n"
@@ -217,8 +257,19 @@ msgstr ""
217257
" (((SERIAL) & 0xf) << 0))\n"
218258
"#endif"
219259

220-
msgid "``Py_PACK_FULL_VERSION`` is primarily a macro, intended for use in ``#if`` directives, but it is also available as an exported function."
221-
msgstr "``Py_PACK_FULL_VERSION`` در درجه‌ی نخست یک ماکرو است که برای استفاده در دستورهای ``#if`` در نظر گرفته شده است، اما به‌عنوان یک تابع صادرشده نیز در دسترس است."
260+
msgid ""
261+
"``Py_PACK_FULL_VERSION`` is primarily a macro, intended for use in ``#if`` "
262+
"directives, but it is also available as an exported function."
263+
msgstr ""
264+
"``Py_PACK_FULL_VERSION`` در درجه‌ی نخست یک ماکرو است که برای استفاده در "
265+
"دستورهای ``#if`` در نظر گرفته شده است، اما به‌عنوان یک تابع صادرشده نیز در "
266+
"دسترس است."
222267

223-
msgid "Equivalent to ``Py_PACK_FULL_VERSION(major, minor, 0, 0, 0)``. The result does not correspond to any Python release, but is useful in numeric comparisons."
224-
msgstr "معادل ``Py_PACK_FULL_VERSION(major, minor, 0, 0, 0)`` است. نتیجه با هیچ نسخه‌ی انتشار یافته‌ای از پایتون مطابقت ندارد، اما در مقایسه‌های عددی مفید است."
268+
msgid ""
269+
"Equivalent to ``Py_PACK_FULL_VERSION(major, minor, 0, 0, 0)``. The result "
270+
"does not correspond to any Python release, but is useful in numeric "
271+
"comparisons."
272+
msgstr ""
273+
"معادل ``Py_PACK_FULL_VERSION(major, minor, 0, 0, 0)`` است. نتیجه با هیچ "
274+
"نسخه‌ی انتشار یافته‌ای از پایتون مطابقت ندارد، اما در مقایسه‌های عددی مفید "
275+
"است."

c-api/exceptions.po

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ msgid "This is a convenience function to raise :exc:`OSError`. If called with *i
139139
msgstr "این یک تابع کمکی برای پرتاب :exc:`OSError` است. اگر با مقدار ``0`` برای *ierr* فراخوانی شود، به‌جای آن از کد خطایی که فراخوانی :c:func:`!GetLastError` برمی‌گرداند استفاده می‌شود. این تابع برای بازیابی توضیح ویندوز برای کد خطای داده‌شده توسط *ierr* یا :c:func:`!GetLastError`، تابع Win32 یعنی :c:func:`!FormatMessage` را فراخوانی می‌کند؛ سپس یک شیء :exc:`OSError` می‌سازد که ویژگی :attr:`~OSError.winerror` آن روی کد خطا و ویژگی :attr:`~OSError.strerror` آن روی پیام خطای متناظر (گرفته‌شده از :c:func:`!FormatMessage`) تنظیم شده‌اند، و سپس ``PyErr_SetObject(PyExc_OSError, object)`` را فراخوانی می‌کند. این تابع همیشه ``NULL`` را برمی‌گرداند."
140140

141141
msgid "Availability"
142-
msgstr "دسترسی‌پذیری"
142+
msgstr "دسترس‌پذیری"
143143

144144
msgid "Similar to :c:func:`PyErr_SetFromWindowsErr`, with an additional parameter specifying the exception type to be raised."
145145
msgstr "مشابه :c:func:`PyErr_SetFromWindowsErr`، با یک پارامتر اضافی برای تعیین نوع استثنایی که باید ایجاد شود."

0 commit comments

Comments
 (0)