Downloading latest: 4.3.4

If your download does not begin automatically please click here.

Support the Haxe Foundation

Thank you for downloading Haxe. If you'd like to support the Haxe Foundation please consider donating to keep our open source efforts thriving.

Monthly Donation Amount

Get Technical Help

Get support directly from the Haxe team. The Haxe Foundation offers several support tiers to help with your organization's technical challenges.

Explore our support plans

What next?

Release Notes

Dear Community,

On behalf of the Haxe Foundation, we are proud to announce the official release of Haxe 4.3.4!

This release includes a number of bugfixes, as well as some additions to -D haxe-next to help you prepare your codebase / libraries for Haxe 5. Check out the changelog below for more information.

If you have any suggestions or run into any problems, feel free to open an issue on GitHub.

Thanks to everyone involved!

Change Log

2024-03-04 4.3.4

General improvements:

  • all : allow @:using with Class and Enum (#11553)
  • display : expose list of metadata/defines (#11399)

Bugfixes:

  • all : typedef vs. GADT (#11446)
  • all : don't double-throw exceptions (#11175)
  • all : fix some abstract inlining failures (#11526)
  • all : fix JsonPrinter empty parent class (#11560)
  • all : dce: clean up operator handling (#11427)
  • all : analyzer: deal with unreachable block in binops (#11402)
  • all : analyzer: don't recursively check enum values when const propagating (#11429)
  • all : analyzer: fix check for inlined purity meta
  • display : fix errors from parser missing in diagnostics (#8687)
  • display : fix display services with static extension (#11285)
  • display : fix display services with safe navigation (#11205)
  • hl : hlopt rework try-catch control flow (#11581)
  • hl/c : fix reserved keywords (#11408)

Deprecation / future version handling:

  • all : don't infer string on concat, when using -D haxe-next (#11318)
  • all : handle optional arguments with bind, when using -D haxe-next (#11533)
  • macro : build order vs inheritance, when using -D haxe-next (#11582)
  • macro : deprecate some API from haxe.macro.Compiler (see #11540)
  • java/jvm : warn about --java ... -D jvm vs --jvm ...

Getting Started With Haxe

Now that you've downloaded Haxe, you can get started with a specific platform. Click on a logo to learn how to set up the development environment and how to proceed from there:

For getting started with Haxe, take a look at our introduction, read through the Haxe Manual or look at these use cases for Haxe, including tutorials and popular libraries: