certbot: don't use distutils.StrictVersion

This commit is contained in:
Frederik Rietdijk 2019-10-29 14:10:31 +01:00
parent 298db02d73
commit 2db400d8c8
2 changed files with 61 additions and 0 deletions

View File

@ -0,0 +1,60 @@
From 411b8a413baf39e9b967949b17a992e81a11abfe Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Tue, 29 Oct 2019 14:08:07 +0100
Subject: [PATCH] Don't use distutils.StrictVersion that cannot handle certain
versions
```
File "setup.py", line 63, in <module>
if StrictVersion(setuptools_version) >= StrictVersion('36.2'):
File
"/nix/store/zdh16dcvjw99ybam59zd2ijb6bx138j0-python3-3.7.5/lib/python3.7/distutils/version.py",
line 40, in __init__
self.parse(vstring)
File
"/nix/store/zdh16dcvjw99ybam59zd2ijb6bx138j0-python3-3.7.5/lib/python3.7/distutils/version.py",
line 137, in parse
raise ValueError("invalid version number '%s'" % vstring)
ValueError: invalid version number '41.4.0.post20191022'
```
---
setup.py | 15 +--------------
1 file changed, 1 insertion(+), 14 deletions(-)
diff --git a/setup.py b/setup.py
index 1f4838c90..831528d77 100644
--- a/setup.py
+++ b/setup.py
@@ -3,7 +3,6 @@ import os
import re
import sys
-from distutils.version import StrictVersion
from setuptools import find_packages, setup, __version__ as setuptools_version
from setuptools.command.test import test as TestCommand
@@ -56,20 +55,8 @@ install_requires = [
# Add pywin32 on Windows platforms to handle low-level system calls.
# This dependency needs to be added using environment markers to avoid its installation on Linux.
-# However environment markers are supported only with setuptools >= 36.2.
-# So this dependency is not added for old Linux distributions with old setuptools,
-# in order to allow these systems to build certbot from sources.
pywin32_req = 'pywin32>=224'
-if StrictVersion(setuptools_version) >= StrictVersion('36.2'):
- install_requires.append(pywin32_req + " ; sys_platform == 'win32'")
-elif 'bdist_wheel' in sys.argv[1:]:
- raise RuntimeError('Error, you are trying to build certbot wheels using an old version '
- 'of setuptools. Version 36.2+ of setuptools is required.')
-elif os.name == 'nt':
- # This branch exists to improve this package's behavior on Windows. Without
- # it, if the sdist is installed on Windows with an old version of
- # setuptools, pywin32 will not be specified as a dependency.
- install_requires.append(pywin32_req)
+install_requires.append(pywin32_req + " ; sys_platform == 'win32'")
dev_extras = [
'astroid==1.6.5',
--
2.23.0

View File

@ -14,6 +14,7 @@ python37Packages.buildPythonApplication rec {
patches = [
./0001-pebble_artifacts-hardcode-pebble-location.patch
./0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch
];
propagatedBuildInputs = with python37Packages; [