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
61 changes: 61 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Changelog

## main / unreleased

### What's Changed

* [ENHANCEMENT] Create CHANGELOG.md for easier communication of library changes, especially possible breaking changes. https://github.com/prometheus/common/pull/833

## v0.66.1 / 2025-09-05

This release has no functional changes, it just drops the dependencies `github.com/grafana/regexp` and `go.uber.org/atomic` and replaces `gopkg.in/yaml.v2` with `go.yaml.in/yaml/v2` (a drop-in replacement).

### What's Changed
* Revert "Use github.com/grafana/regexp instead of regexp" by @aknuds1 in https://github.com/prometheus/common/pull/835
* Move to supported version of yaml parser by @dims in https://github.com/prometheus/common/pull/834
* Revert "Use go.uber.org/atomic instead of sync/atomic (#825)" by @aknuds1 in https://github.com/prometheus/common/pull/838

**Full Changelog**: https://github.com/prometheus/common/compare/v1.20.99...v0.66.1

## v0.66.0 / 2025-09-02

### ⚠️ Breaking Changes ⚠️

* A default-constructed TextParser will be invalid. It must have a valid `scheme` set, so users should use the NewTextParser function to create a valid TextParser. Otherwise parsing will panic with "Invalid name validation scheme requested: unset".

### What's Changed
* model: add constants for type and unit labels. by @bwplotka in https://github.com/prometheus/common/pull/801
* model.ValidationScheme: Support encoding as YAML by @aknuds1 in https://github.com/prometheus/common/pull/799
* fix(promslog): always print time.Duration values as go duration strings by @tjhop in https://github.com/prometheus/common/pull/798
* Add `ValidationScheme` methods `IsValidMetricName` and `IsValidLabelName` by @aknuds1 in https://github.com/prometheus/common/pull/806
* Fix delimited proto not escaped correctly by @thampiotr in https://github.com/prometheus/common/pull/809
* Decoder: Remove use of global name validation and add validation by @ywwg in https://github.com/prometheus/common/pull/808
* ValidationScheme implements pflag.Value and json.Marshaler/Unmarshaler interfaces by @juliusmh in https://github.com/prometheus/common/pull/807
* expfmt: Add NewTextParser function by @aknuds1 in https://github.com/prometheus/common/pull/816

* Enable the godot linter by @aknuds1 in https://github.com/prometheus/common/pull/821
* Enable usestdlibvars linter by @aknuds1 in https://github.com/prometheus/common/pull/820
* Enable unconvert linter by @aknuds1 in https://github.com/prometheus/common/pull/819
* Enable the fatcontext linter by @aknuds1 in https://github.com/prometheus/common/pull/822
* Enable gocritic linter by @aknuds1 in https://github.com/prometheus/common/pull/818
* Use go.uber.org/atomic instead of sync/atomic by @aknuds1 in https://github.com/prometheus/common/pull/825
* Enable revive rule unused-parameter by @aknuds1 in https://github.com/prometheus/common/pull/824
* Enable revive rules by @aknuds1 in https://github.com/prometheus/common/pull/823
* Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/common/pull/802
* Synchronize common files from prometheus/prometheus by @prombot in https://github.com/prometheus/common/pull/803
* Sync .golangci.yml with prometheus/prometheus by @aknuds1 in https://github.com/prometheus/common/pull/817
* ci: update upload-actions by @ywwg in https://github.com/prometheus/common/pull/814
* docs: fix typo in expfmt.Negotiate by @wmcram in https://github.com/prometheus/common/pull/813
* build(deps): bump golang.org/x/net from 0.40.0 to 0.41.0 by @dependabot[bot] in https://github.com/prometheus/common/pull/800
* build(deps): bump golang.org/x/net from 0.41.0 to 0.42.0 by @dependabot[bot] in https://github.com/prometheus/common/pull/810
* build(deps): bump github.com/stretchr/testify from 1.10.0 to 1.11.1 in /assets by @dependabot[bot] in https://github.com/prometheus/common/pull/826
* build(deps): bump google.golang.org/protobuf from 1.36.6 to 1.36.8 by @dependabot[bot] in https://github.com/prometheus/common/pull/830
* build(deps): bump golang.org/x/net from 0.42.0 to 0.43.0 by @dependabot[bot] in https://github.com/prometheus/common/pull/829
* build(deps): bump github.com/stretchr/testify from 1.10.0 to 1.11.1 by @dependabot[bot] in https://github.com/prometheus/common/pull/827

### New Contributors
* @aknuds1 made their first contribution in https://github.com/prometheus/common/pull/799
* @thampiotr made their first contribution in https://github.com/prometheus/common/pull/809
* @wmcram made their first contribution in https://github.com/prometheus/common/pull/813
* @juliusmh made their first contribution in https://github.com/prometheus/common/pull/807

12 changes: 11 additions & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,17 @@ With those steps done, you can proceed to cut a release.

## How to cut an individual release

There is no automated process for cutting a release in `prometheus/common`. A manual release using GitHub's release feature via [this link](https://github.com/prometheus/prometheus/releases/new) is the best way to go. The tag name must be prefixed with a `v` e.g. `v0.53.0` and then you can use the "Generate release notes" button to generate the release note automagically ✨. No need to create a discussion or mark it a pre-release, please do mark it as the latest release if needed.
There is no automated process for cutting a release in `prometheus/common`.
The primary trigger for announcing a release is pushing a new version tag.
Comment on lines -14 to +15

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Actually, I think we don't want to do that. We shouldn't be pushing tags manually; GitHub UI is good enough for that, and it ensures we don't push tags unintentionally 🤔

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I'll clarify -- I just mean that the creation of the tag triggers releases, whether it's pushed or created by the UI


NOTE: As soon as a new tag is created, many downstream projects will automatically create pull requests to update their dependency of prom/common.
Make sure the release is ready to go, with an updated changelog including notices of any breaking changes, before pushing a new tag.

Here are the basic steps:

1. Update VERSION, applying the next logical version number, without any `v` prefix (e.g. `0.53.0`).
2. Update CHANGELOG.md, applying the new version number (this time including the `v` prefix, e.g. `v0.53.0`) and date to the changes listed under ``## main / unreleased`, and commit those changes to the main branch.
2. Use GitHub's release feature via [this link](https://github.com/prometheus/prometheus/releases/new) to apply a new tag. The tag name must be prefixed with a `v` e.g. `v0.53.0` and then use the "Generate release notes" button to generate the release notes automagically ✨. No need to create a discussion or mark it a pre-release, please do make sure it is marked as the latest release.

## Versioning strategy

Expand Down
1 change: 1 addition & 0 deletions VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0.66.1
Loading