Merge branch 'staging-next' into staging

This commit is contained in:
Vladimír Čunát
2019-02-26 09:30:26 +01:00
63 changed files with 438 additions and 169 deletions
+1 -2
View File
@@ -605,7 +605,7 @@ All parameters from `stdenv.mkDerivation` function are still supported. The foll
* `disabled` ? false: If `true`, package is not build for the particular Python interpreter version.
* `dontWrapPythonPrograms ? false`: Skip wrapping of python programs.
* `installFlags ? []`: A list of strings. Arguments to be passed to `pip install`. To pass options to `python setup.py install`, use `--install-option`. E.g., `installFlags=["--install-option='--cpp_implementation'"]`.
* `format ? "setuptools"`: Format of the source. Valid options are `"setuptools"`, `"flit"`, `"wheel"`, and `"other"`. `"setuptools"` is for when the source has a `setup.py` and `setuptools` is used to build a wheel, `flit`, in case `flit` should be used to build a wheel, and `wheel` in case a wheel is provided. Use `other` when a custom `buildPhase` and/or `installPhase` is needed.
* `format ? "setuptools"`: Format of the source. Valid options are `"setuptools"`, `"pyproject"`, `"flit"`, `"wheel"`, and `"other"`. `"setuptools"` is for when the source has a `setup.py` and `setuptools` is used to build a wheel, `flit`, in case `flit` should be used to build a wheel, and `wheel` in case a wheel is provided. Use `other` when a custom `buildPhase` and/or `installPhase` is needed.
* `makeWrapperArgs ? []`: A list of strings. Arguments to be passed to `makeWrapper`, which wraps generated binaries. By default, the arguments to `makeWrapper` set `PATH` and `PYTHONPATH` environment variables before calling the binary. Additional arguments here can allow a developer to set environment variables which will be available when the binary is run. For example, `makeWrapperArgs = ["--set FOO BAR" "--set BAZ QUX"]`.
* `namePrefix`: Prepends text to `${name}` parameter. In case of libraries, this defaults to `"python3.5-"` for Python 3.5, etc., and in case of applications to `""`.
* `pythonPath ? []`: List of packages to be added into `$PYTHONPATH`. Packages in `pythonPath` are not propagated (contrary to `propagatedBuildInputs`).
@@ -881,7 +881,6 @@ example of such a situation is when `py.test` is used.
'';
}
```
- Unicode issues can typically be fixed by including `glibcLocales` in `buildInputs` and exporting `LC_ALL=en_US.utf-8`.
- Tests that attempt to access `$HOME` can be fixed by using the following work-around before running tests (e.g. `preCheck`): `export HOME=$(mktemp -d)`
## FAQ
+7 -1
View File
@@ -167,12 +167,18 @@
</listitem>
<listitem>
<para>
The <varname>buildPythonPackage</varname> now sets <varname>strictDeps = true</varname>
The <varname>buildPythonPackage</varname> function now sets <varname>strictDeps = true</varname>
to help distinguish between native and non-native dependencies in order to
improve cross-compilation compatibility. Note however that this may break
user expressions.
</para>
</listitem>
<listitem>
<para>
The <varname>buildPythonPackage</varname> function now sets <varname>LANG = C.UTF-8</varname>
to enable Unicode support. The <varname>glibcLocales</varname> package is no longer needed as a build input.
</para>
</listitem>
<listitem>
<para>
The Syncthing state and configuration data has been moved from
@@ -0,0 +1,53 @@
# This function provides specific bits for building a setuptools-based Python package.
{ lib
, python
}:
{
# passed to "python setup.py build_ext"
# https://github.com/pypa/pip/issues/881
# Rename to `buildOptions` because it is not setuptools specific?
setupPyBuildFlags ? []
# Execute before shell hook
, preShellHook ? ""
# Execute after shell hook
, postShellHook ? ""
, ... } @ attrs:
let
options = lib.concatMapStringsSep " " (option: "--global-option ${option}") setupPyBuildFlags;
in attrs // {
buildPhase = attrs.buildPhase or ''
runHook preBuild
mkdir -p dist
echo "Creating a wheel..."
${python.pythonForBuild.interpreter} -m pip wheel --no-index --no-deps --no-clean --no-build-isolation --wheel-dir dist ${options} .
echo "Finished creating a wheel..."
runHook postBuild
'';
installCheckPhase = ''
runHook preCheck
echo "No checkPhase defined. Either provide a checkPhase or disable tests in case tests are not available."; exit 1
runHook postCheck
'';
# With Python it's a common idiom to run the tests
# after the software has been installed.
doCheck = attrs.doCheck or true;
shellHook = attrs.shellHook or ''
${preShellHook}
# Long-term setup.py should be dropped.
if [ -e pyproject.toml ]; then
tmp_path=$(mktemp -d)
export PATH="$tmp_path/bin:$PATH"
export PYTHONPATH="$tmp_path/${python.pythonForBuild.sitePackages}:$PYTHONPATH"
mkdir -p $tmp_path/${python.pythonForBuild.sitePackages}
${python.pythonForBuild.pkgs.bootstrapped-pip}/bin/pip install -e . --prefix $tmp_path >&2
fi
${postShellHook}
'';
}
@@ -17,6 +17,7 @@
let
setuptools-specific = import ./build-python-package-setuptools.nix { inherit lib python; };
pyproject-specific = import ./build-python-package-pyproject.nix { inherit lib python; };
flit-specific = import ./build-python-package-flit.nix { inherit python flit; };
wheel-specific = import ./build-python-package-wheel.nix { };
common = import ./build-python-package-common.nix { inherit python; };
@@ -37,7 +38,8 @@ format ? "setuptools"
let
formatspecific =
if format == "setuptools" then common (setuptools-specific attrs)
if format == "pyproject" then common (pyproject-specific attrs)
else if format == "setuptools" then common (setuptools-specific attrs)
else if format == "flit" then common (flit-specific attrs)
else if format == "wheel" then common (wheel-specific attrs)
else if format == "other" then {}
@@ -90,6 +90,8 @@ let self = toPythonModule (python.stdenv.mkDerivation (builtins.removeAttrs attr
# Enabled to detect some (native)BuildInputs mistakes
strictDeps = true;
LANG = "${if python.stdenv.isDarwin then "en_US" else "C"}.UTF-8";
# Python packages don't have a checkPhase, only an installCheckPhase
doCheck = false;
doInstallCheck = doCheck;
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "XlsxWriter";
version = "1.1.4";
version = "1.1.5";
src = fetchPypi {
inherit pname version;
sha256 = "07e38c73b687e2f867151adce821e43e02856c4d8c6e482807b6ea7f4ac9506c";
sha256 = "de9ef46088489915eaaee00c7088cff93cf613e9990b46b933c98eb46f21b47f";
};
meta = {
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "aiohue";
version = "1.9.0";
version = "1.9.1";
src = fetchPypi {
inherit pname version;
sha256 = "3b6cb87652cf1ffc904443b9c5514873c331e159953f2ebf77a051444b350594";
sha256 = "3c23aed8e82f398b732279f5f7ee7ed00949ff2db7009f7a2dc705f7c2d16783";
};
propagatedBuildInputs = [ aiohttp ];
@@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "alerta-server";
version = "6.7.4";
version = "6.7.5";
src = fetchPypi {
inherit pname version;
sha256 = "5ca2783f6e9211fdebd433b9eae83fbcf75ed127dc87946257d101a7d7a465db";
sha256 = "e8dc3428248a5b20c4fe8da76c2d353b715d515bd4879928c499671d4360a90f";
};
propagatedBuildInputs = [ python-dateutil requests pymongo raven bcrypt flask pyjwt flask-cors psycopg2 pytz flask-compress jinja2 pyyaml];
@@ -2,12 +2,12 @@
asn1crypto, click, pydot, ipython, pyqt5, pyperclip }:
buildPythonPackage rec {
version = "3.3.4";
version = "3.3.5";
pname = "androguard";
src = fetchPypi {
inherit pname version;
sha256 = "1hinfbvha7f1py1jnvxih7lx0p4z2nyaiq9bvg8v3bykwrd9jff2";
sha256 = "f0655ca3a5add74c550951e79bd0bebbd1c5b239178393d30d8db0bd3202cda2";
};
propagatedBuildInputs = [
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "atom";
version = "0.4.2";
version = "0.4.3";
src = fetchPypi {
inherit pname version;
sha256 = "5b1c15599681398e343fcfcf2c00d26071964f5305a403fc590c45388bacdf16";
sha256 = "ce96fb50326a3bfa084463dbde1cf2e02c92735e5bc324d836355c25af87e0ae";
};
propagatedBuildInputs = [ future ];
@@ -3,9 +3,9 @@
let
wheel_source = fetchPypi {
pname = "wheel";
version = "0.33.0";
version = "0.33.1";
format = "wheel";
sha256 = "b79ffea026bc0dbd940868347ae9eee36789b6496b6623bd2dec7c7c540a8f99";
sha256 = "8eb4a788b3aec8abf5ff68d4165441bc57420c9f64ca5f471f58c3969fe08668";
};
setuptools_source = fetchPypi {
pname = "setuptools";
@@ -16,13 +16,13 @@ let
in stdenv.mkDerivation rec {
pname = "pip";
version = "19.0.2";
version = "19.0.3";
name = "${python.libPrefix}-bootstrapped-${pname}-${version}";
src = fetchPypi {
inherit pname version;
format = "wheel";
sha256 = "6a59f1083a63851aeef60c7d68b119b46af11d9d803ddc1cf927b58edcd0b312";
sha256 = "bd812612bbd8ba84159d9ddc0266b7fbce712fc9bc98c82dee5750546ec8ec64";
};
unpackPhase = ''
@@ -13,11 +13,11 @@
buildPythonPackage rec {
pname = "boto3";
version = "1.9.96"; # N.B: if you change this, change botocore too
version = "1.9.101"; # N.B: if you change this, change botocore too
src = fetchPypi {
inherit pname version;
sha256 = "c103241394d396ee08548b03d5d1f0f89a7ad1dfa7ccca88a47131f329cca093";
sha256 = "bc25b83405cede6025fd7de0240fa8ade910f445da46f267c1dd13409d19ad64";
};
propagatedBuildInputs = [ botocore jmespath s3transfer ] ++ lib.optionals (!isPy3k) [ futures ];
@@ -12,11 +12,11 @@
buildPythonPackage rec {
pname = "botocore";
version = "1.12.96"; # N.B: if you change this, change boto3 and awscli to a matching version
version = "1.12.101"; # N.B: if you change this, change boto3 and awscli to a matching version
src = fetchPypi {
inherit pname version;
sha256 = "55c1594041e6716847d5a8b38181e3cc44e245edbf4598ae2b99e3040073b2cf";
sha256 = "46e4daaa7c8cb29237802b63699c16a116f96f301ad2fcfef800574333b58b98";
};
propagatedBuildInputs = [
@@ -2,11 +2,11 @@
if isPyPy then null else buildPythonPackage rec {
pname = "cffi";
version = "1.12.0";
version = "1.12.1";
src = fetchPypi {
inherit pname version;
sha256 = "08090454ff236239e583a9119d0502a6b9817594c0a3714dd1d8593f2350ba11";
sha256 = "9b6f7ba4e78c52c1a291d0c0c0bd745d19adde1a9e1c03cb899f0c6efd6f8033";
};
outputs = [ "out" "dev" ];
@@ -41,7 +41,10 @@ in buildPythonPackage rec {
checkPhase = ''
# 3 out of 5 SignalHandlingTests need network access
LANG=en_US.UTF-8 pytest -k "not SignalHandlingTests and not test_4_Autoreload"
# test_2_File_Concurrency also fails upstream: https://github.com/cherrypy/cherrypy/issues/1306
# ...and skipping it makes 2 other tests fail
LANG=en_US.UTF-8 pytest -k "not SignalHandlingTests and not test_4_Autoreload \
and not test_2_File_Concurrency and not test_3_Redirect and not test_4_File_deletion"
'';
meta = with lib; {
@@ -6,11 +6,11 @@
}:
buildPythonPackage rec {
pname = "cmd2";
version = "0.9.8";
version = "0.9.10";
src = fetchPypi {
inherit pname version;
sha256 = "22c3461af56769e74225e3aeecab0e98ef86ab8d9b4ded29ba84722449fe7608";
sha256 = "00d68374abe02363a417160e5836022be5c8f8bdac1da5dd101fadb6f8e96619";
};
LC_ALL="en_US.UTF-8";
@@ -2,18 +2,18 @@
buildPythonPackage rec {
pname = "configparser";
version = "3.7.1";
version = "3.7.3";
src = fetchPypi {
inherit pname version;
sha256 = "5bd5fa2a491dc3cfe920a3f2a107510d65eceae10e9c6e547b90261a4710df32";
sha256 = "27594cf4fc279f321974061ac69164aaebd2749af962ac8686b20503ac0bcf2d";
};
# No tests available
doCheck = false;
preConfigure = ''
export LC_ALL=C.UTF-8
export LC_ALL=${if stdenv.isDarwin then "en_US" else "C"}.UTF-8
'';
meta = with stdenv.lib; {
@@ -2,13 +2,13 @@
buildPythonPackage rec {
pname = "cx_Oracle";
version = "7.1.0";
version = "7.1.1";
buildInputs = [ odpic ];
src = fetchPypi {
inherit pname version;
sha256 = "57f084bbd7d28af4deff22ef358188c06dec885c818df92fb74e093ab22fdd8f";
sha256 = "17d760bdf89e364fc7c964c5640c1b38cbb22ab49b53830883f21fda92c59131";
};
preConfigure = ''
@@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "django-contrib-comments";
version = "1.9.0";
version = "1.9.1";
src = fetchPypi {
inherit pname version;
sha256 = "689f3f80ff7ea8ab9f712ae5fe17ffa2ee8babbf8d75229ee8acc7bad461dfef";
sha256 = "61b051d7bc3ff593e86b41a1ed5e969423cf55cc92768598af3315e2528e0890";
};
propagatedBuildInputs = [ django ];
@@ -1,6 +1,7 @@
{ stdenv, buildPythonPackage, fetchPypi,
six, cligj, munch, click-plugins, enum34, pytest, nose,
gdal
{ stdenv, buildPythonPackage, fetchPypi, isPy3k
, attrs, click, cligj, click-plugins, six, munch, enum34
, pytest, boto3
, gdal
}:
buildPythonPackage rec {
@@ -14,24 +15,35 @@ buildPythonPackage rec {
CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11";
nativeBuildInputs = [
gdal # for gdal-config
];
buildInputs = [
gdal
];
propagatedBuildInputs = [
six
attrs
click
cligj
munch
click-plugins
enum34
];
six
munch
] ++ stdenv.lib.optional (!isPy3k) enum34;
checkInputs = [
pytest
nose
boto3
];
doCheck = false;
checkPhase = ''
rm -r fiona # prevent importing local fiona
# Some tests access network, others test packaging
pytest -k "not test_*_http \
and not test_*_https \
and not test_*_wheel"
'';
meta = with stdenv.lib; {
description = "OGR's neat, nimble, no-nonsense API for Python";
@@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "flake8";
version = "3.7.5";
version = "3.7.6";
src = fetchPypi {
inherit pname version;
sha256 = "fd9ddf503110bf3d8b1d270e8c673aab29ccb3dd6abf29bae1f54e5116ab4a91";
sha256 = "6d8c66a65635d46d54de59b027a1dda40abbe2275b3164b634835ac9c13fd048";
};
checkInputs = [ pytest mock pytestrunner ];
@@ -1,4 +1,4 @@
{ stdenv
{ lib
, buildPythonPackage
, fetchPypi
, pythonOlder
@@ -15,24 +15,28 @@
buildPythonPackage rec {
pname = "gidgethub";
version = "3.0.0";
format = "flit";
version = "3.1.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "1ebe79cf80ad64cb78c880efc7f30ac664e18b80dfd18ee201bf8685cf029628";
sha256 = "52119435ba73ddd5e697dae7bec8b93a048bc738720b81691ebd4b4d81d2d762";
};
buildInputs = [ setuptools pytestrunner ];
nativeBuildInputs = [ setuptools pytestrunner ];
checkInputs = [ pytest pytest-asyncio twisted treq tornado aiohttp ];
propagatedBuildInputs = [ uritemplate ];
postPatch = ''
substituteInPlace setup.py \
--replace "extras_require=extras_require," "extras_require=None,"
'';
# requires network (reqests github.com)
doCheck = false;
meta = with stdenv.lib; {
meta = with lib; {
description = "An async GitHub API library";
homepage = https://github.com/brettcannon/gidgethub;
license = licenses.asl20;
@@ -10,11 +10,11 @@
buildPythonPackage rec {
pname = "globus-sdk";
version = "1.7.0";
version = "1.7.1";
src = fetchPypi {
inherit pname version;
sha256 = "b8adcbe355c2baf610e9f5751967d7e910fa48604b39d6d2f083750a7a805a64";
sha256 = "d96f7ed1887c8f55f2bc8d493cd8ec73ff9f3361f0a134203e34e2e57bedd964";
};
checkPhase = ''
@@ -3,11 +3,11 @@
buildPythonPackage rec {
pname = "google-auth";
version = "1.6.2";
version = "1.6.3";
src = fetchPypi {
inherit pname version;
sha256 = "e8d64e9bc8cb6f0fc5360c693f86dc9ee6964081ee702e3b5ddc937f99efc950";
sha256 = "0f7c6a64927d34c1a474da92cfc59e552a5d3b940d3266606c6a28b72888b9e4";
};
checkInputs = [ pytest mock oauth2client flask requests urllib3 pytest-localserver ];
@@ -1,5 +1,12 @@
{ stdenv, buildPythonPackage, fetchPypi
, six, requests-cache, pygments, pyquery }:
{ lib
, buildPythonPackage
, fetchPypi
, six
, requests-cache
, pygments
, pyquery
, python
}:
buildPythonPackage rec {
pname = "howdoi";
@@ -12,9 +19,14 @@ buildPythonPackage rec {
propagatedBuildInputs = [ six requests-cache pygments pyquery ];
meta = with stdenv.lib; {
preCheck = ''
export HOME=$(mktemp -d)
'';
meta = with lib; {
description = "Instant coding answers via the command line";
homepage = https://pypi.python.org/pypi/howdoi;
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};
}
@@ -9,7 +9,7 @@ buildPythonPackage rec {
# pytz fake_factory django numpy pytest
# If you need these, you can just add them to your environment.
version = "3.79.3";
version = "3.88.3";
pname = "hypothesis";
# Use github tarballs that includes tests
@@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "HypothesisWorks";
repo = "hypothesis-python";
rev = "hypothesis-python-${version}";
sha256 = "1ay0kwh5315scv7yz9xxrr7shynyx6flgplc1qzbz3j21cyx3yn7";
sha256 = "03l4hp0p7i2k04arnqkav0ygc23ml46dy3cfrlwviasrj7yzk5hc";
};
postUnpack = "sourceRoot=$sourceRoot/hypothesis-python";
@@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "ledgerblue";
version = "0.1.22";
version = "0.1.23";
src = fetchPypi {
inherit pname version;
sha256 = "15206e92220d96512b357a9a740bc91b8b33b42b9164fe3b56c4c3aedf882cdc";
sha256 = "476a1d1f6d9e7f72befff0ea4e631461882c9c1c620b92878503bf46383c8d20";
};
propagatedBuildInputs = [
@@ -1,33 +1,42 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, nose, numpy, six, ruamel_yaml, msgpack-python, coverage, coveralls, pymongo, lsof }:
{ lib
, buildPythonPackage
, fetchFromGitHub
, nose
, numpy
, six
, ruamel_yaml
, msgpack-python
, coverage
, coveralls
, pymongo
, lsof
}:
buildPythonPackage rec {
pname = "monty";
version = "1.0.2";
version = "1.0.4";
# No tests in Pypi
src = fetchFromGitHub {
owner = "materialsvirtuallab";
repo = pname;
rev = "v${version}";
sha256 = "0ss70fanavqdpj56yymj06lacgnknb4ap39m2q28v9lz32cs6xdg";
sha256 = "0vqaaz0dw0ypl6sfwbycpb0qs3ap04c4ghbggklxih66spdlggh6";
};
propagatedBuildInputs = [ nose numpy six ruamel_yaml msgpack-python coverage coveralls pymongo lsof ];
checkInputs = [ lsof nose numpy msgpack-python coverage coveralls pymongo];
propagatedBuildInputs = [ six ruamel_yaml ];
preCheck = ''
substituteInPlace tests/test_os.py \
--replace 'def test_which(self):' '#' \
--replace 'py = which("python")' '#' \
--replace 'self.assertEqual(os.path.basename(py), "python")' '#' \
--replace 'self.assertEqual("/usr/bin/find", which("/usr/bin/find"))' '#' \
--replace 'self.assertIs(which("non_existent_exe"), None)' '#' \
--replace 'self.assertEqual("/usr/bin/find", which("/usr/bin/find"))' '#'
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "Serves as a complement to the Python standard library by providing a suite of tools to solve many common problems";
longDescription = "
Monty implements supplementary useful functions for Python that are not part of the
standard library. Examples include useful utilities like transparent support for zipped files, useful design
Monty implements supplementary useful functions for Python that are not part of the
standard library. Examples include useful utilities like transparent support for zipped files, useful design
patterns such as singleton and cached_class, and many more.
";
homepage = https://github.com/materialsvirtuallab/monty;
@@ -35,4 +44,3 @@ buildPythonPackage rec {
maintainers = with maintainers; [ psyanticy ];
};
}
@@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "murmurhash";
version = "1.0.1";
version = "1.0.2";
src = fetchPypi {
inherit pname version;
sha256 = "02wbyjixvzd6l1mljpm1ci7x835zhk3nqxgy7kvbi4jimvairs9q";
sha256 = "c7a646f6b07b033642b4f52ae2e45efd8b80780b3b90e8092a0cec935fbf81e2";
};
postPatch = ''
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "phonenumbers";
version = "8.10.5";
version = "8.10.6";
src = fetchPypi {
inherit pname version;
sha256 = "aed1483d6d97fe5176715b87fa2b8a572b8695ba9d27b810ad618320198529b3";
sha256 = "2fe47dbf947cc74643ef1a49411466483d1165ced2b62578a14b513dd09642a9";
};
meta = {
@@ -1,6 +1,8 @@
{ stdenv
{ lib
, buildPythonPackage
, fetchPypi
, isPy27
, funcsigs
}:
buildPythonPackage rec {
@@ -8,14 +10,18 @@ buildPythonPackage rec {
version = "0.9";
src = fetchPypi {
inherit pname version;
inherit version;
pname = "Pint";
sha256 = "32d8a9a9d63f4f81194c0014b3b742679dce81a26d45127d9810a68a561fe4e2";
};
meta = with stdenv.lib; {
propagatedBuildInputs = lib.optional isPy27 funcsigs;
meta = with lib; {
description = "Physical quantities module";
license = licenses.bsd3;
homepage = "https://github.com/hgrecco/pint/";
maintainers = [ maintainers.costrouc ];
};
}
@@ -10,11 +10,11 @@
buildPythonPackage rec {
pname = "pip";
version = "19.0.2";
version = "19.0.3";
src = fetchPypi {
inherit pname version;
sha256 = "f851133f8b58283fa50d8c78675eb88d4ff4cde29b6c41205cd938b06338e0e5";
sha256 = "6e6f197a1abfb45118dbb878b5c859a0edbdd33fd250100bc015b67fded4b9f2";
};
# pip detects that we already have bootstrapped_pip "installed", so we need
@@ -1,12 +1,12 @@
{ lib, buildPythonPackage, fetchPypi, requests, pytest }:
buildPythonPackage rec {
version = "2.4.0";
version = "2.4.1";
pname = "plaid-python";
src = fetchPypi {
inherit pname version;
sha256 = "734fe8328b7fc9a52f8e204b4cce99dd475fe5add784a57fdf0f0cb99eb752a0";
sha256 = "2b7832f9fe0c6cd23dfdb805bcfc52e2ff06fca6604e5782b7518904c1dad6bb";
};
checkInputs = [ pytest ];
@@ -8,11 +8,11 @@
buildPythonPackage rec {
pname = "prompt_toolkit";
version = "2.0.8";
version = "2.0.9";
src = fetchPypi {
inherit pname version;
sha256 = "c6655a12e9b08edb8cf5aeab4815fd1e1bdea4ad73d3bbf269cf2e0c4eb75d5e";
sha256 = "2519ad1d8038fd5fc8e770362237ad0364d16a7650fb5724af6997ed5515e3c1";
};
checkPhase = ''
py.test -k 'not test_pathcompleter_can_expanduser'
@@ -1,26 +1,18 @@
{ stdenv
, buildPythonPackage
, fetchPypi, fetchpatch
, fetchPypi
, darwin
}:
buildPythonPackage rec {
pname = "psutil";
version = "5.4.8";
version = "5.5.1";
src = fetchPypi {
inherit pname version;
sha256 = "6e265c8f3da00b015d24b842bfeb111f856b13d24f2c57036582568dc650d6c3";
sha256 = "045qaqvn6k90bj5bcy259yrwcd2afgznaav3sfhphy9b8ambzkkj";
};
patches = [
(fetchpatch {
name = "disk_io_counters_fails.patch";
url = "https://github.com/giampaolo/psutil/commit/8f99f3782663959062ee868bbfdbc336307a3a4d.diff";
sha256 = "0j7wdgq8y20k27wcpmbgc1chd0vmbkxy8j0zwni1s4i7hyk64hmk";
})
];
# No tests in archive
doCheck = false;
@@ -8,11 +8,11 @@
buildPythonPackage rec {
pname = "py_stringmatching";
version = "0.4.0";
version = "0.4.1";
src = fetchPypi {
inherit pname version;
sha256 = "0rjsx7iipn6svki21lmsza7b0dz9vkgmix696zryiv7gkhblqyb4";
sha256 = "c46db1e855cef596dfbbe1bd48fcabb30736479eff602c2bf88af10f998f1532";
};
checkInputs = [ nose ];
@@ -2,11 +2,11 @@
buildPythonPackage rec {
pname = "PyChromecast";
version = "2.5.1";
version = "2.5.2";
src = fetchPypi {
inherit pname version;
sha256 = "936672df42f25f271c806569ee4fb7abbc0d6c17e15deba5d6c9f1128ff6974e";
sha256 = "7ce4eeb398a73c26bd65870739c94845da60f4527ebe2f104826ee32d70d035c";
};
disabled = !isPy3k;
@@ -5,11 +5,11 @@
buildPythonPackage rec {
pname = "pykeepass";
version = "3.0.2";
version = "3.0.3";
src = fetchPypi {
inherit pname version;
sha256 = "1kfnh42nimsbdpwpny2c9df82b2n4fb5fagh54ck06f3x483vd90";
sha256 = "2c9e2ddb03ee696ed8aa72c2cddfb81280614864e003226141d68b975aa56f6f";
};
propagatedBuildInputs = [
@@ -9,7 +9,7 @@ buildPythonPackage rec {
sha256 = "0v47p840myqgc7hr4lir72xshcfpa0w8j9n077h3njpqyn6wlbag";
};
buildInputs = [ krb5 ];
nativeBuildInputs = [ krb5 ];
# there are no tests
doCheck = false;
@@ -1,21 +1,36 @@
{ stdenv, buildPythonPackage, fetchFromGitHub, pytest, libsodium, cffi, six, hypothesis}:
{ stdenv
, buildPythonPackage
, fetchPypi
, pytest
, libsodium
, cffi
, six
, hypothesis
}:
buildPythonPackage rec {
pname = "pynacl";
version = "1.3.0";
src = fetchFromGitHub {
owner = "pyca";
repo = pname;
rev = version;
sha256 = "0ac00d5bfdmz1x428h2scq5b34llp61yhxradl94qjwz7ikqv052";
src = fetchPypi {
inherit version;
pname = "PyNaCl";
sha256 = "0c6100edd16fefd1557da078c7a31e7b7d7a52ce39fdca2bec29d4f7b6e7600c";
};
checkInputs = [ pytest hypothesis ];
propagatedBuildInputs = [ libsodium cffi six ];
buildInputs = [ libsodium ];
propagatedBuildInputs = [ cffi six ];
SODIUM_INSTALL = "system";
# fixed in next release 1.3.0+
# https://github.com/pyca/pynacl/pull/480
postPatch = ''
substituteInPlace tests/test_bindings.py \
--replace "average_size=128," ""
'';
checkPhase = ''
py.test
'';
@@ -9,11 +9,11 @@
buildPythonPackage rec {
pname = "pyrsistent";
version = "0.14.10";
version = "0.14.11";
src = fetchPypi {
inherit pname version;
sha256 = "07f7ae71291af8b0dbad8c2ab630d8223e4a8c4e10fc37badda158c02e753acf";
sha256 = "3ca82748918eb65e2d89f222b702277099aca77e34843c5eb9d52451173970e2";
};
propagatedBuildInputs = [ six ];
@@ -21,7 +21,6 @@ buildPythonPackage rec {
description = "LGPL-licensed Python bindings for the Qt cross-platform application and UI framework";
license = lib.licenses.lgpl21;
homepage = http://www.pyside.org;
maintainers = [ ];
broken = true;
};
}
@@ -4,11 +4,11 @@
buildPythonPackage rec {
pname = "pytest-server-fixtures";
version = "1.6.1";
version = "1.6.2";
src = fetchPypi {
inherit pname version;
sha256 = "cf4a6aff42f620fe556c175e8f493f086c9690a492059cf23521a10d3ac5db1a";
sha256 = "c89f9532f62cf851489082ece1ec692b6ed5b0f88f20823bea25e2a963ebee8f";
};
buildInputs = [ pytest ];
@@ -3,11 +3,11 @@
buildPythonPackage rec {
pname = "pyupdate";
version = "0.2.26";
version = "0.2.29";
src = fetchPypi {
inherit pname version;
sha256 = "8d30f5b011c6be41886741e31bc87cadc9762d60800faf3ce419fa52132de35c";
sha256 = "0096bde03f43b67c068914ebcb756265641a6d2a5888d4bc81636347c22bf0aa";
};
propagatedBuildInputs = [ requests ];
@@ -9,11 +9,11 @@
buildPythonPackage rec {
pname = "pyzmq";
version = "17.1.2";
version = "17.1.3";
src = fetchPypi {
inherit pname version;
sha256 = "a72b82ac1910f2cf61a49139f4974f994984475f771b0faa730839607eeedddf";
sha256 = "83722236bd6ae6a07dec0cb728906785040e91826c7575709a258b4e21d0f812";
};
checkInputs = [ pytest tornado ];
@@ -21,13 +21,13 @@
buildPythonPackage rec {
pname = "qiskit";
version = "0.7.2";
version = "0.7.3";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "08c7f7ccd32a5cb0c0a0c4f63d6ff068d659c9c0b51e2df6f2054e586e8bfa19";
sha256 = "63e7a7c3033fe955d715cc825b3fb61d27c25ad66e1761493ca2243b5dbfb4f9";
};
buildInputs = [ cmake ]
@@ -7,11 +7,11 @@
buildPythonPackage rec {
pname = "quantities";
version = "0.12.2";
version = "0.12.3";
src = fetchPypi {
inherit pname version;
sha256 = "92e8397938516483f4fd1855097ec11953ab10dd0bf3293954559226679f76f0";
sha256 = "582f3c7aeba897846761e966615e01202a5e5d06add304492931b05085d19883";
};
propagatedBuildInputs = [ numpy ];
@@ -7,11 +7,11 @@
buildPythonPackage rec {
pname = "regex";
version = "2019.02.07";
version = "2019.02.21";
src = fetchPypi {
inherit pname version;
sha256 = "4a1a1d963f462c13722b34ef1f82c4707091b0a3fb9b5fd79b6670c38b734095";
sha256 = "587bd4cad11c7294f89799c45778abca271d7c6668a0e85c41a6dbfa8096f9bb";
};
postCheck = ''
@@ -19,6 +19,9 @@ buildPythonPackage rec {
${python.interpreter} -c 'import test_regex; test_regex.test_main();'
'';
# No tests in archive
doCheck = false;
meta = {
description = "Alternative regular expression module, to replace re";
homepage = https://bitbucket.org/mrabarnett/mrab-regex;
@@ -14,5 +14,6 @@ buildPythonPackage rec {
builder = ./builder.sh;
buildInputs = [ rpmextract python wirelesstools gettext ];
nativeBuildInputs = [ rpmextract gettext ];
buildInputs = [ wirelesstools ];
}
@@ -1,5 +1,5 @@
{ stdenv, buildPythonPackage, fetchPypi
, geos, glibcLocales, pytest, cython
{ stdenv, buildPythonPackage, fetchPypi, substituteAll
, geos, pytest, cython
, numpy
}:
@@ -12,26 +12,31 @@ buildPythonPackage rec {
sha256 = "c4b87bb61fc3de59fc1f85e71a79b0c709dc68364d9584473697aad4aa13240f";
};
buildInputs = [ geos glibcLocales cython ];
nativeBuildInputs = [
geos # for geos-config
cython
];
checkInputs = [ pytest ];
propagatedBuildInputs = [ numpy ];
preConfigure = ''
export LANG="en_US.UTF-8";
'';
# environment variable used in shapely/_buildcfg.py
GEOS_LIBRARY_PATH = "${geos}/lib/libgeos_c${stdenv.hostPlatform.extensions.sharedLibrary}";
patchPhase = let
libc = if stdenv.isDarwin then "libc.dylib" else "libc.so.6";
in ''
sed -i "s|_lgeos = load_dll('geos_c', fallbacks=.*)|_lgeos = load_dll('geos_c', fallbacks=['${geos}/lib/libgeos_c${stdenv.hostPlatform.extensions.sharedLibrary}'])|" shapely/geos.py
sed -i "s|free = load_dll('c').free|free = load_dll('c', fallbacks=['${stdenv.cc.libc}/lib/${libc}']).free|" shapely/geos.py
'';
patches = [
(substituteAll {
src = ./library-paths.patch;
libgeos_c = GEOS_LIBRARY_PATH;
libc = "${stdenv.cc.libc}/lib/libc${stdenv.hostPlatform.extensions.sharedLibrary}"
+ stdenv.lib.optionalString (!stdenv.isDarwin) ".6";
})
];
# Disable the tests that improperly try to use the built extensions
checkPhase = ''
py.test -k 'not test_vectorized and not test_fallbacks' tests
rm -r shapely # prevent import of local shapely
py.test tests
'';
meta = with stdenv.lib; {
@@ -0,0 +1,109 @@
diff --git a/shapely/geos.py b/shapely/geos.py
index 09bf1ab..837aa98 100644
--- a/shapely/geos.py
+++ b/shapely/geos.py
@@ -55,100 +55,10 @@ def load_dll(libname, fallbacks=None, mode=DEFAULT_MODE):
"Could not find lib {0} or load any of its variants {1}.".format(
libname, fallbacks or []))
-_lgeos = None
-
-if sys.platform.startswith('linux'):
- # Test to see if we have a wheel repaired by 'auditwheel' containing its
- # own libgeos_c
- geos_whl_so = glob.glob(os.path.abspath(os.path.join(os.path.dirname(
- __file__), '.libs/libgeos_c-*.so.*')))
- if len(geos_whl_so) == 1:
- _lgeos = CDLL(geos_whl_so[0])
- LOG.debug("Found GEOS DLL: %r, using it.", _lgeos)
- else:
- alt_paths = [
- 'libgeos_c.so.1',
- 'libgeos_c.so',
- # anaconda
- os.path.join(sys.prefix, "lib", "libgeos_c.so"),
- ]
- _lgeos = load_dll('geos_c', fallbacks=alt_paths)
- free = load_dll('c').free
- free.argtypes = [c_void_p]
- free.restype = None
-
-elif sys.platform == 'darwin':
- # Test to see if we have a delocated wheel with a GEOS dylib.
- geos_whl_dylib = os.path.abspath(os.path.join(os.path.dirname(
- __file__), '.dylibs/libgeos_c.1.dylib'))
- if os.path.exists(geos_whl_dylib):
- _lgeos = CDLL(geos_whl_dylib)
- LOG.debug("Found GEOS DLL: %r, using it.", _lgeos)
-
- else:
- if hasattr(sys, 'frozen'):
- try:
- # .app file from py2app
- alt_paths = [os.path.join(
- os.environ['RESOURCEPATH'], '..', 'Frameworks',
- 'libgeos_c.dylib')]
- except KeyError:
- # binary from pyinstaller
- alt_paths = [
- os.path.join(sys.executable, 'libgeos_c.dylib')]
- if hasattr(sys, '_MEIPASS'):
- alt_paths.append(
- os.path.join(sys._MEIPASS, 'libgeos_c.1.dylib'))
- else:
- alt_paths = [
- # anaconda
- os.path.join(sys.prefix, "lib", "libgeos_c.dylib"),
- # The Framework build from Kyng Chaos
- "/Library/Frameworks/GEOS.framework/Versions/Current/GEOS",
- # macports
- '/opt/local/lib/libgeos_c.dylib',
- ]
- _lgeos = load_dll('geos_c', fallbacks=alt_paths)
-
- free = load_dll('c').free
- free.argtypes = [c_void_p]
- free.restype = None
-
-elif sys.platform == 'win32':
- try:
- egg_dlls = os.path.abspath(
- os.path.join(os.path.dirname(__file__), 'DLLs'))
- if hasattr(sys, "frozen"):
- wininst_dlls = os.path.normpath(
- os.path.abspath(sys.executable + '../../DLLS'))
- else:
- wininst_dlls = os.path.abspath(os.__file__ + "../../../DLLs")
- original_path = os.environ['PATH']
- os.environ['PATH'] = "%s;%s;%s" % \
- (egg_dlls, wininst_dlls, original_path)
- _lgeos = load_dll("geos_c.dll", fallbacks=[
- os.path.join(sys.prefix, "Library", "lib", "geos_c.dll"),
- ])
- except (ImportError, WindowsError, OSError):
- raise
-
- def free(m):
- try:
- cdll.msvcrt.free(m)
- except WindowsError:
- # XXX: See http://trac.gispython.org/projects/PCL/ticket/149
- pass
-
-elif sys.platform == 'sunos5':
- _lgeos = load_dll('geos_c', fallbacks=['libgeos_c.so.1', 'libgeos_c.so'])
- free = CDLL('libc.so.1').free
- free.argtypes = [c_void_p]
- free.restype = None
-else: # other *nix systems
- _lgeos = load_dll('geos_c', fallbacks=['libgeos_c.so.1', 'libgeos_c.so'])
- free = load_dll('c', fallbacks=['libc.so.6']).free
- free.argtypes = [c_void_p]
- free.restype = None
+_lgeos = CDLL('@libgeos_c@')
+free = CDLL('@libc@').free
+free.argtypes = [c_void_p]
+free.restype = None
def _geos_version():
@@ -7,13 +7,13 @@
buildPythonPackage rec {
pname = "spectral-cube";
version = "0.4.3";
version = "0.4.4";
doCheck = false; # the tests requires several pytest plugins that are not in nixpkgs
src = fetchPypi {
inherit pname version;
sha256 = "057g3mzlg5cy4wg2hh3p6gssn93rs6i7pswzhldvcq4k8m8hsl3b";
sha256 = "9051ede204b1e25b6358b5e0e573b624ec0e208c24eb03a7ed4925b745c93b5e";
};
propagatedBuildInputs = [ astropy radio_beam pytest ];
@@ -2,13 +2,13 @@
buildPythonPackage rec {
pname = "telethon-session-sqlalchemy";
version = "0.2.8";
version = "0.2.9.post1";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "5097b4fe103e377b719f1840e121d14dbae38c4b7c72634c7ba1f0ec05b20533";
sha256 = "bbe6a8ca32dd42aa1830b91f08f0458d728dc9eedca0ca27814a34c0b566100e";
};
propagatedBuildInputs = [
@@ -6,12 +6,12 @@
}:
buildPythonPackage rec {
version = "0.4.2";
version = "0.4.3";
pname = "uproot-methods";
src = fetchPypi {
inherit pname version;
sha256 = "dcb72692067cfc4c5ccfa859fe737b2cd47661692a0cc0b42c75d13dbb1eb040";
sha256 = "f90d91a613a875ebdf214f0f6f3fd0f8beea9125fc35e54f334d6104fe47c87d";
};
propagatedBuildInputs = [ numpy awkward ];
@@ -15,11 +15,11 @@
buildPythonPackage rec {
pname = "uproot";
version = "3.4.5";
version = "3.4.6";
src = fetchPypi {
inherit pname version;
sha256 = "46a99b590c062ad01f2721af04e6262986f0b53e51dfedf68bf4049bb015c12f";
sha256 = "1fafe476c26252e4dbd399456323778e76d23dc2f43cf6581a707d1647978610";
};
buildInputs = [ pytestrunner ];
@@ -6,11 +6,11 @@
buildPythonPackage rec {
pname = "virtualenv";
version = "16.4.0";
version = "16.4.1";
src = fetchPypi {
inherit pname version;
sha256 = "cceab52aa7d4df1e1871a70236eb2b89fcfe29b6b43510d9738689787c513261";
sha256 = "5a3ecdfbde67a4a3b3111301c4d64a5b71cf862c8c42958d30cf3253df1f29dd";
};
# Doubt this is needed - FRidh 2017-07-07
@@ -9,11 +9,11 @@
buildPythonPackage rec {
pname = "wheel";
version = "0.33.0";
version = "0.33.1";
src = fetchPypi {
inherit pname version;
sha256 = "12363e6df5678ecf9daf8429f06f97e7106e701405898f24318ce7f0b79c611a";
sha256 = "66a8fd76f28977bb664b098372daef2b27f60dc4d1688cfab7b37a09448f0e9d";
};
checkInputs = [ pytest pytestcov coverage ];
@@ -7,11 +7,11 @@
buildPythonPackage rec {
pname = "zope.i18n";
version = "4.6.1";
version = "4.6.2";
src = fetchPypi {
inherit pname version;
sha256 = "14f7339f6d4fed5e94882a7f1b2e40fd90ad00b3c28a7f4353762101395e3304";
sha256 = "229de41f751dae36b1ef9fa284bc548ef40169234bf0d2199e41581e16304621";
};
propagatedBuildInputs = [ pytz zope_component ];
@@ -1,6 +1,24 @@
diff -ur cmake-3.12.1/Source/cmGlobalXCodeGenerator.cxx cmake-3.12.1-patched/Source/cmGlobalXCodeGenerator.cxx
--- cmake-3.12.1/Source/cmGlobalXCodeGenerator.cxx 2018-08-09 21:14:08.000000000 +0900
+++ cmake-3.12.1-patched/Source/cmGlobalXCodeGenerator.cxx 2018-08-12 02:47:28.719691934 +0900
diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
index 8aff8f6..af1852d 100644
--- a/Source/CMakeLists.txt
+++ b/Source/CMakeLists.txt
@@ -791,12 +791,6 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR MATCHES "sparc"
endif()
endif()
-# On Apple we need CoreFoundation and CoreServices
-if(APPLE)
- target_link_libraries(CMakeLib "-framework CoreFoundation")
- target_link_libraries(CMakeLib "-framework CoreServices")
-endif()
-
if(WIN32 AND NOT UNIX)
# We need the rpcrt4 library on Windows.
# We need the crypt32 library on Windows for crypto/cert APIs.
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx
index e353a37..b06f842 100644
--- a/Source/cmGlobalXCodeGenerator.cxx
+++ b/Source/cmGlobalXCodeGenerator.cxx
@@ -35,11 +35,6 @@
struct cmLinkImplementation;
@@ -13,3 +31,19 @@ diff -ur cmake-3.12.1/Source/cmGlobalXCodeGenerator.cxx cmake-3.12.1-patched/Sou
#if defined(CMAKE_BUILD_WITH_CMAKE)
# include "cmXMLParser.h"
diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
index d7af6e2..d4808fc 100644
--- a/Utilities/cmlibarchive/CMakeLists.txt
+++ b/Utilities/cmlibarchive/CMakeLists.txt
@@ -1662,11 +1662,6 @@ IF(MSVC)
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
ENDIF(MSVC)
-# We need CoreServices on Mac OS.
-IF(APPLE)
- LIST(APPEND ADDITIONAL_LIBS "-framework CoreServices")
-ENDIF(APPLE)
-
add_subdirectory(libarchive)
install(FILES COPYING DESTINATION ${CMAKE_DOC_DIR}/cmlibarchive)
@@ -2,7 +2,7 @@
, bzip2, curl, expat, libarchive, xz, zlib, libuv, rhash
, buildPackages
# darwin attributes
, ps
, cf-private, ps
, isBootstrap ? false
, useSharedLibraries ? (!isBootstrap && !stdenv.isCygwin)
, useNcurses ? false, ncurses
@@ -34,11 +34,6 @@ stdenv.mkDerivation rec {
inherit sha256;
};
prePatch = optionalString (!useSharedLibraries) ''
substituteInPlace Utilities/cmlibarchive/CMakeLists.txt \
--replace '"-framework CoreServices"' '""'
'';
patches = [
# Don't search in non-Nix locations such as /usr, but do search in our libc.
./search-path.patch
@@ -57,6 +52,7 @@ stdenv.mkDerivation rec {
buildInputs =
[ setupHook pkgconfig ]
++ optional stdenv.isDarwin cf-private # needed for CFBundleCopyExecutableURL
++ optionals useSharedLibraries [ bzip2 curl expat libarchive xz zlib libuv rhash ]
++ optional useNcurses ncurses
++ optional useQt4 qt4
+2 -2
View File
@@ -1,4 +1,4 @@
{ stdenv, fetchurl, libxml2, openssl, zlib, bzip2, fts }:
{ stdenv, fetchurl, libxml2, lzma, openssl, zlib, bzip2, fts }:
stdenv.mkDerivation rec {
version = "1.6.1";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "0ghmsbs6xwg1092v7pjcibmk5wkyifwxw6ygp08gfz25d2chhipf";
};
buildInputs = [ libxml2 openssl zlib bzip2 fts ];
buildInputs = [ libxml2 lzma openssl zlib bzip2 fts ];
meta = {
homepage = https://mackyle.github.io/xar/;
+6
View File
@@ -49,6 +49,12 @@ python3Packages.buildPythonApplication rec {
];
postPatch = ''
# Invalid argument: 'perform_health_check' is not a valid setting
substituteInPlace tests/conftest.py \
--replace "perform_health_check=False" ""
substituteInPlace tests/unit/test_repair.py \
--replace $'@settings(perform_health_check=False) # Using the random module for UIDs\n' ""
# for setuptools_scm:
echo 'Version: ${version}' >PKG-INFO
+3 -1
View File
@@ -8516,7 +8516,9 @@ in
cmake_2_8 = callPackage ../development/tools/build-managers/cmake/2.8.nix { };
cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake { };
cmake = libsForQt5.callPackage ../development/tools/build-managers/cmake {
inherit (darwin) cf-private;
};
cmakeCurses = cmake.override { useNcurses = true; };