Releases: fable-compiler/Fable
4.4.1
Changed
All
- Fix #3567: Turn off FCS warning 3560 by default (by @vzarytovskii)
Fixed
Rust
- Fixed recursive lambda captured idents cloning (by @ncave)
4.4.0
Changed
All
- Updated FCS to bd66d54b1ac4dd0f252c0a37196c2ccd54628356 (by @ncave)
JavaScript
- Support (un)curry up to 20 arguments (by @MangelMaxime)
Python
- Remove support for Python 3.9. Add GH testing for Python 3.12 (by @dbrattli)
- Support (un)curry up to 20 arguments (by @MangelMaxime)
Dart
- Support (un)curry up to 20 arguments (by @MangelMaxime)
4.3.0
Added
Python
- Added
Async.StartChild(by @dbrattli) - Fix #3482: Revert removal of
Py.pythonandPy.expr_python(by @dbrattli)
Changed
JavaScript
- Improve error messages for
Decimal.Parse,Double.Parse,Int32.Parse,Long.Parse(by @ncave)
Rust
- Improve error messages for
BigInt.Parse,DateOnly.Parse,DateTime.Parse,DateTimeOffset.Parse,Decimal.Parse,TimeOnly.Parse(by @ncave)
Python
- Improve error messages for
Double.Parse,Int32.Parse,Long.Parse(by @ncave) - Refactored async trampoline leveraging asyncio mainloop. (by @dbrattli)
Fixed
JavaScript
- Fix #3541: Interface imported in generated javascript when DU has an interface type constraint (by @ncave)
Python
- Fixed
Async.Parallel(by @dbrattli)
4.2.2
4.2.1
- Fix package to include Fable libraries folders
4.2.0
-
Fix #3480: Function decorated with
[<NamedParams>]without arguments provided should take an empty object -
Fix #3494: Calling an attached parametrized getter fails in transpiled javascript
-
Remove fable-py support
-
Fix #3461: Don't default to javascript if the language requested by the user is unknown (help detect typo)
-
Improve --help message for the --lang section
-
Fix #3464: Invalidate cache when the target language changes
-
Always delete the
fable_modulesfolder when the cache is invalidated -
Remove
--typescriptoptions support, use--lang <target>instead -
Fix #3441: Don't ignore error when loading plugin
-
Fix #3482: Remove
Py.pythonandPy.expr_pythonuseemitPyStatementandemitPyExprinstead -
Restrict replacements to accept only functions from their target language module
-
Fix #3528: Consider functions hidden by a signature file as private (@nojaf)
-
Improve error message when Fable doesn't find the
fable-libraryfolder.This is especially useful when working on Fable itself, and should save time to others.
Each time I got this is error, I needed several minutes to remember the cause of it.
4.1.4
- Fix #3438: Source maps
- Fix #3440: Don't curry arity-1 functions
- Fix #3452: DateTimeOffset conversion to DateTime
- Fix regression: Don't type test interfaces declared in F# code
- Rust: Added no_std test build
- Rust: Added regex support
- Rust: Fixed no_std support
- Rust: Fixed uncurried options
- Rust: Enabled some applicative tests
- Rust: Enabled some tests
- Rust: Updated switch transform (#3449)
- Rust: Updated dependencies (#3447)
- Rust: Fixed interface properties (#3445)
- Rust: Updated object equality (#3444)
- Rust: Enabled some Comparison tests (#3442)
- Rust: Added DateOnly, TimeOnly tests
- Rust: Added DateTimeOffset tests
- Rust: Updated TimeSpan
- Rust: Added DateTimeOffset
3.7.22
- Fix typo in error message when using Fable 3 from .NET 7 @MangelMaxime
3.7.21
- Fix #3441: Don't ignore error when loading plugin @MangelMaxime
- PR #3448: Prevent Fable 3 to hang if called from .NET 7 @MangelMaxime
- Move Fable 3 to .NET 6 @MangelMaxime
4.1.3
- JS/TS/Rust: Added bigint log, log2, log10, minMag, maxMag
- TS: Fix extension of files in fable_modules with out dir
- TS: Support annotations of StringEnum and TypeScriptTaggedUnion types
- JS/TS: Output JS docs
- Fix range of inlined functions