Fable 4.17.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global Fable --version 4.17.0                
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 4.17.0                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=Fable&version=4.17.0                
nuke :add-package Fable --version 4.17.0                

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 ./builsh.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 net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
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
4.19.3 2,489 6/17/2024
4.19.2 318 6/13/2024
4.19.1 111 6/13/2024
4.19.0 482 6/10/2024
4.18.0 1,172 5/23/2024
4.17.0 6,267 4/23/2024
4.16.0 5,439 3/20/2024
4.15.0 869 3/18/2024
4.14.0 10,697 3/1/2024
4.13.0 3,610 2/20/2024
4.12.2 5,300 2/13/2024
4.12.1 480 2/13/2024
4.11.0 5,175 1/30/2024
4.10.0 7,276 1/25/2024
4.9.0 19,732 12/14/2023
4.8.1 1,335 12/12/2023
4.8.0 495 12/12/2023
4.7.0 4,662 12/6/2023
4.6.0 7,254 11/27/2023
4.5.0 18,938 11/7/2023
4.4.1 2,575 10/25/2023
4.4.0 8,261 10/24/2023
4.3.0 3,766 10/18/2023
4.2.2 2,083 10/14/2023
4.2.1 6,875 9/29/2023
4.1.4 45,343 5/16/2023
4.1.3 6,155 4/28/2023
4.1.2 3,762 4/22/2023
4.1.1 535 4/22/2023
4.1.0 936 4/18/2023
4.1.0-beta-001 528 4/16/2023
4.0.5 1,741 4/8/2023
4.0.4 1,716 4/4/2023
4.0.3 2,010 3/30/2023
4.0.2 984 3/27/2023
4.0.1 16,524 3/18/2023
4.0.0 6,489 3/14/2023
4.0.0-theta-018 39,242 11/19/2022
4.0.0-theta-017 451 11/16/2022
4.0.0-theta-016 617 11/13/2022
4.0.0-theta-015 434 11/5/2022
4.0.0-theta-014 249 10/31/2022
4.0.0-theta-012 1,049 10/14/2022
4.0.0-theta-011 774 10/4/2022
4.0.0-theta-010 278 9/28/2022
4.0.0-theta-009 269 9/28/2022
4.0.0-theta-008 342 9/22/2022
4.0.0-theta-007 238 9/21/2022
4.0.0-theta-006 296 9/18/2022
4.0.0-theta-005 211 9/17/2022
4.0.0-theta-004 327 9/14/2022
4.0.0-theta-003 188 9/12/2022
4.0.0-theta-002 158 9/11/2022
4.0.0-theta-001 218 9/9/2022
4.0.0-snake-island-alpha-026 260 9/8/2022
4.0.0-snake-island-alpha-025 225 9/6/2022
4.0.0-snake-island-alpha-024 349 9/2/2022
4.0.0-snake-island-alpha-023 190 8/30/2022
4.0.0-snake-island-alpha-021 566 8/21/2022
4.0.0-snake-island-alpha-020 292 8/14/2022
4.0.0-snake-island-alpha-019 342 7/31/2022
4.0.0-snake-island-alpha-018 213 7/30/2022
4.0.0-snake-island-alpha-017 250 7/27/2022
4.0.0-snake-island-alpha-016 208 7/26/2022
4.0.0-snake-island-alpha-015 189 7/26/2022
4.0.0-snake-island-alpha-014 221 7/25/2022
4.0.0-snake-island-alpha-013 185 7/25/2022
4.0.0-snake-island-alpha-012 328 7/12/2022
4.0.0-snake-island-alpha-011 209 6/23/2022
4.0.0-snake-island-alpha-010 227 6/3/2022
4.0.0-snake-island-alpha-009 183 6/2/2022
4.0.0-snake-island-alpha-008 205 6/1/2022
4.0.0-snake-island-alpha-007 237 5/25/2022
4.0.0-snake-island-alpha-006 194 5/24/2022
4.0.0-snake-island-alpha-005 210 5/23/2022
4.0.0-snake-island-alpha-004 178 5/21/2022
4.0.0-snake-island-alpha-003 209 5/20/2022
4.0.0-snake-island-alpha-002 180 5/19/2022
4.0.0-snake-island-alpha-001 212 5/11/2022
3.7.22 3,037 5/11/2023
3.7.21 190 5/11/2023
3.7.20 33,946 9/27/2022
3.7.19 486 9/27/2022
3.7.18 7,865 8/16/2022
3.7.17 6,472 7/21/2022
3.7.16 4,311 7/5/2022
3.7.15 879 6/29/2022
3.7.14 4,494 6/14/2022
3.7.12 3,603 5/27/2022
3.7.11 6,069 5/1/2022
3.7.10 731 4/29/2022
3.7.9 9,846 4/1/2022
3.7.8 1,689 3/24/2022
3.7.7 5,301 3/22/2022
3.7.6 2,528 3/16/2022
3.7.5 20,794 3/1/2022
3.7.4 867 2/25/2022
3.7.3 4,517 2/23/2022
3.7.2 1,307 2/22/2022
3.7.1 6,013 2/17/2022
3.7.0 8,292 2/7/2022
3.7.0-beta-015 1,155 1/26/2022
3.7.0-beta-014 247 1/24/2022
3.7.0-beta-012 290 1/18/2022
3.7.0-beta-011 221 1/14/2022
3.7.0-beta-010 196 1/14/2022
3.7.0-beta-009 201 1/12/2022
3.7.0-beta-008 192 1/11/2022
3.7.0-beta-007 210 1/11/2022
3.7.0-beta-006 198 1/11/2022
3.7.0-beta-005 216 1/7/2022
3.7.0-beta-004 189 1/5/2022
3.7.0-beta-003 261 1/4/2022
3.7.0-beta-002 173 12/28/2021
3.7.0-beta-001 204 12/20/2021
3.6.3 18,951 12/1/2021
3.6.2 8,673 11/26/2021
3.6.1 11,978 11/23/2021
3.6.0 1,632 11/19/2021
3.6.0-beta-003 319 11/17/2021
3.6.0-beta-002 193 11/15/2021
3.6.0-beta-001 229 11/14/2021
3.4.10 1,363 11/8/2021
3.4.9 2,272 11/5/2021
3.4.8 458 11/4/2021
3.4.7 1,570 10/28/2021
3.4.6 1,031 10/26/2021
3.4.5 709 10/21/2021
3.4.4 828 10/20/2021
3.4.3 12,470 10/14/2021
3.4.2 1,220 10/5/2021
3.4.1 484 10/4/2021
3.4.0 817 10/1/2021
3.3.1 1,652 9/27/2021
3.3.0 3,436 9/16/2021
3.3.0-beta-002 415 8/28/2021
3.3.0-beta-001 202 8/27/2021
3.2.14 1,333 9/11/2021
3.2.12 4,760 8/26/2021
3.2.11 6,082 8/19/2021
3.2.10 2,811 8/2/2021
3.2.9 47,078 7/8/2021
3.2.8 2,501 6/26/2021
3.2.7 473 6/25/2021
3.2.6 2,642 6/22/2021
3.2.5 828 6/21/2021
3.2.4 683 6/16/2021
3.2.3 599 6/11/2021
3.2.2 905 6/3/2021
3.2.1 15,216 5/28/2021
3.2.0 495 5/28/2021
3.1.16 7,268 5/14/2021
3.1.15 6,738 4/16/2021
3.1.14 4,885 4/9/2021
3.1.12 3,134 3/23/2021
3.1.11 4,883 3/17/2021
3.1.10 1,181 3/16/2021
3.1.9 2,730 3/15/2021
3.1.8 487 3/15/2021
3.1.7 951 3/11/2021
3.1.6 539 3/11/2021
3.1.5 6,843 2/18/2021
3.1.4 897 2/12/2021
3.1.3 481 2/12/2021
3.1.2 10,446 1/25/2021
3.1.1 6,024 1/13/2021
3.1.0 929 1/11/2021
3.1.0-beta-001 344 1/8/2021
3.0.5 1,897 12/22/2020
3.0.4 1,223 12/19/2020
3.0.3 576 12/18/2020
3.0.2 1,058 12/16/2020
3.0.1 1,258 12/11/2020
3.0.0 3,354 12/4/2020
3.0.0-nagareyama-rc-011 576 12/2/2020
3.0.0-nagareyama-rc-010 469 11/28/2020
3.0.0-nagareyama-rc-009 1,012 11/25/2020
3.0.0-nagareyama-rc-008 535 11/19/2020
3.0.0-nagareyama-rc-007 756 11/15/2020
3.0.0-nagareyama-rc-006 557 11/13/2020
3.0.0-nagareyama-rc-005 377 11/12/2020
3.0.0-nagareyama-rc-004 435 11/10/2020
3.0.0-nagareyama-rc-003 405 11/9/2020
3.0.0-nagareyama-rc-002 492 11/8/2020
3.0.0-nagareyama-rc-001 485 11/7/2020
3.0.0-nagareyama-beta-005 412 10/31/2020
3.0.0-nagareyama-beta-004 552 10/27/2020
3.0.0-nagareyama-beta-003 409 10/25/2020
3.0.0-nagareyama-beta-002 533 10/23/2020
3.0.0-nagareyama-beta-001 363 10/23/2020
3.0.0-nagareyama-alpha-017 347 10/22/2020
3.0.0-nagareyama-alpha-016 340 10/22/2020
3.0.0-nagareyama-alpha-015 413 10/19/2020
3.0.0-nagareyama-alpha-014 407 10/18/2020
3.0.0-nagareyama-alpha-012 386 10/15/2020
3.0.0-nagareyama-alpha-011 373 10/15/2020
3.0.0-nagareyama-alpha-010 399 10/13/2020
3.0.0-nagareyama-alpha-009 412 10/11/2020
3.0.0-nagareyama-alpha-008 462 10/5/2020
3.0.0-nagareyama-alpha-007 408 10/2/2020
3.0.0-nagareyama-alpha-006 371 9/30/2020
3.0.0-nagareyama-alpha-005 337 9/29/2020
3.0.0-nagareyama-alpha-004 414 9/28/2020
3.0.0-nagareyama-alpha-003 383 9/14/2020
3.0.0-nagareyama-alpha-002 366 9/13/2020
3.0.0-nagareyama-alpha-001 489 9/13/2020

## Added

- [Rust] Added support for XmlDoc comments (by @ncave)
- [Rust] Support captures in object expressions (by @ncave)
- [Rust] Added type extensions support (by @ncave)
- [Rust] Added Char implementation module (by @ncave)

## Fixed

- [Python] Fixes for custom hash values (#3796) (by @dbrattli)
- [Python] Fix for import of camelCased class (#3808) (by @dbrattli)
- [JS/TS] Fixed optional args for reflection (by @ncave)
- [JS/TS] Fixed type visibility when parent is namespace (by @ncave)
- [JS/TS] Fixed DateTimeOffset.ToString with custom format (by @ncave)
- [Rust] Fixed property get on constrained generic types (by @ncave)
- [Rust] Fixed module member imports (by @ncave)