Skip to content
Snippets Groups Projects
Commit 42ebcb9b authored by richard.petersen's avatar richard.petersen :sailboat:
Browse files

Replace node-fetch with native fetch

parent 093daf76
No related branches found
No related tags found
No related merge requests found
......@@ -2,7 +2,7 @@
"root": true,
"env": {
"node": true,
"es2021": true
"es2022": true
},
"extends": [
"standard"
......
......@@ -2,5 +2,8 @@
"extends": [
"plugin:mocha/recommended"
],
"plugins": ["mocha"]
"plugins": ["mocha"],
"globals": {
"Response": true
}
}
import request from 'supertest'
import { expect } from 'chai'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch } from '../spec/util.js'
import { Response } from 'node-fetch'
import { client } from '../src/redis.js'
import * as td from 'testdouble'
import { getRedisKey } from '../src/util.js'
......
import request from 'supertest'
import { expect } from 'chai'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch } from '../spec/util.js'
import { Response } from 'node-fetch'
import { client, closeQueue, getQueues, pubClient } from '../src/redis.js'
import * as td from 'testdouble'
import { getRedisKey } from '../src/util.js'
......
import request from 'supertest'
import { expect } from 'chai'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch } from '../spec/util.js'
import { Response } from 'node-fetch'
import { client, closeQueue, getQueue, getQueues, pubClient } from '../src/redis.js'
import * as td from 'testdouble'
import { getRedisKey } from '../src/util.js'
......
......@@ -28,7 +28,6 @@
"http-errors": "^2.0.0",
"ioredis": "^5.2.2",
"js-yaml": "^4.0.0",
"node-fetch": "^3.2.10",
"swagger-ui-express": "^4.5.0"
},
"devDependencies": {
......
......@@ -2,5 +2,8 @@
"extends": [
"plugin:mocha/recommended"
],
"plugins": ["mocha"]
"plugins": ["mocha"],
"globals": {
"Response": true
}
}
import request from 'supertest'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch, mockRedis } from './util.js'
import { expect } from 'chai'
import { Response } from 'node-fetch'
import * as td from 'testdouble'
import RedisMock from 'ioredis-mock'
......
......@@ -3,7 +3,6 @@ import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch, mockRedis }
import fs from 'fs'
import { expect } from 'chai'
import * as td from 'testdouble'
import { Response } from 'node-fetch'
import RedisMock from 'ioredis-mock'
import sinon from 'sinon'
......
import request from 'supertest'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch, mockRedis } from './util.js'
import { expect } from 'chai'
import { Response } from 'node-fetch'
import * as td from 'testdouble'
import RedisMock from 'ioredis-mock'
......
import request from 'supertest'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch, mockRedis } from './util.js'
import { expect } from 'chai'
import { Response } from 'node-fetch'
import * as td from 'testdouble'
import RedisMock from 'ioredis-mock'
......
......@@ -2,7 +2,6 @@ import request from 'supertest'
import { generateSimpleViteManifest, mockApp, mockConfig, mockFetch } from './util.js'
import { expect } from 'chai'
import * as td from 'testdouble'
import { Response } from 'node-fetch'
import sinon from 'sinon'
const sandbox = sinon.createSandbox()
......
import * as td from 'testdouble'
import { register } from 'prom-client'
import request from 'supertest'
import { Response } from 'node-fetch'
import RedisMock from 'ioredis-mock'
export function generateSimpleViteManifest (mapping) {
......@@ -25,7 +24,7 @@ export function mockConfig (obj = {}) {
}
export function mockFetch (servers = {}) {
td.replaceEsm('node-fetch', {}, async function ({ origin, pathname }) {
td.replace(global, 'fetch', async function ({ origin, pathname }) {
const response = servers[origin]?.[pathname]
if (response === undefined) return new Response('', { status: 404 })
if (response instanceof Function) return response.apply(this, arguments)
......
import fetch from 'node-fetch'
import crypto from 'crypto'
import { config } from './config.js'
import { getRedisKey, isJSFile } from './util.js'
......
import fetch from 'node-fetch'
import { config } from './config.js'
import { getRedisKey, viteManifestToDeps, viteToOxManifest } from './util.js'
import { logger } from './logger.js'
......
import { config } from './config.js'
import fetch from 'node-fetch'
import * as cache from './cache.js'
import { getRedisKey } from './util.js'
......
import fetch from 'node-fetch'
import { config } from './config.js'
import { getRedisKey, hash } from './util.js'
import { logger } from './logger.js'
......
......@@ -621,11 +621,6 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3:
shebang-command "^2.0.0"
which "^2.0.1"
data-uri-to-buffer@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-4.0.0.tgz#b5db46aea50f6176428ac05b73be39a57701a64b"
integrity sha512-Vr3mLBA8qWmcuschSLAOogKgQ/Jwxulv3RNE4FXnYWRGujzrRWQI4m12fQqRkwX06C0KanhLr4hK+GydchZsaA==
dateformat@^4.6.3:
version "4.6.3"
resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5"
......@@ -1183,14 +1178,6 @@ fengari@^0.1.4:
sprintf-js "^1.1.1"
tmp "^0.0.33"
fetch-blob@^3.1.2, fetch-blob@^3.1.4:
version "3.2.0"
resolved "https://registry.yarnpkg.com/fetch-blob/-/fetch-blob-3.2.0.tgz#f09b8d4bbd45adc6f0c20b7e787e793e309dcce9"
integrity sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==
dependencies:
node-domexception "^1.0.0"
web-streams-polyfill "^3.0.3"
file-entry-cache@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
......@@ -1253,13 +1240,6 @@ form-data@^4.0.0:
combined-stream "^1.0.8"
mime-types "^2.1.12"
formdata-polyfill@^4.0.10:
version "4.0.10"
resolved "https://registry.yarnpkg.com/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz#24807c31c9d402e002ab3d8c720144ceb8848423"
integrity sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==
dependencies:
fetch-blob "^3.1.2"
formidable@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/formidable/-/formidable-2.0.1.tgz#4310bc7965d185536f9565184dee74fbb75557ff"
......@@ -2084,20 +2064,6 @@ nise@^5.1.1:
just-extend "^4.0.2"
path-to-regexp "^1.7.0"
node-domexception@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5"
integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==
node-fetch@^3.2.10:
version "3.2.10"
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.2.10.tgz#e8347f94b54ae18b57c9c049ef641cef398a85c8"
integrity sha512-MhuzNwdURnZ1Cp4XTazr69K0BTizsBroX7Zx3UgDSVcZYKF/6p0CBe4EUb/hLqmzVhl0UpYfgRljQ4yxE+iCxA==
dependencies:
data-uri-to-buffer "^4.0.0"
fetch-blob "^3.1.4"
formdata-polyfill "^4.0.10"
node-gyp-build-optional-packages@5.0.3:
version "5.0.3"
resolved "https://registry.yarnpkg.com/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.0.3.tgz#92a89d400352c44ad3975010368072b41ad66c17"
......@@ -3116,11 +3082,6 @@ vary@~1.1.2:
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==
web-streams-polyfill@^3.0.3:
version "3.2.1"
resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz#71c2718c52b45fd49dbeee88634b3a60ceab42a6"
integrity sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==
which-boxed-primitive@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment