Skip to content

Commit 0d366ff

Browse files
author
GitHub Action's update-translation job
committed
Update translation from Transifex
1 parent 2863281 commit 0d366ff

File tree

6 files changed

+1430
-1189
lines changed

6 files changed

+1430
-1189
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ f'''![build](https://github.com/python/python-docs-pl/workflows/.github/workflow
1515
![{translators} tłumaczy](https://img.shields.io/badge/tłumaczy-{translators}-0.svg)''')
1616
]]] -->
1717
![build](https://github.com/python/python-docs-pl/workflows/.github/workflows/update-lint-and-build.yml/badge.svg)
18-
![61.14% przełącznika języków](https://img.shields.io/badge/przełącznik_języków-61.14%25-0.svg)
19-
![postęp tłumaczenia całości dokumentacji](https://img.shields.io/badge/całość-4.17%25-0.svg)
18+
![61.46% przełącznika języków](https://img.shields.io/badge/przełącznik_języków-61.46%25-0.svg)
19+
![postęp tłumaczenia całości dokumentacji](https://img.shields.io/badge/całość-4.20%25-0.svg)
2020
![6 tłumaczy](https://img.shields.io/badge/tłumaczy-6-0.svg)
2121
<!-- [[[end]]] -->
2222

bugs.po

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ msgid ""
1111
msgstr ""
1212
"Project-Id-Version: Python 3.11\n"
1313
"Report-Msgid-Bugs-To: \n"
14-
"POT-Creation-Date: 2024-08-04 00:23+0000\n"
14+
"POT-Creation-Date: 2024-08-23 15:32+0000\n"
1515
"PO-Revision-Date: 2023-05-24 02:08+0000\n"
1616
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>, 2023\n"
1717
"Language-Team: Polish (https://app.transifex.com/python-doc/teams/5390/pl/)\n"

c-api/stable.po

Lines changed: 224 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,224 @@
1+
# SOME DESCRIPTIVE TITLE.
2+
# Copyright (C) 2001-2024, Python Software Foundation
3+
# This file is distributed under the same license as the Python package.
4+
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5+
#
6+
# Translators:
7+
# Rafael Fontenelle <rffontenelle@gmail.com>, 2024
8+
#
9+
#, fuzzy
10+
msgid ""
11+
msgstr ""
12+
"Project-Id-Version: Python 3.11\n"
13+
"Report-Msgid-Bugs-To: \n"
14+
"POT-Creation-Date: 2024-08-30 15:36+0000\n"
15+
"PO-Revision-Date: 2023-05-24 02:09+0000\n"
16+
"Last-Translator: Rafael Fontenelle <rffontenelle@gmail.com>, 2024\n"
17+
"Language-Team: Polish (https://app.transifex.com/python-doc/teams/5390/pl/)\n"
18+
"MIME-Version: 1.0\n"
19+
"Content-Type: text/plain; charset=UTF-8\n"
20+
"Content-Transfer-Encoding: 8bit\n"
21+
"Language: pl\n"
22+
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && "
23+
"(n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && "
24+
"n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
25+
26+
msgid "C API Stability"
27+
msgstr ""
28+
29+
msgid ""
30+
"Python's C API is covered by the Backwards Compatibility Policy, :pep:`387`. "
31+
"While the C API will change with every minor release (e.g. from 3.9 to "
32+
"3.10), most changes will be source-compatible, typically by only adding new "
33+
"API. Changing existing API or removing API is only done after a deprecation "
34+
"period or to fix serious issues."
35+
msgstr ""
36+
37+
msgid ""
38+
"CPython's Application Binary Interface (ABI) is forward- and backwards-"
39+
"compatible across a minor release (if these are compiled the same way; see :"
40+
"ref:`stable-abi-platform` below). So, code compiled for Python 3.10.0 will "
41+
"work on 3.10.8 and vice versa, but will need to be compiled separately for "
42+
"3.9.x and 3.11.x."
43+
msgstr ""
44+
45+
msgid ""
46+
"Names prefixed by an underscore, such as ``_Py_InternalState``, are private "
47+
"API that can change without notice even in patch releases."
48+
msgstr ""
49+
50+
msgid "Stable Application Binary Interface"
51+
msgstr ""
52+
53+
msgid ""
54+
"For simplicity, this document talks about *extensions*, but the Limited API "
55+
"and Stable ABI work the same way for all uses of the API – for example, "
56+
"embedding Python."
57+
msgstr ""
58+
59+
msgid "Limited C API"
60+
msgstr ""
61+
62+
msgid ""
63+
"Python 3.2 introduced the *Limited API*, a subset of Python's C API. "
64+
"Extensions that only use the Limited API can be compiled once and work with "
65+
"multiple versions of Python. Contents of the Limited API are :ref:`listed "
66+
"below <limited-api-list>`."
67+
msgstr ""
68+
69+
msgid ""
70+
"Define this macro before including ``Python.h`` to opt in to only use the "
71+
"Limited API, and to select the Limited API version."
72+
msgstr ""
73+
74+
msgid ""
75+
"Define ``Py_LIMITED_API`` to the value of :c:macro:`PY_VERSION_HEX` "
76+
"corresponding to the lowest Python version your extension supports. The "
77+
"extension will work without recompilation with all Python 3 releases from "
78+
"the specified one onward, and can use Limited API introduced up to that "
79+
"version."
80+
msgstr ""
81+
82+
msgid ""
83+
"Rather than using the ``PY_VERSION_HEX`` macro directly, hardcode a minimum "
84+
"minor version (e.g. ``0x030A0000`` for Python 3.10) for stability when "
85+
"compiling with future Python versions."
86+
msgstr ""
87+
88+
msgid ""
89+
"You can also define ``Py_LIMITED_API`` to ``3``. This works the same as "
90+
"``0x03020000`` (Python 3.2, the version that introduced Limited API)."
91+
msgstr ""
92+
93+
msgid "Stable ABI"
94+
msgstr "stabilnego ABI"
95+
96+
msgid ""
97+
"To enable this, Python provides a *Stable ABI*: a set of symbols that will "
98+
"remain compatible across Python 3.x versions."
99+
msgstr ""
100+
101+
msgid ""
102+
"The Stable ABI contains symbols exposed in the :ref:`Limited API <limited-c-"
103+
"api>`, but also other ones – for example, functions necessary to support "
104+
"older versions of the Limited API."
105+
msgstr ""
106+
107+
msgid ""
108+
"On Windows, extensions that use the Stable ABI should be linked against "
109+
"``python3.dll`` rather than a version-specific library such as ``python39."
110+
"dll``."
111+
msgstr ""
112+
113+
msgid ""
114+
"On some platforms, Python will look for and load shared library files named "
115+
"with the ``abi3`` tag (e.g. ``mymodule.abi3.so``). It does not check if such "
116+
"extensions conform to a Stable ABI. The user (or their packaging tools) need "
117+
"to ensure that, for example, extensions built with the 3.10+ Limited API are "
118+
"not installed for lower versions of Python."
119+
msgstr ""
120+
121+
msgid ""
122+
"All functions in the Stable ABI are present as functions in Python's shared "
123+
"library, not solely as macros. This makes them usable from languages that "
124+
"don't use the C preprocessor."
125+
msgstr ""
126+
127+
msgid "Limited API Scope and Performance"
128+
msgstr ""
129+
130+
msgid ""
131+
"The goal for the Limited API is to allow everything that is possible with "
132+
"the full C API, but possibly with a performance penalty."
133+
msgstr ""
134+
135+
msgid ""
136+
"For example, while :c:func:`PyList_GetItem` is available, its “unsafe” macro "
137+
"variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it "
138+
"can rely on version-specific implementation details of the list object."
139+
msgstr ""
140+
141+
msgid ""
142+
"Without ``Py_LIMITED_API`` defined, some C API functions are inlined or "
143+
"replaced by macros. Defining ``Py_LIMITED_API`` disables this inlining, "
144+
"allowing stability as Python's data structures are improved, but possibly "
145+
"reducing performance."
146+
msgstr ""
147+
148+
msgid ""
149+
"By leaving out the ``Py_LIMITED_API`` definition, it is possible to compile "
150+
"a Limited API extension with a version-specific ABI. This can improve "
151+
"performance for that Python version, but will limit compatibility. Compiling "
152+
"with ``Py_LIMITED_API`` will then yield an extension that can be distributed "
153+
"where a version-specific one is not available – for example, for prereleases "
154+
"of an upcoming Python version."
155+
msgstr ""
156+
157+
msgid "Limited API Caveats"
158+
msgstr ""
159+
160+
msgid ""
161+
"Note that compiling with ``Py_LIMITED_API`` is *not* a complete guarantee "
162+
"that code conforms to the :ref:`Limited API <limited-c-api>` or the :ref:"
163+
"`Stable ABI <stable-abi>`. ``Py_LIMITED_API`` only covers definitions, but "
164+
"an API also includes other issues, such as expected semantics."
165+
msgstr ""
166+
167+
msgid ""
168+
"One issue that ``Py_LIMITED_API`` does not guard against is calling a "
169+
"function with arguments that are invalid in a lower Python version. For "
170+
"example, consider a function that starts accepting ``NULL`` for an argument. "
171+
"In Python 3.9, ``NULL`` now selects a default behavior, but in Python 3.8, "
172+
"the argument will be used directly, causing a ``NULL`` dereference and "
173+
"crash. A similar argument works for fields of structs."
174+
msgstr ""
175+
176+
msgid ""
177+
"Another issue is that some struct fields are currently not hidden when "
178+
"``Py_LIMITED_API`` is defined, even though they're part of the Limited API."
179+
msgstr ""
180+
181+
msgid ""
182+
"For these reasons, we recommend testing an extension with *all* minor Python "
183+
"versions it supports, and preferably to build with the *lowest* such version."
184+
msgstr ""
185+
186+
msgid ""
187+
"We also recommend reviewing documentation of all used API to check if it is "
188+
"explicitly part of the Limited API. Even with ``Py_LIMITED_API`` defined, a "
189+
"few private declarations are exposed for technical reasons (or even "
190+
"unintentionally, as bugs)."
191+
msgstr ""
192+
193+
msgid ""
194+
"Also note that the Limited API is not necessarily stable: compiling with "
195+
"``Py_LIMITED_API`` with Python 3.8 means that the extension will run with "
196+
"Python 3.12, but it will not necessarily *compile* with Python 3.12. In "
197+
"particular, parts of the Limited API may be deprecated and removed, provided "
198+
"that the Stable ABI stays stable."
199+
msgstr ""
200+
201+
msgid "Platform Considerations"
202+
msgstr ""
203+
204+
msgid ""
205+
"ABI stability depends not only on Python, but also on the compiler used, "
206+
"lower-level libraries and compiler options. For the purposes of the :ref:"
207+
"`Stable ABI <stable-abi>`, these details define a “platform”. They usually "
208+
"depend on the OS type and processor architecture"
209+
msgstr ""
210+
211+
msgid ""
212+
"It is the responsibility of each particular distributor of Python to ensure "
213+
"that all Python versions on a particular platform are built in a way that "
214+
"does not break the Stable ABI. This is the case with Windows and macOS "
215+
"releases from ``python.org`` and many third-party distributors."
216+
msgstr ""
217+
218+
msgid "Contents of Limited API"
219+
msgstr ""
220+
221+
msgid ""
222+
"Currently, the :ref:`Limited API <limited-c-api>` includes the following "
223+
"items:"
224+
msgstr ""

0 commit comments

Comments
 (0)