diff options
author | Frederik Rietdijk <fridh@fridh.nl> | 2023-02-05 10:56:51 +0100 |
---|---|---|
committer | Frederik Rietdijk <freddyrietdijk@fridh.nl> | 2023-02-05 12:01:22 +0100 |
commit | 93f577aed89f0841c351ea384ece11c67c734ee5 (patch) | |
tree | 7a462db70ea08ee1af88ff2208fd506e5f26ba33 /pkgs/development/python2-modules | |
parent | 44cb005294e79bca38d4d8490bbde0044a0043b1 (diff) | |
download | nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.tar nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.tar.gz nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.tar.bz2 nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.tar.lz nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.tar.xz nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.tar.zst nixlib-93f577aed89f0841c351ea384ece11c67c734ee5.zip |
python2Packages.wheel: keep 0.37.1 for python2 since 0.38 dropped support
Diffstat (limited to 'pkgs/development/python2-modules')
-rw-r--r-- | pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch | 37 | ||||
-rw-r--r-- | pkgs/development/python2-modules/wheel/default.nix | 57 |
2 files changed, 94 insertions, 0 deletions
diff --git a/pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch b/pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch new file mode 100644 index 000000000000..93db54b0c6e6 --- /dev/null +++ b/pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch @@ -0,0 +1,37 @@ +From 5879a4bbc34d1eb25e160b15b2f5a4f10eac6bd2 Mon Sep 17 00:00:00 2001 +From: toonn <toonn@toonn.io> +Date: Mon, 13 Sep 2021 18:07:26 +0200 +Subject: [PATCH] =?UTF-8?q?tests:=20Rename=20a=CC=8Aa=CC=88o=CC=88=5F?= + =?UTF-8?q?=E6=97=A5=E6=9C=AC=E8=AA=9E.py=20=3D>=20=C3=A6=C9=90=C3=B8=5F?= + =?UTF-8?q?=E6=97=A5=E6=9C=AC=E5=83=B9.py?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +`åäö_日本語.py` normalizes differently in NFC and NFD normal forms. This +means a hash generated for the source directory can differ depending on +whether or not the filesystem is normalizing and which normal form it +uses. + +By renaming the file to `æɐø_日本價.py` we avoid this issue by using a +name that has the same encoding in each normal form. +--- + tests/test_bdist_wheel.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test_bdist_wheel.py b/tests/test_bdist_wheel.py +index 651c034..9b94ac8 100644 +--- a/tests/test_bdist_wheel.py ++++ b/tests/test_bdist_wheel.py +@@ -58,7 +58,7 @@ def test_unicode_record(wheel_paths): + with ZipFile(path) as zf: + record = zf.read('unicode.dist-0.1.dist-info/RECORD') + +- assert u'åäö_日本語.py'.encode('utf-8') in record ++ assert u'æɐø_日本價.py'.encode('utf-8') in record + + + def test_licenses_default(dummy_dist, monkeypatch, tmpdir): +-- +2.17.2 (Apple Git-113) + diff --git a/pkgs/development/python2-modules/wheel/default.nix b/pkgs/development/python2-modules/wheel/default.nix new file mode 100644 index 000000000000..8735a37b21ff --- /dev/null +++ b/pkgs/development/python2-modules/wheel/default.nix @@ -0,0 +1,57 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, bootstrapped-pip +, setuptools +}: + +buildPythonPackage rec { + pname = "wheel"; + version = "0.37.1"; + format = "other"; + + src = fetchFromGitHub { + owner = "pypa"; + repo = pname; + rev = version; + sha256 = "sha256-JlTmUPY3yo/uROyd3nW1dJa23zbLhgQTwcmqZkPOrHs="; + name = "${pname}-${version}-source"; + postFetch = '' + cd $out + mv tests/testdata/unicode.dist/unicodedist/åäö_日本語.py \ + tests/testdata/unicode.dist/unicodedist/æɐø_日本價.py + patch -p1 < ${./0001-tests-Rename-a-a-o-_-.py-_-.py.patch} + ''; + }; + + nativeBuildInputs = [ + bootstrapped-pip + setuptools + ]; + + # No tests in archive + doCheck = false; + pythonImportsCheck = [ "wheel" ]; + + # We add this flag to ignore the copy installed by bootstrapped-pip + pipInstallFlags = [ "--ignore-installed" ]; + + meta = with lib; { + homepage = "https://github.com/pypa/wheel"; + description = "A built-package format for Python"; + longDescription = '' + This library is the reference implementation of the Python wheel packaging standard, + as defined in PEP 427. + + It has two different roles: + + - A setuptools extension for building wheels that provides the bdist_wheel setuptools command + - A command line tool for working with wheel files + + It should be noted that wheel is not intended to be used as a library, + and as such there is no stable, public API. + ''; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ siriobalmelli ]; + }; +} |