12
12
from setuptools import find_packages , setup , Command
13
13
14
14
# Package meta-data.
15
- NAME = ' funannotate'
16
- DESCRIPTION = ' funannotate: eukaryotic genome annotation pipeline'
17
- URL = ' https://github.com/nextgenusfs/funannotate'
18
-
19
- AUTHOR = ' Jon Palmer'
20
- REQUIRES_PYTHON = ' >=3.6.0, <3.10'
15
+ NAME = " funannotate"
16
+ DESCRIPTION = " funannotate: eukaryotic genome annotation pipeline"
17
+ URL = " https://github.com/nextgenusfs/funannotate"
18
+
19
+ AUTHOR = " Jon Palmer"
20
+ REQUIRES_PYTHON = " >=3.6.0, <3.10"
21
21
VERSION = None
22
22
23
23
# What packages are required for this module to be executed?
24
24
REQUIRED = [
25
- 'biopython' , 'goatools' ,
26
- 'seaborn' ,'psutil' ,
27
- 'pandas' ,'matplotlib' ,
28
- 'natsort' , 'numpy' ,
29
- 'requests' , 'scikit-learn' ,
30
- 'scipy' , 'distro'
25
+ "biopython<1.80" ,
26
+ "goatools" ,
27
+ "seaborn" ,
28
+ "psutil" ,
29
+ "pandas" ,
30
+ "matplotlib" ,
31
+ "natsort" ,
32
+ "numpy" ,
33
+ "requests" ,
34
+ "scikit-learn" ,
35
+ "scipy" ,
36
+ "distro" ,
31
37
]
32
38
33
39
# What packages are optional?
45
51
# Import the README and use it as the long-description.
46
52
# Note: this will only work if 'README.md' is present in your MANIFEST.in file!
47
53
try :
48
- with io .open (os .path .join (here , ' README.md' ), encoding = ' utf-8' ) as f :
49
- long_description = ' \n ' + f .read ()
54
+ with io .open (os .path .join (here , " README.md" ), encoding = " utf-8" ) as f :
55
+ long_description = " \n " + f .read ()
50
56
except FileNotFoundError :
51
57
long_description = DESCRIPTION
52
58
53
59
# Load the package's __version__.py module as a dictionary.
54
60
about = {}
55
61
if not VERSION :
56
- with open (os .path .join (here , NAME , ' __version__.py' )) as f :
62
+ with open (os .path .join (here , NAME , " __version__.py" )) as f :
57
63
exec (f .read (), about )
58
64
else :
59
- about [' __version__' ] = VERSION
65
+ about [" __version__" ] = VERSION
60
66
61
67
62
68
class UploadCommand (Command ):
63
69
"""Support setup.py upload."""
64
70
65
- description = ' Build and publish the package.'
71
+ description = " Build and publish the package."
66
72
user_options = []
67
73
68
74
@staticmethod
69
75
def status (s ):
70
76
"""Prints things in bold."""
71
- print ((' \033 [1m{0}\033 [0m' .format (s )))
77
+ print ((" \033 [1m{0}\033 [0m" .format (s )))
72
78
73
79
def initialize_options (self ):
74
80
pass
@@ -78,56 +84,55 @@ def finalize_options(self):
78
84
79
85
def run (self ):
80
86
try :
81
- self .status (' Removing previous builds…' )
82
- rmtree (os .path .join (here , ' dist' ))
87
+ self .status (" Removing previous builds…" )
88
+ rmtree (os .path .join (here , " dist" ))
83
89
except OSError :
84
90
pass
85
91
86
- self .status (' Building Source and Wheel (universal) distribution…' )
87
- os .system (' {0} setup.py sdist bdist_wheel --universal' .format (sys .executable ))
92
+ self .status (" Building Source and Wheel (universal) distribution…" )
93
+ os .system (" {0} setup.py sdist bdist_wheel --universal" .format (sys .executable ))
88
94
89
- self .status (' Uploading the package to PyPI via Twine…' )
90
- os .system (' twine upload dist/*' )
95
+ self .status (" Uploading the package to PyPI via Twine…" )
96
+ os .system (" twine upload dist/*" )
91
97
92
- self .status (' Pushing git tags…' )
93
- os .system (' git tag v{0}' .format (about [' __version__' ]))
94
- os .system (' git push --tags' )
98
+ self .status (" Pushing git tags…" )
99
+ os .system (" git tag v{0}" .format (about [" __version__" ]))
100
+ os .system (" git push --tags" )
95
101
96
102
sys .exit ()
97
103
98
104
99
105
# Where the magic happens:
100
106
setup (
101
107
name = NAME ,
102
- version = about [' __version__' ],
108
+ version = about [" __version__" ],
103
109
description = DESCRIPTION ,
104
110
long_description = long_description ,
105
- long_description_content_type = ' text/markdown' ,
111
+ long_description_content_type = " text/markdown" ,
106
112
author = AUTHOR ,
107
113
author_email = EMAIL ,
108
114
python_requires = REQUIRES_PYTHON ,
109
115
url = URL ,
110
- packages = find_packages (exclude = (' tests' ,)),
116
+ packages = find_packages (exclude = (" tests" ,)),
111
117
entry_points = {
112
- 'console_scripts' :
113
- ['funannotate=funannotate.funannotate:main' ],
118
+ "console_scripts" : ["funannotate=funannotate.funannotate:main" ],
114
119
},
115
120
install_requires = REQUIRED ,
116
121
extras_require = EXTRAS ,
117
122
include_package_data = True ,
118
- license = ' BSD-2' ,
119
- #scripts=['scripts/funannotate'],
123
+ license = " BSD-2" ,
124
+ # scripts=['scripts/funannotate'],
120
125
classifiers = [
121
126
# Trove classifiers
122
127
# Full list: https://pypi.python.org/pypi?%3Aaction=list_classifiers
123
- ' Development Status :: 4 - Beta' ,
124
- ' License :: OSI Approved :: BSD License' ,
125
- ' Programming Language :: Python' ,
126
- ' Operating System :: Unix' ,
127
- ' Intended Audience :: Science/Research' ,
128
- ' Topic :: Scientific/Engineering :: Bio-Informatics'
129
- ],
128
+ " Development Status :: 4 - Beta" ,
129
+ " License :: OSI Approved :: BSD License" ,
130
+ " Programming Language :: Python" ,
131
+ " Operating System :: Unix" ,
132
+ " Intended Audience :: Science/Research" ,
133
+ " Topic :: Scientific/Engineering :: Bio-Informatics" ,
134
+ ],
130
135
cmdclass = {
131
- ' upload' : UploadCommand ,
136
+ " upload" : UploadCommand ,
132
137
},
133
138
)
0 commit comments