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

planemo 0.74.11 fails with Python 3.10: AttributeError: module 'collections' has no attribute 'Callable' #1266

Closed
pvanheus opened this issue Aug 27, 2022 · 2 comments

Comments

@pvanheus
Copy link
Contributor

When trying to run planemo test with Python 3.10, nose (a dependency of the Galaxy config that planemo installs) tries to refer to collections.Callable leading to an error because, since Python 3.3, Callable has been in collections.abc, not collections. The deprecation of collections.Callable finally resulted in it not being available as an import in Python 3.10.

Upstream, Galaxy is dropping nose support (see this PR: galaxyproject/galaxy#13909) and this problem will be resolved as part of that process. This issue is being reported to offer a work-around and to explain what is behind the above-mentioned error.

Two workarounds are apparent:

  1. Use a Python version < 3.10 to run planemo.
  2. Patch nose 1.3.7 with this patch

The first of these is preferred.

@nsoranzo
Copy link
Member

Thanks @pvanheus for documenting this issue! The first step is going to be merging #1232 .

@mvdbeek
Copy link
Member

mvdbeek commented Oct 19, 2022

Still need a new release, but indeed this should be fixed with #1232

@mvdbeek mvdbeek closed this as completed Oct 19, 2022
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

3 participants