feat(mongo): full index vocabulary, validators, and collection options #2386
ci.yml
on: pull_request
Build
1m 13s
Test
5m 39s
E2E Tests
2m 10s
Integration Tests
4m 57s
Coverage
6m 7s
Annotations
2 errors and 8 warnings
|
Integration Tests
Process completed with exit code 1.
|
|
test/cli.emit-command.test.ts > emit command > emits contract.json and contract.d.ts with Mongo contract.ts config:
test/integration/test/cli.emit-command.test.ts#L832
AssertionError: expected '// ⚠️ GENERATED FILE - DO NOT EDIT\n…' to contain 'readonly email: 1'
- Expected
+ Received
- readonly email: 1
+ // ⚠️ GENERATED FILE - DO NOT EDIT
+ // This file is automatically generated by 'prisma-next contract emit'.
+ // To regenerate, run: prisma-next contract emit
+ import type { CodecTypes as MongoCodecTypes } from '@prisma-next/adapter-mongo/codec-types';
+ import type { Vector } from '@prisma-next/adapter-mongo/codec-types';
+
+ import type { MongoContractWithTypeMaps, MongoTypeMaps } from '@prisma-next/mongo-contract';
+ import type {
+ Contract as ContractType,
+ ExecutionHashBase,
+ ProfileHashBase,
+ StorageHashBase,
+ } from '@prisma-next/contract/types';
+
+ export type StorageHash =
+ StorageHashBase<'sha256:7146bd2870044773881d126136be3b87f5b15d6456dafcdc30ac1d834cbbaa6b'>;
+ export type ExecutionHash = ExecutionHashBase<string>;
+ export type ProfileHash =
+ ProfileHashBase<'sha256:840de65fba7eb950a31487f74ee420b9c21205f38bce58579026747e0264e840'>;
+
+ export type CodecTypes = MongoCodecTypes;
+ export type OperationTypes = Record<string, never>;
+
+ export type FieldOutputTypes = {
+ readonly Bug: { readonly severity: CodecTypes['mongo/string@1']['output'] };
+ readonly Comment: {
+ readonly _id: CodecTypes['mongo/objectId@1']['output'];
+ readonly text: CodecTypes['mongo/string@1']['output'];
+ };
+ readonly Task: {
+ readonly _id: CodecTypes['mongo/objectId@1']['output'];
+ readonly type: CodecTypes['mongo/string@1']['output'];
+ readonly title: CodecTypes['mongo/string@1']['output'];
+ readonly assigneeId: CodecTypes['mongo/objectId@1']['output'];
+ };
+ readonly User: {
+ readonly _id: CodecTypes['mongo/objectId@1']['output'];
+ readonly email: CodecTypes['mongo/string@1']['output'];
+ };
+ };
+ export type TypeMaps = MongoTypeMaps<CodecTypes, OperationTypes, FieldOutputTypes>;
+
+ type ContractBase = ContractType<
+ {
+ readonly collections: {
+ readonly tasks: Record<string, never>;
+ readonly users: {
+ readonly indexes: readonly [
+ {
+ readonly keys: readonly [{ readonly field: 'email'; readonly direction: 1 }];
+ readonly unique: true;
+ },
+ ];
+ readonly options: { readonly collation: { readonly locale: 'en'; readonly strength: 2 } };
+ };
+ };
+ readonly storageHash: StorageHash;
+ },
+ {
+ readonly Bug: {
+ readonly fields: {
+ readonly severity: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly codecId: 'mongo/string@1' };
+ };
+ };
+ readonly relations: Record<string, never>;
+ readonly storage: { readonly collection: 'tasks' };
+ readonly base: 'Task';
+ };
+ readonly Comment: {
+ readonly fields: {
+ readonly _id: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly codecId: 'mongo/objectId@1' };
+ };
+ readonly text: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly codecId: 'mongo/string@1' };
+ };
+ };
+ readonly relations: Record<string, never>;
+ readonly storage: Record<string, never>;
+ readonly owner: 'Task';
+ };
+ readonly Task: {
+ readonly fields: {
+ readonly _id: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly codecId: 'mongo/objectId@1' };
+ };
+ readonly type: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly codecId: 'mongo/string@1' };
+ };
+ readonly title: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly codecId: 'mongo/string@1' };
+ };
+ readonly assigneeId: {
+ readonly nullable: false;
+ readonly type: { readonly kind: 'scalar'; readonly code
|
|
Lint
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Build
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Fixtures
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Type Check
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
E2E Tests
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Integration Tests
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Test
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
Coverage
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: jdx/mise-action@9dc7d5dd454262207dea3ab5a06a3df6afc8ff26, pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|