about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMartin Weinelt <hexa@darmstadt.ccc.de>2023-01-03 06:09:33 +0100
committerMartin Weinelt <hexa@darmstadt.ccc.de>2023-01-05 13:20:49 +0100
commite75f5e8efa13917e6aefed0a4e8451c5205a0259 (patch)
tree960f9b4b69d6ed4cd68355623c9399096c6d04c3 /pkgs
parent5185f467f396f3b1e9f4d3f5825bf649e219fa8a (diff)
python37: drop
The package set hasn't been working for a long time now, due to infinite
recursions, that nobody was going to fix.

The release is going to go EOL in 2023/06 and we don't want to ship it
in NixOS 23.05 anyway.
Diffstat (limited to 'pkgs')
-rwxr-xr-xpkgs/common-updater/scripts/mark-broken1
-rw-r--r--pkgs/development/interpreters/python/cpython/3.7/fix-hardcoded-path-checking-for-rpmbuild.patch30
-rw-r--r--pkgs/development/interpreters/python/cpython/3.7/no-ldconfig.patch108
-rw-r--r--pkgs/development/interpreters/python/cpython/3.7/profile-task.patch21
-rw-r--r--pkgs/development/interpreters/python/cpython/default.nix12
-rw-r--r--pkgs/development/interpreters/python/default.nix13
-rw-r--r--pkgs/top-level/all-packages.nix9
7 files changed, 1 insertions, 193 deletions
diff --git a/pkgs/common-updater/scripts/mark-broken b/pkgs/common-updater/scripts/mark-broken
index 73308bf8b39a5..7035bee18604f 100755
--- a/pkgs/common-updater/scripts/mark-broken
+++ b/pkgs/common-updater/scripts/mark-broken
@@ -48,7 +48,6 @@ denyFileList=(
 # to be conditionally disabled
 denyAttrList=(
         python27Packages
-        python37Packages
         linuxPackages_
         rubyPackages_
 )
diff --git a/pkgs/development/interpreters/python/cpython/3.7/fix-hardcoded-path-checking-for-rpmbuild.patch b/pkgs/development/interpreters/python/cpython/3.7/fix-hardcoded-path-checking-for-rpmbuild.patch
deleted file mode 100644
index bb3d992612d3d..0000000000000
--- a/pkgs/development/interpreters/python/cpython/3.7/fix-hardcoded-path-checking-for-rpmbuild.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a612c481f6116955d420db5ae1fe4c1eb93eb2f2 Mon Sep 17 00:00:00 2001
-From: Marcin Niemira <marcin.niemira@gmail.com>
-Date: Sun, 9 Jun 2019 07:05:06 +1000
-Subject: [PATCH] bpo-11122: fix hardcoded path checking for rpmbuild in
- bdist_rpm.py (GH-10594) (cherry picked from commit
- 45a14942c969ed508b35abd5e116cb18f84ce5b4)
-
-Co-authored-by: Marcin Niemira <marcin.niemira@gmail.com>
----
- Lib/distutils/command/bdist_rpm.py                           | 5 +----
- .../next/Library/2018-11-12-19-08-50.bpo-11122.Gj7BQn.rst    | 1 +
- 2 files changed, 2 insertions(+), 4 deletions(-)
- create mode 100644 Misc/NEWS.d/next/Library/2018-11-12-19-08-50.bpo-11122.Gj7BQn.rst
-
-diff --git a/Lib/distutils/command/bdist_rpm.py b/Lib/distutils/command/bdist_rpm.py
-index 20ca7ac6dcffa..74381cc69a6ce 100644
---- a/Lib/distutils/command/bdist_rpm.py
-+++ b/Lib/distutils/command/bdist_rpm.py
-@@ -309,10 +309,7 @@ def run(self):
- 
-         # build package
-         log.info("building RPMs")
--        rpm_cmd = ['rpm']
--        if os.path.exists('/usr/bin/rpmbuild') or \
--           os.path.exists('/bin/rpmbuild'):
--            rpm_cmd = ['rpmbuild']
-+        rpm_cmd = ['rpmbuild']
- 
-         if self.source_only: # what kind of RPMs?
-             rpm_cmd.append('-bs')
diff --git a/pkgs/development/interpreters/python/cpython/3.7/no-ldconfig.patch b/pkgs/development/interpreters/python/cpython/3.7/no-ldconfig.patch
deleted file mode 100644
index 4324fc5ea61fc..0000000000000
--- a/pkgs/development/interpreters/python/cpython/3.7/no-ldconfig.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From ba458f33f335b217d078fdce56e9c6f9f93adb49 Mon Sep 17 00:00:00 2001
-From: Frederik Rietdijk <fridh@fridh.nl>
-Date: Mon, 28 Aug 2017 09:24:06 +0200
-Subject: [PATCH] Don't use ldconfig
-
----
- Lib/ctypes/util.py | 78 ++--------------------------------------------
- 1 file changed, 2 insertions(+), 76 deletions(-)
-
-diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
-index 0c2510e..79635a8 100644
---- a/Lib/ctypes/util.py
-+++ b/Lib/ctypes/util.py
-@@ -100,54 +100,7 @@ elif os.name == "posix":
-             return thefile.read(4) == elf_header
- 
-     def _findLib_gcc(name):
--        # Run GCC's linker with the -t (aka --trace) option and examine the
--        # library name it prints out. The GCC command will fail because we
--        # haven't supplied a proper program with main(), but that does not
--        # matter.
--        expr = os.fsencode(r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name))
--
--        c_compiler = shutil.which('gcc')
--        if not c_compiler:
--            c_compiler = shutil.which('cc')
--        if not c_compiler:
--            # No C compiler available, give up
--            return None
--
--        temp = tempfile.NamedTemporaryFile()
--        try:
--            args = [c_compiler, '-Wl,-t', '-o', temp.name, '-l' + name]
--
--            env = dict(os.environ)
--            env['LC_ALL'] = 'C'
--            env['LANG'] = 'C'
--            try:
--                proc = subprocess.Popen(args,
--                                        stdout=subprocess.PIPE,
--                                        stderr=subprocess.STDOUT,
--                                        env=env)
--            except OSError:  # E.g. bad executable
--                return None
--            with proc:
--                trace = proc.stdout.read()
--        finally:
--            try:
--                temp.close()
--            except FileNotFoundError:
--                # Raised if the file was already removed, which is the normal
--                # behaviour of GCC if linking fails
--                pass
--        res = re.findall(expr, trace)
--        if not res:
--            return None
--
--        for file in res:
--            # Check if the given file is an elf file: gcc can report
--            # some files that are linker scripts and not actual
--            # shared objects. See bpo-41976 for more details
--            if not _is_elf(file):
--                continue
--            return os.fsdecode(file)
--
-+        return None
- 
-     if sys.platform == "sunos5":
-         # use /usr/ccs/bin/dump on solaris
-@@ -268,34 +221,7 @@ elif os.name == "posix":
-     else:
- 
-         def _findSoname_ldconfig(name):
--            import struct
--            if struct.calcsize('l') == 4:
--                machine = os.uname().machine + '-32'
--            else:
--                machine = os.uname().machine + '-64'
--            mach_map = {
--                'x86_64-64': 'libc6,x86-64',
--                'ppc64-64': 'libc6,64bit',
--                'sparc64-64': 'libc6,64bit',
--                's390x-64': 'libc6,64bit',
--                'ia64-64': 'libc6,IA-64',
--                }
--            abi_type = mach_map.get(machine, 'libc6')
--
--            # XXX assuming GLIBC's ldconfig (with option -p)
--            regex = r'\s+(lib%s\.[^\s]+)\s+\(%s'
--            regex = os.fsencode(regex % (re.escape(name), abi_type))
--            try:
--                with subprocess.Popen(['/sbin/ldconfig', '-p'],
--                                      stdin=subprocess.DEVNULL,
--                                      stderr=subprocess.DEVNULL,
--                                      stdout=subprocess.PIPE,
--                                      env={'LC_ALL': 'C', 'LANG': 'C'}) as p:
--                    res = re.search(regex, p.stdout.read())
--                    if res:
--                        return os.fsdecode(res.group(1))
--            except OSError:
--                pass
-+            return None
- 
-         def _findLib_ld(name):
-             # See issue #9998 for why this is needed
--- 
-2.30.0
-
diff --git a/pkgs/development/interpreters/python/cpython/3.7/profile-task.patch b/pkgs/development/interpreters/python/cpython/3.7/profile-task.patch
deleted file mode 100644
index df55da3a41328..0000000000000
--- a/pkgs/development/interpreters/python/cpython/3.7/profile-task.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Backport from CPython 3.8 of a good list of tests to run for PGO.
-
-Upstream commit:
-  https://github.com/python/cpython/commit/4e16a4a31
-
-Upstream discussion:
-  https://bugs.python.org/issue36044
-
-diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 00fdd21ce..713dc1e53 100644
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -259,7 +259,7 @@ TCLTK_LIBS=
- # The task to run while instrumented when building the profile-opt target.
- # We exclude unittests with -x that take a rediculious amount of time to
- # run in the instrumented training build or do not provide much value.
--PROFILE_TASK=-m test.regrtest --pgo
-+PROFILE_TASK=-m test.regrtest --pgo test_array test_base64 test_binascii test_binop test_bisect test_bytes test_bz2 test_cmath test_codecs test_collections test_complex test_dataclasses test_datetime test_decimal test_difflib test_embed test_float test_fstring test_functools test_generators test_hashlib test_heapq test_int test_itertools test_json test_long test_lzma test_math test_memoryview test_operator test_ordered_dict test_pickle test_pprint test_re test_set test_sqlite test_statistics test_struct test_tabnanny test_time test_unicode test_xml_etree test_xml_etree_c
- 
- # report files for gcov / lcov coverage report
- COVERAGE_INFO= $(abs_builddir)/coverage.info
diff --git a/pkgs/development/interpreters/python/cpython/default.nix b/pkgs/development/interpreters/python/cpython/default.nix
index 388802fca8c66..ffc89039146b8 100644
--- a/pkgs/development/interpreters/python/cpython/default.nix
+++ b/pkgs/development/interpreters/python/cpython/default.nix
@@ -240,23 +240,11 @@ in with passthru; stdenv.mkDerivation {
   ] ++ optionals mimetypesSupport [
     # Make the mimetypes module refer to the right file
     ./mimetypes.patch
-  ] ++ optionals isPy37 [
-    # Backport a fix for discovering `rpmbuild` command when doing `python setup.py bdist_rpm` to 3.5, 3.6, 3.7.
-    # See: https://bugs.python.org/issue11122
-    ./3.7/fix-hardcoded-path-checking-for-rpmbuild.patch
-    # The workaround is for unittests on Win64, which we don't support.
-    # It does break aarch64-darwin, which we do support. See:
-    # * https://bugs.python.org/issue35523
-    # * https://github.com/python/cpython/commit/e6b247c8e524
-    ./3.7/no-win64-workaround.patch
   ] ++ optionals (pythonAtLeast "3.7" && pythonOlder "3.11") [
     # Fix darwin build https://bugs.python.org/issue34027
     ./3.7/darwin-libutil.patch
   ] ++ optionals (pythonAtLeast "3.11") [
     ./3.11/darwin-libutil.patch
-  ] ++ optionals (pythonOlder "3.8") [
-    # Backport from CPython 3.8 of a good list of tests to run for PGO.
-    ./3.7/profile-task.patch
   ] ++ optionals (pythonAtLeast "3.9" && pythonOlder "3.11" && stdenv.isDarwin) [
     # Stop checking for TCL/TK in global macOS locations
     ./3.9/darwin-tcl-tk.patch
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index 18282bc6d26c5..b697062fbecfe 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -151,19 +151,6 @@ in {
     inherit passthruFun;
   };
 
-  python37 = callPackage ./cpython {
-    self = __splicedPackages.python37;
-    sourceVersion = {
-      major = "3";
-      minor = "7";
-      patch = "16";
-      suffix = "";
-    };
-    sha256 = "sha256-gzjwwiIthH6QTJVTaRVdwb7u7YBujV7wSwDvR4cji/0=";
-    inherit (darwin) configd;
-    inherit passthruFun;
-  };
-
   python38 = callPackage ./cpython {
     self = __splicedPackages.python38;
     sourceVersion = {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 81eda4102acbd..58d88b021bc60 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -16279,12 +16279,6 @@ with pkgs;
     bluezSupport = true;
     x11Support = true;
   };
-  python37Full = python37.override {
-    self = python37Full;
-    pythonAttr = "python37Full";
-    bluezSupport = true;
-    x11Support = true;
-  };
   python38Full = python38.override {
     self = python38Full;
     pythonAttr = "python38Full";
@@ -16311,13 +16305,12 @@ with pkgs;
   };
 
   pythonInterpreters = callPackage ./../development/interpreters/python { };
-  inherit (pythonInterpreters) python27 python37 python38 python39 python310 python311 python312 python3Minimal pypy27 pypy39 pypy38 pypy37 rustpython;
+  inherit (pythonInterpreters) python27 python38 python39 python310 python311 python312 python3Minimal pypy27 pypy39 pypy38 pypy37 rustpython;
 
   # List of extensions with overrides to apply to all Python package sets.
   pythonPackagesExtensions = [ ];
   # Python package sets.
   python27Packages = python27.pkgs;
-  python37Packages = python37.pkgs;
   python38Packages = python38.pkgs;
   python39Packages = python39.pkgs;
   python310Packages = recurseIntoAttrs python310.pkgs;