1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
- #!/usr/bin/env python
- from setuptools import find_packages, setup
- import os
- import subprocess
- import time
- version_file = 'drct/version.py'
- def readme():
- with open('README.md', encoding='utf-8') as f:
- content = f.read()
- return content
- def get_git_hash():
- def _minimal_ext_cmd(cmd):
- # construct minimal environment
- env = {}
- for k in ['SYSTEMROOT', 'PATH', 'HOME']:
- v = os.environ.get(k)
- if v is not None:
- env[k] = v
- # LANGUAGE is used on win32
- env['LANGUAGE'] = 'C'
- env['LANG'] = 'C'
- env['LC_ALL'] = 'C'
- out = subprocess.Popen(cmd, stdout=subprocess.PIPE, env=env).communicate()[0]
- return out
- try:
- out = _minimal_ext_cmd(['git', 'rev-parse', 'HEAD'])
- sha = out.strip().decode('ascii')
- except OSError:
- sha = 'unknown'
- return sha
- def get_hash():
- if os.path.exists('.git'):
- sha = get_git_hash()[:7]
- else:
- sha = 'unknown'
- return sha
- def write_version_py():
- content = """# GENERATED VERSION FILE
- # TIME: {}
- __version__ = '{}'
- __gitsha__ = '{}'
- version_info = ({})
- """
- sha = get_hash()
- with open('VERSION', 'r') as f:
- SHORT_VERSION = f.read().strip()
- VERSION_INFO = ', '.join([x if x.isdigit() else f'"{x}"' for x in SHORT_VERSION.split('.')])
- version_file_str = content.format(time.asctime(), SHORT_VERSION, sha, VERSION_INFO)
- with open(version_file, 'w') as f:
- f.write(version_file_str)
- def get_version():
- with open(version_file, 'r') as f:
- exec(compile(f.read(), version_file, 'exec'))
- return locals()['__version__']
- def get_requirements(filename='requirements.txt'):
- here = os.path.dirname(os.path.realpath(__file__))
- with open(os.path.join(here, filename), 'r') as f:
- requires = [line.replace('\n', '') for line in f.readlines()]
- return requires
- if __name__ == '__main__':
- write_version_py()
- setup(
- name='drct',
- version=get_version(),
- description='DRCT',
- long_description=readme(),
- long_description_content_type='text/markdown',
- author='Chia-Ming Lee',
- author_email='zuw408421476@gmail.com',
- keywords='computer vision, pytorch, basicsr, image restoration, super-resolution',
- url='https://github.com/ming053l/DRCT',
- include_package_data=True,
- packages=find_packages(exclude=('options', 'datasets', 'experiments', 'results', 'tb_logger', 'wandb')),
- classifiers=[
- 'Development Status :: 4 - Beta',
- 'License :: OSI Approved :: Apache Software License',
- 'Operating System :: OS Independent',
- 'Programming Language :: Python :: 3',
- 'Programming Language :: Python :: 3.7',
- 'Programming Language :: Python :: 3.8',
- ],
- license='MIT License',
- setup_requires=['cython', 'numpy'],
- install_requires=get_requirements(),
- zip_safe=False)
|