1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2024-12-29 01:44:39 +02:00
Commit Graph

446 Commits

Author SHA1 Message Date
Matt Robenolt
77bbddf64b
feat(announce): implement expected_status_codes for webhooks (#5317)
fixes #5316
2024-11-28 22:46:55 -03:00
Carlos Alexandro Becker
368b8cbdb3
fix(jsonschema): add enum options to build.builder 2024-11-28 21:43:44 -03:00
Carlos Alexandro Becker
d43f84aa3f
refactor(build): preparing to support multiple languages (#5307)
This starts laying the foundation for supporting more languages, the
first of which will probably be Zig, and then Rust.

I already have a zig prototype working in another branch, just raw
dogged it to see if it would work, and since it does, now I'll do it
piece by piece but with hopefully slightly better code.
2024-11-25 23:00:28 -03:00
Carlos Alexandro Becker
2bf08f11a6
ci: run build/test workflow on windows too (#5263)
Maybe 3rd time is the charm!

This makes the CI build run on windows too, and fix broken tests/featuers on Windows.

Most of the changes are related to ignoring certain tests on windows, or making sure to use the right path separators.

More work to do in the future, probably!

#4293

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-11-16 10:30:39 -03:00
Ludovic Fernandez
885bcc090b
fix(jsonschema): add custom JSONSchema type to umask (#5276) 2024-11-14 08:00:24 -03:00
Oleksandr Redko
2b76fb266f
test: remove redundant require.Error (#5253)
The PR refactors tests by removing redundant `require.Error` statements
that are followed by `require.ErrorContains`. `require.ErrorContains`
will fail if `err` is `nil`, so `require.Error` is not needed.
2024-11-06 22:16:31 -03:00
Oleksandr Redko
699adf4fc5
fix: typo in JSON property for OpenCollective announce (#5251)
The PR corrects grammar mistake in the property name for
`OpenCollective` in the JSON schema.
2024-11-06 14:52:54 -03:00
Oleksandr Redko
8dad0d8229
docs: fix typos in comments (#5246) 2024-11-05 20:28:16 -03:00
世界
6ef6623d46
fix: build override (#5239)
Since Go386 now has a default value, existing configurations no longer
match 386 builds (d583861e06).

Since we used to need to write goamd64=1 to match _amd64 builds, I added
new opts to fix that. (If you think you need to set some default for
override, that would be even better)
2024-11-04 08:11:52 -03:00
Oleksandr Redko
12155a336b
refactor: remove empty lines, fix //nolint (#5235)
The PR formats code by removing redundant empty lines and fixes
`//nolint` directives. Additionally, this PR adds two more rules to the
`revive` configuration: `empty-lines` and `comment-spacings`.

Removing unnecessary empty lines helps to keep the codebase clean and
concise. This issue is identified by the `revive.empty-lines` rule.

In the `//nolint` directive, there must be no spaces between `:` and the
linter name: `//nolint:gosec`. See ["Nolint
Directive"](https://golangci-lint.run/usage/false-positives/#nolint-directive).
This issue is identified by the `revive.comment-spacings` rule.

Note that it's not possible to add just a few additional rules to the
`revive.enable` list. We need to specify all: default rules plus
additional rules. See the detailed explanation
[here](https://github.com/prometheus/prometheus/pull/13068).
2024-10-31 13:51:54 -03:00
Oleksandr Redko
57365c1630
refactor: rename archive.Copying to archive.Copy (#5233)
This PR renames `Copying` functions in the `archive` package to `Copy`
because it is a more common method name.
2024-10-31 08:53:27 -03:00
Maxime Brunet
d722aac36b
feat(ko): support annotations and user (#5227)
Add support for the newly added annotations and user options in [ko
v0.17.0](https://github.com/ko-build/ko/releases/tag/v0.17.0)
2024-10-27 16:01:09 -03:00
Carlos Alexandro Becker
24c6060050
fix: standardize .Ext to always have the preceding . (#5207)
historically this is kind of a mess, some places set the prefixed ext
(e.g. `.exe`) others don't (e.g. `msi`)

this standardize it to have the preceding `.`

also makes `ByExt` works with or without it so it doesn't break anyone's
config.

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-10-15 14:57:27 -03:00
Carlos Alexandro Becker
d583861e06
feat(build): add GO386, GOMIPS64, GORISCV64, and GOPPC64 support (#5186)
continuing the work of #5153

closes #5153

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
Co-authored-by: 世界 <i@sekai.icu>
2024-10-14 09:40:10 -03:00
Carlos Alexandro Becker
0468da12fd
feat: default GOARM change to 7 (#5157)
Guarded by an environment variable for now.

Closes #5155
2024-09-27 13:31:29 -03:00
Carlos Alexandro Becker
c7e5038077
fix: jsonschema 2024-09-12 16:44:44 -03:00
Carlos Alexandro Becker
04dfb72d57
fix(brew): version and os not being considered
closes #5123

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-09-09 22:25:21 -03:00
Carlos Alexandro Becker
e8da87cecb
feat(tmpl): IsSingleTarget (#5122)
refs #5024

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-09-07 11:09:21 -03:00
Carlos Alexandro Becker
301b193e6e
feat(build): templateable no_unique_dist_dir (#5115)
closes https://github.com/goreleaser/goreleaser/issues/5024

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-09-07 11:09:06 -03:00
Carlos Alexandro Becker
11aa7cfceb
feat(build): template skip (#5089)
closes #5071
2024-08-18 16:57:59 -03:00
Carlos Alexandro Becker
b6f9c8b9ca
feat: when --clean, remove dist before checking git state (#5057)
closes #5023
closes #5046

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-08-08 10:14:29 -03:00
Carlos Alexandro Becker
a8916c080e
feat: binary signs (#5018)
this is different from the default signs, in the sense that this will
sign the binaries even if archive mode is not set to binary.

refs https://github.com/orgs/goreleaser/discussions/4989

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-08-03 14:36:54 -03:00
Carlos Alexandro Becker
2de792c31d
feat: rename snapshot.name_template -> snapshot.version_template (#5019)
close #5017

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-07-29 09:21:00 -03:00
Carlos Alexandro Becker
569295d43f
fix(jsonschema): missing ipk in nfpm.formats
closes #4997
2024-07-15 20:50:23 -03:00
Carlos Alexandro Becker
c36a79789f
fix: typo 2024-07-13 14:21:14 -03:00
Carlos Alexandro Becker
212dbb39d4
fix: improve snapcraft configuration handling
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-07-13 14:09:46 -03:00
Weston Schmidt
cc114fc8b9
feat(nfpm): add support for ipk package format (#4863)
Adds code to expose the ipk configuration values and registers the ipk
package format with nfpm.

Updates the documentation with how to use the new ipk specific
configuration parameters.

**This isn't ready to merge, but I have some questions**

1. I copied the `TestIPKSpecificConfig()`
([code](https://github.com/goreleaser/goreleaser/compare/main...schmidtw:goreleaser:main#diff-912a4af69daf4d89537b6bea43a1b7fe65683128ea1be66d6ec77046c76d064dR1358))
from the `TestAPKSpecificConfig()` and found it only is really testing
if specific scripts are there or not. Since IPK doesn't have any
additional scripts, just fields in one file do I need this test
function? Is there a better way to validate the output?
2. I have run into issues where the tests expect `goreleaser` to be the
org & repo - is there a way to override this in my fork without changing
the code?
3. Is the `ToNFPAlts()` and `ToNFP()` living in the config.go file ok?
There wasn't much code in that file, so I figured I'd ask if you'd
rather this code be elsewhere.

---------

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-07-11 21:57:33 -03:00
Carlos Alexandro Becker
675629e798
feat: support extra_files in http upload and artifactories (#4940)
closes #4937

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-06-15 12:21:29 -03:00
Carlos Alexandro Becker
3e663003b1
feat(blob): allow to upload only extra_files (#4925)
Not happy with the option name tbh... happy to hear suggestions :) 

refs #4921
refs https://github.com/goreleaser/goreleaser/issues/4920

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-06-12 09:03:36 -03:00
Shun Sakai
65a3e06e92
feat(archive): support .tzst suffix (#4870)
See <https://lists.gnu.org/archive/html/info-gnu/2019-01/msg00001.html>:

> When '-a' option is in effect, zstd compression is selected if the
> destination archive name ends in '.zst' or '.tzst'.

---------

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-06-11 09:25:17 -03:00
Carlos Alexandro Becker
6c31ca556f
test: ensure yaml parsing difference from [] to nil
refs #4921
refs #4920
2024-06-09 19:58:24 -03:00
Carlos Alexandro Becker
35a5302479
docs: update jsonschema
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-06-05 11:15:50 -03:00
Carlos Alexandro Becker
ec2db4a727
feat!: rename module to /v2 (#4894)
<!--

Hi, thanks for contributing!

Please make sure you read our CONTRIBUTING guide.

Also, add tests and the respective documentation changes as well.

-->


<!-- If applied, this commit will... -->

...

<!-- Why is this change being made? -->

...

<!-- # Provide links to any relevant tickets, URLs or other resources
-->

...

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-26 15:02:57 -03:00
Carlos Alexandro Becker
4fa8df6413
feat!: v2 (#4806)
BREAKING CHANGE

removed all deprecated options, config file should now have a `version:
2` bit


![Dont
Matter](https://github.com/goreleaser/goreleaser/assets/245435/31ece16a-cb70-4e43-9caa-8364e73fbeb9)

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-25 14:09:49 -03:00
Oleksandr Redko
6505654c86
fix: fix nolintlint issues (#4854)
The PR enables
[`nolintlint`](https://golangci-lint.run/usage/linters/#nolintlint)
linter and fixes up appeared issues.

Changes:

- Enable `nolintlint` in `.golangci.yml` config.
- Remove unused `//nolint:` comments.
- Fix `nolint` comment format by removing spaces (`// nolint: dupl` ->
`//nolint:dupl`)

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-05-12 14:11:11 -03:00
Oleksandr Redko
00a376cc64
refactor: remove unneeded in Go 1.22 loop var copy (#4856)
The PR cleans up unnecessary loop variable copying and enables the
[`copyloopvar`](https://golangci-lint.run/usage/linters/#copyloopvar)
linter for detecting this redundant variable copying.

#### Additional notes

After the project upgraded to Go version 1.22 in #4779, copying
variables inside a `for` loop became unnecessary. See this [blog
post](https://go.dev/blog/loopvar-preview) for a detailed explanation.

The `copyloopvar` linter is only available from `golangci-lint` v1.57
onwards, so we also need to update this tool.
2024-05-12 13:21:13 -03:00
Carlos Alexandro Becker
e538341179
feat(archive): support tar.zst (#4825)
closes #4820
2024-05-03 10:29:55 -03:00
Carlos Alexandro Becker
ca52f855fc
fix: bad json tag name
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-04-26 13:04:50 -03:00
Carlos Alexandro Becker
39bf6668bc
feat(changelog): custom commit format (#4802)
This allows to use templates for commit messages in the changelog when
using `github`, `gitea`, or `gitlab` as the changelog implementation.

closes #4800

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-04-24 09:08:20 -03:00
Carlos Alexandro Becker
7552d0b4e0
fix: lint issues
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-04-22 23:44:28 -03:00
Josh Ghiloni
de72cab5d9
feat(announce): add BlueSky support (#4779)
<!--

Hi, thanks for contributing!

Please make sure you read our CONTRIBUTING guide.

Also, add tests and the respective documentation changes as well.

-->


<!-- If applied, this commit will... -->

If applied, this commit will allow users to create BlueSky posts
(skeets) about their Goreleaser-built projects

<!-- Why is this change being made? -->

Because I wanted to post to BlueSky when projects I work on relating to
BlueSky are built!

<!-- # Provide links to any relevant tickets, URLs or other resources
-->

Example post made during unit testing (requires an account to see):
https://bsky.app/profile/jaygles.bsky.social/post/3kpv573c2pc2k

---------

Co-authored-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-04-22 23:15:26 -03:00
Carlos Alexandro Becker
3cd2e07c68
feat: notarize macos binaries (#4774)
this includes anchore/quill as a pipe to sign and notarize macos
binaries

TODO:

- [x] find a way to test this
- [x] docs
- [x] maybe get someone from anchore to take a look?

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-04-19 22:27:50 -03:00
Carlos Alexandro Becker
7fc93995b8
feat: consistently use directory in property names (#4737)
It was a mess of "folder" x "directory", so changed it all to
"directory".

Closes #4732
2024-04-01 10:01:56 -03:00
Carlos Alexandro Becker
1db9347363
feat(archives): format override to 'none' to skip certain goos (#4730)
closes #4644

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-03-29 16:20:05 -03:00
Carlos Alexandro Becker
8cd325eb5a
fix: support dir in gomod (#4729)
closes https://github.com/orgs/goreleaser/discussions/4728
2024-03-29 10:27:33 -03:00
Carlos Alexandro Becker
2498ea7029
feat: add metadata to the release (#4714)
this will create a metadata artifact and allow to add them to the
release.

closes #4669
closes #4682

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-03-26 23:41:41 -03:00
Carlos Alexandro Becker
6e0f426339
feat: allow to delete existing artifacts in the release (#4711)
closes #4692
2024-03-19 23:25:42 -03:00
Carlos Alexandro Becker
54ee014b50
feat: checksums.split (#4707)
closes #4618
closes #4641

---------

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-03-17 15:16:50 -03:00
Carlos Alexandro Becker
0a272037b3
fix: only build archlinux and aur for supported arches (#4695)
closes #4693

see https://wiki.archlinux.org/title/Frequently_asked_questions
2024-03-16 11:40:57 -03:00
Carlos Alexandro Becker
e0db6ac7fa
fix: brews.url_headers is not required
Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>
2024-03-03 10:42:28 -03:00