zope.app.component 4.1.0__tar.gz → 6.0__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 (58) hide show
  1. zope_app_component-6.0/.pre-commit-config.yaml +28 -0
  2. {zope.app.component-4.1.0 → zope_app_component-6.0}/CHANGES.rst +25 -0
  3. zope_app_component-6.0/CONTRIBUTING.md +23 -0
  4. zope_app_component-6.0/MANIFEST.in +13 -0
  5. zope_app_component-6.0/PKG-INFO +299 -0
  6. zope_app_component-6.0/pyproject.toml +32 -0
  7. zope_app_component-6.0/setup.cfg +32 -0
  8. {zope.app.component-4.1.0 → zope_app_component-6.0}/setup.py +18 -19
  9. zope.app.component-4.1.0/src/zope/app/component/vocabulary.py → zope_app_component-6.0/src/zope/app/component/__init__.py +2 -8
  10. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/__init__.py +13 -14
  11. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/registration.py +30 -37
  12. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/tests/__init__.py +3 -1
  13. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/tests/test_site.py +12 -12
  14. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/hooks.py +10 -12
  15. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/i18n.py +2 -0
  16. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/interfaces/__init__.py +6 -7
  17. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/interfaces/registration.py +5 -1
  18. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/interfaces/tests/test_registration.py +4 -1
  19. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/metaconfigure.py +5 -2
  20. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/metadirectives.py +9 -10
  21. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/site.py +11 -11
  22. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/testing.py +62 -60
  23. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/tests/__init__.py +5 -4
  24. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/tests/test_bwc_imports.py +3 -0
  25. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/tests/test_testing.py +6 -3
  26. zope_app_component-6.0/src/zope/app/component/vocabulary.py +23 -0
  27. zope_app_component-6.0/src/zope.app.component.egg-info/PKG-INFO +299 -0
  28. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope.app.component.egg-info/SOURCES.txt +3 -6
  29. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope.app.component.egg-info/requires.txt +1 -1
  30. zope_app_component-6.0/tox.ini +71 -0
  31. zope.app.component-4.1.0/.coveragerc +0 -6
  32. zope.app.component-4.1.0/MANIFEST.in +0 -10
  33. zope.app.component-4.1.0/PKG-INFO +0 -219
  34. zope.app.component-4.1.0/bootstrap.py +0 -210
  35. zope.app.component-4.1.0/buildout.cfg +0 -18
  36. zope.app.component-4.1.0/setup.cfg +0 -7
  37. zope.app.component-4.1.0/src/zope/__init__.py +0 -1
  38. zope.app.component-4.1.0/src/zope/app/__init__.py +0 -1
  39. zope.app.component-4.1.0/src/zope/app/component/__init__.py +0 -59
  40. zope.app.component-4.1.0/src/zope.app.component.egg-info/PKG-INFO +0 -219
  41. zope.app.component-4.1.0/src/zope.app.component.egg-info/namespace_packages.txt +0 -2
  42. zope.app.component-4.1.0/tox.ini +0 -9
  43. {zope.app.component-4.1.0 → zope_app_component-6.0}/COPYRIGHT.txt +0 -0
  44. {zope.app.component-4.1.0 → zope_app_component-6.0}/LICENSE.txt +0 -0
  45. {zope.app.component-4.1.0 → zope_app_component-6.0}/README.rst +0 -0
  46. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/configure.zcml +0 -0
  47. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/ftesting.zcml +0 -0
  48. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/registration.pt +0 -0
  49. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/site.rst +0 -0
  50. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/browser/siteregistration.pt +0 -0
  51. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/configure.zcml +0 -0
  52. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/contentdirective.py +0 -0
  53. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/ftesting.zcml +0 -0
  54. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/interfaces/tests/__init__.py +0 -0
  55. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope/app/component/meta.zcml +0 -0
  56. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope.app.component.egg-info/dependency_links.txt +0 -0
  57. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope.app.component.egg-info/not-zip-safe +0 -0
  58. {zope.app.component-4.1.0 → zope_app_component-6.0}/src/zope.app.component.egg-info/top_level.txt +0 -0
@@ -0,0 +1,28 @@
1
+ # Generated from:
2
+ # https://github.com/zopefoundation/meta/tree/master/config/pure-python
3
+ minimum_pre_commit_version: '3.6'
4
+ repos:
5
+ - repo: https://github.com/pycqa/isort
6
+ rev: "6.0.1"
7
+ hooks:
8
+ - id: isort
9
+ - repo: https://github.com/hhatto/autopep8
10
+ rev: "v2.3.2"
11
+ hooks:
12
+ - id: autopep8
13
+ args: [--in-place, --aggressive, --aggressive]
14
+ - repo: https://github.com/asottile/pyupgrade
15
+ rev: v3.20.0
16
+ hooks:
17
+ - id: pyupgrade
18
+ args: [--py39-plus]
19
+ - repo: https://github.com/isidentical/teyit
20
+ rev: 0.4.3
21
+ hooks:
22
+ - id: teyit
23
+ - repo: https://github.com/PyCQA/flake8
24
+ rev: "7.3.0"
25
+ hooks:
26
+ - id: flake8
27
+ additional_dependencies:
28
+ - flake8-debugger == 4.1.2
@@ -2,6 +2,31 @@
2
2
  CHANGES
3
3
  =======
4
4
 
5
+ 6.0 (2025-09-12)
6
+ ----------------
7
+
8
+ - Replace ``pkg_resources`` namespace with PEP 420 native namespace.
9
+
10
+ - Add support for Python 3.12, 3.13.
11
+
12
+ - Drop support for Python 3.7, 3.8.
13
+
14
+
15
+ 5.0 (2023-02-21)
16
+ ----------------
17
+
18
+ - Add support for Python 3.8, 3.9, 3.10, 3.11.
19
+
20
+ - Drop support for Python 2.7, 3.4, 3.5, 3.6.
21
+
22
+ - Remove deprecated:
23
+
24
+ - ``zope.app.component.getNextUtility`` (import from ``zope.site``)
25
+ - ``zope.app.component.queryNextUtility`` (import from ``zope.site``)
26
+ - ``zope.app.component.getNextSiteManager`` (no replacement)
27
+ - ``zope.app.component.queryNextSiteManager`` (no replacement)
28
+
29
+
5
30
  4.1.0 (2018-10-22)
6
31
  ------------------
7
32
 
@@ -0,0 +1,23 @@
1
+ <!--
2
+ Generated from:
3
+ https://github.com/zopefoundation/meta/tree/master/config/pure-python
4
+ -->
5
+ # Contributing to zopefoundation projects
6
+
7
+ The projects under the zopefoundation GitHub organization are open source and
8
+ welcome contributions in different forms:
9
+
10
+ * bug reports
11
+ * code improvements and bug fixes
12
+ * documentation improvements
13
+ * pull request reviews
14
+
15
+ For any changes in the repository besides trivial typo fixes you are required
16
+ to sign the contributor agreement. See
17
+ https://www.zope.dev/developer/becoming-a-committer.html for details.
18
+
19
+ Please visit our [Developer
20
+ Guidelines](https://www.zope.dev/developer/guidelines.html) if you'd like to
21
+ contribute code changes and our [guidelines for reporting
22
+ bugs](https://www.zope.dev/developer/reporting-bugs.html) if you want to file a
23
+ bug report.
@@ -0,0 +1,13 @@
1
+ # Generated from:
2
+ # https://github.com/zopefoundation/meta/tree/master/config/pure-python
3
+ include *.md
4
+ include *.rst
5
+ include *.txt
6
+ include buildout.cfg
7
+ include tox.ini
8
+ include .pre-commit-config.yaml
9
+
10
+ recursive-include src *.py
11
+ recursive-include src *.pt
12
+ recursive-include src *.rst
13
+ recursive-include src *.zcml
@@ -0,0 +1,299 @@
1
+ Metadata-Version: 2.4
2
+ Name: zope.app.component
3
+ Version: 6.0
4
+ Summary: Local Zope Component Support
5
+ Home-page: https://github.com/zopefoundation/zope.app.component
6
+ Author: Zope Foundation and Contributors
7
+ Author-email: zope-dev@zope.dev
8
+ License: ZPL-2.1
9
+ Keywords: zope component architecture local
10
+ Classifier: Development Status :: 5 - Production/Stable
11
+ Classifier: Environment :: Web Environment
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: License :: OSI Approved :: Zope Public License
14
+ Classifier: Programming Language :: Python
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.9
17
+ Classifier: Programming Language :: Python :: 3.10
18
+ Classifier: Programming Language :: Python :: 3.11
19
+ Classifier: Programming Language :: Python :: 3.12
20
+ Classifier: Programming Language :: Python :: 3.13
21
+ Classifier: Programming Language :: Python :: Implementation :: CPython
22
+ Classifier: Programming Language :: Python :: Implementation :: PyPy
23
+ Classifier: Natural Language :: English
24
+ Classifier: Operating System :: OS Independent
25
+ Classifier: Topic :: Internet :: WWW/HTTP
26
+ Classifier: Framework :: Zope :: 3
27
+ Requires-Python: >=3.9
28
+ License-File: LICENSE.txt
29
+ Requires-Dist: setuptools
30
+ Requires-Dist: zope.site
31
+ Requires-Dist: zope.app.container>=4.0
32
+ Requires-Dist: zope.app.pagetemplate>=4.0
33
+ Requires-Dist: zope.component[hook,zcml]>=4.3.0
34
+ Requires-Dist: zope.deprecation
35
+ Requires-Dist: zope.exceptions
36
+ Requires-Dist: zope.formlib
37
+ Requires-Dist: zope.i18nmessageid
38
+ Requires-Dist: zope.interface
39
+ Requires-Dist: zope.publisher>=4.3.1
40
+ Requires-Dist: zope.schema
41
+ Requires-Dist: zope.security
42
+ Requires-Dist: zope.traversing
43
+ Requires-Dist: zope.componentvocabulary
44
+ Provides-Extra: test
45
+ Requires-Dist: zope.app.appsetup; extra == "test"
46
+ Requires-Dist: zope.app.basicskin>=4.0; extra == "test"
47
+ Requires-Dist: zope.app.container[test]>=4.0; extra == "test"
48
+ Requires-Dist: zope.app.content; extra == "test"
49
+ Requires-Dist: zope.app.dependable>=4.0; extra == "test"
50
+ Requires-Dist: zope.app.http; extra == "test"
51
+ Requires-Dist: zope.app.pagetemplate>=4.0; extra == "test"
52
+ Requires-Dist: zope.app.principalannotation; extra == "test"
53
+ Requires-Dist: zope.app.publication; extra == "test"
54
+ Requires-Dist: zope.app.publisher; extra == "test"
55
+ Requires-Dist: zope.app.rotterdam>=4.0; extra == "test"
56
+ Requires-Dist: zope.app.schema; extra == "test"
57
+ Requires-Dist: zope.app.testing; extra == "test"
58
+ Requires-Dist: zope.app.wsgi; extra == "test"
59
+ Requires-Dist: zope.applicationcontrol; extra == "test"
60
+ Requires-Dist: zope.browser; extra == "test"
61
+ Requires-Dist: zope.browserresource; extra == "test"
62
+ Requires-Dist: zope.copypastemove; extra == "test"
63
+ Requires-Dist: zope.login; extra == "test"
64
+ Requires-Dist: zope.password; extra == "test"
65
+ Requires-Dist: zope.principalannotation; extra == "test"
66
+ Requires-Dist: zope.principalregistry; extra == "test"
67
+ Requires-Dist: zope.proxy>=4.2.1; extra == "test"
68
+ Requires-Dist: zope.securitypolicy; extra == "test"
69
+ Requires-Dist: zope.site; extra == "test"
70
+ Requires-Dist: zope.testbrowser>=5.2; extra == "test"
71
+ Requires-Dist: zope.testing; extra == "test"
72
+ Requires-Dist: zope.testrunner>=6.4; extra == "test"
73
+ Dynamic: author
74
+ Dynamic: author-email
75
+ Dynamic: classifier
76
+ Dynamic: description
77
+ Dynamic: home-page
78
+ Dynamic: keywords
79
+ Dynamic: license
80
+ Dynamic: license-file
81
+ Dynamic: provides-extra
82
+ Dynamic: requires-dist
83
+ Dynamic: requires-python
84
+ Dynamic: summary
85
+
86
+ NOTE: this package is deprecated. Its functionality has been moved to
87
+ more reusable packages, namely: zope.component, zope.security, zope.site
88
+ and zope.componentvocabulary. Please import from there instead.
89
+
90
+ This package provides various ZCML directives (view, resource) and a
91
+ user interface related to local component management.
92
+
93
+
94
+ .. contents::
95
+
96
+ =======
97
+ CHANGES
98
+ =======
99
+
100
+ 6.0 (2025-09-12)
101
+ ----------------
102
+
103
+ - Replace ``pkg_resources`` namespace with PEP 420 native namespace.
104
+
105
+ - Add support for Python 3.12, 3.13.
106
+
107
+ - Drop support for Python 3.7, 3.8.
108
+
109
+
110
+ 5.0 (2023-02-21)
111
+ ----------------
112
+
113
+ - Add support for Python 3.8, 3.9, 3.10, 3.11.
114
+
115
+ - Drop support for Python 2.7, 3.4, 3.5, 3.6.
116
+
117
+ - Remove deprecated:
118
+
119
+ - ``zope.app.component.getNextUtility`` (import from ``zope.site``)
120
+ - ``zope.app.component.queryNextUtility`` (import from ``zope.site``)
121
+ - ``zope.app.component.getNextSiteManager`` (no replacement)
122
+ - ``zope.app.component.queryNextSiteManager`` (no replacement)
123
+
124
+
125
+ 4.1.0 (2018-10-22)
126
+ ------------------
127
+
128
+ - Add support for Python 3.7.
129
+
130
+
131
+ 4.0.0 (2017-05-02)
132
+ ------------------
133
+
134
+ - Remove test dependencies on zope.app.testing, zope.app.zcmlfiles,
135
+ and others.
136
+
137
+ - Remove install dependency on zope.app.form, replaced with direct
138
+ imports of zope.formlib.
139
+
140
+ - Simplify ``zope.app.component.testing`` to remove the deprecated or
141
+ broken functionality in ``testingNextUtility`` and
142
+ ``SiteManagerStub``. ``PlacefulSetup`` is retained (and incorporates
143
+ much of what was previously inherited from ``zope.app.testing``),
144
+ although use of ``zope.component.testing.PlacelessSetup`` is
145
+ suggested when possible.
146
+
147
+ - Add support for PyPy and Python 3.4, 3.5 and 3.6.
148
+
149
+
150
+ 3.9.3 (2011-07-27)
151
+ ------------------
152
+
153
+ - Replaced an undeclared test dependency on ``zope.app.authentication`` with
154
+ ``zope.password``.
155
+
156
+ - Removed unneeded dependencies.
157
+
158
+
159
+ 3.9.2 (2010-09-17)
160
+ ------------------
161
+
162
+ - Replaced a testing dependency on ``zope.app.securitypolicy`` with one on
163
+ ``zope.securitypolicy``.
164
+
165
+
166
+ 3.9.1 (2010-09-01)
167
+ ------------------
168
+
169
+ - No longer using deprecated ``zope.testing.doctest``. Use python's build-in
170
+ ``doctest`` instead.
171
+
172
+ - Replaced the dependency on ``zope.deferredimport`` with BBB imports.
173
+
174
+
175
+ 3.9.0 (2010-07-19)
176
+ ------------------
177
+
178
+ - Added missing BBB import in ``zope.app.component.metaconfigure``.
179
+
180
+ - Requiring at least ``zope.component`` 3.8 where some modules have
181
+ moved which are BBB imported here.
182
+
183
+
184
+ 3.8.4 (2010-01-08)
185
+ ------------------
186
+
187
+ - Import hooks functionality from zope.component after it was moved there from
188
+ zope.site.
189
+
190
+ - Import ISite and IPossibleSite from zope.component after they were moved
191
+ there from zope.location. This lifts the direct dependency on zope.location.
192
+
193
+ - Fix tests using a newer zope.publisher that requires zope.login.
194
+
195
+ 3.8.3 (2009-07-11)
196
+ ------------------
197
+
198
+ - Removed unnecessary dependency on ``zope.app.interface``.
199
+
200
+
201
+ 3.8.2 (2009-05-22)
202
+ ------------------
203
+
204
+ - Fix missing import in ``zope.app.component.metadirectives``.
205
+
206
+
207
+ 3.8.1 (2009-05-21)
208
+ ------------------
209
+
210
+ - Add deprecation note.
211
+
212
+ 3.8.0 (2009-05-21)
213
+ ------------------
214
+
215
+ - IMPORTANT: this package is now empty except for some ZMI definitions
216
+ in zope.app.component.browser. Functionality from this package has
217
+ been moved to ``zope.site``, ``zope.componentvocabulary`` and
218
+ ``zope.component``, so preferably import from those locations.
219
+
220
+ - zope.componentvocabulary has the vocabulary implementations that
221
+ were in zope.app.componentvocabulary now, import them from there for
222
+ backwards compatibility.
223
+
224
+ - moved zope:resource and zope:view directive implementation and tests
225
+ over into zope.component [zcml].
226
+
227
+ 3.7.0 (2009-04-01)
228
+ ------------------
229
+
230
+ - Removed deprecated `zope:defaultView` directive and its
231
+ implementation. New directive to set default view is
232
+ `browser:defaultView`.
233
+
234
+ 3.6.1 (2009-03-12)
235
+ ------------------
236
+
237
+ - Make ``class`` directive schemas importable from old location,
238
+ raising a deprecation warning. It was moved in the previous release,
239
+ but some custom directives could possibly use its schemas.
240
+
241
+ - Deprecate import of ClassDirective to announce about new location.
242
+
243
+ - Change package's mailing list address to zope-dev at zope.org,
244
+ because zope3-dev at zope.org is now retired.
245
+
246
+ - Adapt to the move of IDefaultViewName from zope.component.interfaces
247
+ to zope.publisher.interfaces.
248
+
249
+ 3.6.0 (2009-01-31)
250
+ ------------------
251
+
252
+ - Moved the implementation of the <class> directive from this package to
253
+ `zope.security`. In particular, the module
254
+ `zope.app.component.contentdirective` has moved to
255
+ `zope.security.metaconfigure`, and a compatibility import has been
256
+ left in its place.
257
+
258
+ - Extracted `zope.site` from zope.app.component with backwards
259
+ compatibility imports in place. Local site related functionality
260
+ is now in `zope.site` and packages should import from there.
261
+
262
+ - Remove more deprecated on 3.5 code:
263
+
264
+ * zope.app.component.fields module that was pointing to the
265
+ removed back35's LayerField.
266
+ * zope.app.component.interface module that was moved to
267
+ zope.component.interface ages ago.
268
+ * zope:content and zope:localUtility directives.
269
+ * zope:factory directive.
270
+ * deprecated imports in zope.component.metaconfigure
271
+ * browser:tool directive and all zope.component.browser
272
+ meta.zcml stuff.
273
+
274
+ - Remove "back35" extras_require as it doesn't make
275
+ any sense now.
276
+
277
+ - Remove zope.modulealias test dependency as it is
278
+ not used anywhere.
279
+
280
+ - Deprecate ISite and IPossibleSite imports from
281
+ zope.app.component.interfaces. They were moved
282
+ to zope.location.interfaces ages ago. Fix imports
283
+ in zope.app.component itself.
284
+
285
+ 3.5.0 (2008-10-13)
286
+ ------------------
287
+
288
+ - Remove deprecated code slated for removal on 3.5.
289
+
290
+ 3.4.1 (2007-10-31)
291
+ ------------------
292
+
293
+ - Resolve ``ZopeSecurityPolicy`` deprecation warning.
294
+
295
+
296
+ 3.4.0 (2007-10-11)
297
+ ------------------
298
+
299
+ - Initial release independent of the main Zope tree.
@@ -0,0 +1,32 @@
1
+ # Generated from:
2
+ # https://github.com/zopefoundation/meta/tree/master/config/pure-python
3
+
4
+ [build-system]
5
+ requires = [
6
+ "setuptools == 78.1.1",
7
+ "wheel",
8
+ ]
9
+ build-backend = "setuptools.build_meta"
10
+
11
+ [tool.coverage.run]
12
+ branch = true
13
+ source = ["zope.app.component"]
14
+
15
+ [tool.coverage.report]
16
+ fail_under = 97
17
+ precision = 2
18
+ ignore_errors = true
19
+ show_missing = true
20
+ exclude_lines = [
21
+ "pragma: no cover",
22
+ "pragma: nocover",
23
+ "except ImportError:",
24
+ "raise NotImplementedError",
25
+ "if __name__ == '__main__':",
26
+ "self.fail",
27
+ "raise AssertionError",
28
+ "raise unittest.Skip",
29
+ ]
30
+
31
+ [tool.coverage.html]
32
+ directory = "parts/htmlcov"
@@ -0,0 +1,32 @@
1
+ [flake8]
2
+ doctests = 1
3
+ per-file-ignores =
4
+ src/zope/app/component/__init__.py: F401
5
+ src/zope/app/component/contentdirective.py: F401
6
+ src/zope/app/component/hooks.py: F401
7
+ src/zope/app/component/interfaces/__init__.py: F401
8
+ src/zope/app/component/metaconfigure.py: F401
9
+ src/zope/app/component/metadirectives.py: F401
10
+ src/zope/app/component/site.py: F401
11
+ src/zope/app/component/vocabulary.py: F401
12
+
13
+ [check-manifest]
14
+ ignore =
15
+ .editorconfig
16
+ .meta.toml
17
+
18
+ [isort]
19
+ force_single_line = True
20
+ combine_as_imports = True
21
+ sections = FUTURE,STDLIB,THIRDPARTY,ZOPE,FIRSTPARTY,LOCALFOLDER
22
+ known_third_party = docutils, pkg_resources, pytz
23
+ known_zope =
24
+ known_first_party =
25
+ default_section = ZOPE
26
+ line_length = 79
27
+ lines_after_imports = 2
28
+
29
+ [egg_info]
30
+ tag_build =
31
+ tag_date = 0
32
+
@@ -12,19 +12,22 @@
12
12
  #
13
13
  ##############################################################################
14
14
  # This package is developed by the Zope Toolkit project, documented here:
15
- # http://docs.zope.org/zopetoolkit
15
+ # https://zopetoolkit.readthedocs.io/
16
16
  # When developing and releasing this package, please follow the documented
17
17
  # Zope Toolkit policies as described by this documentation.
18
18
  ##############################################################################
19
19
  """Setup for zope.app.component package
20
20
  """
21
21
  import os
22
- from setuptools import setup, find_packages
22
+
23
+ from setuptools import setup
24
+
23
25
 
24
26
  def read(*rnames):
25
27
  with open(os.path.join(os.path.dirname(__file__), *rnames)) as f:
26
28
  return f.read()
27
29
 
30
+
28
31
  test_requires = [
29
32
  'zope.app.appsetup',
30
33
  'zope.app.basicskin >= 4.0',
@@ -54,19 +57,19 @@ test_requires = [
54
57
  'zope.site',
55
58
  'zope.testbrowser >= 5.2',
56
59
  'zope.testing',
57
- 'zope.testrunner',
60
+ 'zope.testrunner >= 6.4',
58
61
  ]
59
62
 
60
63
  setup(name='zope.app.component',
61
- version='4.1.0',
62
- author='Zope Corporation and Contributors',
63
- author_email='zope-dev@zope.org',
64
+ version='6.0',
65
+ author='Zope Foundation and Contributors',
66
+ author_email='zope-dev@zope.dev',
64
67
  description='Local Zope Component Support',
65
68
  long_description=(
66
69
  read('README.rst')
67
70
  + '\n\n.. contents:: \n\n' +
68
71
  read('CHANGES.rst')
69
- ),
72
+ ),
70
73
  keywords="zope component architecture local",
71
74
  classifiers=[
72
75
  'Development Status :: 5 - Production/Stable',
@@ -74,13 +77,12 @@ setup(name='zope.app.component',
74
77
  'Intended Audience :: Developers',
75
78
  'License :: OSI Approved :: Zope Public License',
76
79
  'Programming Language :: Python',
77
- 'Programming Language :: Python :: 2',
78
- 'Programming Language :: Python :: 2.7',
79
80
  'Programming Language :: Python :: 3',
80
- 'Programming Language :: Python :: 3.4',
81
- 'Programming Language :: Python :: 3.5',
82
- 'Programming Language :: Python :: 3.6',
83
- 'Programming Language :: Python :: 3.7',
81
+ 'Programming Language :: Python :: 3.9',
82
+ 'Programming Language :: Python :: 3.10',
83
+ 'Programming Language :: Python :: 3.11',
84
+ 'Programming Language :: Python :: 3.12',
85
+ 'Programming Language :: Python :: 3.13',
84
86
  'Programming Language :: Python :: Implementation :: CPython',
85
87
  'Programming Language :: Python :: Implementation :: PyPy',
86
88
  'Natural Language :: English',
@@ -89,14 +91,11 @@ setup(name='zope.app.component',
89
91
  'Framework :: Zope :: 3',
90
92
  ],
91
93
  url='https://github.com/zopefoundation/zope.app.component',
92
- license='ZPL 2.1',
93
- packages=find_packages('src'),
94
- package_dir={'': 'src'},
95
- namespace_packages=['zope', 'zope.app'],
94
+ license='ZPL-2.1',
95
+ python_requires='>=3.9',
96
96
  extras_require={
97
97
  'test': test_requires,
98
98
  },
99
- tests_require=test_requires,
100
99
  install_requires=[
101
100
  'setuptools',
102
101
  'zope.site',
@@ -116,4 +115,4 @@ setup(name='zope.app.component',
116
115
  ],
117
116
  include_package_data=True,
118
117
  zip_safe=False,
119
- )
118
+ )
@@ -11,11 +11,5 @@
11
11
  # FOR A PARTICULAR PURPOSE.
12
12
  #
13
13
  ##############################################################################
14
-
15
- # BBB
16
-
17
- from zope.componentvocabulary.vocabulary import (
18
- UtilityTerm, UtilityVocabulary, InterfacesVocabulary,
19
- UtilityComponentInterfacesVocabulary, UtilityNameTerm,
20
- UtilityNames)
21
-
14
+ """Local Component Architecture
15
+ """
@@ -13,19 +13,18 @@
13
13
  ##############################################################################
14
14
  """View support for adding and configuring utilities and adapters.
15
15
  """
16
- __docformat__ = 'restructuredtext'
17
-
18
16
  import zope.component
19
17
  import zope.component.interfaces
18
+ from zope.app.container.browser.adding import Adding
19
+ from zope.component.interfaces import IFactory
20
20
  from zope.exceptions.interfaces import UserError
21
- from zope.security.proxy import removeSecurityProxy
22
21
  from zope.publisher.browser import BrowserView
23
- from zope.component.interfaces import IFactory
24
- from zope.component.interface import searchInterface
22
+ from zope.security.proxy import removeSecurityProxy
23
+ from zope.site.site import LocalSiteManager
25
24
  from zope.traversing.browser.absoluteurl import absoluteURL
25
+
26
26
  from zope.app.component.i18n import ZopeMessageFactory as _
27
- from zope.app.container.browser.adding import Adding
28
- from zope.site.site import LocalSiteManager
27
+
29
28
 
30
29
  class ComponentAdding(Adding):
31
30
  """Adding subclass used for registerable components."""
@@ -34,7 +33,7 @@ class ComponentAdding(Adding):
34
33
 
35
34
  def add(self, content):
36
35
  # Override so as to save a reference to the added object
37
- self.added_object = super(ComponentAdding, self).add(content)
36
+ self.added_object = super().add(content)
38
37
  return self.added_object
39
38
 
40
39
  def nextURL(self):
@@ -45,12 +44,12 @@ class ComponentAdding(Adding):
45
44
  (self.added_object, self.request), name='absolute_url'))
46
45
  return url + "/@@registration.html"
47
46
 
48
- return super(ComponentAdding, self).nextURL() # pragma: no cover
47
+ return super().nextURL() # pragma: no cover
49
48
 
50
49
  def action(self, type_name, id=''):
51
50
  # For special case of that we want to redirect to another adding view
52
51
  # (usually another menu such as AddUtility)
53
- if type_name.startswith("../"): # pragma: no cover
52
+ if type_name.startswith("../"): # pragma: no cover
54
53
  # Special case
55
54
  url = type_name
56
55
  if id:
@@ -60,14 +59,14 @@ class ComponentAdding(Adding):
60
59
 
61
60
  # Call the superclass action() method.
62
61
  # As a side effect, self.added_object is set by add() above.
63
- super(ComponentAdding, self).action(type_name, id)
62
+ super().action(type_name, id)
64
63
 
65
64
  _addFilterInterface = None
66
65
 
67
66
  def addingInfo(self):
68
67
  # A site management folder can have many things. We only want
69
68
  # things that implement a particular interface
70
- info = super(ComponentAdding, self).addingInfo()
69
+ info = super().addingInfo()
71
70
  if self._addFilterInterface is None:
72
71
  return info
73
72
  out = []
@@ -101,7 +100,7 @@ class UtilityAdding(ComponentAdding):
101
100
  url = absoluteURL(self.added_object, self.request)
102
101
  return url + "/@@addRegistration.html"
103
102
 
104
- return super(UtilityAdding, self).nextURL() # pragma: no cover
103
+ return super().nextURL() # pragma: no cover
105
104
 
106
105
 
107
106
  class MakeSite(BrowserView):
@@ -151,7 +150,7 @@ class MakeSite(BrowserView):
151
150
 
152
151
  """
153
152
  if zope.component.interfaces.ISite.providedBy(self.context):
154
- raise UserError(_(u'This is already a site'))
153
+ raise UserError(_('This is already a site'))
155
154
 
156
155
  # We don't want to store security proxies (we can't,
157
156
  # actually), so we have to remove proxies here before passing