fix: review fixes + feat: imports, assertions, merge engine, per-package overrides
Review fixes (8 blocking issues):
- Extract ParseError to shared error.hpp (ODR fix)
- Remove dead package.cpp/package.hpp + tomlplusplus dep
- Safe parse_int() helper replacing crash-prone std::stoi
- consume_string() now accepts bare numbers and idents
- line_at() fixed for post-EOF line numbers
- Subcommand validation before file read in CLI
- KwService/KwAssert/KwImport added to consume_ident()
- root partition promoted to first-class BootBlock field
New features:
- Imports: imports = [...] with recursive merge resolution
- Assertions: assert { "msg" : field op value } in both parsers
- Merge engine: resolve_package() with features/config merge + force support
- Per-package overrides: /kappa/system/builds/<name>.kap
- .gitignore: added vcpkg_installed/ and kappa binary
This commit is contained in:
+1
-4
@@ -19,17 +19,14 @@ if(DEFINED ENV{VCPKG_ROOT})
|
||||
CACHE STRING "vcpkg toolchain")
|
||||
endif()
|
||||
|
||||
find_package(tomlplusplus CONFIG REQUIRED)
|
||||
|
||||
add_executable(kappa
|
||||
src/main.cpp
|
||||
src/package.cpp
|
||||
src/paths.cpp
|
||||
src/dsl/lexer.cpp
|
||||
src/dsl/parser.cpp
|
||||
src/dsl/system.cpp
|
||||
src/eval/vars.cpp
|
||||
src/cli/diagnostic.cpp
|
||||
src/config/merge.cpp
|
||||
)
|
||||
target_include_directories(kappa PRIVATE include)
|
||||
target_link_libraries(kappa PRIVATE tomlplusplus::tomlplusplus)
|
||||
|
||||
Reference in New Issue
Block a user