Skip to content

Sync with CPython 3.13 #984

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 20 commits into from
Oct 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
228 changes: 131 additions & 97 deletions .scripts/poetry.lock

Large diffs are not rendered by default.

115 changes: 60 additions & 55 deletions c-api/code.po
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3.13\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-09-24 07:20+0000\n"
"POT-Creation-Date: 2024-10-09 00:13+0000\n"
"PO-Revision-Date: 2015-12-09 17:51+0000\n"
"Last-Translator: Liang-Bo Wang <[email protected]>\n"
"Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-"
Expand Down Expand Up @@ -48,180 +48,185 @@ msgid ""
msgstr ""

#: ../../c-api/code.rst:35
msgid "Return the number of free variables in a code object."
msgid ""
"Return the number of :term:`free (closure) variables <closure variable>` in "
"a code object."
msgstr ""

#: ../../c-api/code.rst:39
msgid "Return the position of the first free variable in a code object."
#: ../../c-api/code.rst:40
msgid ""
"Return the position of the first :term:`free (closure) variable <closure "
"variable>` in a code object."
msgstr ""

#: ../../c-api/code.rst:43
#: ../../c-api/code.rst:45
msgid ""
"Renamed from ``PyCode_GetFirstFree`` as part of :ref:`unstable-c-api`. The "
"old name is deprecated, but will remain available until the signature "
"changes again."
msgstr ""

#: ../../c-api/code.rst:49
#: ../../c-api/code.rst:51
msgid ""
"Return a new code object. If you need a dummy code object to create a "
"frame, use :c:func:`PyCode_NewEmpty` instead."
msgstr ""

#: ../../c-api/code.rst:52
#: ../../c-api/code.rst:54
msgid ""
"Since the definition of the bytecode changes often, calling :c:func:"
"`PyUnstable_Code_New` directly can bind you to a precise Python version."
msgstr ""

#: ../../c-api/code.rst:55
#: ../../c-api/code.rst:57
msgid ""
"The many arguments of this function are inter-dependent in complex ways, "
"meaning that subtle changes to values are likely to result in incorrect "
"execution or VM crashes. Use this function only with extreme care."
msgstr ""

#: ../../c-api/code.rst:59
#: ../../c-api/code.rst:61
msgid "Added ``qualname`` and ``exceptiontable`` parameters."
msgstr "新增 ``qualname`` 和 ``exceptiontable`` 參數。"

#: ../../c-api/code.rst:66
#: ../../c-api/code.rst:68
msgid ""
"Renamed from ``PyCode_New`` as part of :ref:`unstable-c-api`. The old name "
"is deprecated, but will remain available until the signature changes again."
msgstr ""

#: ../../c-api/code.rst:72
#: ../../c-api/code.rst:74
msgid ""
"Similar to :c:func:`PyUnstable_Code_New`, but with an extra "
"\"posonlyargcount\" for positional-only arguments. The same caveats that "
"apply to ``PyUnstable_Code_New`` also apply to this function."
msgstr ""

#: ../../c-api/code.rst:77
#: ../../c-api/code.rst:79
msgid "as ``PyCode_NewWithPosOnlyArgs``"
msgstr ""

#: ../../c-api/code.rst:79
#: ../../c-api/code.rst:81
msgid "Added ``qualname`` and ``exceptiontable`` parameters."
msgstr "新增 ``qualname`` 和 ``exceptiontable`` 參數。"

#: ../../c-api/code.rst:84
#: ../../c-api/code.rst:86
msgid ""
"Renamed to ``PyUnstable_Code_NewWithPosOnlyArgs``. The old name is "
"deprecated, but will remain available until the signature changes again."
msgstr ""

#: ../../c-api/code.rst:90
#: ../../c-api/code.rst:92
msgid ""
"Return a new empty code object with the specified filename, function name, "
"and first line number. The resulting code object will raise an ``Exception`` "
"if executed."
msgstr ""

#: ../../c-api/code.rst:96
#: ../../c-api/code.rst:98
msgid ""
"Return the line number of the instruction that occurs on or before "
"``byte_offset`` and ends after it. If you just need the line number of a "
"frame, use :c:func:`PyFrame_GetLineNumber` instead."
msgstr ""

#: ../../c-api/code.rst:99
#: ../../c-api/code.rst:101
msgid ""
"For efficiently iterating over the line numbers in a code object, use :pep:"
"`the API described in PEP 626 <0626#out-of-process-debuggers-and-profilers>`."
msgstr ""

#: ../../c-api/code.rst:104
#: ../../c-api/code.rst:106
msgid ""
"Sets the passed ``int`` pointers to the source code line and column numbers "
"for the instruction at ``byte_offset``. Sets the value to ``0`` when "
"information is not available for any particular element."
msgstr ""

#: ../../c-api/code.rst:108
#: ../../c-api/code.rst:110
msgid "Returns ``1`` if the function succeeds and 0 otherwise."
msgstr ""

#: ../../c-api/code.rst:114
#: ../../c-api/code.rst:116
msgid ""
"Equivalent to the Python code ``getattr(co, 'co_code')``. Returns a strong "
"reference to a :c:type:`PyBytesObject` representing the bytecode in a code "
"object. On error, ``NULL`` is returned and an exception is raised."
msgstr ""

#: ../../c-api/code.rst:119
#: ../../c-api/code.rst:121
msgid ""
"This ``PyBytesObject`` may be created on-demand by the interpreter and does "
"not necessarily represent the bytecode actually executed by CPython. The "
"primary use case for this function is debuggers and profilers."
msgstr ""

#: ../../c-api/code.rst:127
#: ../../c-api/code.rst:129
msgid ""
"Equivalent to the Python code ``getattr(co, 'co_varnames')``. Returns a new "
"reference to a :c:type:`PyTupleObject` containing the names of the local "
"variables. On error, ``NULL`` is returned and an exception is raised."
msgstr ""

#: ../../c-api/code.rst:136
#: ../../c-api/code.rst:138
msgid ""
"Equivalent to the Python code ``getattr(co, 'co_cellvars')``. Returns a new "
"reference to a :c:type:`PyTupleObject` containing the names of the local "
"variables that are referenced by nested functions. On error, ``NULL`` is "
"returned and an exception is raised."
msgstr ""

#: ../../c-api/code.rst:145
#: ../../c-api/code.rst:147
msgid ""
"Equivalent to the Python code ``getattr(co, 'co_freevars')``. Returns a new "
"reference to a :c:type:`PyTupleObject` containing the names of the free "
"variables. On error, ``NULL`` is returned and an exception is raised."
"reference to a :c:type:`PyTupleObject` containing the names of the :term:"
"`free (closure) variables <closure variable>`. On error, ``NULL`` is "
"returned and an exception is raised."
msgstr ""

#: ../../c-api/code.rst:153
#: ../../c-api/code.rst:156
msgid ""
"Register *callback* as a code object watcher for the current interpreter. "
"Return an ID which may be passed to :c:func:`PyCode_ClearWatcher`. In case "
"of error (e.g. no more watcher IDs available), return ``-1`` and set an "
"exception."
msgstr ""

#: ../../c-api/code.rst:162
#: ../../c-api/code.rst:165
msgid ""
"Clear watcher identified by *watcher_id* previously returned from :c:func:"
"`PyCode_AddWatcher` for the current interpreter. Return ``0`` on success, or "
"``-1`` and set an exception on error (e.g. if the given *watcher_id* was "
"never registered.)"
msgstr ""

#: ../../c-api/code.rst:171
#: ../../c-api/code.rst:174
msgid ""
"Enumeration of possible code object watcher events: - "
"``PY_CODE_EVENT_CREATE`` - ``PY_CODE_EVENT_DESTROY``"
msgstr ""

#: ../../c-api/code.rst:179
#: ../../c-api/code.rst:182
msgid "Type of a code object watcher callback function."
msgstr ""

#: ../../c-api/code.rst:181
#: ../../c-api/code.rst:184
msgid ""
"If *event* is ``PY_CODE_EVENT_CREATE``, then the callback is invoked after "
"`co` has been fully initialized. Otherwise, the callback is invoked before "
"the destruction of *co* takes place, so the prior state of *co* can be "
"inspected."
msgstr ""

#: ../../c-api/code.rst:186
#: ../../c-api/code.rst:189
msgid ""
"If *event* is ``PY_CODE_EVENT_DESTROY``, taking a reference in the callback "
"to the about-to-be-destroyed code object will resurrect it and prevent it "
"from being freed at this time. When the resurrected object is destroyed "
"later, any watcher callbacks active at that time will be called again."
msgstr ""

#: ../../c-api/code.rst:191
#: ../../c-api/code.rst:194
msgid ""
"Users of this API should not rely on internal runtime implementation "
"details. Such details may include, but are not limited to, the exact order "
Expand All @@ -231,14 +236,14 @@ msgid ""
"the Python code being executed."
msgstr ""

#: ../../c-api/code.rst:198
#: ../../c-api/code.rst:201
msgid ""
"If the callback sets an exception, it must return ``-1``; this exception "
"will be printed as an unraisable exception using :c:func:"
"`PyErr_WriteUnraisable`. Otherwise it should return ``0``."
msgstr ""

#: ../../c-api/code.rst:202
#: ../../c-api/code.rst:205
msgid ""
"There may already be a pending exception set on entry to the callback. In "
"this case, the callback should return ``0`` with the same exception still "
Expand All @@ -247,85 +252,85 @@ msgid ""
"it before returning."
msgstr ""

#: ../../c-api/code.rst:212
#: ../../c-api/code.rst:215
msgid "Extra information"
msgstr ""

#: ../../c-api/code.rst:214
#: ../../c-api/code.rst:217
msgid ""
"To support low-level extensions to frame evaluation, such as external just-"
"in-time compilers, it is possible to attach arbitrary extra data to code "
"objects."
msgstr ""

#: ../../c-api/code.rst:218
#: ../../c-api/code.rst:221
msgid ""
"These functions are part of the unstable C API tier: this functionality is a "
"CPython implementation detail, and the API may change without deprecation "
"warnings."
msgstr ""

#: ../../c-api/code.rst:224
#: ../../c-api/code.rst:227
msgid "Return a new an opaque index value used to adding data to code objects."
msgstr ""

#: ../../c-api/code.rst:226
#: ../../c-api/code.rst:229
msgid ""
"You generally call this function once (per interpreter) and use the result "
"with ``PyCode_GetExtra`` and ``PyCode_SetExtra`` to manipulate data on "
"individual code objects."
msgstr ""

#: ../../c-api/code.rst:230
#: ../../c-api/code.rst:233
msgid ""
"If *free* is not ``NULL``: when a code object is deallocated, *free* will be "
"called on non-``NULL`` data stored under the new index. Use :c:func:"
"`Py_DecRef` when storing :c:type:`PyObject`."
msgstr ""

#: ../../c-api/code.rst:236
#: ../../c-api/code.rst:239
msgid "as ``_PyEval_RequestCodeExtraIndex``"
msgstr ""

#: ../../c-api/code.rst:240
#: ../../c-api/code.rst:243
msgid ""
"Renamed to ``PyUnstable_Eval_RequestCodeExtraIndex``. The old private name "
"is deprecated, but will be available until the API changes."
msgstr ""

#: ../../c-api/code.rst:246
#: ../../c-api/code.rst:249
msgid ""
"Set *extra* to the extra data stored under the given index. Return 0 on "
"success. Set an exception and return -1 on failure."
msgstr ""

#: ../../c-api/code.rst:249
#: ../../c-api/code.rst:252
msgid ""
"If no data was set under the index, set *extra* to ``NULL`` and return 0 "
"without setting an exception."
msgstr ""

#: ../../c-api/code.rst:254
#: ../../c-api/code.rst:257
msgid "as ``_PyCode_GetExtra``"
msgstr ""

#: ../../c-api/code.rst:258
#: ../../c-api/code.rst:261
msgid ""
"Renamed to ``PyUnstable_Code_GetExtra``. The old private name is deprecated, "
"but will be available until the API changes."
msgstr ""

#: ../../c-api/code.rst:264
#: ../../c-api/code.rst:267
msgid ""
"Set the extra data stored under the given index to *extra*. Return 0 on "
"success. Set an exception and return -1 on failure."
msgstr ""

#: ../../c-api/code.rst:269
#: ../../c-api/code.rst:272
msgid "as ``_PyCode_SetExtra``"
msgstr ""

#: ../../c-api/code.rst:273
#: ../../c-api/code.rst:276
msgid ""
"Renamed to ``PyUnstable_Code_SetExtra``. The old private name is deprecated, "
"but will be available until the API changes."
Expand All @@ -343,22 +348,22 @@ msgstr "code(程式碼)"
msgid "code object"
msgstr "code object(程式碼物件)"

#: ../../c-api/code.rst:62
#: ../../c-api/code.rst:64
msgid "PyCode_New (C function)"
msgstr "PyCode_New(C 函式)"

#: ../../c-api/code.rst:75
#: ../../c-api/code.rst:77
msgid "PyCode_NewWithPosOnlyArgs (C function)"
msgstr "PyCode_NewWithPosOnlyArgs(C 函式)"

#: ../../c-api/code.rst:234
#: ../../c-api/code.rst:237
msgid "_PyEval_RequestCodeExtraIndex (C function)"
msgstr "_PyEval_RequestCodeExtraIndex(C 函式)"

#: ../../c-api/code.rst:252
#: ../../c-api/code.rst:255
msgid "_PyCode_GetExtra (C function)"
msgstr "_PyCode_GetExtra(C 函式)"

#: ../../c-api/code.rst:267
#: ../../c-api/code.rst:270
msgid "_PyCode_SetExtra (C function)"
msgstr "_PyCode_SetExtra(C 函式)"
6 changes: 3 additions & 3 deletions c-api/exceptions.po
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Python 3.13\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-09-27 00:14+0000\n"
"POT-Creation-Date: 2024-10-11 00:13+0000\n"
"PO-Revision-Date: 2018-05-23 14:05+0000\n"
"Last-Translator: Adrian Liaw <[email protected]>\n"
"Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-"
Expand Down Expand Up @@ -267,8 +267,8 @@ msgstr ""
#: ../../c-api/exceptions.rst:234 ../../c-api/exceptions.rst:242
#: ../../c-api/exceptions.rst:253 ../../c-api/exceptions.rst:263
#: ../../c-api/exceptions.rst:271 ../../c-api/exceptions.rst:281
msgid ":ref:`Availability <availability>`: Windows."
msgstr ":ref:`適用 <availability>`:Windows。"
msgid "Availability"
msgstr ""

#: ../../c-api/exceptions.rst:239
msgid ""
Expand Down
Loading