Skip to content

Releases

Fickl 0.10.1

Choose a tag to compare

@github-actions github-actions released this 13 Nov 11:06
d7a4c32

What's Changed

Full Changelog: v0.10.0...v0.10.1

Fickl 0.10.0

Choose a tag to compare

@github-actions github-actions released this 12 Nov 08:33
cc30c9f

What's Changed

Full Changelog: v0.9.0...v0.10.0

Fickl 0.9.0

Choose a tag to compare

@github-actions github-actions released this 12 Nov 01:55
60a662b

Changes that can affect existing code

  • decimal is a native BigInt instead of big.js (#320). JavaScript that calls big.js methods on an F# decimal, such as d.toFixed(2), or reads its c/e/s fields, no longer works. Decimal arithmetic now matches .NET where it did not, and is faster.
  • A single-parameter [<JSX.Component>] passed as a render prop is passed as itself, not wrapped in a lambda (#310).
  • Option-typed interface properties are optional in TypeScript output (#105).
  • The project's LangVersion is enforced, including for package sources compiled with it (#255).
  • Same-file extensions of an [<AttachMembers>] class are attached to it, not exported as module functions (#285).

Documentation is now at https://shayanhabibi.github.io/fickl/ (#430).

What's Changed

Read more

Fickl 0.8.0

Choose a tag to compare

@github-actions github-actions released this 31 Oct 09:48
f4fc8a1

What's Changed

  • fix(ts): emit override on members that hide a base class member by @shayanhabibi in #217
  • feat(js/ts): opt-in for F# exceptions to be real JS Errors by @shayanhabibi in #211
  • feat(js/ts): catch JS-thrown values idiomatically by @shayanhabibi in #213
  • feat(ts): EmitType attribute writes a TypeScript type verbatim by @shayanhabibi in #212
  • feat(ts): Partial/Required/Readonly, partial, and satisfies for jsOptions by @shayanhabibi in #214
  • feat(ts): readonly collections in annotations and a ReadonlyArray binding by @shayanhabibi in #216
  • feat(ts): Fickl.Core.unknown is annotated unknown in TypeScript signatures by @shayanhabibi in #219
  • feat(ts): type predicate and assertion signatures by @shayanhabibi in #215
  • feat(ts): emit F# enums as TypeScript enums and bind imported string enums by @shayanhabibi in #218
  • ci: run the full suite only on ready PRs, and other targets only for releases by @shayanhabibi in #220
  • fix(all): honor fable-disable edits made while watching by @shayanhabibi in #221
  • chore(all): land batch 2026-10-31 by @shayanhabibi in #231
  • test(ts): cover option fields of anonymous records under exactOptionalPropertyTypes by @shayanhabibi in #224
  • fix(ts): keep | null on F# nullable reference types by @shayanhabibi in #226
  • feat(js/ts): WeakReference compiles to WeakRef, and a FinalizationRegistry binding by @shayanhabibi in #227
  • fix(ts): fable-library type-checks under noUncheckedIndexedAccess by @shayanhabibi in #222
  • feat(js/ts): bridge CancellationToken and AbortSignal by @shayanhabibi in #223
  • feat(js/ts): property-key types keyof<'T> and keyof<'T, 'R> in Fickl.Core by @shayanhabibi in #225
  • feat(js/ts): ArraySegment as a typed-array view, and BigUint64Array by @shayanhabibi in #228
  • feat(js/ts): Record<'K, 'V>, ReadonlyRecord and PropertyRecord in Fickl.Core by @shayanhabibi in #229
  • feat(ts): valueof<'T> for T[keyof T] with an indexed-access TypeScript type by @shayanhabibi in #230
  • chore(all): land batch 2026-10-31 (2) by @shayanhabibi in #242
  • feat(js/ts): tagged template literals from F# interpolated strings by @shayanhabibi in #232
  • feat(js/ts): branded primitives string<'m>, bool<'m> and char<'m> in Fickl.Core by @shayanhabibi in #233
  • feat(js/ts): attach members of classes that inherit a JS class by @shayanhabibi in #234
  • feat(js/ts): Proxy and Reflect bindings with a typed handler by @shayanhabibi in #235
  • feat(js/ts): EventTarget and Node.js emitter events as F# IEvent by @shayanhabibi in #236
  • feat(js/ts): callable objects with properties and methods by @shayanhabibi in #237
  • feat(js/ts): import attributes on static and dynamic imports by @shayanhabibi in #238
  • feat(js/ts): top-level await for module values with JS.awaitTopLevel by @shayanhabibi in #239
  • feat(js/ts): round-trip F# values through structuredClone and postMessage by @shayanhabibi in #240
  • feat(js/ts): compile let fields of JS subclasses to #private fields by @shayanhabibi in #241
  • chore(all): land batch 2026-10-31-3 by @shayanhabibi in #252
  • fix(ts): keep a single-use ResizeArray bound outside the loop that uses it by @shayanhabibi in #243
  • fix(ts): declare the static fields of a union class by @shayanhabibi in #244
  • fix(ts): type a getter returning an imported value with its property type by @shayanhabibi in #245
  • fix(ts): invoke a generic delegate without its type arguments by @shayanhabibi in #246
  • fix(ts): make F# arrays of non-numbers assignable to TypeScript T[] by @shayanhabibi in #248
  • feat(ts): labelled and optional tuple elements from erased single-case unions by @shayanhabibi in #249
  • feat(js/ts): new.target in constructors with JS.newTarget and JS.isNewTarget by @shayanhabibi in #250
  • feat(ts): emit global and module augmentations by @shayanhabibi in #251
  • feat(ts): polymorphic this return types for fluent interfaces by @shayanhabibi in #247
  • chore(all): prepare Fickl 0.8.0 release by @shayanhabibi in #253

Full Changelog: v0.7.4...v0.8.0

Fickl 0.7.4

Choose a tag to compare

@github-actions github-actions released this 29 Oct 19:26
93a13a2

What's Changed

New Contributors

Full Changelog: v0.7.3...v0.7.4

Fickl 0.7.3

Choose a tag to compare

@github-actions github-actions released this 29 Oct 12:13

What's Changed

  • fix(js/ts): hold tagged inline interface payloads directly; add copy representations by @shayanhabibi in #138
  • fix(ts): keep the declared union type on TypeScriptTaggedUnion constructions by @shayanhabibi in #139
  • fix(all): keep local project references out of package detection by @shayanhabibi in #140

Full Changelog: v0.7.2...v0.7.3

Fickl 0.7.2

Choose a tag to compare

@github-actions github-actions released this 27 Oct 02:58

What's Changed

Full Changelog: v0.7.1...v0.7.2

Fickl 0.7.1

Choose a tag to compare

@github-actions github-actions released this 26 Oct 21:08

What's Changed

Full Changelog: v0.7.0...v0.7.1

Fickl 0.7.0

Choose a tag to compare

@github-actions github-actions released this 26 Oct 18:22

What's Changed

Full Changelog: v0.6.10...v0.7.0

Fickl 0.6.10

Choose a tag to compare

@github-actions github-actions released this 26 Oct 07:32

What's Changed

  • fix(js): explicit classes over primary-constructor classes keep the base by @shayanhabibi in #97

Full Changelog: v0.6.9...v0.6.10