setup.py 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #!/usr/bin/env python
  2. # Copyright 2016,2017 by MPI-SWS and Data-Ken Research.
  3. # Licensed under the Apache 2.0 License.
  4. """Setup script for thingflow distribution. Note that we only
  5. package up the python code. The tests, docs, and examples
  6. are all kept only in the full source repository.
  7. """
  8. import sys
  9. sys.path.insert(0, 'thingflow')
  10. from thingflow import __version__
  11. #We try setuptools first (which has more features), and
  12. # fallback to distutils if setuptools was not installed.
  13. try:
  14. from setuptools import setup
  15. except ImportError:
  16. print("Did not find setuptools, using distutils instead")
  17. from distutils.core import setup
  18. DESCRIPTION =\
  19. """
  20. ThingFlow is a (Python3) framework for building IOT event processing
  21. dataflows. The goal of this framework is to support the
  22. creation of robust IoT systems from reusable components. These systems must
  23. account for noisy/missing sensor data, distributed computation, and the
  24. need for local (near the data source) processing.
  25. ThingFlow is pure Python (3.4 or later). The packaged distribution
  26. (e.g. on PyPi) only includes the core Python code. The source repository at
  27. https://github.com/mpi-sws-rse/thingflow-python contains the core Python
  28. code plus the documentation, examples, and tests. There is also a port
  29. of ThingFlow for micropython available in the source repo.
  30. """
  31. setup(name='thingflow',
  32. version=__version__,
  33. description="Event Stream processing library for IOT",
  34. long_description=DESCRIPTION,
  35. license="Apache 2.0",
  36. author="MPI-SWS and Data-Ken Research",
  37. author_email="info@thingflow.io",
  38. maintainer='Jeff Fischer',
  39. maintainer_email='jeff+thingflow@data-ken.org',
  40. url='https://github.com/mpi-sws-rse/thingflow-python',
  41. packages=['thingflow', 'thingflow.internal', 'thingflow.filters',
  42. 'thingflow.sensors', 'thingflow.sensors.rpi',
  43. 'thingflow.adapters', 'thingflow.adapters.rpi'],
  44. classifiers = [
  45. 'Development Status :: 4 - Beta',
  46. 'License :: OSI Approved :: Apache Software License',
  47. 'Programming Language :: Python :: 3.4',
  48. 'Programming Language :: Python :: 3.5',
  49. 'Programming Language :: Python :: 3.6',
  50. 'Operating System :: OS Independent',
  51. 'Intended Audience :: Developers' ,
  52. ],
  53. keywords = ['events', 'iot', 'sensors'],
  54. )