Implement dynamic version loading system

- Convert all hardcoded versions to dynamic loading from VERSION file
- Reduce version update locations from 50+ to just 3 files
- Add proper fallback handling for version reading
- Update all CLI commands to use dynamic __version__
- Streamline future version management process

This change makes version bumping much simpler - only need to update:
1. VERSION file
2. package.json
3. pyproject.toml
This commit is contained in:
NomenAK
2025-08-23 14:10:11 +02:00
parent 4831319a10
commit 9abaa10366
15 changed files with 57 additions and 30 deletions

View File

@@ -8,6 +8,7 @@ import shutil
from ..core.base import Component
from ..services.claude_md import CLAUDEMdService
from setup import __version__
class CoreComponent(Component):
"""Core SuperClaude framework files component"""
@@ -20,7 +21,7 @@ class CoreComponent(Component):
"""Get component metadata"""
return {
"name": "core",
"version": "4.0.7",
"version": __version__,
"description": "SuperClaude framework documentation and core files",
"category": "core"
}
@@ -29,7 +30,7 @@ class CoreComponent(Component):
"""Get metadata modifications for SuperClaude"""
return {
"framework": {
"version": "4.0.7",
"version": __version__,
"name": "SuperClaude",
"description": "AI-enhanced development framework for Claude Code",
"installation_type": "global",
@@ -37,7 +38,7 @@ class CoreComponent(Component):
},
"superclaude": {
"enabled": True,
"version": "4.0.7",
"version": __version__,
"profile": "default",
"auto_update": False
}
@@ -58,7 +59,7 @@ class CoreComponent(Component):
# Add component registration to metadata
self.settings_manager.add_component_registration("core", {
"version": "4.0.7",
"version": __version__,
"category": "core",
"files_count": len(self.component_files)
})