https://github.com/python/cpython/commit/d9571c938c13ae11e462e5d96080c93fef684d3a
commit: d9571c938c13ae11e462e5d96080c93fef684d3a
branch: 3.14
author: Miss Islington (bot) <31488909+miss-isling...@users.noreply.github.com>
committer: AA-Turner <9087854+aa-tur...@users.noreply.github.com>
date: 2025-05-10T00:59:30Z
summary:

[3.14] GH-132983: PEP 7 and Argument Clinic changes for zstd (GH-133791) 
(#133792)

GH-132983: PEP 7 and Argument Clinic changes for zstd (GH-133791)
(cherry picked from commit 1978904a2fc6705303486f35336054d455b5018a)

Co-authored-by: Adam Turner <9087854+aa-tur...@users.noreply.github.com>

files:
M Lib/compression/zstd/__init__.py
M Lib/test/test_zstd.py
M Modules/_zstd/_zstdmodule.c
M Modules/_zstd/_zstdmodule.h
M Modules/_zstd/clinic/_zstdmodule.c.h
M Modules/_zstd/compressor.c
M Modules/_zstd/decompressor.c
M Modules/_zstd/zstddict.c

diff --git a/Lib/compression/zstd/__init__.py b/Lib/compression/zstd/__init__.py
index a1054adb64170b..e7b2f427164244 100644
--- a/Lib/compression/zstd/__init__.py
+++ b/Lib/compression/zstd/__init__.py
@@ -71,7 +71,7 @@ def get_frame_info(frame_buffer):
     the frame may or may not need a dictionary to be decoded,
     and the ID of such a dictionary is not specified.
     """
-    return FrameInfo(*_zstd._get_frame_info(frame_buffer))
+    return FrameInfo(*_zstd.get_frame_info(frame_buffer))
 
 
 def train_dict(samples, dict_size):
@@ -91,7 +91,7 @@ def train_dict(samples, dict_size):
     chunk_sizes = tuple(_nbytes(sample) for sample in samples)
     if not chunks:
         raise ValueError("samples contained no data; can't train dictionary.")
-    dict_content = _zstd._train_dict(chunks, chunk_sizes, dict_size)
+    dict_content = _zstd.train_dict(chunks, chunk_sizes, dict_size)
     return ZstdDict(dict_content)
 
 
@@ -127,7 +127,7 @@ def finalize_dict(zstd_dict, /, samples, dict_size, level):
     if not chunks:
         raise ValueError("The samples are empty content, can't finalize the"
                          "dictionary.")
-    dict_content = _zstd._finalize_dict(zstd_dict.dict_content,
+    dict_content = _zstd.finalize_dict(zstd_dict.dict_content,
                                         chunks, chunk_sizes,
                                         dict_size, level)
     return ZstdDict(dict_content)
@@ -201,7 +201,7 @@ def bounds(self):
 
         Both the lower and upper bounds are inclusive.
         """
-        return _zstd._get_param_bounds(self.value, is_compress=True)
+        return _zstd.get_param_bounds(self.value, is_compress=True)
 
 
 class DecompressionParameter(enum.IntEnum):
@@ -214,7 +214,7 @@ def bounds(self):
 
         Both the lower and upper bounds are inclusive.
         """
-        return _zstd._get_param_bounds(self.value, is_compress=False)
+        return _zstd.get_param_bounds(self.value, is_compress=False)
 
 
 class Strategy(enum.IntEnum):
@@ -237,4 +237,4 @@ class Strategy(enum.IntEnum):
 
 
 # Check validity of the CompressionParameter & DecompressionParameter types
-_zstd._set_parameter_types(CompressionParameter, DecompressionParameter)
+_zstd.set_parameter_types(CompressionParameter, DecompressionParameter)
diff --git a/Lib/test/test_zstd.py b/Lib/test/test_zstd.py
index cd65c1a66370c8..ff2ead68fa89f5 100644
--- a/Lib/test/test_zstd.py
+++ b/Lib/test/test_zstd.py
@@ -1174,43 +1174,43 @@ def test_finalize_dict_arguments(self):
     def test_train_dict_c(self):
         # argument wrong type
         with self.assertRaises(TypeError):
-            _zstd._train_dict({}, (), 100)
+            _zstd.train_dict({}, (), 100)
         with self.assertRaises(TypeError):
-            _zstd._train_dict(b'', 99, 100)
+            _zstd.train_dict(b'', 99, 100)
         with self.assertRaises(TypeError):
-            _zstd._train_dict(b'', (), 100.1)
+            _zstd.train_dict(b'', (), 100.1)
 
         # size > size_t
         with self.assertRaises(ValueError):
-            _zstd._train_dict(b'', (2**64+1,), 100)
+            _zstd.train_dict(b'', (2**64+1,), 100)
 
         # dict_size <= 0
         with self.assertRaises(ValueError):
-            _zstd._train_dict(b'', (), 0)
+            _zstd.train_dict(b'', (), 0)
 
     def test_finalize_dict_c(self):
         with self.assertRaises(TypeError):
-            _zstd._finalize_dict(1, 2, 3, 4, 5)
+            _zstd.finalize_dict(1, 2, 3, 4, 5)
 
         # argument wrong type
         with self.assertRaises(TypeError):
-            _zstd._finalize_dict({}, b'', (), 100, 5)
+            _zstd.finalize_dict({}, b'', (), 100, 5)
         with self.assertRaises(TypeError):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content, {}, (), 100, 5)
+            _zstd.finalize_dict(TRAINED_DICT.dict_content, {}, (), 100, 5)
         with self.assertRaises(TypeError):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content, b'', 99, 100, 5)
+            _zstd.finalize_dict(TRAINED_DICT.dict_content, b'', 99, 100, 5)
         with self.assertRaises(TypeError):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content, b'', (), 100.1, 5)
+            _zstd.finalize_dict(TRAINED_DICT.dict_content, b'', (), 100.1, 5)
         with self.assertRaises(TypeError):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content, b'', (), 100, 5.1)
+            _zstd.finalize_dict(TRAINED_DICT.dict_content, b'', (), 100, 5.1)
 
         # size > size_t
         with self.assertRaises(ValueError):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content, b'', (2**64+1,), 
100, 5)
+            _zstd.finalize_dict(TRAINED_DICT.dict_content, b'', (2**64+1,), 
100, 5)
 
         # dict_size <= 0
         with self.assertRaises(ValueError):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content, b'', (), 0, 5)
+            _zstd.finalize_dict(TRAINED_DICT.dict_content, b'', (), 0, 5)
 
     def test_train_buffer_protocol_samples(self):
         def _nbytes(dat):
@@ -1232,19 +1232,19 @@ def _nbytes(dat):
         # wrong size list
         with self.assertRaisesRegex(ValueError,
                 "The samples size tuple doesn't match the concatenation's 
size"):
-            _zstd._train_dict(concatenation, tuple(wrong_size_lst), 100*_1K)
+            _zstd.train_dict(concatenation, tuple(wrong_size_lst), 100*_1K)
 
         # correct size list
-        _zstd._train_dict(concatenation, tuple(correct_size_lst), 3*_1K)
+        _zstd.train_dict(concatenation, tuple(correct_size_lst), 3*_1K)
 
         # wrong size list
         with self.assertRaisesRegex(ValueError,
                 "The samples size tuple doesn't match the concatenation's 
size"):
-            _zstd._finalize_dict(TRAINED_DICT.dict_content,
+            _zstd.finalize_dict(TRAINED_DICT.dict_content,
                                   concatenation, tuple(wrong_size_lst), 
300*_1K, 5)
 
         # correct size list
-        _zstd._finalize_dict(TRAINED_DICT.dict_content,
+        _zstd.finalize_dict(TRAINED_DICT.dict_content,
                               concatenation, tuple(correct_size_lst), 300*_1K, 
5)
 
     def test_as_prefix(self):
diff --git a/Modules/_zstd/_zstdmodule.c b/Modules/_zstd/_zstdmodule.c
index 1200d200ae0995..483e88d98b78ba 100644
--- a/Modules/_zstd/_zstdmodule.c
+++ b/Modules/_zstd/_zstdmodule.c
@@ -69,8 +69,7 @@ typedef struct {
     char parameter_name[32];
 } ParameterInfo;
 
-static const ParameterInfo cp_list[] =
-{
+static const ParameterInfo cp_list[] = {
     {ZSTD_c_compressionLevel, "compression_level"},
     {ZSTD_c_windowLog,        "window_log"},
     {ZSTD_c_hashLog,          "hash_log"},
@@ -95,8 +94,7 @@ static const ParameterInfo cp_list[] =
     {ZSTD_c_overlapLog,       "overlap_log"}
 };
 
-static const ParameterInfo dp_list[] =
-{
+static const ParameterInfo dp_list[] = {
     {ZSTD_d_windowLogMax, "window_log_max"}
 };
 
@@ -173,7 +171,7 @@ get_zstd_state(PyObject *module)
 
 
 /*[clinic input]
-_zstd._train_dict
+_zstd.train_dict
 
     samples_bytes: PyBytesObject
         Concatenation of samples.
@@ -187,9 +185,9 @@ Internal function, train a zstd dictionary on sample data.
 [clinic start generated code]*/
 
 static PyObject *
-_zstd__train_dict_impl(PyObject *module, PyBytesObject *samples_bytes,
-                       PyObject *samples_sizes, Py_ssize_t dict_size)
-/*[clinic end generated code: output=b5b4f36347c0addd input=2dce5b57d63923e2]*/
+_zstd_train_dict_impl(PyObject *module, PyBytesObject *samples_bytes,
+                      PyObject *samples_sizes, Py_ssize_t dict_size)
+/*[clinic end generated code: output=8e87fe43935e8f77 input=70fcd8937f2528b6]*/
 {
     // TODO(emmatyping): The preamble and suffix to this function and 
_finalize_dict
     // are pretty similar. We should see if we can refactor them to share that 
code.
@@ -277,7 +275,7 @@ _zstd__train_dict_impl(PyObject *module, PyBytesObject 
*samples_bytes,
 }
 
 /*[clinic input]
-_zstd._finalize_dict
+_zstd.finalize_dict
 
     custom_dict_bytes: PyBytesObject
         Custom dictionary content.
@@ -295,11 +293,11 @@ Internal function, finalize a zstd dictionary.
 [clinic start generated code]*/
 
 static PyObject *
-_zstd__finalize_dict_impl(PyObject *module, PyBytesObject *custom_dict_bytes,
-                          PyBytesObject *samples_bytes,
-                          PyObject *samples_sizes, Py_ssize_t dict_size,
-                          int compression_level)
-/*[clinic end generated code: output=5dc5b520fddba37f input=8afd42a249078460]*/
+_zstd_finalize_dict_impl(PyObject *module, PyBytesObject *custom_dict_bytes,
+                         PyBytesObject *samples_bytes,
+                         PyObject *samples_sizes, Py_ssize_t dict_size,
+                         int compression_level)
+/*[clinic end generated code: output=f91821ba5ae85bda input=130d1508adb55ba1]*/
 {
     Py_ssize_t chunks_number;
     size_t *chunk_sizes = NULL;
@@ -396,7 +394,7 @@ _zstd__finalize_dict_impl(PyObject *module, PyBytesObject 
*custom_dict_bytes,
 
 
 /*[clinic input]
-_zstd._get_param_bounds
+_zstd.get_param_bounds
 
     parameter: int
         The parameter to get bounds.
@@ -407,9 +405,8 @@ Internal function, get 
CompressionParameter/DecompressionParameter bounds.
 [clinic start generated code]*/
 
 static PyObject *
-_zstd__get_param_bounds_impl(PyObject *module, int parameter,
-                             int is_compress)
-/*[clinic end generated code: output=9892cd822f937e79 input=884cd1a01125267d]*/
+_zstd_get_param_bounds_impl(PyObject *module, int parameter, int is_compress)
+/*[clinic end generated code: output=4acf5a876f0620ca input=84e669591e487008]*/
 {
     ZSTD_bounds bound;
     if (is_compress) {
@@ -466,7 +463,7 @@ _zstd_get_frame_size_impl(PyObject *module, Py_buffer 
*frame_buffer)
 }
 
 /*[clinic input]
-_zstd._get_frame_info
+_zstd.get_frame_info
 
     frame_buffer: Py_buffer
         A bytes-like object, containing the header of a zstd frame.
@@ -475,8 +472,8 @@ Internal function, get zstd frame infomation from a frame 
header.
 [clinic start generated code]*/
 
 static PyObject *
-_zstd__get_frame_info_impl(PyObject *module, Py_buffer *frame_buffer)
-/*[clinic end generated code: output=5462855464ecdf81 input=67f1f8e4b7b89c4d]*/
+_zstd_get_frame_info_impl(PyObject *module, Py_buffer *frame_buffer)
+/*[clinic end generated code: output=56e033cf48001929 input=1816f14656b6aa22]*/
 {
     uint64_t decompressed_size;
     uint32_t dict_id;
@@ -508,7 +505,7 @@ _zstd__get_frame_info_impl(PyObject *module, Py_buffer 
*frame_buffer)
 }
 
 /*[clinic input]
-_zstd._set_parameter_types
+_zstd.set_parameter_types
 
     c_parameter_type: object(subclass_of='&PyType_Type')
         CompressionParameter IntEnum type object
@@ -519,9 +516,9 @@ Internal function, set 
CompressionParameter/DecompressionParameter types for val
 [clinic start generated code]*/
 
 static PyObject *
-_zstd__set_parameter_types_impl(PyObject *module, PyObject *c_parameter_type,
-                                PyObject *d_parameter_type)
-/*[clinic end generated code: output=a13d4890ccbd2873 input=4535545d903853d3]*/
+_zstd_set_parameter_types_impl(PyObject *module, PyObject *c_parameter_type,
+                               PyObject *d_parameter_type)
+/*[clinic end generated code: output=f3313b1294f19502 input=30402523871b8280]*/
 {
     _zstd_state* const mod_state = get_zstd_state(module);
 
@@ -544,14 +541,13 @@ _zstd__set_parameter_types_impl(PyObject *module, 
PyObject *c_parameter_type,
 }
 
 static PyMethodDef _zstd_methods[] = {
-    _ZSTD__TRAIN_DICT_METHODDEF
-    _ZSTD__FINALIZE_DICT_METHODDEF
-    _ZSTD__GET_PARAM_BOUNDS_METHODDEF
+    _ZSTD_TRAIN_DICT_METHODDEF
+    _ZSTD_FINALIZE_DICT_METHODDEF
+    _ZSTD_GET_PARAM_BOUNDS_METHODDEF
     _ZSTD_GET_FRAME_SIZE_METHODDEF
-    _ZSTD__GET_FRAME_INFO_METHODDEF
-    _ZSTD__SET_PARAMETER_TYPES_METHODDEF
-
-    {0}
+    _ZSTD_GET_FRAME_INFO_METHODDEF
+    _ZSTD_SET_PARAMETER_TYPES_METHODDEF
+    {NULL, NULL}
 };
 
 static int
@@ -595,7 +591,7 @@ do {                                                        
                 \
     ADD_TYPE(mod_state->ZstdCompressor_type, zstd_compressor_type_spec);
     ADD_TYPE(mod_state->ZstdDecompressor_type, zstd_decompressor_type_spec);
     mod_state->ZstdError = PyErr_NewExceptionWithDoc(
-        "_zstd.ZstdError",
+        "compression.zstd.ZstdError",
         "An error occurred in the zstd library.",
         NULL, NULL);
     if (mod_state->ZstdError == NULL) {
@@ -732,14 +728,15 @@ static struct PyModuleDef_Slot _zstd_slots[] = {
 };
 
 struct PyModuleDef _zstdmodule = {
-    PyModuleDef_HEAD_INIT,
+    .m_base = PyModuleDef_HEAD_INIT,
     .m_name = "_zstd",
+    .m_doc = "Implementation module for Zstandard compression.",
     .m_size = sizeof(_zstd_state),
     .m_slots = _zstd_slots,
     .m_methods = _zstd_methods,
     .m_traverse = _zstd_traverse,
     .m_clear = _zstd_clear,
-    .m_free = _zstd_free
+    .m_free = _zstd_free,
 };
 
 PyMODINIT_FUNC
diff --git a/Modules/_zstd/_zstdmodule.h b/Modules/_zstd/_zstdmodule.h
index 80f4e7e58d5265..d5283ddcf56fe8 100644
--- a/Modules/_zstd/_zstdmodule.h
+++ b/Modules/_zstd/_zstdmodule.h
@@ -20,7 +20,8 @@ extern PyModuleDef _zstdmodule;
 
 /* For clinic type calculations */
 static inline _zstd_state *
-get_zstd_state_from_type(PyTypeObject *type) {
+get_zstd_state_from_type(PyTypeObject *type)
+{
     PyObject *module = PyType_GetModuleByDef(type, &_zstdmodule);
     if (module == NULL) {
         return NULL;
@@ -149,7 +150,8 @@ typedef enum {
 } dictionary_type;
 
 static inline int
-mt_continue_should_break(ZSTD_inBuffer *in, ZSTD_outBuffer *out) {
+mt_continue_should_break(ZSTD_inBuffer *in, ZSTD_outBuffer *out)
+{
     return in->size == in->pos && out->size != out->pos;
 }
 
@@ -163,13 +165,3 @@ set_parameter_error(const _zstd_state* const state, int 
is_compress,
                     int key_v, int value_v);
 
 static const char init_twice_msg[] = "__init__ method is called twice.";
-
-extern PyObject *
-decompress_impl(ZstdDecompressor *self, ZSTD_inBuffer *in,
-                Py_ssize_t max_length,
-                Py_ssize_t initial_size,
-                decompress_type type);
-
-extern PyObject *
-compress_impl(ZstdCompressor *self, Py_buffer *data,
-              ZSTD_EndDirective end_directive);
diff --git a/Modules/_zstd/clinic/_zstdmodule.c.h 
b/Modules/_zstd/clinic/_zstdmodule.c.h
index 2f8225389b7aea..fc9f49813df6f1 100644
--- a/Modules/_zstd/clinic/_zstdmodule.c.h
+++ b/Modules/_zstd/clinic/_zstdmodule.c.h
@@ -9,8 +9,8 @@ preserve
 #include "pycore_abstract.h"      // _PyNumber_Index()
 #include "pycore_modsupport.h"    // _PyArg_CheckPositional()
 
-PyDoc_STRVAR(_zstd__train_dict__doc__,
-"_train_dict($module, samples_bytes, samples_sizes, dict_size, /)\n"
+PyDoc_STRVAR(_zstd_train_dict__doc__,
+"train_dict($module, samples_bytes, samples_sizes, dict_size, /)\n"
 "--\n"
 "\n"
 "Internal function, train a zstd dictionary on sample data.\n"
@@ -22,31 +22,31 @@ PyDoc_STRVAR(_zstd__train_dict__doc__,
 "  dict_size\n"
 "    The size of the dictionary.");
 
-#define _ZSTD__TRAIN_DICT_METHODDEF    \
-    {"_train_dict", _PyCFunction_CAST(_zstd__train_dict), METH_FASTCALL, 
_zstd__train_dict__doc__},
+#define _ZSTD_TRAIN_DICT_METHODDEF    \
+    {"train_dict", _PyCFunction_CAST(_zstd_train_dict), METH_FASTCALL, 
_zstd_train_dict__doc__},
 
 static PyObject *
-_zstd__train_dict_impl(PyObject *module, PyBytesObject *samples_bytes,
-                       PyObject *samples_sizes, Py_ssize_t dict_size);
+_zstd_train_dict_impl(PyObject *module, PyBytesObject *samples_bytes,
+                      PyObject *samples_sizes, Py_ssize_t dict_size);
 
 static PyObject *
-_zstd__train_dict(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
+_zstd_train_dict(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
 {
     PyObject *return_value = NULL;
     PyBytesObject *samples_bytes;
     PyObject *samples_sizes;
     Py_ssize_t dict_size;
 
-    if (!_PyArg_CheckPositional("_train_dict", nargs, 3, 3)) {
+    if (!_PyArg_CheckPositional("train_dict", nargs, 3, 3)) {
         goto exit;
     }
     if (!PyBytes_Check(args[0])) {
-        _PyArg_BadArgument("_train_dict", "argument 1", "bytes", args[0]);
+        _PyArg_BadArgument("train_dict", "argument 1", "bytes", args[0]);
         goto exit;
     }
     samples_bytes = (PyBytesObject *)args[0];
     if (!PyTuple_Check(args[1])) {
-        _PyArg_BadArgument("_train_dict", "argument 2", "tuple", args[1]);
+        _PyArg_BadArgument("train_dict", "argument 2", "tuple", args[1]);
         goto exit;
     }
     samples_sizes = args[1];
@@ -62,15 +62,15 @@ _zstd__train_dict(PyObject *module, PyObject *const *args, 
Py_ssize_t nargs)
         }
         dict_size = ival;
     }
-    return_value = _zstd__train_dict_impl(module, samples_bytes, 
samples_sizes, dict_size);
+    return_value = _zstd_train_dict_impl(module, samples_bytes, samples_sizes, 
dict_size);
 
 exit:
     return return_value;
 }
 
-PyDoc_STRVAR(_zstd__finalize_dict__doc__,
-"_finalize_dict($module, custom_dict_bytes, samples_bytes,\n"
-"               samples_sizes, dict_size, compression_level, /)\n"
+PyDoc_STRVAR(_zstd_finalize_dict__doc__,
+"finalize_dict($module, custom_dict_bytes, samples_bytes, samples_sizes,\n"
+"              dict_size, compression_level, /)\n"
 "--\n"
 "\n"
 "Internal function, finalize a zstd dictionary.\n"
@@ -86,17 +86,17 @@ PyDoc_STRVAR(_zstd__finalize_dict__doc__,
 "  compression_level\n"
 "    Optimize for a specific zstd compression level, 0 means default.");
 
-#define _ZSTD__FINALIZE_DICT_METHODDEF    \
-    {"_finalize_dict", _PyCFunction_CAST(_zstd__finalize_dict), METH_FASTCALL, 
_zstd__finalize_dict__doc__},
+#define _ZSTD_FINALIZE_DICT_METHODDEF    \
+    {"finalize_dict", _PyCFunction_CAST(_zstd_finalize_dict), METH_FASTCALL, 
_zstd_finalize_dict__doc__},
 
 static PyObject *
-_zstd__finalize_dict_impl(PyObject *module, PyBytesObject *custom_dict_bytes,
-                          PyBytesObject *samples_bytes,
-                          PyObject *samples_sizes, Py_ssize_t dict_size,
-                          int compression_level);
+_zstd_finalize_dict_impl(PyObject *module, PyBytesObject *custom_dict_bytes,
+                         PyBytesObject *samples_bytes,
+                         PyObject *samples_sizes, Py_ssize_t dict_size,
+                         int compression_level);
 
 static PyObject *
-_zstd__finalize_dict(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
+_zstd_finalize_dict(PyObject *module, PyObject *const *args, Py_ssize_t nargs)
 {
     PyObject *return_value = NULL;
     PyBytesObject *custom_dict_bytes;
@@ -105,21 +105,21 @@ _zstd__finalize_dict(PyObject *module, PyObject *const 
*args, Py_ssize_t nargs)
     Py_ssize_t dict_size;
     int compression_level;
 
-    if (!_PyArg_CheckPositional("_finalize_dict", nargs, 5, 5)) {
+    if (!_PyArg_CheckPositional("finalize_dict", nargs, 5, 5)) {
         goto exit;
     }
     if (!PyBytes_Check(args[0])) {
-        _PyArg_BadArgument("_finalize_dict", "argument 1", "bytes", args[0]);
+        _PyArg_BadArgument("finalize_dict", "argument 1", "bytes", args[0]);
         goto exit;
     }
     custom_dict_bytes = (PyBytesObject *)args[0];
     if (!PyBytes_Check(args[1])) {
-        _PyArg_BadArgument("_finalize_dict", "argument 2", "bytes", args[1]);
+        _PyArg_BadArgument("finalize_dict", "argument 2", "bytes", args[1]);
         goto exit;
     }
     samples_bytes = (PyBytesObject *)args[1];
     if (!PyTuple_Check(args[2])) {
-        _PyArg_BadArgument("_finalize_dict", "argument 3", "tuple", args[2]);
+        _PyArg_BadArgument("finalize_dict", "argument 3", "tuple", args[2]);
         goto exit;
     }
     samples_sizes = args[2];
@@ -139,14 +139,14 @@ _zstd__finalize_dict(PyObject *module, PyObject *const 
*args, Py_ssize_t nargs)
     if (compression_level == -1 && PyErr_Occurred()) {
         goto exit;
     }
-    return_value = _zstd__finalize_dict_impl(module, custom_dict_bytes, 
samples_bytes, samples_sizes, dict_size, compression_level);
+    return_value = _zstd_finalize_dict_impl(module, custom_dict_bytes, 
samples_bytes, samples_sizes, dict_size, compression_level);
 
 exit:
     return return_value;
 }
 
-PyDoc_STRVAR(_zstd__get_param_bounds__doc__,
-"_get_param_bounds($module, /, parameter, is_compress)\n"
+PyDoc_STRVAR(_zstd_get_param_bounds__doc__,
+"get_param_bounds($module, /, parameter, is_compress)\n"
 "--\n"
 "\n"
 "Internal function, get CompressionParameter/DecompressionParameter bounds.\n"
@@ -156,15 +156,14 @@ PyDoc_STRVAR(_zstd__get_param_bounds__doc__,
 "  is_compress\n"
 "    True for CompressionParameter, False for DecompressionParameter.");
 
-#define _ZSTD__GET_PARAM_BOUNDS_METHODDEF    \
-    {"_get_param_bounds", _PyCFunction_CAST(_zstd__get_param_bounds), 
METH_FASTCALL|METH_KEYWORDS, _zstd__get_param_bounds__doc__},
+#define _ZSTD_GET_PARAM_BOUNDS_METHODDEF    \
+    {"get_param_bounds", _PyCFunction_CAST(_zstd_get_param_bounds), 
METH_FASTCALL|METH_KEYWORDS, _zstd_get_param_bounds__doc__},
 
 static PyObject *
-_zstd__get_param_bounds_impl(PyObject *module, int parameter,
-                             int is_compress);
+_zstd_get_param_bounds_impl(PyObject *module, int parameter, int is_compress);
 
 static PyObject *
-_zstd__get_param_bounds(PyObject *module, PyObject *const *args, Py_ssize_t 
nargs, PyObject *kwnames)
+_zstd_get_param_bounds(PyObject *module, PyObject *const *args, Py_ssize_t 
nargs, PyObject *kwnames)
 {
     PyObject *return_value = NULL;
     #if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE)
@@ -190,7 +189,7 @@ _zstd__get_param_bounds(PyObject *module, PyObject *const 
*args, Py_ssize_t narg
     static const char * const _keywords[] = {"parameter", "is_compress", NULL};
     static _PyArg_Parser _parser = {
         .keywords = _keywords,
-        .fname = "_get_param_bounds",
+        .fname = "get_param_bounds",
         .kwtuple = KWTUPLE,
     };
     #undef KWTUPLE
@@ -211,7 +210,7 @@ _zstd__get_param_bounds(PyObject *module, PyObject *const 
*args, Py_ssize_t narg
     if (is_compress < 0) {
         goto exit;
     }
-    return_value = _zstd__get_param_bounds_impl(module, parameter, 
is_compress);
+    return_value = _zstd_get_param_bounds_impl(module, parameter, is_compress);
 
 exit:
     return return_value;
@@ -288,8 +287,8 @@ _zstd_get_frame_size(PyObject *module, PyObject *const 
*args, Py_ssize_t nargs,
     return return_value;
 }
 
-PyDoc_STRVAR(_zstd__get_frame_info__doc__,
-"_get_frame_info($module, /, frame_buffer)\n"
+PyDoc_STRVAR(_zstd_get_frame_info__doc__,
+"get_frame_info($module, /, frame_buffer)\n"
 "--\n"
 "\n"
 "Internal function, get zstd frame infomation from a frame header.\n"
@@ -297,14 +296,14 @@ PyDoc_STRVAR(_zstd__get_frame_info__doc__,
 "  frame_buffer\n"
 "    A bytes-like object, containing the header of a zstd frame.");
 
-#define _ZSTD__GET_FRAME_INFO_METHODDEF    \
-    {"_get_frame_info", _PyCFunction_CAST(_zstd__get_frame_info), 
METH_FASTCALL|METH_KEYWORDS, _zstd__get_frame_info__doc__},
+#define _ZSTD_GET_FRAME_INFO_METHODDEF    \
+    {"get_frame_info", _PyCFunction_CAST(_zstd_get_frame_info), 
METH_FASTCALL|METH_KEYWORDS, _zstd_get_frame_info__doc__},
 
 static PyObject *
-_zstd__get_frame_info_impl(PyObject *module, Py_buffer *frame_buffer);
+_zstd_get_frame_info_impl(PyObject *module, Py_buffer *frame_buffer);
 
 static PyObject *
-_zstd__get_frame_info(PyObject *module, PyObject *const *args, Py_ssize_t 
nargs, PyObject *kwnames)
+_zstd_get_frame_info(PyObject *module, PyObject *const *args, Py_ssize_t 
nargs, PyObject *kwnames)
 {
     PyObject *return_value = NULL;
     #if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE)
@@ -330,7 +329,7 @@ _zstd__get_frame_info(PyObject *module, PyObject *const 
*args, Py_ssize_t nargs,
     static const char * const _keywords[] = {"frame_buffer", NULL};
     static _PyArg_Parser _parser = {
         .keywords = _keywords,
-        .fname = "_get_frame_info",
+        .fname = "get_frame_info",
         .kwtuple = KWTUPLE,
     };
     #undef KWTUPLE
@@ -345,7 +344,7 @@ _zstd__get_frame_info(PyObject *module, PyObject *const 
*args, Py_ssize_t nargs,
     if (PyObject_GetBuffer(args[0], &frame_buffer, PyBUF_SIMPLE) != 0) {
         goto exit;
     }
-    return_value = _zstd__get_frame_info_impl(module, &frame_buffer);
+    return_value = _zstd_get_frame_info_impl(module, &frame_buffer);
 
 exit:
     /* Cleanup for frame_buffer */
@@ -356,8 +355,8 @@ _zstd__get_frame_info(PyObject *module, PyObject *const 
*args, Py_ssize_t nargs,
     return return_value;
 }
 
-PyDoc_STRVAR(_zstd__set_parameter_types__doc__,
-"_set_parameter_types($module, /, c_parameter_type, d_parameter_type)\n"
+PyDoc_STRVAR(_zstd_set_parameter_types__doc__,
+"set_parameter_types($module, /, c_parameter_type, d_parameter_type)\n"
 "--\n"
 "\n"
 "Internal function, set CompressionParameter/DecompressionParameter types for 
validity check.\n"
@@ -367,15 +366,15 @@ PyDoc_STRVAR(_zstd__set_parameter_types__doc__,
 "  d_parameter_type\n"
 "    DecompressionParameter IntEnum type object");
 
-#define _ZSTD__SET_PARAMETER_TYPES_METHODDEF    \
-    {"_set_parameter_types", _PyCFunction_CAST(_zstd__set_parameter_types), 
METH_FASTCALL|METH_KEYWORDS, _zstd__set_parameter_types__doc__},
+#define _ZSTD_SET_PARAMETER_TYPES_METHODDEF    \
+    {"set_parameter_types", _PyCFunction_CAST(_zstd_set_parameter_types), 
METH_FASTCALL|METH_KEYWORDS, _zstd_set_parameter_types__doc__},
 
 static PyObject *
-_zstd__set_parameter_types_impl(PyObject *module, PyObject *c_parameter_type,
-                                PyObject *d_parameter_type);
+_zstd_set_parameter_types_impl(PyObject *module, PyObject *c_parameter_type,
+                               PyObject *d_parameter_type);
 
 static PyObject *
-_zstd__set_parameter_types(PyObject *module, PyObject *const *args, Py_ssize_t 
nargs, PyObject *kwnames)
+_zstd_set_parameter_types(PyObject *module, PyObject *const *args, Py_ssize_t 
nargs, PyObject *kwnames)
 {
     PyObject *return_value = NULL;
     #if defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_MODULE)
@@ -401,7 +400,7 @@ _zstd__set_parameter_types(PyObject *module, PyObject 
*const *args, Py_ssize_t n
     static const char * const _keywords[] = {"c_parameter_type", 
"d_parameter_type", NULL};
     static _PyArg_Parser _parser = {
         .keywords = _keywords,
-        .fname = "_set_parameter_types",
+        .fname = "set_parameter_types",
         .kwtuple = KWTUPLE,
     };
     #undef KWTUPLE
@@ -415,18 +414,18 @@ _zstd__set_parameter_types(PyObject *module, PyObject 
*const *args, Py_ssize_t n
         goto exit;
     }
     if (!PyObject_TypeCheck(args[0], &PyType_Type)) {
-        _PyArg_BadArgument("_set_parameter_types", "argument 
'c_parameter_type'", (&PyType_Type)->tp_name, args[0]);
+        _PyArg_BadArgument("set_parameter_types", "argument 
'c_parameter_type'", (&PyType_Type)->tp_name, args[0]);
         goto exit;
     }
     c_parameter_type = args[0];
     if (!PyObject_TypeCheck(args[1], &PyType_Type)) {
-        _PyArg_BadArgument("_set_parameter_types", "argument 
'd_parameter_type'", (&PyType_Type)->tp_name, args[1]);
+        _PyArg_BadArgument("set_parameter_types", "argument 
'd_parameter_type'", (&PyType_Type)->tp_name, args[1]);
         goto exit;
     }
     d_parameter_type = args[1];
-    return_value = _zstd__set_parameter_types_impl(module, c_parameter_type, 
d_parameter_type);
+    return_value = _zstd_set_parameter_types_impl(module, c_parameter_type, 
d_parameter_type);
 
 exit:
     return return_value;
 }
-/*[clinic end generated code: output=189c462236a7096c input=a9049054013a1b77]*/
+/*[clinic end generated code: output=8445b658dcdcbb9c input=a9049054013a1b77]*/
diff --git a/Modules/_zstd/compressor.c b/Modules/_zstd/compressor.c
index 48ecf4b0da99dc..b92083cf78fb26 100644
--- a/Modules/_zstd/compressor.c
+++ b/Modules/_zstd/compressor.c
@@ -198,7 +198,8 @@ _get_CDict(ZstdDict *self, int compressionLevel)
 }
 
 static int
-_zstd_load_c_dict(ZstdCompressor *self, PyObject *dict) {
+_zstd_load_c_dict(ZstdCompressor *self, PyObject *dict)
+{
 
     size_t zstd_ret;
     _zstd_state* const mod_state = PyType_GetModuleState(Py_TYPE(self));
@@ -412,7 +413,7 @@ _zstd_ZstdCompressor___init___impl(ZstdCompressor *self, 
PyObject *level,
     return 0;
 }
 
-PyObject *
+static PyObject *
 compress_impl(ZstdCompressor *self, Py_buffer *data,
               ZSTD_EndDirective end_directive)
 {
@@ -655,8 +656,7 @@ _zstd_ZstdCompressor_flush_impl(ZstdCompressor *self, int 
mode)
 static PyMethodDef ZstdCompressor_methods[] = {
     _ZSTD_ZSTDCOMPRESSOR_COMPRESS_METHODDEF
     _ZSTD_ZSTDCOMPRESSOR_FLUSH_METHODDEF
-
-    {0}
+    {NULL, NULL}
 };
 
 PyDoc_STRVAR(ZstdCompressor_last_mode_doc,
@@ -668,7 +668,7 @@ PyDoc_STRVAR(ZstdCompressor_last_mode_doc,
 static PyMemberDef ZstdCompressor_members[] = {
     {"last_mode", Py_T_INT, offsetof(ZstdCompressor, last_mode),
         Py_READONLY, ZstdCompressor_last_mode_doc},
-    {0}
+    {NULL}
 };
 
 static int
@@ -696,11 +696,11 @@ static PyType_Slot zstdcompressor_slots[] = {
     {Py_tp_doc, (char*)_zstd_ZstdCompressor___init____doc__},
     {Py_tp_traverse,  ZstdCompressor_traverse},
     {Py_tp_clear, ZstdCompressor_clear},
-    {0}
+    {0, 0}
 };
 
 PyType_Spec zstd_compressor_type_spec = {
-    .name = "_zstd.ZstdCompressor",
+    .name = "compression.zstd.ZstdCompressor",
     .basicsize = sizeof(ZstdCompressor),
     .flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC,
     .slots = zstdcompressor_slots,
diff --git a/Modules/_zstd/decompressor.c b/Modules/_zstd/decompressor.c
index b3d91e102859da..d2b637205be64f 100644
--- a/Modules/_zstd/decompressor.c
+++ b/Modules/_zstd/decompressor.c
@@ -276,7 +276,7 @@ _zstd_load_d_dict(ZstdDecompressor *self, PyObject *dict)
     output stream: ====================|
                                        ^
 */
-PyObject *
+static PyObject *
 decompress_impl(ZstdDecompressor *self, ZSTD_inBuffer *in,
                 Py_ssize_t max_length,
                 Py_ssize_t initial_size,
@@ -374,7 +374,7 @@ decompress_impl(ZstdDecompressor *self, ZSTD_inBuffer *in,
     return NULL;
 }
 
-void
+static void
 decompressor_reset_session(ZstdDecompressor *self,
                            decompress_type type)
 {
@@ -399,7 +399,7 @@ decompressor_reset_session(ZstdDecompressor *self,
     ZSTD_DCtx_reset(self->dctx, ZSTD_reset_session_only);
 }
 
-PyObject *
+static PyObject *
 stream_decompress(ZstdDecompressor *self, Py_buffer *data, Py_ssize_t 
max_length,
                   decompress_type type)
 {
@@ -808,8 +808,7 @@ _zstd_ZstdDecompressor_decompress_impl(ZstdDecompressor 
*self,
 
 static PyMethodDef ZstdDecompressor_methods[] = {
     _ZSTD_ZSTDDECOMPRESSOR_DECOMPRESS_METHODDEF
-
-    {0}
+    {NULL, NULL}
 };
 
 PyDoc_STRVAR(ZstdDecompressor_eof_doc,
@@ -824,17 +823,14 @@ PyDoc_STRVAR(ZstdDecompressor_needs_input_doc,
 static PyMemberDef ZstdDecompressor_members[] = {
     {"eof", Py_T_BOOL, offsetof(ZstdDecompressor, eof),
     Py_READONLY, ZstdDecompressor_eof_doc},
-
     {"needs_input", Py_T_BOOL, offsetof(ZstdDecompressor, needs_input),
     Py_READONLY, ZstdDecompressor_needs_input_doc},
-
-    {0}
+    {NULL}
 };
 
 static PyGetSetDef ZstdDecompressor_getset[] = {
     _ZSTD_ZSTDDECOMPRESSOR_UNUSED_DATA_GETSETDEF
-
-    {0}
+    {NULL}
 };
 
 static int
@@ -864,11 +860,11 @@ static PyType_Slot ZstdDecompressor_slots[] = {
     {Py_tp_doc, (char*)_zstd_ZstdDecompressor___init____doc__},
     {Py_tp_traverse, ZstdDecompressor_traverse},
     {Py_tp_clear, ZstdDecompressor_clear},
-    {0}
+    {0, 0}
 };
 
 PyType_Spec zstd_decompressor_type_spec = {
-    .name = "_zstd.ZstdDecompressor",
+    .name = "compression.zstd.ZstdDecompressor",
     .basicsize = sizeof(ZstdDecompressor),
     .flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC,
     .slots = ZstdDecompressor_slots,
diff --git a/Modules/_zstd/zstddict.c b/Modules/_zstd/zstddict.c
index b411eadfc95625..402fb65fb0042a 100644
--- a/Modules/_zstd/zstddict.c
+++ b/Modules/_zstd/zstddict.c
@@ -161,7 +161,7 @@ ZstdDict_str(PyObject *ob)
 static PyMemberDef ZstdDict_members[] = {
     {"dict_id", Py_T_UINT, offsetof(ZstdDict, dict_id), Py_READONLY, 
ZstdDict_dictid_doc},
     {"dict_content", Py_T_OBJECT_EX, offsetof(ZstdDict, dict_content), 
Py_READONLY, ZstdDict_dictcontent_doc},
-    {0}
+    {NULL}
 };
 
 /*[clinic input]
@@ -231,12 +231,9 @@ _zstd_ZstdDict_as_prefix_get_impl(ZstdDict *self)
 
 static PyGetSetDef ZstdDict_getset[] = {
     _ZSTD_ZSTDDICT_AS_DIGESTED_DICT_GETSETDEF
-
     _ZSTD_ZSTDDICT_AS_UNDIGESTED_DICT_GETSETDEF
-
     _ZSTD_ZSTDDICT_AS_PREFIX_GETSETDEF
-
-    {0}
+    {NULL}
 };
 
 static Py_ssize_t
@@ -275,11 +272,11 @@ static PyType_Slot zstddict_slots[] = {
     {Py_sq_length, ZstdDict_length},
     {Py_tp_traverse, ZstdDict_traverse},
     {Py_tp_clear, ZstdDict_clear},
-    {0}
+    {0, 0}
 };
 
 PyType_Spec zstd_dict_type_spec = {
-    .name = "_zstd.ZstdDict",
+    .name = "compression.zstd.ZstdDict",
     .basicsize = sizeof(ZstdDict),
     .flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC,
     .slots = zstddict_slots,

_______________________________________________
Python-checkins mailing list -- python-checkins@python.org
To unsubscribe send an email to python-checkins-le...@python.org
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: arch...@mail-archive.com

Reply via email to