diff options
author | Sergei Trofimovich <slyich@gmail.com> | 2023-02-26 21:53:22 +0000 |
---|---|---|
committer | Sergei Trofimovich <slyich@gmail.com> | 2023-02-26 21:53:22 +0000 |
commit | e7e072d05a0cfafde00828ce589756444f7d39d8 (patch) | |
tree | 57e45f8ccdfcdb0c5df0b957f6fcd0d261d1690b /pkgs/development/tools/build-managers | |
parent | e5fb0c0c7236189f651dc607043592b405676617 (diff) | |
parent | 549daacfcf7bac64c3c37bd5cc649fd981486e81 (diff) | |
download | nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.tar nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.tar.gz nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.tar.bz2 nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.tar.lz nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.tar.xz nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.tar.zst nixpkgs-e7e072d05a0cfafde00828ce589756444f7d39d8.zip |
Merge remote-tracking branch 'origin/staging-next' into staging
Conflicts: pkgs/top-level/python-aliases.nix Trivial conflict of multiple added aliases.
Diffstat (limited to 'pkgs/development/tools/build-managers')
-rw-r--r-- | pkgs/development/tools/build-managers/conan/default.nix | 105 |
1 files changed, 52 insertions, 53 deletions
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix index 2b7ccc4a6c0..cb66df77e31 100644 --- a/pkgs/development/tools/build-managers/conan/default.nix +++ b/pkgs/development/tools/build-managers/conan/default.nix @@ -1,57 +1,31 @@ -{ lib, stdenv, python3, fetchFromGitHub, git, pkg-config }: +{ lib +, stdenv +, fetchFromGitHub +, git +, pkg-config +, python3 +, zlib +}: -# Note: -# Conan has specific dependency demands; check -# https://github.com/conan-io/conan/blob/master/conans/requirements.txt -# https://github.com/conan-io/conan/blob/master/conans/requirements_server.txt -# on the release branch/commit we're packaging. -# -# Two approaches are used here to deal with that: -# Pinning the specific versions it wants in `newPython`, -# and using `substituteInPlace conans/requirements.txt ...` -# in `postPatch` to allow newer versions when we know -# (e.g. from changelogs) that they are compatible. - -let newPython = python3.override { - packageOverrides = self: super: { - node-semver = super.node-semver.overridePythonAttrs (oldAttrs: rec { - version = "0.6.1"; - src = oldAttrs.src.override { - inherit version; - sha256 = "1dv6mjsm67l1razcgmq66riqmsb36wns17mnipqr610v0z0zf5j0"; - }; - }); - distro = super.distro.overridePythonAttrs (oldAttrs: rec { - version = "1.5.0"; - src = oldAttrs.src.override { - inherit version; - hash = "sha256-Dlh1auOPvY/DAg1UutuOrhfFudy+04ixe7Vbilko35I="; - }; - }); - }; -}; - -in newPython.pkgs.buildPythonApplication rec { - version = "1.53.0"; +python3.pkgs.buildPythonApplication rec { pname = "conan"; + version = "2.0.0"; + format = "setuptools"; src = fetchFromGitHub { owner = "conan-io"; repo = "conan"; - rev = version; - hash = "sha256-2DNDNdZO1D30egOiYa3qw8F2xsUTBOm/CHv07v5OrC8="; + rev = "refs/tags/${version}"; + hash = "sha256-yx/MO5QAVKnGraQXJitXxaZooLtBqa+L04s73DwiE14="; }; - propagatedBuildInputs = with newPython.pkgs; [ + propagatedBuildInputs = with python3.pkgs; [ bottle colorama python-dateutil - deprecation distro fasteners - future jinja2 - node-semver patch-ng pluginbase pygments @@ -59,33 +33,58 @@ in newPython.pkgs.buildPythonApplication rec { pylint # Not in `requirements.txt` but used in hooks, see https://github.com/conan-io/conan/pull/6152 pyyaml requests - six tqdm urllib3 - ] ++ lib.optionals stdenv.isDarwin [ idna cryptography pyopenssl ]; + ] ++ lib.optionals stdenv.isDarwin [ + idna + cryptography + pyopenssl + ]; nativeCheckInputs = [ - pkg-config git - ] ++ (with newPython.pkgs; [ - codecov + pkg-config + zlib + ] ++ (with python3.pkgs; [ mock - nose parameterized + pytest-xdist + pytestCheckHook webtest ]); - # TODO: reenable tests now that we fetch tests w/ the source from GitHub. - # Not enabled right now due to time constraints/failing tests that I didn't have time to track down - doCheck = false; + pythonImportsCheck = [ + "conan" + ]; - postPatch = '' - substituteInPlace conans/requirements.txt --replace 'PyYAML>=3.11, <6.0' 'PyYAML>=3.11' - ''; + pytestFlagsArray = [ + "-n" + "$NIX_BUILD_CORES" + ]; + + disabledTests = [ + # Tests require network access + "TestFTP" + ]; + + disabledTestPaths = [ + # Requires cmake, meson, autotools, apt-get, etc. + "conans/test/functional/command/new_test.py" + "conans/test/functional/command/test_install_deploy.py" + "conans/test/functional/layout/test_editable_cmake.py" + "conans/test/functional/layout/test_in_subfolder.py" + "conans/test/functional/layout/test_source_folder.py" + "conans/test/functional/toolchains/" + "conans/test/functional/tools_versions_test.py" + "conans/test/functional/tools/system/package_manager_test.py" + "conans/test/functional/util/test_cmd_args_to_string.py" + "conans/test/unittests/tools/env/test_env_files.py" + ]; meta = with lib; { - homepage = "https://conan.io"; description = "Decentralized and portable C/C++ package manager"; + homepage = "https://conan.io"; + changelog = "https://github.com/conan-io/conan/releases/tag/${version}"; license = licenses.mit; maintainers = with maintainers; [ HaoZeke ]; }; |