summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Make Provides and ClassProvides ignore redundant interfaces like @implementerissue207Jason Madden2021-03-174-6/+115
| | | | cf #207
* Merge pull request #231 from zopefoundation/issue230Jason Madden2021-03-176-7/+257
|\ | | | | Add IAdapterRegistry.subscribed and Components.rebuildUtilityRegistryFromLocalCache
| * Tweak wrapping in subscribed() docstring.issue230Jason Madden2021-03-161-2/+2
| |
| * Add missing quote in docstring in src/zope/interface/registry.pyJason Madden2021-03-161-1/+1
| | | | | | Co-authored-by: Marius Gedminas <marius@gedmin.as>
| * Share code between registered and subscribed.Jason Madden2021-03-151-20/+20
| |
| * Add IAdapterRegistry.subscribed and ↵Jason Madden2021-03-156-4/+254
|/ | | | | | Components.rebuildUtilityRegistryFromLocalCache Fixes #230
* Merge pull request #228 from zopefoundation/issue224Jason Madden2021-03-156-33/+942
|\ | | | | Let subclasses of BaseAdapterRegistry customize the data structures.
| * Expand on some comments. [skip ci]Jason Madden2021-03-151-1/+14
| |
| * Move itertools import to module scope.issue224Jason Madden2021-03-153-32/+79
| | | | | | | | Also tweak docs.
| * Let subclasses of BaseAdapterRegistry customize the data structures.Jason Madden2021-03-035-30/+879
|/ | | | | | | | | | | | Add extensive tests for this. Fixes #224. Also adds test for, and fixes #227 Add BAR.rebuild() to fix the refcount issue, and to change datatypes. It works by using the new methods allRegistrations() and allSubscriptions() to re-create the data in new data structures. This makes fresh calls to subscribe() and register(). I went this way instead of trying to manually walk the data structures and create them because the logic in those methods is fully tested.
* Merge pull request #226 from zopefoundation/issue225Jason Madden2021-03-036-148/+456
|\ | | | | First pass at github actions.
| * Typo fixesissue225Jason Madden2021-03-013-6/+2
| |
| * manylinux2010 stopped shipping Python 2.7, so use a tagged version that ↵Jason Madden2021-02-261-3/+4
| | | | | | | | | | | | still has it. See https://github.com/pypa/manylinux/issues/428
| * First pass at github actions.Jason Madden2021-02-266-148/+459
|/ | | | | | | | | | | | | | | | | | | Fixes #225. Someone will need to add a `TWINE_PASSWORD` GitHub repository secret that is a token for `zope.eggbuilder` to upload to zope.interface. Builds and uploads manylinux32/64/aarch64 wheels. Builds and uploads Mac wheels. Builds the docs. Runs tests with the C extension and without the C extension. Reports coverage to coveralls. Has the start of an environment to do linting. Removes .travis.yml
* Back to development: 5.2.1Michael Howitz2020-11-052-1/+7
|
* Preparing release 5.2.05.2.0Michael Howitz2020-11-052-2/+2
|
* Add support for Python 3.9. (#222)Michael Howitz2020-11-057-217/+29
|
* Add support for arm64 wheelodidev2020-11-052-0/+14
|
* Merge pull request #221 from zopefoundation/all-repos_autofix_all-repos-sedMarius Gedminas2020-10-281-2/+2
|\ | | | | Update badge URL for Travis
| * Update badge URL for Travisall-repos_autofix_all-repos-sedJürgen Gmach2020-10-281-2/+2
|/ | | | Committed via https://github.com/asottile/all-repos
* Merge pull request #220 from zopefoundation/doc_persistency_equality#218Dieter Maurer2020-10-263-12/+320
|\ | | | | Document persistency and equality
| * Add more persistence examples.doc_persistency_equality#218Jason Madden2020-10-231-0/+56
| |
| * Explore more details of persistence and expand on the motivation for how ↵Jason Madden2020-10-231-65/+162
| | | | | | | | this relates to equality/hashing/sorting.
| * Add example from #220 to the specification docs and expand it.Jason Madden2020-10-231-8/+97
| |
| * cosmeticsdieter2020-10-191-0/+1
| |
| * add exampledieter2020-10-191-1/+28
| |
| * Document persistency and equalitydieter2020-10-162-1/+39
|/
* Back to development: 5.1.3Jason Madden2020-10-012-1/+7
|
* Preparing release 5.1.25.1.2Jason Madden2020-10-012-2/+2
|
* Merge pull request #215 from minddistrict/masterJan-Jaap Driessen2020-10-014-16/+31
|\ | | | | Make sure to call each invariant only once when validating invariants.
| * Merge branch 'master' of github.com:zopefoundation/zope.interface into masterJan-Jaap Driessen2020-10-015-7/+132
| |\ | |/ |/|
* | Back to development: 5.1.2Jason Madden2020-09-302-1/+7
| |
* | Preparing release 5.1.15.1.1Jason Madden2020-09-302-2/+2
| |
* | Merge pull request #217 from zopefoundation/issue216Jason Madden2020-09-304-0/+122
|\ \ | | | | | | C optimizations: Spec_clear and Spec_traverse need to include Spec->_bases
| * | Add info on the interaction of weakrefs and interface hashing.issue216Jason Madden2020-09-302-0/+85
| | |
| * | C optimizations: Spec_clear and Spec_traverse need to include Spec->_basesJason Madden2020-09-283-0/+37
|/ / | | | | | | | | | | Previously they did not, leading to a reference leak of a tuple. Fixes #216
| * Use queryDirectTaggedValue to find invariants removes the need to keep track ↵Jan-Jaap Driessen2020-10-011-21/+13
| | | | | | | | of invariants we have already seen.
| * Fix rst syntax/line folding.Jan-Jaap Driessen2020-10-011-3/+5
| |
| * Use an internal method for validating invariants, so we don't taint the ↵Jan-Jaap Driessen2020-09-281-5/+6
| | | | | | | | public interface/signature.
| * Update CHANGES.rstJan-Jaap Driessen2020-09-281-3/+3
| | | | | | Co-authored-by: Jason Madden <jason+github@nextthought.com>
| * When an invariant is defined in an interface, it's found byJan-Jaap Driessen2020-09-254-2/+25
|/ | | | | `validateInvariants` in all interfaces inheriting from that interface. Make sure to call each invariant only once when validating invariants.
* Merge pull request #209 from zopefoundation/issue208Jason Madden2020-04-234-79/+120
|\ | | | | Fix interface definitions of IAdapterRegistry.subscribe, subscribers, subscriptions
| * Fix interface definitions of IAdapterRegistry.subscribe, subscribers and ↵Jason Madden2020-04-234-79/+120
|/ | | | | | | | subscriptions. They were defined to accept a name argument, but the actual implementation doesn't. Add tests for this. Fixes #208. Also in test_adapter.py modernize idioms from assertTrue(x in y) and assertTrue(x is y) to assertIn and assertIs.
* Back to development: 5.1.1Jason Madden2020-04-082-1/+7
|
* Preparing release 5.1.05.1.0Jason Madden2020-04-082-2/+2
|
* Merge pull request #203 from zopefoundation/issue199Jason Madden2020-04-086-155/+265
|\ | | | | Make @implementer and classImplements not add redundant interfaces
| * Fix implementerOnly when duplicating something inherited from the parent.issue199Jason Madden2020-04-072-79/+89
| | | | | | | | | | | | Seen in plone.app.testing as a problem in Products.GenericSetup. Added tests for that.
| * Special case the base Interface in @implementer/classImplements to skip the ↵Jason Madden2020-04-074-11/+44
| | | | | | | | redundancy detection for the sake of plone.app.caching.
| * Make @implementer and classImplements not re-declare redundant interfaces.Jason Madden2020-04-074-97/+164
| | | | | | | | classImplementsOnly and @implementer_only can still be used to do that.
* | Merge pull request #205 from zopefoundation/issue204Jason Madden2020-04-073-6/+45
|\ \ | | | | | | The ImmutableDeclaration also has immutable _v_attrs.