setup.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. from setuptools import setup
  2. import distutils.command.check
  3. class TestCommand(distutils.command.check.check):
  4. """Custom test command."""
  5. def run(self):
  6. # run tests using doctest
  7. import doctest
  8. # discrete solutions module
  9. from macop.solutions import discrete
  10. from macop.solutions import continuous
  11. # run all doctest
  12. print("==============================")
  13. print("Runs test command...")
  14. # discrete solutions module
  15. doctest.testmod(discrete)
  16. doctest.testmod(continuous)
  17. # pass test using doctest
  18. distutils.command.check.check.run(self)
  19. setup(
  20. name='macop',
  21. version='1.0.5',
  22. description='Minimalist And Customisable Optimisation Package',
  23. long_description=open('README.md').read(),
  24. long_description_content_type='text/markdown',
  25. classifiers=[
  26. 'Development Status :: 4 - Beta',
  27. 'License :: OSI Approved :: MIT License',
  28. 'Programming Language :: Python :: 3.7',
  29. 'Topic :: Scientific/Engineering',
  30. 'Topic :: Utilities'
  31. ],
  32. url='https://github.com/prise-3d/macop',
  33. author='Jérôme BUISINE',
  34. author_email='jerome.buisine@univ-littoral.fr',
  35. license='MIT',
  36. packages=['macop',
  37. 'macop.algorithms',
  38. 'macop.callbacks',
  39. 'macop.evaluators',
  40. 'macop.operators',
  41. 'macop.operators.discrete',
  42. 'macop.operators.continuous',
  43. 'macop.policies',
  44. 'macop.solutions',
  45. 'macop.utils'],
  46. install_requires=[
  47. 'numpy',
  48. ],
  49. cmdclass={
  50. 'test': TestCommand,
  51. },
  52. zip_safe=False)