Pip install for tools - #227
Conversation
|
@stephprince this PR is now ready for review |
|
I am wondering if this would be a good application of using uv to declare script dependencies and make the python file executable. That way we could avoid creating an additional python package files and these scripts would be relatively self-contained. I think the main tradeoff would be if we do plan to add several python utilities then it would be good to use more traditional packaging methods |
Sure, let's chat about this option. I have not used uv much yet. I don't have particularly strong feelings either way. I don't think we really need to release these tools as separate packages, i.e., I think they should be easy to use for developers from the repo. |
* Update to use uv for python tools * Update changelog
…README.md the source of truth to avoid duplication
|
@stephprince thanks for merging #229 with this PR. I've made a few more updates here to make sure the docs are consistently using uv for the python utilities and to avoid duplication between |
* Use pathlib in schematype_to_aqnwb.py * Update schematype_to_aqnwb to generate subfolder structure for outputs * Update the changelog * Update docs to described the new changes * Minor doc fixes * Update schematype_to_aqnwb to create an example app to test the build * Fix namespace use in generated cpp file * Fix namespace for included neurodata_types * Fix indent in string * Add workflow to test compiling the generated hpp/cpp files * Fix linter error * Update workflow name * Fix path in workflow * Debug workflow * Fix call in the workflow * Set AQNWB dir for build * Add back output capture * Update workflow * Add includes for all references types * Test workflow to test generating classes for the nwb-schema * Some cleanup for the test workflow * Break out running the test program in its own step * Remove TODO for DEFINE_REGISTERED_FIELD now that the includes are being added correctly * Add helper function to create cpp namespace name * Minor fix to heading in the workflow * Fix source filepath determination * Updated the changelog * Fix changelog * Update CHANGELOG.md * Pip install for tools (#227) * Add common Python ignores to .gitignore * Make the python utilities pip installable and add aqnwb-utils comman line utility * Update CHANGELOG * Fix argument parsing for command line utilities * Fix argument parsing for command line utilities * Add github workflow to debug issue * Fix setup for command utils * Removed debug workflow * Update example app generation to work with installed command line utilities * Update example app generation to work with installed command line utilities * Path HDF5 and BOOST install paths * Add missing includes for HDF5 and BOOST * Uv install tools (#229) * Update to use uv for python tools * Update changelog * Update docs to use uv for the python utilities throughout * Simplify docs for the python utilities by making the resources/utils/README.md the source of truth to avoid duplication --------- Co-authored-by: Steph Prince <40640337+stephprince@users.noreply.github.com>
pyproject.tomlfor python utils to make them pip installableuvheader to the python scripts to make them usable viauvaqnwb_utils.pyutility to provide a single command-line utility for aqnwbschematype_to_aqnwb.pyto create a more robust CMake file for the example app, because locating aqnwb relative to the script location doesn't work if the utilities are installed somewhere else using pip.