Deployment failure

Hello,

We are trying to deploy a next-js website, and we got this error:

12:31:27 AM:   5. Edge Functions bundling                                    
12:31:27 AM: ────────────────────────────────────────────────────────────────
12:31:27 AM: ​
12:31:27 AM: Packaging Edge Functions from .netlify/edge-functions directory:
12:31:27 AM:  - ipx
12:31:27 AM:  - next_src_middleware
12:31:29 AM: Could not load edge function at '/opt/build/repo/.netlify/edge-functions/next_src_middleware/index.ts'
12:31:29 AM: TypeError: Cannot read properties of undefined (reading 'replace')
12:31:29 AM:     at Module.4402 (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:3590:56)
12:31:29 AM:     at __webpack_require__ (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:73:43)
12:31:29 AM:     at Module.3737 (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:4966:19)
12:31:29 AM:     at __webpack_require__ (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:73:43)
12:31:29 AM:     at __webpack_exec__ (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:10463:48)
12:31:29 AM:     at file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:10464:37
12:31:29 AM:     at webpackJsonpCallback (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:194:39)
12:31:29 AM:     at file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:220:61
12:31:29 AM: ​
12:31:29 AM: (Edge Functions bundling completed in 2.1s)

We are using the next-js middleware with nextAuth.
Our middleware:

Any help will be great, Thank you

Hi @gregAF,

Thanks for reaching out and welcome to Netlify’s Support Forum!

Could you share a link to the deploy log or the site name that you’re seeing this issue?

Searching the error:

TypeError: Cannot read properties of undefined (reading 'replace')

I found this article:

Does resolving the error allow your deploy to succeed?

Hi @Melvin ,
Thank you for your fast reply.
I believe the issue is related to Netlify Edge functions not supporting firebase admin SDK since it uses NodeJs native methods. Therefore, I used this library GitHub - ensite-in/next-firebase-auth-edge: Next.js 13 Firebase Authentication for Edge and server runtimes. Dedicated for Next 13 server components. Compatible with Next.js middleware., which aims to solve the issue; it does work locally but failed on Netlify.
If it helps, here is our env spec:
next v13.0.7
next-firebase-auth-edge v0.2.13
firebase-admin v11.0.1

12:55:09 AM: build-image version: d55944c047ef0aee2ac01971edde72cb2a50acfe (focal)
12:55:09 AM: build-image tag: v4.16.1
12:55:09 AM: buildbot version: abbb532f43aba2e093b26ceac3d8b53e7097bae8
12:55:09 AM: Fetching cached dependencies
12:55:09 AM: Starting to download cache of 1.2GB
12:55:20 AM: Finished downloading cache in 11.206628489s
12:55:20 AM: Starting to extract cache
12:55:33 AM: Finished extracting cache in 13.115854423s
12:55:33 AM: Finished fetching cache in 24.461204419s
12:55:33 AM: Starting to prepare the repo for build
12:55:33 AM: Preparing Git Reference pull/74/head
12:55:34 AM: Parsing package.json dependencies
12:55:35 AM: Section completed: initializing
12:55:35 AM: Starting build script
12:55:35 AM: Installing dependencies
12:55:35 AM: Python version set to 2.7
12:55:36 AM: Started restoring cached node version
12:55:37 AM: Finished restoring cached node version
12:55:37 AM: v16.19.0 is already installed.
12:55:37 AM: Now using node v16.19.0 (npm v8.19.3)
12:55:37 AM: Enabling node corepack
12:55:37 AM: Started restoring cached build plugins
12:55:37 AM: Finished restoring cached build plugins
12:55:37 AM: Attempting ruby version 2.7.2, read from environment
12:55:38 AM: Using ruby version 2.7.2
12:55:38 AM: Using PHP version 8.0
12:55:38 AM: Started restoring cached yarn cache
12:55:46 AM: Finished restoring cached yarn cache
12:55:47 AM: No yarn workspaces detected
12:55:47 AM: Started restoring cached node modules
12:55:47 AM: Finished restoring cached node modules
12:55:47 AM: Installing NPM modules using Yarn version 1.22.19
12:55:47 AM: yarn install v1.22.19
12:55:47 AM: [1/5] Validating package.json...
12:55:47 AM: [2/5] Resolving packages...
12:55:47 AM: success Already up-to-date.
12:55:47 AM: $ husky install
12:55:47 AM: husky - Git hooks installed
12:55:47 AM: Done in 0.56s.
12:55:47 AM: NPM modules installed using Yarn
12:55:48 AM: Started restoring cached go cache
12:55:48 AM: Finished restoring cached go cache
12:55:48 AM: Installing Go version 1.17 (requested 1.17)
12:55:55 AM: unset GOOS;
12:55:55 AM: unset GOARCH;
12:55:55 AM: export GOROOT='/opt/buildhome/.gimme/versions/go1.17.linux.amd64';
12:55:55 AM: export PATH="/opt/buildhome/.gimme/versions/go1.17.linux.amd64/bin:${PATH}";
12:55:55 AM: go version >&2;
12:55:55 AM: export GIMME_ENV="/opt/buildhome/.gimme/env/go1.17.linux.amd64.env"
12:55:55 AM: go version go1.17 linux/amd64
12:55:55 AM: Detected 1 framework(s)
12:55:55 AM: "next" at version "13.0.7"
12:55:55 AM: Installing missing commands
12:55:55 AM: Verify run directory
12:55:57 AM: ​
12:55:57 AM:   Netlify Build                                                 
12:55:57 AM: ────────────────────────────────────────────────────────────────
12:55:57 AM: ​
12:55:57 AM: ❯ Version
12:55:57 AM:   @netlify/build 29.1.3
12:55:57 AM: ​
12:55:57 AM: ❯ Flags
12:55:57 AM:   baseRelDir: true
12:55:57 AM:   buildId: 63a0f9dba70e5400a6d1d9ce
12:55:57 AM:   deployId: 63a0f9dba70e5400a6d1d9d0
12:55:57 AM: ​
12:55:57 AM: ❯ Current directory
12:55:57 AM:   /opt/build/repo
12:55:57 AM: ​
12:55:57 AM: ❯ Config file
12:55:57 AM:   /opt/build/repo/netlify.toml
12:55:57 AM: ​
12:55:57 AM: ❯ Context
12:55:57 AM:   deploy-preview
12:55:57 AM: ​
12:55:57 AM: ❯ Using Next.js Runtime - v4.29.2
12:55:57 AM: ​
12:55:57 AM: ❯ Outdated plugins
12:55:57 AM:    - @netlify/plugin-nextjs@4.29.2: latest version is 4.29.3
12:55:57 AM:      Migration guide: https://ntl.fyi/next-plugin-migration
12:55:57 AM:      To upgrade this plugin, please update its version in "package.json"
12:55:58 AM: ​
12:55:58 AM:   1. @netlify/plugin-nextjs (onPreBuild event)                  
12:55:58 AM: ────────────────────────────────────────────────────────────────
12:55:58 AM: ​
12:55:58 AM: Next.js cache restored.
12:55:58 AM: Netlify configuration property "build.environment.NEXT_PRIVATE_TARGET" value changed.
12:55:58 AM: ​
12:55:58 AM: (@netlify/plugin-nextjs onPreBuild completed in 126ms)
12:55:58 AM: ​
12:55:58 AM:   2. build.command from netlify.toml                            
12:55:58 AM: ────────────────────────────────────────────────────────────────
12:55:58 AM: ​
12:56:21 AM: ​
12:56:21 AM:   3. @netlify/plugin-nextjs (onBuild event)                     
12:56:21 AM: ────────────────────────────────────────────────────────────────
12:56:21 AM: ​
12:56:21 AM: NextAuth package detected, NEXTAUTH_URL environment variable set by user in Netlify configuration to https://dashboard-v3-development.netlify.app/
12:56:21 AM: Could not find source file for page /api/auth/[...nextauth]
12:56:21 AM: Could not find source file for page /api/restricted
12:56:21 AM: Could not find source file for page /api/trpc/[trpc]
12:56:21 AM: { functionsDir: '/opt/build/repo/.netlify/functions-internal' }
12:56:22 AM: Patching /opt/build/repo/node_modules/next/dist/server/base-server.js
12:56:22 AM: Done
12:56:22 AM: Patching /opt/build/repo/node_modules/next/dist/server/next-server.js
12:56:22 AM: Done
12:56:22 AM: Moving static page files to serve from CDN...
12:56:22 AM: Moved 0 files
12:56:22 AM: Using Netlify Edge Functions for image format detection. Set env var "NEXT_DISABLE_EDGE_IMAGES=true" to disable.
12:56:22 AM: ✨ Deploying middleware and functions to Netlify Edge Functions ✨
12:56:22 AM: This feature is in beta. Please share your feedback here: https://ntl.fyi/next-netlify-edge
12:56:22 AM: Netlify configuration property "redirects" value changed to [
12:56:22 AM:   { from: '/_next/static/*', to: '/static/:splat', status: 200 },
12:56:22 AM:   {
12:56:22 AM:     from: '/:locale/_next/static/*',
12:56:22 AM:     to: '/static/:splat',
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/image*',
12:56:22 AM:     query: { url: ':url', w: ':width', q: ':quality' },
12:56:22 AM:     to: '/_ipx/w_:width,q_:quality/:url',
12:56:22 AM:     status: 301
12:56:22 AM:   },
12:56:22 AM:   { from: '/_ipx/*', to: '/.netlify/builders/_ipx', status: 200 },
12:56:22 AM:   { from: '/cache/*', to: '/404.html', status: 404, force: true },
12:56:22 AM:   { from: '/server/*', to: '/404.html', status: 404, force: true },
12:56:22 AM:   { from: '/serverless/*', to: '/404.html', status: 404, force: true },
12:56:22 AM:   { from: '/trace', to: '/404.html', status: 404, force: true },
12:56:22 AM:   { from: '/traces', to: '/404.html', status: 404, force: true },
12:56:22 AM:   {
12:56:22 AM:     from: '/routes-manifest.json',
12:56:22 AM:     to: '/404.html',
12:56:22 AM:     status: 404,
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/build-manifest.json',
12:56:22 AM:     to: '/404.html',
12:56:22 AM:     status: 404,
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/prerender-manifest.json',
12:56:22 AM:     to: '/404.html',
12:56:22 AM:     status: 404,
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/react-loadable-manifest.json',
12:56:22 AM:     to: '/404.html',
12:56:22 AM:     status: 404,
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   { from: '/BUILD_ID', to: '/404.html', status: 404, force: true },
12:56:22 AM:   {
12:56:22 AM:     from: '/',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: true,
12:56:22 AM:     conditions: { Cookie: [Array] }
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/',
12:56:22 AM:     to: '/it',
12:56:22 AM:     status: 301,
12:56:22 AM:     conditions: { Language: [Array] },
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/',
12:56:22 AM:     to: '/nl',
12:56:22 AM:     status: 301,
12:56:22 AM:     conditions: { Language: [Array] },
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/api/*',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/auth-bg.jpg',
12:56:22 AM:     to: '/auth-bg.jpg',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/favicon.ico',
12:56:22 AM:     to: '/favicon.ico',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/favicon.png',
12:56:22 AM:     to: '/favicon.png',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/README.md',
12:56:22 AM:     to: '/locales/README.md',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/svgs/Jumbo_Logo.svg',
12:56:22 AM:     to: '/svgs/Jumbo_Logo.svg',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/svgs/logo-colored.svg',
12:56:22 AM:     to: '/svgs/logo-colored.svg',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/svgs/logo-full.svg',
12:56:22 AM:     to: '/svgs/logo-full.svg',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/svgs/signIn_logo.svg',
12:56:22 AM:     to: '/svgs/signIn_logo.svg',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-Black.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-Black.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-Bold.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-Bold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-ExtraBold.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-ExtraBold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-ExtraLight.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-ExtraLight.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-Light.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-Light.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-Medium.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-Medium.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-Regular.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-Regular.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-SemiBold.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-SemiBold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-Thin.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-Thin.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/inter/Inter-VariableFont_slnt,wght.ttf',
12:56:22 AM:     to: '/fonts/inter/Inter-VariableFont_slnt,wght.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Black.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Black.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-BlackItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-BlackItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Bold.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Bold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-BoldItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-BoldItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-ExtraBold.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-ExtraBold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-ExtraBoldItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-ExtraBoldItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-ExtraLight.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-ExtraLight.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-ExtraLightItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-ExtraLightItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Italic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Italic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Light.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Light.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-LightItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-LightItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Medium.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Medium.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-MediumItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-MediumItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Regular.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Regular.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-SemiBold.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-SemiBold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-SemiBoldItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-SemiBoldItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-Thin.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-Thin.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/NotoSans-ThinItalic.ttf',
12:56:22 AM:     to: '/fonts/noto_sans/NotoSans-ThinItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/noto_sans/OFL.txt',
12:56:22 AM:     to: '/fonts/noto_sans/OFL.txt',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/LICENSE.txt',
12:56:22 AM:     to: '/fonts/roboto/LICENSE.txt',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Black.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Black.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-BlackItalic.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-BlackItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Bold.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Bold.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-BoldItalic.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-BoldItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Italic.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Italic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Light.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Light.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-LightItalic.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-LightItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Medium.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Medium.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-MediumItalic.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-MediumItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Regular.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Regular.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-Thin.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-Thin.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/fonts/roboto/Roboto-ThinItalic.ttf',
12:56:22 AM:     to: '/fonts/roboto/Roboto-ThinItalic.ttf',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/auth.json',
12:56:22 AM:     to: '/locales/en/auth.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/common.json',
12:56:22 AM:     to: '/locales/en/common.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/error.json',
12:56:22 AM:     to: '/locales/en/error.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/filters.json',
12:56:22 AM:     to: '/locales/en/filters.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/navigation.json',
12:56:22 AM:     to: '/locales/en/navigation.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/report.json',
12:56:22 AM:     to: '/locales/en/report.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/scan.json',
12:56:22 AM:     to: '/locales/en/scan.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/en/search.json',
12:56:22 AM:     to: '/locales/en/search.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/it/auth.json',
12:56:22 AM:     to: '/locales/it/auth.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/it/common.json',
12:56:22 AM:     to: '/locales/it/common.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/it/filters.json',
12:56:22 AM:     to: '/locales/it/filters.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/it/navigation.json',
12:56:22 AM:     to: '/locales/it/navigation.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/it/scan.json',
12:56:22 AM:     to: '/locales/it/scan.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/nl/auth.json',
12:56:22 AM:     to: '/locales/nl/auth.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/nl/common.json',
12:56:22 AM:     to: '/locales/nl/common.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/nl/filters.json',
12:56:22 AM:     to: '/locales/nl/filters.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/nl/navigation.json',
12:56:22 AM:     to: '/locales/nl/navigation.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/locales/nl/scan.json',
12:56:22 AM:     to: '/locales/nl/scan.json',
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     status: 200
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/*',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     conditions: { Cookie: [Array] },
12:56:22 AM:     force: true
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/en/index.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/it/index.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/it/',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/nl/index.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/nl/',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/en/auth/signIn.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/auth/signIn',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/it/auth/signIn.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/it/auth/signIn',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/nl/auth/signIn.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/nl/auth/signIn',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   {
12:56:22 AM:     from: '/_next/data/yQd2q1wA0xr2TdzKf3jGJ/en/search.json',
12:56:22 AM:     to: '/.netlify/functions/___netlify-handler',
12:56:22 AM:     status: 200,
12:56:22 AM:     force: false
12:56:22 AM:   },
12:56:22 AM:   ... 24 more items
12:56:22 AM: ].
12:56:22 AM: ​
12:56:22 AM: (@netlify/plugin-nextjs onBuild completed in 233ms)
12:56:22 AM: ​
12:56:22 AM:   4. Functions bundling                                         
12:56:22 AM: ────────────────────────────────────────────────────────────────
12:56:22 AM: ​
12:56:22 AM: Packaging Functions from .netlify/functions-internal directory:
12:56:22 AM:  - ___netlify-handler/___netlify-handler.js
12:56:22 AM:  - ___netlify-odb-handler/___netlify-odb-handler.js
12:56:22 AM:  - _ipx/_ipx.js
12:56:22 AM: ​
12:56:52 AM: ​
12:56:52 AM: (Functions bundling completed in 30.7s)
12:56:52 AM: ​
12:56:52 AM:   5. Edge Functions bundling                                    
12:56:52 AM: ────────────────────────────────────────────────────────────────
12:56:52 AM: ​
12:56:52 AM: Packaging Edge Functions from .netlify/edge-functions directory:
12:56:52 AM:  - ipx
12:56:52 AM:  - next_src_middleware
12:56:53 AM: Could not load edge function at '/opt/build/repo/.netlify/edge-functions/next_src_middleware/index.ts'
12:56:53 AM: TypeError: Cannot read properties of undefined (reading 'replace')
12:56:53 AM:     at Module.4402 (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:3590:56)
12:56:53 AM:     at __webpack_require__ (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:73:43)
12:56:53 AM:     at Module.3737 (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:4966:19)
12:56:53 AM:     at __webpack_require__ (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:73:43)
12:56:53 AM:     at __webpack_exec__ (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:10463:48)
12:56:53 AM:     at file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:10464:37
12:56:53 AM:     at webpackJsonpCallback (file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:194:39)
12:56:53 AM:     at file:///opt/build/repo/.netlify/edge-functions/next_src_middleware/bundle.js:220:61
12:56:53 AM: ​
12:56:53 AM: (Edge Functions bundling completed in 1s)
12:56:53 AM: ​
12:56:53 AM:   6. @netlify/plugin-nextjs (onPostBuild event)                 
12:56:53 AM: ────────────────────────────────────────────────────────────────
12:56:53 AM: ​
12:56:54 AM: Next.js cache saved.
12:56:54 AM: ​
12:56:54 AM: (@netlify/plugin-nextjs onPostBuild completed in 165ms)
12:56:54 AM: ​
12:56:54 AM:   7. Deploy site                                                
12:56:54 AM: ────────────────────────────────────────────────────────────────
12:56:54 AM: ​
12:56:54 AM: Starting to deploy site from '.next'
12:56:54 AM: Creating deploy tree 
12:56:54 AM: 32 new files to upload
12:56:54 AM: 2 new functions to upload
12:57:02 AM: Section completed: deploying
12:57:02 AM: Site deploy was successfully initiated
12:57:02 AM: ​
12:57:02 AM: (Deploy site completed in 8.5s)
12:57:02 AM: ​
12:57:02 AM:   Netlify Build Complete                                        
12:57:02 AM: ────────────────────────────────────────────────────────────────
12:57:02 AM: Starting post processing
12:57:02 AM: ​
12:57:02 AM: (Netlify Build completed in 1m 5.4s)
12:57:03 AM: Caching artifacts
12:57:03 AM: Started saving node modules
12:57:02 AM: Skipping HTML post processing
12:57:03 AM: Finished saving node modules
12:57:03 AM: Started saving build plugins
12:57:03 AM: Finished saving build plugins
12:57:03 AM: Post processing - header rules
12:57:03 AM: Started saving yarn cache
12:57:03 AM: Post processing - redirect rules
12:57:03 AM: Post processing done
12:57:03 AM: Section completed: postprocessing
12:57:07 AM: Site is live ✨
12:57:08 AM: Finished saving yarn cache
12:57:08 AM: Started saving pip cache
12:57:08 AM: Finished saving pip cache
12:57:08 AM: Started saving emacs cask dependencies
12:57:08 AM: Finished saving emacs cask dependencies
12:57:08 AM: Started saving maven dependencies
12:57:08 AM: Finished saving maven dependencies
12:57:08 AM: Started saving boot dependencies
12:57:08 AM: Finished saving boot dependencies
12:57:08 AM: Started saving rust rustup cache
12:57:08 AM: Finished saving rust rustup cache
12:57:08 AM: Started saving go dependencies
12:57:08 AM: Finished saving go dependencies
12:57:08 AM: Build script success
12:57:08 AM: Section completed: building
12:57:12 AM: Uploading Cache of size 1.2GB
12:57:20 AM: Section completed: cleanup
12:57:20 AM: Finished processing build request in 2m11.456842797s

Hey @gregAF,

Are you sure that library works on Deno? Netlify uses that as the Edge Runtime and that library does not mention any specifics apart from:

for Edge and server runtimes

I’m not sure if that covers all runtimes.