aws-cloudformation / aws-cloudformation/cloudformation-cli-typescript-plugin
bug: @ts-ignore causing issues when libchecking providers
- 主要言語
- TypeScript
- スター
- 46
- フォーク
- 18
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
i am unable to do libChecking on my providers as [this](https://github.com/aws-cloudformation/cloudformation-cli-typescript-plugin/commit/e656c332f3233a9c0ee82b4c84952baf9d75f100) commit adds `@ts-ignore` directives to the `interface Integer` [here](https://github.com/aws-cloudformation/cloudformation-cli-typescript-plugin/blob/c6741811d918954b2bead0aa844400d236537581/src/interface.ts#L69-L82).
for this is problematic as it causes the following issue when building my resources (below).
i think the suggestion in the commit message is that resources should disable "lib checking". I dont see this as a great solution as it applies to all libraries. As i use aws-sdkv3 in my resources (and additional components i build using smithy), i have more than once caught issues due to incompatibilities between transient dependencies.
reviewing the code i am also not able to understand _why_ the code was added to the interface. browsing through the issues and commit messages doesn't seem to provide answers to this question either.
any recommended path forward is greatly appreciated.
@kddejong, @ericzbeard
```
node_modules/@amazon-web-services-cloudformation/cloudformation-cli-typescript-lib/dist/interface.d.ts:30:11 - error TS2430: Interface 'Integer' incorrectly extends interface 'BigInt'.
Types of property '[Symbol.toStringTag]' are incompatible.
Type '"Integer"' is not assignable to type '"BigInt"'.
30 interface Integer extends BigInt {
~~~~~~~
node_modules/@amazon-web-services-cloudformation/cloudformation-cli-typescript-lib/dist/interface.d.ts:35:11 - error TS2430: Interface 'IntegerConstructor' incorrectly extends interface 'BigIntConstructor'.
Types of property 'prototype' are incompatible.
Type 'Integer' is not assignable to type 'BigInt'.
35 interface IntegerConstructor extends BigIntConstructor {
````
コントリビューションガイド
調査の方向性
src/interface.ts、特に69-82行目から始め、生成された node_modules/@amazon-web-services-cloudformation/cloudformation-cli-typescript-lib/dist/interface.d.ts と比較します。報告された TypeScript の lib-check/build 失敗を再現し、Integer と IntegerConstructor の宣言が追加された理由を追跡します。報告された TS2430 エラーなしで provider が lib-check を実行できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- node.js, typescript
- 領域
- build-system, tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 32/100