aboutsummaryrefslogtreecommitdiffstats
path: root/setup.py
diff options
context:
space:
mode:
authorMatthias Baumgartner <dev@igsor.net>2023-03-05 19:22:58 +0100
committerMatthias Baumgartner <dev@igsor.net>2023-03-05 19:22:58 +0100
commita35b33f4f1ddcf6f1bb8ab0f41b87bf2b847f11d (patch)
treefb220da28bb7248ebf37ce09af5de88f2c1aaad4 /setup.py
parent7582c280ad5324a2f0427999911c7e7abc14a6ab (diff)
parentaf81318ae9311fd0b0e16949cef3cfaf7996970b (diff)
downloadbsie-release.tar.gz
bsie-release.tar.bz2
bsie-release.zip
Merge branch 'develop'HEADv0.23.03releasemain
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py71
1 files changed, 62 insertions, 9 deletions
diff --git a/setup.py b/setup.py
index ee9e0fd..b1f5b2c 100644
--- a/setup.py
+++ b/setup.py
@@ -1,20 +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', ),
- install_requires=('rdflib', 'bsfs'),
+ 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',
+ 'pyyaml',
+ ),
+ 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
+ ),
+ )