dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
14.55k stars 4.54k forks source link

Swift projection tooling #95633

Open kotlarmilos opened 7 months ago

kotlarmilos commented 7 months ago

Description

This issue tracks the progress of implementing and shipping the projection tooling in .NET 9. The primary objective is to create a tooling capable of generating bindings for a set of features confirmed by the design document. We will divide the development process into stages to facilitate faster iterations:

Update: The experimental package is available in dotnet-experimental feed.

Below is a list of tasks that needs to be implemented. Please note that the breakdown of the issues does not impose hard deadlines. If some of the functionality does not get upstreamed for a particular preview version, this issue will be updated accordingly.

Tasks

ghost commented 7 months ago

Tagging subscribers to this area: @dotnet/area-meta See info in area-owners.md if you want to be subscribed.

Issue Details
# Description This issue tracks the work for adapting the existing [Binding Tools for Swift](https://github.com/xamarin/binding-tools-for-swift) and shipping it as a product in .NET 9. The projection tooling consists of three main areas: Importing Swift into .NET, Exporting .NET to Swift, and distribution. Below is a list of tasks that needs to be implemented. Please note that the breakdown of the issues does not impose hard deadlines. If some of the functionality does not get upstreamed for a particular preview version, this issue will be updated accordingly. ## Tasks ### .NET9 Preview 1 - [ ] Update documentation to specify tool's layout - [ ] Update documentation to specify type representations - [ ] Create a NuGet package for the BTfS - [ ] Ensure that the NuGet package is shipped for supported platforms such as OSX and Apple mobile ### .NET9 Preview 2 - [ ] Adapt the tool to work with the new runtime support - [ ] Add Roslyn source generators to generate Swift metadata for selected assemblies ### .NET9 Preview 3 TBD
Author: kotlarmilos
Assignees: kotlarmilos, stephen-hawley
Labels: `area-Meta`, `User Story`
Milestone: 9.0.0
stephen-hawley commented 6 months ago

Might want to include "Update BTfS to run on .NET 7 and later" - I'm in the middle of that right now.