zope.hookable 5.4__cp311-cp311-win_amd64.whl → 6.0__cp311-cp311-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of zope.hookable might be problematic. Click here for more details.
- zope/hookable/__init__.py +1 -1
- zope/hookable/_zope_hookable.c +0 -12
- zope/hookable/_zope_hookable.cp311-win_amd64.pyd +0 -0
- zope/hookable/tests/test_hookable.py +7 -7
- {zope.hookable-5.4.dist-info → zope.hookable-6.0.dist-info}/METADATA +12 -6
- zope.hookable-6.0.dist-info/RECORD +13 -0
- {zope.hookable-5.4.dist-info → zope.hookable-6.0.dist-info}/WHEEL +1 -1
- zope.hookable-5.4.dist-info/RECORD +0 -13
- /zope.hookable-5.4-py3.11-nspkg.pth → /zope.hookable-6.0-py3.11-nspkg.pth +0 -0
- {zope.hookable-5.4.dist-info → zope.hookable-6.0.dist-info}/LICENSE.txt +0 -0
- {zope.hookable-5.4.dist-info → zope.hookable-6.0.dist-info}/namespace_packages.txt +0 -0
- {zope.hookable-5.4.dist-info → zope.hookable-6.0.dist-info}/top_level.txt +0 -0
zope/hookable/__init__.py
CHANGED
|
@@ -21,7 +21,7 @@ _PYPY = platform.python_implementation() in ('PyPy', 'Jython')
|
|
|
21
21
|
_PURE_PYTHON = os.environ.get('PURE_PYTHON', _PYPY)
|
|
22
22
|
|
|
23
23
|
|
|
24
|
-
class _py_hookable
|
|
24
|
+
class _py_hookable:
|
|
25
25
|
__slots__ = ('_original', '_implementation')
|
|
26
26
|
|
|
27
27
|
def __init__(self, *args, **kw):
|
zope/hookable/_zope_hookable.c
CHANGED
|
@@ -135,11 +135,7 @@ hookable_getattro(hookable *self, PyObject *name)
|
|
|
135
135
|
const char *name_as_string;
|
|
136
136
|
int maybe_special_name;
|
|
137
137
|
|
|
138
|
-
#if PY_MAJOR_VERSION < 3
|
|
139
|
-
name_as_string = PyString_AsString(name);
|
|
140
|
-
#else
|
|
141
138
|
name_as_string = PyUnicode_AsUTF8(name);
|
|
142
|
-
#endif
|
|
143
139
|
|
|
144
140
|
if (name_as_string == NULL) {
|
|
145
141
|
return NULL;
|
|
@@ -231,7 +227,6 @@ static PyTypeObject hookabletype = {
|
|
|
231
227
|
};
|
|
232
228
|
|
|
233
229
|
|
|
234
|
-
#if PY_MAJOR_VERSION >= 3
|
|
235
230
|
#define MOD_ERROR_VAL NULL
|
|
236
231
|
#define MOD_SUCCESS_VAL(val) val
|
|
237
232
|
#define MOD_INIT(name) PyMODINIT_FUNC PyInit_##name(void)
|
|
@@ -239,13 +234,6 @@ static PyTypeObject hookabletype = {
|
|
|
239
234
|
static struct PyModuleDef moduledef = { \
|
|
240
235
|
PyModuleDef_HEAD_INIT, name, doc, -1, methods, }; \
|
|
241
236
|
ob = PyModule_Create(&moduledef);
|
|
242
|
-
#else
|
|
243
|
-
#define MOD_ERROR_VAL
|
|
244
|
-
#define MOD_SUCCESS_VAL(val)
|
|
245
|
-
#define MOD_INIT(name) void init##name(void)
|
|
246
|
-
#define MOD_DEF(ob, name, doc, methods) \
|
|
247
|
-
ob = Py_InitModule3(name, methods, doc);
|
|
248
|
-
#endif
|
|
249
237
|
|
|
250
238
|
static struct PyMethodDef module_methods[] = {
|
|
251
239
|
{NULL, NULL}
|
|
Binary file
|
|
@@ -28,14 +28,14 @@ def not_called():
|
|
|
28
28
|
raise AssertionError("This should not be called")
|
|
29
29
|
|
|
30
30
|
|
|
31
|
-
class PyHookableMixin
|
|
31
|
+
class PyHookableMixin:
|
|
32
32
|
|
|
33
33
|
def _callFUT(self, *args, **kw):
|
|
34
34
|
from zope.hookable import _py_hookable
|
|
35
35
|
return _py_hookable(*args, **kw)
|
|
36
36
|
|
|
37
37
|
|
|
38
|
-
class HookableMixin
|
|
38
|
+
class HookableMixin:
|
|
39
39
|
|
|
40
40
|
def _callFUT(self, *args, **kw):
|
|
41
41
|
from zope.hookable import _py_hookable
|
|
@@ -107,7 +107,7 @@ class PyHookableTests(PyHookableMixin,
|
|
|
107
107
|
self._callFUT(nonesuch=42)
|
|
108
108
|
|
|
109
109
|
def test_class(self):
|
|
110
|
-
class C
|
|
110
|
+
class C:
|
|
111
111
|
pass
|
|
112
112
|
|
|
113
113
|
hooked = self._callFUT(C)
|
|
@@ -137,7 +137,7 @@ class TestIssue6Py(PyHookableMixin,
|
|
|
137
137
|
self._check_preserves_doc(docs)
|
|
138
138
|
|
|
139
139
|
def test_preserves_doc_class(self):
|
|
140
|
-
class Docs
|
|
140
|
+
class Docs:
|
|
141
141
|
"""I have some docs"""
|
|
142
142
|
|
|
143
143
|
self._check_preserves_doc(Docs)
|
|
@@ -151,14 +151,14 @@ class TestIssue6Py(PyHookableMixin,
|
|
|
151
151
|
self.assertEqual({}, hooked.__dict__)
|
|
152
152
|
|
|
153
153
|
def test_bases_class(self):
|
|
154
|
-
class C
|
|
154
|
+
class C:
|
|
155
155
|
pass
|
|
156
156
|
self.assertEqual(C.__bases__, (object,))
|
|
157
157
|
hooked = self._callFUT(C)
|
|
158
158
|
self.assertEqual(hooked.__bases__, (object,))
|
|
159
159
|
|
|
160
160
|
def test_dict_class(self):
|
|
161
|
-
class C
|
|
161
|
+
class C:
|
|
162
162
|
pass
|
|
163
163
|
|
|
164
164
|
hooked = self._callFUT(C)
|
|
@@ -176,7 +176,7 @@ class TestIssue6Py(PyHookableMixin,
|
|
|
176
176
|
def test_unicode_attribute_name(self):
|
|
177
177
|
# Specifically for the C implementation, which has to deal with this
|
|
178
178
|
hooked = self._callFUT(return_foo)
|
|
179
|
-
result = hooked.__getattribute__(
|
|
179
|
+
result = hooked.__getattribute__('__bases__')
|
|
180
180
|
self.assertEqual(result, ())
|
|
181
181
|
|
|
182
182
|
def test_short_name(self):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: zope.hookable
|
|
3
|
-
Version:
|
|
3
|
+
Version: 6.0
|
|
4
4
|
Summary: Zope hookable
|
|
5
5
|
Home-page: http://github.com/zopefoundation/zope.hookable
|
|
6
6
|
Author: Zope Foundation and Contributors
|
|
@@ -12,25 +12,23 @@ Classifier: Intended Audience :: Developers
|
|
|
12
12
|
Classifier: License :: OSI Approved :: Zope Public License
|
|
13
13
|
Classifier: Operating System :: OS Independent
|
|
14
14
|
Classifier: Programming Language :: Python
|
|
15
|
-
Classifier: Programming Language :: Python :: 2
|
|
16
|
-
Classifier: Programming Language :: Python :: 2.7
|
|
17
15
|
Classifier: Programming Language :: Python :: 3
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.5
|
|
19
|
-
Classifier: Programming Language :: Python :: 3.6
|
|
20
16
|
Classifier: Programming Language :: Python :: 3.7
|
|
21
17
|
Classifier: Programming Language :: Python :: 3.8
|
|
22
18
|
Classifier: Programming Language :: Python :: 3.9
|
|
23
19
|
Classifier: Programming Language :: Python :: 3.10
|
|
24
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
25
22
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
26
23
|
Classifier: Programming Language :: Python :: Implementation :: PyPy
|
|
27
24
|
Classifier: Framework :: Zope :: 3
|
|
28
25
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
29
|
-
Requires-Python: >=
|
|
26
|
+
Requires-Python: >=3.7
|
|
30
27
|
License-File: LICENSE.txt
|
|
31
28
|
Requires-Dist: setuptools
|
|
32
29
|
Provides-Extra: docs
|
|
33
30
|
Requires-Dist: Sphinx ; extra == 'docs'
|
|
31
|
+
Requires-Dist: sphinx-rtd-theme ; extra == 'docs'
|
|
34
32
|
Provides-Extra: test
|
|
35
33
|
Requires-Dist: zope.testing ; extra == 'test'
|
|
36
34
|
Requires-Dist: zope.testrunner ; extra == 'test'
|
|
@@ -77,6 +75,14 @@ Documentation is hosted at https://zopehookable.readthedocs.io
|
|
|
77
75
|
Changes
|
|
78
76
|
=========
|
|
79
77
|
|
|
78
|
+
6.0 (2023-10-05)
|
|
79
|
+
================
|
|
80
|
+
|
|
81
|
+
- Drop support for Python 2.7, 3.5, 3.6.
|
|
82
|
+
|
|
83
|
+
- Add support for Python 3.12.
|
|
84
|
+
|
|
85
|
+
|
|
80
86
|
5.4 (2022-11-17)
|
|
81
87
|
================
|
|
82
88
|
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
zope.hookable-6.0-py3.11-nspkg.pth,sha256=v_t1oIorEnrHsL8_S45xOGNzLyFVAQCg1XkrPrk0VV8,530
|
|
2
|
+
zope/hookable/__init__.py,sha256=pb0kMg3D0-cDl4VLrYtYpaV499J8DpITbW01Wxc3_SA,2190
|
|
3
|
+
zope/hookable/_zope_hookable.c,sha256=3N5DrcP1lhrczu0yDqUshuuZ8GoCkWpf67lYzvkS8ao,7431
|
|
4
|
+
zope/hookable/_zope_hookable.cp311-win_amd64.pyd,sha256=DvkfUfSg02VzNALkngUvXY-xMQ6BYVLGmzwVbihMQzI,13824
|
|
5
|
+
zope/hookable/tests/__init__.py,sha256=Z9EJNKBQorYcdV6oaIRTRgF41SMRZEEoLltZCKyVPI8,47
|
|
6
|
+
zope/hookable/tests/test_compile_flags.py,sha256=91siNUs2kotDUYpVV1vAZ_opWhZ50X4_DYkIiNMh6h0,1289
|
|
7
|
+
zope/hookable/tests/test_hookable.py,sha256=Y7G2Z9CeZ4JBxaQSXi2AUvIN3ELP49T3_M9vBS2oQAk,6205
|
|
8
|
+
zope.hookable-6.0.dist-info/LICENSE.txt,sha256=PmcdsR32h1FswdtbPWXkqjg-rKPCDOo_r1Og9zNdCjw,2070
|
|
9
|
+
zope.hookable-6.0.dist-info/METADATA,sha256=xr9vKUXHxn6H02gmzIem7QXg0W137AyhoG93IToZ6Tc,6035
|
|
10
|
+
zope.hookable-6.0.dist-info/WHEEL,sha256=badvNS-y9fEq0X-qzdZYvql_JFjI7Xfw-wR8FsjoK0I,102
|
|
11
|
+
zope.hookable-6.0.dist-info/namespace_packages.txt,sha256=QpUHvpO4wIuZDeEgKY8qZCtD-tAukB0fn_f6utzlb98,5
|
|
12
|
+
zope.hookable-6.0.dist-info/top_level.txt,sha256=QpUHvpO4wIuZDeEgKY8qZCtD-tAukB0fn_f6utzlb98,5
|
|
13
|
+
zope.hookable-6.0.dist-info/RECORD,,
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
zope.hookable-5.4-py3.11-nspkg.pth,sha256=v_t1oIorEnrHsL8_S45xOGNzLyFVAQCg1XkrPrk0VV8,530
|
|
2
|
-
zope/hookable/__init__.py,sha256=2Ti7Bb9moOaABz-5j3068ILhZnjE10nwXEAuBzVH7kE,2198
|
|
3
|
-
zope/hookable/_zope_hookable.c,sha256=rnXI_8dreoBTWz15HB-WW69WDtcE-4tpODtb-_R0eVQ,7751
|
|
4
|
-
zope/hookable/_zope_hookable.cp311-win_amd64.pyd,sha256=aaEofVKt80kmbnrfuIuxDBiN_uqMMXX72WVrShIF75Q,13824
|
|
5
|
-
zope/hookable/tests/__init__.py,sha256=Z9EJNKBQorYcdV6oaIRTRgF41SMRZEEoLltZCKyVPI8,47
|
|
6
|
-
zope/hookable/tests/test_compile_flags.py,sha256=91siNUs2kotDUYpVV1vAZ_opWhZ50X4_DYkIiNMh6h0,1289
|
|
7
|
-
zope/hookable/tests/test_hookable.py,sha256=juJLN3MLc369HF3VQE9njjEI2E2NPdzLDuz2vxYQ1KY,6254
|
|
8
|
-
zope.hookable-5.4.dist-info/LICENSE.txt,sha256=PmcdsR32h1FswdtbPWXkqjg-rKPCDOo_r1Og9zNdCjw,2070
|
|
9
|
-
zope.hookable-5.4.dist-info/METADATA,sha256=kB_6PbB5Xb_mjraG5gZO5hkTh-v5x2GxeGcPxdL-Nes,6056
|
|
10
|
-
zope.hookable-5.4.dist-info/WHEEL,sha256=wklNeoByNLhdCl-oEQTdaHIeDl4q9zaQVqAlPxUEgLU,102
|
|
11
|
-
zope.hookable-5.4.dist-info/namespace_packages.txt,sha256=QpUHvpO4wIuZDeEgKY8qZCtD-tAukB0fn_f6utzlb98,5
|
|
12
|
-
zope.hookable-5.4.dist-info/top_level.txt,sha256=QpUHvpO4wIuZDeEgKY8qZCtD-tAukB0fn_f6utzlb98,5
|
|
13
|
-
zope.hookable-5.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|