-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Minor fixes #111
base: main
Are you sure you want to change the base?
Minor fixes #111
Conversation
@ocefpaf Is some of this the new way to do packaging, in particular removing the setup.* files? Stresses me out. Did you do it correctly? |
Yes. See https://peps.python.org/pep-0518/ and https://peps.python.org/pep-0517/ for more info. Python packaging rarely requires a setup.py nowadays.
Sorry for the stress. Feel free to close it. Regarding correctness. We can add a packaging tests here, build sdist and wheel for upload, to ensure things work. |
No! That's not what I meant, I meant that I don't feel in a good position to check it and it always feels a bit like magic. You're right, a test would be a good way! And thanks for the resources, I need to keep updating my understanding of how things work. |
The release GitHub Actions now:
That should help avoid any regressions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I seem to have not posted this somehow.
.github/workflows/release.yaml
Outdated
run: > | ||
cd dist | ||
&& python -m twine check * | ||
&& python -m pip install *.whl | ||
&& cp --recursive ../tests . | ||
&& python -m pytest -rxs tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think you need the &&
if you don't fold everything into one line:
run: > | |
cd dist | |
&& python -m twine check * | |
&& python -m pip install *.whl | |
&& cp --recursive ../tests . | |
&& python -m pytest -rxs tests | |
run: | | |
cd dist | |
python -m twine check * | |
python -m pip install *.whl | |
cp --recursive ../tests . | |
pytest -rxs tests |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe that, if something errors out, it continues with the next command in your form.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The default shell is bash -e
, which will fail the whole thing on the first command that fails.
And as a test:
$ bash -e <<EOF
false
echo yes
EOF
prints nothing as the first command failed.
I was chasing a red-herring due to a bad pinned version in an environment and ended up adding more Pythons to the test matrix here. No need code, just boilerplate updates.