Far-Beyond-Pulsar / Far-Beyond-Pulsar/Plugin_CodeEditor

Separate built-in embedding from dynamic plugin ABI exports

Open
#3 2 comments 0 reactions 1 assignee Claimed by @Tuafo View on GitHub
bug enhancement good first issue help wanted
Dominant language
Rust
Stars
1
Forks
1
PR merge metrics
No merged PRs in 30d

Description

## Problem

Pulsar statically embeds this crate as a built-in editor. The unconditional xport_plugin! invocation emits the generic _plugin_create, _plugin_version, and _plugin_init_globals loader symbols into the rlib. Workspace test binaries that embed multiple built-in plugins then fail to link because every plugin exports the same ABI names.

## Required change

- Add an explicit uiltin Cargo feature.
- Suppress the dynamic loader ABI exports when uiltin is enabled.
- Preserve the current standalone/default cdylib behavior.
- Validate both the default plugin build and a built-in rlib check.

This is an ownership fix: static built-ins must not export process-global dynamic-loader symbols.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.