lean4-htt/.claude
Kim Morrison f3752861c9
fix: validate stage0 version matches release version (#12700)
This PR fixes a CMake scoping bug that made `-DLEAN_VERSION_*` overrides
ineffective.

The version variables (`LEAN_VERSION_MAJOR`, `MINOR`, `PATCH`,
`IS_RELEASE`) were declared with plain `set()`, which creates normal
variables that shadow cache variables set by `-D` on the command line.
The fix changes them to `CACHE STRING ""` to match the existing
`LEAN_SPECIAL_VERSION_DESC` pattern.

However, `CACHE STRING ""` alone isn't sufficient because `project(LEAN
CXX C)` implicitly creates empty `LEAN_VERSION_{MAJOR,MINOR,PATCH}`
normal variables (CMake sets `<PROJECT>_VERSION_*` for the project
name). These shadow the cache values, so we `unset()` them after the
cache declarations to let `${VAR}` fall through to the cache.

Closes https://github.com/leanprover/lean4/issues/12681

🤖 Prepared with Claude Code

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 01:31:29 +00:00
..
commands doc: add guidance on waiting for CI/merges in release command (#12755) 2026-03-02 02:49:34 +00:00
skills chore: fix profiler shebang and add profiling skill (#12519) 2026-03-01 07:09:33 +00:00
CLAUDE.md fix: validate stage0 version matches release version (#12700) 2026-03-04 01:31:29 +00:00
settings.json chore: enable leanprover/skills plugin for Claude Code (#12609) 2026-02-20 12:35:32 +00:00