Fix image integration not working on Node 18+ (#5871)
* fix(image): Remove unnecessary polyfill now that we dropped Node 14 * fix(squoosh): Remove fetch of local wasm binary since undici doesn't support that * chore: changeset
This commit is contained in:
parent
998f412c57
commit
1bd42c6b2a
10 changed files with 12 additions and 215 deletions
5
.changeset/odd-mirrors-beam.md
Normal file
5
.changeset/odd-mirrors-beam.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
'@astrojs/image': patch
|
||||||
|
---
|
||||||
|
|
||||||
|
Fix the integration failing to work properly on Node 18+
|
|
@ -48,8 +48,7 @@
|
||||||
"kleur": "^4.1.5",
|
"kleur": "^4.1.5",
|
||||||
"magic-string": "^0.25.9",
|
"magic-string": "^0.25.9",
|
||||||
"mime": "^3.0.0",
|
"mime": "^3.0.0",
|
||||||
"slash": "^4.0.0",
|
"slash": "^4.0.0"
|
||||||
"web-streams-polyfill": "^3.2.1"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/http-cache-semantics": "^4.0.1",
|
"@types/http-cache-semantics": "^4.0.1",
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
/* tslint-disable ban-types */
|
/* tslint-disable ban-types */
|
||||||
import { TransformStream } from 'web-streams-polyfill';
|
|
||||||
import { parentPort, Worker } from 'worker_threads';
|
import { parentPort, Worker } from 'worker_threads';
|
||||||
|
|
||||||
function uuid() {
|
function uuid() {
|
||||||
|
|
|
@ -384,22 +384,6 @@ var Module = (function () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getBinaryPromise() {
|
function getBinaryPromise() {
|
||||||
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
||||||
if (typeof fetch === 'function') {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' })
|
|
||||||
.then(function (response) {
|
|
||||||
if (!response['ok']) {
|
|
||||||
throw (
|
|
||||||
"failed to load wasm binary file at '" + wasmBinaryFile + "'"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return response['arrayBuffer']()
|
|
||||||
})
|
|
||||||
.catch(function () {
|
|
||||||
return getBinary(wasmBinaryFile)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
return getBinary(wasmBinaryFile)
|
return getBinary(wasmBinaryFile)
|
||||||
})
|
})
|
||||||
|
@ -431,25 +415,7 @@ var Module = (function () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function instantiateAsync() {
|
function instantiateAsync() {
|
||||||
if (
|
return instantiateArrayBuffer(receiveInstantiationResult)
|
||||||
!wasmBinary &&
|
|
||||||
typeof WebAssembly.instantiateStreaming === 'function' &&
|
|
||||||
!isDataURI(wasmBinaryFile) &&
|
|
||||||
typeof fetch === 'function'
|
|
||||||
) {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(
|
|
||||||
function (response) {
|
|
||||||
var result = WebAssembly.instantiateStreaming(response, info)
|
|
||||||
return result.then(receiveInstantiationResult, function (reason) {
|
|
||||||
err('wasm streaming compile failed: ' + reason)
|
|
||||||
err('falling back to ArrayBuffer instantiation')
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (Module['instantiateWasm']) {
|
if (Module['instantiateWasm']) {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -384,22 +384,6 @@ var Module = (function () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getBinaryPromise() {
|
function getBinaryPromise() {
|
||||||
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
||||||
if (typeof fetch === 'function') {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' })
|
|
||||||
.then(function (response) {
|
|
||||||
if (!response['ok']) {
|
|
||||||
throw (
|
|
||||||
"failed to load wasm binary file at '" + wasmBinaryFile + "'"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return response['arrayBuffer']()
|
|
||||||
})
|
|
||||||
.catch(function () {
|
|
||||||
return getBinary(wasmBinaryFile)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
return getBinary(wasmBinaryFile)
|
return getBinary(wasmBinaryFile)
|
||||||
})
|
})
|
||||||
|
@ -431,25 +415,7 @@ var Module = (function () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function instantiateAsync() {
|
function instantiateAsync() {
|
||||||
if (
|
return instantiateArrayBuffer(receiveInstantiationResult)
|
||||||
!wasmBinary &&
|
|
||||||
typeof WebAssembly.instantiateStreaming === 'function' &&
|
|
||||||
!isDataURI(wasmBinaryFile) &&
|
|
||||||
typeof fetch === 'function'
|
|
||||||
) {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(
|
|
||||||
function (response) {
|
|
||||||
var result = WebAssembly.instantiateStreaming(response, info)
|
|
||||||
return result.then(receiveInstantiationResult, function (reason) {
|
|
||||||
err('wasm streaming compile failed: ' + reason)
|
|
||||||
err('falling back to ArrayBuffer instantiation')
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (Module['instantiateWasm']) {
|
if (Module['instantiateWasm']) {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -391,22 +391,6 @@ var Module = (function () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getBinaryPromise() {
|
function getBinaryPromise() {
|
||||||
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
||||||
if (typeof fetch === 'function') {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' })
|
|
||||||
.then(function (response) {
|
|
||||||
if (!response['ok']) {
|
|
||||||
throw (
|
|
||||||
"failed to load wasm binary file at '" + wasmBinaryFile + "'"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return response['arrayBuffer']()
|
|
||||||
})
|
|
||||||
.catch(function () {
|
|
||||||
return getBinary(wasmBinaryFile)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
return getBinary(wasmBinaryFile)
|
return getBinary(wasmBinaryFile)
|
||||||
})
|
})
|
||||||
|
@ -438,25 +422,7 @@ var Module = (function () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function instantiateAsync() {
|
function instantiateAsync() {
|
||||||
if (
|
return instantiateArrayBuffer(receiveInstantiationResult)
|
||||||
!wasmBinary &&
|
|
||||||
typeof WebAssembly.instantiateStreaming === 'function' &&
|
|
||||||
!isDataURI(wasmBinaryFile) &&
|
|
||||||
typeof fetch === 'function'
|
|
||||||
) {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(
|
|
||||||
function (response) {
|
|
||||||
var result = WebAssembly.instantiateStreaming(response, info)
|
|
||||||
return result.then(receiveInstantiationResult, function (reason) {
|
|
||||||
err('wasm streaming compile failed: ' + reason)
|
|
||||||
err('falling back to ArrayBuffer instantiation')
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (Module['instantiateWasm']) {
|
if (Module['instantiateWasm']) {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -391,22 +391,6 @@ var Module = (function () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getBinaryPromise() {
|
function getBinaryPromise() {
|
||||||
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
||||||
if (typeof fetch === 'function') {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' })
|
|
||||||
.then(function (response) {
|
|
||||||
if (!response['ok']) {
|
|
||||||
throw (
|
|
||||||
"failed to load wasm binary file at '" + wasmBinaryFile + "'"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return response['arrayBuffer']()
|
|
||||||
})
|
|
||||||
.catch(function () {
|
|
||||||
return getBinary(wasmBinaryFile)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
return getBinary(wasmBinaryFile)
|
return getBinary(wasmBinaryFile)
|
||||||
})
|
})
|
||||||
|
@ -438,25 +422,7 @@ var Module = (function () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function instantiateAsync() {
|
function instantiateAsync() {
|
||||||
if (
|
return instantiateArrayBuffer(receiveInstantiationResult)
|
||||||
!wasmBinary &&
|
|
||||||
typeof WebAssembly.instantiateStreaming === 'function' &&
|
|
||||||
!isDataURI(wasmBinaryFile) &&
|
|
||||||
typeof fetch === 'function'
|
|
||||||
) {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(
|
|
||||||
function (response) {
|
|
||||||
var result = WebAssembly.instantiateStreaming(response, info)
|
|
||||||
return result.then(receiveInstantiationResult, function (reason) {
|
|
||||||
err('wasm streaming compile failed: ' + reason)
|
|
||||||
err('falling back to ArrayBuffer instantiation')
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (Module['instantiateWasm']) {
|
if (Module['instantiateWasm']) {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -367,22 +367,6 @@ var Module = (function () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getBinaryPromise() {
|
function getBinaryPromise() {
|
||||||
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
||||||
if (typeof fetch === 'function') {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' })
|
|
||||||
.then(function (response) {
|
|
||||||
if (!response['ok']) {
|
|
||||||
throw (
|
|
||||||
"failed to load wasm binary file at '" + wasmBinaryFile + "'"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return response['arrayBuffer']()
|
|
||||||
})
|
|
||||||
.catch(function () {
|
|
||||||
return getBinary(wasmBinaryFile)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
return getBinary(wasmBinaryFile)
|
return getBinary(wasmBinaryFile)
|
||||||
})
|
})
|
||||||
|
@ -414,25 +398,7 @@ var Module = (function () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function instantiateAsync() {
|
function instantiateAsync() {
|
||||||
if (
|
return instantiateArrayBuffer(receiveInstantiationResult)
|
||||||
!wasmBinary &&
|
|
||||||
typeof WebAssembly.instantiateStreaming === 'function' &&
|
|
||||||
!isDataURI(wasmBinaryFile) &&
|
|
||||||
typeof fetch === 'function'
|
|
||||||
) {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(
|
|
||||||
function (response) {
|
|
||||||
var result = WebAssembly.instantiateStreaming(response, info)
|
|
||||||
return result.then(receiveInstantiationResult, function (reason) {
|
|
||||||
err('wasm streaming compile failed: ' + reason)
|
|
||||||
err('falling back to ArrayBuffer instantiation')
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (Module['instantiateWasm']) {
|
if (Module['instantiateWasm']) {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -367,22 +367,6 @@ var Module = (function () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getBinaryPromise() {
|
function getBinaryPromise() {
|
||||||
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
||||||
if (typeof fetch === 'function') {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' })
|
|
||||||
.then(function (response) {
|
|
||||||
if (!response['ok']) {
|
|
||||||
throw (
|
|
||||||
"failed to load wasm binary file at '" + wasmBinaryFile + "'"
|
|
||||||
)
|
|
||||||
}
|
|
||||||
return response['arrayBuffer']()
|
|
||||||
})
|
|
||||||
.catch(function () {
|
|
||||||
return getBinary(wasmBinaryFile)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Promise.resolve().then(function () {
|
return Promise.resolve().then(function () {
|
||||||
return getBinary(wasmBinaryFile)
|
return getBinary(wasmBinaryFile)
|
||||||
})
|
})
|
||||||
|
@ -414,25 +398,7 @@ var Module = (function () {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function instantiateAsync() {
|
function instantiateAsync() {
|
||||||
if (
|
return instantiateArrayBuffer(receiveInstantiationResult)
|
||||||
!wasmBinary &&
|
|
||||||
typeof WebAssembly.instantiateStreaming === 'function' &&
|
|
||||||
!isDataURI(wasmBinaryFile) &&
|
|
||||||
typeof fetch === 'function'
|
|
||||||
) {
|
|
||||||
return fetch(wasmBinaryFile, { credentials: 'same-origin' }).then(
|
|
||||||
function (response) {
|
|
||||||
var result = WebAssembly.instantiateStreaming(response, info)
|
|
||||||
return result.then(receiveInstantiationResult, function (reason) {
|
|
||||||
err('wasm streaming compile failed: ' + reason)
|
|
||||||
err('falling back to ArrayBuffer instantiation')
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
return instantiateArrayBuffer(receiveInstantiationResult)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (Module['instantiateWasm']) {
|
if (Module['instantiateWasm']) {
|
||||||
try {
|
try {
|
||||||
|
|
2
pnpm-lock.yaml
generated
2
pnpm-lock.yaml
generated
|
@ -2694,7 +2694,6 @@ importers:
|
||||||
sharp: ^0.31.0
|
sharp: ^0.31.0
|
||||||
slash: ^4.0.0
|
slash: ^4.0.0
|
||||||
vite: ^4.0.3
|
vite: ^4.0.3
|
||||||
web-streams-polyfill: ^3.2.1
|
|
||||||
dependencies:
|
dependencies:
|
||||||
'@altano/tiny-async-pool': 1.0.2
|
'@altano/tiny-async-pool': 1.0.2
|
||||||
http-cache-semantics: 4.1.0
|
http-cache-semantics: 4.1.0
|
||||||
|
@ -2703,7 +2702,6 @@ importers:
|
||||||
magic-string: 0.25.9
|
magic-string: 0.25.9
|
||||||
mime: 3.0.0
|
mime: 3.0.0
|
||||||
slash: 4.0.0
|
slash: 4.0.0
|
||||||
web-streams-polyfill: 3.2.1
|
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@types/http-cache-semantics': 4.0.1
|
'@types/http-cache-semantics': 4.0.1
|
||||||
'@types/mime': 2.0.3
|
'@types/mime': 2.0.3
|
||||||
|
|
Loading…
Add table
Reference in a new issue