From 474744c3570f457b9e97b3dcb76490c9102a2a28 Mon Sep 17 00:00:00 2001 From: wolfy1339 <4595477+wolfy1339@users.noreply.github.com> Date: Sun, 26 Nov 2023 16:25:54 -0500 Subject: [PATCH 1/3] refactor: replace NodeJS internal module imports with `node:` specifier imports --- test/request.test.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/request.test.ts b/test/request.test.ts index fe39cd01a..3a4e1f3ab 100644 --- a/test/request.test.ts +++ b/test/request.test.ts @@ -1,5 +1,5 @@ -import fs from "fs"; -import stream, { Stream } from "stream"; +import fs from "node:fs"; +import stream, { Stream } from "node:stream"; import { getUserAgent } from "universal-user-agent"; import fetchMock from "fetch-mock"; From 2fd0808bcdeccff9cba2b96cab8b9be1afd36284 Mon Sep 17 00:00:00 2001 From: wolfy1339 Date: Tue, 28 Nov 2023 18:39:39 -0500 Subject: [PATCH 2/3] refactor: use full relative paths in imports --- package.json | 5 ++++- src/fetch-wrapper.ts | 4 ++-- src/index.ts | 4 ++-- src/with-defaults.ts | 2 +- test/defaults.test.ts | 2 +- test/is-plain-object.test.ts | 2 +- test/request.test.ts | 2 +- test/tsconfig.test.json | 3 ++- 8 files changed, 14 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 968114e90..d0f154cb9 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,10 @@ }, "modulePathIgnorePatterns": [ "/pkg" - ] + ], + "moduleNameMapper": { + "^(.+)\\.jsx?$": "$1" + } }, "release": { "branches": [ diff --git a/src/fetch-wrapper.ts b/src/fetch-wrapper.ts index ef41903cf..5c1caf83b 100644 --- a/src/fetch-wrapper.ts +++ b/src/fetch-wrapper.ts @@ -1,8 +1,8 @@ -import { isPlainObject } from "./is-plain-object"; +import { isPlainObject } from "./is-plain-object.js"; import { RequestError } from "@octokit/request-error"; import type { EndpointInterface } from "@octokit/types"; -import getBuffer from "./get-buffer-response"; +import getBuffer from "./get-buffer-response.js"; export default function fetchWrapper( requestOptions: ReturnType, diff --git a/src/index.ts b/src/index.ts index 9de0b81bf..c3e578728 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,8 +1,8 @@ import { endpoint } from "@octokit/endpoint"; import { getUserAgent } from "universal-user-agent"; -import { VERSION } from "./version"; -import withDefaults from "./with-defaults"; +import { VERSION } from "./version.js"; +import withDefaults from "./with-defaults.js"; export const request = withDefaults(endpoint, { headers: { diff --git a/src/with-defaults.ts b/src/with-defaults.ts index 88c7ab741..6a82854ed 100644 --- a/src/with-defaults.ts +++ b/src/with-defaults.ts @@ -1,4 +1,4 @@ -import fetchWrapper from "./fetch-wrapper"; +import fetchWrapper from "./fetch-wrapper.js"; import type { EndpointOptions, EndpointInterface, diff --git a/test/defaults.test.ts b/test/defaults.test.ts index 6098ec9b2..81d7cc860 100644 --- a/test/defaults.test.ts +++ b/test/defaults.test.ts @@ -1,6 +1,6 @@ import fetchMock from "fetch-mock"; -import { request } from "../src"; +import { request } from "../src/index.ts"; describe("endpoint.defaults()", () => { it("is a function", () => { diff --git a/test/is-plain-object.test.ts b/test/is-plain-object.test.ts index 962c915b2..1b9d44e33 100644 --- a/test/is-plain-object.test.ts +++ b/test/is-plain-object.test.ts @@ -1,4 +1,4 @@ -import { isPlainObject } from "../src/is-plain-object"; +import { isPlainObject } from "../src/is-plain-object.ts"; describe("isPlainObject", () => { function Foo() { diff --git a/test/request.test.ts b/test/request.test.ts index 3a4e1f3ab..7918deb80 100644 --- a/test/request.test.ts +++ b/test/request.test.ts @@ -11,7 +11,7 @@ import type { ResponseHeaders, } from "@octokit/types"; -import { request } from "../src"; +import { request } from "../src/index.ts"; const userAgent = `octokit-request.js/0.0.0-development ${getUserAgent()}`; const stringToArrayBuffer = require("string-to-arraybuffer"); diff --git a/test/tsconfig.test.json b/test/tsconfig.test.json index b0961e18c..5e8dc2487 100644 --- a/test/tsconfig.test.json +++ b/test/tsconfig.test.json @@ -3,7 +3,8 @@ "compilerOptions": { "emitDeclarationOnly": false, "noEmit": true, - "verbatimModuleSyntax": false + "verbatimModuleSyntax": false, + "allowImportingTsExtensions": true }, "include": ["src/**/*"] } From 59349f143708a808d7c5b2278f99267423b1e976 Mon Sep 17 00:00:00 2001 From: wolfy1339 Date: Tue, 28 Nov 2023 18:39:58 -0500 Subject: [PATCH 3/3] test: use `@gr2m/fetch-mock` --- package-lock.json | 9 +++++---- package.json | 2 +- test/request.test.ts | 5 +++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/package-lock.json b/package-lock.json index e5b22d227..d7ed99a27 100644 --- a/package-lock.json +++ b/package-lock.json @@ -23,7 +23,7 @@ "@types/node": "^20.0.0", "@types/once": "^1.4.0", "esbuild": "^0.19.0", - "fetch-mock": "^9.3.1", + "fetch-mock": "npm:@gr2m/fetch-mock@^9.11.0-pull-request-644.1", "glob": "^10.2.4", "jest": "^29.0.0", "lolex": "^6.0.0", @@ -2957,9 +2957,10 @@ } }, "node_modules/fetch-mock": { - "version": "9.11.0", - "resolved": "https://registry.npmjs.org/fetch-mock/-/fetch-mock-9.11.0.tgz", - "integrity": "sha512-PG1XUv+x7iag5p/iNHD4/jdpxL9FtVSqRMUQhPab4hVDt80T1MH5ehzVrL2IdXO9Q2iBggArFvPqjUbHFuI58Q==", + "name": "@gr2m/fetch-mock", + "version": "9.11.0-pull-request-644.1", + "resolved": "https://registry.npmjs.org/@gr2m/fetch-mock/-/fetch-mock-9.11.0-pull-request-644.1.tgz", + "integrity": "sha512-gTp6RCHzlOXS1qRb0APfuyz48Lw/JFPa4uiar+kEgL1STsDwth75HJZ4x30tBlXMJXV8XDTDzJ2Hz9w3RWiHJA==", "dev": true, "dependencies": { "@babel/core": "^7.0.0", diff --git a/package.json b/package.json index d0f154cb9..3d3edb7f9 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "@types/node": "^20.0.0", "@types/once": "^1.4.0", "esbuild": "^0.19.0", - "fetch-mock": "^9.3.1", + "fetch-mock": "npm:@gr2m/fetch-mock@^9.11.0-pull-request-644.1", "glob": "^10.2.4", "jest": "^29.0.0", "lolex": "^6.0.0", diff --git a/test/request.test.ts b/test/request.test.ts index 7918deb80..9d01805f5 100644 --- a/test/request.test.ts +++ b/test/request.test.ts @@ -1,5 +1,6 @@ import fs from "node:fs"; -import stream, { Stream } from "node:stream"; +import stream from "node:stream"; +import { ReadableStream } from "node:stream/web"; import { getUserAgent } from "universal-user-agent"; import fetchMock from "fetch-mock"; @@ -1116,7 +1117,7 @@ x//0u+zd/R/QRUzLOw4N72/Hu+UG6MNt5iDZFCtapRaKt6OvSBwy8w== }).then((response) => { expect(response.status).toEqual(200); expect(response.headers["content-type"]).toEqual("application/x-gzip"); - expect(response.data).toBeInstanceOf(Stream); + expect(response.data).toBeInstanceOf(ReadableStream); expect(mock.done()).toBe(true); }); });