mirror of
https://github.com/samsonjs/vdirsyncer.git
synced 2026-04-27 14:57:41 +00:00
Implement command to print minimal requirements
This commit is contained in:
parent
48a649ee8c
commit
8a7ac52ee7
1 changed files with 47 additions and 22 deletions
65
setup.py
65
setup.py
|
|
@ -11,28 +11,12 @@ Vdirsyncer is a synchronization tool for vdir. See the README for more details.
|
||||||
|
|
||||||
|
|
||||||
import platform
|
import platform
|
||||||
|
import re
|
||||||
|
|
||||||
from setuptools import find_packages, setup
|
from setuptools import find_packages, setup, Command
|
||||||
|
|
||||||
|
|
||||||
setup(
|
requirements = [
|
||||||
name='vdirsyncer',
|
|
||||||
use_scm_version={
|
|
||||||
'write_to': 'vdirsyncer/version.py',
|
|
||||||
},
|
|
||||||
setup_requires=['setuptools_scm'],
|
|
||||||
author='Markus Unterwaditzer',
|
|
||||||
author_email='markus@unterwaditzer.net',
|
|
||||||
url='https://github.com/untitaker/vdirsyncer',
|
|
||||||
description='Synchronize calendars and contacts',
|
|
||||||
license='MIT',
|
|
||||||
long_description=open('README.rst').read(),
|
|
||||||
packages=find_packages(exclude=['tests.*', 'tests']),
|
|
||||||
include_package_data=True,
|
|
||||||
entry_points={
|
|
||||||
'console_scripts': ['vdirsyncer = vdirsyncer.cli:main']
|
|
||||||
},
|
|
||||||
install_requires=[
|
|
||||||
# https://github.com/mitsuhiko/click/issues/200
|
# https://github.com/mitsuhiko/click/issues/200
|
||||||
'click>=5.0',
|
'click>=5.0',
|
||||||
'click-log>=0.1.3',
|
'click-log>=0.1.3',
|
||||||
|
|
@ -52,8 +36,49 @@ setup(
|
||||||
'requests_toolbelt >=0.3.0',
|
'requests_toolbelt >=0.3.0',
|
||||||
# https://github.com/untitaker/python-atomicwrites/commit/4d12f23227b6a944ab1d99c507a69fdbc7c9ed6d # noqa
|
# https://github.com/untitaker/python-atomicwrites/commit/4d12f23227b6a944ab1d99c507a69fdbc7c9ed6d # noqa
|
||||||
'atomicwrites>=0.1.7'
|
'atomicwrites>=0.1.7'
|
||||||
],
|
]
|
||||||
|
|
||||||
|
|
||||||
|
class PrintRequirements(Command):
|
||||||
|
|
||||||
|
description = 'Prints minimal requirements'
|
||||||
|
|
||||||
|
user_options = []
|
||||||
|
|
||||||
|
def initialize_options(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def finalize_options(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
[
|
||||||
|
print(requirement.replace(">", "=").replace(" ", ""))
|
||||||
|
for requirement in requirements
|
||||||
|
]
|
||||||
|
|
||||||
|
setup(
|
||||||
|
name='vdirsyncer',
|
||||||
|
use_scm_version={
|
||||||
|
'write_to': 'vdirsyncer/version.py',
|
||||||
|
},
|
||||||
|
setup_requires=['setuptools_scm'],
|
||||||
|
author='Markus Unterwaditzer',
|
||||||
|
author_email='markus@unterwaditzer.net',
|
||||||
|
url='https://github.com/untitaker/vdirsyncer',
|
||||||
|
description='Synchronize calendars and contacts',
|
||||||
|
license='MIT',
|
||||||
|
long_description=open('README.rst').read(),
|
||||||
|
packages=find_packages(exclude=['tests.*', 'tests']),
|
||||||
|
include_package_data=True,
|
||||||
|
entry_points={
|
||||||
|
'console_scripts': ['vdirsyncer = vdirsyncer.cli:main']
|
||||||
|
},
|
||||||
|
install_requires=requirements,
|
||||||
extras_require={
|
extras_require={
|
||||||
'remotestorage': ['requests-oauthlib']
|
'remotestorage': ['requests-oauthlib']
|
||||||
|
},
|
||||||
|
cmdclass={
|
||||||
|
'requirements': PrintRequirements
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue