[Rosetta-2] Reference refresh for core, loaders, ports, serials, detours

Open
#866 1 comment 1 reaction 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Active
Tech stack
c, cmake

Research direction

Start by mapping sections 4.3 and 5.1.2 to the current source/ tree and CMake, then read loader_impl_interface and docs/diagrams/threading-model-nodejs-python.drawio. Use the named metacall_*_test tests to verify loader documentation and check each example link and code snippet. Done means all listed areas are filled, wired loaders and ports link to flags, tests, and source directories, and no empty headings remain without an owner and issue link.

Written by the indexing model from the issue text.

Description

documentation
Goal

Fill gaps. Sync prose with headers and CMake.

Tasks
  • Fill section 6 C API with minimal init, load, call, destroy flow plus handle lifecycle.
  • Fill loader pages: interface from loader_impl_interface, lifecycle initialize, execution_path, load_from_file, load_from_memory, load_from_package, discover, clear, destroy.
  • Document each wired loader in one page: tag, runtime, CMake flag OPTION_BUILD_LOADERS_*, test name metacall_*_test, limits.
  • Document each wired port in one page: host use, init and destroy, load and call helpers, value mapping, import hook if any.
  • Fill serials: metacall_serial plus rapid_json_serial. Fill detours: plthook_detour and fork safety.
  • Fill memory layout, serialization, threading, fork model. Reuse docs/diagrams/threading-model-nodejs-python.drawio.
  • Update module list in 5.1.2 to match source/ tree. Remove dead entries.
  • Keep examples list current. Verify each link in 4.3.
Acceptance
  • No empty headings without owner and issue link.
  • Each loader and port page links to CMake flag, test, and source dir.
  • Code snippets build or run where claimed.
Dominant language
C
Stars
1.8k
Forks
266
Avg merge
2d 16h
Merged PRs (30d)
14

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from metacall/core

All issues in metacall/core

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.