diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 881b4cb69..263334cb4 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -12,10 +12,10 @@ jobs: name: release runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2 + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 with: - node-version: 16 + node-version: "lts/*" - run: npx semantic-release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/@types/index.d.ts b/@types/index.d.ts index f68dd28e2..274ca03a8 100644 --- a/@types/index.d.ts +++ b/@types/index.d.ts @@ -147,7 +147,7 @@ export type RequestRedirect = 'error' | 'follow' | 'manual'; export type ReferrerPolicy = '' | 'no-referrer' | 'no-referrer-when-downgrade' | 'same-origin' | 'origin' | 'strict-origin' | 'origin-when-cross-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url'; export type RequestInfo = string | Request; export class Request extends BodyMixin { - constructor(input: RequestInfo, init?: RequestInit); + constructor(input: URL | RequestInfo, init?: RequestInit); /** * Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the "Host" header. @@ -216,4 +216,4 @@ export class AbortError extends Error { } export function isRedirect(code: number): boolean; -export default function fetch(url: RequestInfo, init?: RequestInit): Promise; +export default function fetch(url: URL | RequestInfo, init?: RequestInit): Promise; diff --git a/@types/index.test-d.ts b/@types/index.test-d.ts index 3272a0e7c..d5b8b4004 100644 --- a/@types/index.test-d.ts +++ b/@types/index.test-d.ts @@ -7,6 +7,7 @@ import * as _fetch from '.'; async function run() { const getResponse = await fetch('https://bigfile.com/test.zip'); + await fetch(new URL('https://bigfile.com/test.zip')); expectType(getResponse.ok); expectType(getResponse.size); expectType(getResponse.status); @@ -36,6 +37,7 @@ async function run() { // Post try { const request = new Request('http://byjka.com/buka'); + new Request(new URL('http://byjka.com/buka')); expectType(request.url); expectType(request.headers); diff --git a/README.md b/README.md index d62c9c64d..3f59dc1fe 100644 --- a/README.md +++ b/README.md @@ -627,7 +627,7 @@ results in an [opaque-redirect filtered response](https://fetch.spec.whatwg.org/ node-fetch gives you the typical [basic filtered response](https://fetch.spec.whatwg.org/#concept-filtered-response-basic) instead. ```js -const fetch = require('node-fetch'); +import fetch from 'node-fetch'; const response = await fetch('https://httpbin.org/status/301', { redirect: 'manual' });