Releases: roblox-csharp/roblox-cs
Releases · roblox-csharp/roblox-cs
2.0.0-pre10
What's Changed
- Made constructors local function (#62)
- Only classes with instance-level members use metatables (#66)
- Fixed event callback referencing it's own connection incorrectly (#52)
- Transform primary constructors into explicit constructors (#61)
- Wrap non-static methods passed as arguments with an anonymous function (#50)
- Fixed unexpected
:s in member accesses (#68) - Automatically call entry point methods
- Only generate members of runtime type info that are actually used within the code
- Removed redundant default value assignments for fields/properties
- Discard unused return values from macros
- Basic CLI & transpilation pipeline
- Many fixes
Full Changelog: 2.0.0-pre9...2.0.0-pre10
2.0.0-pre9
What's Changed
- Support (basic) for
HashSet<T>(#60) - Support for method overloading (#57)
- Disallowed inheriting from types that use macros (#55)
- Inline enums (#65)
- Inline all constant symbols
- Support for
sizeof() - Support for
LuaTuples - Removed some useless reflected runtime type info
- Automatically include
using System.Collections; - Other fixes
Full Changelog: 2.0.0-pre8...2.0.0-pre9
2.0.0-pre8
What's Changed
- Support for iterating over an
IEnumerator<T>(#63) - Support for generator methods (#56)
- Support for custom object creation initializers (that aren't collections) (#59)
- Macro for
List.RemoveAt() - Disallowed unsupported macro'd constructor overloads
- Many unit tests
- Many fixes including
whereclauses in LINQ expressions- String concatenation
- A handful of List macros
Full Changelog: 2.0.0-pre7...2.0.0-pre8
2.0.0-pre7
What's Changed
- Support for custom metadata attributes
[MyMetadata]
interface MyInterface;
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface)]
class MyMetadataAttribute : Attribute; // no class members allowed- Support for
Type.GetProperties() - Attribute info in
Typeinfo tables - Macros for
IEnumerable.FirstOrDefault()andIEnumerable.LastOrDefault() - Support for
group..byandorderbyin LINQ expressions - Many fixes
Full Changelog: 2.0.0-pre6...2.0.0-pre7
2.0.0-pre6
What's Changed
- New node hoister, now it actually works
- Reworked conditional access emit
- Generate default values for fields/properties (regular variables still need this)
- Only add one to indexes that are C# integer types
- Automatically import
System.Collections.GenericandSystem.Linq - Macro event invocations (
event.Invoke()) toevent:Fire() - Macro
Instancemethods that take type argument in place of an instance class name - New
IEnumerable<T>macrosCount()First()Last()ElementAt()ElementAtOrDefault()Append()Prepend()Concat()Intersect()Distinct()ToArray()ToList()ToDictionary()GetEnumerator()
- Fixed function type parsing from type path
- Fixed class field/property/method accessing
- Fixed LINQ expression emit
- Fixed type arguments on calls being emitted
- Fixed Luau assignments being expressions by @denispionicul in #47
Full Changelog: 2.0.0-pre5...2.0.0-pre6
2.0.0-pre5
What's Changed
- Basic LINQ expressions
from/select/where/into - Macro
list.Countto#list - Type cast generation
- Fix prereqs outside of blocks by @denispionicul in #43
- Fix duplicate identifier handling by @R-unic in #23
- Other fixes
Full Changelog: 2.0.0-pre4...2.0.0-pre5
2.0.0-pre4
What's Changed
- Macro member accesses on
Services(to:GetService()calls) - Declaration pattern support (
x is Type newName) - Fixes/improvements
Full Changelog: 2.0.0-pre3...2.0.0-pre4
2.0.0-pre3
What's Changed
- Transform state by @denispionicul in #36
ref/outsupport by @denispionicul in #37Object.ToString()macro + other general improvements + some tests by @R-unic in #39
New Contributors
Full Changelog: 2.0.0-pre2...2.0.0-pre3
2.0.0-pre2
The foundation for roblox-cs 2.0.0. Supports basic code.
What's Changed
- Basic events implementation by @R-unic in #29
- Extra tests by @R-unic in #30
- Tests! More tests! by @R-unic in #31
- More generation tests by @R-unic in #32
- More Dictionary macros by @denispionicul in #33
- Fix
Forstatement rendering by @R-unic in #34 - Add more List macros and fix Lambda expressions not returning by @denispionicul in #35
Full Changelog: 2.0.0-pre1...2.0.0-pre2
2.0.0-pre1
The foundation for roblox-cs 2.0.0. Supports basic code.
What's Changed
- fix(nuget): package source mapping by @glomdom in #16
- chore: upgrade all projects to .NET 9 by @glomdom in #17
- Add Enums, fix repeat not adding a new line after rendering. by @denispionicul in #18
New Contributors
Full Changelog: https://github.com/roblox-csharp/roblox-cs/commits/2.0.0-pre1