Skip to content

fix: track LoopStructural version in pyproject.toml instead of version.py - #312

Merged
lachlangrose merged 1 commit into
masterfrom
fixing-version-ci
Aug 14, 2026
Merged

fix: track LoopStructural version in pyproject.toml instead of version.py#312
lachlangrose merged 1 commit into
masterfrom
fixing-version-ci

Conversation

@lachlangrose

Copy link
Copy Markdown
Member

Summary

  • Removes LoopStructural/version.py; [project].version in pyproject.toml is now the single source of truth, and __version__ is read at runtime via importlib.metadata.
  • Fixes a latent release-please misconfiguration: the LoopStructural component's tracked path was LoopStructural (a subdirectory), so release-please could never actually reach the real pyproject.toml/setup.py at repo root — it only ever bumped version.py via a filename search. The component path is now ., with an explicit component: "LoopStructural" so the existing LoopStructural--release_created workflow output still resolves.
  • Merges LoopStructural/CHANGELOG.md (the one release-please was actually maintaining) into the root CHANGELOG.md, which had gone stale since 1.6.4. Root CHANGELOG.md is now the single changelog release-please will update going forward.

Test plan

  • python -c "import LoopStructural; print(LoopStructural.__version__)" prints 1.7.0
  • pyproject.toml parses and [project].version reads 1.7.0
  • Confirm the next release-please run on master produces a PR that bumps pyproject.toml's version and appends to root CHANGELOG.md

🤖 Generated with Claude Code

…n.py

Removes the dynamic version.py indirection in favor of a static
[project].version field in pyproject.toml, with __version__ now read
via importlib.metadata at runtime.

release-please's LoopStructural component previously tracked path
"LoopStructural", a subdirectory it could never actually update
pyproject.toml/setup.py from (they live at repo root) -- it only ever
bumped the now-removed version.py via a filename search. The component
path is repointed to "." so release-please can update pyproject.toml
directly, and the changelog (previously split between the stale root
CHANGELOG.md and the actually-maintained LoopStructural/CHANGELOG.md)
is merged into the root file, which is now the single source of truth.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@lachlangrose
lachlangrose merged commit 449f38d into master Aug 14, 2026
5 of 6 checks passed
@lachlangrose
lachlangrose deleted the fixing-version-ci branch August 14, 2026 06:46
lachlangrose added a commit that referenced this pull request Aug 14, 2026
Not imported anywhere -- loop_interpolation's real version already
lives statically in its own pyproject.toml. Left over from before
that package had its own static version, it's also collateral damage
from repointing the LoopStructural component's path to "." (#312):
release-please's generic version.py filename search, previously scoped
to the old LoopStructural/ subdirectory, now scans the whole repo and
was pulling this unrelated file into LoopStructural's release PR.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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.

1 participant