ED_LRR/setup.py

123 lines
3.5 KiB
Python

# -*- coding: utf-8 -*-
from setuptools import find_packages, find_namespace_packages, setup
from setuptools_rust import Binding, RustExtension, Strip
import os
with open("README.md", "r") as fh:
long_description = fh.read()
extras_require = {
"build": ["pyinstaller", "pywin32"],
"test": [
"pytest",
"pytest-cov",
"pytest-dependency",
"pytest-benchmark[histogram]",
"pytest-metadata",
"pytest-flake8",
"pytest-flask",
"pytest-mock",
"pytest-flask-sqlalchemy",
"pytest-steps",
"pytest-xdist",
"flake8-bugbear",
"flake8-comprehensions",
"cohesion",
"hypothesis",
"flaky",
],
"dev": [
'black; python_version >= "3.6"',
"jinja2",
"tsp",
"flake8",
"flake8-bugbear",
"flake8-comprehensions",
"cohesion",
"pre-commit",
"ipython",
"flask-konch",
"setuptools_rust",
],
"gui": ["PyQt5", "pyperclip"],
"web": [
"flask",
"gevent",
"webargs",
"flask-executor",
"flask-wtf",
"flask-user",
"flask-debugtoolbar",
"flask-bootstrap4",
"flask-sqlalchemy",
"flask-nav",
"flask-admin",
"sqlalchemy_utils[password]",
"python-dotenv",
],
}
extras_require["all"] = sorted(set(sum(extras_require.values(), [])))
# os.environ["RUSTC_WRAPPER"]='"{}" /c echo'.format(os.environ['COMSPEC'])
setup(
use_scm_version={"write_to": "__version__.py"},
name="ed_lrr_gui",
author="Daniel Seiller",
author_email="earthnuker@gmail.com",
description="Elite: Dangerous long range route plotter",
long_description=long_description,
long_description_content_type="text/markdown",
url="https://gitdab.com/Earthnuker/ED_LRR/src/branch/pyqt_gui",
rust_extensions=[
RustExtension(
"_ed_lrr",
path="rust/Cargo.toml",
binding=Binding.PyO3,
strip=Strip.No,
rustc_flags=["--emit=asm"],
# features=["profiling"],
debug=False,
native=True,
quiet=True,
)
],
packages=find_namespace_packages(),
entry_points={
"console_scripts": ["ed_lrr = ed_lrr_gui.__main__:main"],
"gui_scripts": ["ed_lrr_gui = ed_lrr_gui.__main__:gui_main"],
},
install_requires=[
"appdirs",
"PyYAML",
"requests",
"python-dateutil",
"click",
"tqdm",
"click-default-group",
"profig",
"ujson",
"colorama",
"svgwrite",
"coloredlogs",
],
setup_requires=["setuptools", "setuptools-rust", "setuptools-scm", "wheel"],
dependency_links=["https://github.com/Nuitka/Nuitka/archive/develop.zip"],
extras_require=extras_require,
classifiers=[
"License :: OSI Approved :: MIT License",
"Programming Language :: Rust",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: Implementation :: CPython",
"Operating System :: Windows",
"Operating System :: Linux",
],
include_package_data=True,
zip_safe=False,
)