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

buildbot: use python3Packages #45789

Closed
wants to merge 3 commits into from
Closed

Conversation

dotlambda
Copy link
Member

Motivation for this change

fixes #45782

Some tests are still failing, but I don't have enough time right now to fix this. Help is very welcome.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-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)
  • Fits CONTRIBUTING.md.

cc @ian-ross

@lopsided98
Copy link
Contributor

I've been running buildbot using Python 3 for nearly a year (see: lopsided98/nixpkgs@7db611f...8853014), but I never submitted the code upstream because I couldn't get tests to pass and also I wrote it when I wasn't very experienced with Nix and never got around to cleaning it up.

Yesterday I submitted #45763, which updates sphinx-jinja and adds Python 3 support (mostly the same as your commit).

I also updated tempita to use a fork that fixes the tests with Python 3 (see #39692), because tempita is seemingly abandoned. This fork is also used by the official Arch Linux package.

Switching to Python 3 has the potential to break deployments because buildbot's configuration files are written in Python. That was why I tried to make the Python version configurable.

@FRidh
Copy link
Member

FRidh commented Aug 30, 2018

Switching to Python 3 has the potential to break deployments because buildbot's configuration files are written in Python. That was why I tried to make the Python version configurable.

These configuration files are typically quite small and trivial, I suppose?

@lopsided98
Copy link
Contributor

Not necessarily, they can get pretty long and complicated.
These examples are some of the simplest: https://github.com/buildbot/buildbot/tree/master/master/docs/examples
This is the configuration I use: https://github.com/lopsided98/aur-buildbot/blob/master/master/master.cfg
This is one of the most complicated I've found, used by buildbot themselves: https://github.com/buildbot/metabbotcfg

@FRidh
Copy link
Member

FRidh commented Aug 30, 2018

In that case we may need to provide version for 2 and 3. Do our maintainers want that? If so, we might want to pull it into python-packages.nix. Regardless, this is going to require a mention in the changelog.

@FRidh FRidh added this to the 18.09 milestone Aug 30, 2018
@lopsided98
Copy link
Contributor

I can move the package to pythonPackages. Does that mean we want to support both versions and make it configurable in the module?

@dotlambda
Copy link
Member Author

Yes, we can make it configurable using the usual package option found in many modules.

Citing from #45782 (comment)

I think we should provide indeed provide pylint 1.9 as python2Packages.pylint until support ends. I also think we should move buildbot to pythonPackages as @FRidh suggested.
@lopsided98 Do you want to continue my work?

@lopsided98
Copy link
Contributor

See #45890

@samueldr samueldr modified the milestones: 18.09, 19.03 Oct 6, 2018
@lopsided98
Copy link
Contributor

#45890 was merged a while ago, so this can be closed

@dotlambda dotlambda closed this Dec 13, 2018
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.

buildbot broken by pylint upgrade
5 participants