fix: resolve version detection and prepare v0.10.0 release

**Critical Fixes for v0.10.0 Release**:

1. **Fixed setuptools-scm Configuration** (pyproject.toml):
   - Added git_describe_command with --match 'v*' pattern
   - Prevents setuptools-scm from parsing non-version tags
   - Resolves "markitect --version" returning "unknown"
   - Version detection now works correctly (0.9.1.dev76)

2. **Retroactively Created v0.9.0 Git Tag**:
   - Tagged commit b9c1b90 from 2025-11-14
   - Maintains version history integrity
   - CHANGELOG documented v0.9.0 but tag was missing
   - Enables proper version progression to v0.10.0

3. **Prepared CHANGELOG.md for v0.10.0 Release**:
   - Created [0.10.0] - 2026-01-06 section
   - Moved all Unreleased content to v0.10.0
   - Documented version detection fixes
   - Documented v0.9.0 retroactive tag creation

**Issue Identified**: Non-version git tags (e.g.,
"testdrive-jsui-migration-phase4-complete") were causing
setuptools-scm to crash with AssertionError.

**Solution**: Configure git describe to only match version tags
using --match 'v*' pattern, filtering out non-version tags.

**Result**: Version command now works correctly, showing
development version based on v0.9.0 + 76 commits.

**Next Step**: Ready to proceed with Stage 2 (CHANGELOG schema)
per release-management-optimization workplan.
This commit is contained in:
2026-01-06 13:22:45 +01:00
parent 4e9117ddcb
commit 061ba88206
2 changed files with 12 additions and 0 deletions

View File

@@ -10,6 +10,8 @@ See history/YYMMDD-ROADMAOTOPIC/ directories for planning information of closed
## [Unreleased]
## [0.10.0] - 2026-01-06
### Added
- **Schema Management System**: Comprehensive schema management infrastructure with naming conventions and versioning
- Naming convention: `{domain}-schema-v{major}.{minor}.md` for all schemas
@@ -60,6 +62,13 @@ See history/YYMMDD-ROADMAOTOPIC/ directories for planning information of closed
- Updated all file references and paths to point to single source of truth in capabilities/testdrive-jsui/js/controls/ directory
### Fixed
- **Version Detection Issue**: Fixed `markitect --version` returning "unknown" instead of actual version
- Added `git_describe_command` to setuptools-scm configuration to filter version tags correctly
- Configured git describe to use `--match 'v*'` pattern to ignore non-version tags
- Version detection now works correctly with development versions (e.g., 0.9.1.dev76)
- **Missing v0.9.0 Git Tag**: Retroactively created v0.9.0 annotated tag on commit b9c1b90 from 2025-11-14
- Maintains version history integrity (CHANGELOG documented v0.9.0 but tag was missing)
- Enables proper version progression to v0.10.0
- Duplicate file structure issue by eliminating duplicate control files and consolidating to capabilities/ directory
- Contents panel scrollbar behavior - moved overflow-y: auto to correct container level so scrollbar only spans content area when panel reaches max-height

View File

@@ -121,3 +121,6 @@ ignore_missing_imports = true
[tool.setuptools_scm]
write_to = "markitect/_version.py"
version_scheme = "python-simplified-semver"
local_scheme = "no-local-version"
git_describe_command = "git describe --tags --long --match 'v*'"