Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 0 additions & 17 deletions .github/config.yml

This file was deleted.

37 changes: 33 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,10 +103,10 @@ down to the following steps:
automatically added to the pull request.

7. If your pull request changes anything that users should be aware of (a
bugfix, a new feature, ...) please add an entry to the file
[CHANGELOG.md](CHANGELOG.md). It will be used in the announcement of the
next stable release. While writing, ask yourself: If I were the user, what
would I need to be aware of with this change.
bugfix, a new feature, ...) make sure it ends up in the changelog by giving
the PR a clear title and the right `Type:*` label. See the
[Changelog](#changelog) section below — there is no need to edit
`CHANGELOG.md` by hand.

8. Once your code looks good and passes all the tests, we'll merge it. Thanks
a lot for your contribution!
Expand All @@ -122,6 +122,35 @@ We won't merge any code that doesn't pass the tests. If you need help to make th
pass don't hesitate to call for help! Having a PR with failing tests is nothing
to be ashamed of, in the other hand, that happens regularly for all of us.

Changelog
=========

The changelog (`CHANGELOG.md`) is generated automatically during the release
process by [ready-release-go](https://github.com/woodpecker-plugins/ready-release-go)
(see `.woodpecker/release.yaml` and `release-config.ts`).

To get your change into the changelog:

1. Give your pull request a clear, descriptive title — it becomes the changelog
line verbatim.
2. Add the appropriate `Type:*` label so the change lands in the right section.

The mapping between labels and changelog sections lives in `release-config.ts`.
The relevant `Type:*` labels are:

| Label | Section | Version bump |
| ---------------------- | --------------------- | ------------ |
| `Type:Breaking-Change` | 💥 Breaking changes | major |
| `Type:Security` | 🔒 Security | patch |
| `Type:Feature` | ✨ Features | minor |
| `Type:Enhancement` | 📈 Enhancement | minor |
| `Type:Bug` | 🐛 Bug Fixes | patch |
| `Type:Documentation` | 📚 Documentation | patch |
| `Type:Dependencies` | 📦️ Dependencies | patch |

The next version number is derived from the highest bump among the PRs included
in the release.

Git Commits
-----------

Expand Down
21 changes: 2 additions & 19 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,9 @@ TESTS="basic http copymove props"

TOOLCHAIN ?= $(CURDIR)/toolchain
GOLANGCI_LINT ?= $(TOOLCHAIN)/golangci-lint
CALENS ?= $(TOOLCHAIN)/calens

.PHONY: toolchain
toolchain: $(GOLANGCI_LINT) $(CALENS)
toolchain: $(GOLANGCI_LINT)

.PHONY: toolchain-clean
toolchain-clean:
Expand All @@ -29,7 +28,7 @@ $(GOLANGCI_LINT):
@mkdir -p $(@D)
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | BINDIR=$(@D) sh -s v2.10.1

.PHONY: check-changelog
.PHONY: lint
lint: $(GOLANGCI_LINT)
$(GOLANGCI_LINT) run --timeout 450s

Expand All @@ -38,22 +37,6 @@ lint-fix: $(GOLANGCI_LINT)
gofmt -w .
$(GOLANGCI_LINT) run --fix

CALENS_DIR := $(shell mktemp -d)
$(CALENS):
@mkdir -p $(@D)
git clone --depth 1 --branch v0.2.0 -c advice.detachedHead=false https://github.com/restic/calens.git $(CALENS_DIR)
cd $(CALENS_DIR) && GOBIN=$(@D) go install
rm -rf $(CALENS_DIR)

.PHONY: check-changelog
check-changelog: $(CALENS)
ifndef PR
$(error PR is not defined)
else
$(CALENS) | sed -n '/^Changelog for reva unreleased (UNRELEASED)/,/^Details/p' | \
grep -E '^\* [[:alpha:]]{3} #$(PR): '
endif

.PHONY: off
off:
GOPROXY=off
Expand Down
32 changes: 0 additions & 32 deletions changelog/CHANGELOG.tmpl

This file was deleted.

20 changes: 0 additions & 20 deletions changelog/NOTE.md

This file was deleted.

16 changes: 7 additions & 9 deletions changelog/README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# Changelog

We are using [calens](https://github.com/restic/calens) to properly generate a
changelog before we are tagging a new release.
This directory only contains the **historic, per-release changelog archives**
(the `<version>_<date>/` folders) from when Reva generated its changelog with
[calens](https://github.com/restic/calens). It is kept for reference only.

## Create Changelog items
Create a file according to the [template](TEMPLATE) for each
changelog in the [unreleased](./unreleased) folder. The following change types are possible: `Bugfix, Change, Enhancement, Security`.

## Generate the Changelog
- execute `go run tools/prepare-release/main.go -version 10.0.0 -commit -tag`
in the root folder of the project.
Reva no longer uses calens or `changelog/unreleased/` fragments. The changelog
(`CHANGELOG.md`) is now generated automatically at release time from merged pull
request titles and their `Type:*` labels. See the
[Changelog section in CONTRIBUTING.md](../CONTRIBUTING.md#changelog) for details.
14 changes: 0 additions & 14 deletions changelog/TEMPLATE

This file was deleted.

31 changes: 0 additions & 31 deletions changelog/changelog-github.tmpl

This file was deleted.

7 changes: 0 additions & 7 deletions changelog/unreleased/add-ocm-wayf.md

This file was deleted.

5 changes: 0 additions & 5 deletions changelog/unreleased/fix-inotifywait-logging.md

This file was deleted.

5 changes: 0 additions & 5 deletions changelog/unreleased/fix-ocm-webdav.md

This file was deleted.

Loading