Project-Platypus / Platypus

A Free and Open Source Python Library for Multiobjective Optimization
GNU General Public License v3.0
553 stars 152 forks source link

Replace `setup.py` with `pyproject.toml` #199

Closed EwoutH closed 1 year ago

EwoutH commented 1 year ago

Migrate the project install commands and metadata from setup.py to pyproject.toml. It largely follows the convention from Configuring setuptools using pyproject.toml files.

It also adds [project.urls] for nice URL links on PyPI, recieves the version dynamically (from platypus.__version__) and moves pytest and mock to an optional [test] dependency.

So if you do pip install platypus-opt only NumPy is installed as dependency, and with pip install platypus-opt[test] pytest and mock also get installed.

EwoutH commented 1 year ago

I sneaked two other improvements in here as wel (spot the differences):

Screenshot_807 Screenshot_809

I hope you like it!