Skip to content
Effect Days 2026 Get your ticket

@effect/experimental

0.61.1

Patch Changes

0.61.0

Patch Changes

  • Updated dependencies [fffdee0]:
    • effect@3.22.0
    • @effect/platform@0.97.0

0.60.0

Patch Changes

0.59.0

Patch Changes

0.58.0

Patch Changes

0.57.11

Patch Changes

  • #5864 ebe2e52 Thanks @mattiamanzati! - Ensure Devtools Tracer does not cut off span options

  • Updated dependencies [3f9bbfe]:

    • effect@3.19.9

0.57.10

Patch Changes

  • #5847 96c9537 Thanks @tim-smart! - ensure PersistedQueue memory driver removes items

0.57.9

Patch Changes

  • #5837 811852a Thanks @tim-smart! - support idempotent offers to PersistedQueue

0.57.8

Patch Changes

  • #5829 7b2cd37 Thanks @tim-smart! - reset redis staging area on a schedule for PersistedQueue

0.57.7

Patch Changes

  • #5820 c379c45 Thanks @tim-smart! - ensure redis PersistedQueue removes stale pending items on reset

  • Updated dependencies [f03b8e5]:

    • effect@3.19.8

0.57.6

Patch Changes

  • #5816 a9206ce Thanks @tim-smart! - add dynamic batch size to PersistedQueue based on pending takers

0.57.5

Patch Changes

  • #5808 7b23d9a Thanks @tim-smart! - add PersistedQueue module

0.57.4

Patch Changes

  • #5773 9283499 Thanks @tim-smart! - add RateLimiter helpers makeWithRateLimiter and makeSleep

0.57.3

Patch Changes

  • #5763 1df657e Thanks @tim-smart! - fix RateLimiter fixed window alogrithim

0.57.2

Patch Changes

  • #5761 1deeb6a Thanks @tim-smart! - fix partial window calulation for fixed window rate limiter

  • Updated dependencies [e144f02]:

    • @effect/platform@0.93.3

0.57.1

Patch Changes

  • #5731 796a3b5 Thanks @tim-smart! - add persisted RateLimiter to @effect/experimental

0.57.0

Patch Changes

0.56.0

Patch Changes

0.55.0

Patch Changes

  • Updated dependencies [d4d86a8]:
    • @effect/platform@0.91.0

0.54.6

Patch Changes

  • #5385 9951993 Thanks @tim-smart! - add setMany to ResultPersistence

0.54.5

Patch Changes

  • #5365 b254747 Thanks @tim-smart! - only trigger Reactivity invalidation on successful mutation

0.54.4

Patch Changes

  • #5342 a9554ea Thanks @tim-smart! - add Reactivity accessor apis

  • #5344 1765ca8 Thanks @tim-smart! - add Reactivity.unsafeRegister

0.54.3

Patch Changes

  • #5307 1f028e5 Thanks @tim-smart! - locally provide EventLog service where possible

  • Updated dependencies [7d7c55d]:

    • effect@3.17.4

0.54.2

Patch Changes

  • #5299 0138aa5 Thanks @tim-smart! - use base64 for EventLog.Identity strings

0.54.1

Patch Changes

  • #5286 ffc17c6 Thanks @tim-smart! - add EventLog.layerIdentityKvs

0.54.0

Patch Changes

  • Updated dependencies [7813640]:
    • @effect/platform@0.90.0

0.53.0

Patch Changes

0.52.2

Patch Changes

  • #5219 d720f10 Thanks @tim-smart! - optimize experimental dataLoader

0.52.1

Patch Changes

  • #5211 d25f22b Thanks @mattiamanzati! - Removed some unnecessary single-arg pipe calls

  • Updated dependencies [f5dfabf, 17a5ea8, d25f22b]:

    • effect@3.16.14
    • @effect/platform@0.88.1

0.52.0

Patch Changes

0.51.14

Patch Changes

  • Updated dependencies [c1c05a8, 81fe4a2]:
    • effect@3.16.13
    • @effect/platform@0.87.13

0.51.13

Patch Changes

0.51.12

Patch Changes

0.51.11

Patch Changes

0.51.10

Patch Changes

  • Updated dependencies [54514a2]:
    • @effect/platform@0.87.9

0.51.9

Patch Changes

  • Updated dependencies [4ce4f82]:
    • @effect/platform@0.87.8

0.51.8

Patch Changes

0.51.7

Patch Changes

  • Updated dependencies [905da99]:
    • effect@3.16.12
    • @effect/platform@0.87.6

0.51.6

Patch Changes

  • #5144 96c1292 Thanks @tim-smart! - simplify VariantSchema Class types

0.51.5

Patch Changes

  • Updated dependencies [2fd8676]:
    • @effect/platform@0.87.5

0.51.4

Patch Changes

  • Updated dependencies [e82a4fd]:
    • @effect/platform@0.87.4

0.51.3

Patch Changes

  • Updated dependencies [1b6e396]:
    • @effect/platform@0.87.3

0.51.2

Patch Changes

0.51.1

Patch Changes

  • Updated dependencies [faad30e]:
    • effect@3.16.10
    • @effect/platform@0.87.1

0.51.0

Patch Changes

  • Updated dependencies [b5bac9a]:
    • @effect/platform@0.87.0

0.50.0

Patch Changes

0.49.2

Patch Changes

  • Updated dependencies [914a191]:
    • @effect/platform@0.85.2

0.49.1

Patch Changes

  • Updated dependencies [8cb98d5, db2dd3c]:
    • effect@3.16.8
    • @effect/platform@0.85.1

0.49.0

Patch Changes

0.48.12

Patch Changes

  • Updated dependencies [1bb0d8a]:
    • effect@3.16.7
    • @effect/platform@0.84.11

0.48.11

Patch Changes

0.48.10

Patch Changes

  • Updated dependencies [bf418ef]:
    • effect@3.16.5
    • @effect/platform@0.84.9

0.48.9

Patch Changes

  • Updated dependencies [8b9db77]:
    • @effect/platform@0.84.8

0.48.8

Patch Changes

  • Updated dependencies [74ab9a0, 770008e]:
    • effect@3.16.4
    • @effect/platform@0.84.7

0.48.7

Patch Changes

  • #4978 a2d57c9 Thanks @mattiamanzati! - Fix Machine initialize R argument

0.48.6

Patch Changes

  • Updated dependencies [ceea77a]:
    • @effect/platform@0.84.6

0.48.5

Patch Changes

  • Updated dependencies [ec52c6a]:
    • @effect/platform@0.84.5

0.48.4

Patch Changes

  • Updated dependencies [87722fc, 36217ee]:
    • effect@3.16.3
    • @effect/platform@0.84.4

0.48.3

Patch Changes

  • Updated dependencies [ab7684f]:
    • @effect/platform@0.84.3

0.48.2

Patch Changes

  • Updated dependencies [0ddf148]:
    • effect@3.16.2
    • @effect/platform@0.84.2

0.48.1

Patch Changes

  • Updated dependencies [71174d0, d615e6e]:
    • @effect/platform@0.84.1
    • effect@3.16.1

0.48.0

Patch Changes

0.47.0

Patch Changes

  • Updated dependencies [5522520, cc5bb2b]:
    • @effect/platform@0.83.0
    • effect@3.15.5

0.46.8

Patch Changes

  • Updated dependencies [0617b9d]:
    • @effect/platform@0.82.8

0.46.7

Patch Changes

0.46.6

Patch Changes

  • Updated dependencies [618903b]:
    • @effect/platform@0.82.6

0.46.5

Patch Changes

0.46.4

Patch Changes

0.46.3

Patch Changes

  • Updated dependencies [b8722b8, a328f4b]:
    • effect@3.15.2
    • @effect/platform@0.82.3

0.46.2

Patch Changes

  • Updated dependencies [739a3d4]:
    • @effect/platform@0.82.2

0.46.1

Patch Changes

0.46.0

Patch Changes

0.45.1

Patch Changes

  • Updated dependencies [24a9ebb]:
    • effect@3.14.22
    • @effect/platform@0.81.1

0.45.0

Patch Changes

  • Updated dependencies [672920f]:
    • @effect/platform@0.81.0

0.44.21

Patch Changes

  • Updated dependencies [2f3b7d4]:
    • effect@3.14.21
    • @effect/platform@0.80.21

0.44.20

Patch Changes

  • Updated dependencies [17e2f30]:
    • effect@3.14.20
    • @effect/platform@0.80.20

0.44.19

Patch Changes

0.44.18

Patch Changes

  • Updated dependencies [b1164d4]:
    • effect@3.14.18
    • @effect/platform@0.80.18

0.44.17

Patch Changes

  • Updated dependencies [0b54681, 41a59d5]:
    • effect@3.14.17
    • @effect/platform@0.80.17

0.44.16

Patch Changes

  • Updated dependencies [ee14444, f1c8583]:
    • effect@3.14.16
    • @effect/platform@0.80.16

0.44.15

Patch Changes

0.44.14

Patch Changes

  • Updated dependencies [6ed8d15]:
    • effect@3.14.14
    • @effect/platform@0.80.14

0.44.13

Patch Changes

0.44.12

Patch Changes

  • Updated dependencies [c2ad9ee, 9c68654]:
    • effect@3.14.12
    • @effect/platform@0.80.12

0.44.11

Patch Changes

  • Updated dependencies [e536127]:
    • effect@3.14.11
    • @effect/platform@0.80.11

0.44.10

Patch Changes

  • Updated dependencies [bc7efa3]:
    • effect@3.14.10
    • @effect/platform@0.80.10

0.44.9

Patch Changes

  • Updated dependencies [d78249f]:
    • effect@3.14.9
    • @effect/platform@0.80.9

0.44.8

Patch Changes

  • Updated dependencies [b3a2d32]:
    • effect@3.14.8
    • @effect/platform@0.80.8

0.44.7

Patch Changes

  • Updated dependencies [b542a4b]:
    • effect@3.14.7
    • @effect/platform@0.80.7

0.44.6

Patch Changes

  • Updated dependencies [47618c1, 6077882]:
    • effect@3.14.6
    • @effect/platform@0.80.6

0.44.5

Patch Changes

0.44.4

Patch Changes

  • Updated dependencies [e4ba2c6]:
    • effect@3.14.4
    • @effect/platform@0.80.4

0.44.3

Patch Changes

  • Updated dependencies [37aa8e1, 34f03d6]:
    • effect@3.14.3
    • @effect/platform@0.80.3

0.44.2

Patch Changes

0.44.1

Patch Changes

  • Updated dependencies [4a274fe]:
    • effect@3.14.1
    • @effect/platform@0.80.1

0.44.0

Minor Changes

  • #4469 aba2d1d Thanks @tim-smart! - move the MsgPack, Ndjson & ChannelSchema modules to @effect/platform

  • #4469 3131f8f Thanks @tim-smart! - refactor of @effect/cluster packages

  • #4469 aba2d1d Thanks @tim-smart! - Move SocketServer modules to @effect/platform

Patch Changes

0.43.4

Patch Changes

0.43.3

Patch Changes

  • Updated dependencies [0c4803f, 6f65ac4]:
    • effect@3.13.12
    • @effect/platform@0.79.3
    • @effect/platform-node@0.75.3

0.43.2

Patch Changes

0.43.1

Patch Changes

  • Updated dependencies [527c964]:
    • effect@3.13.10
    • @effect/platform@0.79.1
    • @effect/platform-node@0.75.1

0.43.0

Patch Changes

0.42.1

Patch Changes

  • Updated dependencies [c65d336, 22d2ebb]:
    • effect@3.13.8
    • @effect/platform@0.78.1
    • @effect/platform-node@0.74.1

0.42.0

Patch Changes

  • Updated dependencies [c5bcf53]:
    • @effect/platform@0.78.0
    • @effect/platform-node@0.74.0

0.41.7

Patch Changes

0.41.6

Patch Changes

  • Updated dependencies [3154ce4]:
    • effect@3.13.6
    • @effect/platform@0.77.6
    • @effect/platform-node@0.73.6

0.41.5

Patch Changes

  • Updated dependencies [367bb35, 6cf11c3, a0acec8]:
    • effect@3.13.5
    • @effect/platform@0.77.5
    • @effect/platform-node@0.73.5

0.41.4

Patch Changes

  • Updated dependencies [e0746f9, 17d9e89]:
    • @effect/platform@0.77.4
    • effect@3.13.4
    • @effect/platform-node@0.73.4

0.41.3

Patch Changes

0.41.2

Patch Changes

  • Updated dependencies [31be72a, 3e7ce97, 31be72a]:
    • effect@3.13.2
    • @effect/platform@0.77.2
    • @effect/platform-node@0.73.2

0.41.1

Patch Changes

  • Updated dependencies [b56a211]:
    • effect@3.13.1
    • @effect/platform@0.77.1
    • @effect/platform-node@0.73.1

0.41.0

Patch Changes

0.40.1

Patch Changes

0.40.0

Patch Changes

0.39.4

Patch Changes

0.39.3

Patch Changes

  • Updated dependencies [1b4a4e9]:
    • effect@3.12.9
    • @effect/platform@0.75.3
    • @effect/platform-node@0.71.3

0.39.2

Patch Changes

0.39.1

Patch Changes

  • Updated dependencies [8dff1d1]:
    • effect@3.12.7
    • @effect/platform@0.75.1
    • @effect/platform-node@0.71.1

0.39.0

Minor Changes

  • #4306 5e43ce5 Thanks @tim-smart! - eliminate Scope by default in some layer apis

Patch Changes

0.38.0

Minor Changes

  • #3978 bd0d489 Thanks @tim-smart! - improve defaults for VariantSchema.Overrideable

Patch Changes

0.37.1

Patch Changes

0.37.0

Patch Changes

0.36.2

Patch Changes

0.36.1

Patch Changes

0.36.0

Patch Changes

0.35.3

Patch Changes

0.35.2

Patch Changes

  • Updated dependencies [1c08a0b, 1ce703b, 1ce703b]:
    • effect@3.11.9
    • @effect/platform@0.71.6
    • @effect/platform-node@0.67.2

0.35.1

Patch Changes

  • Updated dependencies [05d71f8, e66b920]:
    • @effect/platform@0.71.5
    • @effect/platform-node@0.67.1

0.35.0

Patch Changes

0.34.3

Patch Changes

  • Updated dependencies [6984508, 883639c]:
    • @effect/platform@0.71.3
    • @effect/platform-node@0.66.3

0.34.2

Patch Changes

0.34.1

Patch Changes

  • Updated dependencies [1d3df5b]:
    • @effect/platform@0.71.1
    • @effect/platform-node@0.66.1

0.34.0

Patch Changes

0.33.7

Patch Changes

0.33.6

Patch Changes

  • Updated dependencies [9a5b8e3]:
    • @effect/platform@0.70.6
    • @effect/platform-node@0.65.6

0.33.5

Patch Changes

0.33.4

Patch Changes

0.33.3

Patch Changes

  • Updated dependencies [7044730]:
    • @effect/platform@0.70.3
    • @effect/platform-node@0.65.3

0.33.2

Patch Changes

0.33.1

Patch Changes

  • Updated dependencies [dd8a2d8, a71bfef]:
    • effect@3.11.1
    • @effect/platform@0.70.1
    • @effect/platform-node@0.65.1

0.33.0

Patch Changes

0.32.17

Patch Changes

  • Updated dependencies [3069614, 09a5e52]:
    • effect@3.10.20
    • @effect/platform@0.69.32
    • @effect/platform-node@0.64.34

0.32.16

Patch Changes

  • Updated dependencies [e6d4a37]:
    • @effect/platform-node@0.64.33
    • @effect/platform@0.69.31

0.32.15

Patch Changes

  • #4029 5e17400 Thanks @gcanti! - Avoid “Cannot access ‘ParentSpan’ before initialization” error during module initialization

0.32.14

Patch Changes

  • Updated dependencies [270f199]:
    • @effect/platform-node@0.64.32
    • @effect/platform@0.69.30

0.32.13

Patch Changes

  • #4021 e9dfea3 Thanks @tim-smart! - add .reactive method to SqlClient interface

  • Updated dependencies [24cc35e]:

    • @effect/platform-node@0.64.31
    • @effect/platform@0.69.29

0.32.12

Patch Changes

0.32.11

Patch Changes

  • Updated dependencies [af409cf, beaccae]:
    • effect@3.10.18
    • @effect/platform@0.69.27
    • @effect/platform-node@0.64.29

0.32.10

Patch Changes

  • Updated dependencies [c963886, 42c4ce6]:
    • @effect/platform@0.69.26
    • effect@3.10.17
    • @effect/platform-node@0.64.28

0.32.9

Patch Changes

0.32.8

Patch Changes

  • Updated dependencies [3cc6514]:
    • @effect/platform@0.69.24
    • @effect/platform-node@0.64.26

0.32.7

Patch Changes

  • Updated dependencies [3aff4d3]:
    • @effect/platform@0.69.23
    • @effect/platform-node@0.64.25

0.32.6

Patch Changes

  • #3937 4e9e256 Thanks @tim-smart! - add Reactivity module to experimental

  • Updated dependencies [8398b32, 72e55b7]:

    • effect@3.10.15
    • @effect/platform@0.69.22
    • @effect/platform-node@0.64.24

0.32.5

Patch Changes

  • Updated dependencies [f983946, 2d8a750]:
    • effect@3.10.14
    • @effect/platform@0.69.21
    • @effect/platform-node@0.64.23

0.32.4

Patch Changes

  • Updated dependencies [995bbdf]:
    • effect@3.10.13
    • @effect/platform@0.69.20
    • @effect/platform-node@0.64.22

0.32.3

Patch Changes

  • Updated dependencies [eb8c52d]:
    • @effect/platform-node@0.64.21
    • @effect/platform@0.69.19

0.32.2

Patch Changes

  • Updated dependencies [a0584ec, dd14efe, dd14efe]:
    • @effect/platform@0.69.18
    • @effect/platform-node@0.64.20
    • effect@3.10.12

0.32.1

Patch Changes

0.32.0

Minor Changes

  • #3896 12b3275 Thanks @tim-smart! - simplify DevTool/Server module

Patch Changes

  • Updated dependencies []:
    • @effect/platform-node@0.64.18

0.31.0

Minor Changes

  • #3893 cd720ae Thanks @tim-smart! - simplify SocketServer api

  • #3893 cd720ae Thanks @tim-smart! - use Mailbox for DevTools implementation

Patch Changes

0.30.16

Patch Changes

  • Updated dependencies [8a30e1d]:
    • @effect/platform-node@0.64.16
    • @effect/platform@0.69.15

0.30.15

Patch Changes

0.30.14

Patch Changes

0.30.13

Patch Changes

  • Updated dependencies [33f5b9f, 50f0281]:
    • effect@3.10.7
    • @effect/platform@0.69.12
    • @effect/platform-node@0.64.13

0.30.12

Patch Changes

  • Updated dependencies [ce1c21f, 81ddd45]:
    • effect@3.10.6
    • @effect/platform@0.69.11
    • @effect/platform-node@0.64.12

0.30.11

Patch Changes

  • Updated dependencies [3a6d757, 59d813a]:
    • effect@3.10.5
    • @effect/platform@0.69.10
    • @effect/platform-node@0.64.11

0.30.10

Patch Changes

  • Updated dependencies [2367708]:
    • @effect/platform@0.69.9
    • effect@3.10.4
    • @effect/platform-node@0.64.10

0.30.9

Patch Changes

  • Updated dependencies [522f7c5]:
    • @effect/platform@0.69.8
    • @effect/platform-node@0.64.9

0.30.8

Patch Changes

  • Updated dependencies [690d6c5, b9423d8, 279fe3a]:
    • @effect/platform@0.69.7
    • effect@3.10.3
    • @effect/platform-node@0.64.8

0.30.7

Patch Changes

  • Updated dependencies [714e119, c1afd55, 42cd72a]:
    • effect@3.10.2
    • @effect/platform@0.69.6
    • @effect/platform-node@0.64.7

0.30.6

Patch Changes

  • #3818 9604d6b Thanks @tim-smart! - wait for connection in DevTools client with 1s timeout

  • Updated dependencies [9604d6b]:

    • effect@3.10.1
    • @effect/platform@0.69.5
    • @effect/platform-node@0.64.6

0.30.5

Patch Changes

  • Updated dependencies [c86b1d7]:
    • @effect/platform@0.69.4
    • @effect/platform-node@0.64.5

0.30.4

Patch Changes

0.30.3

Patch Changes

  • Updated dependencies [e7afc47]:
    • @effect/platform@0.69.2
    • @effect/platform-node@0.64.3

0.30.2

Patch Changes

  • Updated dependencies [a4aa34a]:
    • @effect/platform-node@0.64.2

0.30.1

Patch Changes

  • Updated dependencies [7564f56, 7564f56]:
    • @effect/platform@0.69.1
    • @effect/platform-node@0.64.1

0.30.0

Patch Changes

0.29.6

Patch Changes

  • Updated dependencies [382556f, 97cb014]:
    • @effect/schema@0.75.5
    • @effect/platform@0.68.6
    • @effect/platform-node@0.63.6

0.29.5

Patch Changes

  • Updated dependencies [2036402]:
    • @effect/platform@0.68.5
    • @effect/platform-node@0.63.5

0.29.4

Patch Changes

  • Updated dependencies [1b1ef29]:
    • @effect/platform@0.68.4
    • @effect/platform-node@0.63.4

0.29.3

Patch Changes

  • Updated dependencies [61a99b2, 8c33087, 3bcdfb3]:
    • effect@3.9.2
    • @effect/platform-node@0.63.3
    • @effect/platform@0.68.3
    • @effect/schema@0.75.4

0.29.2

Patch Changes

  • #3631 bd160a4 Thanks @tim-smart! - add Sse module to experimental, for parsing server-side-events

  • Updated dependencies [360ec14]:

    • @effect/schema@0.75.3
    • @effect/platform@0.68.2
    • @effect/platform-node@0.63.2

0.29.1

Patch Changes

  • Updated dependencies [b75ac5d]:
    • @effect/platform@0.68.1
    • @effect/platform-node@0.63.1

0.29.0

Patch Changes

0.28.1

Patch Changes

  • Updated dependencies [3b2ad1d]:
    • @effect/platform@0.67.1
    • effect@3.9.1
    • @effect/schema@0.75.1
    • @effect/platform-node@0.62.1

0.28.0

Patch Changes

0.27.4

Patch Changes

0.27.3

Patch Changes

  • Updated dependencies []:
    • @effect/platform-node@0.61.3

0.27.2

Patch Changes

  • #3676 0a68746 Thanks @tomglaize! - Add VariantSchema fieldFromKey utility to rename the encoded side of a field by variant.

    Example usage:

    import { Schema } from "@effect/schema"
    import { VariantSchema } from "@effect/experimental"
    const { Class, fieldFromKey } = VariantSchema.make({
    variants: ["domain", "json"],
    defaultVariant: "domain"
    })
    class User extends Class<User>("User")({
    id: Schema.Int,
    firstName: Schema.String.pipe(fieldFromKey({ json: "first_name" }))
    }) {}
    console.log(
    Schema.encodeSync(User.json)({
    id: 1,
    firstName: "Bob"
    })
    )
    /*
    { id: 1, first_name: 'Bob' }
    */
  • Updated dependencies [734eae6, fd83d0e, 4509656, ad7e1de, 090e41c, 090e41c]:

    • @effect/schema@0.74.1
    • @effect/platform@0.66.2
    • effect@3.8.4
    • @effect/platform-node@0.61.2

0.27.1

Patch Changes

  • Updated dependencies [3812788]:
    • @effect/platform@0.66.1
    • @effect/platform-node@0.61.1

0.27.0

Patch Changes

  • Updated dependencies [de48aa5]:
    • @effect/schema@0.74.0
    • @effect/platform-node@0.61.0
    • @effect/platform@0.66.0

0.26.6

Patch Changes

  • Updated dependencies [321b201, bb5ec6b]:
    • @effect/platform@0.65.5
    • effect@3.8.3
    • @effect/platform-node@0.60.5
    • @effect/schema@0.73.4

0.26.5

Patch Changes

  • Updated dependencies [e6440a7]:
    • @effect/schema@0.73.3
    • @effect/platform@0.65.4
    • @effect/platform-node@0.60.4

0.26.4

Patch Changes

  • #3632 b86b47d Thanks @tim-smart! - fix assignability of ChannelSchema apis

0.26.3

Patch Changes

  • Updated dependencies [f0d8ef1]:
    • effect@3.8.2
    • @effect/platform@0.65.3
    • @effect/platform-node@0.60.3
    • @effect/schema@0.73.2

0.26.2

Patch Changes

  • Updated dependencies [10bf621, f56ab78, ae36fa6]:
    • effect@3.8.1
    • @effect/schema@0.73.1
    • @effect/platform@0.65.2
    • @effect/platform-node@0.60.2

0.26.1

Patch Changes

  • Updated dependencies [e44c5f2]:
    • @effect/platform@0.65.1
    • @effect/platform-node@0.60.1

0.26.0

Patch Changes

0.25.2

Patch Changes

  • Updated dependencies [35a0f81, 8261c5a]:
    • effect@3.7.3
    • @effect/platform@0.64.1
    • @effect/platform-node@0.59.1
    • @effect/schema@0.72.4

0.25.1

Patch Changes

  • #3574 ce86193 Thanks @tim-smart! - fix VariantSchema variant validation

0.25.0

Patch Changes

0.24.4

Patch Changes

  • #3557 c969f74 Thanks @tim-smart! - add ChannelSchema module to /experimental, for integrating /schema with Channels

0.24.3

Patch Changes

  • Updated dependencies [4a701c4]:
    • @effect/platform@0.63.3
    • @effect/platform-node@0.58.3

0.24.2

Patch Changes

  • Updated dependencies [8a601d7, 353ba19]:
    • effect@3.7.2
    • @effect/platform@0.63.2
    • @effect/platform-node@0.58.2
    • @effect/schema@0.72.2

0.24.1

Patch Changes

  • Updated dependencies [79859e7, f6a469c, dcb9ec0, 79aa6b1]:
    • effect@3.7.1
    • @effect/platform@0.63.1
    • @effect/platform-node@0.58.1
    • @effect/schema@0.72.1

0.24.0

Patch Changes

0.23.7

Patch Changes

  • Updated dependencies [e809286]:
    • effect@3.6.8
    • @effect/platform@0.62.5
    • @effect/platform-node@0.57.5
    • @effect/schema@0.71.4

0.23.6

Patch Changes

  • Updated dependencies [e7a65e3, 50ec889]:
    • @effect/platform@0.62.4
    • effect@3.6.7
    • @effect/platform-node@0.57.4
    • @effect/schema@0.71.3

0.23.5

Patch Changes

  • Updated dependencies [f960bf4, 46a575f]:
    • effect@3.6.6
    • @effect/platform@0.62.3
    • @effect/platform-node@0.57.3
    • @effect/schema@0.71.2

0.23.4

Patch Changes

  • #3487 00670d0 Thanks @tim-smart! - ensure VariantSchema preserves opaque types

  • #3488 8dd3959 Thanks @tim-smart! - move VariantSchema.extract to factory, and copy type level behaviour

  • #3482 dba570a Thanks @tim-smart! - make VariantSchema constructor apis internal

  • #3493 f2c8dbb Thanks @tim-smart! - add VariantSchema.Union constructor

  • #3478 da52556 Thanks @tim-smart! - Add VariantSchema.fieldEvolve api

  • Updated dependencies [413994c, 14a47a8, 0c09841]:

    • @effect/platform@0.62.2
    • effect@3.6.5
    • @effect/platform-node@0.57.2
    • @effect/schema@0.71.1

0.23.3

Patch Changes

  • #3471 c3446d3 Thanks @tim-smart! - add VariantSchema.Overrideable, for creating fields with optional defaults

  • Updated dependencies [9efe0e5]:

    • @effect/platform@0.62.1
    • @effect/platform-node@0.57.1

0.23.2

Patch Changes

  • #3467 cfcfbdf Thanks @tim-smart! - add VariantSchema.fields for accessing the fields

0.23.1

Patch Changes

  • #3455 e9da539 Thanks @tim-smart! - add VariantSchema module to experimental

    The VariantSchema module can be used to schemas with multiple variants.

    import { VariantSchema } from "@effect/experimental"
    import { Schema } from "@effect/schema"
    import { DateTime } from "effect"
    export const { Class, Field, Struct } = VariantSchema.factory({
    variants: ["database", "api"],
    defaultVariant: "database"
    })
    class User extends Class<User>("User")({
    id: Schema.Number,
    createdAt: Field({
    database: Schema.DateTimeUtc.pipe(
    Schema.optionalWith({ default: DateTime.unsafeNow })
    ),
    api: Schema.DateTimeUtc
    }),
    updateAt: Field({
    database: Schema.DateTimeUtc.pipe(
    Schema.optionalWith({ default: DateTime.unsafeNow })
    ),
    api: Schema.DateTimeUtc
    })
    }) {}
    // the class will use the `defaultVariant` fields
    const user = new User({ id: 1 })
    user.createdAt
    user.updateAt
    // access the `Schema.Struct` variants as static props
    User.database
    User.api

0.23.0

Patch Changes

0.22.6

Patch Changes

  • Updated dependencies [04adcac]:
    • effect@3.6.3
    • @effect/platform@0.61.8
    • @effect/platform-node@0.56.9
    • @effect/schema@0.70.4

0.22.5

Patch Changes

0.22.4

Patch Changes

  • Updated dependencies [99ad841, d829b57, fd4b2f6]:
    • @effect/schema@0.70.3
    • @effect/platform@0.61.6
    • effect@3.6.2
    • @effect/platform-node@0.56.7

0.22.3

Patch Changes

  • Updated dependencies [76b0496]:
    • @effect/platform-node@0.56.6

0.22.2

Patch Changes

  • Updated dependencies [056b710, 056b710]:
    • @effect/platform-node@0.56.5
    • @effect/platform@0.61.5

0.22.1

Patch Changes

  • #3420 fb18738 Thanks @tim-smart! - properly interrupt DevTools client during finalization

0.22.0

Minor Changes

  • #3417 5b0a98d Thanks @tim-smart! - remove TimeToLive trait in favour of timeToLive options

0.21.4

Patch Changes

  • Updated dependencies [e7cb109]:
    • @effect/platform@0.61.4
    • @effect/platform-node@0.56.4

0.21.3

Patch Changes

  • Updated dependencies [510a34d, fb9f786, 45dbb9f]:
    • effect@3.6.1
    • @effect/platform@0.61.3
    • @effect/platform-node@0.56.3
    • @effect/schema@0.70.2

0.21.2

Patch Changes

  • #3394 5c3a4d0 Thanks @tim-smart! - ensure DevTools client is shutdown

  • Updated dependencies [3dce357, 657fc48]:

    • @effect/schema@0.70.1
    • @effect/platform@0.61.2
    • @effect/platform-node@0.56.2

0.21.1

Patch Changes

  • Updated dependencies [11223bf]:
    • @effect/platform@0.61.1
    • @effect/platform-node@0.56.1

0.21.0

Patch Changes

0.20.4

Patch Changes

0.20.3

Patch Changes

0.20.2

Patch Changes

  • Updated dependencies [f241154]:
    • @effect/schema@0.69.1
    • @effect/platform@0.60.1
    • @effect/platform-node@0.55.1

0.20.1

Patch Changes

  • #3325 b2b02cb Thanks @IMax153! - ensure DevTools client flushes requests on interrupt

0.20.0

Patch Changes

  • Updated dependencies [20807a4]:
    • @effect/schema@0.69.0
    • @effect/platform@0.60.0
    • @effect/platform-node@0.55.0

0.19.4

Patch Changes

  • #3310 99bddcf Thanks @fubhy! - Added additional pure annotations to improve tree-shakeability

  • Updated dependencies [3afcc93, 99bddcf, 6921c4f]:

    • effect@3.5.7
    • @effect/platform@0.59.3
    • @effect/platform-node@0.54.4
    • @effect/schema@0.68.27

0.19.3

Patch Changes

0.19.2

Patch Changes

  • Updated dependencies [a9d7800, fcecff7, adbf753, adbf753]:
    • effect@3.5.5
    • @effect/platform@0.59.1
    • @effect/platform-node@0.54.2
    • @effect/schema@0.68.25

0.19.1

Patch Changes

  • Updated dependencies [07db4ac]:
    • @effect/platform-node@0.54.1

0.19.0

Minor Changes

  • #3260 53c0db0 Thanks @tim-smart! - replace /platform RefailError with use of the “cause” property

Patch Changes

0.18.1

Patch Changes

0.18.0

Minor Changes

  • #3233 cb9f8a1 Thanks @tim-smart! - revert PrimaryKey fallback in /experimental Persistence

Patch Changes

  • Updated dependencies [639208e, 6684b4c, 6684b4c, 6684b4c]:
    • effect@3.5.2
    • @effect/platform@0.58.26
    • @effect/platform-node@0.53.25
    • @effect/schema@0.68.22

0.17.27

Patch Changes

  • Updated dependencies [0623fca]:
    • @effect/platform@0.58.25
    • @effect/platform-node@0.53.24

0.17.26

Patch Changes

  • Updated dependencies [55fdd76]:
    • effect@3.5.1
    • @effect/platform@0.58.24
    • @effect/platform-node@0.53.23
    • @effect/schema@0.68.21

0.17.25

Patch Changes

0.17.24

Patch Changes

0.17.23

Patch Changes

0.17.22

Patch Changes

  • Updated dependencies [15967cf, 2328e17, a5737d6]:
    • @effect/schema@0.68.17
    • effect@3.4.7
    • @effect/platform@0.58.20
    • @effect/platform-node@0.53.19

0.17.21

Patch Changes

  • #3158 c3e3ed6 Thanks @tim-smart! - drop requirement of PrimaryKey in /experimental Persistence

0.17.20

Patch Changes

  • #3150 271ec23 Thanks @tim-smart! - remove console.log from Redis persistence

0.17.19

Patch Changes

  • #3149 cb22726 Thanks @tim-smart! - add PersistedCache module to /experimental

  • Updated dependencies [d006cec, cb22726, e911cfd]:

    • @effect/schema@0.68.16
    • @effect/platform@0.58.19
    • @effect/platform-node@0.53.18

0.17.18

Patch Changes

  • #3138 422a2ee Thanks @tim-smart! - log DevTool’s errors at debug level

  • Updated dependencies [7f8900a]:

    • @effect/platform@0.58.18
    • @effect/platform-node@0.53.17

0.17.17

Patch Changes

0.17.16

Patch Changes

  • Updated dependencies [61e5964]:
    • @effect/schema@0.68.14
    • @effect/platform@0.58.16
    • @effect/platform-node@0.53.15

0.17.15

Patch Changes

  • Updated dependencies [cb76bcb, baa90df]:
    • @effect/schema@0.68.13
    • @effect/platform@0.58.15
    • @effect/platform-node@0.53.14

0.17.14

Patch Changes

  • #3110 296a9e2 Thanks @tim-smart! - fix deadlock in @effect/experimental dataLoader

0.17.13

Patch Changes

  • Updated dependencies [52a87c7, 6d2280e]:
    • @effect/platform@0.58.14
    • @effect/platform-node@0.53.13

0.17.12

Patch Changes

  • Updated dependencies [a047af9, dbd53ea, d990544]:
    • effect@3.4.5
    • @effect/platform@0.58.13
    • @effect/schema@0.68.12
    • @effect/platform-node@0.53.12

0.17.11

Patch Changes

0.17.10

Patch Changes

  • Updated dependencies [a5b95b5, 5e29579]:
    • @effect/platform@0.58.11
    • @effect/platform-node@0.53.10

0.17.9

Patch Changes

0.17.8

Patch Changes

  • Updated dependencies [0b47fdf]:
    • @effect/schema@0.68.9
    • @effect/platform@0.58.9
    • @effect/platform-node@0.53.8

0.17.7

Patch Changes

  • Updated dependencies [192261b, 3da1497]:
    • @effect/schema@0.68.8
    • effect@3.4.2
    • @effect/platform@0.58.8
    • @effect/platform-node@0.53.7

0.17.6

Patch Changes

  • Updated dependencies [027004a]:
    • @effect/platform@0.58.7
    • @effect/platform-node@0.53.6

0.17.5

Patch Changes

  • Updated dependencies [66a1910, 2e8e252]:
    • effect@3.4.1
    • @effect/platform@0.58.6
    • @effect/platform-node@0.53.5
    • @effect/schema@0.68.7

0.17.4

Patch Changes

  • Updated dependencies [37a07a2]:
    • @effect/platform@0.58.5
    • @effect/platform-node@0.53.4

0.17.3

Patch Changes

  • Updated dependencies [b77fb0a]:
    • @effect/platform@0.58.4
    • @effect/platform-node@0.53.3

0.17.2

Patch Changes

  • Updated dependencies [530fa9e]:
    • @effect/schema@0.68.6
    • @effect/platform@0.58.3
    • @effect/platform-node@0.53.2

0.17.1

Patch Changes

  • Updated dependencies [1d62815]:
    • @effect/schema@0.68.5
    • @effect/platform@0.58.2
    • @effect/platform-node@0.53.1

0.17.0

Minor Changes

  • #3036 5a248aa Thanks @tim-smart! - remove dependency on /platform-node from DevTools

Patch Changes

  • Updated dependencies [5a248aa, 5a248aa]:
    • @effect/platform@0.58.1
    • @effect/platform-node@0.53.0

0.16.34

Patch Changes

0.16.33

Patch Changes

  • Updated dependencies [3ba7ea1]:
    • @effect/platform@0.57.8
    • @effect/platform-node@0.51.17

0.16.32

Patch Changes

  • Updated dependencies [d473800]:
    • @effect/schema@0.68.3
    • @effect/platform@0.57.7
    • @effect/platform-node@0.51.16

0.16.31

Patch Changes

  • Updated dependencies [eb341b3]:
    • @effect/schema@0.68.2
    • @effect/platform@0.57.6
    • @effect/platform-node@0.51.15

0.16.30

Patch Changes

  • Updated dependencies [b8ea6aa]:
    • @effect/platform@0.57.5
    • @effect/platform-node@0.51.14

0.16.29

Patch Changes

  • Updated dependencies [b51e266, 6c89408]:
    • @effect/schema@0.68.1
    • effect@3.3.5
    • @effect/platform@0.57.4
    • @effect/platform-node@0.51.13

0.16.28

Patch Changes

  • Updated dependencies [f6c7977, a67b8fe]:
    • @effect/schema@0.68.0
    • effect@3.3.4
    • @effect/platform@0.57.3
    • @effect/platform-node@0.51.12

0.16.27

Patch Changes

  • Updated dependencies [3b15e1b, 06ede85, 3a750b2, 7204ca5]:
    • @effect/schema@0.67.24
    • effect@3.3.3
    • @effect/platform@0.57.2
    • @effect/platform-node@0.51.11

0.16.26

Patch Changes

0.16.25

Patch Changes

0.16.24

Patch Changes

0.16.23

Patch Changes

  • Updated dependencies [4c6bc7f, a67d602]:
    • @effect/schema@0.67.20
    • @effect/platform@0.55.7
    • @effect/platform-node@0.51.7

0.16.22

Patch Changes

0.16.21

Patch Changes

  • Updated dependencies [a0dd1c1]:
    • @effect/schema@0.67.18
    • @effect/platform@0.55.5
    • @effect/platform-node@0.51.5

0.16.20

Patch Changes

0.16.19

Patch Changes

  • Updated dependencies [5745886, 6801fca]:
    • @effect/schema@0.67.16
    • effect@3.2.7
    • @effect/platform@0.55.3
    • @effect/platform-node@0.51.3

0.16.18

Patch Changes

  • Updated dependencies [2c2280b, e2740fc, cc8ac50, 60fe3d5]:
    • @effect/platform@0.55.2
    • @effect/schema@0.67.15
    • effect@3.2.6
    • @effect/platform-node@0.51.2

0.16.17

Patch Changes

  • Updated dependencies [c5846e9]:
    • @effect/schema@0.67.14
    • @effect/platform-node@0.51.1
    • @effect/platform@0.55.1

0.16.16

Patch Changes

  • Updated dependencies [608b01f, 031c712, a44e532, 5133ca9]:
    • effect@3.2.5
    • @effect/platform@0.55.0
    • @effect/platform-node@0.51.0
    • @effect/schema@0.67.13

0.16.15

Patch Changes

0.16.14

Patch Changes

  • #2803 5af633e Thanks @tim-smart! - update dependencies

  • Updated dependencies [5af633e, 45578e8]:

    • @effect/platform-node@0.49.14
    • @effect/schema@0.67.11
    • effect@3.2.3
    • @effect/platform@0.53.14

0.16.13

Patch Changes

0.16.12

Patch Changes

  • Updated dependencies [5432fff]:
    • @effect/schema@0.67.9
    • @effect/platform@0.53.12
    • @effect/platform-node@0.49.12

0.16.11

Patch Changes

  • Updated dependencies [c1e991d]:
    • effect@3.2.1
    • @effect/platform@0.53.11
    • @effect/platform-node@0.49.11
    • @effect/schema@0.67.8

0.16.10

Patch Changes

0.16.9

Patch Changes

0.16.8

Patch Changes

  • Updated dependencies [9c514de]:
    • @effect/schema@0.67.5
    • @effect/platform@0.53.8
    • @effect/platform-node@0.49.8

0.16.7

Patch Changes

  • Updated dependencies [ee08593, da6d7d8]:
    • @effect/schema@0.67.4
    • @effect/platform@0.53.7
    • @effect/platform-node@0.49.7

0.16.6

Patch Changes

  • #2750 6ac4847 Thanks @tim-smart! - fix memory leak in Socket’s

  • Updated dependencies [6ac4847, 6ac4847]:

    • @effect/platform@0.53.6
    • effect@3.1.5
    • @effect/platform-node@0.49.6
    • @effect/schema@0.67.3

0.16.5

Patch Changes

  • Updated dependencies [89a3afb, 992c8e2]:
    • @effect/schema@0.67.2
    • @effect/platform@0.53.5
    • @effect/platform-node@0.49.5

0.16.4

Patch Changes

  • Updated dependencies [e41e911]:
    • effect@3.1.4
    • @effect/platform@0.53.4
    • @effect/platform-node@0.49.4
    • @effect/schema@0.67.1

0.16.3

Patch Changes

  • Updated dependencies [d7e4997]:
    • @effect/schema@0.67.0
    • @effect/platform@0.53.3
    • @effect/platform-node@0.49.3

0.16.2

Patch Changes

  • Updated dependencies [1f6dc96, 1f6dc96]:
    • @effect/platform-node@0.49.2
    • effect@3.1.3
    • @effect/platform@0.53.2
    • @effect/schema@0.66.16

0.16.1

Patch Changes

  • Updated dependencies [121d6d9]:
    • @effect/schema@0.66.15
    • @effect/platform@0.53.1
    • @effect/platform-node@0.49.1

0.16.0

Minor Changes

  • #2703 d57fbbb Thanks @tim-smart! - replace isows with WebSocketConstructor service in @effect/platform/Socket

    You now have to provide a WebSocketConstructor implementation to the Socket.makeWebSocket api.

    import * as Socket from "@effect/platform/Socket"
    import * as NodeSocket from "@effect/platform-node/NodeSocket"
    import { Effect } from "effect"
    Socket.makeWebSocket("ws://localhost:8080").pipe(
    Effect.provide(NodeSocket.layerWebSocketConstructor) // use "ws" npm package
    )

Patch Changes

  • Updated dependencies [d57fbbb]:
    • @effect/platform-node@0.49.0
    • @effect/platform@0.53.0

0.15.18

Patch Changes

  • Updated dependencies [5866c62]:
    • @effect/platform@0.52.3
    • @effect/platform-node@0.48.4

0.15.17

Patch Changes

  • #2679 2e1cdf6 Thanks @tim-smart! - ensure all type ids are annotated with unique symbol

  • Updated dependencies [e4b82d2, 2e1cdf6]:

    • @effect/platform-node@0.48.3
    • @effect/platform@0.52.2
    • effect@3.1.2
    • @effect/schema@0.66.14

0.15.16

Patch Changes

  • Updated dependencies [e5e56d1]:
    • effect@3.1.1
    • @effect/platform@0.52.1
    • @effect/platform-node@0.48.2
    • @effect/schema@0.66.13

0.15.15

Patch Changes

  • Updated dependencies [9deab0a, 7719b8a]:
    • @effect/platform@0.52.0
    • @effect/platform-node@0.48.1

0.15.14

Patch Changes

0.15.13

Patch Changes

0.15.12

Patch Changes

  • Updated dependencies [18de56b]:
    • effect@3.0.7
    • @effect/platform@0.50.7
    • @effect/platform-node@0.47.7
    • @effect/schema@0.66.10

0.15.11

Patch Changes

0.15.10

Patch Changes

  • Updated dependencies [6222404, 868ed2a]:
    • effect@3.0.5
    • @effect/platform@0.50.5
    • @effect/platform-node@0.47.5
    • @effect/schema@0.66.8

0.15.9

Patch Changes

  • Updated dependencies [dd41c6c, 9a24667]:
    • @effect/schema@0.66.7
    • effect@3.0.4
    • @effect/platform@0.50.4
    • @effect/platform-node@0.47.4

0.15.8

Patch Changes

0.15.7

Patch Changes

  • Updated dependencies [b3fe829, a58b7de, d90e8c3]:
    • @effect/schema@0.66.5
    • @effect/platform@0.50.2
    • @effect/platform-node@0.47.2

0.15.6

Patch Changes

  • Updated dependencies [773b8e0]:
    • @effect/schema@0.66.4
    • @effect/platform@0.50.1
    • @effect/platform-node@0.47.1

0.15.5

Patch Changes

  • Updated dependencies [6f38dff, a7b4b84, a3b0e6c, 6f38dff]:
    • @effect/platform-node@0.47.0
    • @effect/platform@0.50.0
    • effect@3.0.3
    • @effect/schema@0.66.3

0.15.4

Patch Changes

  • #2562 2cecdbd Thanks @fubhy! - Added provenance publishing

  • Updated dependencies [2cecdbd]:

    • @effect/platform-node@0.46.4
    • @effect/platform@0.49.4
    • effect@3.0.2
    • @effect/schema@0.66.2

0.15.3

Patch Changes

  • Updated dependencies [8d39d65]:
    • @effect/platform@0.49.3
    • @effect/platform-node@0.46.3

0.15.2

Patch Changes

  • Updated dependencies [5ef0a1a]:
    • @effect/platform@0.49.2
    • @effect/platform-node@0.46.2

0.15.1

Patch Changes

0.15.0

Minor Changes

Patch Changes

0.14.14

Patch Changes

  • Updated dependencies [b79cc59]:
    • @effect/platform-node@0.45.31
    • @effect/platform@0.48.29

0.14.13

Patch Changes

  • #2472 8709856 Thanks @tim-smart! - add Subscribable trait / module

    Subscribable represents a resource that has a current value and can be subscribed to for updates.

    The following data types are subscribable:

    • A SubscriptionRef
    • An Actor from the experimental Machine module
  • #2472 8709856 Thanks @tim-smart! - add Readable module / trait

    Readable is a common interface for objects that can be read from using a get Effect.

    For example, Ref’s implement Readable:

    import { Effect, Readable, Ref } from "effect"
    import assert from "assert"
    Effect.gen(function* (_) {
    const ref = yield* _(Ref.make(123))
    assert(Readable.isReadable(ref))
    const result = yield* _(ref.get)
    assert(result === 123)
    })
  • Updated dependencies [0aee906, 41c8102, 4c37001, 776ef2b, 217147e, 8a69b4e, 90776ec, b3acf47, 8709856, 232c353, 0d3231a, 0ca835c, 8709856, da22adc, d590094, c22b019, e983740, e3e0924]:

    • @effect/schema@0.65.0
    • effect@2.4.19
    • @effect/platform-node@0.45.30
    • @effect/platform@0.48.28

0.14.12

Patch Changes

0.14.11

Patch Changes

  • Updated dependencies [365a486]:
    • @effect/platform@0.48.26
    • @effect/platform-node@0.45.28

0.14.10

Patch Changes

  • Updated dependencies [dadc690, 58f66fe, 3cad21d, d209171]:
    • effect@2.4.18
    • @effect/schema@0.64.19
    • @effect/platform@0.48.25
    • @effect/platform-node@0.45.27

0.14.9

Patch Changes

0.14.8

Patch Changes

0.14.7

Patch Changes

  • Updated dependencies [a31917a, 4cd2bed, 6cc6267]:
    • @effect/schema@0.64.16
    • @effect/platform@0.48.22
    • @effect/platform-node@0.45.24

0.14.6

Patch Changes

  • #2421 c34eb3e Thanks @tim-smart! - don’t persist items with a TimeToLive of zero

  • Updated dependencies [d7688c0, b3a4fac, 5ded019]:

    • effect@2.4.15
    • @effect/schema@0.64.15
    • @effect/platform@0.48.21
    • @effect/platform-node@0.45.23

0.14.5

Patch Changes

  • Updated dependencies [4789083, 4789083]:
    • @effect/platform-node@0.45.22
    • @effect/platform@0.48.20

0.14.4

Patch Changes

  • Updated dependencies [fb7285e]:
    • @effect/platform-node@0.45.21
    • @effect/platform@0.48.19

0.14.3

Patch Changes

  • Updated dependencies [26435ec, a76e5e1, 6180c0c]:
    • @effect/platform-node@0.45.20
    • @effect/platform@0.48.18
    • @effect/schema@0.64.14
    • effect@2.4.14

0.14.2

Patch Changes

0.14.1

Patch Changes

0.14.0

Minor Changes

Patch Changes

  • #2384 2f488c4 Thanks @tim-smart! - update dependencies

  • #2383 317b5b8 Thanks @tim-smart! - add TimeToLive module to @effect/experimental

    A trait for attaching expiry information to objects.

    import * as TimeToLive from "@effect/experimental"
    import { Duration, Exit } from "effect"
    class User {
    [TimeToLive.symbol](exit: Exit.Exit<unknown, unknown>) {
    return Exit.isSuccess(exit) ? Duration.seconds(60) : Duration.zero
    }
    }
  • #2383 317b5b8 Thanks @tim-smart! - add Redis Persistence module

  • Updated dependencies [2f488c4, 37ca592, 317b5b8]:

    • @effect/platform-node@0.45.17
    • effect@2.4.11
    • @effect/schema@0.64.11
    • @effect/platform@0.48.15

0.13.10

Patch Changes

  • Updated dependencies [9bab1f9, 9bbde5b]:
    • effect@2.4.10
    • @effect/platform@0.48.14
    • @effect/platform-node@0.45.16
    • @effect/schema@0.64.10

0.13.9

Patch Changes

  • Updated dependencies [dc7e497, ffaf7c3]:
    • @effect/schema@0.64.9
    • @effect/platform@0.48.13
    • @effect/platform-node@0.45.15

0.13.8

Patch Changes

  • Updated dependencies [e0af20e]:
    • @effect/schema@0.64.8
    • @effect/platform@0.48.12
    • @effect/platform-node@0.45.14

0.13.7

Patch Changes

  • Updated dependencies [0f6c7b4]:
    • @effect/platform@0.48.11
    • @effect/platform-node@0.45.13

0.13.6

Patch Changes

  • #2355 151b785 Thanks @jrmdayn! - Add clear api to remove all items of a result persistence

  • Updated dependencies [71fd528]:

    • @effect/platform-node@0.45.12
    • @effect/platform@0.48.10
    • effect@2.4.9
    • @effect/schema@0.64.7

0.13.5

Patch Changes

0.13.4

Patch Changes

  • Updated dependencies [69d27bb, d0f56c6]:
    • @effect/platform@0.48.8
    • @effect/schema@0.64.5
    • @effect/platform-node@0.45.10

0.13.3

Patch Changes

  • Updated dependencies [f908948]:
    • @effect/platform@0.48.7
    • @effect/platform-node@0.45.9

0.13.2

Patch Changes

  • Updated dependencies [eb93283]:
    • effect@2.4.7
    • @effect/platform@0.48.6
    • @effect/platform-node@0.45.8
    • @effect/schema@0.64.4

0.13.1

Patch Changes

  • Updated dependencies [e006e4a]:
    • @effect/platform@0.48.5
    • @effect/platform-node@0.45.7

0.13.0

Minor Changes

0.12.3

Patch Changes

  • Updated dependencies [cfef6ec]:
    • @effect/schema@0.64.3
    • @effect/platform@0.48.4
    • @effect/platform-node@0.45.6

0.12.2

Patch Changes

0.12.1

Patch Changes

  • Updated dependencies [c362e06, 83ddd6f]:
    • @effect/platform@0.48.3
    • @effect/platform-node@0.45.5

0.12.0

Minor Changes

Patch Changes

  • #2311 9971186 Thanks @tim-smart! - add Ndjson module to experimental

    Allows you to encode + decode “new line delimited json”

  • Updated dependencies [89748c9, 4f35a7e, 9971186]:

    • @effect/schema@0.64.2
    • @effect/platform@0.48.2
    • effect@2.4.6
    • @effect/platform-node@0.45.4

0.11.1

Patch Changes

0.11.0

Minor Changes

  • #2279 bdff193 Thanks @gcanti! - - src/DevTools/Domain.ts
    • use OptionEncoded in SpanFrom
    • src/Machine.ts
      • use ExitEncoded in SerializableActor and boot

Patch Changes

0.10.1

Patch Changes

0.10.0

Minor Changes

Patch Changes

  • #2246 5234a9a Thanks @tim-smart! - add support for SpanEvent’s to DevTools protocol

  • #2254 98b921a Thanks @tim-smart! - send a final metrics snapshot on DevTools shutdown

  • #2256 f82875f Thanks @tim-smart! - add Machine module to experimental

    The Machine module can be used to create effectful state machines. Here is an example of a machine that sends emails:

    import { Machine } from "@effect/experimental"
    import { runMain } from "@effect/platform-node/NodeRuntime"
    import { Data, Effect, List, Request, Schedule } from "effect"
    class SendError extends Data.TaggedError("SendError")<{
    readonly email: string
    readonly reason: string
    }> {}
    class SendEmail extends Request.TaggedClass("SendEmail")<
    void,
    SendError,
    {
    readonly email: string
    readonly message: string
    }
    > {}
    class ProcessEmail extends Request.TaggedClass("ProcessEmail")<
    void,
    never,
    {}
    > {}
    class Shutdown extends Request.TaggedClass("Shutdown")<void, never, {}> {}
    const mailer = Machine.makeWith<List.List<SendEmail>>()((_, previous) =>
    Effect.gen(function* (_) {
    const ctx = yield* _(Machine.MachineContext)
    const state = previous ?? List.empty()
    if (List.isCons(state)) {
    yield* _(
    ctx.unsafeSend(new ProcessEmail()),
    Effect.replicateEffect(List.size(state))
    )
    }
    return Machine.procedures.make(state).pipe(
    Machine.procedures.addPrivate<ProcessEmail>()(
    "ProcessEmail",
    ({ state }) =>
    Effect.gen(function* (_) {
    if (List.isNil(state)) {
    return [void 0, state]
    }
    const req = state.head
    yield* _(
    Effect.log(`Sending email to ${req.email}`),
    Effect.delay(500)
    )
    return [void 0, state.tail]
    })
    ),
    Machine.procedures.add<SendEmail>()("SendEmail", (ctx) =>
    ctx
    .send(new ProcessEmail())
    .pipe(Effect.as([void 0, List.append(ctx.state, ctx.request)]))
    ),
    Machine.procedures.add<Shutdown>()("Shutdown", () =>
    Effect.log("Shutting down").pipe(Effect.zipRight(Effect.interrupt))
    )
    )
    })
    ).pipe(Machine.retry(Schedule.forever))
    Effect.gen(function* (_) {
    const actor = yield* _(Machine.boot(mailer))
    yield* _(
    actor.send(
    new SendEmail({ email: "test@example.com", message: "Hello, World!" })
    )
    )
    yield* _(
    actor.send(
    new SendEmail({ email: "test@example.com", message: "Hello, World!" })
    )
    )
    yield* _(
    actor.send(
    new SendEmail({ email: "test@example.com", message: "Hello, World!" })
    )
    )
    yield* _(actor.send(new Shutdown()))
    }).pipe(Effect.scoped, runMain)
  • Updated dependencies [e03811e, ac41d84, 0f3d99c, 6137533, f373529, 1bf9f31, e3ff789, 6137533, 507ba40, 4064ea0, e466afe, 465be79, f373529, de74eb8, d8e6940, fa9663c, fa9663c]:

    • effect@2.4.2
    • @effect/platform@0.47.0
    • @effect/schema@0.63.3
    • @effect/platform-node@0.45.0

0.9.20

Patch Changes

0.9.19

Patch Changes

  • Updated dependencies [5d30853, 6e350ed]:
    • @effect/schema@0.63.1
    • @effect/platform@0.46.2
    • @effect/platform-node@0.44.10

0.9.18

Patch Changes

  • Updated dependencies [aa6556f]:
    • @effect/platform@0.46.1
    • @effect/platform-node@0.44.9

0.9.17

Patch Changes

0.9.16

Patch Changes

  • #2187 e6d36c0 Thanks @tim-smart! - update development dependencies

  • Updated dependencies [5ad2eec, e6d36c0]:

    • effect@2.3.8
    • @effect/platform-node@0.44.7
    • @effect/schema@0.62.9
    • @effect/platform@0.45.6

0.9.15

Patch Changes

  • Updated dependencies [6daf084]:
    • @effect/platform@0.45.5
    • @effect/platform-node@0.44.6

0.9.14

Patch Changes

  • #2163 ca2b411 Thanks @IMax153! - Fix the order in which the experimental data-loader’s internal worker enables interruptibility

  • Updated dependencies [bc8404d, abcb7d9, 2c5cbcd, 6565916, abcb7d9]:

    • effect@2.3.7
    • @effect/platform@0.45.4
    • @effect/platform-node@0.44.5
    • @effect/schema@0.62.8

0.9.13

Patch Changes

  • Updated dependencies [09532a8]:
    • @effect/platform@0.45.3
    • @effect/platform-node@0.44.4

0.9.12

Patch Changes

  • Updated dependencies [f612749]:
    • @effect/platform-node@0.44.3

0.9.11

Patch Changes

0.9.10

Patch Changes

  • Updated dependencies [65895ab]:
    • @effect/platform@0.45.1
    • @effect/platform-node@0.44.1

0.9.9

Patch Changes

  • Updated dependencies [2b62548]:
    • @effect/platform-node@0.44.0
    • @effect/platform@0.45.0

0.9.8

Patch Changes

  • Updated dependencies [aef2b8b, b881365, 7eecb1c]:
    • @effect/schema@0.62.6
    • effect@2.3.5
    • @effect/platform@0.44.7
    • @effect/platform-node@0.43.7

0.9.7

Patch Changes

0.9.6

Patch Changes

  • Updated dependencies [17bda66]:
    • effect@2.3.4
    • @effect/platform@0.44.6
    • @effect/platform-node@0.43.6
    • @effect/schema@0.62.5

0.9.5

Patch Changes

  • Updated dependencies [1c6d18b, 13d3266, a344b42]:
    • @effect/schema@0.62.4
    • @effect/platform@0.44.5
    • @effect/platform-node@0.43.5

0.9.4

Patch Changes

  • #2106 b7d9a55 Thanks @tim-smart! - don’t require tags for Persistence keys

  • Updated dependencies [efd41d8, 0f83515, 0f83515]:

    • effect@2.3.3
    • @effect/platform@0.44.4
    • @effect/platform-node@0.43.4
    • @effect/schema@0.62.3

0.9.3

Patch Changes

0.9.2

Patch Changes

  • Updated dependencies [29739dd]:
    • @effect/platform@0.44.2
    • @effect/platform-node@0.43.2

0.9.1

Patch Changes

  • Updated dependencies [b5a8215]:
    • effect@2.3.1
    • @effect/platform@0.44.1
    • @effect/platform-node@0.43.1
    • @effect/schema@0.62.1

0.9.0

Minor Changes

  • #2006 9a2d1c1 Thanks @github-actions! - With this change we now require a string key to be provided for all tags and renames the dear old Tag to GenericTag, so when previously you could do:

    import { Effect, Context } from "effect"
    interface Service {
    readonly _: unique symbol
    }
    const Service = Context.Tag<
    Service,
    {
    number: Effect.Effect<never, never, number>
    }
    >()

    you are now mandated to do:

    import { Effect, Context } from "effect"
    interface Service {
    readonly _: unique symbol
    }
    const Service = Context.GenericTag<
    Service,
    {
    number: Effect.Effect<never, never, number>
    }
    >("Service")

    This makes by default all tags globals and ensures better debuggaility when unexpected errors arise.

    Furthermore we introduce a new way of constructing tags that should be considered the new default:

    import { Effect, Context } from "effect"
    class Service extends Context.Tag("Service")<
    Service,
    {
    number: Effect.Effect<never, never, number>
    }
    >() {}
    const program = Effect.flatMap(Service, ({ number }) => number).pipe(
    Effect.flatMap((_) => Effect.log(`number: ${_}`))
    )

    this will use “Service” as the key and will create automatically an opaque identifier (the class) to be used at the type level, it does something similar to the above in a single shot.

  • #2006 1a77f72 Thanks @github-actions! - change Effect type parameters order from Effect<R, E, A> to Effect<A, E = never, R = never>

  • #2006 a34dbdc Thanks @github-actions! - - Schema: change type parameters order from Schema<R, I, A> to Schema<A, I = A, R = never>

    • Serializable: change type parameters order from Serializable<R, I, A> to Serializable<A, I, R>
    • Class: change type parameters order from Class<R, I, A, C, Self, Inherited> to Class<A, I, R, C, Self, Inherited>
    • PropertySignature: change type parameters order from PropertySignature<R, From, FromIsOptional, To, ToIsOptional> to PropertySignature<From, FromIsOptional, To, ToIsOptional, R = never>
  • #2006 b1e2086 Thanks @github-actions! - remove re-exports from platform packages

  • #2006 9a2d1c1 Thanks @github-actions! - This change enables Effect.serviceConstants and Effect.serviceMembers to access any constant in the service, not only the effects, namely it is now possible to do:

    import { Effect, Context } from "effect"
    class NumberRepo extends Context.TagClass("NumberRepo")<
    NumberRepo,
    {
    readonly numbers: Array<number>
    }
    >() {
    static numbers = Effect.serviceConstants(NumberRepo).numbers
    }

Patch Changes

0.8.10

Patch Changes

  • Updated dependencies [3ddfdbf, 3ddfdbf]:
    • effect@2.2.5
    • @effect/platform@0.43.11
    • @effect/platform-node@0.42.11
    • @effect/schema@0.61.7

0.8.9

Patch Changes

  • Updated dependencies [d0b911c, 330e1a4, 6928a2b, 296bc1c]:
    • effect@2.2.4
    • @effect/platform@0.43.10
    • @effect/schema@0.61.6
    • @effect/platform-node@0.42.10

0.8.8

Patch Changes

  • Updated dependencies [1b841a9]:
    • @effect/platform@0.43.9
    • @effect/platform-node@0.42.9

0.8.7

Patch Changes

  • Updated dependencies [32bf796]:
    • @effect/platform@0.43.8
    • @effect/platform-node@0.42.8

0.8.6

Patch Changes

  • Updated dependencies [cde08f3]:
    • @effect/platform@0.43.7
    • @effect/platform-node@0.42.7

0.8.5

Patch Changes

  • Updated dependencies [c96bb17]:
    • @effect/platform@0.43.6
    • @effect/platform-node@0.42.6

0.8.4

Patch Changes

  • Updated dependencies [f1ff44b, 13785cf]:
    • @effect/schema@0.61.5
    • @effect/platform@0.43.5
    • @effect/platform-node@0.42.5

0.8.3

Patch Changes

0.8.2

Patch Changes

  • Updated dependencies [9863e2f]:
    • @effect/schema@0.61.3
    • @effect/platform@0.43.3
    • @effect/platform-node@0.42.3

0.8.1

Patch Changes

  • Updated dependencies [64f710a]:
    • @effect/schema@0.61.2
    • @effect/platform@0.43.2
    • @effect/platform-node@0.42.2

0.8.0

Minor Changes

0.7.2

Patch Changes

0.7.1

Patch Changes

  • #1968 fdf7b0e Thanks @IMax153! - ensure data-loader worker fiber can be interrupted if forked in an uninterruptible region

0.7.0

Minor Changes

Patch Changes

  • Updated dependencies [84da31f, 62b40e8, 645bea2, 62b40e8]:
    • effect@2.2.1
    • @effect/schema@0.61.0
    • @effect/platform-node@0.42.0
    • @effect/platform@0.43.0

0.6.11

Patch Changes

0.6.10

Patch Changes

  • Updated dependencies [21b9edd]:
    • effect@2.1.2
    • @effect/platform@0.42.6
    • @effect/platform-node@0.41.7
    • @effect/schema@0.60.6

0.6.9

Patch Changes

  • Updated dependencies [3bf67cf]:
    • @effect/schema@0.60.5
    • @effect/platform@0.42.5
    • @effect/platform-node@0.41.6

0.6.8

Patch Changes

  • Updated dependencies [0d1af1e, 0d1af1e, a222524]:
    • @effect/schema@0.60.4
    • effect@2.1.1
    • @effect/platform@0.42.4
    • @effect/platform-node@0.41.5

0.6.7

Patch Changes

0.6.6

Patch Changes

0.6.5

Patch Changes

0.6.4

Patch Changes

  • Updated dependencies [f7f19f6]:
    • effect@2.0.5
    • @effect/platform@0.42.1
    • @effect/platform-node@0.41.2
    • @effect/schema@0.60.1

0.6.3

Patch Changes

0.6.2

Patch Changes

0.6.1

Patch Changes

0.6.0

Minor Changes

  • #1842 7b2f874 Thanks @fubhy! - Schema: refactor ParseResult module:
    • add Union issue, and replace UnionMember with Union
    • add Tuple issue, and replace Index with Tuple
    • add TypeLiteral issue
    • add Transform issue
    • add Refinement issue
    • add ast field to Member
    • rename UnionMember to Member
    • Type: rename expected to ast
    • ParseError replace errors field with error field and refactor parseError constructor accordingly
    • Index replace errors field with error field
    • Key replace errors field with error field
    • Member replace errors field with error field
    • ParseError replace errors field with error field
    • make ParseError a Data.TaggedError
    • Forbidden: add actual field

Patch Changes

0.5.6

Patch Changes

  • Updated dependencies [4c90c54, d5a1949, d3d3bda]:
    • @effect/platform@0.40.2
    • effect@2.0.2
    • @effect/platform-node@0.40.2
    • @effect/schema@0.57.2

0.5.5

Patch Changes

  • Updated dependencies [16bd87d]:
    • effect@2.0.1
    • @effect/platform@0.40.1
    • @effect/platform-node@0.40.1
    • @effect/schema@0.57.1

0.5.4

Patch Changes

0.5.3

Patch Changes

0.5.2

Patch Changes

0.5.1

Patch Changes

0.5.0

Minor Changes

0.4.0

Minor Changes

0.3.2

Patch Changes

0.3.1

Patch Changes

0.3.0

Minor Changes

0.2.8

Patch Changes

0.2.7

Patch Changes

0.2.6

Patch Changes

0.2.5

Patch Changes

0.2.4

Patch Changes

0.2.3

Patch Changes

0.2.2

Patch Changes

0.2.1

Patch Changes

0.2.0

Minor Changes

0.1.1

Patch Changes

0.1.0

Minor Changes