Fable 5.0.0-alpha.3

This is a prerelease version of Fable.
There is a newer prerelease version of this package available.
See the version list below for details.
dotnet tool install --global Fable --version 5.0.0-alpha.3
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local Fable --version 5.0.0-alpha.3
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Fable&version=5.0.0-alpha.3&prerelease
                    
nuke :add-package Fable --version 5.0.0-alpha.3
                    

Fable: F# |> JS

Nuget Build Join the chat at https://gitter.im/fable-compiler/Fable

Follow us on Twitter!

Fable is an F# to JavaScript compiler powered FSharp Compiler Services, designed to make F# a first-class citizen of the JavaScript ecosystem. Check the website for more information and if you find the project useful, don't forget to give us a star!

Fable actually uses a fork of FCS with a few tweaks. Binaries are in lib/fcs folder. See this PR for more info.

Getting started

Check this page.

Building

Requirements

Use VSCode Dev Container

You can use VSCode Dev Container to get a preconfigured environment both with requirements and VSCode extensions.

  1. You need to have docker installed and running.
  2. Install the Dev Container extension in VSCode
  3. Open the project in VSCode and click on the green button in the bottom left corner.
Use your machine

Make sure the following requirements are installed in your system:

Build

Run ./build.sh or ./build.cmd to see the build options.

When using VSCode, you can also run the build tasks from the command palette (Ctrl+Shift+P) by typing Run Task and selecting the task you want to run.

We also configured several debug configurations that you can use from the debug panel (Ctrl+Shift+D). This is useful as you can attach the debugger to the Fable compiler process to check what's going on.

Contributing

Just by using Fable you're already contributing! You can help the community a lot by sharing examples and experiences in your personal (or Fable's) blog and/or by editing the Fable Resources page.

Send bug reports (ideally with minimal code to reproduce the problem) and feature requests to this GitHub repository. To interact with the community you can use the Gitter chat but please note maintainers are not checking the chat regularly.

If you are up to contribute a fix or a feature yourself, you're more than welcome! Please send first an issue or a minimal Work In Progess PR so we can discuss the implementation details in advance.

List of changelogs

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last updated
5.0.0-alpha.13 983 5/4/2025
5.0.0-alpha.12 1,370 3/14/2025
5.0.0-alpha.11 724 3/3/2025
5.0.0-alpha.10 1,006 2/16/2025
5.0.0-alpha.9 1,057 1/28/2025
5.0.0-alpha.8 145 1/27/2025
5.0.0-alpha.7 390 1/23/2025
5.0.0-alpha.6 119 1/23/2025
5.0.0-alpha.5 782 1/9/2025
5.0.0-alpha.4 186 1/3/2025
5.0.0-alpha.3 578 12/18/2024
5.0.0-alpha.2 259 11/26/2024
5.0.0-alpha.1 116 11/24/2024
4.25.0 2,095 4/26/2025
4.24.0 26,296 11/19/2024
4.23.0 5,838 10/28/2024
4.22.0 9,394 10/2/2024
4.21.0 4,468 9/19/2024
4.20.0 3,808 9/4/2024
4.19.3 25,855 6/17/2024
4.19.2 439 6/13/2024
4.19.1 230 6/13/2024
4.19.0 1,839 6/10/2024
4.18.0 2,077 5/23/2024
4.17.0 13,487 4/23/2024
4.16.0 10,869 3/20/2024
4.15.0 1,004 3/18/2024
4.14.0 12,916 3/1/2024
4.13.0 4,770 2/20/2024
4.12.2 18,107 2/13/2024
4.12.1 817 2/13/2024
4.11.0 5,924 1/30/2024
4.10.0 18,836 1/25/2024
4.9.0 29,536 12/14/2023
4.8.1 1,601 12/12/2023
4.8.0 719 12/12/2023
4.7.0 8,882 12/6/2023
4.6.0 11,955 11/27/2023
4.5.0 25,825 11/7/2023
4.4.1 2,913 10/25/2023
4.4.0 20,091 10/24/2023
4.3.0 4,898 10/18/2023
4.2.2 4,158 10/14/2023
4.2.1 14,053 9/29/2023
4.1.4 52,262 5/16/2023
4.1.3 8,048 4/28/2023
4.1.2 4,023 4/22/2023
4.1.1 659 4/22/2023
4.1.0 1,076 4/18/2023
4.1.0-beta-001 662 4/16/2023
4.0.5 2,014 4/8/2023
4.0.4 2,228 4/4/2023
4.0.3 2,243 3/30/2023
4.0.2 1,108 3/27/2023
4.0.1 22,925 3/18/2023
4.0.0 6,774 3/14/2023
4.0.0-theta-018 54,219 11/19/2022
4.0.0-theta-017 611 11/16/2022
4.0.0-theta-016 764 11/13/2022
4.0.0-theta-015 585 11/5/2022
4.0.0-theta-014 399 10/31/2022
4.0.0-theta-012 1,187 10/14/2022
4.0.0-theta-011 959 10/4/2022
4.0.0-theta-010 409 9/28/2022
4.0.0-theta-009 408 9/28/2022
4.0.0-theta-008 454 9/22/2022
4.0.0-theta-007 387 9/21/2022
4.0.0-theta-006 426 9/18/2022
4.0.0-theta-005 364 9/17/2022
4.0.0-theta-004 487 9/14/2022
4.0.0-theta-003 332 9/12/2022
4.0.0-theta-002 289 9/11/2022
4.0.0-theta-001 374 9/9/2022
4.0.0-snake-island-alpha-026 400 9/8/2022
4.0.0-snake-island-alpha-025 377 9/6/2022
4.0.0-snake-island-alpha-024 532 9/2/2022
4.0.0-snake-island-alpha-023 337 8/30/2022
4.0.0-snake-island-alpha-021 906 8/21/2022
4.0.0-snake-island-alpha-020 421 8/14/2022
4.0.0-snake-island-alpha-019 473 7/31/2022
4.0.0-snake-island-alpha-018 326 7/30/2022
4.0.0-snake-island-alpha-017 370 7/27/2022
4.0.0-snake-island-alpha-016 333 7/26/2022
4.0.0-snake-island-alpha-015 301 7/26/2022
4.0.0-snake-island-alpha-014 344 7/25/2022
4.0.0-snake-island-alpha-013 319 7/25/2022
4.0.0-snake-island-alpha-012 456 7/12/2022
4.0.0-snake-island-alpha-011 321 6/23/2022
4.0.0-snake-island-alpha-010 328 6/3/2022
4.0.0-snake-island-alpha-009 286 6/2/2022
4.0.0-snake-island-alpha-008 317 6/1/2022
4.0.0-snake-island-alpha-007 338 5/25/2022
4.0.0-snake-island-alpha-006 296 5/24/2022
4.0.0-snake-island-alpha-005 319 5/23/2022
4.0.0-snake-island-alpha-004 293 5/21/2022
4.0.0-snake-island-alpha-003 320 5/20/2022
4.0.0-snake-island-alpha-002 293 5/19/2022
4.0.0-snake-island-alpha-001 323 5/11/2022
3.7.22 4,000 5/11/2023
3.7.21 270 5/11/2023
3.7.20 37,373 9/27/2022
3.7.19 567 9/27/2022
3.7.18 8,427 8/16/2022
3.7.17 6,949 7/21/2022
3.7.16 4,426 7/5/2022
3.7.15 966 6/29/2022
3.7.14 4,594 6/14/2022
3.7.12 3,808 5/27/2022
3.7.11 6,618 5/1/2022
3.7.10 820 4/29/2022
3.7.9 10,131 4/1/2022
3.7.8 1,781 3/24/2022
3.7.7 5,396 3/22/2022
3.7.6 2,981 3/16/2022
3.7.5 24,114 3/1/2022
3.7.4 972 2/25/2022
3.7.3 4,733 2/23/2022
3.7.2 1,411 2/22/2022
3.7.1 6,239 2/17/2022
3.7.0 8,746 2/7/2022
3.7.0-beta-015 1,265 1/26/2022
3.7.0-beta-014 351 1/24/2022
3.7.0-beta-012 403 1/18/2022
3.7.0-beta-011 340 1/14/2022
3.7.0-beta-010 308 1/14/2022
3.7.0-beta-009 313 1/12/2022
3.7.0-beta-008 288 1/11/2022
3.7.0-beta-007 317 1/11/2022
3.7.0-beta-006 299 1/11/2022
3.7.0-beta-005 327 1/7/2022
3.7.0-beta-004 296 1/5/2022
3.7.0-beta-003 364 1/4/2022
3.7.0-beta-002 289 12/28/2021
3.7.0-beta-001 309 12/20/2021
3.6.3 19,429 12/1/2021
3.6.2 8,828 11/26/2021
3.6.1 12,150 11/23/2021
3.6.0 1,752 11/19/2021
3.6.0-beta-003 434 11/17/2021
3.6.0-beta-002 281 11/15/2021
3.6.0-beta-001 314 11/14/2021
3.4.10 1,457 11/8/2021
3.4.9 2,551 11/5/2021
3.4.8 558 11/4/2021
3.4.7 1,670 10/28/2021
3.4.6 1,134 10/26/2021
3.4.5 800 10/21/2021
3.4.4 948 10/20/2021
3.4.3 20,099 10/14/2021
3.4.2 1,345 10/5/2021
3.4.1 579 10/4/2021
3.4.0 918 10/1/2021
3.3.1 1,785 9/27/2021
3.3.0 3,559 9/16/2021
3.3.0-beta-002 503 8/28/2021
3.3.0-beta-001 285 8/27/2021
3.2.14 1,427 9/11/2021
3.2.12 4,874 8/26/2021
3.2.11 6,201 8/19/2021
3.2.10 2,911 8/2/2021
3.2.9 47,302 7/8/2021
3.2.8 2,598 6/26/2021
3.2.7 564 6/25/2021
3.2.6 2,770 6/22/2021
3.2.5 920 6/21/2021
3.2.4 780 6/16/2021
3.2.3 825 6/11/2021
3.2.2 1,000 6/3/2021
3.2.1 19,194 5/28/2021
3.2.0 605 5/28/2021
3.1.16 7,744 5/14/2021
3.1.15 6,854 4/16/2021
3.1.14 5,025 4/9/2021
3.1.12 3,271 3/23/2021
3.1.11 5,004 3/17/2021
3.1.10 1,283 3/16/2021
3.1.9 2,824 3/15/2021
3.1.8 581 3/15/2021
3.1.7 1,067 3/11/2021
3.1.6 639 3/11/2021
3.1.5 7,052 2/18/2021
3.1.4 1,000 2/12/2021
3.1.3 582 2/12/2021
3.1.2 10,580 1/25/2021
3.1.1 6,177 1/13/2021
3.1.0 1,045 1/11/2021
3.1.0-beta-001 441 1/8/2021
3.0.5 2,073 12/22/2020
3.0.4 1,326 12/19/2020
3.0.3 674 12/18/2020
3.0.2 1,190 12/16/2020
3.0.1 1,361 12/11/2020
3.0.0 3,474 12/4/2020
3.0.0-nagareyama-rc-011 678 12/2/2020
3.0.0-nagareyama-rc-010 560 11/28/2020
3.0.0-nagareyama-rc-009 1,108 11/25/2020
3.0.0-nagareyama-rc-008 636 11/19/2020
3.0.0-nagareyama-rc-007 858 11/15/2020
3.0.0-nagareyama-rc-006 650 11/13/2020
3.0.0-nagareyama-rc-005 471 11/12/2020
3.0.0-nagareyama-rc-004 531 11/10/2020
3.0.0-nagareyama-rc-003 500 11/9/2020
3.0.0-nagareyama-rc-002 592 11/8/2020
3.0.0-nagareyama-rc-001 583 11/7/2020
3.0.0-nagareyama-beta-005 514 10/31/2020
3.0.0-nagareyama-beta-004 658 10/27/2020
3.0.0-nagareyama-beta-003 502 10/25/2020
3.0.0-nagareyama-beta-002 633 10/23/2020
3.0.0-nagareyama-beta-001 464 10/23/2020
3.0.0-nagareyama-alpha-017 441 10/22/2020
3.0.0-nagareyama-alpha-016 446 10/22/2020
3.0.0-nagareyama-alpha-015 510 10/19/2020
3.0.0-nagareyama-alpha-014 525 10/18/2020
3.0.0-nagareyama-alpha-012 477 10/15/2020
3.0.0-nagareyama-alpha-011 468 10/15/2020
3.0.0-nagareyama-alpha-010 492 10/13/2020
3.0.0-nagareyama-alpha-009 507 10/11/2020
3.0.0-nagareyama-alpha-008 578 10/5/2020
3.0.0-nagareyama-alpha-007 503 10/2/2020
3.0.0-nagareyama-alpha-006 489 9/30/2020
3.0.0-nagareyama-alpha-005 429 9/29/2020
3.0.0-nagareyama-alpha-004 510 9/28/2020
3.0.0-nagareyama-alpha-003 481 9/14/2020
3.0.0-nagareyama-alpha-002 461 9/13/2020
3.0.0-nagareyama-alpha-001 586 9/13/2020

## Fixed

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