Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

regression in 4.3.0 #53

Closed
mmerickel opened this issue Aug 31, 2016 · 8 comments
Closed

regression in 4.3.0 #53

mmerickel opened this issue Aug 31, 2016 · 8 comments

Comments

@mmerickel
Copy link

4.3.0 broke almost every single test in pyramid's test suite and appears to be related to #46

See https://travis-ci.org/Pylons/pyramid/jobs/156458742 for an example or a snippet pasted below (all the failures look the same):

ERROR: test_authenticated_userid_fails_cleaning_as_Authenticated (pyramid.tests.test_authentication.TestCallbackAuthenticationPolicyDebugging)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/build/Pylons/pyramid/pyramid/tests/test_authentication.py", line 12, in setUp
    self.config = testing.setUp()
  File "/home/travis/build/Pylons/pyramid/pyramid/testing.py", line 470, in setUp
    config._set_settings(settings)
  File "/home/travis/build/Pylons/pyramid/pyramid/config/settings.py", line 15, in _set_settings
    self.registry.settings = settings
  File "/home/travis/build/Pylons/pyramid/pyramid/registry.py", line 99, in _set_settings
    self.registerUtility(settings, ISettings)
  File "/home/travis/build/Pylons/pyramid/.tox/py27/lib/python2.7/site-packages/zope/interface/registry.py", line 227, in registerUtility
    _UtilityRegistrations.for_components(self).registerUtility(provided, name, component, info, factory)
  File "/home/travis/build/Pylons/pyramid/.tox/py27/lib/python2.7/site-packages/zope/interface/registry.py", line 82, in for_components
    regs = cls._regs_for_components[components]
  File "/opt/python/2.7.9/lib/python2.7/weakref.py", line 315, in __getitem__
    return self.data[ref(key)]
TypeError: unhashable type: 'Registry'
@mmerickel
Copy link
Author

mmerickel commented Aug 31, 2016

This issue presents itself in production (at runtime of a normal pyramid app) as well. Not just in the test suite.

robertknight added a commit to hypothesis/h that referenced this issue Aug 31, 2016
robertknight added a commit to hypothesis/h that referenced this issue Aug 31, 2016
robertknight added a commit to hypothesis/h that referenced this issue Aug 31, 2016
@jamadden
Copy link
Member

Pyramid uses multiple-inheritance to subclass Components and dict, hence leading to this issue. I guess we'll have to figure out another way to associate the necessary data.

@icemac
Copy link
Member

icemac commented Aug 31, 2016

Fix released in 4.3.1.

@icemac
Copy link
Member

icemac commented Aug 31, 2016

@mmerickel Please test using 4.3.1 in Pyramid.

@jamadden
Copy link
Member

Locally I get a clean run of the Pyramid tests using 4.3.1 (and I reproduce the failures with 4.3.0).

@stevepiercy
Copy link

Looks good in pyramid_jinja2, which depends on Pyramid https://travis-ci.org/Pylons/pyramid_jinja2/builds/156490621

Thank you for the quick turnaround.

@digitalresistor
Copy link

Pyramid is once again building on Travis: https://travis-ci.org/Pylons/pyramid/builds/156458741

@mmerickel
Copy link
Author

@icemac, @jamadden Thank you for the quick fix!

jsonn pushed a commit to jsonn/pkgsrc that referenced this issue Sep 1, 2016
Add missing dependency.

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)


4.3.0 (2016-08-31)
------------------

- Add the ability to sort the objects returned by ``implementedBy``.
  This is compatible with the way interface classes sort so they can
  be used together in ordered containers like BTrees.
  (zopefoundation/zope.interface#42)

- Make ``setuptools`` a hard dependency of ``setup.py``.
  (zopefoundation/zope.interface#13)

- Change a linear algorithm (O(n)) in ``Components.registerUtility`` and
  ``Components.unregisterUtility`` into a dictionary lookup (O(1)) for
  hashable components. This substantially improves the time taken to
  manipulate utilities in large registries at the cost of some
  additional memory usage. (zopefoundation/zope.interface#46)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue Oct 18, 2016
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue Jan 11, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue Jan 17, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue Feb 16, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue Apr 24, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue May 5, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue May 15, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
clrpackages pushed a commit to clearlinux-pkgs/zope.interface that referenced this issue Jun 15, 2017
…rsion 4.3.2

Changes
=======

4.3.2 (2016-09-05)
------------------

- Fix equality testing of ``implementedBy`` objects and proxies.
  (zopefoundation/zope.interface#55)

4.3.1 (2016-08-31)
------------------

- Support Components subclasses that are not hashable.
  (zopefoundation/zope.interface#53)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants