Comments (6)
Looks like something's failing when importing better-sqlite3
and likely not an issue with Lucia. I'd recommend asking Astro's or better-sqlite3
community
from lucia.
Have you set up the middleware?
from lucia.
This middleware is already present in the repo (and is identical except for the import to the one described here)
import { auth } from "./lib/lucia";
import type { MiddlewareResponseHandler } from "astro";
export const onRequest: MiddlewareResponseHandler = async (context, next) => {
context.locals.auth = auth.handleRequest(context);
return await next();
};
Is there a change that needs to be made there?
from lucia.
Can you check if the middleware runs in the first place?
from lucia.
Can you check if the middleware runs in the first place?
This is the complete set of traces/ errors I'm getting, it looks like there's trouble with import (I just did a fresh install of the template to make sure I was recreating the initial bug correctly)
4:50:09 PM [vite] Error when evaluating SSR module /src/lib/lucia.ts:
|- Error: Could not locate the bindings file. Tried:
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/out/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/out/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/default/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/compiled/20.10.0/darwin/arm64/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/release/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/debug/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/default/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/binding/node-v115-darwin-arm64/better_sqlite3.node
at bindings (/Users/nicholasbaier/absent-asteroid/node_modules/bindings/bindings.js:126:9)
at new Database (/Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/database.js:48:64)
at Proxy.Database (/Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/database.js:11:10)
at eval (/Users/nicholasbaier/absent-asteroid/src/lib/lucia.ts:13:41)
at async instantiateModule (file:///Users/nicholasbaier/absent-asteroid/node_modules/vite/dist/node/chunks/dep-68d1a114.js:56052:9)
4:50:09 PM [vite] Error when evaluating SSR module /src/middleware.ts: failed to import "/src/lib/lucia.ts"
|- Error: Could not locate the bindings file. Tried:
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/out/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/out/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/default/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/compiled/20.10.0/darwin/arm64/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/release/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/debug/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/default/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/binding/node-v115-darwin-arm64/better_sqlite3.node
at bindings (/Users/nicholasbaier/absent-asteroid/node_modules/bindings/bindings.js:126:9)
at new Database (/Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/database.js:48:64)
at Proxy.Database (/Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/database.js:11:10)
at eval (/Users/nicholasbaier/absent-asteroid/src/lib/lucia.ts:13:41)
at async instantiateModule (file:///Users/nicholasbaier/absent-asteroid/node_modules/vite/dist/node/chunks/dep-68d1a114.js:56052:9)
4:50:09 PM [vite] Error when evaluating SSR module astro-internal:middleware: failed to import "/src/middleware.ts"
|- Error: Could not locate the bindings file. Tried:
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/out/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/Debug/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/out/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/Release/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/build/default/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/compiled/20.10.0/darwin/arm64/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/release/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/debug/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/addon-build/default/install-root/better_sqlite3.node
→ /Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/binding/node-v115-darwin-arm64/better_sqlite3.node
at bindings (/Users/nicholasbaier/absent-asteroid/node_modules/bindings/bindings.js:126:9)
at new Database (/Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/database.js:48:64)
at Proxy.Database (/Users/nicholasbaier/absent-asteroid/node_modules/better-sqlite3/lib/database.js:11:10)
at eval (/Users/nicholasbaier/absent-asteroid/src/lib/lucia.ts:13:41)
at async instantiateModule (file:///Users/nicholasbaier/absent-asteroid/node_modules/vite/dist/node/chunks/dep-68d1a114.js:56052:9)
error Cannot read properties of undefined (reading 'validate')
File:
/Users/nicholasbaier/absent-asteroid/src/pages/index.astro:4:41
Code:
> 4 | const session = await Astro.locals.auth.validate();
| ^
5 | if (!session) return Astro.redirect("/login", 302);
6 | ---
Stacktrace:
TypeError: Cannot read properties of undefined (reading 'validate')
at /Users/nicholasbaier/absent-asteroid/src/pages/index.astro:4:41
at index (/Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/runtime/server/astro-component.js:18:12)
at callComponentAsTemplateResultOrResponse (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/runtime/server/render/astro/render.js:85:31)
at renderToReadableStream (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/runtime/server/render/astro/render.js:35:32)
at renderPage (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/runtime/server/render/page.js:29:18)
at renderPage (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/core/render/core.js:56:26)
at #tryRenderRoute (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/core/pipeline.js:115:24)
at DevPipeline.renderRoute (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/core/pipeline.js:58:46)
at handleRoute (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/vite-plugin-astro-server/route.js:229:33)
at async run (file:///Users/nicholasbaier/absent-asteroid/node_modules/astro/dist/vite-plugin-astro-server/request.js:53:14)
from lucia.
Thanks!
from lucia.
Related Issues (20)
- oauth and nuxt tutortial (using mongodb)
- [Feature Request]: Telegram Mini App AND Lucia Auth HOT 1
- [Bug]: @lucia-auth/adapter-prisma HOT 1
- [Bug]: switch to hash @node-rs/argon2 breaks sveltekit production builds HOT 15
- [Feature Request]: battle.net HOT 1
- [Bug]: TypeError [ERR_INVALID_ARG_TYPE]: The "string" argument must be of type string or an instance of Buffer or ArrayBuffer. Received an instance of Date HOT 7
- [Bug]: Session validate response is null, validateSession returns null HOT 5
- [Docs]: missing import in example code HOT 4
- [Docs]: Code example with astro integration not working HOT 1
- [Docs]: Astro passwort/username guide contain typo HOT 1
- how can i define a one to one extra DatabaseUserAttributes HOT 6
- [Docs]: typo in docs, related to nextJs HOT 3
- [Docs]: Usage of MongoDb adapter HOT 1
- [Bug]: Could not resolve "lucia/utils" when running 'wrangler dev' HOT 1
- [Docs]: Astro CSRF protection
- [Docs]: OAuth docs HOT 3
- [Bug]: Error: × You're importing a component that needs next/headers. That only works in a Server Component which is not supported in the pages/ directory. HOT 4
- [Docs]: Database integration and data model names enforcement
- [Bug]: Typescript performance issue HOT 1
- [Feature Request]: deleteUserSessions except for the current HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lucia.