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

python3Packages.spyder: add v3.x #82910

Merged
merged 3 commits into from Mar 19, 2020

Conversation

marcus7070
Copy link
Member

Motivation for this change

cq-editor requires the library Spyder v3, which in turn requires Spyder-kernels v0.x. I've added them as python3Packages.spyder_3 and python3Packages.spyder-kernels_0_5 respectively.

I haven't touched the spyder application (v4), pythonPackages.spyder or pythonPackages.spyder-kernels.

Also, I enabled tests on python3Packages.spyder-kernels_0_5 and got them to pass (with the exception of the tests for their optional UMR feature, which make assumptions about the filesystem that fail in nix).

Regarding the still broken Spyder v4, it requires Jedi 14.0 but we have 15.2. If this commit sticks spyder-ide/spyder@694f1ce, the next release of Spyder should have Jedi pinned to 15.2. So if the stars align and no one bumps our Jedi version we might get it working then.

Related to #80083

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

cq-editor builds fine. pythonPackages.spyder builds for python 3.6 and 3.7, but python35Packages.sqlalchemy, python38Packages.rope are currently broken preventing builds on those versions of Python.

I think this will need to be backported to release-20.03 as well.

Previously top-level/python-packages.nix called spyder-kernels v0.5 for
Py2k. Now both v0.5 and v1.8 (default.nix) are in pythonPackages, as
required by cq-editor and spyder v4 respectively.
v0.5 also now comes from GitHub instead of PyPi, with checks enabled.
cq-editor currently requires spyder v3.x
@marcus7070
Copy link
Member Author

This commit by @FRidh is also related: 3a77304

@worldofpeace
Copy link
Contributor

Hmm, @FRidh I guess we were ok adding multiple versions of this package here?

@jonringer
Copy link
Contributor

jonringer commented Mar 23, 2020

It's not the preferred solution, but sometimes there's not a good solution.

It will just be suprising for people if packages from the different versions get inter-mixed in the same environment

@worldofpeace
Copy link
Contributor

Hopefully we won't cause issues in nixpkgs with catch_conflicts.

@FRidh
Copy link
Member

FRidh commented Mar 23, 2020

I highly doubt any other package than spyder will depend on spyder-kernel. But you're right, it's not the preferred way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants