{"id":483,"date":"2026-08-20T02:04:31","date_gmt":"2026-08-20T09:04:31","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/go\/?p=483"},"modified":"2026-08-20T02:04:31","modified_gmt":"2026-08-20T09:04:31","slug":"go-1-27-0-1-microsoft-build-now-available","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/go\/go-1-27-0-1-microsoft-build-now-available\/","title":{"rendered":"Go 1.27.0-1 Microsoft build now available"},"content":{"rendered":"<p>A new release of the Microsoft build of Go is now <a href=\"https:\/\/github.com\/microsoft\/go#download-and-install\">available for download<\/a>.\nFor more information about this release and the changes included, see the table below:<\/p>\n<table>\n<thead>\n<tr>\n<th>Microsoft Release<\/th>\n<th>Upstream Tag<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><a href=\"https:\/\/github.com\/microsoft\/go\/releases\/tag\/v1.27.0-1\">v1.27.0-1<\/a><\/td>\n<td>go1.27.0 <a href=\"https:\/\/go.dev\/doc\/devel\/release#go1.27.0\">release notes<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>As of this release, Go 1.25 is no longer supported, per the <a href=\"https:\/\/go.dev\/doc\/devel\/release\">Go release policy<\/a>.<\/p>\n<h2>Changes in the Microsoft build of Go 1.27<\/h2>\n<p>The 1.27.0-1 release is a major version update.<\/p>\n<p>As always, please <a href=\"https:\/\/github.com\/microsoft\/go\/issues\/new\/choose\">let us know if you encounter a problem or have a question by filing an issue<\/a>.\nIf you have access to Microsoft internal sites, you can alternatively use one of the channels listed in <a href=\"https:\/\/eng.ms\/docs\/more\/languages-at-microsoft\/go\/articles\/support\">our internal support documentation<\/a> such as the <a href=\"https:\/\/teams.microsoft.com\/l\/team\/19%3A5ff9d842c25641cc9d2d25517d9aca70%40thread.skype\/conversations?groupId=53f277ec-635a-409d-b821-1f53c67f1cd9&amp;tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47\">Golang Friends group in Teams<\/a>.<\/p>\n<p>The following is a summary of the Microsoft build of Go 1.27 release notes, emphasizing important changes.\nTo see the canonical release notes doc, visit <a href=\"https:\/\/github.com\/microsoft\/go\/blob\/microsoft\/release-branch.go1.27\/docs\/go1.27.md\">the full go1.27 release notes Markdown file<\/a>.<\/p>\n<h2>Systemcrypto<\/h2>\n<p>See the <a href=\"https:\/\/github.com\/microsoft\/go\/blob\/microsoft\/main\/eng\/doc\/fips\/README.md#go-127-aug-2026\">Go 1.27 changelog in the FIPS documentation<\/a> for more information.<\/p>\n<h3>Systemcrypto is no longer a GOEXPERIMENT setting<\/h3>\n<p><code>systemcrypto<\/code> is still enabled by default on supported platforms, as it has been since Go 1.25 (Linux and Windows) and Go 1.26 (macOS).\nWhat&#8217;s new in 1.27 is that it is now selected automatically by the toolchain instead of being configured through <code>GOEXPERIMENT<\/code>:<\/p>\n<ul>\n<li>Setting the environment variable <code>GOEXPERIMENT<\/code> to <code>systemcrypto<\/code> or <code>nosystemcrypto<\/code> is now rejected with an error.\nTo disable <code>systemcrypto<\/code>, set the environment variable <code>MS_GO_NOSYSTEMCRYPTO<\/code> to <code>1<\/code> instead.<\/li>\n<li><code>systemcrypto<\/code> no longer appears in <code>go env GOEXPERIMENT<\/code>, <code>goexperiment.Flags<\/code>, or other GOEXPERIMENT-derived output.<\/li>\n<\/ul>\n<p>The per-platform GOEXPERIMENTs <code>opensslcrypto<\/code>, <code>cngcrypto<\/code>, and <code>darwincrypto<\/code> have also been removed and now cause a build error.<\/p>\n<p>The <code>goexperiment.systemcrypto<\/code> build tag is still emitted when <code>systemcrypto<\/code> is enabled.\nThat tag, and the build tags for the removed per-platform experiments, remain supported for source compatibility, with no change in behavior.<\/p>\n<h3>New platform and backend support<\/h3>\n<p><code>systemcrypto<\/code> is now supported on FreeBSD (<code>amd64<\/code> and <code>arm64<\/code>), using the same OpenSSL backend as on Linux.<\/p>\n<p>On Linux, <code>systemcrypto<\/code> now supports <code>CGO_ENABLED=0<\/code> on architectures that have a cgo-less OpenSSL implementation.\nThis replaces the Go 1.26 <code>GOEXPERIMENT=ms_nocgo_opensslcrypto<\/code> experiment, which has been removed.<\/p>\n<h3>New algorithms<\/h3>\n<p>The <code>systemcrypto<\/code> backends now implement the following ML-DSA parameter sets:<\/p>\n<ul>\n<li>ML-DSA-44<\/li>\n<li>ML-DSA-65<\/li>\n<li>ML-DSA-87<\/li>\n<\/ul>\n<h3>FIPS 140<\/h3>\n<p><code>GODEBUG=fips140=only<\/code> has been added.\nIt acts like <code>fips140=on<\/code>, but also panics if a non-FIPS-approved algorithm is used.<\/p>\n<p><code>GODEBUG=fips140=off<\/code> now explicitly disables FIPS mode and skips the platform-specific FIPS detection (such as the Linux kernel FIPS flag at <code>\/proc\/sys\/crypto\/fips_enabled<\/code>).<\/p>\n<p>The <code>GOFIPS<\/code> and <code>GOLANG_FIPS<\/code> environment variable checks now match their intended behavior: only the value <code>1<\/code> enables FIPS mode, and any other value (including <code>0<\/code> and the empty string) is treated as if the variable were unset.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A new release of the Microsoft build of Go is now available for download.<\/p>\n","protected":false},"author":162502,"featured_media":433,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[4,5],"class_list":["post-483","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-go","tag-go","tag-release"],"acf":[],"blog_post_summary":"<p>A new release of the Microsoft build of Go is now available for download.<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/posts\/483","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/users\/162502"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/comments?post=483"}],"version-history":[{"count":2,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/posts\/483\/revisions"}],"predecessor-version":[{"id":488,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/posts\/483\/revisions\/488"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/media\/433"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/media?parent=483"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/categories?post=483"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/go\/wp-json\/wp\/v2\/tags?post=483"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}