-
Notifications
You must be signed in to change notification settings - Fork 35
docs: Add Supported Platforms document #1776
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: microsoft/main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -67,6 +67,10 @@ cross-compilation may be necessary. | |
| * `linux_armv6l` | ||
| * `linux_arm64` | ||
| * `windows_amd64` | ||
| * `darwin_amd64` | ||
| * `darwin_arm64` | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should be in the same order as https://github.com/microsoft/go/blob/microsoft/main/eng/doc/Downloads.md IMO. |
||
|
|
||
| For detailed platform support information across different Go versions, see [SUPPORTED_PLATFORMS.md](SUPPORTED_PLATFORMS.md). | ||
|
|
||
| The following sections list the ways to get a build of the Microsoft fork of Go. | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,62 @@ | ||||||
| # Supported Platforms | ||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is there a particular reason to put this in the root dir rather than |
||||||
|
|
||||||
| This document outlines the platform support matrix for different versions of the Microsoft build of Go. | ||||||
gdams marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||
|
|
||||||
| "Support" in this context means that Microsoft actively tests these platforms and will accept bug reports for them. Platforms outside this scope are provided support on a best-effort basis with no guarantees. | ||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Test in what sense? That the toolset works, or that it works at runtime? It seems like this doc is only be about runtime behavior (it lists Windows arm64, which we can target but we don't ship a prebuilt toolset for). Do we really test Windows arm64 and Linux armv6l? Does a listing on this page imply that there's a supported platform-provided crypto backend? |
||||||
|
|
||||||
| ## Platform Support Matrix | ||||||
|
|
||||||
| | Platform | Architecture | Status | Notes | | ||||||
| |----------|-------------|--------|-------| | ||||||
| | Linux | amd64 | ✅ Supported | Azure Linux 3.0+, CBL-Mariner 2.0, Ubuntu 22.04+ | | ||||||
| | Linux | arm64 | ✅ Supported | Azure Linux 3.0+, CBL-Mariner 2.0, Ubuntu 22.04+ | | ||||||
| | Linux | armv6l | ✅ Supported | Modern Linux distributions | | ||||||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Unclear what Modern Linux distributions actually exist on armv6l, and would we actually support them? (All of them?)
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This one I'm not sure about, what was the original customer request for
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Forwarded you the original email thread. |
||||||
| | Windows | amd64 | ✅ Supported | Windows Server 2016+, Windows 10+ | | ||||||
gdams marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||
| | Windows | arm64 | ✅ Supported | Windows Server 2016+, Windows 10+ | | ||||||
| | macOS (Darwin) | amd64 | 🔄 Preview | macOS 13+, not for production | | ||||||
| | macOS (Darwin) | arm64 | 🔄 Preview | macOS 13+, not for production | | ||||||
|
|
||||||
| ## Platform Support History | ||||||
|
|
||||||
| ### Go 1.24 | ||||||
| - Added macOS (Darwin) amd64 and arm64 support in preview mode | ||||||
|
|
||||||
| ### Go 1.23 | ||||||
| - macOS (Darwin) platforms not available | ||||||
|
|
||||||
|
Comment on lines
+24
to
+26
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. So... they were available in 1.22? 😄
Suggested change
|
||||||
| ## Platform-Specific Notes | ||||||
|
|
||||||
| ### Linux | ||||||
gdams marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||
| - **linux-amd64**: Fully supported and tested. This is the primary development and testing platform. | ||||||
| - **linux-arm64**: Fully supported for ARM64-based systems. | ||||||
| - **linux-armv6l**: Supported for ARM v6 systems, including Raspberry Pi devices. | ||||||
| - **Minimum supported distributions**: | ||||||
| - Azure Linux 3.0 (recommended) | ||||||
| - Ubuntu 22.04 and later | ||||||
| - CBL-Mariner 2.0 | ||||||
|
Comment on lines
+33
to
+36
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Isn't this a duplicate of the table? I'm not sure a table is necessary, if we want to provide more details with more platform-specific context anyway. |
||||||
| - **OpenSSL Requirements**: | ||||||
| - OpenSSL 1.1.1 (supported) | ||||||
| - OpenSSL 3.x (supported) | ||||||
| - Built-in providers are supported | ||||||
| - SymCrypt provider v1.6.0 or higher is supported | ||||||
|
|
||||||
| ### Windows | ||||||
| - **windows-amd64**: Fully supported on Windows Server 2016 and later, Windows 10 and later. | ||||||
| - **Minimum supported versions**: | ||||||
| - Windows 10 (any version) | ||||||
| - Windows Server 2016 and later | ||||||
| - Windows Server Core 2016 and later | ||||||
|
|
||||||
| ### macOS (Darwin) - Preview Status | ||||||
| - **darwin-amd64** and **darwin-arm64**: Available in preview mode. | ||||||
| - **Minimum supported versions**: macOS 11 (Big Sur) and later | ||||||
| - ⚠️ **Not recommended for production use** - these builds are experimental. | ||||||
| - `systemcrypto` support is also in preview status. | ||||||
| - Please [open an issue](https://github.com/microsoft/go/issues/new) if you encounter problems. | ||||||
|
|
||||||
| ## Getting Help | ||||||
|
|
||||||
| If you need support for an additional platform or encounter issues with a supported platform: | ||||||
|
|
||||||
| 1. Check existing issues with the [Area-Acquisition](https://github.com/microsoft/go/labels/Area-Acquisition) label | ||||||
| 2. [File a new issue](https://github.com/microsoft/go/issues/new/choose) if your platform or issue isn't already covered | ||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These are still preview, right?