blitz-js / blitz-js/blitz

BigInt in Session causes Do not know how to serialize a BigInt

Open
#3,281 2 comments 0 reactions 0 assignees View on GitHub
kind/bug status/ready-to-work-on toolkit
Dominant language
TypeScript
Stars
14.1k
Forks
803
PR merge metrics
No merged PRs in 30d

Description

### What is the problem?

`createSessionToken` uses `JSON.stringify` on the publicData being passed in, which doesn’t support BigInt. Seems like a use case for [superjson](https://github.com/blitz-js/superjson#backstory) instead?

### Paste all your error logs here:

TypeError Do not know how to serialize a BigInt
error stack:
• blitzjs-core-server.cjs.dev.js:805 createSessionToken
node_modules/@blitzjs/core/server/dist/blitzjs-core-server.cjs.dev.js:805:29

• blitzjs-core-server.cjs.dev.js:1167 createNewSession
node_modules/@blitzjs/core/server/dist/blitzjs-core-server.cjs.dev.js:1167:24
• blitzjs-core-server.cjs.dev.js:729 $create
```

### Paste all relevant code snippets here:

TypeError Do not know how to serialize a BigInt
error stack:
• blitzjs-core-server.cjs.dev.js:805 createSessionToken
node_modules/@blitzjs/core/server/dist/blitzjs-core-server.cjs.dev.js:805:29

• blitzjs-core-server.cjs.dev.js:1167 createNewSession
node_modules/@blitzjs/core/server/dist/blitzjs-core-server.cjs.dev.js:1167:24
• blitzjs-core-server.cjs.dev.js:729 $create
```

### What are detailed steps to reproduce this?

1. Use BigInt in Schema
2. Create a session variable with BigInt

### Run `blitz -v` and paste the output here:

```
macOS Monterey | darwin-arm64 | Node: v16.10.0

blitz: 0.45.3 (global)
blitz: 0.45.3 (local)

Package manager: yarn
System:
OS: macOS 12.3.1
CPU: (8) arm64 Apple M1
Memory: 263.78 MB / 16.00 GB
Shell: 5.8 - /bin/zsh
Binaries:
Node: 16.10.0 - ~/.nvm/versions/node/v16.10.0/bin/node
Yarn: 1.22.18 - ~/.yarn/bin/yarn
npm: 7.24.0 - ~/.nvm/versions/node/v16.10.0/bin/npm
Watchman: 2022.03.14.00 - /usr/local/bin/watchman
npmPackages:
@prisma/client: 3.12.0 => 3.12.0
blitz: 0.45.3 => 0.45.3
prisma: 3.12.0 => 3.12.0
react: 18.0.0-beta-149b420f6-20211119 => 18.0.0-beta-149b420f6-20211119
react-dom: 18.0.0-alpha-5ca4b0433-20211020 => 18.0.0-alpha-5ca4b0433-20211020
typescript: ~4.5 => 4.5.5
```

### Please include below any other applicable logs and screenshots that show your problem:
cc @dillonraphael
_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.