Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@prisma/prisma-schema-wasm

prisma864.3kApache-2.06.3.0-16.eb5bc5493ac383a8fe3c3e7fabfc93e4d44ca21eTypeScript support: included

The WASM package for prisma-fmt

readme

@prisma/prisma-schema-wasm

Publish pipeline npm package install size

This directory only contains build logic to package the prisma-fmt engine into a Node package as a WASM module. All the functionality is implemented in other parts of prisma-engines.

The published NPM package is internal to Prisma. Its API will break without prior warning.

Example

node -e "const prismaSchema = require('@prisma/prisma-schema-wasm'); console.log(prismaSchema.version())"

Components

Local Dev with Language-Tools

When implementing features for language-tools in prisma-engines, to sync with your local dev environment for the language-server, one can do the following:

On first setup

# Install the latest Rust version with `rustup`
# or update the latest Rust version with `rustup`
rustup update
rustup target add wasm32-unknown-unknown
cargo update -p wasm-bindgen
# Check the version defined in `prisma-schema-wasm/cargo.toml` for `wasm-bindgen` and replace `version` below:
cargo install -f wasm-bindgen-cli@version

On Changes

./prisma-schema-wasm/scripts/update-schema-wasm.sh

This script has the following expectations:

  • language-tools is in the same dir as prisma-engines
    • i.e. dir/{prisma-engines,language-tools}
  • it's run in the prisma-engines root folder