@@ -13,7 +13,7 @@ msgid ""
1313msgstr ""
1414"Project-Id-Version : Python 3.13\n "
1515"Report-Msgid-Bugs-To : \n "
16- "POT-Creation-Date : 2024-11-29 14:18+0000\n "
16+ "POT-Creation-Date : 2024-12-06 14:18+0000\n "
1717"PO-Revision-Date : 2021-06-28 00:50+0000\n "
1818"Last-Translator : qqfunc, 2024\n "
1919"Language-Team : Japanese (https://app.transifex.com/python-doc/teams/5390/ "
@@ -116,8 +116,8 @@ msgstr ""
116116#: ../../c-api/stable.rst:67
117117msgid ""
118118"Python 3.2 introduced the *Limited API*, a subset of Python's C API. "
119- "Extensions that only use the Limited API can be compiled once and work with "
120- "multiple versions of Python. Contents of the Limited API are :ref:`listed "
119+ "Extensions that only use the Limited API can be compiled once and be loaded "
120+ "on multiple versions of Python. Contents of the Limited API are :ref:`listed "
121121"below <limited-api-list>`."
122122msgstr ""
123123
@@ -133,9 +133,8 @@ msgstr ""
133133msgid ""
134134"Define ``Py_LIMITED_API`` to the value of :c:macro:`PY_VERSION_HEX` "
135135"corresponding to the lowest Python version your extension supports. The "
136- "extension will work without recompilation with all Python 3 releases from "
137- "the specified one onward, and can use Limited API introduced up to that "
138- "version."
136+ "extension will be ABI-compatible with all Python 3 releases from the "
137+ "specified one onward, and can use Limited API introduced up to that version."
139138msgstr ""
140139
141140#: ../../c-api/stable.rst:83
@@ -164,17 +163,26 @@ msgstr "Stable ABI"
164163#: ../../c-api/stable.rst:96
165164msgid ""
166165"To enable this, Python provides a *Stable ABI*: a set of symbols that will "
167- "remain compatible across Python 3.x versions."
166+ "remain ABI- compatible across Python 3.x versions."
168167msgstr ""
169168
170- #: ../../c-api/stable.rst:99
169+ #: ../../c-api/stable.rst:101
170+ msgid ""
171+ "The Stable ABI prevents ABI issues, like linker errors due to missing "
172+ "symbols or data corruption due to changes in structure layouts or function "
173+ "signatures. However, other changes in Python can change the *behavior* of "
174+ "extensions. See Python's Backwards Compatibility Policy (:pep:`387`) for "
175+ "details."
176+ msgstr ""
177+
178+ #: ../../c-api/stable.rst:107
171179msgid ""
172180"The Stable ABI contains symbols exposed in the :ref:`Limited API <limited-c-"
173181"api>`, but also other ones – for example, functions necessary to support "
174182"older versions of the Limited API."
175183msgstr ""
176184
177- #: ../../c-api/stable.rst:103
185+ #: ../../c-api/stable.rst:111
178186msgid ""
179187"On Windows, extensions that use the Stable ABI should be linked against "
180188"``python3.dll`` rather than a version-specific library such as ``python39."
@@ -184,7 +192,7 @@ msgstr ""
184192"バージョン固有のライブラリではなく、 ``python3.dll`` に対してリンクする必要が"
185193"あります。"
186194
187- #: ../../c-api/stable.rst:107
195+ #: ../../c-api/stable.rst:115
188196msgid ""
189197"On some platforms, Python will look for and load shared library files named "
190198"with the ``abi3`` tag (e.g. ``mymodule.abi3.so``). It does not check if such "
@@ -199,7 +207,7 @@ msgstr ""
199207"れた拡張モジュールが、それ以下のバージョンの Python にインストールされないこ"
200208"とを確認する必要があります。"
201209
202- #: ../../c-api/stable.rst:114
210+ #: ../../c-api/stable.rst:122
203211msgid ""
204212"All functions in the Stable ABI are present as functions in Python's shared "
205213"library, not solely as macros. This makes them usable from languages that "
@@ -209,19 +217,19 @@ msgstr ""
209217"イブラリの関数として存在します。そのため、Cプリプロセッサを使用しない言語から"
210218"使用することができます。"
211219
212- #: ../../c-api/stable.rst:120
220+ #: ../../c-api/stable.rst:128
213221msgid "Limited API Scope and Performance"
214222msgstr "APIスコープとパフォーマンスの制限"
215223
216- #: ../../c-api/stable.rst:122
224+ #: ../../c-api/stable.rst:130
217225msgid ""
218226"The goal for the Limited API is to allow everything that is possible with "
219227"the full C API, but possibly with a performance penalty."
220228msgstr ""
221229"Limited API の目標は、フル C API で可能なすべてのことを実現することですが、お"
222230"そらく性能上の制約があります。"
223231
224- #: ../../c-api/stable.rst:125
232+ #: ../../c-api/stable.rst:133
225233msgid ""
226234"For example, while :c:func:`PyList_GetItem` is available, its “unsafe” macro "
227235"variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it "
@@ -232,7 +240,7 @@ msgstr ""
232240"トのバージョン固有の実装の詳細に依存することができるため、より高速に処理する"
233241"ことができます。"
234242
235- #: ../../c-api/stable.rst:130
243+ #: ../../c-api/stable.rst:138
236244msgid ""
237245"Without ``Py_LIMITED_API`` defined, some C API functions are inlined or "
238246"replaced by macros. Defining ``Py_LIMITED_API`` disables this inlining, "
@@ -244,7 +252,7 @@ msgstr ""
244252"イン化が無効になり、 Python のデータ構造が改善されても安定した動作が可能にな"
245253"りますが、性能が低下する可能性があります。"
246254
247- #: ../../c-api/stable.rst:135
255+ #: ../../c-api/stable.rst:143
248256msgid ""
249257"By leaving out the ``Py_LIMITED_API`` definition, it is possible to compile "
250258"a Limited API extension with a version-specific ABI. This can improve "
@@ -260,19 +268,19 @@ msgstr ""
260268"きない場合、例えば、次期 Python バージョンのプレリリースに対応した拡張モ"
261269"ジュールを配布することができるようになります。"
262270
263- #: ../../c-api/stable.rst:144
271+ #: ../../c-api/stable.rst:152
264272msgid "Limited API Caveats"
265273msgstr "制限付きAPIの注意点"
266274
267- #: ../../c-api/stable.rst:146
275+ #: ../../c-api/stable.rst:154
268276msgid ""
269277"Note that compiling with ``Py_LIMITED_API`` is *not* a complete guarantee "
270278"that code conforms to the :ref:`Limited API <limited-c-api>` or the :ref:"
271279"`Stable ABI <stable-abi>`. ``Py_LIMITED_API`` only covers definitions, but "
272280"an API also includes other issues, such as expected semantics."
273281msgstr ""
274282
275- #: ../../c-api/stable.rst:151
283+ #: ../../c-api/stable.rst:159
276284msgid ""
277285"One issue that ``Py_LIMITED_API`` does not guard against is calling a "
278286"function with arguments that are invalid in a lower Python version. For "
@@ -287,15 +295,15 @@ msgstr ""
287295"Python 3.8 ではこの引数は直接使用され、 ``NULL`` の参照外れを起こしクラッシュ"
288296"します。同様の引数は、構造体のフィールドに対しても機能します。"
289297
290- #: ../../c-api/stable.rst:158
298+ #: ../../c-api/stable.rst:166
291299msgid ""
292300"Another issue is that some struct fields are currently not hidden when "
293301"``Py_LIMITED_API`` is defined, even though they're part of the Limited API."
294302msgstr ""
295303"もう一つの問題は、一部の構造体フィールドがLimited APIの一部であるにもかかわら"
296304"ず、 ``Py_LIMITED_API`` が定義されたときに現在非表示になっていないことです。"
297305
298- #: ../../c-api/stable.rst:161
306+ #: ../../c-api/stable.rst:169
299307msgid ""
300308"For these reasons, we recommend testing an extension with *all* minor Python "
301309"versions it supports, and preferably to build with the *lowest* such version."
@@ -304,7 +312,7 @@ msgstr ""
304312"Python バージョンでテストすること、そしてできれば *最も低い* バージョンでビル"
305313"ドすることを推奨します。"
306314
307- #: ../../c-api/stable.rst:164
315+ #: ../../c-api/stable.rst:172
308316msgid ""
309317"We also recommend reviewing documentation of all used API to check if it is "
310318"explicitly part of the Limited API. Even with ``Py_LIMITED_API`` defined, a "
@@ -316,7 +324,7 @@ msgstr ""
316324"が定義されていても、技術的な理由で(あるいはバグとして意図せず)いくつかのプラ"
317325"イベート宣言が公開されることがあります。"
318326
319- #: ../../c-api/stable.rst:169
327+ #: ../../c-api/stable.rst:177
320328msgid ""
321329"Also note that the Limited API is not necessarily stable: compiling with "
322330"``Py_LIMITED_API`` with Python 3.8 means that the extension will run with "
@@ -329,19 +337,19 @@ msgstr ""
329337"らないことに注意してください。特に、Limited API の一部は、 Stable ABI が安定"
330338"している限り、非推奨で削除されるかもしれません。"
331339
332- #: ../../c-api/stable.rst:179
340+ #: ../../c-api/stable.rst:187
333341msgid "Platform Considerations"
334342msgstr "プラットフォームで考慮すべき点"
335343
336- #: ../../c-api/stable.rst:181
344+ #: ../../c-api/stable.rst:189
337345msgid ""
338346"ABI stability depends not only on Python, but also on the compiler used, "
339347"lower-level libraries and compiler options. For the purposes of the :ref:"
340348"`Stable ABI <stable-abi>`, these details define a “platform”. They usually "
341349"depend on the OS type and processor architecture"
342350msgstr ""
343351
344- #: ../../c-api/stable.rst:186
352+ #: ../../c-api/stable.rst:194
345353msgid ""
346354"It is the responsibility of each particular distributor of Python to ensure "
347355"that all Python versions on a particular platform are built in a way that "
@@ -353,11 +361,11 @@ msgstr ""
353361"これは ``python.org`` や多くのサードパーティーの配布元からの Windows と "
354362"macOS のリリースの場合です。"
355363
356- #: ../../c-api/stable.rst:196
364+ #: ../../c-api/stable.rst:204
357365msgid "Contents of Limited API"
358366msgstr "限定版APIの内容"
359367
360- #: ../../c-api/stable.rst:199
368+ #: ../../c-api/stable.rst:207
361369msgid ""
362370"Currently, the :ref:`Limited API <limited-c-api>` includes the following "
363371"items:"
0 commit comments