Control `pathSuffix` option via configuration file(s)
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
- Bereich
- build-system, mobile-dev, tooling
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
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-pkgand the path of the addon within the package isbuild/Release/my-addon.node:
"omit": Only the package name is used and the library name will bemy-pkg."strip": Path gets stripped to its basename and the library name will bemy-pkg--my-addon."keep": The full path is kept and the library name will bemy-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
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus callstackincubator/react-native-node-api
-
Android 🤖
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
-
Sanity check of Hermes source directory via environment variable, when building Android projects OffenAndroid 🤖 good first issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
callstackincubator/react-native-node-api#163 · 1 Kommentar ·
-
enhancement good first issue gyp-to-cmake
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
callstackincubator/react-native-node-api#161 · 3 Kommentare · 1 Reaktion ·
-
enhancement Host 🏡
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
-
Automatable good first issue
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 15/100
callstackincubator/react-native-node-api#424 · 1 Kommentar ·
Alle Issues in callstackincubator/react-native-node-api
Ähnliche Issues
-
VerificationGate: ATTRIBUTION quote guard never matches a normal quotation (\b around the quote) Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
danielmiessler/LifeOS#2234 ·
-
T: Bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
-
Mend: dependency security vulnerability untriaged
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100