Skip to content

Bump fable from 4.29.0 to 5.0.0#19

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/dot-config/fable-5.0.0
Open

Bump fable from 4.29.0 to 5.0.0#19
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/nuget/dot-config/fable-5.0.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Apr 23, 2026

Updated fable from 4.29.0 to 5.0.0.

Release notes

Sourced from fable's releases.

5.0.0

Fixed

  • [Python] Fix derived classes of generic abstract classes not being instantiable due to mismatched mangled method names between abstract stubs and overrides (by @​dbrattli)
  • [Dart/Rust] Fix ResizeArray reference equality (by @​ncave)
  • [JS/TS/Python/Beam] Fix ResizeArray (System.Collections.Generic.List) equality to use reference equality instead of structural equality (fixes #​3718)
  • [Beam] Fix List.Cons call replacement and test (by @​ncave)
  • [Beam/Dart/Python/TypeScript] Fix Array.Equals to use reference equality instead of structural equality (by @​ncave)
  • [Dart/Python/TypeScript/Rust] Fix Seq.foldBack2 for sequences with different lengths (by @​ncave)
  • [All] Fix missing HashSet implementations and tests (by @​ncave)
  • [Rust] Fix Array/HashMap/HashSet internal representation (by @​ncave)
  • [Rust] Fix F# classes reference equality semantics (by @​ncave)
  • [Python] Fix missing Array module implementations and tests (by @​ncave)
  • [Python] Fix object expressions implementing interfaces with [<CLIEvent>] members no longer produce unimplementable abstract Protocol members (fixes #​3039)
  • [Python] Fix DateTime.TryParse incorrectly assigning DateTimeKind.Local to naive datetime strings (should be DateTimeKind.Unspecified) (fixes #​3654)
  • [JS/TS] Fix String.Contains ignoring StringComparison argument (second argument was silently discarded)
  • [Python] Fix String.Contains ignoring StringComparison argument (second argument was silently discarded)
  • [All] Fix --noRestore not skipping MSBuildCracker restores (by @ randrag)

5.0.0-rc.7

Added

  • [Python/Beam] Add F# quotation support — construction, pattern matching, and evaluation via LeafExpressionConverter.EvaluateQuotation (by @​dbrattli)
  • [JS/TS] Add F# quotation support — construction, pattern matching, and evaluation (by @​OnurGumus)
  • [All] Add support for Guid.CreateVersion7() and Guid.CreateVersion7(DateTimeOffset) (by @​OnurGumus)
  • [All] Add missing Array, List, and Seq random choice/shuffle/sample members and tests (by @​ncave)
  • [Dart/Rust] Add missing System.Random implementations and tests (by @​ncave)
  • [Beam] Implement missing DateTimeOffset members, add DateOnly and TimeOnly support (by @​dbrattli)

Fixed

  • [All] Fix unnecessary object allocations during AST traversal when visiting Import expressions (by Repo Assist)
  • [Beam] Fix System.Random.Next(0) implementation (by @​ncave)
  • [Python] Fix System.Random seeded implementation (by @​ncave)
  • [Beam] Fix System.Random seeded implementation to use per-instance state (by @​dbrattli)
  • [Dart] Fix Array.compareWith comparing lengths before elements, producing wrong results for arrays with common prefixes (fixes #​2961)
  • [Python] Fix unsafe option unwrapping in DateTimeOffset.get_Offset and regex replacements (by @​dbrattli)
  • [All] Replace unsafe option .Value unwrapping with safe alternatives in Python/Replacements.fs and Rust/Fable2Rust.fs (code scanning alerts IONIDE-006)
  • [All] Add [<return: Struct>] to partial active patterns in Dart and Rust targets to reduce allocations (code scanning alerts IONIDE-009)
  • [JS/TS] Fix Guid to use cryptographically strong random values (by @​ncave)
  • [Python] Fix DateTimeOffset millisecond constructor and property (by @​ncave)
  • [Python] Implement missing DateTimeOffset members and fix equality/comparison to use UTC-normalized instants (by @​dbrattli)
  • [Python] Add DateOnly and TimeOnly support (by @​dbrattli)
  • [Python] Fix String.IndexOf/LastIndexOf with StringComparison argument emitting it as a start-index instead of a compile error (by @​repo-assist)
  • [Beam] Fix String.IndexOf/LastIndexOf with StringComparison argument incorrectly treating the enum value as a start index
  • [JS/TS/Python] Fix Async.StartChild with timeout always timing out even when the computation finishes before the deadline (fixes #​4481) (by @​MangelMaxime)

5.0.0-rc.6

Fixed

  • [Dart] Enable explicit variable typing for more data types (by @​ncave)
  • [Dart] Fix tests for round, sign, truncate, log, log2, log10, pow, DivRem, Min, Max, Clamp, MinMagnitude, MaxMagnitude, cosh, sinh, tanh, and float Parse (by @​ncave)
  • [Python] Add Math.DivRem support for int, int64, and bigint (by @​dbrattli)
  • [Python] Fix modulo with negative numbers using Python floored semantics instead of .NET truncated semantics for bigint (fixes #​4462) (by @​dbrattli)
  • [Beam] Fix System.String.Concat with 4+ arguments not being supported (by @​dbrattli)
  • [TS/Python] Fix thisArg type for overloads in structs (#​4453) (by @​ncave)
  • [TS/Python] Fix invalid this argument type in structs (#​4453) (by @​ncave)
  • [JS/TS] Fix N format specifier (ToString("N0"), String.Format("{0:N0}", ...)) producing a trailing dot when precision is 0 (fix #​2582) (by @​MangelMaxime)
  • [JS/TS] Fix C0 and P0 format specifiers producing trailing dot (e.g., "¤1,000.""¤1,000") (by @​MangelMaxime)
  • [All] Fix captured side-effect-free values (e.g. empty ResizeArray) being incorrectly inlined into object expression getters in release mode, causing a new instance to be created on each getter call (fixes #​3779) (by @​MangelMaxime)
  • [Python] Fix missing await on else branch of ternary expressions in async closures (by @​dbrattli)
  • [Beam] Fix |> ignore on cross-module Emit calls generating variable bindings that shadow Emit case-clause variables (by @​dbrattli)
  • [Beam] Fix containsIdentRef not checking Call ThisArg (by @​dbrattli)
  • [All] Fix CLI color not resetting after error messages (fixes #​3755) (by @​MangelMaxime)
  • [JS/TS] StringEnum now respect CompiledValue and CompiledName (by @​shayanhabibi)
  • [JS/TS] Fix invalid syntax emitted when negating negative literals (fix #​4251) (by @​MangelMaxime)
  • [Rust] Fix negative counting in CallInfo.GenericArgs (by @​ncave)
  • [Rust] Fix inline bindings and captured idents tracking (by @​ncave)
  • [Rust] Fix return! in async computation expressions so inner async workflows are returned and awaited correctly (by @​mizzle-mo)
  • [JS/TS] Improve Regex.Escape and Regex.Unescape handling (by @​MangelMaxime)
  • [All] Fix allow plugins to target .NET6 target framework (by @​MangelMaxime)
  • [Python] Fix function references passed as arguments inside tail-call optimised functions gaining unnecessary default parameters for outer TCO variables they don't reference (fix #​3877)
  • [TS] Fix abstract instance methods not emitted in TypeScript when class uses [<AttachMembers>] (fixes #​3506) (by @​MangelMaxime)
  • [JS/TS] Fix Unchecked.defaultof<'T> for struct types with fields returning undefined instead of zero-initialized values (by @​MangelMaxime)
  • [JS/TS] Fixed quotation for union string cases (by @​MangelMaxime)
  • [Python] Fix Unchecked.defaultof<'T> for struct types with fields returning incorrect values instead of zero-initialized instances (by @​MangelMaxime)
  • [Python] Fix Unchecked.defaultof<char> returning "" (empty string) instead of "\u0000" (null character) (by @​MangelMaxime)
  • [Python] Improve Unchecked.defaultof<_> for declared entities (by @​MangelMaxime)

5.0.0-rc.5

Added

[All] Add support for [<InlineIfLambda>] (by @​MangelMaxime)

5.0.0-rc.4

Fixed

  • [JS/TS] Fix Array.zeroCreate producing null for user-defined struct (value type) elements instead of a default-initialized instance (by @​MangelMaxime)
  • [All] Fix interpolated string holes missing format specifiers in State.fs and Python/Replacements.fs (code scanning alerts 1144, 1145, 1512)
  • [Rust] Replace unsafe .IsSome && .Value option pattern with Option.exists in Fable2Rust.fs (code scanning alert 1125)
  • [JS/TS] Fix Unchecked.defaultof<char> being emitted as null instead of '\0' (by @​MangelMaxime)
  • [JS/TS] Fix static val mutable fields declared with [<DefaultValue>] not being zero-initialized (fix #​2739) (by @​MangelMaxime)
  • [JS/TS/Python] Fix record/struct types augmented with static let or static member val generating extra constructor parameters for each static field, causing constructor arguments to be assigned to wrong slots (by @​MangelMaxime)
  • [TS] Annotate System.Collections.Generic.IList<T> as MutableArray<T> (by @​MangelMaxime)
  • [JS/TS] Fix ResizeArray index getter/setter not throwing IndexOutOfRangeException when index is out of bounds (fix #​3812) (by @​MangelMaxime)
  • [Beam] Fix unused term warning in try/catch when exception variable is not referenced (by @​dbrattli)
  • [Beam] Fix "no effect" warning for pure BIF calls (self/0, node/0) in non-final block positions (by @​dbrattli)
  • [Beam] Fix reraise() generating unbound MatchValue variable — use raw Erlang reason variable for re-throw (by @​dbrattli)
  • [Beam] Fix Erlang.receive<'T>() resolving to timeout overload due to F# unit argument (by @​dbrattli)
  • [JS/TS] Generate comments for members in class decorated with [<AttachMembers>] (by @​MangelMaxime)
  • [Beam] Fix [<ImportAll>] generating invalid module:*() Erlang code when binding is used as a value (by @​dbrattli)
  • [Beam] Fix string slicing and Substring with compound expressions producing wrong binary:part length due to missing parentheses in emitted Erlang (by @​dbrattli)
  • [Beam] Fix non-ASCII characters in string literals being truncated to single bytes — emit <<"..."/utf8>> instead of <<"...">> (by @​dbrattli)
  • [Beam] Fix Emit expressions with case leaking variables into surrounding scope — auto-wrap in IIFE for scope isolation (by @​dbrattli)

5.0.0-rc.3

Added

  • [Beam] Auto-generate rebar3 scaffold (rebar.config, .app.src) after compilation; .erl files now placed in src/ subdirectories (by @​dbrattli)
  • [Beam] Support [<ImportAll>] + [<Erase>] interface pattern for typed FFI bindings (by @​dbrattli)

Fixed

  • [Beam] Fix dropped top-level side effects — multiple ActionDeclaration main/0 functions are now merged (by @​dbrattli)
  • [Beam] Fix %% escape in string interpolation producing double % instead of single (by @​dbrattli)
  • [Beam] Fix double-quoted atoms for uppercase CompiledName on DU cases (e.g. ''EXIT'''EXIT') (by @​dbrattli)
  • [Beam] Fix cross-project imports producing self-recursive calls when source files share the same name (by @​dbrattli)
  • [Beam] Support Type.GetGenericArguments and Type.GetInterface for reflection (by @​dbrattli)
  • [TS] Correctly resolve type references for TypeScriptTaggedUnion (by @​MangelMaxime and @​jrwone0)
  • [TS] Expose optional stack property on Exception (by @​MangelMaxime)
  • [Python] Fix nonlocal/global declarations generated inside match/case bodies causing SyntaxError (by @​dbrattli)
  • [Python] Fix exception variable captured in deferred closures causing NameError (PEP 3110 scoping) (by @​dbrattli)
  • [JS/TS] Support format specifiers and single hole in JSX string templates (by @​MangelMaxime)
  • [All] Fix generic parameter resolution in inline functions with static member constraints (by @​Programmerino and @​MangelMaxime)

5.0.0-rc.2

Added

  • [Beam] Add arithmetic tests and support for DivRem, MinMagnitude, MaxMagnitude, Decimal rounding, BigInt.Log (by @​dbrattli)
  • [Beam] Add fable_random.erl and fix Random seeded/NextBytes tests (by @​dbrattli)

Fixed

  • [Python] Fix __hash__ to return native int instead of int32 for Python 3.14 compatibility (by @​dbrattli)
  • [Python] Fix PyPI publish workflow version pattern to support rc tags (by @​dbrattli)
  • [Beam] Bundle fable-library-beam in NuGet package so dotnet fable --lang beam works (by @​dbrattli)
  • [Beam] Fix optional arguments by unwrapping at call sites and padding missing trailing args (by @​dbrattli)
  • [Beam] Fix generic constraint interface dispatch (by @​dbrattli)
  • [Beam] Fix class constructor field invokes and explicit val fields (by @​dbrattli)
  • [Beam] Fix mutable record field mutation (by @​dbrattli)
  • [JS/TS] Allows compiling fable-library-ts for Browser environment (by @​goswinr)

5.0.0-rc.1

Added

  • [Beam] Add Erlang/BEAM target (--lang beam). Compiles F# to .erl source files. 2086 tests passing. (by @​dbrattli)

Fixed

  • [Python] Fix type var scoping for PEP 695 annotations: emit Any for type vars outside function scope and prevent non-repeated generic params from leaking into ScopedTypeParams (by @​dbrattli)
  • [JS/TS] Ignore extra args in FSharpType functions (by @​olivercoad)

5.0.0-alpha.24

Fixed

  • [Python] Fix Array.length, .Length, Array.isEmpty, and ResizeArray.Count to use len() instead of .length property for plain Python list interop (by @​dbrattli)
  • [Python] Fix Task<T> pass-through returns not being awaited in if/else and try/with branches (by @​dbrattli)
  • [Python] Fix :? T as x type test pattern in closures causing UnboundLocalError due to cast() shadowing outer variable (by @​dbrattli)
  • [All] Prevent Fable from freezing when running a sub-process via --run (fix #​3631) (by @​MangelMaxime)
  • [All] Improve console width detection when rewritting console output (by @​MangelMaxime)

5.0.0-alpha.23

Changed

  • [Python] Changed DU representation to use separate classes for each case (by @​dbrattli)
  • [Python] Fable will no longer auto-generate __str__ or __hash__ for custom types. Use the Py.Stringable and Py.Hashable marker interfaces to generate these methods (by @​dbrattli)

Added

  • [Python] Added ABC base classes for F# types and Py marker interfaces for Python interop (by @​dbrattli)
  • [Python] Add tuple pattern matching with guards and improve match statement generation (by @​dbrattli)
  • [Python] Add Python 3.10+ match statement support for pattern matching (by @​dbrattli)

Fixed

  • [Python] Fix curry/uncurry to handle arbitrary number of arguments (by @​dbrattli)
  • [Python] Fix type annotations for protocols, Option casting, and abstract classes (by @​dbrattli)
  • [Python] Fix type annotations for curried functions and numeric types (by @​dbrattli)
  • [Python] Fix type annotations for inref, IList, DateKind, and regex collections (by @​dbrattli)
  • [Python] Fix type annotations for protocols, ABCs, Atom, and Set module (by @​dbrattli)
  • [Python] Fix type annotations for async functions, date operations, and None handling (by @​dbrattli)
  • [Python] Fix type annotations for tuple indexing, generic defaults, and reflection (by @​dbrattli)
  • [All] Fix StringBuilder.Chars getter and setter (by @​MangelMaxime)

Removed

  • [All] Remove --legacyCracker flag, MSBuild cracker is now the default and the only cracker supported (by @​MangelMaxime)

5.0.0-alpha.22

Fixed

  • [Python] Use Fable AST for type parameter extraction instead of Python AST heuristics (by @​dbrattli)
  • [Python] Fix library type stubs for parse_int32/64 and from_integer (by @​dbrattli)
  • [Python] Fix missing type parameters on generic methods (by @​dbrattli)
  • [JS/TS] Fix #​4305 DateTimeOffset.Now returns wrong time (by @​ncave)

5.0.0-alpha.21

Added

  • [Python] Support catching Python BaseException subclasses (KeyboardInterrupt, SystemExit, GeneratorExit) for Python interop (by @​dbrattli)

Changed

  • [Python] F# task { } expressions now generate Python async def functions (by @​dbrattli)
  • [Python] Generate idiomatic except clauses for typed exception patterns (by @​dbrattli)

Fixed

  • [Python] Fix ResizeArray compatibility with Seq/Array functions (by @​dbrattli)
  • [Python] Fix FSharpList generic type parameter handling for IEnumerable_1 compatibility (by @​dbrattli)

5.0.0-alpha.20

Added

  • [Python] Add Array.skipWhile support (by @​dbrattli)
  • [Python] Add Array.takeWhile support (by @​dbrattli)
  • [Python] Allow IEnumerator_1 as base class to fix typing issues (by @​dbrattli)
  • [Python] Add Pythonic import path syntax for relative imports (.module, ..parent, ...grandparent) (by @​dbrattli)
  • [Python] Add [<Py.DecorateTemplate>] attribute for creating custom decorator attributes (by @​dbrattli)
  • [Python] Add [<Py.ClassAttributesTemplate>] attribute for creating custom class attribute shortcuts (by @​dbrattli)
  • [Python] Add [<Py.DataClass>] as a built-in shorthand for [<Py.ClassAttributes(style = Attributes, init = false)>] (by @​dbrattli)

Fixed

  • [Python] Fix String.Concat spread operator issue in Python transpilation (by @​dbrattli)
  • [Python] Fix regression [<Erase>] on class types not preventing them from being emitted to Python (by @​dbrattli)
  • [Python] Fix regression %A format specifier to output booleans as lowercase true/false (by @​dbrattli)
  • [Python] Fix various bugs in fable-library numeric types and string operations (by @​dbrattli)

Changed

  • [Python] [<Py.Decorate>] now emits decorator strings verbatim and adds importFrom parameter for explicit import control (by @​dbrattli)

5.0.0-alpha.19

Fixed

  • [Python] Fix printf.cont() not applying continuation function when currying (by @​dbrattli)

Added

  • [Python] Add support for [<Py.Decorate>] attribute on methods (previously only worked on classes)
  • [Python] Add new [<Py.ClassMethod>] attribute to emit @​classmethod instead of @​staticmethod
  • [Python] Added support for Pydantic serialization of core numeric and array types (by @​dbrattli)

5.0.0-alpha.18

Fixed

  • [Python] Fix record member method naming (by @​dbrattli)
  • [Python] Fix regression, named arguments not being converted to snake_case (by @​dbrattli)
  • [Python] Fix regression, erased interfaces should not generate code (#​4277) (by @​dbrattli)

Changed

  • [Rust] Update fable-library-rust dependencies (by @​ncave)
  • [All] Update TargetFramework to net10.0 (by @​ncave)
  • [All] Update FCS to latest (commit cfda5f6) (by @​ncave)

5.0.0-alpha.17

Changed

  • [Python] fable-library for Python is now distributed via PyPI instead of being bundled in the NuGet package (by @​dbrattli)

5.0.0-alpha.16

Fixed

  • [All] Fix --cwd with quoted paths (by @​MangelMaxime)
  • [All] Fix --legacyCracker flag logic (by @​MangelMaxime)
  • [All] Fix BuildalyzerCracker so it can work on .NET 10 (by @​MangelMaxime)

Changed

  • [All] Invoke MSBuild from Fable current working directory (by @​cr3wdayt5p)

5.0.0-alpha.15

Added

  • [TS] Added support for erasableSyntaxOnly in TypeScript (by @​ncave)
  • [All] Added some default System exception implementations (by @​ncave)
  • [All] Added ofOption/toOption/ofValueOption/toValueOption (by @​ncave)
  • [Python] Added Decorate attribute to add Python decorators to classes (by @​dbrattli)
  • [Python] Added ClassAttributes attribute to control Python class generation (@​dbrattli)
  • [Python] Added support for Python 3.14 (by @​dbrattli)

Changed

  • [JS/TS] Replace the deprecated substr method with slice (by @​Thorium)

Fixed

  • [TS] Fix ObjectExpr tests with multiple interfaces (by @​ncave)
  • [TS] Fix ObjectExpr abstract base constructor type (by @​ncave)
  • [JS/TS] Fix #​4240 Missing DateTime constructor (by @​ncave)
  • [PHP] Fix php import extensions (by @​MangelMaxime)
  • [TS] Fix #​3973 Typescript imports file extension (by @​ncave)
  • [TS] Fix support for abstract classes and members (by @​ncave)
  • [TS] Fix getters, setters, indexers in interfaces (by @​ncave)
  • [TS] Enable typedArrays flag usage for TypeScript (by @​ncave)
  • [All] Fix #​4221 Fable.Type union case arg names (by @​ncave)
  • [All] Erase Nullable Reference Types to inner type (by @​ncave)
  • [Python] Improve Python (e.g. Pydantic) interop (by @​dbrattli)
  • [JS/TS] Fix comparers for non-nullable types (by @​ncave)
  • [Rust] Fix curried object expression getters (by @​ncave)
  • [Rust] Fix compiler-generated generic args (by @​ncave)
  • [All] Fixed #​4041 missing unit argument (by @​ncave)
  • [JS/TS/Python] Fixed eq comparer mangling (by @​ncave)
  • [All] Fix all BitConverter return types (by @​ncave)
  • [TS] Don't cast union case types to any (by @​ncave)
  • [JS/TS] Fix Dictionary.ICollection.Remove (by @​ncave)
  • [TS/Dart] Fixed optional parameter types (by @​ncave)
  • [TS] Initialize un-initialized variables (by @​ncave)
  • [JS/TS] Replace Error with Exception (by @​ncave)
  • [All] Fix MSBuildResolver to include define when restoring the project (by @​MangelMaxime)

5.0.0-alpha.14

Added

  • [Python] Support for Nullable Reference Types (by @​dbrattli)
  • [JS/TS] Fix #​3533: Add directives prologues supports (by @​MangelMaxime)
  • [JS/TS] Support for Nullable Reference Types (by @​ncave and @​MangelMaxime)
  • [Rust] Initial support for Nullable Reference Types (by @​ncave)

Changed

  • [Python] Use Python 3.12 type parameter syntax. Deprecate Python 3.10 and 3.11 (by @​dbrattli)
  • [Python] Records now snake-cases all member fields (by @​dbrattli)
  • [Python] Anonymous records now preserves the casing of member fields (by @​dbrattli)
  • [Python] Option type is now Option[T] instead of T | None (by @​dbrattli)
  • [Python] Use uv instead of Poetry for package management (by @​dbrattli)
  • [Python] Fable Library for Python is now partially written in Rust (by @​dbrattli)
  • [All] Improve filewatcher error messages (by @​goswinr)

Fixed

  • [Python] Fixed static properties and are now translated as Python class attributes (by @​dbrattli)
  • [Python] Fixed DateTime with DateTimeKind generates proper enum reference (#​3689) (by @​dbrattli)
  • [Python] Fixed Dictionary KeyValuePair enumeration when casting to IEnumerable (#​3771) (by @​dbrattli)
  • [Python] Fixed createEmpty<T> for interfaces using SimpleNamespace with type casting (#​3604) (by @​dbrattli)
  • [Python] Fixed EmitMethod + ParamObject losing keyword arguments (#​3871) (by @​dbrattli)
  • [Python] Fixed EmitConstructor + ParamObject losing keyword arguments (#​3871) (by @​dbrattli)
  • [Python] Fixed DateTimeOffset.TryParse, ToString() and Offset property access (#​3854) (by @​dbrattli)
  • [Python] Fixed anonymous records in Maps causing comparison errors (#​3869) (by @​dbrattli)
  • [Python] Fixed handling of erased types for Python (#​3968) (by @​dbrattli)
  • [Python] Fixed unit function (zero arguments functions) are transpiled inconsistently (#​4126) (by @​dbrattli)
  • [Python] Fixed resource managers with empty body (#​3912) (by @​dbrattli)
  • [Python] Fixed Async.Sleepto handle TimeSpan correctly (#​4137) (by @​dbrattli)
  • [Python] Make sure snake-cased Record do not conflict (by @​dbrattli)
  • [Python] Do not return None | None for optional unit types (#​4127) (by @​dbrattli)
  • [JS/TS] JSX : Alias empty CEs list to null when encountered in the children list (by @​MangelMaxime)
  • [JS/TS] JSX : Allow usage of unbox when definining properties for JSX.create (by @​MangelMaxime)

5.0.0-alpha.13

Fixed

  • [Python] Fixed testing with interfaces leads to incorrect pattern match (#​3972) (by @​dbrattli)
  • [Python] Fixed error when type contains multiple generic type parameters (#​3986) (by @​dbrattli)
  • [Python] Fixed import path handling for libraries (#​4088) (by @​dbrattli)
  • [Python] Reenable type aliasing for imports with name "*" (by @​Freymaurer)
  • [JS/TS] Optimise JSX output in order to avoid F# list CEs to surface in it (by @​MangelMaxime)

Removed

  • [All] Remove unused Fable.Core copy types from internal module (by @​MangelMaxime)

5.0.0-alpha.12

Added

  • [Python] Add support for nullArgCheck(by @​MangelMaxime)
  • [All] Add support for F# nullness (by @​MangelMaxime)
  • [JS/TS] Add support for Unchecked.nonNull (by @​MangelMaxime)
  • [All] Add support for TreatWarningsAsErrors (by @​MangelMaxime)
  • [All] Print help message on unexpected arguments (by @​MangelMaxime)

Fixed

  • [JS/TS] Make nullArgCheck report the same error message as on .NET (by @​MangelMaxime)
  • [TS] Sanitize DUs case names when generating constructor function (by @​MangelMaxime)
  • [All] Don't print help message on failed compilation (by @​MangelMaxime)
  • [JS] Don't generate an import statement for pojos defined in another file (by @​shayanhabibi)

5.0.0-alpha.11

Added

  • [JS/TS] Add support for CaseRules.LowerAll on StringEnums (by @​shayanhabibi)
  • [Rust] Support Rust 2024 language edition (by @​ncave)
  • [JS/TS] Add C and c format for numeric types (by @​MangelMaxime)
  • [JS/TS] Add B and b format for numeric types (by @​MangelMaxime)
  • [JS/TS] Add n format for numeric types (by @​MangelMaxime)
  • [JS/TS] Generate compiler error when detecting an invalid/unsupported format specifier for numeric types (by @​MangelMaxime)

Fixed

  • [JS/TS] Fix #​4025: No reflection info for pojos (by @​alfonsogarciacaro)

  • [JS/TS] Fix #​4049: decimal/bigint to integer conversion checks (by @​ncave)

  • [JS/TS] Fix decimal to char conversion checks (by @​ManngelMaxime)

  • [JS/TS] Propagate non-captured exception when running Async.Start or Async.StartImmediate (by @​MangelMaxime)

  • [JS/TS] Report an error at compilation time when trying to use Async.RunSynchronously (by @​MangelMaxime)

  • [JS/TS] Fix short DateTime and DateTimeOffset short format strings (by @​MangelMaxime)

  • [All] Don't scan system packages for plugins (by @​MangelMaxime)

  • [JS/TS] Fix date formatting when repeating a format token more than the known format (example repeating 'd' more than 4 times) (by @​MangelMaxime)

  • [Python] Fix date formatting when repeating a format token more than the known format (example repeating 'd' more than 4 times) (by @​MangelMaxime)

  • [JS/TS] Fix #​4010: Supports direct nested types when using jsOptions (by @​MangelMaxime)

    let opts =
        jsOptions<Level1> (fun o ->
            o.level2.level3.valueA <- 10
            o.level2.level3.valueB <- 20
            o.topValueA <- 20
        )
  • [JS/TS] Fix numeric formats (by @​MangelMaxime)

Changed

  • [JS/TS] Throw an error is an invalid Numeric format is provided (mimic .NET behavior) (by @​MangelMaxime)

5.0.0-alpha.10

Added

  • [Python] - Print root module and module function comments (by @​alfonsogarciacaro)
  • [Rust] Add support for module comments (by @​ncave)
  • [Rust] Add support for null strings (by @​ncave)
  • [TS/JS] Pojo attribute support (by @​alfonsogarciacaro)

Fixed

  • [JS/TS] - Fix anonymous record printing (#​4029) (by @​alfonsogarciacaro)
  • [Python] - Fix #​3998: PhysicalEquality (by @​alfonsogarciacaro)
  • [Python] Resolve relative paths for non-qualified imports (#​3481) (by @​alfonsogarciacaro)
  • [Python] importSideEffects shouldn't generate identifier (#​3965) (by @​alfonsogarciacaro)
  • [JS/TS] Fix #​4031: Hoist vars locally in for and while loops (@​alfonsogarciacaro)

5.0.0-alpha.9

Fixed

  • [All] Add --realsig+ to fix Method not found: 'Boolean Fable.CompilerOptions.Equals (by @​nojaf)

5.0.0-alpha.8

Added

  • [TS] Include XML Doc comment on interface properties (by @​Freymaurer)
  • [TS] Generate interface type when using the "ParamObject" class pattern (by @​MangelMaxime)
  • [Rust] - Initial support for null values (by @​ncave)

5.0.0-alpha.7

Fixed

  • [All] Disable .NET Welcome message when cracking project (#​4014) (by @​MangelMaxime)

5.0.0-alpha.6

Added

  • [All] Add StringBuiler.Append(c: char, repeatCount: int) overload (by @​roboz0r)
  • [All] Added primitive types equality and comparison (by @​ncave)
  • [All] Updated FCS to latest F# 9.0 (by @​ncave)
  • [All] Updated Fable-FCS to latest F# 9.0 (by @​ncave)
  • [All] Updated metadata to latest .NET 9.0 (by @​ncave)
  • [All] Updated FCS type constraints (by @​ncave)

Fixed

  • [Py] Add missing unicode categories in python library (by @​joprice)
  • [All] Log JSON output if we fail to parse MSBuild result (by @​MangelMaxime)

5.0.0-alpha.5

Added

  • [JS/TS/Python] Add new TimeSpan overloads support coming from .NET 9.0 (by @​MangelMaxime)
  • [Rust] Add new TimeSpan overloads support coming from .NET 9.0 (by @​ncave)

Fixed

  • [JS/TS] Fix DateTimeOffset.ToLocalTime (by @​MangelMaxime)
  • [All] Don't fails silently if an unknown argument is provided, instead log the error and print the help message (by @​MangelMaxime)

5.0.0-alpha.4

Fixed

  • [TS] Make discriminated union .Is* properties works (@​MangelMaxime)
  • [JS/TS/Python] Fix h in DateTime.ToString (@​MangelMaxime)
  • [JS/TS] Fix hh in DateTime.ToString (@​MangelMaxime)
  • [JS/TS] Don't generate the setter code if a property is decorated with [<Erase>] (@​MangelMaxime)

5.0.0-alpha.3

Fixed

  • [Python] Fix type testing against uint8, uint32, uint64, decimal (@​MangelMaxime)
  • [JS/TS] Workaround source map generation bug (deteriorate them a little) (@​MangelMaxime)

5.0.0-alpha.2

Fixed

  • [All] Allow Fable 5 to be used with Fable 4 plugins (@​ncave)

5.0.0-alpha.1

Added

  • [All] Add --legacyCracker as a fallback

Changed

  • [All] Make MSBuildCracker the default
  • [All] Replace FABLE_COMPILER_4 with FABLE_COMPILER_5 as the compiler directive
  • [All] Move TargetFramework to net8.0

Commits viewable in compare view.

Dependabot compatibility score

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


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

---
updated-dependencies:
- dependency-name: fable
  dependency-version: 5.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Apr 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants