| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | cache on volatile attribute in case class is persisted in ZODBhash_performance | Jens W. Klein | 2020-01-25 | 1 | -3/+3 |
| | | |||||
| * | Improve InterfaceClass __hash__ performance | Jens W. Klein | 2020-01-24 | 1 | -5/+9 |
| | | |||||
| * | Use tp_members in SpecificationBase and ClassProvidesBase. | Jason Madden | 2020-01-23 | 1 | -1/+5 |
| | | | | | | | | | | | | | Instead of storing 1 and 2 attributes, respectively, in __dict__. This lets us eliminate inst_attr and its use of an undocumented API. It also helps reign in the size of these objects. Before, on CPython 8, a ClassProvides object that subclasses both SpecificationBase and ClassProvidesBase required 408 bytes: 48 for the object, 360 for the dict. Now it requires 72 + 232 = 304. With a bit of work on defining __slots__ in Python, that can be brought much lower still, I think. zope.security tests pass with this installed. | ||||
| * | Test PURE_PYTHON at runtime. | Jason Madden | 2020-01-21 | 1 | -27/+18 |
| | | | | | | | | Turns out that the C extensions build and work fine with PyPy, but don't use them by default. Let them be forced, though. Tests needed some refactoring to account for the various permutations. | ||||
| * | fix 'dict_keys' object has no attribute 'extend' | mauro | 2019-10-09 | 1 | -3/+5 |
| | | |||||
| * | taggedvalue inheritance | mauro | 2019-10-09 | 1 | -0/+25 |
| | | |||||
| * | Formatting and cross refs for the 'Interface Specification' doc | Jason Madden | 2018-07-19 | 1 | -2/+3 |
| | | |||||
| * | Drop __annotations__ in interface declarations | Maxim Avanov | 2017-09-01 | 1 | -1/+2 |
| | | |||||
| * | Enable combined coverage reports under tox and branch coveragecombined-coverage | Jason Madden | 2017-06-14 | 1 | -3/+3 |
| | | | | | | | | | Fixes #91 Remove many (or most) now-redundant 'pragma: no cover'. A few minor test changes to get full branch coverage. | ||||
| * | 100% coverage (#90) | Jason Madden | 2017-06-12 | 1 | -7/+7 |
| | | | | | | | | | | | | | | | | | | | | | | * Get as close to 100% coverage as possible. Without conflicting with #86. This is almost entirely trivial changes: - Make dummy methods that should never be called either raise NotImplementedError or call self.fail() in tests. - Standardize the no-coverage pragma - Add a few pragmas where coverage varies across versions/implementations, mostly for the sake of tox (travis should hit them all). * Convert tox to run the coverage command, like travis. A follow up should have it produce coverage for all python versions/implementations. Fixes #87 * Adjust coverage config for py2 only tests; fix typo; finish replacing self with cls | ||||
| * | Fix C optimizations broken on Py3k.60-fix_c_optimizations-py3k | Tres Seaver | 2016-11-15 | 1 | -3/+3 |
| | | | | | | | | | | | - The bare import of '_zope_c_optimizations' prevented them from being used. - After enabling them via absolute imports, they would fail due to http://bugs.python.org/issue15657. Fixes #60. | ||||
| * | Make declarations.Implements sortable.comp-implements | Jason Madden | 2016-08-03 | 1 | -1/+1 |
| | | | | | Fixes #42 | ||||
| * | 100% branch coverage. | Tres Seaver | 2014-12-09 | 1 | -1/+1 |
| | | | | | | | We exclude interfaces declared with the 'class' statement, because their methods typically have only a doctstring in the suite, which confuses the branch coverage machinery. | ||||
| * | Remove fossilized 'InterfaceClass.deferred()'. | Tres Seaver | 2014-12-08 | 1 | -28/+1 |
| | | |||||
| * | - Fixed a bug that was revealed by porting zope.traversing. During a loop, the | Stephan Richter | 2013-02-21 | 1 | -1/+1 |
| | | | | | loop body modified a weakref dict causing a ``RuntimeError`` error | ||||
| * | further simplify some attribute lookups | Fred Drake | 2012-04-06 | 1 | -2/+2 |
| | | |||||
| * | Drop unneeded compatibility shims for method / function attributes. | Tres Seaver | 2012-04-06 | 1 | -6/+3 |
| | | | | | | '__code__', '__defaults__', '__func__', and '__self__' all work fine on Python 2.6+. | ||||
| * | Move commented-out doctest snippets into API docs as real snippets. | Tres Seaver | 2012-04-06 | 1 | -140/+3 |
| | | |||||
| * | Merge Py3k w/o 2to3 work. | Tres Seaver | 2012-04-04 | 1 | -152/+153 |
| | | |||||
| * | Merge from LP branch. | Tres Seaver | 2012-03-26 | 1 | -24/+35 |
| | | |||||
| * | Avoid exceptions due to tne new ``__qualname__`` attribute added in Python 3.3 | Tres Seaver | 2012-02-16 | 1 | -3/+5 |
| | | | | | | | | See PEP 3155 for rationale. Thanks to Antoine Pitrou for the patch. Fixes LP #900906. | ||||
| * | Work around buggy behavior in some subclasses of `InterfaceClass`` | Tres Seaver | 2011-08-11 | 1 | -0/+5 |
| | | | | | | | | | | Some sublcasses invoke '__hash__' before initializing '__module__' and '__name__'. The workaround returns a fixed constant hash in such cases, and issues a UserWarning. Addresses LP #811792. | ||||
| * | Revert r122462 after updating zope.app.interface. | Tres Seaver | 2011-08-11 | 1 | -2/+1 |
| | | |||||
| * | Fix a regression introduced in 3.6.4, that made one zope.app.interface test fail | Gediminas Paulauskas | 2011-08-04 | 1 | -1/+2 |
| | | |||||
| * | LP 804951: InterfaceClass instances were unhashable under Python 3.x. | Tres Seaver | 2011-07-05 | 1 | -0/+3 |
| | | |||||
| * | Correct comparison of interfaces from different modules but with the same name. | Tres Seaver | 2011-05-26 | 1 | -9/+19 |
| | | | | | | Fixes LP #570942. | ||||
| * | Clear the cache used by ``Specificaton.get`` inside ``Specification.changed``. | Tres Seaver | 2010-04-13 | 1 | -0/+4 |
| | | | | | | | | Fixes LP #185974: Thanks to Jacob Holm for the patch. | ||||
| * | Merge of regebro-python3 branch, adding Python 3.1 compatibility\! | Lennart Regebro | 2010-04-09 | 1 | -15/+13 |
| | | |||||
| * | Comply with repository policy. | Tres Seaver | 2010-04-06 | 1 | -1/+1 |
| | | |||||
| * | Revert incorrect copyright header update. | Christian Theune | 2009-12-17 | 1 | -1/+1 |
| | | |||||
| * | Cleanups: make pyflakes happy. | Tres Seaver | 2009-12-17 | 1 | -13/+20 |
| | | |||||
| * | Updating copyright header after transfer of ownership to the Zope Foundation | Christian Theune | 2009-11-02 | 1 | -1/+1 |
| | | |||||
| * | reverted r81363 since it "breaks assigning to __class__, which the twisted ↵ | Andreas Zeidler | 2008-01-14 | 1 | -6/+6 |
| | | | | | folks depend on" | ||||
| * | using `__setattr__` instead of `property` speeds up zope start-up time ↵ | Andreas Zeidler | 2007-11-01 | 1 | -6/+6 |
| | | | | | again, since getting the value for `__bases__` through `__dict__` adds up with almost 200.000 calls; of course, there's some overhead, since `__setattr__` gets called for the other attributes as well, but overall start-up is still faster | ||||
| * | Moving code to satellite. | Christian Theune | 2007-05-03 | 1 | -0/+811 |
| | | |||||
| * | Removed interface copy | Jim Fulton | 2006-03-11 | 1 | -916/+0 |
| | | |||||
| * | Correcting borked move. | Nathan Yergler | 2006-02-27 | 1 | -0/+916 |
