Effect
4.0.0-beta.47
Patch Changes
-
#2017
c584726Thanks @gcanti! - Schema: addannotateEncodedfunction for annotating the encoded side of a schema. -
#2013
86a91a4Thanks @gcanti! - Schema: add withDecodingDefaultTypeKey / withDecodingDefaultType, closes #2012 -
#2018
131caf9Thanks @gcanti! - Schema: allowClassconstructors to acceptvoidwhen all fields are optional, closes #2015. -
#2016
c3615c8Thanks @gcanti! - Schema: rename"~rebuild.out"to"Rebuild"
4.0.0-beta.46
Patch Changes
4.0.0-beta.45
Patch Changes
4.0.0-beta.44
Patch Changes
-
#1943
e3f0621Thanks @gcanti! - AddDateFromString,BigIntFromString,BigDecimalFromString,TimeZoneNamedFromString,TimeZoneFromString, andDateTimeZonedFromStringschemas, closes #1941. -
#1996
5b476abThanks @gcanti! - Schema: addStringFromBase64,StringFromBase64Url,StringFromHex, andStringFromUriComponentschemas for decoding encoded strings into UTF-8 strings, closes #1995. -
#1952
6b40e5aThanks @tim-smart! - Effect.repeat now uses effect return value when using options -
#1961
7bb5dceThanks @IMax153! - Rename Atom’sContexttype toAtomContext -
#1975
3b09fb3Thanks @tim-smart! - catch defects when building Entity handlers -
#2000
2370410Thanks @tim-smart! - fix cache constructor inference by moving the lookup option -
#1928
dabc272Thanks @tim-smart! - Addschema.makeEffect(input, options?)toSchema.Bottomand schema-backed classes, matching the existing constructor behavior exposed bymakeUnsafe/makeOptionwhile returning anEffectfailure withSchema.SchemaError. -
#1949
08b63c3Thanks @tim-smart! - Update the unstable HTTP middleware logger to annotate only the request path inhttp.urlinstead of including the full URL (query / fragment), and add a regression test. -
#1962
dfff04cThanks @tim-smart! - AddKeyValueStore.layerSqlto back key-value storage with a SQL database viaSqlClient. -
#1963
9baed9eThanks @tim-smart! - FixUnify.unifyso Layer unions merge correctly, and add type tests covering Layer unification. -
#2004
7846792Thanks @tim-smart! - FixStream.toQueuetypes and implementation to return aQueue.Dequeuein both overloads and delegate toChannel.toQueueArray. -
#1974
1556a24Thanks @juliusmarminge! - Fix unstable CLI boolean flags soFlag.optional(Flag.boolean(...))returnsOption.none()when omitted, and support canonical--no-<flag>negation for boolean flags. -
#1929
b5ea591Thanks @gcanti! - Simplify and align the default-value APIs.Schema.withConstructorDefaultnow accepts anEffect<T>instead of(o: Option<undefined>) => Option<T> | Effect<Option<T>>.Schema.withDecodingDefault/Schema.withDecodingDefaultKeynow accept anEffect<T>instead of() => T, enabling effectful defaults.SchemaGetter.withDefaultfollows the same change, acceptingEffect<T>instead of() => T. -
#1966
0853afaThanks @gcanti! - Reuse existing references when duplicate identifiers have the same representation, closes #1927. -
#1942
ac845f3Thanks @gcanti! - FixErrorClassandTaggedErrorClasstoStringto match nativeErroroutput format (e.g.E: my messageinstead ofE({"message":"my message"})), closes #1940.Also fix prototype properties (e.g.
name) being lost after.extend(). -
#1956
b80c462Thanks @gcanti! - AddSchema.resolveAnnotationsKeyAPI to retrieve the context (key-level) annotations from a schema, closes #1947.Also rename
Schema.resolveIntotoSchema.resolveAnnotations. -
#2005
b3f535dThanks @gcanti! - FixStream.splitLinesto correctly handle standalone\ras a line terminator and flush the final unterminated line when the stream ends, closes #2002. -
#1936
6fe2e93Thanks @IMax153! - FixStream.groupedWithindropping partial batches when the upstream ends or goes idle. -
#1965
8335477Thanks @tim-smart! - return resolvers directly from SqlModel.makeResolvers -
#1960
8c836f9Thanks @IMax153! - AddChildProcessHandle.unref, returning anEffectthat restores the child process reference when run. -
#1984
718ff6fThanks @jannabiforever! - MakeEffect.retrywithtimesargument to propagate the original error. -
#1930
7eed84fThanks @mikearnaldi! - AddStream.serviceandStream.serviceOptionfor accessing services as single-element streams. -
#1935
5df46feThanks @gcanti! - Schema: addasClassAPI to turn any schema into a class with static method support.Example
import { Schema } from "effect";class MyString extends Schema.asClass(Schema.String) {static readonly decodeUnknownSync = Schema.decodeUnknownSync(this);}MyString.decodeUnknownSync("a"); // "a" -
#1958
82dd0f2Thanks @gcanti! - Schema: addMissingSelfGenericcompile-time error forClass,TaggedClass,ErrorClass, andTaggedErrorClasswhen theSelftype parameter is omitted. -
#1957
03ae41eThanks @gcanti! - Schema: remove"~annotate.in"type fromBottominterface, inlining it where needed -
#1951
4677a0aThanks @gcanti! - RenameSchema.makeUnsafeinstance method back toSchema.makeon all schemas and schema-backed classes.Also remove the
static readonly makeoverride fromShardIdto avoid conflicting with the inherited schemamakemethod. The module-levelShardId.make(group, id)function is still available. -
#1999
87e1fc8Thanks @tim-smart! - use NoInfer in Layer constructors to prevent type erasure -
#1971
c1af1b7Thanks @joepjoosten! - Allow unstable CLI fallback prompts to be created dynamically from anEffect. -
#1961
7bb5dceThanks @IMax153! - Rename theServiceMapmodule toContextacross exports, docs, and tests. -
#1973
c8a877bThanks @joepjoosten! - Underline the active label in CLI multi-select prompts and add a scratchpad example for manual verification.
4.0.0-beta.43
Patch Changes
-
#1904
2ae33d0Thanks @juliusmarminge! - Fix JSON-RPC serialization foridvalues that are falsey but valid, including0and"", while still mappingnullto Effect’s internal notification sentinel. -
#1900
979811aThanks @tim-smart! - Fix AI structured output schema generation forSchema.ClassandSchema.ErrorClassby resolving top-level$refentries before passing JSON Schema to providers and default codec transformers. -
#1908
eb7dbefThanks @tim-smart! - Fix stream requests in Entity.toLayerQueue -
#1907
cf50eb4Thanks @tim-smart! - add WorkflowEngine interruptUnsafe -
#1903
1d046feThanks @kitlangton! - AddLayer.suspendas a lazy constructor for dynamically choosing a layer while preserving normal layer sharing.
4.0.0-beta.42
Patch Changes
-
#1897
924e216Thanks @IMax153! - Append concrete choice values to CLI flag help descriptions so generated help shows valid command-line inputs. -
#1894
80e7f0cThanks @tim-smart! - FixMutableList.appendAll/appendAllUnsafeso empty arrays are treated as a no-op instead of leaving behind an empty internal bucket. -
#1895
f8328bfThanks @tim-smart! - Changed socket close handling so all close codes are treated as errors by default unlesscloseCodeIsErroris overridden. -
#1899
66d1c06Thanks @gcanti! - SchemaRepresentation: supportanyOf/oneOfwith sibling keywords infromJsonSchemaMultiDocument -
#1893
bee800bThanks @gcanti! -Number.remainder: fix incorrect results for small floats in scientific notation (e.g.1e-7). -
#1898
8930441Thanks @mikearnaldi! - RenameEffect.transactiontoEffect.txandEffect.retryTransactiontoEffect.txRetry, removeEffect.transactionWith/Effect.withTxState, make nestedEffect.txcalls compose into the active transaction, and make the publicTx*APIs establish atomic transactions without requiringTransactionin common usage.
4.0.0-beta.41
Patch Changes
-
#1881
36f5c21Thanks @gcanti! - AddedBigDecimal.sumAllandBigDecimal.multiplyAllfor feature parity withNumberandBigInt, closes #1880. -
#1869
d8ce758Thanks @gcanti! - Schema: collapse same-type literal branches in JSON Schema output into a singleenumarray, closes #1868.Before:
{"anyOf": [{ "type": "string", "enum": ["A"] },{ "type": "string", "enum": ["B"] }]}After:
{"type": "string","enum": ["A", "B"]} -
#1879
11aab4cThanks @tim-smart! - Highlight active option labels inPrompt.selectandPrompt.multiSelectusing cyan text so selection state is visible beyond the pointer / checkbox icon. -
#1884
3bc1efbThanks @tim-smart! - Fail RpcClient HTTP requests when the server response contains no RPC messages instead of leaving requests pending. -
#1875
70e724eThanks @IMax153! - Fix AI text method toolkit typing to support generic handler toolkits, preserve toolkit union inference, and keep response part narrowing by tool name. -
#1876
738dee7Thanks @tim-smart! - Track ManagedRuntime fibers in a scope -
#1886
2111963Thanks @tim-smart! - add ClusterSchema.WithTransaction annotation -
#1877
198a553Thanks @tim-smart! - allow Context.Key to be covariant
4.0.0-beta.40
Patch Changes
4.0.0-beta.39
Patch Changes
-
#1844
f91fd3dThanks @tim-smart! - RelaxHttpApiClient.urlBuilderto acceptHttpApi.Anyinstead of requiringHttpApi.AnyWithProps. This allows use in helpers generic overHttpApi.Anywhile preserving inferred URL builder types. -
#1851
edaae9dThanks @tim-smart! - Re-export additional core runtime references fromeffect/References, including logger and error reporter references. -
#1856
b47db0bThanks @gcanti! - FixStructutility return types (for examplepick) to preserve the previous simplified shape instead of exposing raw utility types likePick<T, K>, closes #1855. -
#1849
82d3c8eThanks @tim-smart! - Fix theQueue.takeNdocumentation example to end the queue before showing a partial batch. -
#1848
7c22b31Thanks @tim-smart! - RemoveSchedule.composein favor ofSchedule.both, and update schedule examples to useSchedule.both.
4.0.0-beta.38
Patch Changes
-
#1842
f4dbe5bThanks @gcanti! - Schema: renameMakeOptions.disableValidationtodisableChecks. Apply constructor defaults whendisableChecksis true, closes #1841. -
#1837
a71a607Thanks @kitlangton! - FixHttpApiBuildersecurity middleware caching so separate handler builds do not reuse the first provided middleware implementation. -
#1840
66a0494Thanks @tim-smart! - Rename HttpApiClient request optionwithResponsetoresponseModeand add support forresponseMode: "response-only"to return the rawHttpClientResponsewithout decoding. -
#1838
5ef7218Thanks @tim-smart! - UpdateHttpApiClient.urlBuilderto mirror client shape, and encode params/query via endpoint schemas before building URLs. -
#1700
472d260Thanks @tim-smart! - adduseCodecsoption to HttpClientEndpoint constructors