diff --git a/pkgs/by-name/pu/pulumi/extra/mk-pulumi-package.nix b/pkgs/by-name/pu/pulumi/extra/mk-pulumi-package.nix index 0b6f1e3a573d..0060539afa92 100644 --- a/pkgs/by-name/pu/pulumi/extra/mk-pulumi-package.nix +++ b/pkgs/by-name/pu/pulumi/extra/mk-pulumi-package.nix @@ -80,6 +80,19 @@ let -e 's/^PLUGIN_VERSION = .*/PLUGIN_VERSION = "${version}"/g' \ setup.py fi + + # Pulumi Python SDKs use `pkg_resources` to find their current version at + # runtime. However, `pkg_resources` has been deprecated from `setuptools` + # since v82.0.0 (https://setuptools.pypa.io/en/stable/history.html#v82-0-0). + # + # Bypass this problem by: + # - removing the `pkg_resources` import and, + # - patching the plugin `version` string as a literal instead of requesting + # it via `pkg_resources`. + find . -name "_utilities.py" -exec sed -i \ + -e 's/import pkg_resources//g' \ + -e 's/pkg_resources.require(root_package)\[0\].version/"${version}"/g' \ + {} + ''; # Auto-generated; upstream does not have any tests. diff --git a/pkgs/by-name/pu/pulumi/package.nix b/pkgs/by-name/pu/pulumi/package.nix index 35039e36b66d..2815f7ccdd66 100644 --- a/pkgs/by-name/pu/pulumi/package.nix +++ b/pkgs/by-name/pu/pulumi/package.nix @@ -17,18 +17,18 @@ }: buildGoModule (finalAttrs: { pname = "pulumi"; - version = "3.248.0"; + version = "3.253.0"; src = fetchFromGitHub { owner = "pulumi"; repo = "pulumi"; tag = "v${finalAttrs.version}"; - hash = "sha256-Ew2+bOqiiwnHxszC980uWWcPqbE/ObDk9m+LOKg/u+I="; + hash = "sha256-ZwK9IXuKD583MJ+6VG9CsrEIwh4aJGBlCXys/TYfrmg="; # Some tests rely on checkout directory name name = "pulumi"; }; - vendorHash = "sha256-Bk8or6B4dBzrQpoq4cf8FzlTLc4XVMhu67lrXQ6Nrcc="; + vendorHash = "sha256-5HYYesdKfZqCqDNrD2LZc25hxrczxRV/jsMXWeFT6fc="; sourceRoot = "${finalAttrs.src.name}/pkg"; diff --git a/pkgs/by-name/pu/pulumi/plugins/pulumi-go/package.nix b/pkgs/by-name/pu/pulumi/plugins/pulumi-go/package.nix index 1cd2fcd5d562..41e29c144084 100644 --- a/pkgs/by-name/pu/pulumi/plugins/pulumi-go/package.nix +++ b/pkgs/by-name/pu/pulumi/plugins/pulumi-go/package.nix @@ -9,7 +9,7 @@ buildGoModule (finalAttrs: { sourceRoot = "${finalAttrs.src.name}/sdk/go/pulumi-language-go"; - vendorHash = "sha256-QW3fB8ytb3LpyO0wd0dy3x8Jxl/3C1MTbdu3VUgZCBs="; + vendorHash = "sha256-NTIOTy6pLJgnxI6AP87Nfljr551fvih/b9c59VYg3PA="; ldflags = [ "-s" diff --git a/pkgs/by-name/pu/pulumi/plugins/pulumi-nodejs/package.nix b/pkgs/by-name/pu/pulumi/plugins/pulumi-nodejs/package.nix index 7b78c880914a..a164d2c7f096 100644 --- a/pkgs/by-name/pu/pulumi/plugins/pulumi-nodejs/package.nix +++ b/pkgs/by-name/pu/pulumi/plugins/pulumi-nodejs/package.nix @@ -12,7 +12,7 @@ buildGoModule (finalAttrs: { sourceRoot = "${finalAttrs.src.name}/sdk/nodejs/cmd/pulumi-language-nodejs"; - vendorHash = "sha256-+ZlUFiSDrq3KGvXMT+uQIQL78aMW+UVmyFO6iZ2X4AA="; + vendorHash = "sha256-q+7Qm3HL2avVtx29Cz066BOD7tgyukEwj1FinzmEdw8="; ldflags = [ "-s" diff --git a/pkgs/by-name/pu/pulumi/plugins/pulumi-python/package.nix b/pkgs/by-name/pu/pulumi/plugins/pulumi-python/package.nix index fbe31bae618b..55bcdf612649 100644 --- a/pkgs/by-name/pu/pulumi/plugins/pulumi-python/package.nix +++ b/pkgs/by-name/pu/pulumi/plugins/pulumi-python/package.nix @@ -12,7 +12,7 @@ buildGoModule (finalAttrs: { sourceRoot = "${finalAttrs.src.name}/sdk/python/cmd/pulumi-language-python"; - vendorHash = "sha256-1P90hdwBwCNRfR1PDSHQuEOCcrbnoJrmU4ggG7ktAGY="; + vendorHash = "sha256-JlfRmBrowYYcKG+lkG6DCxWIibb0V1NVbpgPT86iRFU="; ldflags = [ "-s" diff --git a/pkgs/development/python-modules/pulumi/default.nix b/pkgs/development/python-modules/pulumi/default.nix index 8fb594748b9a..8ddb8fc8ecc4 100644 --- a/pkgs/development/python-modules/pulumi/default.nix +++ b/pkgs/development/python-modules/pulumi/default.nix @@ -76,6 +76,16 @@ buildPythonPackage { pulumi-python ]; + disabledTestPaths = [ + # Fail due to missing `pytest.mark.asyncio`, as of v3.253.0 + "lib/test/test_deprecated.py::DeprecatedTests::test_non_deprecated_can_be_called" + "lib/test/test_deprecated.py::DeprecatedTests::test_deprecated_can_be_called" + "lib/test/test_deprecated.py::DeprecatedTests::test_deprecated_can_passthrough" + "lib/test/test_deprecated.py::DeprecatedTests::test_deprecated_prints_warnings" + "lib/test/runtime/test_resource_dep_cycle.py" + "lib/test/test_broken_dynamic_provider.py" + ]; + # CheckPhase script based on: # https://github.com/pulumi/pulumi/blob/0acaf8060640fdd892abccf1ce7435cd6aae69fe/sdk/python/scripts/test_fast.sh#L10-L11 # https://github.com/pulumi/pulumi/blob/0acaf8060640fdd892abccf1ce7435cd6aae69fe/sdk/python/scripts/test_fast.sh#L16