-
Notifications
You must be signed in to change notification settings - Fork 13
Expand file tree
/
Copy pathstable.po
More file actions
157 lines (112 loc) · 22.5 KB
/
Copy pathstable.po
File metadata and controls
157 lines (112 loc) · 22.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2001 Python Software Foundation
# This file is distributed under the same license as the Python package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
# Translators:
# Revisto <theRevisto@gmail.com>, 2025
# Sepehr Rasouli <sepehrrasouli06@gmail.com>, 2026
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3.14\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-09-16 12:56+0000\n"
"PO-Revision-Date: 2021-06-28 00:50+0000\n"
"Last-Translator: Sepehr Rasouli <sepehrrasouli06@gmail.com>, 2026\n"
"Language-Team: Persian (https://github.com/python/python-docs-fa/)\n"
"Language: fa\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
msgid "C API Stability"
msgstr "پایداری API زبان C"
msgid "Unless documented otherwise, Python's C API is covered by the Backwards Compatibility Policy, :pep:`387`. Most changes to it are source-compatible (typically by only adding new API). Changing existing API or removing API is only done after a deprecation period or to fix serious issues."
msgstr "مگر آنکه خلاف آن مستند شده باشد، C API پایتون مشمول سیاست سازگاری رو به عقب، :pep:`387`، است. بیشتر تغییرات آن با کد منبع سازگار هستند (source-compatible) (معمولاً فقط با افزودن APIهای جدید). تغییر APIهای موجود یا حذف API تنها پس از یک دورهی منسوخسازی یا برای رفع مشکلات جدی انجام میشود."
msgid "CPython's Application Binary Interface (ABI) is forward- and backwards-compatible across a minor release (if these are compiled the same way; see :ref:`stable-abi-platform` below). So, code compiled for Python 3.10.0 will work on 3.10.8 and vice versa, but will need to be compiled separately for 3.9.x and 3.11.x."
msgstr "رابط دودویی برنامه (ABI) سیپایتون در طول یک انتشار جزئی، به جلو و به عقب سازگار است (اگر اینها به یک شکل کامپایل شده باشند؛ به :ref:`stable-abi-platform` در ادامه مراجعه کنید). بنابراین، کدی که برای پایتون 3.10.0 کامپایل شده باشد، روی 3.10.8 کار خواهد کرد و برعکس، اما برای 3.9.x و 3.11.x باید جداگانه کامپایل شود."
msgid "There are two tiers of C API with different stability expectations:"
msgstr "دو سطح از C API با انتظارات پایداری متفاوت وجود دارد:"
msgid ":ref:`Unstable API <unstable-c-api>`, may change in minor versions without a deprecation period. It is marked by the ``PyUnstable`` prefix in names."
msgstr ":ref:`API ناپایدار <unstable-c-api>`، ممکن است در نسخههای جزئی بدون دورهی منسوخسازی تغییر کند. این API با پیشوند ``PyUnstable`` در نامها مشخص میشود."
msgid ":ref:`Limited API <limited-c-api>`, is compatible across several minor releases. When :c:macro:`Py_LIMITED_API` is defined, only this subset is exposed from ``Python.h``."
msgstr ":ref:`API محدود <limited-c-api>`، در چندین نسخهی فرعی سازگار است. هنگامی که :c:macro:`Py_LIMITED_API` تعریف شود، فقط این زیرمجموعه از ``Python.h`` در دسترس قرار میگیرد."
msgid "These are discussed in more detail below."
msgstr "این موارد در ادامه با جزئیات بیشتر بررسی میشوند."
msgid "Names prefixed by an underscore, such as ``_Py_InternalState``, are private API that can change without notice even in patch releases. If you need to use this API, consider reaching out to `CPython developers <https://discuss.python.org/c/core-dev/c-api/30>`_ to discuss adding public API for your use case."
msgstr "نامهایی که با خط زیر آغاز میشوند، مانند ``_Py_InternalState``، API خصوصی هستند و میتوانند حتی در نسخههای وصله (patch) بدون اطلاع قبلی تغییر کنند. اگر نیاز به استفاده از این API دارید، در نظر بگیرید که با `توسعهدهندگان سیپایتون <https://discuss.python.org/c/core-dev/c-api/30>`_ ارتباط برقرار کنید تا دربارهی افزودن API عمومی برای مورد استفادهی خود گفتوگو کنید."
msgid "Unstable C API"
msgstr "API ناپایدار C"
msgid "Any API named with the ``PyUnstable`` prefix exposes CPython implementation details, and may change in every minor release (e.g. from 3.9 to 3.10) without any deprecation warnings. However, it will not change in a bugfix release (e.g. from 3.10.0 to 3.10.1)."
msgstr "هر API که با پیشوند ``PyUnstable`` نامگذاری شده باشد، جزئیات پیادهسازی سیپایتون را آشکار میکند و ممکن است در هر انتشار جزئی (برای مثال از 3.9 به 3.10) بدون هیچ هشدار منسوخشدن تغییر کند. با این حال، در انتشار رفع اشکال (برای مثال از 3.10.0 به 3.10.1) تغییر نخواهد کرد."
msgid "It is generally intended for specialized, low-level tools like debuggers."
msgstr "این بهطور کلی برای ابزارهای تخصصی و سطح پایین مانند اشکالزداها در نظر گرفته شده است."
msgid "Projects that use this API are expected to follow CPython development and spend extra effort adjusting to changes."
msgstr "انتظار میرود پروژههایی که از این API استفاده میکنند، توسعهی سیپایتون را دنبال کنند و برای سازگاری با تغییرات تلاش اضافی صرف کنند."
msgid "Stable Application Binary Interface"
msgstr "رابط دودویی پایدار برنامه (ABI)"
msgid "For simplicity, this document talks about *extensions*, but the Limited API and Stable ABI work the same way for all uses of the API – for example, embedding Python."
msgstr "برای سادگی، این سند دربارهی *افزونهها* صحبت میکند، اما API محدود (Limited API) و ABI پایدار برای همهی کاربردهای API به همان شکل کار میکنند – برای مثال، تعبیه کردن پایتون."
msgid "Limited C API"
msgstr "C API محدود"
msgid "Python 3.2 introduced the *Limited API*, a subset of Python's C API. Extensions that only use the Limited API can be compiled once and be loaded on multiple versions of Python. Contents of the Limited API are :ref:`listed below <limited-api-list>`."
msgstr "پایتون 3.2 *API محدود* را معرفی کرد، زیرمجموعهای از C API پایتون. ماژولهای توسعهای که فقط از API محدود استفاده میکنند، میتوانند یکبار کامپایل شوند و روی نسخههای متعدد پایتون بارگذاری شوند. محتوای API محدود :ref:`در ادامه فهرست شدهاند <limited-api-list>`."
msgid "Define this macro before including ``Python.h`` to opt in to only use the Limited API, and to select the Limited API version."
msgstr "این ماکرو را پیش از گنجاندن ``Python.h`` تعریف کنید تا فقط از API محدود استفاده کنید و نسخهی API محدود را انتخاب کنید."
msgid "Define ``Py_LIMITED_API`` to the value of :c:macro:`PY_VERSION_HEX` corresponding to the lowest Python version your extension supports. The extension will be ABI-compatible with all Python 3 releases from the specified one onward, and can use Limited API introduced up to that version."
msgstr "``Py_LIMITED_API`` را برابر با مقدار :c:macro:`PY_VERSION_HEX` مربوط به کمترین نسخهی پایتونی که ماژول توسعهای شما از آن پشتیبانی میکند، تعریف کنید. ماژول توسعهای از نظر ABI با تمام نسخههای پایتون 3 از نسخهی مشخصشده به بعد سازگار خواهد بود و میتواند از API محدودی که تا آن نسخه معرفی شده است استفاده کند."
msgid "Rather than using the ``PY_VERSION_HEX`` macro directly, hardcode a minimum minor version (e.g. ``0x030A0000`` for Python 3.10) for stability when compiling with future Python versions."
msgstr "بهجای استفادهی مستقیم از ماکروی ``PY_VERSION_HEX``، برای پایداری هنگام کامپایل با نسخههای آیندهی پایتون، یک حداقل نسخهی فرعی (مثلاً ``0x030A0000`` برای پایتون 3.10) را بهصورت هاردکد (hardcode) در کد بنویسید."
msgid "You can also define ``Py_LIMITED_API`` to ``3``. This works the same as ``0x03020000`` (Python 3.2, the version that introduced Limited API)."
msgstr "همچنین میتوانید ``Py_LIMITED_API`` را با مقدار ``3`` تعریف کنید. این همانند ``0x03020000`` عمل میکند (پایتون 3.2، نسخهای که API محدود را معرفی کرد)."
msgid "Stable ABI"
msgstr "رابط دودویی کاربردی پایدار"
msgid "To enable this, Python provides a *Stable ABI*: a set of symbols that will remain ABI-compatible across Python 3.x versions."
msgstr "برای فعالسازی این، پایتون یک *ABI پایدار* فراهم میکند: مجموعهای از نمادها که در تمام نسخههای Python 3.x از نظر ABI سازگار باقی خواهند ماند."
msgid "The Stable ABI prevents ABI issues, like linker errors due to missing symbols or data corruption due to changes in structure layouts or function signatures. However, other changes in Python can change the *behavior* of extensions. See Python's Backwards Compatibility Policy (:pep:`387`) for details."
msgstr "ABI پایدار از بروز مشکلات ABI جلوگیری میکند؛ مانند خطاهای پیونددهنده به دلیل نبود نمادها یا خرابی داده به دلیل تغییرات در چیدمان ساختارها یا امضاهای توابع. با این حال، تغییرات دیگر در پایتون میتوانند *رفتار* ماژولهای توسعهای را تغییر دهند. برای جزئیات، سیاست سازگاری رو به عقب پایتون (:pep:`387`) را ببینید."
msgid "The Stable ABI contains symbols exposed in the :ref:`Limited API <limited-c-api>`, but also other ones – for example, functions necessary to support older versions of the Limited API."
msgstr "ABI پایدار شامل نمادهایی است که در :ref:`API محدود <limited-c-api>` افشا شدهاند، اما نمادهای دیگری را نیز در بر میگیرد – برای مثال، توابعی که برای پشتیبانی از نسخههای قدیمیترِ API محدود ضروریاند."
msgid "On Windows, extensions that use the Stable ABI should be linked against ``python3.dll`` rather than a version-specific library such as ``python39.dll``."
msgstr "در ویندوز، ماژولهای توسعهای که از رابط دودویی پایدار استفاده میکنند، باید بهجای کتابخانهی خاص نسخه مانند ``python39.dll`` به ``python3.dll`` پیوند داده شوند."
msgid "On some platforms, Python will look for and load shared library files named with the ``abi3`` tag (e.g. ``mymodule.abi3.so``). It does not check if such extensions conform to a Stable ABI. The user (or their packaging tools) need to ensure that, for example, extensions built with the 3.10+ Limited API are not installed for lower versions of Python."
msgstr "در برخی پلتفرمها، پایتون به دنبال پروندههای کتابخانه اشتراکیای که با برچسب ``abi3`` نامگذاری شدهاند میگردد و آنها را بارگذاری میکند (برای مثال، ``mymodule.abi3.so``). پایتون بررسی نمیکند که آیا اینگونه ماژولهای توسعهای با ABI پایدار مطابقت دارند یا خیر. کاربر (یا ابزارهای بستهبندی او) باید اطمینان حاصل کنند که مثلاً ماژولهای توسعهای ساختهشده با API محدودِ 3.10+ برای نسخههای پایینتر پایتون نصب نمیشوند."
msgid "All functions in the Stable ABI are present as functions in Python's shared library, not solely as macros. This makes them usable from languages that don't use the C preprocessor."
msgstr "تمام توابع موجود در ABI پایدار بهصورت تابع در کتابخانهی اشتراکی پایتون وجود دارند، نه صرفاً بهصورت ماکرو. این امر امکان استفاده از آنها را در زبانهایی که از پیشپردازندهی C استفاده نمیکنند، فراهم میکند."
msgid "Limited API Scope and Performance"
msgstr "محدوده و کارایی API محدود"
msgid "The goal for the Limited API is to allow everything that is possible with the full C API, but possibly with a performance penalty."
msgstr "هدف API محدود (Limited API) این است که هر آنچه با C API کامل امکانپذیر است را ممکن سازد، اما احتمالاً با جریمهای در کارایی (performance penalty)."
msgid "For example, while :c:func:`PyList_GetItem` is available, its “unsafe” macro variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it can rely on version-specific implementation details of the list object."
msgstr "برای مثال، در حالی که :c:func:`PyList_GetItem` دسترسپذیر است، گونهی ماکروی «ناامن» آن :c:func:`PyList_GET_ITEM` دسترسپذیر نیست. این ماکرو میتواند سریعتر باشد، زیرا میتواند به جزئیات پیادهسازی وابسته به نسخهی شیء فهرست تکیه کند."
msgid "Without ``Py_LIMITED_API`` defined, some C API functions are inlined or replaced by macros. Defining ``Py_LIMITED_API`` disables this inlining, allowing stability as Python's data structures are improved, but possibly reducing performance."
msgstr "بدون تعریف ``Py_LIMITED_API``، برخی از توابع C API بهصورت درونخطی تعریف میشوند یا با ماکروها جایگزین میگردند. تعریف ``Py_LIMITED_API`` این درونخطیسازی را غیرفعال میکند و همین امر باعث میشود با بهبود ساختارهای دادهی پایتون، پایداری حفظ شود، هرچند ممکن است کارایی را کاهش دهد."
msgid "By leaving out the ``Py_LIMITED_API`` definition, it is possible to compile a Limited API extension with a version-specific ABI. This can improve performance for that Python version, but will limit compatibility. Compiling with ``Py_LIMITED_API`` will then yield an extension that can be distributed where a version-specific one is not available – for example, for prereleases of an upcoming Python version."
msgstr "با تعریف ن کردن ``Py_LIMITED_API``، میتوان یک افزونهی API محدود را با ABI مخصوص نسخه کامپایل کرد. این کار میتواند کارایی را برای آن نسخه از پایتون بهبود بخشد، اما سازگاری را محدود خواهد کرد. در مقابل، کامپایل کردن با ``Py_LIMITED_API`` افزونهای به دست میدهد که میتوان آن را در جایی که افزونهی مخصوص نسخه در دسترس نیست، توزیع کرد – برای مثال، برای نسخههای پیشانتشار یک نسخهی آتی از پایتون."
msgid "Limited API Caveats"
msgstr "هشدارهای API محدود"
msgid "Note that compiling with ``Py_LIMITED_API`` is *not* a complete guarantee that code conforms to the :ref:`Limited API <limited-c-api>` or the :ref:`Stable ABI <stable-abi>`. ``Py_LIMITED_API`` only covers definitions, but an API also includes other issues, such as expected semantics."
msgstr "توجه داشته باشید که کامپایل با ``Py_LIMITED_API`` تضمین کاملی *نیست* که کد با :ref:`API محدود <limited-c-api>` یا :ref:`ABI پایدار <stable-abi>` مطابقت داشته باشد. ``Py_LIMITED_API`` تنها تعاریف را پوشش میدهد، اما یک API همچنین شامل مسائل دیگری مانند معناشناسی مورد انتظار است."
msgid "One issue that ``Py_LIMITED_API`` does not guard against is calling a function with arguments that are invalid in a lower Python version. For example, consider a function that starts accepting ``NULL`` for an argument. In Python 3.9, ``NULL`` now selects a default behavior, but in Python 3.8, the argument will be used directly, causing a ``NULL`` dereference and crash. A similar argument works for fields of structs."
msgstr "یکی از مشکلاتی که ``Py_LIMITED_API`` در برابر آن محافظت نمیکند، فراخوانی تابعی با آرگومانهایی است که در نسخهی پایینتر پایتون نامعتبر هستند. برای مثال، تابعی را در نظر بگیرید که شروع به پذیرش ``NULL`` برای یک آرگومان کرده است. در پایتون 3.9، ``NULL`` اکنون یک رفتار پیشفرض را انتخاب میکند، اما در پایتون 3.8، آرگومان مستقیماً استفاده خواهد شد که موجب ارجاعزدایی (dereference) ``NULL`` و فروپاشی میشود. استدلال مشابهی برای فیلدهای ساختارها نیز برقرار است."
msgid "Another issue is that some struct fields are currently not hidden when ``Py_LIMITED_API`` is defined, even though they're part of the Limited API."
msgstr "مشکل دیگر این است که برخی از فیلدهای ساختار هنگامی که ``Py_LIMITED_API`` تعریف شده باشد، در حال حاضر پنهان نمیشوند، هرچند که بخشی از API محدود به شمار میروند."
msgid "For these reasons, we recommend testing an extension with *all* minor Python versions it supports, and preferably to build with the *lowest* such version."
msgstr "به این دلایل، توصیه میکنیم یک ماژول توسعهای را با *همهی* نسخههای فرعی پایتون که از آنها پشتیبانی میکند آزمایش کنید و ترجیحاً آن را با *پایینترین* نسخه از میان آنها کامپایل کنید."
msgid "We also recommend reviewing documentation of all used API to check if it is explicitly part of the Limited API. Even with ``Py_LIMITED_API`` defined, a few private declarations are exposed for technical reasons (or even unintentionally, as bugs)."
msgstr "همچنین توصیه میکنیم مستندات تمام APIهای استفادهشده را بررسی کنید تا مشخص شود که آیا بهطور صریح بخشی از API محدود هستند یا خیر. حتی با تعریف ``Py_LIMITED_API``، چند اعلان خصوصی به دلایل فنی (یا حتی ناخواسته، بهعنوان باگ) در دسترس قرار میگیرند."
msgid "Also note that the Limited API is not necessarily stable: compiling with ``Py_LIMITED_API`` with Python 3.8 means that the extension will run with Python 3.12, but it will not necessarily *compile* with Python 3.12. In particular, parts of the Limited API may be deprecated and removed, provided that the Stable ABI stays stable."
msgstr "همچنین توجه داشته باشید که API محدود لزوماً پایدار نیست: کامپایل کردن با ``Py_LIMITED_API`` در پایتون 3.8 به این معناست که ماژول توسعهای با پایتون 3.12 اجرا خواهد شد، اما لزوماً با پایتون 3.12 *کامپایل* نخواهد شد. بهویژه، ممکن است بخشهایی از API محدود منسوخ و حذف شوند، به شرط آنکه ABI پایدار پایدار باقی بماند."
msgid "Platform Considerations"
msgstr "ملاحظات پلتفرم"
msgid "ABI stability depends not only on Python, but also on the compiler used, lower-level libraries and compiler options. For the purposes of the :ref:`Stable ABI <stable-abi>`, these details define a “platform”. They usually depend on the OS type and processor architecture"
msgstr "پایداری ABI نهتنها به پایتون، بلکه به کامپایلر استفادهشده، کتابخانههای سطح پایینتر و گزینههای کامپایلر نیز بستگی دارد. در چارچوب :ref:`ABI پایدار <stable-abi>`، این جزئیات یک «پلتفرم» را تعریف میکنند. این جزئیات معمولاً به نوع سیستمعامل و معماری پردازنده بستگی دارند"
msgid "It is the responsibility of each particular distributor of Python to ensure that all Python versions on a particular platform are built in a way that does not break the Stable ABI. This is the case with Windows and macOS releases from ``python.org`` and many third-party distributors."
msgstr "مسئولیت هر توزیعکنندهی خاص پایتون این است که اطمینان حاصل کند تمام نسخههای پایتون روی یک پلتفرم خاص به گونهای ساخته میشوند که ABI پایدار را نشکنند. این موضوع دربارهی نسخههای ویندوز و macOS از ``python.org`` و بسیاری از توزیعکنندگان شخص ثالث صادق است."
msgid "Contents of Limited API"
msgstr "محتویات API محدود"
msgid "Currently, the :ref:`Limited API <limited-c-api>` includes the following items:"
msgstr "در حال حاضر، :ref:`API محدود <limited-c-api>` شامل موارد زیر است:"
msgid "PyUnstable"
msgstr "PyUnstable"