NativeScript / NativeScript/nativescript-cli

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

Aberta
#2,638 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

bug os: android
Linguagem predominante
JavaScript
Estrelas
1.1k
Forks
204
Merge médio
1d 9h
PRs com merge (30d)
8

Descrição

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

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece por lib/services/android-project-service.ts, por volta da linha 377, e reproduza as etapas listadas de build do Android e remoção do plugin. Inspecione platforms/android/configurations antes e depois de remover tns-core-modules; está concluído quando a remoção aciona o platform clean, de modo que os artefatos das dependências nativas não sejam mais mantidos.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
android, javascript
Domínio
build-system, cli, mobile
Tipo de issue
Bug
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
48/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.