NativeScript / NativeScript/nativescript-cli

NativeScript CLI 7.0. and Angular Compiler requires different TypeScript versions

未关闭
#5,373 7 条评论 3 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
JavaScript
星标
1.1k
派生
204
平均合并
1 天 9 小时
30 天内合并 PR
8

描述

Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):

  • CLI: 7.0.6
  • Cross-platform modules: v7.0.0
  • Android Runtime: v7.0.0
  • iOS Runtime: v7.0.0
  • Plugin(s):

Describe the bug
While updating / migrating my project to v7 typescript will get set to version 3.9.7 to be complaint for v7.
This leads to an issue when starting the application.

splash34$ tns debug android
Searching for devices...
Copying template files...
+ @nativescript/android@7.0.0
updated 1 package and audited 1393 packages in 5.909s
⠇ found 1 high severity vulnerability
  run `npm audit fix` to fix them, or `npm audit` for details
Platform android successfully added. v7.0.0
Preparing project...
File change detected. Starting incremental webpack compilation...

webpack is watching the files…

Hash: 2082db08eadcf65243cc
Version: webpack 4.44.1
Time: 2766ms
Built at: 09/05/2020 10:39:28 PM
 4 assets
Entrypoint bundle = runtime.js vendor.js bundle.js
[../package.json] 1.84 KiB {bundle} [optional] [built]
[./app.scss] 61 KiB {bundle} [built]
[./main.ts] 1.13 KiB {bundle} [built]
    + 329 hidden modules

ERROR in The Angular Compiler requires TypeScript >=3.4.0 and <3.6.0 but 3.9.7 was found instead.

When now downgrading "typescript": "3.5.3", we will receive an error message that the application is not compatible anymore.

splash34$ tns debug android
The current application is not compatible with NativeScript CLI 7.0.

Run 'ns migrate' to migrate your project to NativeScript 7.

Alternatively you may try running it with '--force' to skip this check.

To Reproduce
Setup project with following dependencies:

"dependencies": {
    "@angular/animations": "10.1.0",
    "@angular/common": "10.1.0",
    "@angular/compiler": "10.1.0",
    "@angular/core": "10.1.0",
    "@angular/forms": "10.1.0",
    "@angular/http": "^7.2.16",
    "@angular/platform-browser": "10.1.0",
    "@angular/platform-browser-dynamic": "10.1.0",
    "@angular/router": "10.1.0",
    "@nativescript/angular": "10.1.0",
    "@nativescript/core": "7.0.0",
    "@nativescript/theme": "~2.3.0",
    "nativescript-background-http": "^4.2.1",
    "nativescript-camera": "^4.5.0",
    "nativescript-fancyalert": "^3.0.9",
    "nativescript-feedback": "^1.5.0",
    "nativescript-material-datetimepicker": "^1.0.9",
    "nativescript-modal-datetimepicker-fixed-color": "^1.1.10",
    "nativescript-theme-core": "~1.0.6",
    "nativescript-ui-listview": "^7.1.0",
    "nativescript-ui-sidedrawer": "^7.0.4",
    "node-blob": "0.0.2",
    "npm": "^6.14.8",
    "reflect-metadata": "~0.1.12",
    "rxjs": "^6.6.2",
    "swagger-angular-generator": "^4.2.2",
    "zone.js": "~0.9.1"
  },
  "devDependencies": {
    "@angular/compiler-cli": "^8.2.14",
    "@nativescript/android": "7.0.0",
    "@nativescript/ios": "7.0.0",
    "@nativescript/types": "~7.0.0",
    "@nativescript/webpack": "~3.0.0",
    "@ngtools/webpack": "~8.2.0",
    "codelyzer": "~4.5.0",
    "ng-swagger-gen": "^1.8.1",
    "node-sass": "^4.14.1",
    "prettier": "^1.19.1",
    "tslint": "~5.11.0",
    "typescript": "~3.9.7"
  }

Expected behavior
Start application after upgrade with emulators.

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 package.json 中的依赖版本开始,并使用 tns debug android 重现失败。检查 CLI 兼容性检查和 ns migrate 路径,以确定 NativeScript CLI 7.0.6 如何处理 Angular Compiler 和 TypeScript 的要求;当正确迁移的项目能够在没有版本冲突错误的情况下启动时,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
angular, javascript, typescript
领域
cli, mobile-dev
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
需要澄清
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。