Skip to content

Cloudflare Worker adapter builds fail with sk-auth #42

Description

@dcaslin

I have a simple sveltekit app that works with sk-auth locally, and works with the node adapter build, but fails with the logs below when I try to use the Cloudflare worker adapter. I've tried playing around w/ the Vite excludes settings but haven't had any luck yet.

Here's my svelite.config.js

import preprocess from 'svelte-preprocess';
import cloudflare from '@sveltejs/adapter-cloudflare-workers';
// import node from '@sveltejs/adapter-node';

/** @type {import('@sveltejs/kit').Config} */
const config = {
	// Consult https://github.com/sveltejs/svelte-preprocess
	// for more information about preprocessors
	preprocess: [preprocess({
        "postcss": true
    })],

	kit: {
		adapter: cloudflare(),
		// adapter: node(),
		// hydrate the <div id="svelte"> element in src/app.html
		target: '#svelte'
	}
};

export default config;
// Workaround until SvelteKit uses Vite 2.3.8 (and it's confirmed to fix the Tailwind JIT problem)
const mode = process.env.NODE_ENV;
const dev = mode === "development";
process.env.TAILWIND_MODE = dev ? "watch" : "build";

And here's my package.json


{
	"name": "~TODO~",
	"version": "0.0.1",
	"scripts": {
		"dev": "svelte-kit dev",
		"build": "svelte-kit build",
		"preview": "svelte-kit preview",
		"check": "svelte-check --tsconfig ./tsconfig.json",
		"check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
		"lint": "prettier --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
		"format": "prettier --write --plugin-search-dir=. ."
	},
	"devDependencies": {
		"@sveltejs/adapter-cloudflare-workers": "^1.0.0-next.16",
		"@sveltejs/adapter-node": "^1.0.0-next.34",
		"@sveltejs/adapter-static": "^1.0.0-next.13",
		"@sveltejs/kit": "^1.0.0-next.131",
		"@tailwindcss/custom-forms": "^0.2.1",
		"@typescript-eslint/eslint-plugin": "^4.28.3",
		"@typescript-eslint/parser": "^4.28.3",
		"autoprefixer": "^10.3.1",
		"cssnano": "^5.0.6",
		"eslint": "^7.31.0",
		"eslint-config-prettier": "^8.1.0",
		"eslint-plugin-svelte3": "^3.2.0",
		"postcss": "^8.3.5",
		"postcss-load-config": "^3.1.0",
		"prettier": "~2.2.1",
		"prettier-plugin-svelte": "^2.2.0",
		"svelte": "^3.34.0",
		"svelte-check": "^2.2.3",
		"svelte-preprocess": "^4.7.4",
		"tailwindcss": "^2.2.4",
		"tslib": "^2.0.0",
		"typescript": "^4.3.5"
	},
	"type": "module",
	"dependencies": {
		"@tailwindcss/forms": "^0.3.3",
		"@tailwindcss/typography": "^0.4.1",
		"faker": "^5.5.3",
		"sk-auth": "^0.3.7"
	}
}

Error log below:

> Using @sveltejs/adapter-cloudflare-workers
 > node_modules/jws/lib/verify-stream.js:5:21: error: Could not resolve "stream" (use "platform: 'node'" when building for node)
    5 │ var Stream = require('stream');
      ╵                      ~~~~~~~~

 > node_modules/jws/lib/verify-stream.js:7:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
    7 │ var util = require('util');
      ╵                    ~~~~~~

 > node_modules/jws/lib/sign-stream.js:5:21: error: Could not resolve "stream" (use "platform: 'node'" when building for node)
    5 │ var Stream = require('stream');
      ╵                      ~~~~~~~~

 > node_modules/jws/lib/tostring.js:2:21: error: Could not resolve "buffer" (use "platform: 'node'" when building for node)
    2 │ var Buffer = require('buffer').Buffer;
      ╵                      ~~~~~~~~

 > node_modules/safe-buffer/index.js:3:21: error: Could not resolve "buffer" (use "platform: 'node'" when building for node)
    3 │ var buffer = require('buffer')
      ╵                      ~~~~~~~~

 > node_modules/jws/lib/data-stream.js:3:21: error: Could not resolve "stream" (use "platform: 'node'" when building for node)
    3 │ var Stream = require('stream');
      ╵                      ~~~~~~~~

 > node_modules/jws/lib/sign-stream.js:7:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
    7 │ var util = require('util');
      ╵                    ~~~~~~

 > node_modules/jwa/index.js:3:21: error: Could not resolve "crypto" (use "platform: 'node'" when building for node)
    3 │ var crypto = require('crypto');
      ╵                      ~~~~~~~~

 > node_modules/jws/lib/data-stream.js:4:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
    4 │ var util = require('util');
      ╵                    ~~~~~~

 > node_modules/jwa/index.js:5:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
    5 │ var util = require('util');
      ╵                    ~~~~~~

 > node_modules/buffer-equal-constant-time/index.js:3:21: error: Could not resolve "buffer" (use "platform: 'node'" when building for node)
    3 │ var Buffer = require('buffer').Buffer; // browserify
      ╵                      ~~~~~~~~

> Build failed with 11 errors:
node_modules/buffer-equal-constant-time/index.js:3:21: error: Could not resolve "buffer" (use "platform: 'node'" when building for node)
node_modules/jwa/index.js:3:21: error: Could not resolve "crypto" (use "platform: 'node'" when building for node)
node_modules/jwa/index.js:5:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
node_modules/jws/lib/data-stream.js:3:21: error: Could not resolve "stream" (use "platform: 'node'" when building for node)
node_modules/jws/lib/data-stream.js:4:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
...
Error: Build failed with 11 errors:
node_modules/buffer-equal-constant-time/index.js:3:21: error: Could not resolve "buffer" (use "platform: 'node'" when building for node)
node_modules/jwa/index.js:3:21: error: Could not resolve "crypto" (use "platform: 'node'" when building for node)
node_modules/jwa/index.js:5:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
node_modules/jws/lib/data-stream.js:3:21: error: Could not resolve "stream" (use "platform: 'node'" when building for node)
node_modules/jws/lib/data-stream.js:4:19: error: Could not resolve "util" (use "platform: 'node'" when building for node)
...
    at failureErrorWithLog (/Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:1449:15)
    at /Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:1131:28
    at runOnEndCallbacks (/Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:1049:65)
    at buildResponseToResult (/Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:1129:7)
    at /Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:1236:14
    at /Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:609:9
    at handleIncomingPacket (/Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:706:9)
    at Socket.readFromStdout (/Users/dcaslin/projects/531-calc-2/node_modules/esbuild/lib/main.js:576:7)
    at Socket.emit (events.js:315:20)
    at Socket.EventEmitter.emit (domain.js:467:12)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ~TODO~@0.0.1 build: `svelte-kit build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the ~TODO~@0.0.1 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinghelp wantedExtra attention is needed

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions