Releases: fable-compiler/Fable
Releases · fable-compiler/Fable
5.0.0-alpha.18
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
--cwdwith quoted paths (by @MangelMaxime) - [All] Fix
--legacyCrackerflag logic (by @MangelMaxime) - [All] Fix
BuildalyzerCrackerso it can work on .NET 10 (by @MangelMaxime)
Changed
- [All] Invoke MSBuild from Fable current working directory (by @cr3wdayt5p)
4.28.0
Fixed
- [All] Fix
BuildalyzerCrackerso it can work on .NET 10 (by @MangelMaxime) - [All] Fix
--cwdwith quoted paths (by @MangelMaxime)
5.0.0-alpha.15
Added
- [TS] Added support for
erasableSyntaxOnlyin TypeScript (by @ncave) - [All] Added some default
Systemexception implementations (by @ncave) - [All] Added
ofOption/toOption/ofValueOption/toValueOption(by @ncave) - [Python] Added
Decorateattribute to add Python decorators to classes (by @dbrattli) - [Python] Added
ClassAttributesattribute to control Python class generation (@dbrattli) - [Python] Added support for Python 3.14 (by @dbrattli)
Changed
- [JS/TS] Replace the deprecated
substrmethod withslice(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
BitConverterreturn 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
ErrorwithException(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 ofT | 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 usingSimpleNamespacewith 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
emptyCEs list tonullwhen encountered in thechildrenlist (by @MangelMaxime) - [JS/TS] JSX : Allow usage of
unboxwhen definining properties forJSX.create(by @MangelMaxime)
4.26.0
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.Corecopy types from internal module (by @MangelMaxime)
4.25.0
Fixed
- [JS/TS] Propagate non-captured exception when running
Async.StartorAsync.StartImmediate(by @MangelMaxime) - [JS/TS] Report an error at compilation time when trying to use
Async.RunSynchronously(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
nullArgCheckreport 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)