Skip to content

Sync docs from microsoft/main into microsoft/release-branch.go1.26 - #2670

Closed
bot-for-go[bot] wants to merge 1 commit into
microsoft/release-branch.go1.26from
dev/auto-sync-docs/microsoft/release-branch.go1.26
Closed

bot-for-go[bot] wants to merge 1 commit into
microsoft/release-branch.go1.26from
dev/auto-sync-docs/microsoft/release-branch.go1.26

Conversation

@bot-for-go

@bot-for-go bot-for-go Bot commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

Hi! I'm a bot, and this is an automatically generated upstream sync PR. 🔃

After submitting the PR, I will attempt to enable auto-merge in the "merge commit" configuration.

For more information, visit sync documentation in microsoft/go-infra.

This PR copies documentation from microsoft/main into microsoft/release-branch.go1.26.

@bot-for-go
bot-for-go Bot requested a review from a team as a code owner October 28, 2026 16:50

@review-bot-for-go review-bot-for-go Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Auto-approving.

Copilot AI balanced review requested due to automatic review settings October 28, 2026 16:50
@bot-for-go bot-for-go Bot added the sync:docs Copies documentation from the main branch label Oct 28, 2026
@bot-for-go
bot-for-go Bot enabled auto-merge October 28, 2026 16:50
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The synced cryptography document does not match its generator output, causing the reproducibility test to fail until the generator inputs and sync-banner handling are reconciled.

8 open issues
What changed in this PR

Synchronizes documentation from microsoft/main into microsoft/release-branch.go1.26, bringing the release branch’s guidance and download metadata up to date.

Changes:

  • Reorganizes installation, support, contribution, and migration guidance.
  • Adds feature, telemetry, platform-support, and no-cgo OpenSSL documentation.
  • Updates cryptography guidance and download links for Go 1.26 and 1.27, with sync-source notices.
File Description
SUPPORT.md Adds internal support guidance and sync notice.
SECURITY.md Adds sync-source notice only.
README.md Reorganizes support, release policy, and installation links.
eng/​doc/​Telemetry.md Documents collected telemetry and opt-out settings.
eng/​doc/​SupportedPlatforms.md Adds platform and OpenSSL support requirements.
eng/​doc/​release-branch-links.json Updates release assets, including Windows ARM64.
eng/​doc/​README.md Expands the documentation index.
eng/​doc/​NocgoOpenSSL.md Explains no-cgo backend selection and dependencies.
eng/​doc/​MigrationGuide.md Updates version selection and migration guidance.
eng/​doc/​MicrosoftToolsetIdentification.md Documents Microsoft-specific version identification.
eng/​doc/​Installation.md Consolidates installation methods and CI examples.
eng/​doc/​fips/​README.md Updates FIPS configuration and version-specific behavior.
eng/​doc/​Downloads.md Refreshes download tables and removes macOS preview labels.
eng/​doc/​DeveloperGuide.md Adds the extracted crypto-backend development workflow.
eng/​doc/​CrossPlatformCryptography.md Updates platform and algorithm support documentation.
eng/​doc/​AdditionalFeatures.md Adds an overview of Microsoft-specific toolchain features.
CONTRIBUTING.md Consolidates contribution and policy guidance.
CODE_OF_CONDUCT.md Adds sync-source notice only.

Review effort: Balanced

Comment on lines +1 to +5
<!--
DO NOT EDIT THIS COPY.
Local edits will be overwritten.
Source: https://github.com/microsoft/go/blob/microsoft/main/eng/doc/CrossPlatformCryptography.md
-->
Comment on lines +72 to +73
> When using Go 1.26 and targeting Linux or FreeBSD, the table only applies if `GOEXPERIMENT=ms_nocgo_opensslcrypto` is set.
> Otherwise, cgo is always required.
Comment thread eng/doc/DeveloperGuide.md
Comment on lines +174 to +183
Most Microsoft build of Go changes live in `go/src`, but `cryptobackend` has two copies to know about:

* [`cryptobackend`](../../cryptobackend) is the source module in this repository.
* `go/src/vendor/github.com/microsoft/go/cryptobackend` is the copy that gets built into the Go standard library.

If you change cryptobackend code, run `go mod vendor` from `go/src` before running `git go-patch extract`; that copies the source module into `go/src/vendor/github.com/microsoft/go/cryptobackend` and updates the vendor metadata.

The vendored copy has one special rule: it is allowed to import selected `crypto/internal/...` packages because the Microsoft `go` command treats it as part of the standard-library build.
The source module under [`cryptobackend`](../../cryptobackend) does not get that special access when it is built like a normal external module.
See the [`cryptobackend` README](../../cryptobackend/README.md) for more detail.
Comment thread eng/doc/MigrationGuide.md

We are not aware of an enhanced migration path for OneBranch pipelines that should be preferred over the Azure Pipelines migrations mentioned above.
See the above sections for [`GoTool@0`](#the-gotool0-azure-pipelines-step) and [container jobs](#an-azure-pipelines-container-job-referring-to-the-official-golang-container-image) to find the best fit for your project.
See the above sections for [`GoTool@0`](#the-gotool0-azure-pipelines-task) and [container jobs](#an-azure-pipelines-container-job-referring-to-the-official-golang-container-image) to find the best fit for your project.
Comment thread eng/doc/NocgoOpenSSL.md
* If cgo is not explicitly enabled or disabled, then the cgo-less OpenSSL backend is used if the Go toolchain decides that cgo should be disabled. The rules are officially described by [cmd/cgo](https://pkg.go.dev/cmd/cgo). This is a summary, at the time of writing (2026-03-19):
* cgo is disabled if the Go toolchain is built with `CGO_ENABLED=0`. Note that that's not currently the case for the Microsoft build of Go.
* cgo is disabled when cross-compiling.
* cgo is disabled if the `CC` environment variable is not set to an existing executable.
Comment thread eng/doc/Telemetry.md
No source code, file paths, module contents, or personally identifiable information is collected.
Each telemetry session is assigned a random session ID that cannot be linked back to a user.

The counters and properties collected are defined in the [telemetry upload configuration](https://github.com/microsoft/go-infra/blob/main/telemetry/config/config.json) and are listed below.
Comment thread eng/doc/fips/README.md
Comment on lines +114 to +116
> Prior to Go 1.27, `systemcrypto` was a `GOEXPERIMENT` and could be selected with `GOEXPERIMENT=systemcrypto` and unselected with `GOEXPERIMENT=nosystemcrypto`.
> `systemcrypto` is no longer a `GOEXPERIMENT`.
> See [build option to use Go crypto](#build-option-to-use-go-crypto) for more information.
Comment thread eng/doc/fips/README.md
- If a platform-specific preference is detected: Enabled ✅
- See the following sections for per-platform details.
- The platform-specific detection never results in a Disabled preference.
- If the [build option to require FIPS mode](#build-option-to-require-fips-mode) is enabled: Enabled ✅
@dagood

Copy link
Copy Markdown
Member

Next iteration should work if we have #2672 ported by then.

auto-merge was automatically disabled October 28, 2026 18:59

Pull request was closed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

sync:docs Copies documentation from the main branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants