ift-ts:nim:ift:2026q3-nim-core-libs
Description
Maintain and extend the foundational Nim libraries required by IFT teams.
Task List
NAT traversal and nim-libplum
- fully qualified name:
ift-ts:nim:ift:2026q3-nim-core-libs:nat-traversal-nim-libplum - owner: Constantine
- status: done
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
- Continue the NAT traversal work through
nim-libplum, using libplum as the preferred path for PCP, NAT-PMP, and UPnP support. - Avoid expanding
nim-nat-traversaldirectly unless the libplum approach proves unsuitable. - Decide whether consumers should migrate directly to nim-libplum or whether a compatibility layer / nat-traversal API emulation is worth implementing.
Deliverables
- logos-storage/nim-libplum#15 feat: protocol filter
- logos-storage/nim-libplum#16 chore: release 0.6.0
- logos-storage/nim-libplum#14 chore: point libplum submodule to upstream paullouisageneau master (v0.6.0)
- logos-storage/nim-libplum#10 Use Nim Docker image
- logos-storage/nim-libplum#11 Remove cmake
Protobuf Serialization Docs
- fully qualified name:
ift-ts:nim:ift:2026q3-nim-core-libs:protobuf-serialization-docs - owner: Constantine
- status: in progress (25%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
- Improve documentation for Protobuf Serialization.
- Cover usage guidance, examples, and integration notes needed by downstream teams.
Deliverables
- status-im/nim-protobuf-serialization#83 Add docs about serializing with type extensions
Thread Pool Library
- fully qualified name:
ift-ts:nim:ift:2026q3-nim-core-libs:thread-pool-library - owner: Esteban
- status: in progress (75%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
- Continue improving
nim-taskpoolswith fixes and missing functionality. - Port the remaining relevant taskpool features from
mratsim/constantineintonim-taskpools. - Keep the ported functionality covered by tests and suitable for downstream consumers.
Deliverables
- status-im/nim-taskpools#58 Set worker current task
- status-im/nim-taskpools#56 Reduce allocs: make TaskNode intrusive to the Flowvar
- status-im/nim-taskpools#54 Fixes #5; Event notifier is a bottleneck for very small tasks
- status-im/nim-taskpools#51 Fix #6; Support tasks submitted from a thread that is not managed by the threadpool
- status-im/nim-taskpools#55 Test suite based on benchs
- status-im/nim-taskpools#52 Fix TSan detected data races
Nim Web3 Error Handling and Issue Triage
- fully qualified name:
ift-ts:nim:ift:2026q3-nim-core-libs:nim-web3 - owner: Constantine
- status: in progress (10%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
- Review and improve
nim-web3error handling now thatnim-json-rpcchecked-raises work is mostly done. - Start with status-im/nim-web3#257 and clean up outdated or noisy exception handling where relevant.
- Review the open
nim-web3issue backlog and close or update stale items where possible.
Deliverables
- PRs/Issues/Docs/Reports
Maintenance
- fully qualified name:
ift-ts:nim:ift:2026q3-nim-core-libs:maintenance - owner: Constantine
- status: in progress (50%)
- start-date: 2026/07/01
- end-date: 2026/09/30
Description
- Ongoing maintenance and fixes across Nim core libraries.
Deliverables
- Nim track-based find-references and go-to-definition announcement
- status-im/nim-stint#175 Replace for-loops with staticFor for StInt of size 4096 and lower
- nim-lang/nimble#1781
nimble dump: nimDir is empty a special version of Nim is required - nim-lang/langserver#425 Fix SIGSEGV in writeOutput when writing after stdio teardown
- nim-lang/langserver#426 Prevent CancelledError escaping addProjectFileToPendingRequest killing the server
- nim-lang/langserver#427 Fix KeyError in removeIdleNimsuggests aborting idle project cleanup
- nim-lang/langserver#429 Make markFailed idempotent so one nimsuggest crash restarts once
- nim-lang/langserver#430 Reset failTable count when a nimsuggest starts successfully
- status-im/nim-json-rpc#286 CI: test with ASan
- status-im/nim-json-rpc#281 Fix #280; Result of method returning
voidfails to parse - status-im/nim-chronos#688 Fix error in
newafter replacing getAddress with getHttpAddress - status-im/nim-json-rpc#283 Restrict proxy server raises to
JsonRpcError - status-im/nim-json-rpc#282 Restrict client raises to
JsonRpcError - status-im/nim-json-rpc#279 Support notification in rpc context for non-async method
- status-im/nim-json-rpc#263 Documentation book