Skip to content

binding-tier-1: Nim binding standup (replicate from Chapel pilot) #131

@hyperpolymath

Description

@hyperpolymath

Parent: #129.

Scope

Apply the detachable-harness template from
docs/adr/0001-binding-ci-template.adoc to bindings/nim/.

Detachability contract for the Nim binding

  • bindings/nim/ — sources, tests, scripts, symbol-manifest.txt,
    README, proven.nimble, Justfile
  • bindings/c/include/proven.h — vendored on extraction
  • .github/workflows/nim-ci.yml — workflow + sparse-checkout

Root Justfile gains nim-{check,build,test,clean} one-line
forwarders. The binding harness uses Nim's native FFI via
importc / {.dynlib.}; PROVEN_LIB_PATH resolves to the
libproven.so directory at compile time via a small Nim helper.

Replication

Search/replace tokens per ADR-0001:

  • chapelnim, ChapelNim
  • *.chpl*.nim
  • Mason.tomlproven.nimble
  • chpl --versionnim --version
  • Chapel chpl --library → Nim nim check (typecheck) + nim c (build)

WIRED subset starts at the proven#88 quintet
(proven_path_has_traversal, proven_header_has_crlf,
proven_free_string, proven_version, proven_build_info).

Land in a single PR titled feat(nim-binding): stand up detachable CI + tests — binding-tier-1.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions