# -*- coding: utf-8 -*- # # you can install this to a local test virtualenv like so: # virtualenv venv # ./venv/bin/pip install --editable . # ./venv/bin/pip install --editable .[dev] # with dev requirements, too from __future__ import print_function import os.path import subprocess import sys # For compatibility with Python2.7 from io import open from setuptools import setup from coursera import __version__ def generate_readme_rst(): """ Generate README.rst from README.md via pandoc. In case of errors, we show a message having the error that we got and exit the program. """ pandoc_cmd = [ 'pandoc', '--from=markdown', '--to=rst', '--output=README.rst', 'README.md' ] if os.path.exists('README.rst'): return try: subprocess.call(pandoc_cmd) except (IOError, OSError) as e: print('Could not run "pandoc". Error: %s' % e, file=sys.stderr) print('Generating only a stub instead of the real documentation.') def read_file(filename, alt=None): """ Read the contents of filename or give an alternative result instead. """ lines = None try: with open(filename, encoding='utf-8') as f: lines = f.read() except IOError: lines = [] if alt is None else alt return lines generate_readme_rst() long_description = read_file( 'README.md', 'Cannot read README.md' ) requirements = read_file('requirements.txt') dev_requirements = read_file('requirements-dev.txt') trove_classifiers = [ 'Development Status :: 4 - Beta', 'Environment :: Console', 'Intended Audience :: End Users/Desktop', 'License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)', 'Operating System :: OS Independent', 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Programming Language :: Python', 'Topic :: Education', ] setup( name='coursera-dl', version=__version__, maintainer='Rogério Theodoro de Brito', maintainer_email='rbrito@gmail.com', license='LGPL', url='https://github.com/coursera-dl/coursera-dl', install_requires=requirements, extras_require=dict( dev=dev_requirements ), description='Script for downloading Coursera.org videos and naming them.', long_description=long_description, long_description_content_type='text/markdown', keywords=['coursera-dl', 'coursera', 'download', 'education', 'MOOCs', 'video'], classifiers=trove_classifiers, packages=["coursera"], entry_points=dict( console_scripts=[ 'coursera-dl=coursera.coursera_dl:main' ] ), platforms=['any'], )