change: Reorganize as griffe and griffelib packages with uv workspaces#435
change: Reorganize as griffe and griffelib packages with uv workspaces#435johnslavik merged 6 commits intob/migratefrom
griffe and griffelib packages with uv workspaces#435Conversation
|
@copilot Remember that |
Co-authored-by: johnslavik <[email protected]>
Co-authored-by: johnslavik <[email protected]>
Co-authored-by: johnslavik <[email protected]>
griffe and griffelib packages with uv workspacesgriffe and griffelib packages with uv workspaces
Co-authored-by: johnslavik <[email protected]>
Updated the root |
johnslavik
left a comment
There was a problem hiding this comment.
Try to promote public interface usage (griffe check, python -m griffe ...) instead of griffecli directly.
pyproject.toml
Outdated
| [tool.hatch.metadata.hooks.uv-dynamic-versioning.optional-dependencies] | ||
| # The 'pypi' extra provides dependencies needed for the load_pypi functionality | ||
| # to download and inspect packages from PyPI. | ||
| pypi = ["pip>=24.0", "platformdirs>=4.2", "wheel>=0.42"] |
There was a problem hiding this comment.
Move this out to griffelib configuration and here do:
| pypi = ["pip>=24.0", "platformdirs>=4.2", "wheel>=0.42"] | |
| pypi = ["griffelib[pypi]=={{version}}"] |
And use double brackets for version interpolation with uv dynamic versioning everywhere
There was a problem hiding this comment.
Updated in commit 1ef3a63. Changed pypi optional dependency in root griffe to re-export griffelib[pypi]=={{version}} and updated all version interpolations to use double brackets {{version}}.
…[pypi] Co-authored-by: johnslavik <[email protected]>
For reviewers
Description of the change
Fixes package separation issues from the migration script. The three packages now have correct dependencies with 1:1 version matching using
{{version}}interpolation:[pypi]extra for PyPI loading functionalitygriffelib=={{version}}griffelib=={{version}}andgriffecli=={{version}}, with[pypi]extra re-exportinggriffelib[pypi]=={{version}}Key fixes:
griffecliimports fromgriffelib/__init__.py(library must not depend on CLI)griffecli/__init__.py(main, check, dump, get_parser, DEFAULT_LOG_LEVEL){{version}}for version-locked dependencies[pypi]extra to re-exportgriffelib[pypi]=={{version}}Relevant resources
griffetogriffeandgriffelibpackages #408griffeandgriffelibpackages with uv workspaces #431, based on Prepare for 2.0 (finalize deprecations) #433💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.