Uh oh!
There was an error while loading. Please reload this page.
[release/6.0] Add osx-arm64.runtime.native.System.IO.Ports - #60084
Conversation
…ckaging. Tested on actual osx-arm64 hardware, resulting package works correctly.
ghost
commented
Oct 6, 2021
Tagging subscribers to this area: @dotnet/area-system-io Issue DetailsAdded the .proj file so this will get packaged. The automation works for all the other parts.
|
SeanMollet
commented
Oct 6, 2021
Closes #59972 |
Uh oh!
There was an error while loading. Please reload this page.
…tive.System.IO.Ports.proj Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
ViktorHofer
commented
Oct 6, 2021
@dotnet/area-system-io can you please take a look as well? |
Uh oh!
There was an error while loading. Please reload this page.
jozkee
commented
Oct 12, 2021
@ViktorHofer can you please merge? The PR says that I am not authorized to do so. |
ViktorHofer
commented
Oct 12, 2021
I didn't see that this change actually targets release/6.0. I think for that we would need Tactics approval, wouldn't we? cc @danmoseley for awareness. |
Ah, didn't see that either, is it ok to do this for 6.0? It may be risky. IMO this PR should target 7.0. @SeanMollet thoughts? |
SeanMollet
commented
Oct 12, 2021
@jozkee .net 6 advertises Apple Silicon support, this is part of supporting Apple Silicon. Further, the sooner it gets in, the sooner the workaround for comparison to previous packages can be dropped. As you might gather, I'd very much like to see this in the 6 release. It's the same code as the osx-x64 version, it compiles clean on M1 and works correctly. The included tests and my own pass on both platforms (x64 and m1). The alternative is not having support for serial ports on M1 at all. Even if it did turn out there's a bug, that's still a better situation than have no support at all. For clarification, the note above about "this should be removed when .net 7 ships" is not about the entire PR, just the single line that bypasses previous version checks (since there isn't a previous version of this). |
Yes, I was asking for
Ok got it, the usual process we do is send the PR to main, which is the code that will ship for the next release and once merged there, we send a backport PR to release/6.0 where is discussed if it meets the bar. Let's wait for @danmoseley or @jeffhandley to chime in. |
SeanMollet
commented
Oct 12, 2021
@jozkee I copied your template. I'm happy to do this against main if that's the approach that's required. |
@SeanMollet at this point, and assuming this gets approved, I think it may be better to |
ViktorHofer
commented
Oct 12, 2021
@SeanMollet that's all that is required, thanks very much for providing a template. Can you meanwhile please send another PR targeting main? That one we can get in quickly and we usually get changes first into main before we backport them into a release branch. I will make sure that this gets discussed for 6.0 asap. |
ViktorHofer
commented
Oct 12, 2021
It's not different. We ship nuget packages together with the product and the same bar applies here. |
jeffhandley
commented
Oct 12, 2021
@SeanMollet After you got the local build, were you able to consume these APIs and verify the functionality on the Apple silicon hardware? I'd like to confirm that once the packaging fix is merged into release/6.0, you'll be unblocked. |
jeffhandley
commented
Oct 12, 2021
@SeanMollet And now I see you included that info but I overlooked it.
Thanks! |
danmoseley
commented
Oct 13, 2021
failures - #60151 already fixed. I will rerun the timed out build out of an excess of caution. |
Fixes#59972
This change adds a package project to build/package it, which also adds it as a dependency to the meta runtime.native.System.IO.Ports package.
Customer Impact
.NET 6 advertises Apple Silicon support. Not having this means that part of that support is missing. In particular, myself and many others develop for .NET on Apple hw, which is moving fairly quickly to Apple Silicon. Not having this means that I have to use a Linux VM or a remote system if I want to communicate with external devices.
In my specific case, I built electronics that interface with .NET servers and clients using USB, which shows up as a virtual serial port. Not having that functionality on my development machine is quite annoying.
Testing
Tested on actual Apple Silicon hardware with various serial devices. Since no current M1 device offers native serial ports, all testing was conducted with various USB devices that convert to or present as serial ports. Works correctly.
Risk
Low. The alternative is that there is no support at all.