Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 10, 2025

Bumps @effect/language-service from 0.60.0 to 0.62.0.

Release notes

Sourced from @​effect/language-service's releases.

v0.62.0

Minor Changes

  • #528 7dc14cf Thanks @​mattiamanzati! - Add typeToSchema codegen

    This adds a new // @effect-codegens typeToSchema codegen that automatically generates Effect Schema classes from TypeScript types. Given a type alias with object members representing schemas to generate (e.g., type ToGenerate = { UserSchema: User, TodoSchema: Todo }), the codegen will create the corresponding Schema class definitions.

    The generated schemas:

    • Automatically detect and reuse existing schema definitions in the file
    • Support both type aliases and interfaces
    • Include outdated detection to warn when the source type changes
    • Work with the outdatedEffectCodegen diagnostic to provide automatic fix actions

    Example usage:

    type User = {
      id: number;
      name: string;
    };
    // @​effect-codegens typeToSchema
    export type ToGenerate = {
    UserSchema: User;
    };
    // Generated by the codegen:
    export class UserSchema extends Schema.Class<UserSchema>("UserSchema")({
    id: Schema.Number,
    name: Schema.String,
    }) {}

Patch Changes

  • #530 5ecdc62 Thanks @​mattiamanzati! - Fix Refactor to Schema (Recursive Structural) to support exactOptionalPropertyTypes

    When exactOptionalPropertyTypes is enabled in tsconfig, optional properties with types like string | undefined are not assignable to types defined as prop?: string. This fix generates Schema.optionalWith(Schema.String, { exact: true }) instead of Schema.optional(Schema.Union(Schema.Undefined, Schema.String)) to maintain type compatibility with external libraries that don't always include undefined in their optional property types.

    Example:

    // With exactOptionalPropertyTypes enabled
    type User = {
      name?: string; // External library type (e.g., Stripe API)
    };
    // Generated schema now uses:
    Schema.optionalWith(Schema.String, { exact: true });

... (truncated)

Changelog

Sourced from @​effect/language-service's changelog.

0.62.0

Minor Changes

  • #528 7dc14cf Thanks @​mattiamanzati! - Add typeToSchema codegen

    This adds a new // @effect-codegens typeToSchema codegen that automatically generates Effect Schema classes from TypeScript types. Given a type alias with object members representing schemas to generate (e.g., type ToGenerate = { UserSchema: User, TodoSchema: Todo }), the codegen will create the corresponding Schema class definitions.

    The generated schemas:

    • Automatically detect and reuse existing schema definitions in the file
    • Support both type aliases and interfaces
    • Include outdated detection to warn when the source type changes
    • Work with the outdatedEffectCodegen diagnostic to provide automatic fix actions

    Example usage:

    type User = {
      id: number;
      name: string;
    };
    // @​effect-codegens typeToSchema
    export type ToGenerate = {
    UserSchema: User;
    };
    // Generated by the codegen:
    export class UserSchema extends Schema.Class<UserSchema>("UserSchema")({
    id: Schema.Number,
    name: Schema.String,
    }) {}

Patch Changes

  • #530 5ecdc62 Thanks @​mattiamanzati! - Fix Refactor to Schema (Recursive Structural) to support exactOptionalPropertyTypes

    When exactOptionalPropertyTypes is enabled in tsconfig, optional properties with types like string | undefined are not assignable to types defined as prop?: string. This fix generates Schema.optionalWith(Schema.String, { exact: true }) instead of Schema.optional(Schema.Union(Schema.Undefined, Schema.String)) to maintain type compatibility with external libraries that don't always include undefined in their optional property types.

    Example:

    // With exactOptionalPropertyTypes enabled
    type User = {
      name?: string; // External library type (e.g., Stripe API)
    };
    // Generated schema now uses:

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [@effect/language-service](https://github.com/Effect-TS/language-service) from 0.60.0 to 0.62.0.
- [Release notes](https://github.com/Effect-TS/language-service/releases)
- [Changelog](https://github.com/Effect-TS/language-service/blob/main/CHANGELOG.md)
- [Commits](Effect-TS/language-service@v0.60.0...v0.62.0)

---
updated-dependencies:
- dependency-name: "@effect/language-service"
  dependency-version: 0.62.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Dec 10, 2025
@github-actions github-actions bot merged commit 005c100 into Current Dec 10, 2025
6 of 9 checks passed
@github-actions github-actions bot deleted the dependabot/npm_and_yarn/effect/language-service-0.62.0 branch December 10, 2025 11:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants