Uv install tools - #229
Conversation
|
@stephprince sorry, I didn't see #228 until just now. This PR now updates the approach from #227 to support uv. It still also supports pip by also having a pyproject.toml (instead of the setup.py). Let me know what you think |
|
I was thinking uv would allow us to keep it minimal without the additional |
|
Up to you if you want to keep pip or not. I just figured folks may not be familiar with uv, but these are developer tools so I think it's fine. Just let me know if I should remove the pip part |
stephprince
left a comment
There was a problem hiding this comment.
Good point! Sounds good to leave both since they're already added in!
* 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
* 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>
* 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 * 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 * Update class generator to create the correct call to the parents initialize method and fix datatype in initialize for Datasets to use AQNWB::IO::ArrayDataSetConfig * Enhance spec_to_func_param to optionally render the default value * Support default values specified in the schema in generated initalize methods * Include objects in subgroups in the initialize definition * Fix type for typed datasets in initialilze * Render referenced includes only if there are any * Properly include parameters for subtypes we are referencing on initialize * Move computing of default values to a function to make the code more robust and simplify sorting of parameters * Define default value for optional datasets were we pass an ArrayDataSetConfig * Add inline comments * Update CHANGELOG * Fix codespell error * Simplify the code logic by factoring the compilation of parameters into the new get_initalize_method_parameters( function * Split render_initalize_method into render_initalize_method_header and render_initalize_method_cpp * Refactor render_initialize_method_cpp to add initalize comments code for all inputs * Update changelog * Fix code spelling errors * Fix name of data values in attribute init code generation * Fix use of varname in dataset code hints * Fix tracking of paths and complete rendering of read/record methods * Add suport for DEFINE_REFERENCED_REGISTERED_FIELD * Return status in initialize call * Add virtual destructor for autogenerated sources * Update Changelog * Support init of Dataset neurodata_types * Update changelog * Support macro for unnamed registered fields (#231) * Added new RegisteredType::DEFINE_UNNAMED_REGISTERED_FIELD macro * Updated the CHANGELOG * Update devdocs to document install option * Support DEFINE_UNNAMED_REGISTERED_FIELD in schematype_to_aqnwb.py utility * Fix linter and codespell errors * Identify opitonal RegisteredTypes * Added support for attributes/datasets with fixed values in schematype_to_aqnwb * Unmix definition of cpp-source from generation of code blocks * Fix errors due to errors during merge --------- Co-authored-by: Steph Prince <40640337+stephprince@users.noreply.github.com> --------- Co-authored-by: Steph Prince <40640337+stephprince@users.noreply.github.com>
Update #227 to use UV