GromacsWrapper
GromacsWrapper copied to clipboard
no console scripts installed in 0.9.0
The gw-*.py scripts are not installed in the bin directory.
With the switch to pyproject.toml #278 and modern versions of setuptools, we cannot use
[tool.setuptools]
scripts = [
"scripts/gw-join_parts.py",
"scripts/gw-merge_topologies.py",
"scripts/gw-forcefield.py",
"scripts/gw-partial_tempering.py"
]
because with python -m build we get an error
configuration error: `tool.setuptools` must not contain {'scripts'} properties
Background
- https://stackoverflow.com/a/74355524 says that we could include a shim
setup.pyjust for scripts and that would likely work, but I want to make a clean break - https://stackoverflow.com/a/74955996 suggests that the code above ought to work and only raise a warning that it's discouraged but presumably 1-2 years later, setuptools decided to not support it anymore
The clean solution is to properly use entrypoints, which would require refactoring the scripts into a gromacs.scripts module with main() functions. However, the scripts are likely not used much and it's too much work to refactor and adding tests.
Therefore, I will not include them, see if anyone complains, and probably eventually remove them.
Also note that these scripts never had tests so one has to consider them broken...