AccessControl 7.2__tar.gz → 7.3__tar.gz

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.
Files changed (94) hide show
  1. {accesscontrol-7.2 → accesscontrol-7.3}/.manylinux-install.sh +7 -6
  2. {accesscontrol-7.2 → accesscontrol-7.3}/.pre-commit-config.yaml +5 -5
  3. {accesscontrol-7.2 → accesscontrol-7.3}/CHANGES.rst +25 -2
  4. {accesscontrol-7.2 → accesscontrol-7.3}/CONTRIBUTING.md +1 -1
  5. accesscontrol-7.3/PKG-INFO +68 -0
  6. accesscontrol-7.3/pyproject.toml +104 -0
  7. accesscontrol-7.3/setup.py +32 -0
  8. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/SecurityInfo.py +1 -1
  9. accesscontrol-7.3/src/AccessControl.egg-info/PKG-INFO +68 -0
  10. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl.egg-info/SOURCES.txt +0 -1
  11. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl.egg-info/requires.txt +4 -4
  12. {accesscontrol-7.2 → accesscontrol-7.3}/tox.ini +6 -5
  13. accesscontrol-7.2/PKG-INFO +0 -391
  14. accesscontrol-7.2/pyproject.toml +0 -25
  15. accesscontrol-7.2/setup.py +0 -103
  16. accesscontrol-7.2/src/AccessControl.egg-info/PKG-INFO +0 -391
  17. accesscontrol-7.2/src/AccessControl.egg-info/not-zip-safe +0 -1
  18. {accesscontrol-7.2 → accesscontrol-7.3}/.manylinux.sh +0 -0
  19. {accesscontrol-7.2 → accesscontrol-7.3}/COPYRIGHT.txt +0 -0
  20. {accesscontrol-7.2 → accesscontrol-7.3}/HISTORY.rst +0 -0
  21. {accesscontrol-7.2 → accesscontrol-7.3}/LICENSE.txt +0 -0
  22. {accesscontrol-7.2 → accesscontrol-7.3}/MANIFEST.in +0 -0
  23. {accesscontrol-7.2 → accesscontrol-7.3}/README.rst +0 -0
  24. {accesscontrol-7.2 → accesscontrol-7.3}/buildout.cfg +0 -0
  25. {accesscontrol-7.2 → accesscontrol-7.3}/docs/AccessControl.rst +0 -0
  26. {accesscontrol-7.2 → accesscontrol-7.3}/docs/requestmethod.rst +0 -0
  27. {accesscontrol-7.2 → accesscontrol-7.3}/include/Acquisition/Acquisition.h +0 -0
  28. {accesscontrol-7.2 → accesscontrol-7.3}/include/ExtensionClass/ExtensionClass.h +0 -0
  29. {accesscontrol-7.2 → accesscontrol-7.3}/include/ExtensionClass/_compat.h +0 -0
  30. {accesscontrol-7.2 → accesscontrol-7.3}/setup.cfg +0 -0
  31. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/AuthEncoding.py +0 -0
  32. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/ImplC.py +0 -0
  33. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/ImplPython.py +0 -0
  34. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/Implementation.py +0 -0
  35. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/Owned.py +0 -0
  36. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/Permission.py +0 -0
  37. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/PermissionMapping.py +0 -0
  38. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/PermissionRole.py +0 -0
  39. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/Permissions.py +0 -0
  40. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/Role.py +0 -0
  41. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/SecurityManagement.py +0 -0
  42. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/SecurityManager.py +0 -0
  43. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/SimpleObjectPolicies.py +0 -0
  44. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/SpecialUsers.py +0 -0
  45. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/User.py +0 -0
  46. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/ZopeGuards.py +0 -0
  47. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/ZopeSecurityPolicy.py +0 -0
  48. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/__init__.py +0 -0
  49. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/_compat.h +0 -0
  50. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/cAccessControl.c +0 -0
  51. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/class_init.py +0 -0
  52. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/configure.zcml +0 -0
  53. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/interfaces.py +0 -0
  54. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/logger_wrapper.py +0 -0
  55. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/meta.zcml +0 -0
  56. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/metaconfigure.py +0 -0
  57. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/owner.py +0 -0
  58. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/permissions.zcml +0 -0
  59. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/requestmethod.py +0 -0
  60. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/rolemanager.py +0 -0
  61. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/safe_formatter.py +0 -0
  62. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/security.py +0 -0
  63. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tainted.py +0 -0
  64. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/__init__.py +0 -0
  65. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/actual_python.py +0 -0
  66. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/mixed_module/__init__.py +0 -0
  67. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/mixed_module/submodule/__init__.py +0 -0
  68. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/private_module/__init__.py +0 -0
  69. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/private_module/submodule/__init__.py +0 -0
  70. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/public_module/__init__.py +0 -0
  71. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/public_module/submodule/__init__.py +0 -0
  72. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testClassSecurityInfo.py +0 -0
  73. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testImplementation.py +0 -0
  74. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testModuleSecurity.py +0 -0
  75. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testPermissionMapping.py +0 -0
  76. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testPermissionRole.py +0 -0
  77. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testSecurityManager.py +0 -0
  78. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testZCML.py +0 -0
  79. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testZopeGuards.py +0 -0
  80. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/testZopeSecurityPolicy.py +0 -0
  81. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_owner.py +0 -0
  82. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_requestmethod.py +0 -0
  83. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_rolemanager.py +0 -0
  84. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_safe_formatter.py +0 -0
  85. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_safeiter.py +0 -0
  86. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_tainted.py +0 -0
  87. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_userfolder.py +0 -0
  88. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/tests/test_users.py +0 -0
  89. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/unauthorized.py +0 -0
  90. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/userfolder.py +0 -0
  91. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl/users.py +0 -0
  92. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl.egg-info/dependency_links.txt +0 -0
  93. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl.egg-info/entry_points.txt +0 -0
  94. {accesscontrol-7.2 → accesscontrol-7.3}/src/AccessControl.egg-info/top_level.txt +0 -0
@@ -28,12 +28,11 @@ yum -y install libffi-devel
28
28
 
29
29
  tox_env_map() {
30
30
  case $1 in
31
- *"cp38"*) echo 'py38';;
32
- *"cp39"*) echo 'py39';;
33
31
  *"cp310"*) echo 'py310';;
34
32
  *"cp311"*) echo 'py311';;
35
33
  *"cp312"*) echo 'py312';;
36
34
  *"cp313"*) echo 'py313';;
35
+ *"cp314"*) echo 'py314';;
37
36
  *) echo 'py';;
38
37
  esac
39
38
  }
@@ -41,12 +40,11 @@ tox_env_map() {
41
40
  # Compile wheels
42
41
  for PYBIN in /opt/python/*/bin; do
43
42
  if \
44
- [[ "${PYBIN}" == *"cp38/"* ]] || \
45
- [[ "${PYBIN}" == *"cp39/"* ]] || \
46
43
  [[ "${PYBIN}" == *"cp310/"* ]] || \
47
44
  [[ "${PYBIN}" == *"cp311/"* ]] || \
48
45
  [[ "${PYBIN}" == *"cp312/"* ]] || \
49
- [[ "${PYBIN}" == *"cp313/"* ]] ; then
46
+ [[ "${PYBIN}" == *"cp313/"* ]] || \
47
+ [[ "${PYBIN}" == *"cp314/"* ]] ; then
50
48
  "${PYBIN}/pip" install -e /io/
51
49
  "${PYBIN}/pip" wheel /io/ -w wheelhouse/
52
50
  if [ `uname -m` == 'aarch64' ]; then
@@ -60,7 +58,10 @@ for PYBIN in /opt/python/*/bin; do
60
58
  fi
61
59
  done
62
60
 
61
+ # Show what wheels we have
62
+ echo "Fixing up the following wheels:"
63
+ ls -l wheelhouse/accesscontrol*.whl
63
64
  # Bundle external shared libraries into the wheels
64
- for whl in wheelhouse/AccessControl*.whl; do
65
+ for whl in wheelhouse/accesscontrol*.whl; do
65
66
  auditwheel repair "$whl" -w /io/wheelhouse/
66
67
  done
@@ -3,25 +3,25 @@
3
3
  minimum_pre_commit_version: '3.6'
4
4
  repos:
5
5
  - repo: https://github.com/pycqa/isort
6
- rev: "5.13.2"
6
+ rev: "7.0.0"
7
7
  hooks:
8
8
  - id: isort
9
9
  - repo: https://github.com/hhatto/autopep8
10
- rev: "v2.3.1"
10
+ rev: "v2.3.2"
11
11
  hooks:
12
12
  - id: autopep8
13
13
  args: [--in-place, --aggressive, --aggressive]
14
14
  - repo: https://github.com/asottile/pyupgrade
15
- rev: v3.17.0
15
+ rev: v3.21.0
16
16
  hooks:
17
17
  - id: pyupgrade
18
- args: [--py38-plus]
18
+ args: [--py310-plus]
19
19
  - repo: https://github.com/isidentical/teyit
20
20
  rev: 0.4.3
21
21
  hooks:
22
22
  - id: teyit
23
23
  - repo: https://github.com/PyCQA/flake8
24
- rev: "7.1.1"
24
+ rev: "7.3.0"
25
25
  hooks:
26
26
  - id: flake8
27
27
  additional_dependencies:
@@ -1,8 +1,19 @@
1
- Changelog
2
- =========
1
+ Change log
2
+ ==========
3
3
 
4
4
  For changes before version 3.0, see ``HISTORY.rst``.
5
5
 
6
+
7
+ 7.3 (2025-11-16)
8
+ ----------------
9
+
10
+ - Move all supported package metadata into ``pyproject.toml``.
11
+
12
+ - Add support for Python 3.14.
13
+
14
+ - Drop support for Python 3.8 and 3.9.
15
+
16
+
6
17
  7.2 (2024-11-03)
7
18
  ----------------
8
19
 
@@ -244,16 +255,19 @@ Changes since 3.0.12:
244
255
  ``SecurityInfo._ModuleSecurityInfo``. See:
245
256
  https://github.com/zopefoundation/AccessControl/issues/12
246
257
 
258
+
247
259
  3.0.11 (2014-11-02)
248
260
  -------------------
249
261
 
250
262
  - Harden test fix for machines that do not define `localhost`.
251
263
 
264
+
252
265
  3.0.10 (2014-11-02)
253
266
  -------------------
254
267
 
255
268
  - Test fix for machines that do not define `localhost`.
256
269
 
270
+
257
271
  3.0.9 (2014-08-08)
258
272
  ------------------
259
273
 
@@ -264,6 +278,7 @@ Changes since 3.0.12:
264
278
  - LP #1248529: Leave existing security manager in place inside
265
279
  ``RoleManager.manage_getUserRolesAndPermissions``.
266
280
 
281
+
267
282
  3.0.8 (2013-07-16)
268
283
  ------------------
269
284
 
@@ -271,6 +286,7 @@ Changes since 3.0.12:
271
286
  (used by ``ImplC``) when using the "C" security policy. Thanks to
272
287
  Arnaud Fontaine for the patch.
273
288
 
289
+
274
290
  3.0.7 (2013-05-14)
275
291
  ------------------
276
292
 
@@ -280,39 +296,46 @@ Changes since 3.0.12:
280
296
  - Prevent infinite loop when looking up local roles in an acquisition chain
281
297
  with cycles.
282
298
 
299
+
283
300
  3.0.6 (2012-10-31)
284
301
  ------------------
285
302
 
286
303
  - LP #1071067: Use a stronger random number generator and a constant time
287
304
  comparison function.
288
305
 
306
+
289
307
  3.0.5 (2012-10-21)
290
308
  ------------------
291
309
 
292
310
  - LP #966101: Recognize special `zope2.Private` permission in ZCML
293
311
  role directive.
294
312
 
313
+
295
314
  3.0.4 (2012-09-09)
296
315
  ------------------
297
316
 
298
317
  - LP #1047318: Tighten import restrictions for restricted code.
299
318
 
319
+
300
320
  3.0.3 (2012-08-23)
301
321
  ------------------
302
322
 
303
323
  - Fix a bug in ZopeSecurityPolicy.py. Global variable `rolesForPermissionOn`
304
324
  could be overridden if `__role__` had custom rolesForPermissionOn.
305
325
 
326
+
306
327
  3.0.2 (2012-06-22)
307
328
  ------------------
308
329
 
309
330
  - Add Anonymous as a default role for Public permission.
310
331
 
332
+
311
333
  3.0.1 (2012-05-24)
312
334
  ------------------
313
335
 
314
336
  - Fix tests under Python 2.6.
315
337
 
338
+
316
339
  3.0 (2012-05-12)
317
340
  ----------------
318
341
 
@@ -1,7 +1,7 @@
1
1
  <!--
2
2
  Generated from:
3
3
  https://github.com/zopefoundation/meta/tree/master/config/c-code
4
- -->
4
+ -->
5
5
  # Contributing to zopefoundation projects
6
6
 
7
7
  The projects under the zopefoundation GitHub organization are open source and
@@ -0,0 +1,68 @@
1
+ Metadata-Version: 2.4
2
+ Name: AccessControl
3
+ Version: 7.3
4
+ Summary: Security framework for Zope
5
+ Author-email: Zope Foundation and contributors <zope-dev@zope.dev>
6
+ Maintainer-email: Plone Foundation and contributors <zope-dev@zope.dev>
7
+ License-Expression: ZPL-2.1
8
+ Project-URL: Issues, https://github.com/zopefoundation/AccessControl/issues
9
+ Project-URL: Source, https://github.com/zopefoundation/AccessControl
10
+ Project-URL: Changelog, https://github.com/zopefoundation/AccessControl/blob/master/CHANGES.rst
11
+ Keywords: security,access,authorization
12
+ Classifier: Development Status :: 6 - Mature
13
+ Classifier: Environment :: Web Environment
14
+ Classifier: Framework :: Zope
15
+ Classifier: Framework :: Zope :: 5
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python
18
+ Classifier: Programming Language :: Python :: 3
19
+ Classifier: Programming Language :: Python :: 3 :: Only
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: 3.14
25
+ Classifier: Programming Language :: Python :: Implementation :: CPython
26
+ Requires-Python: >=3.10
27
+ Description-Content-Type: text/x-rst
28
+ License-File: LICENSE.txt
29
+ Requires-Dist: Acquisition
30
+ Requires-Dist: AuthEncoding
31
+ Requires-Dist: BTrees
32
+ Requires-Dist: DateTime
33
+ Requires-Dist: ExtensionClass
34
+ Requires-Dist: Persistence
35
+ Requires-Dist: RestrictedPython
36
+ Requires-Dist: transaction
37
+ Requires-Dist: zExceptions
38
+ Requires-Dist: zope.component
39
+ Requires-Dist: zope.configuration
40
+ Requires-Dist: zope.deferredimport
41
+ Requires-Dist: zope.interface
42
+ Requires-Dist: zope.publisher
43
+ Requires-Dist: zope.schema
44
+ Requires-Dist: zope.security
45
+ Requires-Dist: zope.testing
46
+ Provides-Extra: test
47
+ Requires-Dist: zope.testrunner>=6.4; extra == "test"
48
+ Dynamic: license-file
49
+
50
+ .. image:: https://github.com/zopefoundation/AccessControl/actions/workflows/tests.yml/badge.svg
51
+ :target: https://github.com/zopefoundation/AccessControl/actions/workflows/tests.yml
52
+
53
+ .. image:: https://coveralls.io/repos/github/zopefoundation/AccessControl/badge.svg?branch=master
54
+ :target: https://coveralls.io/github/zopefoundation/AccessControl?branch=master
55
+
56
+ .. image:: https://img.shields.io/pypi/v/AccessControl.svg
57
+ :target: https://pypi.org/project/AccessControl/
58
+ :alt: Current version on PyPI
59
+
60
+ .. image:: https://img.shields.io/pypi/pyversions/AccessControl.svg
61
+ :target: https://pypi.org/project/AccessControl/
62
+ :alt: Supported Python versions
63
+
64
+
65
+ AccessControl
66
+ =============
67
+
68
+ AccessControl provides a general security framework for use in Zope.
@@ -0,0 +1,104 @@
1
+ #
2
+ # Generated from:
3
+ # https://github.com/zopefoundation/meta/tree/master/config/c-code
4
+
5
+ [build-system]
6
+ requires = [
7
+ "setuptools",
8
+ "wheel",
9
+ ]
10
+ build-backend = "setuptools.build_meta"
11
+
12
+ [project]
13
+ name = "AccessControl"
14
+ version = "7.3"
15
+ description = "Security framework for Zope"
16
+ keywords = ["security", "access", "authorization"]
17
+ readme = "README.rst"
18
+ requires-python = ">=3.10"
19
+ license = "ZPL-2.1"
20
+ authors = [
21
+ { name = "Zope Foundation and contributors", email = "zope-dev@zope.dev" },
22
+ ]
23
+ maintainers = [
24
+ { name = "Plone Foundation and contributors", email = "zope-dev@zope.dev" },
25
+ ]
26
+ classifiers = [
27
+ "Development Status :: 6 - Mature",
28
+ "Environment :: Web Environment",
29
+ "Framework :: Zope",
30
+ "Framework :: Zope :: 5",
31
+ "Operating System :: OS Independent",
32
+ "Programming Language :: Python",
33
+ "Programming Language :: Python :: 3",
34
+ "Programming Language :: Python :: 3 :: Only",
35
+ "Programming Language :: Python :: 3.10",
36
+ "Programming Language :: Python :: 3.11",
37
+ "Programming Language :: Python :: 3.12",
38
+ "Programming Language :: Python :: 3.13",
39
+ "Programming Language :: Python :: 3.14",
40
+ "Programming Language :: Python :: Implementation :: CPython",
41
+ ]
42
+ dependencies = [
43
+ "Acquisition",
44
+ "AuthEncoding",
45
+ "BTrees",
46
+ "DateTime",
47
+ "ExtensionClass",
48
+ "Persistence",
49
+ "RestrictedPython",
50
+ "transaction",
51
+ "zExceptions",
52
+ "zope.component",
53
+ "zope.configuration",
54
+ "zope.deferredimport",
55
+ "zope.interface",
56
+ "zope.publisher",
57
+ "zope.schema",
58
+ "zope.security",
59
+ "zope.testing",
60
+ ]
61
+
62
+ [project.entry-points."zodbupdate.decode"]
63
+ decodes = "AccessControl:zodbupdate_decode_dict"
64
+
65
+ [project.optional-dependencies]
66
+ test = [
67
+ "zope.testrunner >= 6.4",
68
+ ]
69
+
70
+ [project.urls]
71
+ Issues = "https://github.com/zopefoundation/AccessControl/issues"
72
+ Source = "https://github.com/zopefoundation/AccessControl"
73
+ Changelog = "https://github.com/zopefoundation/AccessControl/blob/master/CHANGES.rst"
74
+
75
+ [tool.coverage.run]
76
+ branch = true
77
+ source = ["AccessControl"]
78
+ relative_files = true
79
+
80
+ [tool.coverage.report]
81
+ fail_under = 80
82
+ precision = 2
83
+ ignore_errors = true
84
+ show_missing = true
85
+ exclude_lines = [
86
+ "pragma: no cover",
87
+ "pragma: nocover",
88
+ "except ImportError:",
89
+ "raise NotImplementedError",
90
+ "if __name__ == '__main__':",
91
+ "self.fail",
92
+ "raise AssertionError",
93
+ "raise unittest.Skip",
94
+ ]
95
+
96
+ [tool.coverage.html]
97
+ directory = "parts/htmlcov"
98
+
99
+ [tool.coverage.paths]
100
+ source = [
101
+ "src/",
102
+ ".tox/*/lib/python*/site-packages/",
103
+ ".tox/pypy*/site-packages/",
104
+ ]
@@ -0,0 +1,32 @@
1
+ ##############################################################################
2
+ #
3
+ # Copyright (c) 2010 Zope Foundation and Contributors.
4
+ # All Rights Reserved.
5
+ #
6
+ # This software is subject to the provisions of the Zope Public License,
7
+ # Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
8
+ # THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
9
+ # WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
10
+ # WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
11
+ # FOR A PARTICULAR PURPOSE.
12
+ #
13
+ ##############################################################################
14
+
15
+ from os.path import join
16
+
17
+ from setuptools import Extension
18
+ from setuptools import setup
19
+
20
+
21
+ ext_modules = [
22
+ Extension(
23
+ name='AccessControl.cAccessControl',
24
+ include_dirs=['include', 'src'],
25
+ sources=[join('src', 'AccessControl', 'cAccessControl.c')],
26
+ depends=[join('include', 'ExtensionClass', 'ExtensionClass.h'),
27
+ join('include', 'ExtensionClass', '_compat.h'),
28
+ join('include', 'Acquisition', 'Acquisition.h')]),
29
+ ]
30
+
31
+
32
+ setup(ext_modules=ext_modules)
@@ -320,7 +320,7 @@ class _ModuleSecurityInfo(SecurityInfo):
320
320
  def __init__(self, module_name=None):
321
321
  self.names = {}
322
322
  if module_name is not None:
323
- global _moduleSecurity
323
+ global _moduleSecurity # noqa: F824
324
324
  _moduleSecurity[module_name] = self
325
325
 
326
326
  __call____roles__ = ACCESS_PRIVATE
@@ -0,0 +1,68 @@
1
+ Metadata-Version: 2.4
2
+ Name: AccessControl
3
+ Version: 7.3
4
+ Summary: Security framework for Zope
5
+ Author-email: Zope Foundation and contributors <zope-dev@zope.dev>
6
+ Maintainer-email: Plone Foundation and contributors <zope-dev@zope.dev>
7
+ License-Expression: ZPL-2.1
8
+ Project-URL: Issues, https://github.com/zopefoundation/AccessControl/issues
9
+ Project-URL: Source, https://github.com/zopefoundation/AccessControl
10
+ Project-URL: Changelog, https://github.com/zopefoundation/AccessControl/blob/master/CHANGES.rst
11
+ Keywords: security,access,authorization
12
+ Classifier: Development Status :: 6 - Mature
13
+ Classifier: Environment :: Web Environment
14
+ Classifier: Framework :: Zope
15
+ Classifier: Framework :: Zope :: 5
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python
18
+ Classifier: Programming Language :: Python :: 3
19
+ Classifier: Programming Language :: Python :: 3 :: Only
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: 3.14
25
+ Classifier: Programming Language :: Python :: Implementation :: CPython
26
+ Requires-Python: >=3.10
27
+ Description-Content-Type: text/x-rst
28
+ License-File: LICENSE.txt
29
+ Requires-Dist: Acquisition
30
+ Requires-Dist: AuthEncoding
31
+ Requires-Dist: BTrees
32
+ Requires-Dist: DateTime
33
+ Requires-Dist: ExtensionClass
34
+ Requires-Dist: Persistence
35
+ Requires-Dist: RestrictedPython
36
+ Requires-Dist: transaction
37
+ Requires-Dist: zExceptions
38
+ Requires-Dist: zope.component
39
+ Requires-Dist: zope.configuration
40
+ Requires-Dist: zope.deferredimport
41
+ Requires-Dist: zope.interface
42
+ Requires-Dist: zope.publisher
43
+ Requires-Dist: zope.schema
44
+ Requires-Dist: zope.security
45
+ Requires-Dist: zope.testing
46
+ Provides-Extra: test
47
+ Requires-Dist: zope.testrunner>=6.4; extra == "test"
48
+ Dynamic: license-file
49
+
50
+ .. image:: https://github.com/zopefoundation/AccessControl/actions/workflows/tests.yml/badge.svg
51
+ :target: https://github.com/zopefoundation/AccessControl/actions/workflows/tests.yml
52
+
53
+ .. image:: https://coveralls.io/repos/github/zopefoundation/AccessControl/badge.svg?branch=master
54
+ :target: https://coveralls.io/github/zopefoundation/AccessControl?branch=master
55
+
56
+ .. image:: https://img.shields.io/pypi/v/AccessControl.svg
57
+ :target: https://pypi.org/project/AccessControl/
58
+ :alt: Current version on PyPI
59
+
60
+ .. image:: https://img.shields.io/pypi/pyversions/AccessControl.svg
61
+ :target: https://pypi.org/project/AccessControl/
62
+ :alt: Supported Python versions
63
+
64
+
65
+ AccessControl
66
+ =============
67
+
68
+ AccessControl provides a general security framework for use in Zope.
@@ -59,7 +59,6 @@ src/AccessControl.egg-info/PKG-INFO
59
59
  src/AccessControl.egg-info/SOURCES.txt
60
60
  src/AccessControl.egg-info/dependency_links.txt
61
61
  src/AccessControl.egg-info/entry_points.txt
62
- src/AccessControl.egg-info/not-zip-safe
63
62
  src/AccessControl.egg-info/requires.txt
64
63
  src/AccessControl.egg-info/top_level.txt
65
64
  src/AccessControl/tests/__init__.py
@@ -2,9 +2,9 @@ Acquisition
2
2
  AuthEncoding
3
3
  BTrees
4
4
  DateTime
5
- ExtensionClass>=4.2.1
6
- Persistence>=3.0a3
7
- RestrictedPython>=7.4
5
+ ExtensionClass
6
+ Persistence
7
+ RestrictedPython
8
8
  transaction
9
9
  zExceptions
10
10
  zope.component
@@ -17,4 +17,4 @@ zope.security
17
17
  zope.testing
18
18
 
19
19
  [test]
20
- zope.testrunner
20
+ zope.testrunner>=6.4
@@ -3,18 +3,18 @@
3
3
  [tox]
4
4
  minversion = 4.0
5
5
  envlist =
6
+ release-check
6
7
  lint
7
- py38,py38-pure
8
- py39,py39-pure
9
8
  py310,py310-pure
10
9
  py311,py311-pure
11
10
  py312,py312-pure
12
11
  py313,py313-pure
12
+ py314,py314-pure
13
13
  coverage
14
14
 
15
15
  [testenv]
16
16
  deps =
17
- setuptools <74
17
+ setuptools >= 78.1.1,< 81
18
18
  setenv =
19
19
  pure: PURE_PYTHON=1
20
20
  !pure-!pypy3: PURE_PYTHON=0
@@ -47,7 +47,8 @@ description = ensure that the distribution is ready to release
47
47
  basepython = python3
48
48
  skip_install = true
49
49
  deps =
50
- setuptools <74
50
+ setuptools
51
+ wheel
51
52
  twine
52
53
  build
53
54
  check-manifest
@@ -56,7 +57,7 @@ deps =
56
57
  commands_pre =
57
58
  commands =
58
59
  check-manifest
59
- check-python-versions --only setup.py,tox.ini,.github/workflows/tests.yml
60
+ check-python-versions --only pyproject.toml,setup.py,tox.ini,.github/workflows/tests.yml
60
61
  python -m build --sdist --no-isolation
61
62
  twine check dist/*
62
63