NativeScript / NativeScript/nativescript-cli

Removing plugin which has dependencies with native code won't clean the platform

Offen
#2,638 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug os: android
Vorherrschende Sprache
JavaScript
Sterne
1.1k
Forks
204
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
8

Beschreibung

Problem:

Installing a plugin, which depends on other plugins with native dependencies will not trigger a platform clean (especially necessary when building for android) when removed.
Suppose we have tns-core-modules, which is purely javascript. It depends on tns-core-modules-widgets which comprises of native android and iOS plugins.
tns-core-modules
'--tns-core-modules-widgets

Versions:
CLI: 2.5
Android runtime: 2.5/3.0
modules: any version
Steps to reproduce:

tns create myTestApp
cd myTestApp
tns build android <- at this point tns-core-modules are added as a dependency
The build process will generate build artifacts with the specific version of its native dependencies (tns-core-modules-widgets) This can be verified by finding tns-core-modules-widgets inside the 'platforms/android/configurations' dir.
tns plugin remove tns-core-modules <- will not trigger gradle clean - https://github.com/NativeScript/nativescript-cli/blob/master/lib/services/android-project-service.ts#L377

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit lib/services/android-project-service.ts etwa bei Zeile 377 und reproduziere die aufgeführten Schritte zum Android-Build und zur Entfernung des Plugins. Untersuche platforms/android/configurations vor und nach der Entfernung von tns-core-modules; abgeschlossen ist es, wenn die Entfernung den platform clean auslöst, sodass Artefakte nativer Abhängigkeiten nicht länger beibehalten werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, javascript
Bereich
build-system, cli, mobile
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

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