Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Control `pathSuffix` option via configuration file(s)

Offen
#153 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
babel, node.js, react-native, typescript

Rechercherichtung

Es werden keine Quelldateien oder Tests genannt. Beginne damit nachzuverfolgen, wie pathSuffix an das Babel-Plugin und die CLI des Host-Pakets übergeben wird, einschließlich NODE_API_PATH_SUFFIX während pod install oder des Gradle-Builds, und prüfe dabei die möglichen Auswirkungen von pull request 104. Als erledigt gilt die Aufgabe, wenn eine app-weite oder bibliotheksbezogene Konfiguration die Option konsistent steuert, ohne separate Laufzeiteinstellungen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

enhancement Host 🏡 Linking 🔗 question

We're performing a transformation of the Node-API addon dynamic library paths on disk to their dynamic library names as they're linked into the host package.

Here's the documentation for the pathSuffix option of the NamingStrategy:

Controls how the path of the addon inside a package is transformed into a library name.
The transformation is needed to disambiguate and avoid conflicts between addons with the same name (but in different sub-paths or packages).

As an example, if the package name is my-pkg and the path of the addon within the package is build/Release/my-addon.node:

  • "omit": Only the package name is used and the library name will be my-pkg.
  • "strip": Path gets stripped to its basename and the library name will be my-pkg--my-addon.
  • "keep": The full path is kept and the library name will be my-pkg--build-Release-my-addon.

In the current state, this pathSuffix option is passed to the babel plugin as well as to the host package's CLI (either through a CLI runtime option or more likely the NODE_API_PATH_SUFFIX environment variable while running pod install or the Gradle build) and they need to match for the app to find the dynamic library files at runtime.

It would be more flexible and less brittle if ☝ was instead determined by

  • a single app-wide configuration setting, either in configuration file (or a key in the App's package.json) and / or
  • by individual per-library configuration files (or a key in their package.json files)

[!NOTE]
This will likely all change once https://github.com/callstackincubator/react-native-node-api/pull/104 merge.

Vorherrschende Sprache
TypeScript
Sterne
188
Forks
10
Ø Merge
2 T. 17 Std.
Gemergte PRs (30 T.)
3

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus callstackincubator/react-native-node-api

Alle Issues in callstackincubator/react-native-node-api

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.