Closed omid-b closed 12 months ago
Thanks for your contribution, however we have decided to go with the meson-python
route (#338), not only because it completely removes the setup.py
file to avoid confusion in the future. But also due to the other benefits it imparts (the editable style installs of extension modules, required explicit listing of installed files).
Thanks for your reply. Okay, fair enough.
Hi Discretize developers team!
This is an alternative to #338 created by @jcapriot . While I appreciate the work in #338, I think this PR follows the "Principle of Simplicity" more closely: "Make it as simple as possible, but not simpler!".
This PR tries to achieve the same goal as in #338 but not using the
meson.build
approach that is proposed by @jcapriot . Not that I say themeson.build
approach is wrong, No! It is now used inSciPy
, so it must be good! But I thinkmeson.build
method is relatively much more complex and unnecessary in the case ofdiscretize
. So, the main reason that I created this PR was that this method is relatively much simpler and less modifications and addition of new files were required to the original structure of the project in order to achieve the same goal.It is ready to be reviewed. So feel free to discuss and ask questions please.
Summary of changes:
flat-layout
tosrc-layout
pyproject.toml
setup.py
as they are now inpyproject.toml
(it is still required for the extensions)As a result of these changes,
discretize
now can be installed using bothpip install .
andpip install -e .
in fresh virtual python environments and their behavior for both types of installations is as expected!