Comments (7)
Seems like a duplicate of #113
We're seeing this issue with v3.22.5
. While I can't tell any noticeable issues, I'd prefer not to see these logs when building my app
from zod-to-json-schema.
This happens to me as well after upgrading to version 3.23.5 of ZOD
Sveltekit Project,
zod version -> zod3.23.5 on build :
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/array.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/branded.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/catch.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/default.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/effects.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/map.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/map.js -> node_modules/zod-to-json-schema/dist/esm/parsers/record.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js -> node_modules/zod-to-json-schema/dist/esm/parsers/union.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/object.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/optional.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/promise.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/set.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
Circular dependency: node_modules/zod-to-json-schema/dist/esm/parseDef.js -> node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js -> node_modules/zod-to-json-schema/dist/esm/parseDef.js
from zod-to-json-schema.
Thanks for opening an issue. Is this an actual problem?
from zod-to-json-schema.
Thanks for opening an issue. Is this an actual problem?
more of an unconformity since it apparently does not break the app, just nasty logs at build
from zod-to-json-schema.
Also, this doesn't seem like a hard fix either.
The first import is a type and the second import could be made into an argument of the function to break the cycle. That's probably the least invasive way
import { ZodDefaultDef } from "zod";
import type { JsonSchema7Type, ParseDefFunc } from "../parseDef.js";
import { Refs } from "../Refs.js";
export function parseDefaultDef(
_def: ZodDefaultDef,
refs: Refs,
parseDef: ParseDefFunc,
): JsonSchema7Type & { default: any } {
return {
...parseDef(_def.innerType._def, refs),
default: _def.defaultValue(),
};
}
There are other ways to break cycles but this seems to require the least amount of rework to the code
from zod-to-json-schema.
I'm hesitant to change the structure of the code to accommodate weird bundler behavior when there's nothing wrong with it.
I'd prefer not to see these logs when building my app
Maybe there are some log level settings you can try?
Not closing the issue, mind. It's just not super high on the list of priorities ATM. :)
from zod-to-json-schema.
I got the exact same problem in my project. Noticed it's been reported over at ciscoheat/sveltekit-superforms#350 as well.
from zod-to-json-schema.
Related Issues (20)
- String regex-pattern flags are discarded during conversion HOT 3
- 3.23.0 is missing a changelog entry HOT 1
- How to validate a ReadableStream response? HOT 3
- Add title property of JSON Schema from zod definitions HOT 3
- Schema refs are assigned regardless of `.describe()` calls HOT 3
- Certain schemas to define a record's keys are discarded HOT 1
- Is it possible to force a normalized output ? HOT 5
- SyntaxError: Invalid RegExp: Invalid escape, js engine: hermes HOT 3
- `z.Date()` resolves to a `string` type with a `date-time` check HOT 2
- The `coerce` config is lost during conversion HOT 2
- Emoji regex is not supported in some environments HOT 2
- Cleaner way of turning zod objects to json schema with Typescript support HOT 2
- Intersections with common objects result in two schemas under `allOf`, which cannot be satisfied HOT 1
- deprected support ? HOT 1
- Ability to specify title of an object HOT 1
- Uint8Array support HOT 1
- Support direct conversion of `.nullable()` to `"type": ["string", "null"]` in JSON schema output HOT 4
- Is this package compatible with @types/json-schema? HOT 1
- Open AI compatibility
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 zod-to-json-schema.