Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update effect schema 0.68.27 #93

Merged
merged 27 commits into from
Sep 3, 2024

Conversation

suddenlyGiovanni
Copy link
Owner

No description provided.

Copy link

changeset-bot bot commented Sep 3, 2024

🦋 Changeset detected

Latest commit: f8e29af

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@suddenlygiovanni/resume Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@suddenlyGiovanni suddenlyGiovanni force-pushed the renovate/effect-schema-0_68_27 branch 2 times, most recently from b4e65d0 to b963073 Compare September 3, 2024 17:34
## 0.68.1

### Patch Changes

- [#3015](Effect-TS/effect#3015) [`b51e266`](Effect-TS/effect@b51e266) - Fix handling of `exact` option overrides in `AST.ParseOptions`
  This commit resolves a bug affecting the `exact` option within `AST.ParseOptions`. Previously, the implementation failed to correctly incorporate overrides for the `exact` setting, resulting in the parser not respecting the specified behavior in extended configurations.
  - Improve error messaging in `Pretty.make` for unmatched union schemas
- Updated dependencies [[`6c89408`](Effect-TS/effect@6c89408)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3024](Effect-TS/effect#3024) [`eb341b3`](Effect-TS/effect@eb341b3) - Replace `Types.Simplify` with a custom `Simplify` to restore nice types for `pick` and `omit`

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3028](Effect-TS/effect#3028) [`d473800`](Effect-TS/effect@d473800) - Introducing Customizable Parsing Behavior at the Schema Level, closes #3027

  With this latest update, developers can now set specific parse options for each schema using the `parseOptions` annotation. This flexibility allows for precise parsing behaviors across different levels of your schema hierarchy, giving you the ability to override settings in parent schemas and propagate settings to nested schemas as needed.

  Here's how you can leverage this new feature:

  ```ts
  import { Schema } from "@effect/schema"
  import { Either } from "effect"

  const schema = Schema.Struct({
    a: Schema.Struct({
      b: Schema.String,
      c: Schema.String
    }).annotations({
      title: "first error only",
      parseOptions: { errors: "first" } // Only the first error in this sub-schema is reported
    }),
    d: Schema.String
  }).annotations({
    title: "all errors",
    parseOptions: { errors: "all" } // All errors in the main schema are reported
  })

  const result = Schema.decodeUnknownEither(schema)(
    { a: {} },
    { errors: "first" }
  )
  if (Either.isLeft(result)) {
    console.log(result.left.message)
  }
  /*
  all errors
  ├─ ["d"]
  │  └─ is missing
  └─ ["a"]
     └─ first error only
        └─ ["b"]
           └─ is missing
  */
  ```

  **Detailed Output Explanation:**

  In this example:

  - The main schema is configured to display all errors. Hence, you will see errors related to both the `d` field (since it's missing) and any errors from the `a` subschema.
  - The subschema (`a`) is set to display only the first error. Although both `b` and `c` fields are missing, only the first missing field (`b`) is reported.

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3043](Effect-TS/effect#3043) [`1d62815`](Effect-TS/effect@1d62815) - Add `make` constructor to `Class`-based APIs, closes #3042

  Introduced a `make` constructor to class-based APIs to facilitate easier instantiation of classes. This method allows developers to create instances of a class without directly using the `new` keyword.

  **Example**

  ```ts
  import { Schema } from "@effect/schema"

  class MyClass extends Schema.Class<MyClass>("MyClass")({
    someField: Schema.String
  }) {
    someMethod() {
      return this.someField + "bar"
    }
  }

  // Create an instance of MyClass using the make constructor
  const instance = MyClass.make({ someField: "foo" }) // same as new MyClass({ someField: "foo" })

  // Outputs to console to demonstrate that the instance is correctly created
  console.log(instance instanceof MyClass) // true
  console.log(instance.someField) // "foo"
  console.log(instance.someMethod()) // "foobar"

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3046](Effect-TS/effect#3046) [`530fa9e`](Effect-TS/effect@530fa9e) - Fix error message display for composite errors when `overwrite = false`

  This commit resolves an issue where the custom message for a struct (or tuple or union) was displayed regardless of whether the validation error was related to the entire struct or just a specific part of it. Previously, users would see the custom error message even when the error only concerned a particular field within the struct and the flag `overwrite` was not set to `true`.

  ```ts
  import { Schema, TreeFormatter } from "@effect/schema"
  import { Either } from "effect"

  const schema = Schema.Struct({
    a: Schema.String
  }).annotations({ message: () => "custom message" })

  const res = Schema.decodeUnknownEither(schema)({ a: null })
  if (Either.isLeft(res)) {
    console.log(TreeFormatter.formatErrorSync(res.left))
    // before: custom message
    // now: { readonly a: string }
    //      └─ ["a"]
    //         └─ Expected string, actual null
  }
  ```

Signed-off-by: Giovanni Ravalico <[email protected]>
- Updated dependencies [[`66a1910`](Effect-TS/effect@66a1910)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3070](Effect-TS/effect#3070) [`192261b`](Effect-TS/effect@192261b) - Add `refineTypeId` unique symbol to the `refine` interface to ensure correct inference of `Fields` in the Class APIs, closes #3063

- Updated dependencies [[`3da1497`](Effect-TS/effect@3da1497)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3074](Effect-TS/effect#3074) [`0b47fdf`](Effect-TS/effect@0b47fdf) - Revert the 0.67.22 patch as it is causing issues with other array filters, closes #3073

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3079](Effect-TS/effect#3079) [`bbdd365`](Effect-TS/effect@bbdd365) - update dependencies

- [#3079](Effect-TS/effect#3079) [`bbdd365`](Effect-TS/effect@bbdd365) - update to typescript 5.5

- Updated dependencies [[`c342739`](Effect-TS/effect@c342739), [`8898e5e`](Effect-TS/effect@8898e5e), [`ff78636`](Effect-TS/effect@ff78636), [`c86bd4e`](Effect-TS/effect@c86bd4e), [`bbdd365`](Effect-TS/effect@bbdd365)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3087](Effect-TS/effect#3087) [`d71c192`](Effect-TS/effect@d71c192) - Special case `S.parseJson` to generate JSON Schemas by targeting the "to" side of transformations, closes #3086

  Resolved an issue where `JSONSchema.make` improperly generated JSON Schemas for schemas defined with `S.parseJson(<real schema>)`. Previously, invoking `JSONSchema.make` on these transformed schemas produced a JSON Schema corresponding to a string type rather than the underlying real schema.

  Before

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  // Define a schema that parses a JSON string into a structured object
  const schema = Schema.parseJson(
    Schema.Struct({
      a: Schema.parseJson(Schema.NumberFromString) // Nested parsing from JSON string to number
    })
  )

  console.log(JSONSchema.make(schema))
  /*
  {
    '$schema': 'http://json-schema.org/draft-07/schema#',
    '$ref': '#/$defs/JsonString',
    '$defs': {
      JsonString: {
        type: 'string',
        description: 'a JSON string',
        title: 'JsonString'
      }
    }
  }
  */
  ```

  Now

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  // Define a schema that parses a JSON string into a structured object
  const schema = Schema.parseJson(
    Schema.Struct({
      a: Schema.parseJson(Schema.NumberFromString) // Nested parsing from JSON string to number
    })
  )

  console.log(JSONSchema.make(schema))
  /*
  {
    '$schema': 'http://json-schema.org/draft-07/schema#',
    type: 'object',
    required: [ 'a' ],
    properties: { a: { type: 'string', description: 'a string', title: 'string' } },
    additionalProperties: false
  }
  */
  ```

- Updated dependencies [[`72638e3`](Effect-TS/effect@72638e3), [`d7dde2b`](Effect-TS/effect@d7dde2b), [`9b2fc3b`](Effect-TS/effect@9b2fc3b)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3101](Effect-TS/effect#3101) [`d990544`]
(Effect-TS/effect@d990544) - Generate JSON Schemas correctly for a schema created by extending two refinements using the `extend` API, ensuring their JSON Schema annotations are preserved.

  Example

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Struct({
    a: Schema.String
  })
    .pipe(Schema.filter(() => true, { jsonSchema: { a: 1 } }))
    .pipe(
      Schema.extend(
        Schema.Struct({
          b: Schema.Number
        }).pipe(Schema.filter(() => true, { jsonSchema: { b: 2 } }))
      )
    )

  console.log(JSONSchema.make(schema))
  /*
  {
    '$schema': 'http://json-schema.org/draft-07/schema#',
    type: 'object',
    required: [ 'a', 'b' ],
    properties: {
      a: { type: 'string', description: 'a string', title: 'string' },
      b: { type: 'number', description: 'a number', title: 'number' }
    },
    additionalProperties: false,
    b: 2,
    a: 1
  }
  */
  ```

- Updated dependencies [[`a047af9`](Effect-TS/effect@a047af9)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3117](Effect-TS/effect#3117) [`cb76bcb`](Effect-TS/effect@cb76bcb) - Modified `JSONSchema.make` to selectively ignore the `title` and `description` fields in schema types such as `Schema.String`, `Schema.Number`, and `Schema.Boolean`, closes #3116

  Before

  ```ts
  import { JSONSchema, Schema as S } from "@effect/schema"

  const schema = S.Struct({
    foo: S.String,
    bar: S.Number
  })

  console.log(JSONSchema.make(schema))
  /*
  {
    '$schema': 'http://json-schema.org/draft-07/schema#',
    type: 'object',
    required: [ 'foo', 'bar' ],
    properties: {
      foo: { type: 'string', description: 'a string', title: 'string' },
      bar: { type: 'number', description: 'a number', title: 'number' }
    },
    additionalProperties: false
  }
  */
  ```

  Now

  ```ts
  import { JSONSchema, Schema as S } from "@effect/schema"

  const schema = S.Struct({
    foo: S.String,
    bar: S.Number
  })

  console.log(JSONSchema.make(schema))
  /*
  {
    '$schema': 'http://json-schema.org/draft-07/schema#',
    type: 'object',
    required: [ 'foo', 'bar' ],
    properties: { foo: { type: 'string' }, bar: { type: 'number' } },
    additionalProperties: false
  }
  */
  ```

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3125](Effect-TS/effect#3125) [`61e5964`](Effect-TS/effect@61e5964) - Add support for Union, Suspend, and Refinement as the second argument of extend, closes #3124

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3130](Effect-TS/effect#3130) [`34faeb6`](Effect-TS/effect@34faeb6) - Add `ReadonlyMapFromRecord` and `MapFromRecord`, closes #3119

  - decoding
    - `{ readonly [x: string]: VI }` -> `ReadonlyMap<KA, VA>`
  - encoding
    - `ReadonlyMap<KA, VA>` -> `{ readonly [x: string]: VI }`

  ```ts
  import { Schema } from "@effect/schema"

  const schema = Schema.ReadonlyMapFromRecord({
    key: Schema.BigInt,
    value: Schema.NumberFromString
  })

  const decode = Schema.decodeUnknownSync(schema)
  const encode = Schema.encodeSync(schema)

  console.log(
    decode({
      "1": "4",
      "2": "5",
      "3": "6"
    })
  ) // Map(3) { 1n => 4, 2n => 5, 3n => 6 }
  console.log(
    encode(
      new Map([
        [1n, 4],
        [2n, 5],
        [3n, 6]
      ])
    )
  ) // { '1': '4', '2': '5', '3': '6' }
  ```

- Updated dependencies [[`5c0ceb0`](Effect-TS/effect@5c0ceb0), [`5c0ceb0`](Effect-TS/effect@5c0ceb0), [`33735b1`](Effect-TS/effect@33735b1), [`5c0ceb0`](Effect-TS/effect@5c0ceb0), [`139d4b3`](Effect-TS/effect@139d4b3)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3143](Effect-TS/effect#3143) [`d006cec`](Effect-TS/effect@d006cec) - Enhance JSON Schema Support for Refinements in Record Parameters.

  Enhanced `JSONSchema.make` to properly support refinements as record parameters. Previously, using refinements with `Schema.Record` resulted in errors when generating JSON schemas.

  Before

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Record(
    Schema.String.pipe(Schema.minLength(1)),
    Schema.Number
  )

  console.log(JSONSchema.make(schema))
  /*
  throws
  Error: Unsupported index signature parameter
  schema (Refinement): a string at least 1 character(s) long
  */
  ```

  Now

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Record(
    Schema.String.pipe(Schema.minLength(1)),
    Schema.Number
  )

  console.log(JSONSchema.make(schema))
  /*
  Output:
  {
    '$schema': 'http://json-schema.org/draft-07/schema#',
    type: 'object',
    required: [],
    properties: {},
    patternProperties: { '': { type: 'number' } },
    propertyNames: {
      type: 'string',
      description: 'a string at least 1 character(s) long',
      minLength: 1
    }
  }
  */
  ```

- [#3149](Effect-TS/effect#3149) [`cb22726`](Effect-TS/effect@cb22726) - add Serializable.WithResult.Success/Error inference helpers

- [#3139](Effect-TS/effect#3139) [`e911cfd`](Effect-TS/effect@e911cfd) - Optimize JSON Schema output for homogeneous tuples (such as non empty arrays).

  This change corrects the JSON Schema generation for `S.NonEmptyArray` to eliminate redundant schema definitions. Previously, the element schema was unnecessarily duplicated under both `items` and `additionalItems`.

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3166](Effect-TS/effect#3166) [`15967cf`](Effect-TS/effect@15967cf) - Add `filterEffect` API, closes #3165

  The `filterEffect` function enhances the `filter` functionality by allowing the integration of effects, thus enabling asynchronous or dynamic validation scenarios. This is particularly useful when validations need to perform operations that require side effects, such as network requests or database queries.

  **Example: Validating Usernames Asynchronously**

  ```ts
  import { Schema } from "@effect/schema"
  import { Effect } from "effect"

  async function validateUsername(username: string) {
    return Promise.resolve(username === "gcanti")
  }

  const ValidUsername = Schema.String.pipe(
    Schema.filterEffect((username) =>
      Effect.promise(() =>
        validateUsername(username).then((valid) => valid || "Invalid username")
      )
    )
  ).annotations({ identifier: "ValidUsername" })

  Effect.runPromise(Schema.decodeUnknown(ValidUsername)("xxx")).then(
    console.log
  )
  /*
  ParseError: ValidUsername
  └─ Transformation process failure
     └─ Invalid username
  */
  ```

- [#3163](Effect-TS/effect#3163) [`2328e17`](Effect-TS/effect@2328e17) - Add `pick` and `omit` static functions to `Struct` interface, closes #3152.

  **pick**

  The `pick` static function available in each struct schema can be used to create a new `Struct` by selecting particular properties from an existing `Struct`.

  ```ts
  import { Schema } from "@effect/schema"

  const MyStruct = Schema.Struct({
    a: Schema.String,
    b: Schema.Number,
    c: Schema.Boolean
  })

  // Schema.Struct<{ a: typeof Schema.String; c: typeof Schema.Boolean; }>
  const PickedSchema = MyStruct.pick("a", "c")
  ```

  **omit**

  The `omit` static function available in each struct schema can be used to create a new `Struct` by excluding particular properties from an existing `Struct`.

  ```ts
  import { Schema } from "@effect/schema"

  const MyStruct = Schema.Struct({
    a: Schema.String,
    b: Schema.Number,
    c: Schema.Boolean
  })

  // Schema.Struct<{ a: typeof Schema.String; c: typeof Schema.Boolean; }>
  const PickedSchema = MyStruct.omit("b")
  ```

- Updated dependencies [[`a5737d6`](Effect-TS/effect@a5737d6)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3192](Effect-TS/effect#3192) [`5d5cc6c`](Effect-TS/effect@5d5cc6c) - Support `Capitalize` `Uncapitalize` filters and schemas

- [#3148](Effect-TS/effect#3148) [`359ff8a`](Effect-TS/effect@359ff8a) - add `Serializable.Serializable.Type` and `Serializable.Serializable.Encoded`

- [#3198](Effect-TS/effect#3198) [`f7534b9`](Effect-TS/effect@f7534b9) - Add `toString` to `AST.PropertySignature` and `AST.IndexSignature` and fix type display for IndexSignature.

  **Before the Change**

  Previously, when a type mismatch occurred in `Schema.decodeUnknownSync`, the error message displayed for `IndexSignature` was not accurately representing the type used. For example:

  ```typescript
  import { Schema } from "@effect/schema"

  const schema = Schema.Record(Schema.Char, Schema.String)

  Schema.decodeUnknownSync(schema)({ a: 1 })
  /*
  throws
  ParseError: { readonly [x: string]: string }
  └─ ["a"]
     └─ Expected string, actual 1
  */
  ```

  This output incorrectly indicated `[x: string]` when the actual index type was `Char`.

  **After the Change**

  The `toString` implementation now correctly reflects the type used in `IndexSignature`, providing more accurate and informative error messages:

  ```ts
  import { Schema } from "@effect/schema"

  const schema = Schema.Record(Schema.Char, Schema.String)

  Schema.decodeUnknownSync(schema)({ a: 1 })
  /*
  throws
  ParseError: { readonly [x: Char]: string }
  └─ ["a"]
     └─ Expected string, actual 1
  */
  ```

  The updated output now correctly displays `{ readonly [x: Char]: string }`, aligning the error messages with the actual data types used in the schema.

- Updated dependencies [[`a435e0f`](Effect-TS/effect@a435e0f), [`b5554db`](Effect-TS/effect@b5554db), [`a9c4fb3`](Effect-TS/effect@a9c4fb3)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- Updated dependencies [[`7af137c`](Effect-TS/effect@7af137c), [`ee4b3dc`](Effect-TS/effect@ee4b3dc), [`097d25c`](Effect-TS/effect@097d25c)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- Updated dependencies [[`55fdd76`](Effect-TS/effect@55fdd76)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- Updated dependencies [[`639208e`](Effect-TS/effect@639208e), [`6684b4c`](Effect-TS/effect@6684b4c), [`6684b4c`](Effect-TS/effect@6684b4c), [`6684b4c`](Effect-TS/effect@6684b4c)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3234](Effect-TS/effect#3234) [`edb0da3`](Effect-TS/effect@edb0da3) - ensure Schema.TaggedError renders a .cause correctly

- Updated dependencies [[`edb0da3`](Effect-TS/effect@edb0da3), [`c8d3fb0`](Effect-TS/effect@c8d3fb0), [`dabd028`](Effect-TS/effect@dabd028), [`786b2ab`](Effect-TS/effect@786b2ab), [`fc57354`](Effect-TS/effect@fc57354)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3253](Effect-TS/effect#3253) [`ed0dde4`](Effect-TS/effect@ed0dde4) - update dependencies

- Updated dependencies [[`ed0dde4`](Effect-TS/effect@ed0dde4), [`ca775ce`](Effect-TS/effect@ca775ce), [`5be9cc0`](Effect-TS/effect@5be9cc0), [`203658f`](Effect-TS/effect@203658f), [`eb1c4d4`](Effect-TS/effect@eb1c4d4)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- Updated dependencies [[`a9d7800`](Effect-TS/effect@a9d7800)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3287](Effect-TS/effect#3287) [`f0285d3`](Effect-TS/effect@f0285d3) - JSON Schema: change default behavior for property signatures containing `undefined`

  Changed the default behavior when encountering a required property signature whose type contains `undefined`. Instead of raising an exception, `undefined` is now pruned and **the field is set as optional**.

  Before

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Struct({
    a: Schema.NullishOr(Schema.Number)
  })

  const jsonSchema = JSONSchema.make(schema)
  console.log(JSON.stringify(jsonSchema, null, 2))
  /*
  throws
  Error: Missing annotation
  at path: ["a"]
  details: Generating a JSON Schema for this schema requires a "jsonSchema" annotation
  schema (UndefinedKeyword): undefined
  */
  ```

  Now

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Struct({
    a: Schema.NullishOr(Schema.Number)
  })

  const jsonSchema = JSONSchema.make(schema)
  console.log(JSON.stringify(jsonSchema, null, 2))
  /*
  {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "type": "object",
    "required": [], // <=== empty
    "properties": {
      "a": {
        "anyOf": [
          {
            "type": "number"
          },
          {
            "$ref": "#/$defs/null"
          }
        ]
      }
    },
    "additionalProperties": false,
    "$defs": {
      "null": {
        "const": null
      }
    }
  }
  */
  ```

- [#3291](Effect-TS/effect#3291) [`8ec4955`](Effect-TS/effect@8ec4955) - remove type-level error message from `optional` signature, closes #3290

  This fix eliminates the type-level error message from the `optional` function signature, which was causing issues in generic contexts.

- [#3284](Effect-TS/effect#3284) [`3ac2d76`](Effect-TS/effect@3ac2d76) - Fix: Correct Handling of JSON Schema Annotations in Refinements

  Fixes an issue where the JSON schema annotation set by a refinement after a transformation was mistakenly interpreted as an override annotation. This caused the output to be incorrect, as the annotations were not applied as intended.

  Before

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Trim.pipe(Schema.nonEmpty())

  const jsonSchema = JSONSchema.make(schema)
  console.log(JSON.stringify(jsonSchema, null, 2))
  /*
  {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "minLength": 1
  }
  */
  ```

  Now

  ```ts
  import { JSONSchema, Schema } from "@effect/schema"

  const schema = Schema.Trim.pipe(Schema.nonEmpty())

  const jsonSchema = JSONSchema.make(schema)
  console.log(JSON.stringify(jsonSchema, null, 2))
  /*
  {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "type": "string"
  }
  */
  ```

- Updated dependencies [[`cc327a1`](Effect-TS/effect@cc327a1), [`4bfe4fb`](Effect-TS/effect@4bfe4fb), [`2b14d18`](Effect-TS/effect@2b14d18)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
- [#3310](Effect-TS/effect#3310) [`99bddcf`](Effect-TS/effect@99bddcf) - Added additional pure annotations to improve tree-shakeability

- [#3311](Effect-TS/effect#3311) [`6921c4f`](Effect-TS/effect@6921c4f) - Remove incorrect static override type annotations in class definitions.

  This will also improve tree-shakeability.

- Updated dependencies [[`3afcc93`](Effect-TS/effect@3afcc93), [`99bddcf`](Effect-TS/effect@99bddcf)]:
  - [email protected]

Signed-off-by: Giovanni Ravalico <[email protected]>
@suddenlyGiovanni suddenlyGiovanni merged commit 29202b5 into main Sep 3, 2024
7 checks passed
@suddenlyGiovanni suddenlyGiovanni deleted the renovate/effect-schema-0_68_27 branch September 3, 2024 18:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant