The SnakeBridge compiler now checks whether bindings are already up to
date before running the full generation pipeline. This avoids redundant
work when the manifest, lock file, and generated modules all exist and
match the current configuration.
Up-to-date checks verify:
- Manifest presence in the metadata directory
- Lock file version and generator hash consistency
- Generated wrapper files for all configured libraries
- Helper modules when graceful serialization is enabled
- Registry file in the expected priv location
The compile-time "preparing bindings" banner and compile hint are now
suppressed by default. Enable verbose output by setting the environment
variable SNAKEBRIDGE_COMPILE_HINT=1 or configuring compile_hint: true
in application config.
Example project updates:
- All examples now set auto_install_python_deps: true in their Snakepit
configuration. This prevents missing gRPC and protobuf import errors
when running stdlib-only demos without an existing venv.
Internal changes:
- Extracted prerequisite checks into focused helper functions
- Added library version normalization for lock comparison
- Reused existing Lock and Manifest modules for state verification
- Scanner module is now configurable for testing purposes