treewide: update craft-* build tools (#346400)

This commit is contained in:
Jon Seager
2024-10-04 13:26:38 +01:00
committed by GitHub
10 changed files with 76 additions and 168 deletions
+12 -35
View File
@@ -1,37 +1,14 @@
{
lib,
git,
python3,
python3Packages,
fetchFromGitHub,
nix-update-script,
}:
let
python = python3.override {
self = python;
packageOverrides = self: super: {
pydantic-yaml = super.pydantic-yaml.overridePythonAttrs (old: rec {
version = "0.11.2";
src = fetchFromGitHub {
owner = "NowanIlfideme";
repo = "pydantic-yaml";
rev = "refs/tags/v${version}";
hash = "sha256-AeUyVav0/k4Fz69Qizn4hcJKoi/CDR9eUan/nJhWsDY=";
};
dependencies = with self; [
deprecated
importlib-metadata
pydantic_1
ruamel-yaml
types-deprecated
];
});
};
};
in
python.pkgs.buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "charmcraft";
version = "3.1.2";
version = "3.2.1";
pyproject = true;
@@ -39,14 +16,14 @@ python.pkgs.buildPythonApplication rec {
owner = "canonical";
repo = "charmcraft";
rev = "refs/tags/${version}";
hash = "sha256-Qi2ZtAYgQlKj77QPovcT3RrPwAlEwaFyoJ0MAq4EETE=";
hash = "sha256-VqJZP82OIfxPBkayq0ijXDsotgKPbo34RTMuNkLfjls=";
};
postPatch = ''
substituteInPlace charmcraft/__init__.py --replace-fail "dev" "${version}"
'';
dependencies = with python.pkgs; [
dependencies = with python3Packages; [
craft-application
craft-cli
craft-parts
@@ -58,7 +35,7 @@ python.pkgs.buildPythonApplication rec {
humanize
jinja2
jsonschema
pydantic_1
pydantic
python-dateutil
pyyaml
requests
@@ -69,15 +46,15 @@ python.pkgs.buildPythonApplication rec {
urllib3
];
build-system = with python.pkgs; [
setuptools
setuptools-scm
build-system = with python3Packages; [ setuptools-scm ];
pythonRelaxDeps = [
"urllib3"
"craft-application"
];
pythonRelaxDeps = [ "urllib3" ];
nativeCheckInputs =
with python.pkgs;
with python3Packages;
[
hypothesis
pyfakefs
+10 -47
View File
@@ -1,59 +1,20 @@
{
lib,
python3,
python3Packages,
fetchFromGitHub,
dpkg,
nix-update-script,
}:
let
python = python3.override {
self = python;
packageOverrides = self: super: {
craft-application = super.craft-application.overridePythonAttrs (old: rec {
version = "1.2.1";
src = fetchFromGitHub {
owner = "canonical";
repo = "craft-application";
rev = "refs/tags/${version}";
hash = "sha256-CXZEWVoE66dlQJp4G8tinufjyaDJaH1Muxz/qd/81oA=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "setuptools==67.7.2" "setuptools"
'';
preCheck = ''
export HOME=$(mktemp -d)
'';
});
pydantic-yaml = super.pydantic-yaml.overridePythonAttrs (old: rec {
version = "0.11.2";
src = fetchFromGitHub {
owner = "NowanIlfideme";
repo = "pydantic-yaml";
rev = "refs/tags/v${version}";
hash = "sha256-AeUyVav0/k4Fz69Qizn4hcJKoi/CDR9eUan/nJhWsDY=";
};
dependencies = with self; [
deprecated
importlib-metadata
pydantic_1
ruamel-yaml
types-deprecated
];
});
};
};
in
python.pkgs.buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "rockcraft";
version = "1.2.3";
version = "1.5.3";
src = fetchFromGitHub {
owner = "canonical";
repo = "rockcraft";
rev = "refs/tags/${version}";
hash = "sha256-Qk7Fi4I/5TCf9llGTsTBQsAxUkeVmAlH6tFNYMsyZ1c=";
rev = "1d87e33cf207b3a2f16eb125743ec11546fa0cb1";
hash = "sha256-QnW3BMu4Tuvj8PCt5eYJbNMiojXpyJ1uza6hpMxxSOE=";
};
postPatch = ''
@@ -64,17 +25,19 @@ python.pkgs.buildPythonApplication rec {
--replace-fail "distutils.util" "setuptools.dist"
'';
build-system = with python.pkgs; [ setuptools-scm ];
build-system = with python3Packages; [ setuptools-scm ];
dependencies = with python.pkgs; [
dependencies = with python3Packages; [
craft-application
craft-archives
craft-platforms
spdx-lookup
];
nativeCheckInputs =
with python.pkgs;
with python3Packages;
[
craft-platforms
pytest-check
pytest-mock
pytest-subprocess
+8 -30
View File
@@ -5,37 +5,14 @@
lib,
makeWrapper,
nix-update-script,
python3,
python3Packages,
squashfsTools,
stdenv,
}:
let
python = python3.override {
self = python;
packageOverrides = self: super: {
pydantic-yaml = super.pydantic-yaml.overridePythonAttrs (old: rec {
version = "0.11.2";
src = fetchFromGitHub {
owner = "NowanIlfideme";
repo = "pydantic-yaml";
rev = "refs/tags/v${version}";
hash = "sha256-AeUyVav0/k4Fz69Qizn4hcJKoi/CDR9eUan/nJhWsDY=";
};
dependencies = with self; [
deprecated
importlib-metadata
pydantic_1
ruamel-yaml
types-deprecated
];
});
};
};
in
python.pkgs.buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "snapcraft";
version = "8.3.3";
version = "8.4.1";
pyproject = true;
@@ -43,7 +20,7 @@ python.pkgs.buildPythonApplication rec {
owner = "canonical";
repo = "snapcraft";
rev = "refs/tags/${version}";
hash = "sha256-xE+5nYvXawl9HjeBI9ogwyYAVCj/sPoMCVfEeZL5vN4=";
hash = "sha256-34LtQ0CV5Ov0RJvN2eNFYEvtccHebpqjaYlhExE/z4c=";
};
patches = [
@@ -93,7 +70,7 @@ python.pkgs.buildPythonApplication rec {
nativeBuildInputs = [ makeWrapper ];
dependencies = with python.pkgs; [
dependencies = with python3Packages; [
attrs
catkin-pkg
click
@@ -102,6 +79,7 @@ python.pkgs.buildPythonApplication rec {
craft-cli
craft-grammar
craft-parts
craft-platforms
craft-providers
craft-store
debian
@@ -136,7 +114,7 @@ python.pkgs.buildPythonApplication rec {
validators
];
build-system = with python.pkgs; [ setuptools ];
build-system = with python3Packages; [ setuptools ];
pythonRelaxDeps = [
"docutils"
@@ -151,7 +129,7 @@ python.pkgs.buildPythonApplication rec {
'';
nativeCheckInputs =
with python.pkgs;
with python3Packages;
[
pytest-check
pytest-cov-stub
@@ -10,12 +10,13 @@
fetchFromGitHub,
git,
hypothesis,
license-expression,
nix-update-script,
pydantic-yaml,
pyfakefs,
pygit2,
pytest-check,
pytest-mock,
pytest-subprocess,
pytestCheckHook,
pythonOlder,
pyyaml,
@@ -26,7 +27,7 @@
buildPythonPackage rec {
pname = "craft-application";
version = "3.2.0";
version = "4.2.4";
pyproject = true;
disabled = pythonOlder "3.10";
@@ -35,12 +36,12 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-application";
rev = "refs/tags/${version}";
hash = "sha256-2JfCe7FJtuObC/4miA+OC/ctGy1fhdgI7DsowNYjQk8=";
hash = "sha256-Z9jiIVPh/DozFHoE478VQWinpohOOQplkxFP2ZyAySE=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "setuptools==70.1.0" "setuptools"
--replace-fail "setuptools==74.1.1" "setuptools"
'';
build-system = [ setuptools-scm ];
@@ -56,7 +57,7 @@ buildPythonPackage rec {
craft-grammar
craft-parts
craft-providers
pydantic-yaml
license-expression
pygit2
pyyaml
snap-helpers
@@ -68,6 +69,7 @@ buildPythonPackage rec {
pyfakefs
pytest-check
pytest-mock
pytest-subprocess
pytestCheckHook
responses
];
@@ -6,7 +6,7 @@
launchpadlib,
lazr-restfulclient,
overrides,
pydantic_1,
pydantic,
setuptools,
setuptools-scm,
tabulate,
@@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "craft-archives";
version = "1.2.0";
version = "2.0.0";
pyproject = true;
@@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-archives";
rev = "refs/tags/${version}";
hash = "sha256-4BYRwuBDKFbVvK805e+L4ZR8wtS8GHHYteexH4YZmSE=";
hash = "sha256-BrKyOdfbwt9qU5Bt/kX/+GgxH7LCFmmFg4mevBWVp2I=";
};
postPatch = ''
@@ -36,16 +36,13 @@ buildPythonPackage rec {
--replace-fail "setuptools==67.7.2" "setuptools"
'';
nativeBuildInputs = [
setuptools
setuptools-scm
];
build-system = [ setuptools-scm ];
propagatedBuildInputs = [
dependencies = [
launchpadlib
lazr-restfulclient
overrides
pydantic_1
pydantic
tabulate
];
@@ -4,15 +4,15 @@
fetchFromGitHub,
nix-update-script,
overrides,
setuptools,
setuptools-scm,
pytestCheckHook,
pydantic_1,
pydantic,
pyyaml,
}:
buildPythonPackage rec {
pname = "craft-grammar";
version = "1.2.0";
version = "2.0.1";
pyproject = true;
@@ -20,17 +20,17 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-grammar";
rev = "refs/tags/${version}";
hash = "sha256-YQpxgdmUxYLkhAXDLlkLAK6VpjIEycLFY3nsE/M4o2g=";
hash = "sha256-xex+7rCXqRegnws470VtVltM49fx7fSHzWDZawRmOdM=";
};
nativeBuildInputs = [ setuptools ];
build-system = [ setuptools-scm ];
propagatedBuildInputs = [ overrides ];
dependencies = [ overrides ];
pythonImportsCheck = [ "craft_grammar" ];
nativeCheckInputs = [
pydantic_1
pydantic
pytestCheckHook
pyyaml
];
@@ -4,8 +4,7 @@
fetchFromGitHub,
nix-update-script,
overrides,
pydantic_1,
pydantic-yaml,
pydantic,
pyxdg,
pyyaml,
requests,
@@ -17,6 +16,7 @@
pytest-subprocess,
requests-mock,
hypothesis,
jsonschema,
git,
squashfsTools,
setuptools-scm,
@@ -25,7 +25,7 @@
buildPythonPackage rec {
pname = "craft-parts";
version = "1.33.0";
version = "2.1.1";
pyproject = true;
@@ -33,7 +33,7 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-parts";
rev = "refs/tags/${version}";
hash = "sha256-SP2mkaXsU0btnA3aanSA18GkdW6ReLgImOWdpnwZiyU=";
hash = "sha256-I98YQDJJroCnAQgepDXqYnH5M2WZTGDljm/KufGd7yM=";
};
patches = [ ./bash-path.patch ];
@@ -43,12 +43,12 @@ buildPythonPackage rec {
pythonRelaxDeps = [
"requests"
"urllib3"
"pydantic"
];
dependencies = [
overrides
pydantic_1
pydantic-yaml
pydantic
pyxdg
pyyaml
requests
@@ -61,6 +61,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
git
hypothesis
jsonschema
pytest-check
pytest-mock
pytest-subprocess
@@ -105,7 +106,6 @@ buildPythonPackage rec {
passthru.updateScript = nix-update-script { };
meta = {
broken = lib.versionAtLeast pydantic-yaml.version "1";
description = "Software artifact parts builder from Canonical";
homepage = "https://github.com/canonical/craft-parts";
changelog = "https://github.com/canonical/craft-parts/releases/tag/${version}";
@@ -5,16 +5,16 @@
distro,
fetchFromGitHub,
nix-update-script,
hypothesis,
pytest-check,
pytestCheckHook,
pythonOlder,
setuptools,
setuptools-scm,
}:
buildPythonPackage rec {
pname = "craft-platforms";
version = "0.2.0";
version = "0.3.1";
pyproject = true;
disabled = pythonOlder "3.10";
@@ -23,17 +23,14 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-platforms";
rev = "refs/tags/${version}";
hash = "sha256-chCPuncy+//Y5iohTh0d8qRNaEno6Sqze2Zoas3uwPQ=";
hash = "sha256-VDSwvBWoGHcjGCEA4RDVwRzQGNVaphwZu/iaktAweb0=";
};
postPatch = ''
substituteInPlace craft_platforms/__init__.py --replace-fail "dev" "${version}"
'';
build-system = [
setuptools
setuptools-scm
];
build-system = [ setuptools-scm ];
dependencies = [
annotated-types
@@ -41,6 +38,7 @@ buildPythonPackage rec {
];
nativeCheckInputs = [
hypothesis
pytestCheckHook
pytest-check
];
@@ -5,10 +5,9 @@
nix-update-script,
packaging,
platformdirs,
pydantic_1,
pydantic,
pyyaml,
requests-unixsocket,
setuptools,
setuptools-scm,
urllib3,
pytest-check,
@@ -22,7 +21,7 @@
buildPythonPackage rec {
pname = "craft-providers";
version = "1.24.2";
version = "2.0.3";
pyproject = true;
@@ -30,7 +29,7 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-providers";
rev = "refs/tags/${version}";
hash = "sha256-2629Xk2KB1WX3JzAupBWmKg+Ztp5FFJ0x9Xa/w+8tns=";
hash = "sha256-DTUXT5vFIDI06oxka3diWJ5E5oqiX6GXB4ivq6+VrDk=";
};
patches = [
@@ -52,21 +51,18 @@ buildPythonPackage rec {
# The urllib3 incompat: https://github.com/msabramo/requests-unixsocket/pull/69
# This is already patched in nixpkgs.
substituteInPlace pyproject.toml \
--replace-fail "setuptools==" "setuptools>=" \
--replace-fail "setuptools==73.0.1" "setuptools" \
--replace-fail "urllib3<2" "urllib3"
'';
pythonRelaxDeps = [ "requests" ];
nativeBuildInputs = [
setuptools
setuptools-scm
];
build-system = [ setuptools-scm ];
propagatedBuildInputs = [
dependencies = [
packaging
platformdirs
pydantic_1
pydantic
pyyaml
requests-unixsocket
urllib3
@@ -7,7 +7,7 @@
setuptools-scm,
pytest-check,
pytest-mock,
pydantic_1,
pydantic,
pyyaml,
pytestCheckHook,
keyring_24,
@@ -20,7 +20,7 @@
buildPythonPackage rec {
pname = "craft-store";
version = "2.6.2";
version = "3.0.2";
pyproject = true;
@@ -28,7 +28,7 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-store";
rev = "refs/tags/${version}";
hash = "sha256-QKfXOgAWMV1mVm32ZP3HQTJmWKm82dEDmy3fo5d67TU=";
hash = "sha256-l8WnuaMJN4/nZRkWoU6omgbd4hKR2m7YC+YVcvAqzcA=";
};
postPatch = ''
@@ -36,16 +36,13 @@ buildPythonPackage rec {
--replace-fail "setuptools==" "setuptools>="
'';
nativeBuildInputs = [
setuptools
setuptools-scm
];
build-system = [ setuptools-scm ];
propagatedBuildInputs = [
dependencies = [
keyring_24
macaroonbakery
overrides
pydantic_1
pydantic
pyxdg
requests
requests-toolbelt
@@ -56,7 +53,7 @@ buildPythonPackage rec {
pythonImportsCheck = [ "craft_store" ];
nativeCheckInputs = [
pydantic_1
pydantic
pytest-check
pytest-mock
pytestCheckHook