Skip to content

python3.pkgs.tiler: unpin setuptools-scm dependency#248949

Merged
natsukium merged 1 commit intoNixOS:masterfrom
tjni:tiler
Aug 16, 2023
Merged

python3.pkgs.tiler: unpin setuptools-scm dependency#248949
natsukium merged 1 commit intoNixOS:masterfrom
tjni:tiler

Conversation

@tjni
Copy link
Copy Markdown
Contributor

@tjni tjni commented Aug 13, 2023

Description of changes

Pull in a patch that unpins the setuptools-scm dependency, which will be needed when we switch to build.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@github-actions github-actions bot added the 6.topic: python Python is a high-level, general-purpose programming language. label Aug 13, 2023
@ofborg ofborg bot requested a review from AtilaSaraiva August 13, 2023 18:26
@ofborg ofborg bot added 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Aug 13, 2023
nativeBuildInputs = [
setuptools
setuptools-scm
wheel
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know much about how build works, but do we need wheel for nativeBuildInputs? Your patch seems to remove it from pyproject.toml.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, it looks confusing, and I can explain. We use build to build a wheel (instead of an sdist), and setuptools always needs wheel in order to do this. PEP 517 provides a way for a build backend like setuptools to specify any additional dependencies it needs in order to build a wheel, which setuptools does here, so it does not need to be listed in pyproject.toml. (In fact, when it is listed in pyproject.toml, it is always included, even for an sdist build, which is unnecessary in this case.)

A normal PEP 517 build would create an isolated virtual environment and download wheel automatically, but in nixpkgs we have to explicitly specify it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the clarification!
I'll take another look at your amazing work in light of this.

@natsukium
Copy link
Copy Markdown
Member

@ofborg build python310Packages.tiler

@natsukium natsukium merged commit a544655 into NixOS:master Aug 16, 2023
@tjni tjni deleted the tiler branch August 16, 2023 05:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants