Repository navigation
Conversation
There was a problem hiding this comment.
Pull request overview
This PR introduces automatic versioning using setuptools-scm to synchronize all package versions based on Git tags, eliminating the need for manual version management across multiple packages.
- Replaced hardcoded versions with dynamic versioning via
setuptools-scm - Removed manual version patching logic from CI/CD workflows
- Updated meta-package dependencies to remove pinned version constraints
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| pyproject.toml | Migrated from uv_build to setuptools and enabled dynamic versioning with setuptools-scm |
| packages/server/pyproject.toml | Added setuptools-scm dependency and configured root path for version detection |
| packages/meta/pyproject.toml | Removed pinned version constraints on client/server dependencies and enabled dynamic versioning |
| packages/client/pyproject.toml | Added setuptools-scm dependency and configured root path for version detection |
| .github/workflows/pypi-publish.yml | Removed patch-version parameter that is no longer needed |
| .github/workflows/build-python.yml | Removed version patching logic and added full Git history fetch for SCM versioning |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Met a random test failure in CI: FAILED tests/memmachine/semantic_memory/test_semantic_memory_background.py::test_multiple_sets_processed_independently[in_memory_semantic_storage-count_cache_episode_storage-sqlalchemy_sqlite_engine] - KeyError: 4 |
There was a problem hiding this comment.
@tianAndrew - Thank you for taking this on. Can we find a solution that doesn't require switching build tools from uv to setuptools?
77515f7 to
71473f1
Compare
|
@tianAndrew , is there any response to Steve's comments? |
|
@tianAndrew This is a great addition, thank you. During testing, I confirmed that the
PatchHere is the patch including my proposed changes. You should be able to add these to your branch (this PR) using: With the changes, the existing build methods work memmachine-compose.sh buildWe will build a production version when the user selects the latest tag. If they decline, we now show them the SCM version as the default option, but allow them to manually enter a tag string. build-docker-shValidation |
…866) * feat: Keep all components aligned on the same version at any commit. * fix: resolve SCM versioning and Docker tag compatibility --------- Co-authored-by: Steve Scargall <[email protected]>
…emMachine#866) * feat: Keep all components aligned on the same version at any commit. * fix: resolve SCM versioning and Docker tag compatibility --------- Co-authored-by: Steve Scargall <[email protected]>
Purpose of the change
Use setuptools-scm to automatically derive version numbers from Git tags.
Fixes/Closes
Fixes #830
Type of change
[Please delete options that are not relevant.]
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.
[Please delete options that are not relevant.]
Test Results: [Attach logs, screenshots, or relevant output]
Checklist
[Please delete options that are not relevant.]
Maintainer Checklist
Screenshots/Gifs
[If applicable, add screenshots or GIFs that show the changes in action. This is especially helpful for API responses. Otherwise, delete this section or type "N/A".]
Further comments
[Add any other relevant information here, such as potential side effects, future considerations, or any specific questions for the reviewer. Otherwise, type "None".]