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

libgit2: 0.25.1 -> 0.26.0 #31119

Merged
merged 8 commits into from Nov 5, 2017
Merged

libgit2: 0.25.1 -> 0.26.0 #31119

merged 8 commits into from Nov 5, 2017

Conversation

peterhoeg
Copy link
Member

@peterhoeg peterhoeg commented Nov 2, 2017

Motivation for this change

This causes fairly significant rebuilding.

It also supersedes #30982 which I wasn't aware of before doing this.

Cc @orivej @wizeman

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-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/)
  • Fits CONTRIBUTING.md.

@peterhoeg peterhoeg requested a review from nbp as a code owner November 2, 2017 05:04
@orivej
Copy link
Contributor

orivej commented Nov 2, 2017

pythonPackages.pygit2 has to be kept in sync, otherwise it fails to build.

Let's close #30982 when this one is merged.

@peterhoeg
Copy link
Member Author

Now pygit2 tracks the version of libgit2 as well.

@@ -16229,24 +16229,13 @@ in {
};

pygit2 = buildPythonPackage rec {
name = "pygit2-0.25.1";
name = "pygit2-${pkgs.libgit2.version}";

src = pkgs.fetchurl {
Copy link
Member

Choose a reason for hiding this comment

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

Could fetchPyPi be used here instead?

license = stdenv.lib.licenses.gpl2;
platforms = with stdenv.lib.platforms; all;
license = licenses.gpl2;
platforms = with platforms; all;
Copy link
Member

Choose a reason for hiding this comment

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

Perhaps platforms = platforms.all would be simpler?

Copy link
Contributor

@orivej orivej left a comment

Choose a reason for hiding this comment

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

v0.26.0 has a breaking change that requires gnome3.libgit2-glib to be updated too, or it fails to build.

@@ -16229,24 +16229,13 @@ in {
};

pygit2 = buildPythonPackage rec {
name = "pygit2-0.25.1";
name = "pygit2-${pkgs.libgit2.version}";
Copy link
Contributor

@orivej orivej Nov 2, 2017

Choose a reason for hiding this comment

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

This is clever: the version will be kept in sync. Since its a fetchurl, the src.name will contain the version and the store path will change even if somebody updates libgit2 version but forgets to update pygit2 hash.

Copy link
Member Author

Choose a reason for hiding this comment

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

Well, it will break as the hash no longer matches so nothing stays silent.

@@ -16229,24 +16229,13 @@ in {
};

pygit2 = buildPythonPackage rec {
Copy link
Member

Choose a reason for hiding this comment

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

Could you move the expression to python-modules

@orivej
Copy link
Contributor

orivej commented Nov 3, 2017

@peterhoeg If you don't mind I'll complete this PR.

@peterhoeg
Copy link
Member Author

If you don't mind I'll complete this PR.

Please do. You saw @FRidh 's note about separating out the python module?

@orivej
Copy link
Contributor

orivej commented Nov 3, 2017

Yes. I don't see why we should do this manually (I asked him here), but this time I'll do it just to try.

@orivej orivej changed the title libgit2: 0.25.1 -> 0.26.0 [WIP] libgit2: 0.25.1 -> 0.26.0 Nov 3, 2017

src = fetchurl {
url = mirror://gnome/sources/gitg/3.24/gitg-3.24.0.tar.xz;
sha256 = "3e4ec4a8ae83bc7ced8c7610927ade70e37daa5e8beeb4f357a6ea30b4cc951e";
url = "mirror://gnome/sources/gitg/${major}/${name}.tar.xz";
Copy link
Contributor

Choose a reason for hiding this comment

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

The attributes will be erased in the next gnome update. You can update the file the same way using maintainers/scripts/gnome.sh update gitg 3.26.

owner = "libgit2";
repo = "libgit2";
rev = "v${version}";
inherit sha256;
};

# TODO: `cargo` (rust's package manager) surfaced a serious bug in
Copy link
Contributor

Choose a reason for hiding this comment

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

The patch here should no longer necessary since libgit2/libgit2#3885 was fixed in 2.24.4.

@jtojnar
Copy link
Contributor

jtojnar commented Nov 3, 2017

It would be also nice if you could clean up the libgit2_glib dependencies as I did in jtojnar@fd33a6a, to save me a round trip.

@orivej orivej force-pushed the u/lg branch 3 times, most recently from 3e0d01a to 4c944e2 Compare November 5, 2017 12:16
@orivej orivej changed the title [WIP] libgit2: 0.25.1 -> 0.26.0 libgit2: 0.25.1 -> 0.26.0 Nov 5, 2017
sha256 = "1jhikg0gqpdzfzhgv44ybdpm24lvgkc7ki4306lc5lvmj1s2nylj";
};

# TODO: `cargo` (rust's package manager) surfaced a serious bug in
Copy link
Contributor

Choose a reason for hiding this comment

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

It probably is not necessary even here.

Copy link
Contributor

Choose a reason for hiding this comment

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

Indeed, thank you.

@orivej orivej changed the base branch from master to staging November 5, 2017 18:42
... and switch to fetchFromGitHub to avoid future hash changes.
@orivej orivej merged commit d3895ce into NixOS:staging Nov 5, 2017
@orivej orivej mentioned this pull request Nov 5, 2017
8 tasks
@orivej
Copy link
Contributor

orivej commented Nov 5, 2017

Merged into staging because this is borderline massive, and I expect staging to reach master soon.

@jtojnar jtojnar mentioned this pull request Nov 5, 2017
71 tasks
@peterhoeg peterhoeg deleted the u/lg branch November 6, 2017 02:08
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

8 participants