@@ -13,7 +13,7 @@ msgid ""
13
13
msgstr ""
14
14
"Project-Id-Version : Python 3.13\n "
15
15
"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 "
17
17
"PO-Revision-Date : 2021-06-28 00:50+0000\n "
18
18
"Last-Translator : qqfunc, 2024\n "
19
19
"Language-Team : Japanese (https://app.transifex.com/python-doc/teams/5390/ "
@@ -116,8 +116,8 @@ msgstr ""
116
116
#: ../../c-api/stable.rst:67
117
117
msgid ""
118
118
"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 "
121
121
"below <limited-api-list>`."
122
122
msgstr ""
123
123
@@ -133,9 +133,8 @@ msgstr ""
133
133
msgid ""
134
134
"Define ``Py_LIMITED_API`` to the value of :c:macro:`PY_VERSION_HEX` "
135
135
"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."
139
138
msgstr ""
140
139
141
140
#: ../../c-api/stable.rst:83
@@ -164,17 +163,26 @@ msgstr "Stable ABI"
164
163
#: ../../c-api/stable.rst:96
165
164
msgid ""
166
165
"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."
168
167
msgstr ""
169
168
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
171
179
msgid ""
172
180
"The Stable ABI contains symbols exposed in the :ref:`Limited API <limited-c-"
173
181
"api>`, but also other ones – for example, functions necessary to support "
174
182
"older versions of the Limited API."
175
183
msgstr ""
176
184
177
- #: ../../c-api/stable.rst:103
185
+ #: ../../c-api/stable.rst:111
178
186
msgid ""
179
187
"On Windows, extensions that use the Stable ABI should be linked against "
180
188
"``python3.dll`` rather than a version-specific library such as ``python39."
@@ -184,7 +192,7 @@ msgstr ""
184
192
"バージョン固有のライブラリではなく、 ``python3.dll`` に対してリンクする必要が"
185
193
"あります。"
186
194
187
- #: ../../c-api/stable.rst:107
195
+ #: ../../c-api/stable.rst:115
188
196
msgid ""
189
197
"On some platforms, Python will look for and load shared library files named "
190
198
"with the ``abi3`` tag (e.g. ``mymodule.abi3.so``). It does not check if such "
@@ -199,7 +207,7 @@ msgstr ""
199
207
"れた拡張モジュールが、それ以下のバージョンの Python にインストールされないこ"
200
208
"とを確認する必要があります。"
201
209
202
- #: ../../c-api/stable.rst:114
210
+ #: ../../c-api/stable.rst:122
203
211
msgid ""
204
212
"All functions in the Stable ABI are present as functions in Python's shared "
205
213
"library, not solely as macros. This makes them usable from languages that "
@@ -209,19 +217,19 @@ msgstr ""
209
217
"イブラリの関数として存在します。そのため、Cプリプロセッサを使用しない言語から"
210
218
"使用することができます。"
211
219
212
- #: ../../c-api/stable.rst:120
220
+ #: ../../c-api/stable.rst:128
213
221
msgid "Limited API Scope and Performance"
214
222
msgstr "APIスコープとパフォーマンスの制限"
215
223
216
- #: ../../c-api/stable.rst:122
224
+ #: ../../c-api/stable.rst:130
217
225
msgid ""
218
226
"The goal for the Limited API is to allow everything that is possible with "
219
227
"the full C API, but possibly with a performance penalty."
220
228
msgstr ""
221
229
"Limited API の目標は、フル C API で可能なすべてのことを実現することですが、お"
222
230
"そらく性能上の制約があります。"
223
231
224
- #: ../../c-api/stable.rst:125
232
+ #: ../../c-api/stable.rst:133
225
233
msgid ""
226
234
"For example, while :c:func:`PyList_GetItem` is available, its “unsafe” macro "
227
235
"variant :c:func:`PyList_GET_ITEM` is not. The macro can be faster because it "
@@ -232,7 +240,7 @@ msgstr ""
232
240
"トのバージョン固有の実装の詳細に依存することができるため、より高速に処理する"
233
241
"ことができます。"
234
242
235
- #: ../../c-api/stable.rst:130
243
+ #: ../../c-api/stable.rst:138
236
244
msgid ""
237
245
"Without ``Py_LIMITED_API`` defined, some C API functions are inlined or "
238
246
"replaced by macros. Defining ``Py_LIMITED_API`` disables this inlining, "
@@ -244,7 +252,7 @@ msgstr ""
244
252
"イン化が無効になり、 Python のデータ構造が改善されても安定した動作が可能にな"
245
253
"りますが、性能が低下する可能性があります。"
246
254
247
- #: ../../c-api/stable.rst:135
255
+ #: ../../c-api/stable.rst:143
248
256
msgid ""
249
257
"By leaving out the ``Py_LIMITED_API`` definition, it is possible to compile "
250
258
"a Limited API extension with a version-specific ABI. This can improve "
@@ -260,19 +268,19 @@ msgstr ""
260
268
"きない場合、例えば、次期 Python バージョンのプレリリースに対応した拡張モ"
261
269
"ジュールを配布することができるようになります。"
262
270
263
- #: ../../c-api/stable.rst:144
271
+ #: ../../c-api/stable.rst:152
264
272
msgid "Limited API Caveats"
265
273
msgstr "制限付きAPIの注意点"
266
274
267
- #: ../../c-api/stable.rst:146
275
+ #: ../../c-api/stable.rst:154
268
276
msgid ""
269
277
"Note that compiling with ``Py_LIMITED_API`` is *not* a complete guarantee "
270
278
"that code conforms to the :ref:`Limited API <limited-c-api>` or the :ref:"
271
279
"`Stable ABI <stable-abi>`. ``Py_LIMITED_API`` only covers definitions, but "
272
280
"an API also includes other issues, such as expected semantics."
273
281
msgstr ""
274
282
275
- #: ../../c-api/stable.rst:151
283
+ #: ../../c-api/stable.rst:159
276
284
msgid ""
277
285
"One issue that ``Py_LIMITED_API`` does not guard against is calling a "
278
286
"function with arguments that are invalid in a lower Python version. For "
@@ -287,15 +295,15 @@ msgstr ""
287
295
"Python 3.8 ではこの引数は直接使用され、 ``NULL`` の参照外れを起こしクラッシュ"
288
296
"します。同様の引数は、構造体のフィールドに対しても機能します。"
289
297
290
- #: ../../c-api/stable.rst:158
298
+ #: ../../c-api/stable.rst:166
291
299
msgid ""
292
300
"Another issue is that some struct fields are currently not hidden when "
293
301
"``Py_LIMITED_API`` is defined, even though they're part of the Limited API."
294
302
msgstr ""
295
303
"もう一つの問題は、一部の構造体フィールドがLimited APIの一部であるにもかかわら"
296
304
"ず、 ``Py_LIMITED_API`` が定義されたときに現在非表示になっていないことです。"
297
305
298
- #: ../../c-api/stable.rst:161
306
+ #: ../../c-api/stable.rst:169
299
307
msgid ""
300
308
"For these reasons, we recommend testing an extension with *all* minor Python "
301
309
"versions it supports, and preferably to build with the *lowest* such version."
@@ -304,7 +312,7 @@ msgstr ""
304
312
"Python バージョンでテストすること、そしてできれば *最も低い* バージョンでビル"
305
313
"ドすることを推奨します。"
306
314
307
- #: ../../c-api/stable.rst:164
315
+ #: ../../c-api/stable.rst:172
308
316
msgid ""
309
317
"We also recommend reviewing documentation of all used API to check if it is "
310
318
"explicitly part of the Limited API. Even with ``Py_LIMITED_API`` defined, a "
@@ -316,7 +324,7 @@ msgstr ""
316
324
"が定義されていても、技術的な理由で(あるいはバグとして意図せず)いくつかのプラ"
317
325
"イベート宣言が公開されることがあります。"
318
326
319
- #: ../../c-api/stable.rst:169
327
+ #: ../../c-api/stable.rst:177
320
328
msgid ""
321
329
"Also note that the Limited API is not necessarily stable: compiling with "
322
330
"``Py_LIMITED_API`` with Python 3.8 means that the extension will run with "
@@ -329,19 +337,19 @@ msgstr ""
329
337
"らないことに注意してください。特に、Limited API の一部は、 Stable ABI が安定"
330
338
"している限り、非推奨で削除されるかもしれません。"
331
339
332
- #: ../../c-api/stable.rst:179
340
+ #: ../../c-api/stable.rst:187
333
341
msgid "Platform Considerations"
334
342
msgstr "プラットフォームで考慮すべき点"
335
343
336
- #: ../../c-api/stable.rst:181
344
+ #: ../../c-api/stable.rst:189
337
345
msgid ""
338
346
"ABI stability depends not only on Python, but also on the compiler used, "
339
347
"lower-level libraries and compiler options. For the purposes of the :ref:"
340
348
"`Stable ABI <stable-abi>`, these details define a “platform”. They usually "
341
349
"depend on the OS type and processor architecture"
342
350
msgstr ""
343
351
344
- #: ../../c-api/stable.rst:186
352
+ #: ../../c-api/stable.rst:194
345
353
msgid ""
346
354
"It is the responsibility of each particular distributor of Python to ensure "
347
355
"that all Python versions on a particular platform are built in a way that "
@@ -353,11 +361,11 @@ msgstr ""
353
361
"これは ``python.org`` や多くのサードパーティーの配布元からの Windows と "
354
362
"macOS のリリースの場合です。"
355
363
356
- #: ../../c-api/stable.rst:196
364
+ #: ../../c-api/stable.rst:204
357
365
msgid "Contents of Limited API"
358
366
msgstr "限定版APIの内容"
359
367
360
- #: ../../c-api/stable.rst:199
368
+ #: ../../c-api/stable.rst:207
361
369
msgid ""
362
370
"Currently, the :ref:`Limited API <limited-c-api>` includes the following "
363
371
"items:"
0 commit comments