vac:nim:ift:2025q4-nim-core-libs
Description
Maintain and extend the foundational Nim libraries required by IFT teams, delivering portable CPU integer primitives and improved CLI parsing utilities.
Task List
Create Standalone CPU Integer Library
- fully qualified name:
vac:nim:ift:2025q4-nim-core-libs:cpu-integer-library - owner: Constantine
- status: in progress (90%)
- start-date: 2025/11/15
- end-date: 2025/12/31
Description
- Extract low-level, hardware- and compiler-specific primitives from
stint/private/primitivesand turn them into a reusable, standalone library for CPU-sized integers. Model the design after Rust’s integer intrinsics,nim-stewPR #187, and Constantine’s arithmetic core, with clean abstractions, cross-platform support, and a minimal, well-documented API. The resulting library should serve as a foundational building block for bigint and cryptographic libraries like Stint and Constantine.
Deliverables
- vacp2p/nim-intops#7
- vacp2p/nim-intops#2
- Added 32-bit integer support and migrated tests to unittest2
- Repository bootstrap with overflow/saturating arithmetic and tests
- API docs for nim-intops
- CI workflows for tests and docs
Command line parsers
- fully qualified name:
vac:nim:ift:2025q4-nim-core-libs:command-line-parsers - owner: Esteban
- status: in progress (90%)
- start-date: 2025/11/15
- end-date: 2025/12/31
Description
Advance command-line parsing utilities (e.g. https://github.com/status-im/nim-confutils), covering new ergonomics and integration support for Nim projects.
Deliverables
- status-im/nim-confutils#132 Allow passing params to file decode
- status-im/nim-confutils#131 Include debug arg in help desc only if used
- status-im/nim-confutils#130 fix dispatch
- status-im/nim-confutils#126 add debug tag for command line option
- status-im/nim-confutils#129 documentation clean up
- status-im/nim-confutils#127 fix #90; print help/version correctly
- status-im/nim-confutils#128 fix #45; handle unsigned args
- Argument alignment in —help
- Nested cmd config file test
- Fix #39; show case option in —help
- Fix #40; Help output regression tests
- Fix #15; show argument in —help
- fix #29; subcommand —help shows global options #119