aboutsummaryrefslogtreecommitdiffstats
path: root/setup.py
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2023-03-05 19:22:46 +0100
committerMatthias Baumgartner <dev@igsor.net>2023-03-05 19:22:46 +0100
commitaf81318ae9311fd0b0e16949cef3cfaf7996970b (patch)
treefb220da28bb7248ebf37ce09af5de88f2c1aaad4 /setup.py
parent7bf6b33fa6d6b901e4933bfe0b2a9939d7b3f3f3 (diff)
parent8b460aa0232cd841af7b7734c91982bc83486e03 (diff)
downloadbsie-af81318ae9311fd0b0e16949cef3cfaf7996970b.tar.gz
bsie-af81318ae9311fd0b0e16949cef3cfaf7996970b.tar.bz2
bsie-af81318ae9311fd0b0e16949cef3cfaf7996970b.zip
Merge branch 'mb/diogenes' into develop
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py76
1 files changed, 58 insertions, 18 deletions
diff --git a/setup.py b/setup.py
index d45f178..b1f5b2c 100644
--- a/setup.py
+++ b/setup.py
@@ -1,33 +1,73 @@
-from setuptools import setup
+from setuptools import setup, find_packages
import os
+extras = {
+ # NOTE: an 'all' extra is added automatically
+ 'features': [
+ # image feature extractors
+ 'numpy',
+ ],
+ 'preview': [
+ # preview readers
+ 'preview_generator', # also depends on some system packages
+ 'pillow',
+ 'rawpy',
+ ],
+ 'image': [
+ # image readers
+ 'pillow',
+ 'rawpy',
+ # exif reader
+ 'pyexiv2',
+ ],
+ }
+
+
setup(
+ # package metadata
name='bsie',
- version='0.0.1',
+ version='0.23.03',
author='Matthias Baumgartner',
- author_email='dev@igsor.net',
+ author_email='dev@bsfs.io',
description='Extract information from files and store them in a BSFS.',
- long_description=open(os.path.join(os.path.dirname(__file__), 'README')).read(),
+ long_description=open(os.path.join(os.path.dirname(__file__), 'README.md')).read(),
license='BSD',
license_files=('LICENSE', ),
- url='https://www.igsor.net/projects/blackstar/bsie/',
- download_url='https://pip.igsor.net',
- packages=('bsie', ),
+ url='https://www.bsfs.io/bsie/',
+ download_url='https://pip.bsfs.io',
+
+ # packages
+ packages=find_packages(include=['bsie']),
+ package_dir={'bsie': 'bsie'},
+ # data files are included if mentioned in MANIFEST.in
+ include_package_data=True,
+
+ # entrypoints
+ entry_points={
+ 'console_scripts': [
+ 'bsie = bsie.apps:main',
+ ],
+ },
+
+ # dependencies
+ python_requires=">=3.7",
install_requires=(
'bsfs',
'pyparsing',
'python-magic',
- 'rdflib', # only for tests
- 'requests', # only for tests
- 'preview_generator', # also depends on some system packages
+ 'pyyaml',
),
- python_requires=">=3.7",
- extra_require=(
- # image reader
- 'pillow', 'rawpy',
- # image extractors
- 'numpy',
- )
-)
+ extras_require=dict(
+ # development targets
+ build=['build'],
+ dev=['coverage', 'mypy', 'pylint'],
+ doc=['sphinx', 'sphinx-copybutton', 'furo'],
+ test=['rdflib', 'requests', 'types-PyYAML'],
+ # add 'all'
+ all=list({pkg for ext in extras.values() for pkg in ext}),
+ # add extras
+ **extras
+ ),
+ )