ci(repo): scope per-package tox tests to single workspace member (#578) Previously the per-package test matrix installed the full workspace via uv sync --all-extras --all-groups, which masked missing-dep regressions in individual package pyprojects (a wheel of grz-cli built from current source would fail to import because grz-common referenced grz_db without declaring it). Drive uv sync through a single workspace member via tox-uv’s uv_sync_flags and a GRZ_TOX_PACKAGE env var so each package’s tests run against only its declared deps. The transitive-import regression that this guard surfaced is fixed in the same PR, alongside several follow-up cleanups. fix(grz-common,grz-db,grzctl): move populate logic into SubmissionDb feat(grz-db,grz-common): clean up SubmissionDb.populate API surface refactor(grz-db,grz-common,grzctl): extract shared metadata + redaction helpers fix(grzctl): correct stale grz-cli hint in submission-not-found errors fix(grz-pydantic-models,grz-db): align inconsistent version pins
ci(repo): scope per-package tox tests to single workspace member (#578)
Previously the per-package test matrix installed the full workspace via uv sync --all-extras --all-groups, which masked missing-dep regressions in individual package pyprojects (a wheel of grz-cli built from current source would fail to import because grz-common referenced grz_db without declaring it). Drive uv sync through a single workspace member via tox-uv’s uv_sync_flags and a GRZ_TOX_PACKAGE env var so each package’s tests run against only its declared deps. The transitive-import regression that this guard surfaced is fixed in the same PR, alongside several follow-up cleanups.
uv sync --all-extras --all-groups
grz-cli
grz-common
grz_db
uv sync
uv_sync_flags
GRZ_TOX_PACKAGE
fix(grz-common,grz-db,grzctl): move populate logic into SubmissionDb
feat(grz-db,grz-common): clean up SubmissionDb.populate API surface
refactor(grz-db,grz-common,grzctl): extract shared metadata + redaction helpers
fix(grzctl): correct stale grz-cli hint in submission-not-found errors
fix(grz-pydantic-models,grz-db): align inconsistent version pins
This monorepo hosts the following packages:
grz-pydantic-models
grzctl
grz-tools
grz-db
The grz-cli package is the primary CLI for submissions to the GRZs. It provides functionality for:
For detailed installation and usage instructions, please refer to the grz-cli README.
See CONTRIBUTING.md for instructions on setting up a development environment.
Previous grz-cli repository content is still available in the archive/pre-monorepo branch.
archive/pre-monorepo
用于管理和操作Graviti数据集的命令行工具
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
GRZ Tools Monorepo
This monorepo hosts the following packages:
grz-cli- A command-line tool for validating, encrypting and uploading submissions to a GRZ.grz-pydantic-models- Pydantic models for schemas related to the genomDE Model Project.grzctl- GRZ internal tooling.grz-common- Common code shared between packages ingrz-tools.grz-db- Libraries, SQL models and alembic migrations for the GRZ internal submission DB.grz-cli
The
grz-clipackage is the primary CLI for submissions to the GRZs. It provides functionality for:For detailed installation and usage instructions, please refer to the grz-cli README.
Development setup
See CONTRIBUTING.md for instructions on setting up a development environment.
Legacy Information
Previous grz-cli repository content is still available in the
archive/pre-monorepobranch.