You've already forked goreleaser
							
							
				mirror of
				https://github.com/goreleaser/goreleaser.git
				synced 2025-10-30 23:58:09 +02:00 
			
		
		
		
	docs: blog (#4264)
Starting to move the blog from medium to mkdocs! closes #3503 --------- Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
This commit is contained in:
		
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			
						parent
						
							646eb82f9a
						
					
				
				
					commit
					f62adf23ff
				
			| @@ -1,9 +1,12 @@ | ||||
| #!/bin/bash | ||||
| set -euo pipefail | ||||
|  | ||||
| # unshallow (needed for the rss plugin) | ||||
| git fetch --prune --tags --unshallow | ||||
|  | ||||
| # install | ||||
| pip install --upgrade pip | ||||
| pip install -U mkdocs-material mkdocs-redirects mkdocs-minify-plugin mkdocs-include-markdown-plugin lunr | ||||
| pip install -U mkdocs-material mkdocs-redirects mkdocs-minify-plugin mkdocs-include-markdown-plugin lunr mkdocs-rss-plugin | ||||
|  | ||||
| # prepare | ||||
| version="$(cat ./www/docs/static/latest)" | ||||
|   | ||||
| @@ -1,2 +1,2 @@ | ||||
| FROM squidfunk/mkdocs-material | ||||
| RUN pip install mkdocs-include-markdown-plugin | ||||
| RUN pip install mkdocs-include-markdown-plugin mkdocs-rss-plugin | ||||
|   | ||||
							
								
								
									
										5
									
								
								www/docs/blog/.authors.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								www/docs/blog/.authors.yml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| authors: | ||||
|   caarlos0: | ||||
|     name: Carlos Becker | ||||
|     description: Creator | ||||
|     avatar: https://avatars.githubusercontent.com/u/245435 | ||||
							
								
								
									
										2
									
								
								www/docs/blog/index.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								www/docs/blog/index.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,2 @@ | ||||
| # Blog | ||||
|  | ||||
							
								
								
									
										70
									
								
								www/docs/blog/posts/2021-11-14-goreleaser-v1.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								www/docs/blog/posts/2021-11-14-goreleaser-v1.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,70 @@ | ||||
| --- | ||||
| date: 2021-11-14 | ||||
| slug: goreleaser-v1 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1 — the first v1 release | ||||
|  | ||||
| Hello everyone! | ||||
|  | ||||
| I've been holding on the "v1" release for, _checks notes_, years now. That's | ||||
| because I wanted v1 to have a "stable enough API", i.e. something unlikely to | ||||
| change. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| A couple of months ago I realized that we'll probably never reach that, as | ||||
| things keep changing: we add more features, change old ones (sometimes on our | ||||
| own, sometimes due to changes on other tools), and so on. That way, v1 would | ||||
| never happen. | ||||
|  | ||||
| Therefore, after **467 releases**, **3299 commits**, and almost **5 years** of | ||||
| hard work, I'm glad to announce that **v1.0.0 is finally here**! | ||||
|  | ||||
|  | ||||
|  | ||||
| This is a special release, as it marks GoReleaser departing from the school of | ||||
| [ZeroVer](https://0ver.org), so I decided to write this quick bit compiling the | ||||
| most notable changes and some special thanks. | ||||
|  | ||||
| ## Most notable changes | ||||
|  | ||||
| - New `ReleaseURL` template variable, which points to the current tag release | ||||
|   page on GitHub/Gitlab/Gitea | ||||
| - Release [Krew Plugin Manifests](https://goreleaser.com/customization/krew/) | ||||
| - [Announce releases to | ||||
|   LinkedIn](https://goreleaser.com/customization/announce/linkedin/) | ||||
| - Support [GitHub-generated release | ||||
|   notes](https://goreleaser.com/customization/changelog/) | ||||
| - Better support for [keyless | ||||
|   signing](https://goreleaser.com/customization/sign/) (with `cosign` for | ||||
|   example) | ||||
| - Several [nFPM-related | ||||
|   improvements](https://goreleaser.com/customization/nfpm/): "conventional file | ||||
|   naming" per target, better arch handling, `dir` content type and others | ||||
| - [Renamed master to | ||||
|   main](https://medium.com/idealo-tech-blog/inclusive-language-in-tech-82b19b34b7cf) | ||||
|   on both GoReleaser and nFPM | ||||
| - Some bug fixing (as always) | ||||
|  | ||||
| If it feel like a regular GoReleaser v0.x release, it's because it is. The | ||||
| biggest change here is that we're leaving v0! 😅 | ||||
|  | ||||
| ## Thanks | ||||
|  | ||||
| And a big **thank you** to everyone that helps with code, issues, money, support | ||||
| and whatnot. | ||||
|  | ||||
| I really appreciate it! You all make OpenSource and Indie development a bit | ||||
| easier! 💙 | ||||
|  | ||||
| ## Get it! | ||||
|  | ||||
| Without further ado, you can get it here: | ||||
|  | ||||
| - [GoReleaser v1.0.0](https://github.com/goreleaser/goreleaser/releases/tag/v1.0.0) | ||||
| - [GoReleaser Pro v1.0.0](https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.0.0-pro) | ||||
							
								
								
									
										64
									
								
								www/docs/blog/posts/2021-12-21-goreleaser-v1.2.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										64
									
								
								www/docs/blog/posts/2021-12-21-goreleaser-v1.2.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,64 @@ | ||||
| --- | ||||
| date: 2021-12-21 | ||||
| slug: goreleaser-v1.2 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.2 — Santa/5 year anniversary edition | ||||
|  | ||||
| GoReleaser v1.2 is out — likely be the last feature release of 2021.  | ||||
| It also marks the first 5 years since its [first commit](https://github.com/goreleaser/goreleaser/commit/8b63e6555be45234c4c2a69576ca2ddab705302c). | ||||
| It comes packed with some great features and fixes by several people! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| Here are some highlights: | ||||
|  | ||||
| 1. GoReleaser now generates a `dist/artifacts.json` file — this might help integrating with other tools (e.g. you can `jq` it to find stuff). [Link](https://github.com/goreleaser/goreleaser/commit/ecb800aef7723d58f4521d4cb457a972b019ba92). | ||||
| 2. We now have a ["Common Errors"](https://goreleaser.com/errors/dirty/) section in our docs. This should help troubleshooting common issues and provide more context to why some errors happen. More errors should be added as we evolve. Links: [1](https://github.com/goreleaser/goreleaser/commit/62da2dbe1396aa1e423ac41feeb12f74dbe8ac29), [2](https://github.com/goreleaser/goreleaser/commit/73867736a5ddeb23ac4767cc541395e7d61d32bd), [3](https://github.com/goreleaser/goreleaser/commit/8c06005bc66ff3435bd9bee32a36ebabf685cd41). | ||||
| 3. Docker images are no longer listed in the changelog. It was mostly noise, making its way between the changelog and the footer, which in turn makes having custom release notes a bit harder. Users can still add them using the `footer` option. [Link](https://github.com/goreleaser/goreleaser/commit/30ff48a5a69f2441c7f4d12264c3c813e77d3467). | ||||
| 4. Auto-refresh checksums — now if you sign your binaries with something that actually changes the file, checksums will be regenerated and thus correct. [Link](https://github.com/goreleaser/goreleaser/commit/cbcdd41f975b29bea58b8125fee852105ff7fe88). | ||||
| 5. Improved universal binaries usage on Homebrew taps, Gofish rigs and Krew manifests. [Link](https://github.com/goreleaser/goreleaser/commit/e8c8a2832f42569071ff2a2d2970c1ffc7c71c96). | ||||
| 6. SBOM generation — using [Syft](https://github.com/anchore/syft) by default. GoReleaser v1.2 itself is now publishing its own sBOMs! [Link](https://github.com/goreleaser/goreleaser/commit/bfdec808aba208cfdedeb3bef0a16255bf1d87b3). | ||||
| 7. Better support for [cosign](https://github.com/sigstore/cosign)'s keyless signing. Links: [1](https://github.com/goreleaser/goreleaser/commit/7c2a93cfaa9fb5e6b0d8c1bf01a97cb5903ea7b8), [2](https://github.com/goreleaser/goreleaser/commit/994cbb47c3c6d38af15c88c712bd486a126ec4cd), [3](https://github.com/goreleaser/goreleaser/commit/505888f41be5308eb7d5c6fb25df82a1bda4cc1a). | ||||
| 8. Git tag annotations are now available as template variables. Links: [1](https://github.com/goreleaser/goreleaser/commit/9b9eef04a2d1e5974d6d3e2c21048b3b2c7f37f8), [2](https://github.com/goreleaser/goreleaser/commit/6ea7fb792a09525eab6089841a9fcd03e5991e35), [3](https://github.com/goreleaser/goreleaser/commit/f01c60026ce6320447736a9e562af85bbf649562). | ||||
| 9. Improved debug log output. [Link](https://github.com/goreleaser/goreleaser/commit/a965789203f1d64de6856a1d5b4169d32f0b06df). | ||||
|  | ||||
| You can also see the full changelog **[here](https://github.com/goreleaser/goreleaser/releases/tag/v1.2.0)**. | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
| ### **Supply Chain** | ||||
|  | ||||
| A common subject in the recent releases has been supply chain security. | ||||
| You can notice that by the recent improvements and collaboration with [Sigstore's Cosign](https://github.com/sigstore/cosign), and the SBOM generation feature with [Anchore's Syft](https://github.com/anchore/syft). | ||||
|  | ||||
| We intend to keep improving in this area in order to make it easier for everyone to sign their work and publish SBOMs. | ||||
| Here's to safer internet in the future! | ||||
|  | ||||
| {{< img caption="Here's to safer internet in the future!" src="c3595591-87bf-4e52-baba-a6bd8089a279.png" >}} | ||||
|  | ||||
| ### **Houston, we have a blog!** | ||||
|  | ||||
| We now have an official [blog](https://blog.goreleaser.com)! | ||||
|  | ||||
| Before I was [posting everything here in my personal blog](https://carlosbecker.com/tags/goreleaser/), and will likely still post some things here, but here the idea is to collaborate with all GoReleaser contributors to post news in the _official blog_. | ||||
|  | ||||
| ### **Community calls and YouTube channel** | ||||
|  | ||||
| We have also scheduled our first community call! Feel free to join and suggest topics. [Link](https://github.com/goreleaser/community/pull/2). | ||||
|  | ||||
| The call should be streamed in our [YouTube channel](https://www.youtube.com/channel/UCxg5N16FKrTa4Cees434pbw). Feel free to subscribe! 😀 | ||||
|  | ||||
| ## **Next steps** | ||||
|  | ||||
| We'll continue to evolve GoReleaser to make it even better and easier to do the best thing possible. | ||||
|  | ||||
| If you'd like to participate, stay tuned for our first community call in January! | ||||
|  | ||||
| See y'all next year! | ||||
							
								
								
									
										36
									
								
								www/docs/blog/posts/2022-01-13-goreleaser-v1.3.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								www/docs/blog/posts/2022-01-13-goreleaser-v1.3.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| --- | ||||
| date: 2022-01-13 | ||||
| slug: goreleaser-v1.3 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser 1.3 — the first of 2022 | ||||
|  | ||||
| We just launched GoReleaser v1.3, the first release of 2022! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| ## **Highlights** | ||||
|  | ||||
| - Announce to any HTTP endpoint [#2750](https://github.com/goreleaser/goreleaser/pull/2750) | ||||
| - Create universal binaries from multiple build IDs [#2811](https://github.com/goreleaser/goreleaser/pull/2811) | ||||
| - New templateable fields [#2826](https://github.com/goreleaser/goreleaser/pull/2826) [#2797](https://github.com/goreleaser/goreleaser/pull/2797) | ||||
| - Custom publishers can now publish extra [#2770](https://github.com/goreleaser/goreleaser/pull/2770) | ||||
| - Fixed dependency issue with `go-reddit` which was causing problems when go installing goreleaser [#2823](https://github.com/goreleaser/goreleaser/pull/2823) | ||||
| - Fixed some issues with the github-native changelog implementation [#2802](https://github.com/goreleaser/goreleaser/pull/2802) [#2803](https://github.com/goreleaser/goreleaser/pull/2803) | ||||
|  | ||||
| You can see the full changelog [here](https://github.com/goreleaser/goreleaser/releases/tag/v1.3.0). Also check out [GoReleaser Pro v1.3](https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.3.0-pro). | ||||
|  | ||||
| Install instructions can be found [here](https://goreleaser.com/install/). | ||||
|  | ||||
| --- | ||||
|  | ||||
| Other news: | ||||
|  | ||||
| - Our community call was set for January 7th, but was delayed. We're still picking a new date. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - We created an example repository with Supply Chain Security good practices, [check it out](https://github.com/goreleaser/supply-chain-example). | ||||
| - GoReleaser now has ~9.4k stars and 261 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
							
								
								
									
										65
									
								
								www/docs/blog/posts/2022-01-26-goreleaser-v1.4.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								www/docs/blog/posts/2022-01-26-goreleaser-v1.4.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,65 @@ | ||||
| --- | ||||
| date: 2022-01-26 | ||||
| slug: goreleaser-v1.4 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.4 — the AUR release | ||||
|  | ||||
| GoReleaser can now create and publish Arch Linux `PKGBUILD` files to Arch User | ||||
| Repositories! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| This amazing new feature was sponsored by [Charm](https://charm.sh/). | ||||
|  | ||||
| ## **How does it work?** | ||||
|  | ||||
| The AUR is basically a group of Git repositories that, if you push the right set | ||||
| of files, are installable on an Arch Linux box using a tool | ||||
| like [yay](https://github.com/Jguer/yay). | ||||
|  | ||||
| To push there, you'll need to create an account on  | ||||
| [the AUR website](https://aur.archlinux.org/) and inform them of the public key | ||||
| you'll be using to push. | ||||
|  | ||||
| Then you just need to  | ||||
| [add some configuration to your goreleaser.yaml](https://goreleaser.com/customization/aur)  | ||||
| file and...you're done! GoReleaser will build everything for you, clone the | ||||
| repository, update the files, commit everything, and push it back. | ||||
|  | ||||
| **And that's it!** You can now instruct your users to install your package with | ||||
| a command like `yay -S goreleaser-bin` or `yay -S goreleaser-pro-bin`. How | ||||
| awesome is that!? | ||||
|  | ||||
| ## **Other notable features** | ||||
|  | ||||
| - [GoReleaser Pro](https://goreleaser.com/pro) now allows you to | ||||
|   use `-snapshot` without a `-key`. This should help users without a license key | ||||
|   test things locally, or on a CI job with fewer privileges (e.g. GitHub Actions | ||||
|   on a pull request). | ||||
| - And finally, both the OSS and Pro distributions now have man pages: run `man | ||||
| goreleaser` or `man goreleaser-pro` to check them out. | ||||
| - On [GoReleaser Pro](https://goreleaser.com/pro), custom variables should now | ||||
|   be  [prefixed with `.Var`](https://goreleaser.com/deprecations/#variables). | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
| - We still don't have a new date for our first community call. Personal life a | ||||
|   little too busy lately, will try my best to schedule it | ||||
|   ASAP. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - GoReleaser now has ~9.5k stars and 262 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily.  | ||||
|   [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
|  | ||||
| --- | ||||
|  | ||||
| Full disclosure: [Charm](https://charm.sh/) is my current employer. | ||||
|  | ||||
| Shameless plug: Definitely [check us out](https://charm.sh/), we are  | ||||
| [building a bunch of cool OSS stuff](https://github.com/charmbracelet)! | ||||
							
								
								
									
										36
									
								
								www/docs/blog/posts/2022-02-12-goreleaser-v1.5.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								www/docs/blog/posts/2022-02-12-goreleaser-v1.5.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| --- | ||||
| date: 2022-02-12 | ||||
| slug: goreleaser-v1.5 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.5 — the misc improvements release | ||||
|  | ||||
| GoReleaser 1.5 is out, with a handful of miscellaneous improvements. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| ## **Highlights** | ||||
|  | ||||
| - Better manpages using [mango](https://github.com/muesli/mango); | ||||
| - Migrated from [cobra](https://github.com/spf13/cobra) to [coral](https://github.com/muesli/coral) — which will eventually lead to faster `go install`; | ||||
| - Improved nFPM to make it easier for GoReleaser's debs and GoReleaser-generated debs that pass [lintian](https://lintian.debian.org/) checks; | ||||
| - Several improvements on GoReleaser output logs; | ||||
| - More fields are now templateable, namely on nFPMs and Universal Binaries configs; | ||||
| - Hooks now have an option to always print their outputs; | ||||
| - `goreleaser build --single-target` now copies the binary to `CWD`, also accepts a `-output` flag telling to copy the binary elsewhere; | ||||
| - Changelog passing through `goreleaser release --release-notes` now warns if the file is empty or whitespace-only, allowing to more easily debug releases; | ||||
| - You can now override build `tags`, `ldflags`, `gcflags` and `asmflags` per target platform; | ||||
| - On a similar note, you can get the runtime `GOOS` and `GOARCH` on template variables using `{{ .Runtime.Goos }}` and `{{ .Runtime.Goarch }}`. | ||||
|  | ||||
| You can see the full changelog [here](https://github.com/goreleaser/goreleaser/releases/tag/v1.5.0). | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
| - We still don't have a new date for our first community call. Personal life a little too busy lately, will try my best to schedule it ASAP. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - GoReleaser now has ~9.6k stars and 264 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
| - nFPM also had a couple of releases the last few weeks, [check them out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										34
									
								
								www/docs/blog/posts/2022-03-06-goreleaser-v1.6.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								www/docs/blog/posts/2022-03-06-goreleaser-v1.6.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | ||||
| --- | ||||
| date: 2022-03-06 | ||||
| slug: goreleaser-v1.6 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.6 — the boring release | ||||
|  | ||||
| GoReleaser 1.6 is out! Another "boring" release with some miscellaneous improvements and bug fixes. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| ## **Highlights** | ||||
|  | ||||
| - New `filter` and `reverseFilter` template functions ([#2924](https://github.com/goreleaser/goreleaser/pull/2924)) | ||||
| - nFPM and archiving in `tar.gz` should now be faster ([#2940](https://github.com/goreleaser/goreleaser/pull/2940), [#2941](https://github.com/goreleaser/goreleaser/pull/2941)) | ||||
| - More Snapcraft app metadata fields ([#2955](https://github.com/goreleaser/goreleaser/pull/2955)) | ||||
| - New `.TagBody` template field ([#2923](https://github.com/goreleaser/goreleaser/pull/2923)) | ||||
| - Install `amd64` binaries when no `arm64` binaries are present on macOS (i.e. use Rosetta) ([#2939](https://github.com/goreleaser/goreleaser/pull/2939)) | ||||
| - Several dependency updates | ||||
| - Several bug fixes | ||||
| - Some documentation improvements | ||||
|  | ||||
| You can see the full changelog [here](https://github.com/goreleaser/goreleaser/releases/tag/v1.6.0). | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
| - I'm risking sounding repetitive here, but we still don't have a new date for our first community call. Personal life a little too busy lately, will try my best to schedule it ASAP. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - GoReleaser now has ~9.7k stars and 268 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
| - nFPM also had a release as well, [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										31
									
								
								www/docs/blog/posts/2022-03-20-goreleaser-v1.7.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								www/docs/blog/posts/2022-03-20-goreleaser-v1.7.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| --- | ||||
| date: 2022-03-20 | ||||
| slug: goreleaser-v1.7 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.7 — The Go 1.18 release | ||||
|  | ||||
| The title would have been more creative if it was GoReleaser 1.18 as well... maybe... probably not. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| ## **Highlights** | ||||
|  | ||||
| - Go 1.18 update ([#2978](https://github.com/goreleaser/goreleaser/pull/2978), [#2984](https://github.com/goreleaser/goreleaser/pull/2984)) | ||||
| - Ability to filter by file extension in HTTP uploads ([#2992](https://github.com/goreleaser/goreleaser/pull/2992)) | ||||
| - Homebrew tap service block ([#2973](https://github.com/goreleaser/goreleaser/pull/2973)) | ||||
| - Deprecated buildpacks support ([#2982](https://github.com/goreleaser/goreleaser/pull/2982)), and removed some deprecated code/etc that have been deprecated for 6 months+ ([#2985](https://github.com/goreleaser/goreleaser/pull/2985)) | ||||
| - As always, some dependency upgrades, bug fixes and documentation improvements. | ||||
|  | ||||
| You can see the full changelog [here](https://github.com/goreleaser/goreleaser/releases/tag/v1.7.0). | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
| - Still no community meeting, sorry 🫠. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - GoReleaser now has ~9.8k stars and 269 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
| - nFPM also had a release as well, [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										33
									
								
								www/docs/blog/posts/2022-04-15-goreleaser-v1.8.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								www/docs/blog/posts/2022-04-15-goreleaser-v1.8.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| --- | ||||
| date: 2022-04-15 | ||||
| slug: goreleaser-v1.8 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.8 — the GOAMD64 release | ||||
|  | ||||
| This release's biggest feature is the `GOAMD64` support. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| ## **Highlights** | ||||
|  | ||||
| - support `GOAMD64`([#3016](https://github.com/goreleaser/goreleaser/pull/3016)) | ||||
| - upgraded from `yaml.v2` to `yaml.v3`([#3004](https://github.com/goreleaser/goreleaser/pull/3004)) | ||||
| - deprecate gofish ([#2999](https://github.com/goreleaser/goreleaser/pull/2999)) | ||||
| - added Slack notification options ([#2988](https://github.com/goreleaser/goreleaser/pull/2988)) | ||||
| - a lot of bug fixes and docs improvements | ||||
|  | ||||
| You can see the full changelog [here](https://github.com/goreleaser/goreleaser/releases/tag/v1.8.0). | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
| - Still no community meeting, sorry 🫠. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - Release Party though! Thanks to everyone who joined! | ||||
| - [GoReleaser is now in the ThoughtWorks Technology Radar!](https://www.thoughtworks.com/radar/tools/goreleaser) | ||||
| - GoReleaser now has ~9.9k stars and 271 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
| - nFPM also had a release as well, [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										39
									
								
								www/docs/blog/posts/2022-05-18-goreleaser-v1.9.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								www/docs/blog/posts/2022-05-18-goreleaser-v1.9.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,39 @@ | ||||
| --- | ||||
| date: 2022-05-18 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| slug: goreleaser-v1.9 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.9 — the 10k stars release | ||||
|  | ||||
| This release contains several minor improvements and a couple of new features! Let's have a look! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| ## **Highlights** | ||||
|  | ||||
| - `goreleaser changelog` was added to [GoReleaser Pro](https://goreleaser.com/pro) — you can use it to preview your next release changelog | ||||
| - added more build options, enabling you to build test binaries [#3064](https://github.com/goreleaser/goreleaser/pull/3064) | ||||
| - added `go_first_class` target options for build [#3062](https://github.com/goreleaser/goreleaser/pull/3062) | ||||
| - new run script for CIs that don't have it natively [#3075](https://github.com/goreleaser/goreleaser/pull/3075) | ||||
| - make it easier to run GoReleaser against a SCM that is not GitHub, GitLab or Gitea [#3088](https://github.com/goreleaser/goreleaser/pull/3088) | ||||
| - allow to create meta archives [#3093](https://github.com/goreleaser/goreleaser/pull/3093) | ||||
| - the archive pipe no longer check links are valid, like `tar` [#3103](https://github.com/goreleaser/goreleaser/pull/3103) | ||||
| - a lot of bug fixes and docs improvements | ||||
| - we are also experimenting with new ways to share news with our users, the latest is our [newsletter](https://www.getrevue.co/profile/goreleaser) | ||||
|  | ||||
| You can see the full changelog [here](https://github.com/goreleaser/goreleaser/releases/tag/v1.9.0). | ||||
|  | ||||
| ## **Other news** | ||||
|  | ||||
|  | ||||
|  | ||||
| - Still no community meeting, sorry 🫠. [Link](https://github.com/goreleaser/community/pull/2). | ||||
| - We hit 10k stars on our [main repository](https://github.com/goreleaser/goreleaser)! | ||||
| - GoReleaser now has ~10.1k stars and 277 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
							
								
								
									
										42
									
								
								www/docs/blog/posts/2022-07-04-goreleaser-v1.10.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								www/docs/blog/posts/2022-07-04-goreleaser-v1.10.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| --- | ||||
| date: 2022-07-04 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| slug: goreleaser-v1.10 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.10 — the summer release | ||||
|  | ||||
| Fun fact: it is actually winter now here in Brazil. Regardless, this release is packed with new features, quality-of-life improvements and bug fixes! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - **GoReleaser Pro** can now skip global after hooks with `-skip-after`; | ||||
| - **GoReleaser Pro** can now split the release process into "prepare", "publish" and "announce". Check out `goreleaser release --help`,`goreleaser publish --help` and `goreleaser announce --help` for more details; | ||||
| - The entire GoReleaser output is now using [caarlos0/log](https://github.com/caarlos0/log), which is a more-or-less drop-in [apex/log](https://github.com/apex/log) replacement. It uses [Charm's technology](https://charm.sh/) for its implementation and has a slightly different proposal and feature set; | ||||
| - New `-skip-docker` and `-skip-before` flags added; | ||||
| - `goreleaser build` now allows repeatable `-id` filters; | ||||
| - The build process now uses 1 parallelism permit for each binary being built, regardless of how many build configurations you have; | ||||
| - GoReleaser can now load a config file from `STDIN` (using `-config -`); | ||||
| - Builds can now override `env` in for a given target; | ||||
| - `release.repo.owner` and `release.repo.name` can now be templated; | ||||
| - Changelog grouping is now processed in the order they are declared and rendered in the order of their `order` field; | ||||
| - GoReleaser now logs the duration of "slow" pipes; | ||||
| - The deprecated `nfpms.empty_folders` is now removed; | ||||
| - The deprecated handling of Windows ARM64 builds on Go versions older than 1.17 is now removed; | ||||
| - As of every release, a good amount of bug fixing; | ||||
| - And a bunch of documentation improvements. | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - GoReleaser now has ~10.3k stars and 285 contributors! Thanks, everyone! | ||||
| - Our Discord server is getting new members almost daily. [Join and chat with us](https://discord.gg/RGEBtg8vQ6)! | ||||
| - Check out a preview of the split release phases feature: | ||||
|  | ||||
| <iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/G0MF0R_LD1g?si=zunwxqAhjU6QFK9d" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe> | ||||
							
								
								
									
										55
									
								
								www/docs/blog/posts/2022-08-28-goreleaser-v1.11.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								www/docs/blog/posts/2022-08-28-goreleaser-v1.11.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,55 @@ | ||||
| --- | ||||
| slug: goreleaser-v1.11 | ||||
| date: 2022-08-28 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.11 — the hundred commits release | ||||
|  | ||||
| This release took a while, for all the good reasons: a ton of new features and | ||||
| bug fixes for your delight! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| Oh, and, over 100 commits! | ||||
|  | ||||
| It might be the biggest GoReleaser release in commits made, although I have no | ||||
| data to back it up — except my memory. | ||||
|  | ||||
|  | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - **GoReleaser Pro** can now skip Fury publishing with `--skip-fury`; | ||||
| - **GoReleaser Pro** now has before and after hooks for archives; | ||||
| - GoReleaser is now compiled using Go 1.19, and supports new Go 1.19 targets | ||||
|   (`GOARCH=loong64`); | ||||
| - New `.ArtifactExt` template field and new `split` function; | ||||
| - You can now add more files/folders/globs to source archives (e.g. the `vendor` | ||||
|   folder); | ||||
| - The JSONSchema is finally (properly) fixed; | ||||
| - Skip uploading artifacts into the release, without skipping the whole release; | ||||
| - Changelogs using the `github` strategy now use the short commit as well; | ||||
| - Allow to keep a single draft GitHub release; | ||||
| - Allow to set `target_commitish` in GitHub releases; | ||||
| - Allow to set up mTLS in the HTTP uploads pipe; | ||||
| - Option to strip the binary parent folder in the archive; | ||||
| - Couple of improvements in the nFPM: added Termux packaging, changelogs and | ||||
|   `provides` support. | ||||
| - The GoReleaser Docker image now logs in into the GitLab Registry if its | ||||
|   environment variables are set; | ||||
| - Homebrew taps can now define their dependencies' versions; | ||||
| - The deprecated Gofish feature is now fully removed; | ||||
| - As of every release, a healthy amount of bug fixing; | ||||
| - Many documentation improvements. | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - GoReleaser now has ~10.5k stars and 292 contributors! Thanks, everyone! | ||||
| - GoReleaser now has a [LinkedIn page](https://www.linkedin.com/company/goreleaser/); | ||||
| - We eventually discuss new features in our Discord server. [Join the conversation](https://discord.gg/RGEBtg8vQ6)! | ||||
| - nFPM had new releases as well, [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
| - GoReleaser Pro now has [nightly releases](https://github.com/goreleaser/goreleaser-pro/releases/tag/nightly); | ||||
							
								
								
									
										50
									
								
								www/docs/blog/posts/2022-10-17-goreleaser-v1.12.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								www/docs/blog/posts/2022-10-17-goreleaser-v1.12.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,50 @@ | ||||
| --- | ||||
| date: 2022-10-17 | ||||
| slug: goreleaser-v1.12 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.12 — the more-than-a-hundred commits release | ||||
|  | ||||
| [The previous release had ~100 commits](./v1.11.md), | ||||
| and this one has 149 since previous feature release! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| Definitely a big release, with some big features. Let's dive in! | ||||
|  | ||||
|  | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - **GoReleaser Pro** can now split and merge releases; | ||||
| - **GoReleaser Pro** can now filter paths for changelogs; | ||||
| - **GoReleaser Pro** has now a `continue` command, which merges `publish` and | ||||
|   `announce`; | ||||
| - **GoReleaser Pro** can now filter targets by `GGOOS` and `GGOARCH` as well; | ||||
| - AUR can now set the backup options; | ||||
| - GoReleaser completions are now published to Fig as well; | ||||
| - Blobs have more templateable fields; | ||||
| - The Telegram announcer now supports markdown; | ||||
| - NFPMs can now create iOS packages (for jailbroken iPhones only); | ||||
| - Buildpacks were permanently removed; | ||||
| - As always, **a lot** of bug fixes, documentation improvements and dependencies | ||||
|   updates; | ||||
|  | ||||
| You can [install][] the same way you always do, and you can see the full release | ||||
| notes [here][oss-rel] and [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.12.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.12.0 | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - GoReleaser now has ~10.8k stars and 305 contributors! Thanks, everyone! | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://discord.gg/RGEBtg8vQ6)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										58
									
								
								www/docs/blog/posts/2022-11-18-goreleaser-v1.13.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										58
									
								
								www/docs/blog/posts/2022-11-18-goreleaser-v1.13.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,58 @@ | ||||
| --- | ||||
| date: 2022-11-18 | ||||
| slug: goreleaser-v1.13 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.13 — the November release | ||||
|  | ||||
| Another month, another release! | ||||
|  | ||||
| Like the previous 2 releases, this is a beefy one: over 100 commits from 15 | ||||
| contributors! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| This one also marks the point of | ||||
| [1 year since our first v1](./v1.md)! | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - `docker`, `docker buildx` and `podman` (on GoReleaser Pro) will now use the | ||||
|   image `digest` when creating `docker manifests`. This should help ensure that | ||||
|   what you are releasing wasn't changed by an outside tool. | ||||
|   - In the same token, the Docker images and manifests signing with `cosign` | ||||
|     will now use the `digest` by default. | ||||
| - GoReleaser can now announce to Mastodon! | ||||
| - Ability to create Arch Linux packages, _btw_. | ||||
|   - Still regarding nFPM, `dst`s with trailing slashes will now have the same | ||||
|     behavior as tools such as `cp` with trailing slashes. | ||||
| - For Windows fans: you can now create and publish `nupkg`s (Chocolatey | ||||
|   packages)! | ||||
| - Better support for building and publishing shared or static libraries. | ||||
| - Many bug fixes and documentation improvements. | ||||
|  | ||||
| You can [install][] the same way you always do, and you can see the full release | ||||
| notes [here][oss-rel] and [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.13.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.13.0 | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - GoReleaser now has ~10.9k stars and 313 contributors! Thanks, everyone! | ||||
| - We are now present in the fediverse, give us a follow at | ||||
|   [@goreleaser@fosstodon.org](https://fosstodon.org/@goreleaser). | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
| - We made a bunch of progress towards getting 100% in the | ||||
|   [OpenF Best Practices](https://bestpractices.coreinfrastructure.org/en/projects/5420#analysis) | ||||
|   assessment... and we're almost there. | ||||
							
								
								
									
										52
									
								
								www/docs/blog/posts/2022-12-27-goreleaser-v1.14.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								www/docs/blog/posts/2022-12-27-goreleaser-v1.14.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,52 @@ | ||||
| --- | ||||
| date: 2022-12-27 | ||||
| slug: goreleaser-v1.14 | ||||
| tags: [goreleaser, goreleaser-pro, golang] | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.14 — the Christmas release | ||||
|  | ||||
| Another month, another release! | ||||
| In fact, the last release of the year. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| This one in particular marks the 6 years anniversary of GoReleaser, and is | ||||
| packed with new features and improvements. | ||||
|  | ||||
|  | ||||
|  | ||||
| Let's see what's new: | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - GoReleaser Pro can now skip the build of specific Docker images based on a | ||||
|   template evaluation result; | ||||
| - GoReleaser Pro build hooks now also inherit the build environment variables | ||||
| - You can now use templates in `brews.install`, `builds.env` and | ||||
|   `archives.files.info` | ||||
| - Windows is added as a default OS for builds (amd64 and 386) | ||||
| - New `archives.rlcp` option: It'll be the default soon, run `goreleaser check` | ||||
|   to verify your configuration | ||||
| - Allow to customize the tag sorting directive | ||||
| - Deprecate `archives.replacements` | ||||
| - Allow to set the file info of binaries inside archives | ||||
| - Added a new `title` template function | ||||
| - As always, a lot of bug fixes and documentation improvements | ||||
|  | ||||
| You can [install][] the same way you always do, and you can see the full release | ||||
| notes [here][oss-rel] and [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.14.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.14.0 | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - GoReleaser now has ~11k stars and 316 contributors! Thanks, everyone! | ||||
| - We are now present in the fediverse, give us a follow at | ||||
|   [@goreleaser@fosstodon.org](https://fosstodon.org/@goreleaser). | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										65
									
								
								www/docs/blog/posts/2023-01-30-goreleaser-v1.15.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								www/docs/blog/posts/2023-01-30-goreleaser-v1.15.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,65 @@ | ||||
| --- | ||||
| date: 2023-01-30 | ||||
| slug: goreleaser-v1.15 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.15 — the first of 2023 | ||||
|  | ||||
| Keeping our pace of 1 minor a month, this is the January 2023 release. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| It is packed with some juicy features and tons of bug fixes and quality-of-life | ||||
| improvements. | ||||
|  | ||||
| Let's take a look: | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - GoReleaser Pro now can now create changelog subgroups | ||||
| - You can create and push Docker images/manifests with [Ko](https://ko.build/) | ||||
|   (big thanks to [@developerguyba](https://twitter.com/developerguyba) and | ||||
|   [@ImJasonH](https://twitter.com/ImJasonH) for all the work here) | ||||
| - More templateable fields: `nfpms.apk.signature.key_name`, `release.disable`, | ||||
|   `release.skip_upload`, `snaps.grade`, `telegram.chat_id` | ||||
| - Deprecated `--clean` in favor of `--clean` | ||||
| - As always, a lot of bug fixes and documentation improvements | ||||
|  | ||||
| You can [install][] the same way you always do, and you can see the full release | ||||
| notes [here][oss-rel] and [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.15.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.15.0 | ||||
|  | ||||
| #### GitHub Action incident | ||||
|  | ||||
| Last Friday (Jan 27th), we had a rather big | ||||
| [incident](https://github.com/goreleaser/goreleaser-action/pull/389) due to a | ||||
| GitHub website change. We were using a URL to get the release that was not in | ||||
| the API domain, but was working well for a couple of years. GitHub changed it, | ||||
| and we, as well as many other projects, got an incident in our hands. This is | ||||
| definitely our fault, though, we should have been using the guaranteed API | ||||
| endpoints instead. That said, we fixed it rather quickly, even though it was a | ||||
| Friday night. Since then, we also made more changes to use the `releases.json` | ||||
| served by our website instead of GitHub’s API, which also avoids rate limits and | ||||
| issues with GHE users. I also wanna give huge props to | ||||
| [@crazy-max](https://github.com/crazy-max) for working hard on all that, as well | ||||
| as everyone who helped debug and test everything on | ||||
| [#389](https://github.com/goreleaser/goreleaser-action/pull/389). | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - GoReleaser now has ~11.2k stars and 322 contributors! Thanks, everyone! | ||||
| - We are now present in the fediverse, give us a follow at | ||||
|   [@goreleaser@fosstodon.org](https://fosstodon.org/@goreleaser). | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										65
									
								
								www/docs/blog/posts/2023-03-06-goreleaser-v1.16.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								www/docs/blog/posts/2023-03-06-goreleaser-v1.16.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,65 @@ | ||||
| --- | ||||
| date: 2023-03-06 | ||||
| slug: goreleaser-v1.16 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.16 — the late February release | ||||
|  | ||||
| The February release got a little late... _better later than even later, I guess!_ 😄 | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| It is packed with some juicy features and tons of bug fixes and quality-of-life | ||||
| improvements. | ||||
|  | ||||
| Let's take a look: | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - On GoReleaser Pro you can now add dividers between groups in the changelog. | ||||
|   [Documentation](https://goreleaser.com/customization/changelog/). | ||||
| - GoReleaser Pro also gets a new template variable: `{{ .Artifacts }}`, which | ||||
|   you can iterate over to build, for instance, custom scripts. Oh, how can you | ||||
|   build custom scripts? I'm glad you asked! | ||||
|   [Documentation](https://goreleaser.com/customization/templates/#artifacts). | ||||
| - Concluding our Pro-exclusive feature-set for this release: template files! You | ||||
|   can template entire files, and they'll get added to the release! | ||||
|   [Documentation](https://goreleaser.com/customization/templatefiles/). | ||||
| - All GoReleaser distributions get a new subcommand: `healthcheck`. | ||||
|   [Documentation](https://goreleaser.com/cmd/goreleaser_healthcheck/). | ||||
| - The single `build` statement has been undocumented for many years, and has | ||||
|   been deprecated. | ||||
| - You can now announce to OpenCollective. | ||||
|   [Documentation](https://goreleaser.com/customization/announce/opencollective/). | ||||
| - Templating updates: `nfpms` get `{{ .ConventionalExtension }}`, new | ||||
|   templateable fields, `base` (as in `filepath.Base`) template function, and | ||||
|   more. | ||||
| - When running on a new project, with no `project_name` set, and no git remotes, | ||||
|   GoReleaser will now try to infer the project name from the `go.mod` file | ||||
|   instead of erroring. | ||||
| - GoReleaser is now built with Go 1.20. | ||||
| - As always, a lot of bug fixes, dependency updates and improvements! | ||||
|  | ||||
| You can [install][] the same way you always do, and you can see the full release | ||||
| notes [here][oss-rel] and [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.16.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.16.0 | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - We have a whole lot of example repositories, including Zig, GoReleaser-Cross, | ||||
|   GoReleaser Pro features, and more. | ||||
|   [Check it out](https://github.com/orgs/goreleaser/repositories?q=example)! | ||||
| - GoReleaser now has ~11.3k stars and 327 contributors! Thanks, everyone! | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										54
									
								
								www/docs/blog/posts/2023-04-10-goreleaser-v1.17.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								www/docs/blog/posts/2023-04-10-goreleaser-v1.17.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,54 @@ | ||||
| --- | ||||
| date: 2023-04-10 | ||||
| slug: goreleaser-v1.17 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.17 — the late Easter release | ||||
|  | ||||
| The Easter release is here! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| It is packed with some juicy features and tons of bug fixes and quality-of-life | ||||
| improvements. | ||||
|  | ||||
| Let's take a look: | ||||
|  | ||||
| ### Highlights | ||||
|  | ||||
| - GoReleaser Pro now has a `templated_files` (or `templated_extra_files`) in | ||||
|   several fields: archives, blobs, checksum, custom_publishers, docker, nfpms, | ||||
|   release, snapcrafts and source | ||||
| - GoReleaser can now open pull requests of homebrew taps, brews and scoop | ||||
|   instead of just pushing it to a branch | ||||
| - Some smaller improvements in templates, like the new `.Now` and `.IsDraft` | ||||
|   template variables (tip: `{{ .Now.Format "2006" }}` to format the date time as | ||||
|   you want) | ||||
| - Default Parallelism now matches Linux container CPU | ||||
| - Some errors have been improved to be more clear on how to fix them | ||||
| - Many improvements in the documentation | ||||
| - As always, a lot of bug fixes, dependency updates and improvements! | ||||
|  | ||||
| You can [install][] the same way you always do, and you can see the full release | ||||
| notes [here][oss-rel] and [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.17.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.17.0 | ||||
|  | ||||
| ### Other news | ||||
|  | ||||
| - We have a whole lot of example repositories, including Zig, GoReleaser-Cross, | ||||
|   GoReleaser Pro features, and more. | ||||
|   [Check it out](https://github.com/orgs/goreleaser/repositories?q=example)! | ||||
| - GoReleaser now has ~11.4k stars and 333 contributors! Thanks, everyone! | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
							
								
								
									
										171
									
								
								www/docs/blog/posts/2023-05-05-goreleaser-v1.18.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										171
									
								
								www/docs/blog/posts/2023-05-05-goreleaser-v1.18.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,171 @@ | ||||
| --- | ||||
| date: 2023-05-05 | ||||
| slug: goreleaser-v1.18 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.18 — the maintainers month release | ||||
|  | ||||
| May is the [maintainers month](https://maintainermonth.github.com), so I would | ||||
| first like to thank all the maintainers out there for the hard work, you rock! | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
|  | ||||
|  | ||||
| Now, onto new features! | ||||
|  | ||||
| ## Highlights | ||||
|  | ||||
| ### Native `upx` support | ||||
|  | ||||
| This version introduces a [`upx`][upx] root configuration section, which allows | ||||
| you to compress the binaries. | ||||
|  | ||||
| Go built binaries are known for being, well, not small. There are a couple of | ||||
| strategies to remediate it, for example, passing `-s -w` as `-ldflags` to `go | ||||
| build` - which GoReleaser does by default since the beginning. | ||||
|  | ||||
| I hope that, by making it easier to make the binaries even smaller, we get more | ||||
| projects to do that, better supporting environments with bad download speeds | ||||
| and/or low storage. | ||||
|  | ||||
| For reference, running `upx` through GoReleaser binaries shrunk them from | ||||
| **~51M** to **~15M** - about **27%** of its original size. | ||||
|  | ||||
| In a future release we'll also add more filters to the `upx` configuration. | ||||
|  | ||||
| [Documentation](https://goreleaser.com/customization/upx/). | ||||
|  | ||||
| PS: if you use this on GitHub Actions, I recommend using | ||||
| [`crazy-max/ghaction-upx`](https://github.com/crazy-max/ghaction-upx) to install | ||||
| the latest and greatest [`upx`][upx] version! | ||||
|  | ||||
| [upx]: https://upx.github.io/ | ||||
|  | ||||
| ### Report binaries sizes | ||||
|  | ||||
| Also related to binary sizes, you can now enable size reporting. After the build | ||||
| phase, GoReleaser will display the sizes and paths of all built artifacts. | ||||
|  | ||||
| These sizes will also be available in `dist/artifacts.json`, so you might parse | ||||
| and export them somewhere else. | ||||
|  | ||||
| [Documentation](https://goreleaser.com/customization/reportsizes/). | ||||
|  | ||||
| ### Template improvements | ||||
|  | ||||
| This is a recurrent subject in most releases, I know: more templateable fields! | ||||
| This release is not different in that regard: | ||||
|  | ||||
| - New `{{ .IsGitDirty }}` template variable | ||||
| - `nfpms.*.package_name` now allows templates | ||||
|  | ||||
| ### Scoops | ||||
|  | ||||
| To be in better parity with [`brews`][brews] and others, `scoop` is deprecated | ||||
| in favor of `scoops`, and you can now define multiple Scoop manifests in the | ||||
| same `.goreleaser.yaml` file. | ||||
|  | ||||
| [Documentation](https://goreleaser.com/customization/scoop/). | ||||
|  | ||||
| [brews]: https://goreleaser.com/customization/homebrew/ | ||||
|  | ||||
| ### Publish Homebrew taps, Scoop manifests and Krew plugins to plain Git repositores | ||||
|  | ||||
| Historically, you could only publish to GitHub, GitLab and Gitea, which used | ||||
| their respective APIs. | ||||
|  | ||||
| Now, you can push to any Git repository. This can be specially useful for people | ||||
| self-hosting Git servers, like [Soft Serve][soft] for example. | ||||
|  | ||||
| [soft]: https://charm.sh/soft-serve | ||||
|  | ||||
| Documentation: | ||||
|  | ||||
| - [Homebrew Taps](https://goreleaser.com/customization/homebrew/). | ||||
| - [Scoops Manifests](https://goreleaser.com/customization/scoop/). | ||||
| - [Krew Plugin Manifests](https://goreleaser.com/customization/krew/) | ||||
|  | ||||
| ### Deprecation warnings rolled out | ||||
|  | ||||
| On GoReleaser Pro, the initial way to access custom environment variables was | ||||
| `{{.var_name}}`. That could conflict with GoReleaser's internal state, and was | ||||
| deprecated in favor of `{{.Var.var_name}}`. | ||||
|  | ||||
| Now, the old way is officially removed for good. | ||||
|  | ||||
| ### Output improvements | ||||
|  | ||||
| I always aim for the GoReleaser output to be concise yet complete-ish. | ||||
|  | ||||
| This release contains a few improvements in that regard, like the removal of | ||||
| sorting the `log` keys alphabetically, so they are displayed in the intended | ||||
| order. | ||||
|  | ||||
| Another change is in printing the artifacts' path: it will now, when possible, | ||||
| use relative paths in order to make the output a bit better. | ||||
|  | ||||
| Last but not least, we have a new `goreleaser --version` output using | ||||
| [go-version](https://github.com/caarlos0/go-version): | ||||
|  | ||||
| {{< img caption="new goreleaser -v output" src="img2.png" >}} | ||||
|  | ||||
| It's not much, but it's honest work! | ||||
|  | ||||
| ### Check multiple configuration files | ||||
|  | ||||
| GoReleaser Pro allows you to include configuration files, which might lead to | ||||
| [repositories of reusable `.goreleaser.yaml` files | ||||
| parts](https://github.com/caarlos0/goreleaserfiles). | ||||
|  | ||||
| One of the advantages of this is being able to, for example, change some | ||||
| configuration in a single place and that is then applied to all the projects | ||||
| that use that file. | ||||
|  | ||||
| The problem is that `goreleaser check` only ever allowed to check one file at a | ||||
| time. | ||||
|  | ||||
| On v1.18 we added the ability to, instead, pass as many configuration files you | ||||
| need as arguments. This also allows you to use shell globs, e.g.: | ||||
|  | ||||
| ```bash | ||||
| goreleaser check goreleaser*.yaml | ||||
| ``` | ||||
|  | ||||
| You can then add this to your CI, so your GoReleaser configuration files are | ||||
| always validated and hopefully free of deprecation notices. 🤝 | ||||
|  | ||||
| ### No AUR for v1.18.0 | ||||
|  | ||||
| I'm not sure if AUR is under maintainance or if there something else going on, | ||||
| but I'm unable to clone my AUR packages using their private URLs. | ||||
|  | ||||
| I didn't want to hold the release because of it, so I'll be releasing a patch as | ||||
| soon as the problem is fixed, whatever the problem is. | ||||
|  | ||||
| Thanks for the comprehension. 😃 | ||||
|  | ||||
| ## Other news | ||||
|  | ||||
| - We have a whole lot of example repositories, including Zig, GoReleaser-Cross, | ||||
|   GoReleaser Pro features, and more. | ||||
|   [Check it out](https://github.com/orgs/goreleaser/repositories?q=example)! | ||||
| - GoReleaser now has ~11.6k stars and 336 contributors! Thanks, everyone! | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
|  | ||||
| ## Download | ||||
|  | ||||
| You can [install][] or upgrade using your favorite package manager, or see the | ||||
| full release notes and download the pre-compiled binaries [here][oss-rel] and | ||||
| [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.18.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.18.0 | ||||
							
								
								
									
										245
									
								
								www/docs/blog/posts/2023-06-28-goreleaser-v1.19.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										245
									
								
								www/docs/blog/posts/2023-06-28-goreleaser-v1.19.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,245 @@ | ||||
| --- | ||||
| date: 2023-06-28 | ||||
| slug: goreleaser-v1.19 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.19 — the big release | ||||
|  | ||||
| Almost 200 commits adding Nix, Winget, and much more... | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| This release took almost **2 months** (!), and I hope the wait was worth it! | ||||
|  | ||||
| Without further ado, let's dive in! | ||||
|  | ||||
| ## Highlights | ||||
|  | ||||
| ### Security improvements | ||||
|  | ||||
| We got a [CVE on nFPM](https://github.com/goreleaser/nfpm/security/advisories/GHSA-w7jw-q4fg-qc4c) | ||||
| and another one [on | ||||
| GoReleaser](https://github.com/goreleaser/goreleaser/security/advisories/GHSA-2fvp-53hw-f9fc). | ||||
|  | ||||
| It is unlikely that you were affected by this, but it's worth taking a look just | ||||
| in case. | ||||
|  | ||||
| **Both incidents were fixed in this release.** | ||||
|  | ||||
| ### Open pull requests for Homebrew, Krew, Scoop | ||||
|  | ||||
| You can now instead of just pushing to a branch, push and open a pull request. | ||||
| It even works cross-repository! | ||||
|  | ||||
| Here's an example: | ||||
|  | ||||
| ```yaml | ||||
| # .goreleaser.yml | ||||
| brews: # can be brews, krew, scoops, etc... | ||||
|   - # ... | ||||
|     repository: | ||||
|       owner: john | ||||
|       name: repo | ||||
|       branch: "{{.ProjectName}}-{{.Version}}" | ||||
|       pull_request: | ||||
|         enabled: true | ||||
|         base: | ||||
|           owner: mike | ||||
|           name: repo | ||||
|           branch: main | ||||
| ``` | ||||
|  | ||||
| GoReleaser will also read the `.github/PULL_REQUEST_TEMPLATE.md` and prepend it | ||||
| to the PR description if it exists! | ||||
|  | ||||
| ### Nix | ||||
|  | ||||
| We added support to generate Nixpkgs. | ||||
| We **don't** generate Nixpkgs that compile from source, though. | ||||
|  | ||||
| Instead, we use the already built archives. | ||||
|  | ||||
| This decision was made because this way we can support closed-source software as | ||||
| well as Open Source. | ||||
| The idea here is that you create your own [NUR][] and instruct your users to | ||||
| install from there. | ||||
|  | ||||
| [NUR]: https://github.com/nix-community/NUR | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```yaml | ||||
| # .goreleaser.yml | ||||
| nix: | ||||
|   - name: goreleaser-pro | ||||
|     repository: | ||||
|       owner: goreleaser | ||||
|       name: nur | ||||
|     homepage: https://goreleaser.com | ||||
|     description: Deliver Go binaries as fast and easily as possible | ||||
|     license: unfree | ||||
|     install: |- | ||||
|       mkdir -p $out/bin | ||||
|       cp -vr ./goreleaser $out/bin/goreleaser | ||||
|       installManPage ./manpages/goreleaser.1.gz | ||||
|       installShellCompletion ./completions/* | ||||
| ``` | ||||
|  | ||||
| ### Winget | ||||
|  | ||||
| Now that Winget supports installing `zip` packages, GoReleaser added support to | ||||
| generate the needed manifests, and you can then PR them to | ||||
| `microsoft/winget-pkgs`. | ||||
|  | ||||
|  | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```yaml | ||||
| # .goreleaser.yml | ||||
| winget: | ||||
|   - name: goreleaser-pro | ||||
|     publisher: goreleaser | ||||
|     license: Copyright Becker Software LTDA | ||||
|     copyright: Becker Software LTDA | ||||
|     homepage: https://goreleaser.com | ||||
|     short_description: Deliver Go binaries as fast and easily as possible | ||||
|     repository: | ||||
|       owner: goreleaser | ||||
|       name: winget-pkgs | ||||
|       branch: "goreleaser-pro-{{.Version}}" | ||||
|       pull_request: | ||||
|         enabled: true | ||||
|         draft: true | ||||
|         base: | ||||
|           owner: microsoft | ||||
|           name: winget-pkgs | ||||
|           branch: master | ||||
| ``` | ||||
|  | ||||
| PS: when you open a PR to `microsoft/winget-pkgs`, you are expected to fill the | ||||
| PR template there... Don't forget to do it! 😄 | ||||
|  | ||||
| ### Ko improvements | ||||
|  | ||||
| The Ko pipe will now ignore empty tags (e.g. if a template evaluate to an empty | ||||
| string). | ||||
|  | ||||
| Ko also now properly registers its manifests within GoReleaser's context, so you | ||||
| can sign them with `docker_signs`. | ||||
|  | ||||
| ### Deprecations that were permanently removed | ||||
|  | ||||
| Some things that were deprecated for over 6 months were removed in this release: | ||||
|  | ||||
| - `archives.replacements` | ||||
| - `archives.rlcp` | ||||
|  | ||||
| There are also other deprecations to be removed soon! | ||||
|  | ||||
| Check the [deprecations][] page to find out more, and run `goreleaser check` | ||||
| every now and then to see if your configuration file is good! | ||||
|  | ||||
| [deprecations]: https://goreleaser.com/deprecations | ||||
|  | ||||
| ### Templates | ||||
|  | ||||
| More fields now accept templates: | ||||
|  | ||||
| - `dockers.skip_push` | ||||
| - `docker_manifests.skip_push` | ||||
| - `scoops.description` | ||||
| - `scoops.homepage` | ||||
| - `snapcrafts.title` | ||||
| - `snapcrafts.icon` | ||||
| - `snapcrafts.assumes` | ||||
| - `snapcrafts.hooks` | ||||
|  | ||||
| On the same token, there are a couple of new template functions and fields: | ||||
|  | ||||
| - `{{.IsNightly}}` (always false on OSS) | ||||
| - `{{.Checksums}}` can be used in the release body template | ||||
| - `{{envOrDefault "FOO" "bar" }}` returns the value of `$FOO` if it is set, | ||||
|   otherwise returns `bar` | ||||
|  | ||||
| ### Standard repository | ||||
|  | ||||
| Historically, you would set `brews.tap`, `krews.index` and etc. | ||||
| Internally, they all used the same structure: a repository. | ||||
| "A repository" is also (probably) how most think about these fields. | ||||
|  | ||||
| To make things easier on everyone, now all those fields are named `repository` | ||||
| instead. | ||||
|  | ||||
| You can check the [deprecations][] page to find more information. | ||||
|  | ||||
| ### Continue on error | ||||
|  | ||||
| From this version onward, GoReleaser will not hard-stop when Homebrew, Nix, and | ||||
| other pipes fail to publish. | ||||
|  | ||||
| Our understanding is that having a broken, stopped-in-the-middle release, is | ||||
| worse than continuing and reporting all the errors in the end, so you can fix | ||||
| them all in a single pass and do a point-release. | ||||
|  | ||||
| You can still get the previous behavior by passing the `--fail-fast` flag. | ||||
|  | ||||
| ### Upx | ||||
|  | ||||
| As promised, `upx` now has more filters: `goos`, `goarch`, `goarm` and | ||||
| `goamd64`. | ||||
|  | ||||
| ### Telegram | ||||
|  | ||||
| The Telegram announcer now supports choosing the message format. | ||||
|  | ||||
| You can also use `mdv2escape` to escape sequences accordingly to `mdv2`. | ||||
|  | ||||
| ### Changelog | ||||
|  | ||||
| Besides just excluding commits that match some regular expressions, you can now | ||||
| include **only** the commits that match one of them. | ||||
|  | ||||
| Example: | ||||
|  | ||||
| ```yaml | ||||
| # .goreleaser.yml | ||||
| changelog: | ||||
|   filters: | ||||
|     include: | ||||
|       - "^feat.*" | ||||
|       - "^fix.*" | ||||
| ``` | ||||
|  | ||||
| ### Bugfixes et al | ||||
|  | ||||
| We also had a bunch of bugfixes and documentation improvements, as always. | ||||
|  | ||||
| ## Other news | ||||
|  | ||||
| - GoReleaser now has ~11.8k stars and 340 contributors! Thanks, everyone! | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
|  | ||||
| ## Download | ||||
|  | ||||
| You can [install][] or upgrade using your favorite package manager, or see the | ||||
| full release notes and download the pre-compiled binaries [here][oss-rel] and | ||||
| [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.19.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.19.0 | ||||
|  | ||||
| ## Helping out | ||||
|  | ||||
| You can help by contributing features and bug fixes, or by donating. | ||||
| You may also be interested in buying a GoReleaser Pro license. | ||||
|  | ||||
| You can find out more [here](https://goreleaser.com/sponsors/). | ||||
							
								
								
									
										102
									
								
								www/docs/blog/posts/2023-08-09-goreleaser-v1.20.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								www/docs/blog/posts/2023-08-09-goreleaser-v1.20.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,102 @@ | ||||
| --- | ||||
| date: 2023-08-09 | ||||
| slug: goreleaser-v1.20 | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Announcing GoReleaser v1.20 — a quality-of-life release | ||||
|  | ||||
| A little over 100 commits in small-_ish_ quality-of-life improvements. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| This is not a flashy release, but I bet you're going to like it anyway 😄 | ||||
|  | ||||
| ## Highlights | ||||
|  | ||||
|  | ||||
|  | ||||
| ### Nightlies | ||||
|  | ||||
| I've been releasing [GoReleaser Pro Nightlies][pro-nightly] for a while now, but | ||||
| it never had a fixed schedule, and the OSS version never had a nightly release | ||||
| either. | ||||
|  | ||||
| Starting now, the Pro Nightly will be released every Wednesday, and the OSS | ||||
| every Thursday. | ||||
|  | ||||
| [pro-nightly]: https://github.com/goreleaser/goreleaser-pro/releases/tag/nightly | ||||
|  | ||||
| ### GoReleaser Pro improvements | ||||
|  | ||||
| [GoReleaser Pro][pro] added a few new features: | ||||
|  | ||||
| - ability to automatically check boxes in PR templates | ||||
| - alternative names for Homebrew formulas | ||||
| - `Dockerfile` templated contents | ||||
| - HTTP & Artifactory upload matrix | ||||
| - nFPM `templated_scripts` | ||||
| - `goreleaser release --single-target` | ||||
| - Release's footer/header can be set to file paths/URLs in the configuration file | ||||
|  | ||||
| ### Nix | ||||
|  | ||||
| [We added Nix support in the previous release](./v1.19.md), | ||||
| and in this one we added a few improvements: | ||||
|  | ||||
| - `zip` support | ||||
| - the ability to define runtime dependencies | ||||
| - make it easier to extend with a new `extra_install` option | ||||
|  | ||||
| ### `extra_install` | ||||
|  | ||||
| Speaking of extra install instructions, we added this option to brew too. | ||||
|  | ||||
| ### `mod_timestamp` | ||||
|  | ||||
| We added the ability to set a `mod_timestamp` to both metadata files and to | ||||
| universal binaries. | ||||
|  | ||||
| ### Other improvements and bug fixes | ||||
|  | ||||
| This release also adds a few other small improvements, here's a few of them: | ||||
|  | ||||
| - Scoops now support `arm64` | ||||
| - Winget got the `PortableCommandAlias` option | ||||
| - Release on GitHub now has the `make_latest` option | ||||
| - You can now disable custom publishers using templates | ||||
| - `goreleaser init` and overall `goreleaser release` output improvements | ||||
|  | ||||
| Make sure to read the [full release notes][oss-rel], and the | ||||
| [pro version release notes][pro-rel] as well. | ||||
|  | ||||
| As always, we also had a bunch of bug fixes and documentation improvements. | ||||
|  | ||||
| ## Other news | ||||
|  | ||||
| - GoReleaser now has ~11.9k stars and 348 contributors! Thanks, everyone! | ||||
| - We eventually discuss new features in our Discord server.  | ||||
|   [Join the conversation](https://goreleaser.com/discord)! | ||||
| - nFPM had new releases as well,  | ||||
|   [check it out](https://github.com/goreleaser/nfpm/releases). | ||||
|  | ||||
| ## Download | ||||
|  | ||||
| You can [install][] or upgrade using your favorite package manager, or see the | ||||
| full release notes and download the pre-compiled binaries [here][oss-rel] and | ||||
| [here (for Pro)][pro-rel]. | ||||
|  | ||||
| [install]: https://goreleaser.com/install | ||||
| [pro-rel]: https://github.com/goreleaser/goreleaser-pro/releases/tag/v1.20.0-pro | ||||
| [oss-rel]: https://github.com/goreleaser/goreleaser/releases/tag/v1.20.0 | ||||
| [pro]: https://goreleaser.com/pro | ||||
|  | ||||
| ## Helping out | ||||
|  | ||||
| You can help by contributing features and bug fixes, or by donating. | ||||
| You may also be interested in buying a GoReleaser Pro license. | ||||
|  | ||||
| You can find out more [here](https://goreleaser.com/sponsors/). | ||||
							
								
								
									
										38
									
								
								www/docs/blog/posts/2023-09-14-welcome.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								www/docs/blog/posts/2023-09-14-welcome.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| --- | ||||
| date: 2023-09-14 | ||||
| slug: welcome | ||||
| categories: | ||||
|   - announcements | ||||
| authors: | ||||
|   - caarlos0 | ||||
| --- | ||||
|  | ||||
| # Welcome to our new blog | ||||
|  | ||||
| We are in the process of migrating our blog from Medium to here. | ||||
|  | ||||
| <!-- more --> | ||||
|  | ||||
| Medium is proprietary, and I don't particularly like it very much. | ||||
|  | ||||
| Now that [material-mkdocs][] has a blog feature, I started migrating the blog to | ||||
| here. | ||||
|  | ||||
| You can follow the progress in [this issue](https://github.com/goreleaser/goreleaser/issues/3503). | ||||
|  | ||||
| You can also subscribe to the [RSS feed](/feed_rss_created.xml)! | ||||
|  | ||||
| Thanks, I hope you enjoy the new home. 😄 | ||||
|  | ||||
| [material-mkdocs]: https://squidfunk.github.io/mkdocs-material/ | ||||
|  | ||||
| !!! tip "Guest Posts" | ||||
|  | ||||
|     We are also very happy to accept guest posts! | ||||
|  | ||||
|     If you feel like it, you can open a pull request adding your post to | ||||
|     [`./www/docs/blog/posts/`](https://github.com/goreleaser/goreleaser/blob/main/www/docs/blog/posts/), | ||||
|     and/or join our [Discord](/d) and discuss in the `blog` channel. | ||||
|  | ||||
|     You may also need to add yourself to | ||||
|     [`./www/docs/blog/.authors.yml`](https://github.com/goreleaser/goreleaser/blob/main/www/docs/blog/.authors.yml). | ||||
| @@ -12,11 +12,13 @@ Below you can find the steps for each of them. | ||||
| ### homebrew tap | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     brew install goreleaser/tap/goreleaser | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     brew install goreleaser/tap/goreleaser-pro | ||||
|     ``` | ||||
| @@ -24,17 +26,20 @@ Below you can find the steps for each of them. | ||||
| ### homebrew | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     brew install goreleaser | ||||
|     ``` | ||||
|  | ||||
| !!! info | ||||
|  | ||||
|     The [formula in homebrew-core](https://github.com/Homebrew/homebrew-core/blob/master/Formula/g/goreleaser.rb) might be slightly outdated. | ||||
|     Use our homebrew tap to always get the latest updates. | ||||
|  | ||||
| ### snapcraft | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     sudo snap install --classic goreleaser | ||||
|     ``` | ||||
| @@ -42,12 +47,14 @@ Below you can find the steps for each of them. | ||||
| ### scoop | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     scoop bucket add goreleaser https://github.com/goreleaser/scoop-bucket.git | ||||
|     scoop install goreleaser | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     scoop bucket add goreleaser https://github.com/goreleaser/scoop-bucket.git | ||||
|     scoop install goreleaser-pro | ||||
| @@ -56,6 +63,7 @@ Below you can find the steps for each of them. | ||||
| ### apt | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     echo 'deb [trusted=yes] https://repo.goreleaser.com/apt/ /' | sudo tee /etc/apt/sources.list.d/goreleaser.list | ||||
|     sudo apt update | ||||
| @@ -63,6 +71,7 @@ Below you can find the steps for each of them. | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     echo 'deb [trusted=yes] https://repo.goreleaser.com/apt/ /' | sudo tee /etc/apt/sources.list.d/goreleaser.list | ||||
|     sudo apt update | ||||
| @@ -72,6 +81,7 @@ Below you can find the steps for each of them. | ||||
| ### yum | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     echo '[goreleaser] | ||||
|     name=GoReleaser | ||||
| @@ -82,6 +92,7 @@ Below you can find the steps for each of them. | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     echo '[goreleaser] | ||||
|     name=GoReleaser | ||||
| @@ -94,26 +105,29 @@ Below you can find the steps for each of them. | ||||
| ### aur | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     yay -S goreleaser-bin | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     yay -S goreleaser-pro-bin | ||||
|     ``` | ||||
|  | ||||
|  | ||||
| ### nix | ||||
|  | ||||
| #### nixpkgs | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     nix-env -iA goreleaser | ||||
|     ``` | ||||
|  | ||||
| !!! info | ||||
|  | ||||
|     The [package in nixpkgs](https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/goreleaser/default.nix) | ||||
|     might be slightly outdated, as it is not updated automatically. | ||||
|     Use our NUR to always get the latest updates. | ||||
| @@ -129,6 +143,7 @@ Once you do that, you can install the packages. | ||||
| [nur]: https://github.com/goreleaser/nur | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```nix | ||||
|     { pkgs, lib, ... }: { | ||||
|       home.packages = with pkgs; [ | ||||
| @@ -138,6 +153,7 @@ Once you do that, you can install the packages. | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```nix | ||||
|     { pkgs, lib, ... }: { | ||||
|       home.packages = with pkgs; [ | ||||
| @@ -149,14 +165,17 @@ Once you do that, you can install the packages. | ||||
| ### deb, rpm and apk packages | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     Download the `.deb`, `.rpm` or `.apk` packages from the [OSS releases page][releases] and install them with the appropriate tools. | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     Download the `.deb`, `.rpm` or `.apk` packages from the [Pro releases page][pro-releases] and install them with the appropriate tools. | ||||
|  | ||||
| ### go install | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     go install github.com/goreleaser/goreleaser@latest | ||||
|     ``` | ||||
| @@ -164,16 +183,19 @@ Once you do that, you can install the packages. | ||||
| ### bash script | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     curl -sfL https://goreleaser.com/static/run | bash | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     curl -sfL https://goreleaser.com/static/run | DISTRIBUTION=pro bash | ||||
|     ``` | ||||
|  | ||||
| === "Additional Options" | ||||
|  | ||||
|     You can also set the `VERSION` and `DISTRIBUTION` variables to specify | ||||
|     a version instead of using latest and `pro` or `oss` distributions, | ||||
|     respectively. | ||||
| @@ -186,6 +208,7 @@ Once you do that, you can install the packages. | ||||
|     ``` | ||||
|  | ||||
| !!! tip | ||||
|  | ||||
|     This script does not install anything, it just downloads, verifies and | ||||
|     runs GoReleaser. | ||||
|     Its purpose is to be used within scripts and CIs. | ||||
| @@ -193,9 +216,11 @@ Once you do that, you can install the packages. | ||||
| ### manually | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     Download the pre-compiled binaries from the [OSS releases page][releases] and copy them to the desired location. | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     Download the pre-compiled binaries from the [Pro releases page][pro-releases] and copy them to the desired location. | ||||
|  | ||||
| ### nightly | ||||
| @@ -206,11 +231,13 @@ Use it for testing out new features only. | ||||
| #### manually | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     Download the pre-compiled binaries from the [nightly release][nighly-pro-releases] and copy them to the desired location. | ||||
|  | ||||
| ### bash script | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     curl -sfL https://goreleaser.com/static/run | | ||||
|       VERSION=nightly DISTRIBUTION=pro bash -s -- release --clean | ||||
| @@ -219,6 +246,7 @@ Use it for testing out new features only. | ||||
| #### docker | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     Docker images are also available, look for tags with a `-nightly` suffix. | ||||
|  | ||||
|     Registries: | ||||
| @@ -233,6 +261,7 @@ Use it for testing out new features only. | ||||
| All artifacts are checksummed, and the checksum file is signed with [cosign][]. | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     1. Download the files you want, and the `checksums.txt`, `checksum.txt.pem` and `checksums.txt.sig` files from the [releases][releases] page: | ||||
|       ```bash | ||||
|       wget 'https://github.com/goreleaser/goreleaser/releases/download/__VERSION__/checksums.txt' | ||||
| @@ -252,6 +281,7 @@ All artifacts are checksummed, and the checksum file is signed with [cosign][]. | ||||
|       ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     1. Download the files you want, and the `checksums.txt`, `checksum.txt.pem` and `checksums.txt.sig` files from the [releases][pro-releases] page: | ||||
|       ```bash | ||||
|       wget 'https://github.com/goreleaser/goreleaser-pro/releases/download/__VERSION__-pro/checksums.txt' | ||||
| @@ -277,6 +307,7 @@ Our Docker images are signed with [cosign][]. | ||||
| Verify the signatures: | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     ```bash | ||||
|     cosign verify \ | ||||
|       --certificate-identity 'https://github.com/goreleaser/goreleaser/.github/workflows/release.yml@refs/tags/__VERSION__' \ | ||||
| @@ -285,6 +316,7 @@ Verify the signatures: | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     ```bash | ||||
|     cosign verify \ | ||||
|       --certificate-identity 'https://github.com/goreleaser/goreleaser-pro-internal/.github/workflows/release-pro.yml@refs/tags/__VERSION__-pro' \ | ||||
| @@ -293,6 +325,7 @@ Verify the signatures: | ||||
|     ``` | ||||
|  | ||||
| !!! info | ||||
|  | ||||
|     The `.pem` and `.sig` files are the image `name:tag`, replacing `/` and `:` with `-`. | ||||
|  | ||||
| ## Running with Docker | ||||
| @@ -301,6 +334,7 @@ You can also use it within a Docker container. | ||||
| To do that, you'll need to execute something more-or-less like the examples below. | ||||
|  | ||||
| === "OSS" | ||||
|  | ||||
|     Registries: | ||||
|  | ||||
|     - [`goreleaser/goreleaser`](https://hub.docker.com/r/goreleaser/goreleaser) | ||||
| @@ -321,6 +355,7 @@ To do that, you'll need to execute something more-or-less like the examples belo | ||||
|     ``` | ||||
|  | ||||
| === "Pro" | ||||
|  | ||||
|     Registries: | ||||
|  | ||||
|     - [`goreleaser/goreleaser-pro`](https://hub.docker.com/r/goreleaser/goreleaser-pro) | ||||
| @@ -341,10 +376,10 @@ To do that, you'll need to execute something more-or-less like the examples belo | ||||
|       goreleaser/goreleaser-pro release | ||||
|     ``` | ||||
|  | ||||
|  | ||||
| !!! info | ||||
|  | ||||
|     Now, the provided docker image does not support | ||||
|     the generation of snapcraft packages. | ||||
|     the generation of Snapcraft packages. | ||||
|  | ||||
| Note that the image will almost always have the last stable Go version. | ||||
|  | ||||
| @@ -370,7 +405,7 @@ and iterate from that. | ||||
| Here you have two options: | ||||
|  | ||||
| If you want to contribute to the project, please follow the | ||||
| steps on our [contributing guide](/contributing/). | ||||
| steps on our [contributing guide](/contributing). | ||||
|  | ||||
| If you just want to build from source for whatever reason, follow these steps: | ||||
|  | ||||
|   | ||||
| @@ -5,17 +5,21 @@ | ||||
|   <a rel="me" href="https://fosstodon.org/@goreleaser">Mastodon</a> | ||||
|   for updates | ||||
| - Join our [Discord server](/discord) | ||||
| - Read our [blog](https://blog.goreleaser.com)[^blog] | ||||
| - Read our [blog](./blog/index.md) ([RSS](/feed_rss_created.xml)) | ||||
| - Follow us on [LinkedIn](/linkedin) | ||||
| - For questions, support and general discussion, please use | ||||
|   [Discord](/discord) or | ||||
|   [GitHub Discussions](https://github.com/goreleaser/goreleaser/discussions) | ||||
| - [Contributing Guidelines](/contributing) | ||||
| - [Security Policy](/security) | ||||
| - [EULA](/eula) | ||||
| - Ask questions on [GitHub Discussions](https://github.com/goreleaser/goreleaser/discussions) | ||||
| - Before contributing, read the [Contributing Guidelines](./contributing.md) | ||||
| - [Security Policy](./security.md | ||||
| - [EULA](./eula.md) | ||||
|  | ||||
| This project adheres to the Contributor Covenant | ||||
| [code of conduct](https://github.com/goreleaser/.github/blob/main/CODE_OF_CONDUCT.md). | ||||
| By participating, you are expected to uphold this code. | ||||
|  | ||||
| [^blog]: We accept guest posts! Join our discord and see the `blog` channel. | ||||
| [^blog]: | ||||
|     We accept guest posts! | ||||
|     You can open a pull request adding your post to | ||||
|     [`./www/docs/blog/posts/`](https://github.com/goreleaser/goreleaser/blob/main/www/docs/blog/posts/), | ||||
|     and/or join our discord and discuss in the `blog` channel. | ||||
|     You may also need to add yourself to | ||||
|     [`./www/docs/blog/.authors.yml`](https://github.com/goreleaser/goreleaser/blob/main/www/docs/blog/.authors.yml). | ||||
|   | ||||
| @@ -1,25 +1,27 @@ | ||||
| IgnoreURLs: | ||||
| - www.google-analytics.com | ||||
| - fonts.gstatic.com | ||||
| - opencollective.com | ||||
| - https://gitlab.com/-/profile/personal_access_tokens | ||||
| - https://twitter.com/goreleaser | ||||
| - support.discord.com | ||||
| - microsoft.com | ||||
| - https://github.com/goreleaser/goreleaser/edit/ | ||||
| - https://discord.com/ | ||||
| - https://gofi.sh | ||||
| - https://docs.mattermost.com | ||||
| - https://github.com/goreleaser/goreleaser/pkgs | ||||
| - https://iron.security | ||||
| - https://marketplace.visualstudio.com | ||||
| - linkedin.com | ||||
| - repology.org | ||||
| - reddit.com | ||||
| - docs.github.com | ||||
| - help.github.com | ||||
|   - www.google-analytics.com | ||||
|   - fonts.gstatic.com | ||||
|   - opencollective.com | ||||
|   - https://gitlab.com/-/profile/personal_access_tokens | ||||
|   - https://twitter.com/goreleaser | ||||
|   - support.discord.com | ||||
|   - microsoft.com | ||||
|   - https://github.com/goreleaser/goreleaser/edit/ | ||||
|   - https://discord.com/ | ||||
|   - https://gofi.sh | ||||
|   - https://docs.mattermost.com | ||||
|   - https://github.com/goreleaser/goreleaser/pkgs | ||||
|   - https://iron.security | ||||
|   - https://marketplace.visualstudio.com | ||||
|   - linkedin.com | ||||
|   - repology.org | ||||
|   - reddit.com | ||||
|   - getrevue.co | ||||
|   - docs.github.com | ||||
|   - help.github.com | ||||
|   - twitter.com | ||||
| IgnoreDirs: | ||||
| - overrides | ||||
|   - overrides | ||||
| IgnoreDirectoryMissingTrailingSlash: true | ||||
| IgnoreAltMissing: true | ||||
| ExternalTimeout: 60 | ||||
|   | ||||
| @@ -54,6 +54,14 @@ plugins: | ||||
|   - minify: | ||||
|       minify_html: true | ||||
|   - include-markdown | ||||
|   - tags | ||||
|   # - meta | ||||
|   - blog: | ||||
|       post_url_format: "{slug}" | ||||
|   - rss: | ||||
|       match_path: blog/posts/.* | ||||
|       date_from_meta: | ||||
|         as_creation: date | ||||
|  | ||||
| extra: | ||||
|   social: | ||||
| @@ -206,6 +214,8 @@ nav: | ||||
|       - sponsors.md | ||||
|       - users.md | ||||
|       - contributing.md | ||||
|   - Blog: | ||||
|       - blog/index.md | ||||
|   - pro.md | ||||
|   - links.md | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user