about summary refs log tree commit diff
path: root/pkgs/development/tools
diff options
context:
space:
mode:
authorDan Peebles <pumpkin@me.com>2017-07-17 10:37:52 -0400
committerDan Peebles <pumpkin@me.com>2017-07-17 10:37:52 -0400
commit8253fc2ae56e089fe086942671f9e84c431f2277 (patch)
tree3ba0ac9618cd5e4a99d392773cec12dd3553d65c /pkgs/development/tools
parentcff27d574e4ea0976bd71edf7e496cfd67176da3 (diff)
downloadnixlib-8253fc2ae56e089fe086942671f9e84c431f2277.tar
nixlib-8253fc2ae56e089fe086942671f9e84c431f2277.tar.gz
nixlib-8253fc2ae56e089fe086942671f9e84c431f2277.tar.bz2
nixlib-8253fc2ae56e089fe086942671f9e84c431f2277.tar.lz
nixlib-8253fc2ae56e089fe086942671f9e84c431f2277.tar.xz
nixlib-8253fc2ae56e089fe086942671f9e84c431f2277.tar.zst
nixlib-8253fc2ae56e089fe086942671f9e84c431f2277.zip
pants: 1.2.1 -> 1.3.0
I'm also removing the pants13-pre attribute since it's unnecessary and I
don't want to maintain 1.4.x prereleases yet.

I'm temporarily taking out the pants native rust engine shenanigans until
I can get a nix-native rust build of it to work (it works on Linux but
not on Darwin!)
Diffstat (limited to 'pkgs/development/tools')
-rw-r--r--pkgs/development/tools/build-managers/pants/default.nix157
1 files changed, 28 insertions, 129 deletions
diff --git a/pkgs/development/tools/build-managers/pants/default.nix b/pkgs/development/tools/build-managers/pants/default.nix
index 1e37a3f85e24..8ce495557e7f 100644
--- a/pkgs/development/tools/build-managers/pants/default.nix
+++ b/pkgs/development/tools/build-managers/pants/default.nix
@@ -4,138 +4,37 @@ with stdenv.lib;
 with pythonPackages;
 
 let
-  # Get rid of this when pants 1.3.0 is released and make 0.5 the default
-  pathspec_0_3_4 = buildPythonApplication rec {
-    pname   = "pathspec";
-    version = "0.3.4";
-    name    = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "0a37yrr2jhlg8aiynxivh2xqani7l9j725qxzrm7cm7m4rfcl1bn";
-    };
-
-    meta = {
-      description = "Utility library for gitignore-style pattern matching of file paths";
-      homepage = "https://github.com/cpburnz/python-path-specification";
-      license = licenses.mpl20;
-     maintainers = with maintainers; [ copumpkin ];
-    };
+  version = "1.3.0";
+in buildPythonApplication rec {
+  inherit version;
+  pname = "pantsbuild.pants";
+  name  = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "18fcf9047l9k006wz21g525p1w5avyjabmabh0giyz22xnm8g5gp";
   };
 
-  pants13-version = "1.3.0rc4";
-
-  # TODO: compile the rust native engine ourselves so we don't need to do this shit. We don't use
-  # fetchurl because we don't know the URL ahead of time, even though it's deterministic. So we have
-  # this downloader figure out the URL on the fly and then produce the deterministic result, so we
-  # can still be a fixed-output derivation.
-  pants13-native-engine-info = {
-    "x86_64-darwin" = { prefix = "mac/10.11";    hash = "04kfqp4fcxj7zkyb21rgp1kdrlnmayfvakpg5xips716d7pp6vc7"; };
-    "x86_64-linux"  = { prefix = "linux/x86_64"; hash = "0vgmcqxcabryxgvk4wmbclqjn56jbmsaysckgwfzhmif8pxyrfam"; };
-    "i686-linux"    = { prefix = "linux/i386";   hash = "1xgma6cwvzg1d07xq6bd3j4rpzp6wn6lz82xqprr6vflyn78qaaw"; };
-  }.${stdenv.system} or (throw "Unsupported system ${stdenv.system}!");
-
-  pants13-native-engine = runCommand "pants-native-${pants13-version}" {
-    buildInputs    = [ curl ];
-    outputHashMode = "recursive";
-    outputHashAlgo = "sha256";
-    outputHash     = pants13-native-engine-info.hash;
-  } ''
-    native_version=$(curl -k -L https://raw.githubusercontent.com/pantsbuild/pants/release_${pants13-version}/src/python/pants/engine/subsystem/native_engine_version)
-    curl -kLO "https://dl.bintray.com/pantsbuild/bin/build-support/bin/native-engine/${pants13-native-engine-info.prefix}/$native_version/native_engine.so"
-
-    # Ugh it tries to "download" from this prefix so let's just replicate their directory structure for now...
-    mkdir -p $out/bin/native-engine/${pants13-native-engine-info.prefix}/$native_version/
-
-    # These should behave the same way in Nix land and we try not to differentiate between OS revisions...
-    mkdir -p $out/bin/native-engine/mac/
-    ln -s 10.11 $out/bin/native-engine/mac/10.10
-    ln -s 10.11 $out/bin/native-engine/mac/10.12
-
-    cp native_engine.so $out/bin/native-engine/${pants13-native-engine-info.prefix}/$native_version/
+  prePatch = ''
+    sed -E -i "s/'([[:alnum:].-]+)[=><][[:digit:]=><.,]*'/'\\1'/g" setup.py
   '';
-in {
-  pants =
-    pythonPackages.buildPythonPackage rec {
-    pname   = "pantsbuild.pants";
-    version = "1.2.1";
-    name    = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "1bnzhhd2acwk7ckv56xzg2d9vxacl3k5bh13bsjxymnq3spm962w";
-    };
-
-    prePatch = ''
-      sed -E -i "s/'([[:alnum:].-]+)[=><][^']*'/'\\1'/g" setup.py
-    '';
-
-    # Unnecessary, and causes some really weird behavior around .class files, which
-    # this package bundles. See https://github.com/NixOS/nixpkgs/issues/22520.
-    dontStrip = true;
-
-    propagatedBuildInputs = [
-      ansicolors beautifulsoup4 cffi coverage docutils fasteners futures
-      isort lmdb markdown mock packaging pathspec_0_3_4 pep8 pex psutil pyflakes
-      pygments pystache pytestcov pytest pywatchman requests scandir
-      setproctitle setuptools six thrift wheel twitter-common-dirutil
-      twitter-common-confluence twitter-common-collections
-    ];
-
-    meta = {
-      description = "A build system for software projects in a variety of languages";
-      homepage    = "http://www.pantsbuild.org/";
-      license     = licenses.asl20;
-      maintainers = with maintainers; [ copumpkin ];
-      platforms   = platforms.unix;
-    };
-  };
-
-  pants13-pre = buildPythonApplication rec {
-    pname   = "pantsbuild.pants";
-    version = pants13-version;
-    name    = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "03zv3g55x056vjggwjr8lpniixcpb3kfy7xkl1bxsvjp2ih2wj6g";
-    };
-
-    prePatch = ''
-      sed -E -i "s/'([[:alnum:].-]+)[=><][[:digit:]=><.,]*'/'\\1'/g" setup.py
-
-      substituteInPlace src/pants/option/global_options.py \
-        --replace "'/etc/pantsrc'" "'$out/etc/pantsrc', '/etc/pantsrc'"
-    '';
-
-    # Unnecessary, and causes some really weird behavior around .class files, which
-    # this package bundles. See https://github.com/NixOS/nixpkgs/issues/22520.
-    dontStrip = true;
-
-    propagatedBuildInputs = [
-      twitter-common-collections setproctitle setuptools six ansicolors
-      packaging pathspec scandir twitter-common-dirutil psutil requests
-      pystache pex docutils markdown pygments twitter-common-confluence
-      fasteners coverage pywatchman futures cffi
-    ];
-
-    # Teach pants about where its native engine lives.
-    # TODO: there's probably a better way to teach it this without having it "download"
-    # from a local file: URL to its cache, but I don't know how and this seems to work.
-    postFixup = ''
-      mkdir -p $out/etc
-      cat >$out/etc/pantsrc <<EOF
-      [binaries]
-      baseurls: [ 'file://${pants13-native-engine}' ]
-      EOF
-    '';
 
-    meta = {
-      description = "A build system for software projects in a variety of languages";
-      homepage    = "http://www.pantsbuild.org/";
-      license     = licenses.asl20;
-      maintainers = with maintainers; [ copumpkin ];
-      platforms   = platforms.unix;
-    };
+  # Unnecessary, and causes some really weird behavior around .class files, which
+  # this package bundles. See https://github.com/NixOS/nixpkgs/issues/22520.
+  dontStrip = true;
+
+  propagatedBuildInputs = [
+    twitter-common-collections setproctitle setuptools six ansicolors
+    packaging pathspec scandir twitter-common-dirutil psutil requests
+    pystache pex docutils markdown pygments twitter-common-confluence
+    fasteners coverage pywatchman futures cffi
+  ];
+
+  meta = {
+    description = "A build system for software projects in a variety of languages";
+    homepage    = "http://www.pantsbuild.org/";
+    license     = licenses.asl20;
+    maintainers = with maintainers; [ copumpkin ];
+    platforms   = platforms.unix;
   };
 }