Skip to content

Change tslint.json 'extends' property#57489

Merged
sandersn merged 1 commit intomasterfrom
change-tslint-extends
Dec 2, 2021
Merged

Change tslint.json 'extends' property#57489
sandersn merged 1 commit intomasterfrom
change-tslint-extends

Conversation

@sandersn
Copy link
Contributor

@sandersn sandersn commented Dec 1, 2021

From dtslint/dt.json to @definitelytyped/dtslint/dt.json #no-publishing-comment

From dtslint/dt.json to @definitelytyped/dtslint/dt.json #no-publishing-comment
@sandersn sandersn merged commit 9d35fe5 into master Dec 2, 2021
@sandersn sandersn deleted the change-tslint-extends branch December 2, 2021 00:24
peterblazejewicz added a commit to peterblazejewicz/dts-gen that referenced this pull request Jan 13, 2022
On DT all definitions have been mass migrated to use
'"@definitelytyped/dtslint/dt.json"' as a value. But this is not a case
for newly created DT definitions when using recommended in README
`dts-gen ....` command.

Thanks!

See: DefinitelyTyped/DefinitelyTyped#57489
glasser added a commit to glasser/DefinitelyTyped that referenced this pull request Feb 9, 2022
typescript-bot pushed a commit that referenced this pull request Feb 14, 2022
… allow `agent: false` by @glasser

* Revert "🤖 Merge PR #55533 Remove node-fetch - not needed as of 3.0.0 by @ImRodry"

This reverts commit 4d9b113.

node-fetch@3 makes two major changes: they started shipping TS types
with the package, and they switched it to being an ESM-only module. The
latter means that apps which aren't built in a way that supports ESM (or
other npm modules depending on `node-fetch` which don't want to break
their non-ESM users) need to continue using v2. In fact, the README for
`node-fetch` explicitly states

> If you cannot switch to ESM, please use v2 which remains compatible
> with CommonJS. Critical bug fixes will continue to be published for
> v2.

Stats on npmjs.com show that v2 has 43 times more downloads in the past
7 days than v3.

I applaud node-fetch's forward-thinking approach to ESM, and am not here
to tell them that their choice for v3 is wrong. But practically speaking,
v2 is still heavily used and many projects will not be able to upgrade
to v3 without breaking their own backwards compatibility promises.
So it makes sense to continue to maintain v2-specific node-fetch types
(especially as there are specific issues with the published types,
as the next commit in this PR shows).

* Update tslint.json for change from #57489

* node-fetch: update version to 2.6

v2.6 is the current (and presumably final) minor release of v2.
Apparently these types already included at least one v2.6 feature
(`agent` as a function). So, updating the version as suggested at-rule
#55533 (comment)

* node-fetch: `agent` can be a boolean

The `agent` option is (after checking to see if it's a function, and if
so replacing itself with the return value of calling it) passed directly
to `http.request` (or `https.request`) so we should be able to pass any
type supported there. Notably, `agent: false` is distinct from `agent:
undefined`.

A PR making essentially the same change was merged upstream (the
upstream repo maintains their own types for v3 but not for v2):
node-fetch/node-fetch#1502

* Update types/node-fetch/tsconfig.json

Co-authored-by: Nicolas Rodriguez <programnicolas@gmail.com>

* Update types/node-fetch/index.d.ts

Co-authored-by: Niklas Lindgren <nikc@iki.fi>

* Update types/node-fetch/package.json

Co-authored-by: Piotr Błażejewicz (Peter Blazejewicz) <peterblazejewicz@users.noreply.github.com>

Co-authored-by: Nicolas Rodriguez <programnicolas@gmail.com>
Co-authored-by: Niklas Lindgren <nikc@iki.fi>
Co-authored-by: Piotr Błażejewicz (Peter Blazejewicz) <peterblazejewicz@users.noreply.github.com>
martin-badin pushed a commit to martin-badin/DefinitelyTyped that referenced this pull request Feb 23, 2022
…update version, allow `agent: false` by @glasser

* Revert "🤖 Merge PR DefinitelyTyped#55533 Remove node-fetch - not needed as of 3.0.0 by @ImRodry"

This reverts commit 4d9b113.

node-fetch@3 makes two major changes: they started shipping TS types
with the package, and they switched it to being an ESM-only module. The
latter means that apps which aren't built in a way that supports ESM (or
other npm modules depending on `node-fetch` which don't want to break
their non-ESM users) need to continue using v2. In fact, the README for
`node-fetch` explicitly states

> If you cannot switch to ESM, please use v2 which remains compatible
> with CommonJS. Critical bug fixes will continue to be published for
> v2.

Stats on npmjs.com show that v2 has 43 times more downloads in the past
7 days than v3.

I applaud node-fetch's forward-thinking approach to ESM, and am not here
to tell them that their choice for v3 is wrong. But practically speaking,
v2 is still heavily used and many projects will not be able to upgrade
to v3 without breaking their own backwards compatibility promises.
So it makes sense to continue to maintain v2-specific node-fetch types
(especially as there are specific issues with the published types,
as the next commit in this PR shows).

* Update tslint.json for change from DefinitelyTyped#57489

* node-fetch: update version to 2.6

v2.6 is the current (and presumably final) minor release of v2.
Apparently these types already included at least one v2.6 feature
(`agent` as a function). So, updating the version as suggested at-rule
DefinitelyTyped#55533 (comment)

* node-fetch: `agent` can be a boolean

The `agent` option is (after checking to see if it's a function, and if
so replacing itself with the return value of calling it) passed directly
to `http.request` (or `https.request`) so we should be able to pass any
type supported there. Notably, `agent: false` is distinct from `agent:
undefined`.

A PR making essentially the same change was merged upstream (the
upstream repo maintains their own types for v3 but not for v2):
node-fetch/node-fetch#1502

* Update types/node-fetch/tsconfig.json

Co-authored-by: Nicolas Rodriguez <programnicolas@gmail.com>

* Update types/node-fetch/index.d.ts

Co-authored-by: Niklas Lindgren <nikc@iki.fi>

* Update types/node-fetch/package.json

Co-authored-by: Piotr Błażejewicz (Peter Blazejewicz) <peterblazejewicz@users.noreply.github.com>

Co-authored-by: Nicolas Rodriguez <programnicolas@gmail.com>
Co-authored-by: Niklas Lindgren <nikc@iki.fi>
Co-authored-by: Piotr Błażejewicz (Peter Blazejewicz) <peterblazejewicz@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant