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

Plugins are not properly registered upon installation with recent reentry #1429

Closed
7 of 8 tasks
sphuber opened this issue Apr 15, 2018 · 5 comments
Closed
7 of 8 tasks

Comments

@sphuber
Copy link
Contributor

sphuber commented Apr 15, 2018

Recently there were some changes to reentry and the tests started failing. Specifically during the setup of the computer. It failed with the message that the transport is invalid. I put a print of the registered transport plugins just before the setup and sure enough it is empty. The reentry scan is apparently not working properly anymore.

With the alpha release of v1.2.0 available we can test that it works in all relevant environments:

  • Travis workflows
  • Travis release_v0.12.0
  • Ubuntu clean virtual env workflows
  • Ubuntu clean virtual env release_v0.12.0
  • Mac OS X clean virtual env workflows
  • Mac OS X clean virtual env release_v0.12.0
  • Conda workflows
  • Conda release_v0.12.0
@DropD
Copy link
Contributor

DropD commented Apr 16, 2018

It has to be remarked that the release_v0.12.0 branch uses the same reentry version and this problem does not occur there. I conclude there must be a change in the test scripts for travis that is causing reentry to fail.

So far the only thing I have seen that might cause this is that reentry was installed in two locations, one had everything registered but the other had an emtpy registry and was shadowing it.

@DropD
Copy link
Contributor

DropD commented Apr 16, 2018

I haven't tried installing the workflows branch with reentry upgraded to 1.1.2 locally in a clean virtualenv yet, that will be the next thing to try.

@DropD
Copy link
Contributor

DropD commented Apr 18, 2018

Indeed, it seems now that either the recent pip update changed the way setup_requires works or the install was broken before but due to travis caching the data file it did not show.

Bottom line: reentry 1.1.2 was making assumptions about the build process, which were broken in some quite common cases. The 1.2.0aX release series is an effort to get rid of those assumptions, with reentry 1.2.0a9 possibly as robust as it gets.

Currently there exists a branch off develop which runs tests: https://travis-ci.org/DropD/aiida_core/builds/368222645

Once we can confirm it works in all currently relevan environments (release_v0.12.0, workflows, conda package, clean virtualenv on Ubuntu & OS X), reentry 1.2.0 will be released.

@giovannipizzi
Copy link
Member

I checked on Mac. It works, with the issue that you need a recent pip, and anyway setup_requires still uses the internal ssl library from the internal Mac's Python, that is old and does not work anymore with recent changes on PyPi (one gets TLS errors while pip tries to download reentry, I think via setuptools; note that if one installs reentry manually with pip install reentry it works instead).
We checked with @sphuber and @DropD - a solution is to ask users to use pip>=10, and replace the setup_requires mechanism with the new pyproject.toml file. This should solve this (other) issue and the new reentry will work.

@sphuber
Copy link
Contributor Author

sphuber commented Apr 19, 2018

Fixed in #1440

@sphuber sphuber closed this as completed Apr 19, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants