Skip to content

SET-1223: restructure into per-package uv projects - #768

Open
nevoodoo wants to merge 20 commits into
set-1223-pr1-toolchain-prepfrom
set-1223-pr2-restructure
Open

SET-1223: restructure into per-package uv projects#768
nevoodoo wants to merge 20 commits into
set-1223-pr1-toolchain-prepfrom
set-1223-pr2-restructure

Conversation

@nevoodoo

@nevoodoo nevoodoo commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Second half of SET-1223, stacked on #767.

Moves everything into packages/:

  • the published analysis-runner package (src layout, pyproject.toml, still setuptools)
  • the server
  • the web
  • metamist-consumer app.

Each is an independent uv project with its own lockfile and not a uv workspace, since they need conflicting dependencies. Version bumps now use uv version instead of bump2version.

The published package is unchanged (verified by comparing wheels built from main and from this branch), apart from _version.py which now reads the version from package metadata. It matches the 3.3.0 release, so merging publishes nothing.

A stub stays at analysis_runner/_version.py so old CLIs' update check keeps working; SET-1255 tracks removing it.

@nevoodoo nevoodoo changed the title SET-1223: restructure into packages/ with per-package uv projects SET-1223: restructure into per-package uv projects Aug 12, 2026
@nevoodoo
nevoodoo force-pushed the set-1223-pr2-restructure branch from f5c3089 to 2b1c062 Compare August 12, 2026 01:30
@nevoodoo
nevoodoo marked this pull request as ready for review August 16, 2026 05:57
@nevoodoo
nevoodoo requested a review from a team as a code owner August 16, 2026 05:57
@nevoodoo
nevoodoo requested a review from violetbrina August 16, 2026 05:57
@nevoodoo
nevoodoo requested a review from a team as a code owner August 16, 2026 05:57
@nevoodoo
nevoodoo force-pushed the set-1223-pr2-restructure branch from 2b1c062 to 8f7de7a Compare August 16, 2026 05:57
@nevoodoo
nevoodoo requested review from dancoates and removed request for violetbrina August 16, 2026 05:57

@dancoates dancoates left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just a few comments, mostly on the sort of comments that claude loves to leave in which call out implementation details that are part of the migration but not particularly interesting to the project long term and don't need to be included as a permanent comment.

Comment thread .github/workflows/sbom.yaml Outdated
@@ -0,0 +1,89 @@
name: SBOM Upload

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not against having this, but it belongs in a separate PR to this one

Comment thread packages/server/pyproject.toml Outdated
# The server image builds FROM the Hail driver image (see Dockerfile), which runs
# Python 3.11.
#
# NOTE: this is a deployed application, not a published package, so there is

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we need this note, I think it is pretty clear that a server doesn't need a build system

Comment thread pyproject.toml Outdated
[tool.pytest.ini_options]
testpaths = ["test"]
[tool.ruff.lint.per-file-ignores]
# Rules stabilised in ruff 0.16 that flag package files this migration must

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Comments shouldn't refer to a point in time action like a migration

Comment thread pyproject.toml Outdated
@@ -1,3 +1,27 @@
# Thin, non-package root project.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment duplicates info from the README, and is unncessary extra detail. This sort of monorepo structure is common and doesn't need to be called out like this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants