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

17.1.0 apparently breaks automat (and thus Twisted) #191

Closed
mithrandi opened this issue May 16, 2017 · 5 comments
Closed

17.1.0 apparently breaks automat (and thus Twisted) #191

mithrandi opened this issue May 16, 2017 · 5 comments

Comments

@mithrandi
Copy link
Contributor

mithrandi commented May 16, 2017

  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/xmantissa/port.py", line 52, in <module>
    from twisted.application.strports import service
  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/twisted/application/strports.py", line 14, in <module>
    from twisted.application.internet import StreamServerEndpointService
  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/twisted/application/internet.py", line 542, in <module>
    class _ClientMachine(object):
  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/twisted/application/internet.py", line 842, in _ClientMachine
    outputs=[_connect])
  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/automat/_methodical.py", line 62, in upon
    self.machine._oneTransition(self, input, enter, outputs, collector)
  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/automat/_methodical.py", line 255, in _oneTransition
    tuple(outputTokens))
  File "/home/travis/build/fusionapp/entropy/.tox/py27/lib/python2.7/site-packages/automat/_core.py", line 74, in addTransition
    (inState, inputSymbol, outState, tuple(outputSymbols))
exceptions.TypeError: unhashable type: 'MethodicalState'
@hynek
Copy link
Member

hynek commented May 16, 2017

cough #136 (comment)

@Tinche
Copy link
Member

Tinche commented May 16, 2017

You'll have to opt into being hashable by using attr.s(hash=True) since MethodicalState is mutable. Or make it frozen, then you'll get hashability by default.

@glyph
Copy link
Contributor

glyph commented May 17, 2017

As the above reference shows, this is now fixed in Automat and therefore Twisted. But we should probably work out a system for compatibility testing in advance so this doesn't result in a fire drill while everyone is on planes for PyCon ;-). Thanks very much to @markrwilliams for the SUPER rapid response fix & release.

@hynek
Copy link
Member

hynek commented May 17, 2017

Yay Mark! 🎉

Also yay software that's always ready for release.

cournape added a commit to enthought/okonomiyaki that referenced this issue May 17, 2017
@mithrandi
Copy link
Contributor Author

Closing this since automat is fixed and it seems like this isn't an attrs bug insofar as the compat break was deliberate.

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

4 participants