.NET Embedding 0.4 release notes
Getting Started | What's New | Known Issues | Blogs | Feedback | Open Source
What's new in this release
Objective-C tooling via NuGet
In 0.4 we've moved to unify the Objective-C tools with the Java/C tooling in a single NuGet.
This replaces the previous installer that installed to:
/Library/Frameworks/Xamarin.Embeddinator-4000.framework/
Detailed instructions on how to move to the NuGet packaged tools have been posted.
Xamarin.Mac bundling format change
In 0.4 libraries targeting Xamarin.Mac (not just "raw" macOS) join Xamarin.iOS in both defaulting to and only supporting "framework" style packaging. The other formats (static and dynamic library) have systemic usability issues with dependencies.
The new getting started for macOS has been updated to use frameworks.
Release history
- April 18, 2017 - .NET Embedding 0.4
Objective-C support
- 405 - Handle "Interfaces within interfaces" in generated code
- 484 - Native Exception Handling Support
- 561 & 641 - Arrays of enums and structures now generate more correct bindings
- 604 - Resolve compile issues when targetting Xamairn.Mac "System" Target Framework
- 610 - Restrict use of "auto" and "static" in selector names
- 610 - Skip with warning selectors that would duplicate in generated code
- 613 - Fix compiler errors related to local variable names used for parameter conversion.
- 619 - Improve help to show macos-[modern|full|system] platforms
- 627 - Default to and enforce framework style packaging
- 632 - Improve F# support
Java support
- 542 - Improved overload generation for Java methods
- 573 - Fix code generation of long literals in enums
Android support
- 527 - Support for latest Android Studio 3.0
- 532 - Added missing Xamarin.Android
MonoPackageManager.setContext
method - 616 - Manually load monosgen-2.0 library to support API < 18
Windows support
- 506 - Improved support for finding Mono SDK on Windows
Linux support
- 500 - Improved support for Linux platforms
Other features and fixes
- 503 - We now provide an API for setting Mono runtime assembly paths
Known issues
- There are a number of documented limitations to consider.
- In some rare cases the generator produces duplicate symbols, which will fail to compile. Please file an issue on github if this occurs.
- There are a number C# features that are not supported currently. Consider exposing a simplified subset of managed code.
Feedback welcome
We'd love to hear from you! If there are any problems with this release, check GitHub for existing issues.
Report new issues and suggestions on GitHub.
Open source
.NET Embedding is based on the following open-source repositories:
- Embeddinator-4000 branch
0.4