This issue tracks parity gaps between the current Boa-facing boa_gc API surface and the active oscars mark-sweep APIs.
Context:
#38 documents the boa_gc surface currently used by Boa.
#26 tracks integration into Boa.
#28 tracks the staged integration path.
#60 drafted the parity analysis in docs form; per maintainer feedback, this issue replaces that notes-file approach so we can track concrete follow-up tasks here.
The goal here is not to restate the entire API surface. The goal is to identify the gaps that matter for staged Boa integration and split them into reviewable follow-up work.
Main parity gaps
1. Allocation / collector context model
2. Gc<T> API parity
3. Weak API parity
4. Runtime utility parity
5. Macro / tracing helper parity
Notes
- This issue is intentionally focused on API parity and adoption shape, not allocator redesign.
- Active allocator / layout work should continue under their existing PRs and issues.
- Follow-up work from here should prefer small, focused PRs that close one parity gap at a time.
Candidate follow-up issues
Potential follow-up issues from this tracker include:
- add
Gc::new_cyclic parity helper
- add raw-pointer roundtrip helpers for
Gc<T>
- add weak upgrade parity for
WeakGc<T>
- add runtime utility parity for integration/test support
This issue tracks parity gaps between the current Boa-facing
boa_gcAPI surface and the activeoscarsmark-sweep APIs.Context:
#38documents theboa_gcsurface currently used by Boa.#26tracks integration into Boa.#28tracks the staged integration path.#60drafted the parity analysis in docs form; per maintainer feedback, this issue replaces that notes-file approach so we can track concrete follow-up tasks here.The goal here is not to restate the entire API surface. The goal is to identify the gaps that matter for staged Boa integration and split them into reviewable follow-up work.
Main parity gaps
1. Allocation / collector context model
Gc::new(value))Gc::new_in(value, collector))2.
Gc<T>API parityGc::ptr_eqparity helper (#62)Gc::new_cyclicGc::into_rawGc::from_rawGc::downcastGc::cast_uncheckedGc::cast_ref_unchecked3. Weak API parity
WeakGc::new/ constructor shape parityWeakGc::upgradeparityWeakMapconstructor / insertion shape parity where needed for Boa-facing integration4. Runtime utility parity
force_collect()finalizer_safe()5. Macro / tracing helper parity
unsafe_empty_trace!Notes
Candidate follow-up issues
Potential follow-up issues from this tracker include:
Gc::new_cyclicparity helperGc<T>WeakGc<T>