-
Notifications
You must be signed in to change notification settings - Fork 308
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
Use uv #504
Use uv #504
Conversation
Please correct the issue link in the description above - this is issue #501, not #57. It looks like the "uv pip install" command in
I'm not familiar with uv so I'm not sure exactly what this should be doing instead. |
As for hatchling versus poetry: a big difference is that hatchling includes the test suite and example data into the source distribution ( I'm not sure what to do. On the one hand, we probably ought to be including the test suite in the source distribution. On the other hand, the current test suite is vastly larger than it needs to be. Also, since hatchling will include all files from the working directory (except those ignored by |
Regarding hatchling, you don't have to change the behavior if you don't want to, it just has different defaults. However, you can manually exclude tests and whatever else you don't want (by default, it ignores everything in |
I agree that it would be best to exclude tests from the distribution. I haven't looked, but if doing this we should check where the examples in https://github.com/MIT-LCP/wfdb-python/blob/main/demo.ipynb are getting their data. e.g. is The package has - or at least used to have - odd behavior around downloading data. It would go off to the internet to download data without being explicitly asked to do so. |
Let's not include the tests (or sample data or demos) in the sdist, then. In my experience (having worked with a lot of different build systems, just not in Python) it is better to define what files should go into the package rather than what files shouldn't. I think it's probably best to do that by defining explicit "include" patterns in pyproject.toml. |
OK, so I had to bump Python to >= 3.8, because many packages are not available for 3.7 anymore. I suggest bumping to >= 3.9, because 3.8 is already EOL (https://devguide.python.org/versions/). Of course, support for 3.12 and 3.13 would be nice, but this requires NumPy >= 2, which will hopefully be supported soon. I excluded the I've also removed the need to sync the version in two different places; now it is only available in I still have to update the developers guide and will include the note on the importance of cleaning the repository before building. I also have to find out how to set up API tokens for PyPI with uv. |
This looks good to me.
@bemoody my preference would be to merge this pull request, then deal with includes in a later change. |
This pull request adds a changelog for `v4.2.0`. The changelog is based on the following auto-generated summary of merge commits generated by GitHub: ``` ## What's Changed * bug-fix: Numpy ValueError when cheking empty list equality by @ajadczaksunriselabs in #459 * bug-fix: Pandas set indexing error by @ajadczaksunriselabs in #460 * fix for /issues/452 by @tecamenz in #465 * Use numpydoc to render documentation by @SnoopJ in #472 * build(deps): bump readthedocs-sphinx-search from 0.1.1 to 0.3.2 in /docs by @dependabot in #477 * Update style by @bemoody in #482 * Fix NaN handling in Record.adc, and other fixes by @bemoody in #481 * Set upper bound on Numpy version (numpy = ">=1.10.1,<2.0.0"). Ref #493. by @tompollard in #494 * Update actions to use actions/checkout@v3 and actions/setup-python@v4. by @tompollard in #495 * Fix: Indent code to ensure 'j' is within for-loop in GQRS algorithm by @tompollard in #499 * Add write_dir argument to csv_to_wfdb. Fixes #67. by @tompollard in #492 * Fix warnings by @cbrnr in #502 * README improvements by @bemoody in #503 * Change in type promotion. Fixes to annotation.py by @tompollard in #506 * Use uv by @cbrnr in #504 * Change in type promotion. Fixes to _signal.py by @tompollard in #507 * Test round-trip write/read of supported binary formats by @bemoody in #509 * Corrected typo and extended allowed types for MultiSegmentRecord by @agent3gatech in #514 * Allow expanded physical signal in `calc_adc_params` by @briangow in #512 * Add capability to write signal with unique `samps_per_frame` to `wfdb.io.wrsamp` by @briangow in #510 * Fix selection of channels when converting to EDF by @SamJelfs in #519 * Change in type promotion introduced in Numpy 2.0. Fixes to edf.py. by @tompollard in #527 * Bump dependencies for NumPy 2 compatibility by @cbrnr in #511 * Bump version to v4.2.0 and update notes on creating new releases by @tompollard in #497 ## New Contributors * @ajadczaksunriselabs made their first contribution in #459 * @tecamenz made their first contribution in #465 * @SnoopJ made their first contribution in #472 * @dependabot made their first contribution in #477 * @agent3gatech made their first contribution in #514 * @SamJelfs made their first contribution in #519 **Full Changelog**: v4.1.2...v4.2.0 ```
Fixes #501.
To do:
uv pip ...
, but I think this should be replaced withuv run ...