Releases: fusionlanguage/fut
Releases · fusionlanguage/fut
fut 3.3.0
How to install:
- Windows: download and run
fut-3.3.0-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu: download and install
fut_3.3.0-1_amd64.deb - Fedora: download and install
fut-3.3.0-1.x86_64.rpm
Changes since 3.2.14:
- Removed integer range types - use
byte/sbyte/short/ushort/int/uintinstead - Added the
sbytetype - Added Unicode code points in interpolated strings (
$"{unicodeCodePoint:u}") - Implemented
expr is Derived dfor Python - Fixed
KeyErrordeleting a non-existing dictionary key in Python - Implemented
StringWriterfor Swift - Implemented
Console.Errorfor Swift - Implemented allocation of dynamic multi-dimensional arrays in C# and JavaScript
- Fixed call argument of a collection storage returned by another call in C++ (#218 reported by @mittelmark)
- Fixed string allocation issues with
Console.[Error.]Write[Line]in C - Implemented
Console.Error.WriteCodePointin C - TypeScript 6 compatibility for
StringWriterandDictionary<TEnum, V>.Clear() - Enabled member access on
new C()(#221 requested by @polidobj) - String reference vs string storage mismatch is now reported for collection types (#222 reported by @polidobj)
- Fixed C++ undefined behaviors in
fut(#220 reported by @ariankordi) - Unsupported methods are reported by
futfor D and Python PriorityQueue.Enqueuenow works with narrow integers in C#- A descriptive exception is thrown if the Java output is built without a resource (#215 requested by @peterdell)
- Added an experimental
Console.ReadLine
fut 3.2.14
How to install:
- Windows: download and run
fut-3.2.14-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.14-1_amd64.deb - Fedora 42+: download and install
fut-3.2.14-1.x86_64.rpm
Changes since 3.2.13:
- Python:
if (!x.TryParse(str))(#207 requested by @mittelmark) - C/C++/D: Added casts from
nintto narrower types - C#: Added casts for compound assignments with a wider type on RHS
- C: Added casts of
mallocresults - C: Added support for floating-point
Dictionaryvalues (#211 requested by @mittelmark) - C++:
Console.WriteLinenow outputs byte collection elements as decimal numbers (#212 reported by @mittelmark) - C++:
staticmethods from the class of theMainmethod can now be called without using the class name (#208 requested by @mittelmark)
fut 3.2.13
How to install:
- Windows: download and run
fut-3.2.13-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.13-1_amd64.deb - Fedora 38+: download and install
fut-3.2.13-1.x86_64.rpm
Changes since 3.2.12:
- Added errors for instantiation of abstract and static classes (#200 reported by @polidobj)
- Fixed C translation of initialization of object storage with a method call where the class has initialization code (#199 reported by @hermanhermitage)
- Deleted space before colon in Swift type annotations and subclass definitions
- Fixed "Change destination folder" not working in the Windows installer
fut 3.2.12
How to install:
- Windows: download and run
fut-3.2.12-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.12-1_amd64.deb - Fedora 38+: download and install
fut-3.2.12-1.x86_64.rpm
Changes since 3.2.11:
- Added public fields (#191 requested by @ariankordi)
- Changed
PriorityQueueto accept separate element and priority (like .NET) - Fixed collections of
bytein C#, D and Java - Fixed collection reference fields in C
fut 3.2.11
How to install:
- Windows: download and run
fut-3.2.11-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.11-1_amd64.deb - Fedora 38+: download and install
fut-3.2.11-1.x86_64.rpm
Changes since 3.2.10:
- Transpiling
intcollections to SwiftInt32 - Fixed C translation of temporaries in a child statement that is not a block (#192 reported by @ariankordi)
- Fixed C# translation of conditional expressions in interpolated strings (#193 reported by @polidobj)
- Fixed Java translation of
foreach (byte b in byteCollection) - Resetting temporary variable numbers in C++
switchcases - Reporting mismatch of access modifiers for
overridemethods (#194 reported by @polidobj) - Honoring left brace escape in interpolated strings with no expressions (#197 reported by @academyofzhuang)
fut 3.2.10
How to install:
- Windows: download and run
fut-3.2.10-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.10-1_amd64.deb - Fedora 38+: download and install
fut-3.2.10-1.x86_64.rpm
Changes since 3.2.9:
- Added the
ToInt()method on enums (#186 requested by @polidobj) - Transpiling
internalmembers as C++private, withfriendclasses (#184 suggested by @polidobj) - Fixed C++ translation of
throw Exception(stringRef)(#189 reported by @polidobj) - Transpiling
ListRefMethod().AddRange(foo)in a way that avoids PythonSyntaxError(#182 reported by @polidobj) - Emitting
intinduction variable in C for arrayFillin a typical scenario - Avoided unnecessary
Intcasts in Swift - Reporting duplicates with base class members (#187 reported by @allex4project)
- Rejecting mutation of a storage field in a read-only object (#189 reported by @polidobj)
fut 3.2.9
How to install:
- Windows: download and run
fut-3.2.9-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.9-1_amd64.deb - Fedora 38+: download and install
fut-3.2.9-1.x86_64.rpm
Changes since 3.2.8:
fut 3.2.8
How to install:
- Windows: download and run
fut-3.2.8-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.8-1_amd64.deb - Fedora 38+: download and install
fut-3.2.8-1.x86_64.rpm
Changes since 3.2.7:
fut 3.2.7
How to install:
- Windows: download and run
fut-3.2.7-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.7-1_amd64.deb - Fedora 38+: download and install
fut-3.2.7-1.x86_64.rpm
Changes since 3.2.6:
- Added pointer-sized integer type
nint. Transpiles toptrdiff_tin C, C++, D and OpenCL. (#166 requested by @Al1-ce) - Variables, parameters and
thiscaptured inList.Any/Alllambda in C++ SortedSet.Containsin D- Errors for attempts to copy object storage (#176 reported by @MieszkoP)
- Error for invalid initialization of string reference fields
- Syntax highlighting for Sublime Text (#89 implemented by @nlapinski)
fut 3.2.6
How to install:
- Windows: download and run
fut-3.2.6-win64.msi - macOS:
brew install fusionlanguage/fut/fut - Ubuntu 22.04+: download and install
fut_3.2.6-1_amd64.deb - Fedora 38+: download and install
fut-3.2.6-1.x86_64.rpm
Changes since 3.2.5: