1 | """ |
---|
2 | Ported to Python 3. |
---|
3 | """ |
---|
4 | |
---|
5 | from __future__ import unicode_literals |
---|
6 | from __future__ import absolute_import |
---|
7 | from __future__ import division |
---|
8 | from __future__ import print_function |
---|
9 | |
---|
10 | from future.utils import PY2 |
---|
11 | if PY2: |
---|
12 | from future.builtins import filter, map, zip, ascii, chr, hex, input, next, oct, open, pow, round, super, bytes, dict, list, object, range, str, max, min # noqa: F401 |
---|
13 | |
---|
14 | # Note: please minimize imports in this file. In particular, do not import |
---|
15 | # any module from Tahoe-LAFS or its dependencies, and do not import any |
---|
16 | # modules at all at global level. That includes setuptools and pkg_resources. |
---|
17 | # It is ok to import modules from the Python Standard Library if they are |
---|
18 | # always available, or the import is protected by try...except ImportError. |
---|
19 | |
---|
20 | # Includes some indirect dependencies, but does not include allmydata. |
---|
21 | # These are in the order they should be listed by --version, etc. |
---|
22 | package_imports = [ |
---|
23 | # package name module name |
---|
24 | ('foolscap', 'foolscap'), |
---|
25 | ('zfec', 'zfec'), |
---|
26 | ('Twisted', 'twisted'), |
---|
27 | ('zope.interface', 'zope.interface'), |
---|
28 | ('python', None), |
---|
29 | ('platform', None), |
---|
30 | ('pyOpenSSL', 'OpenSSL'), |
---|
31 | ('OpenSSL', None), |
---|
32 | ('pyasn1', 'pyasn1'), |
---|
33 | ('service-identity', 'service_identity'), |
---|
34 | ('pyasn1-modules', 'pyasn1_modules'), |
---|
35 | ('cryptography', 'cryptography'), |
---|
36 | ('cffi', 'cffi'), |
---|
37 | ('six', 'six'), |
---|
38 | ('enum34', 'enum'), |
---|
39 | ('pycparser', 'pycparser'), |
---|
40 | ('PyYAML', 'yaml'), |
---|
41 | ('magic-wormhole', 'wormhole'), |
---|
42 | ('setuptools', 'setuptools'), |
---|
43 | ('eliot', 'eliot'), |
---|
44 | ('attrs', 'attr'), |
---|
45 | ('autobahn', 'autobahn'), |
---|
46 | ] |
---|
47 | |
---|
48 | # Dependencies for which we don't know how to get a version number at run-time. |
---|
49 | not_import_versionable = [ |
---|
50 | 'zope.interface', |
---|
51 | ] |
---|
52 | |
---|
53 | # Dependencies reported by pkg_resources that we can safely ignore. |
---|
54 | ignorable = [ |
---|
55 | 'argparse', |
---|
56 | 'distribute', |
---|
57 | 'twisted-web', |
---|
58 | 'twisted-core', |
---|
59 | 'twisted-conch', |
---|
60 | ] |
---|
61 | |
---|
62 | |
---|
63 | # These are suppressed globally: |
---|
64 | |
---|
65 | global_deprecation_messages = [ |
---|
66 | "BaseException.message has been deprecated as of Python 2.6", |
---|
67 | "twisted.internet.interfaces.IFinishableConsumer was deprecated in Twisted 11.1.0: Please use IConsumer (and IConsumer.unregisterProducer) instead.", |
---|
68 | "twisted.internet.interfaces.IStreamClientEndpointStringParser was deprecated in Twisted 14.0.0: This interface has been superseded by IStreamClientEndpointStringParserWithReactor.", |
---|
69 | ] |
---|
70 | |
---|
71 | # These are suppressed while importing dependencies: |
---|
72 | |
---|
73 | deprecation_messages = [ |
---|
74 | "the sha module is deprecated; use the hashlib module instead", |
---|
75 | "object.__new__\(\) takes no parameters", |
---|
76 | "The popen2 module is deprecated. Use the subprocess module.", |
---|
77 | "the md5 module is deprecated; use hashlib instead", |
---|
78 | "twisted.web.error.NoResource is deprecated since Twisted 9.0. See twisted.web.resource.NoResource.", |
---|
79 | "the sets module is deprecated", |
---|
80 | ] |
---|
81 | |
---|
82 | runtime_warning_messages = [ |
---|
83 | "Not using mpz_powm_sec. You should rebuild using libgmp >= 5 to avoid timing attack vulnerability.", |
---|
84 | ] |
---|
85 | |
---|
86 | warning_imports = [ |
---|
87 | 'twisted.persisted.sob', |
---|
88 | 'twisted.python.filepath', |
---|
89 | ] |
---|