sso-server merge requestshttps://git.autistici.org/id/sso-server/-/merge_requests2024-01-30T17:35:20Zhttps://git.autistici.org/id/sso-server/-/merge_requests/102Update dependency css-loader to v6.10.02024-01-30T17:35:20ZrenovateUpdate dependency css-loader to v6.10.0This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [css-loader](https://github.com/webpack-contrib/css-loader) | dependencies | minor | [`6.8.1` -> `6.10.0`](https://renovatebot.com/diffs/np...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [css-loader](https://github.com/webpack-contrib/css-loader) | dependencies | minor | [`6.8.1` -> `6.10.0`](https://renovatebot.com/diffs/npm/css-loader/6.8.1/6.10.0) |
---
### Release Notes
<details>
<summary>webpack-contrib/css-loader (css-loader)</summary>
### [`v6.10.0`](https://github.com/webpack-contrib/css-loader/blob/HEAD/CHANGELOG.md#6100-2024-01-30)
[Compare Source](https://github.com/webpack-contrib/css-loader/compare/v6.9.1...v6.10.0)
##### Features
- add `@rspack/core` as an optional peer dependency ([#​1568](https://github.com/webpack-contrib/css-loader/issues/1568)) ([3924679](https://github.com/webpack-contrib/css-loader/commit/3924679cb9a8f31996c742290a71a3446c9782b9))
- pass the `resourceQuery` and `resourceFragment` to the `auto` and `mode` callback ([#​1569](https://github.com/webpack-contrib/css-loader/issues/1569)) ([d641c4d](https://github.com/webpack-contrib/css-loader/commit/d641c4d48264518dfeb77d7e1e8ef03bbb09b645))
- support named exports with any characters ([6f43929](https://github.com/webpack-contrib/css-loader/commit/6f439299838eab7e6fb18f6e9f47b9dee2208463))
##### [6.9.1](https://github.com/webpack-contrib/css-loader/compare/v6.9.0...v6.9.1) (2024-01-18)
##### Bug Fixes
- css nesting support
- `@scope` at-rule support
### [`v6.9.1`](https://github.com/webpack-contrib/css-loader/blob/HEAD/CHANGELOG.md#691-2024-01-18)
[Compare Source](https://github.com/webpack-contrib/css-loader/compare/v6.9.0...v6.9.1)
### [`v6.9.0`](https://github.com/webpack-contrib/css-loader/blob/HEAD/CHANGELOG.md#690-2024-01-09)
[Compare Source](https://github.com/webpack-contrib/css-loader/compare/v6.8.1...v6.9.0)
##### Features
- updated generateExportEntry to expose node details ([#​1556](https://github.com/webpack-contrib/css-loader/issues/1556)) ([05002f3](https://github.com/webpack-contrib/css-loader/commit/05002f39e29afd7e12f9efca4d073bc23e3d2150))
##### Bug Fixes
- css experiment detection ([#​1559](https://github.com/webpack-contrib/css-loader/issues/1559)) ([f2cfe30](https://github.com/webpack-contrib/css-loader/commit/f2cfe30a8f6b0053a268c0d9c1943bb3c8f01338))
##### [6.8.1](https://github.com/webpack-contrib/css-loader/compare/v6.8.0...v6.8.1) (2023-05-28)
##### Bug Fixes
- use `cause` for original errors and warnings ([#​1526](https://github.com/webpack-contrib/css-loader/issues/1526)) ([ae3d8ae](https://github.com/webpack-contrib/css-loader/commit/ae3d8ae54ecb5706fe9c3449487cc8306699469f))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40OS4wIiwidXBkYXRlZEluVmVyIjoiMzYuNDkuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->https://git.autistici.org/id/sso-server/-/merge_requests/101Update dependency html-webpack-plugin to v5.6.02023-12-31T20:35:16ZrenovateUpdate dependency html-webpack-plugin to v5.6.0This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) | dependencies | minor | [`5.5.3` -> `5.6.0`](https://renovatebot.co...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [html-webpack-plugin](https://github.com/jantimon/html-webpack-plugin) | dependencies | minor | [`5.5.3` -> `5.6.0`](https://renovatebot.com/diffs/npm/html-webpack-plugin/5.5.3/5.6.0) |
---
### Release Notes
<details>
<summary>jantimon/html-webpack-plugin (html-webpack-plugin)</summary>
### [`v5.6.0`](https://github.com/jantimon/html-webpack-plugin/blob/HEAD/CHANGELOG.md#560-2023-12-19)
[Compare Source](https://github.com/jantimon/html-webpack-plugin/compare/v5.5.4...v5.6.0)
##### Features
- add `@rspack/core` as an optional peer dependency ([#​1829](https://github.com/jantimon/html-webpack-plugin/issues/1829)) ([56ff3ae](https://github.com/jantimon/html-webpack-plugin/commit/56ff3aeaf17a592bf2cfb25219cfdf5aad6cc47d))
- Added support `type=systemjs-module` via the `scriptLoading` option ([#​1822](https://github.com/jantimon/html-webpack-plugin/issues/1822)) ([7effc30](https://github.com/jantimon/html-webpack-plugin/commit/7effc30df89a6553a20bf7915d97daa067bb4173))
##### Bug Fixes
- memory leak ([#​1836](https://github.com/jantimon/html-webpack-plugin/issues/1836)) ([c79f2cf](https://github.com/jantimon/html-webpack-plugin/commit/c79f2cfdb3aaa6f1dbd87b64c7d13bc9ab21c59f))
##### [5.5.4](https://github.com/jantimon/html-webpack-plugin/compare/v5.5.3...v5.5.4) (2023-12-06)
##### Bug Fixes
- avoid have undefined `type` for script tags ([#​1809](https://github.com/jantimon/html-webpack-plugin/issues/1809)) ([9959484](https://github.com/jantimon/html-webpack-plugin/commit/9959484f5337872f5af2a2f738228f5348a93901))
- reemit assets from loaders ([#​1811](https://github.com/jantimon/html-webpack-plugin/issues/1811)) ([a214736](https://github.com/jantimon/html-webpack-plugin/commit/a21473675c81dc4ac2ec8112741cbd52a2756dcc))
- reemit favicon in serve/watch mode ([#​1804](https://github.com/jantimon/html-webpack-plugin/issues/1804)) ([57c5a4e](https://github.com/jantimon/html-webpack-plugin/commit/57c5a4ebcfc4008686ae233f0c94434757c02329))
##### [5.5.3](https://github.com/jantimon/html-webpack-plugin/compare/v5.5.2...v5.5.3) (2023-06-10)
##### Bug Fixes
- don't add extra meta tag if it exists ([#​1802](https://github.com/jantimon/html-webpack-plugin/issues/1802)) ([8f92788](https://github.com/jantimon/html-webpack-plugin/commit/8f927889a3a98d06472b662135954457385cc926))
- pass all Node.js globals to templates ([#​1796](https://github.com/jantimon/html-webpack-plugin/issues/1796)) ([f269fc0](https://github.com/jantimon/html-webpack-plugin/commit/f269fc01fe619c5a98388017770040dae6263928))
- **types:** fix type for `chunkSortMode` ([#​1798](https://github.com/jantimon/html-webpack-plugin/issues/1798)) ([6ad0e55](https://github.com/jantimon/html-webpack-plugin/commit/6ad0e556276da22b17747b15eb0e52bb9aa77c75))
##### [5.5.2](https://github.com/jantimon/html-webpack-plugin/compare/v5.5.1...v5.5.2) (2023-06-08)
##### Bug Fixes
- compatibility with ES modules output ([#​1795](https://github.com/jantimon/html-webpack-plugin/issues/1795)) ([eda853b](https://github.com/jantimon/html-webpack-plugin/commit/eda853bbcc1e47be99352cf0b097da6011d3730e))
##### [5.5.1](https://github.com/jantimon/html-webpack-plugin/compare/v5.5.0...v5.5.1) (2023-04-15)
##### Bug Fixes
- **perf:** defer loading of pretty-error to improve startup time ([#​1789](https://github.com/jantimon/html-webpack-plugin/issues/1789)) ([988709d](https://github.com/jantimon/html-webpack-plugin/commit/988709d8b0142d1654f66a94bbde4e5f40172242))
### [`v5.5.4`](https://github.com/jantimon/html-webpack-plugin/blob/HEAD/CHANGELOG.md#554-2023-12-06)
[Compare Source](https://github.com/jantimon/html-webpack-plugin/compare/v5.5.3...v5.5.4)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40OS4wIiwidXBkYXRlZEluVmVyIjoiMzYuNDkuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->https://git.autistici.org/id/sso-server/-/merge_requests/98Update module github.com/crewjam/saml to v0.4.142023-12-31T13:35:43ZrenovateUpdate module github.com/crewjam/saml to v0.4.14This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/crewjam/saml](https://github.com/crewjam/saml) | require | patch | `v0.4.13` -> `v0.4.14` |
---
### Release Notes
<details>
...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/crewjam/saml](https://github.com/crewjam/saml) | require | patch | `v0.4.13` -> `v0.4.14` |
---
### Release Notes
<details>
<summary>crewjam/saml (github.com/crewjam/saml)</summary>
### [`v0.4.14`](https://github.com/crewjam/saml/compare/v0.4.13...v0.4.14)
[Compare Source](https://github.com/crewjam/saml/compare/v0.4.13...v0.4.14)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40OS4wIiwidXBkYXRlZEluVmVyIjoiMzYuNDkuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->https://git.autistici.org/id/sso-server/-/merge_requests/95Update module github.com/oschwald/maxminddb-golang to v1.12.02023-08-19T14:31:16ZrenovateUpdate module github.com/oschwald/maxminddb-golang to v1.12.0This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/oschwald/maxminddb-golang](https://github.com/oschwald/maxminddb-golang) | require | minor | `v1.10.0` -> `v1.12.0` |
---
###...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/oschwald/maxminddb-golang](https://github.com/oschwald/maxminddb-golang) | require | minor | `v1.10.0` -> `v1.12.0` |
---
### Release Notes
<details>
<summary>oschwald/maxminddb-golang (github.com/oschwald/maxminddb-golang)</summary>
### [`v1.12.0`](https://github.com/oschwald/maxminddb-golang/releases/tag/v1.12.0): 1.12.0
[Compare Source](https://github.com/oschwald/maxminddb-golang/compare/v1.11.0...v1.12.0)
- The `wasi` target is now built without memory-mapping support. Pull request
by Alex Kashintsev. GitHub [#​114](https://github.com/oschwald/maxminddb-golang/issues/114).
- When decoding to a map of non-scalar, non-interface types such as a
`map[string]map[string]any`, the decoder failed to zero out the value for
the map elements, which could result in incorrect decoding. Reported by
JT Olio. GitHub [#​115](https://github.com/oschwald/maxminddb-golang/issues/115).
### [`v1.11.0`](https://github.com/oschwald/maxminddb-golang/releases/tag/v1.11.0): 1.11.0
[Compare Source](https://github.com/oschwald/maxminddb-golang/compare/v1.10.0...v1.11.0)
- `wasm` and `wasip1` targets are now built without memory-mapping support.
Pull request by Randy Reddig. GitHub [#​110](https://github.com/oschwald/maxminddb-golang/issues/110).
**Full Changelog**: https://github.com/oschwald/maxminddb-golang/compare/v1.10.0...v1.11.0
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40OS4wIiwidXBkYXRlZEluVmVyIjoiMzYuNDkuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->https://git.autistici.org/id/sso-server/-/merge_requests/93Update dependency bootstrap to v5.3.32024-02-20T18:28:52ZrenovateUpdate dependency bootstrap to v5.3.3This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [bootstrap](https://getbootstrap.com/) ([source](https://github.com/twbs/bootstrap)) | dependencies | minor | [`5.2.3` -> `5.3.3`](https://...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [bootstrap](https://getbootstrap.com/) ([source](https://github.com/twbs/bootstrap)) | dependencies | minor | [`5.2.3` -> `5.3.3`](https://renovatebot.com/diffs/npm/bootstrap/5.2.3/5.3.3) |
---
### Release Notes
<details>
<summary>twbs/bootstrap (bootstrap)</summary>
### [`v5.3.3`](https://github.com/twbs/bootstrap/releases/tag/v5.3.3)
[Compare Source](https://github.com/twbs/bootstrap/compare/v5.3.2...v5.3.3)
#### Highlights
- Fixed a breaking change introduced with color modes where it was required to manually import `variables-dark.scss` when building Bootstrap with Sass. Now, `_variables.scss` will automatically import `_variables-dark.scss`. If you were already importing `_variables-dark.scss` manually, you should keep doing it as it won't break anything and will be the way to go in v6.
- Fixed a regression in the selector engine that wasn't able to handle multiple IDs anymore.
#### Color modes
- Badges now use the `.text-bg-*` text utilities to be certain that the text is always readable (especially when the customized colors are different in light and dark modes).
- Fixed our `color-modes.js` script to handle the case where the OS is set to light mode and the auto color mode is used on the website. If you copied the script from our docs, you should apply [this change](https://github.com/twbs/bootstrap/commit/73e1dcf43eff8371dde52ce41bd1d9fdc2b47d1f) to your own script.
- Fixed color schemes description in the color modes documentation to show that `color-scheme()` only accept `light` and `dark` values as parameters.
#### Miscellaneous
- Allowed `<dl>`, `<dt>` and `<dd>` in the sanitizer.
- Dropped evenly items distribution for modal and offcanvas headers.
- Fixed the accordion CSS selectors to avoid inheritance issues when nesting accordions.
- Fixed the focus box-shadow for the validation stated form controls.
- Fixed the focus ring on focused checked buttons.
- Fixed the product example mobile navbar toggler.
- Changed the RTL processing of carousel control icons.
***
#### 🎨 CSS
- [#​37508](https://github.com/twbs/bootstrap/issues/37508): Use child combinators to avoid inheriting parent accordion's flush styles
- [#​38719](https://github.com/twbs/bootstrap/issues/38719): Fix focus box-shadow for validation stated form-controls
- [#​38884](https://github.com/twbs/bootstrap/issues/38884): fix border-radius on radio-switch
- [#​39294](https://github.com/twbs/bootstrap/issues/39294): Tests: update navbar in visual modal test
- [#​39373](https://github.com/twbs/bootstrap/issues/39373): refactor css: modal and offcanvas header spacing
- [#​39380](https://github.com/twbs/bootstrap/issues/39380): Fix Sass compilation breaking change in v5.3
- [#​39387](https://github.com/twbs/bootstrap/issues/39387): docs: fix typo
- [#​39411](https://github.com/twbs/bootstrap/issues/39411): Optimize the accordion icon
- [#​39497](https://github.com/twbs/bootstrap/issues/39497): Fix a typo
- [#​39536](https://github.com/twbs/bootstrap/issues/39536): Changed RTL processing of carousel control icons
- [#​39560](https://github.com/twbs/bootstrap/issues/39560): Drop `--bs-accordion-btn-focus-border-color` and deprecate `$accordion-button-focus-border-color`
- [#​39595](https://github.com/twbs/bootstrap/issues/39595): CSS: Fix the focus ring on focused checked buttons
#### ☕️ JavaScript
- [#​39201](https://github.com/twbs/bootstrap/issues/39201): Selector Engine: fix multiple IDs
- [#​39224](https://github.com/twbs/bootstrap/issues/39224): Fix edge case in `color-mode.js`
- [#​39376](https://github.com/twbs/bootstrap/issues/39376): Allow `dl`, `dt` and `dd` in sanitizer
#### 📖 Docs
- [#​39200](https://github.com/twbs/bootstrap/issues/39200): Typo Fix
- [#​39214](https://github.com/twbs/bootstrap/issues/39214): Doc: use `.text-bg-{color}` for all badges
- [#​39246](https://github.com/twbs/bootstrap/issues/39246): Docs: fix for example code blocks have unnecessary 30px right-margin
- [#​39249](https://github.com/twbs/bootstrap/issues/39249): Doc: consistent rendering of 'Heads up!' callouts
- [#​39281](https://github.com/twbs/bootstrap/issues/39281): Fix `getOrCreateInstance()` doc example
- [#​39293](https://github.com/twbs/bootstrap/issues/39293): Update background.md
- [#​39304](https://github.com/twbs/bootstrap/issues/39304): Doc: add expanded accordion explanation
- [#​39320](https://github.com/twbs/bootstrap/issues/39320): Drop `.table-light` from table foot example
- [#​39340](https://github.com/twbs/bootstrap/issues/39340): Doc: add `dispose()` to Offcanvas methods
- [#​39378](https://github.com/twbs/bootstrap/issues/39378): Docs: fix sentence in modal
- [#​39417](https://github.com/twbs/bootstrap/issues/39417): Fix color schemes description in Sass customization documentation
- [#​39418](https://github.com/twbs/bootstrap/issues/39418): Docs: change vite config path import in vite guide
- [#​39435](https://github.com/twbs/bootstrap/issues/39435): Docs: add `shift-color()` usage example in sass customization page
- [#​39458](https://github.com/twbs/bootstrap/issues/39458): Docs: enhance `.card-img-*` description
- [#​39503](https://github.com/twbs/bootstrap/issues/39503): Minor image compression improvements
- [#​39519](https://github.com/twbs/bootstrap/issues/39519): Docs: use consistent HTML elements in Utilities -> Background page
- [#​39520](https://github.com/twbs/bootstrap/issues/39520): Docs: drop unused `.theme-icon` class
- [#​39528](https://github.com/twbs/bootstrap/issues/39528): docs: clean up example.html
- [#​39537](https://github.com/twbs/bootstrap/issues/39537): Docs: fix desc around deprecated Sass mixins for alerts and list groups
- [#​39539](https://github.com/twbs/bootstrap/issues/39539): Update links on get-started page
- [#​39592](https://github.com/twbs/bootstrap/issues/39592): Update vite.md
- [#​39604](https://github.com/twbs/bootstrap/issues/39604): Fix typo in 'media-breakpoint-between' in migration docs
- [#​39617](https://github.com/twbs/bootstrap/issues/39617): Docs: add missing comma in native font stack code source in Content -> Reboot
- [#​39663](https://github.com/twbs/bootstrap/issues/39663): updated table to be responsive
#### 🛠 Examples
- [#​39657](https://github.com/twbs/bootstrap/issues/39657): Fix product example mobile navbar toggler
- [#​39585](https://github.com/twbs/bootstrap/issues/39585): Docs: Add missing type="button" to Cheatsheet nav buttons
#### 🏭 Tests
- [#​39294](https://github.com/twbs/bootstrap/issues/39294): Tests: update navbar in visual modal test
#### 🧰 Misc
- [#​39096](https://github.com/twbs/bootstrap/issues/39096): CI: stop running coveralls in forks
- [#​39501](https://github.com/twbs/bootstrap/issues/39501): CI: switch to Node.js 20
#### 📦 Dependencies
- Updated numerous [devDependencies](https://github.com/twbs/bootstrap/pulls?q=is%3Apr+label%3Adependencies+project%3Atwbs%2F32+is%3Aclosed)
### [`v5.3.2`](https://github.com/twbs/bootstrap/releases/tag/v5.3.2)
[Compare Source](https://github.com/twbs/bootstrap/compare/v5.3.1...v5.3.2)
#### Highlights
- Passing a percentage unit to the global `abs()` is deprecated since Dart Sass v1.65.0. It resulted in a deprecation warning when compiling Bootstrap with Dart Sass. This has been fixed internally by changing the values passed to the `divide()` function. The `divide()` function has not been fixed itself so that we can keep supporting node-sass cross-compatibility. In v6, this won't be an issue as we plan to drop support for node-sass.
- Using multiple `id`s in a collapse target wasn't working anymore and has been fixed.
#### Color modes
- Increased color contrast of form range track background in light and dark modes.
- Fixed table state rendering for color modes with a focus on the striped table in dark mode to increase color contrast.
- Allow `<mark>` color customization for color modes.
#### Docs
- Added alternative CDNs section in [Getting started -> Download](https://getbootstrap.com/docs/5.3/getting-started/download/#alternative-cdns).
- Added Discord and Bootstrap subreddit links in [README](https://github.com/twbs/bootstrap/blob/main/README.md) and [Getting started -> Introduction](https://getbootstrap.com/docs/5.3/getting-started/introduction/):
- [Discord](https://discord.gg/bZUvakRU3M) maintained by the community
- [Bootstrap subreddit](https://reddit.com/r/bootstrap)
***
#### 🎨 CSS
- [#​38816](https://github.com/twbs/bootstrap/issues/38816): Use `box-shadow` CSS variables shadow utilities
- [#​38955](https://github.com/twbs/bootstrap/issues/38955): Fix radios looking like ellipse on responsive mode
- [#​38976](https://github.com/twbs/bootstrap/issues/38976): Use box-shadow CSS vars instead of Sass vars in assets and variables
- [#​39030](https://github.com/twbs/bootstrap/issues/39030): Fix dart-sass deprecation warning
- [#​39033](https://github.com/twbs/bootstrap/issues/39033): Color mode: fix table state rendering
- [#​39095](https://github.com/twbs/bootstrap/issues/39095): Make form range track background more contrasted
- [#​39119](https://github.com/twbs/bootstrap/issues/39119): New Sass var `$btn-link-focus-shadow-rgb` to allow customization
- [#​39141](https://github.com/twbs/bootstrap/issues/39141): New Sass variable to handle `<mark>` dark mode bg color
#### ☕️ JavaScript
- [#​38989](https://github.com/twbs/bootstrap/issues/38989): Collapse: Fix multiple `id`s calls
- [#​39046](https://github.com/twbs/bootstrap/issues/39046): Dropdown: reuse variable
#### 📖 Docs
- [#​38873](https://github.com/twbs/bootstrap/issues/38873): Discord reddit bootstrap
- [#​38970](https://github.com/twbs/bootstrap/issues/38970): docs: add BootstrapVueNext to docs
- [#​38977](https://github.com/twbs/bootstrap/issues/38977): Docs: Add missing form elements in focusable elements
- [#​38978](https://github.com/twbs/bootstrap/issues/38978): Docs: Fix popover template role error
- [#​38995](https://github.com/twbs/bootstrap/issues/38995): introduction: drop `details` element
- [#​39037](https://github.com/twbs/bootstrap/issues/39037): Further improve image compression with oxipng and the latest jpegoptim
- [#​39054](https://github.com/twbs/bootstrap/issues/39054): Docs: Remove incorrect mention of `.left-` and `.right-` utilities from migration guide
- [#​39060](https://github.com/twbs/bootstrap/issues/39060): Migration: add back v5.0.0 heading
- [#​39145](https://github.com/twbs/bootstrap/issues/39145): Docs: add warning callout to add a workaround when jsDelivr is not available
- [#​39177](https://github.com/twbs/bootstrap/issues/39177): Fix: make theme selector tick icon visible when active in examples layout
- [#​39179](https://github.com/twbs/bootstrap/issues/39179): download: Reword CDN paragraph
#### 🛠 Examples
- [#​38994](https://github.com/twbs/bootstrap/issues/38994): examples: update 3rd-party packages
- [#​39086](https://github.com/twbs/bootstrap/issues/39086): Correct grammar error in examples/starter-template
#### 🌎 Accessibility
- [#​38978](https://github.com/twbs/bootstrap/issues/38978): Docs: Fix popover template role error
- [#​39095](https://github.com/twbs/bootstrap/issues/39095): Make form range track background more contrasted
#### 🧰 Misc
- [#​38983](https://github.com/twbs/bootstrap/issues/38983): Improve change-version script
- [#​38984](https://github.com/twbs/bootstrap/issues/38984): Convert build scripts to ESM
- [#​39021](https://github.com/twbs/bootstrap/issues/39021): CI: update permissions for calibreapp-image-actions.yml
#### 📦 Dependencies
- Updated numerous [devDependencies](https://github.com/twbs/bootstrap/pulls?q=is%3Apr+label%3Adependencies+project%3Atwbs%2F30+is%3Aclosed)
### [`v5.3.1`](https://github.com/twbs/bootstrap/releases/tag/v5.3.1)
[Compare Source](https://github.com/twbs/bootstrap/compare/v5.3.0...v5.3.1)
#### Highlights
- **Color modes:**
- Increased color contrast for dark mode by replacing `$gray-500` with `$gray-300` for the body color
- Added our color mode switcher JavaScript to our examples ZIP download
- **Components:**
- Improved disabled styling for all `.nav-link`s, providing `.disabled` and `:disabled` for use with anchors and buttons
- Add support for `Home` and `End` keys for navigating tabs by keyboard
- Added some basic styling to toggle buttons when no modifier class is present
- Fixed carousel colors in dark mode
- **Forms:**
- Fixed floating label disabled text color
- **Utilities:**
- `.text-bg-*` utilities now use CSS variables
- **Sass:**
- Add new `$navbar-dark-icon-color` Sass variable
- Removed duplicate `$alert` Sass variables
- Added a new variable for `$vr-border-width` to customize the vertical rule helper width
- **Documentation:**
- Added search to our homepage
- Improved responsive behavior on Dashboard example
- Improved dark mode rendering of Cheatsheet examples
***
#### 🎨 CSS
- [#​38913](https://github.com/twbs/bootstrap/issues/38913): Floating labels: fix disabled with text inside
- [#​38772](https://github.com/twbs/bootstrap/issues/38772): `.text-bg-*` helpers now use theme CSS variables
- [#​38886](https://github.com/twbs/bootstrap/issues/38886): New Sass variable to change vertical rule width
- [#​38851](https://github.com/twbs/bootstrap/issues/38851): Fix Sass properties order for newer stylelint-config-recess-order
- [#​38815](https://github.com/twbs/bootstrap/issues/38815): Increase contrast in dark-mode ([#​38525](https://github.com/twbs/bootstrap/issues/38525))
- [#​38774](https://github.com/twbs/bootstrap/issues/38774): Generalize disabled nav links CSS rules
- [#​38673](https://github.com/twbs/bootstrap/issues/38673): Add `$navbar-dark-icon-color`
- [#​38674](https://github.com/twbs/bootstrap/issues/38674): Remove duplicate `$alert-*-scale` Sass vars
#### ☕️ JavaScript
- [#​38498](https://github.com/twbs/bootstrap/issues/38498): Support `Home` and `End` keys in tabs
#### 📖 Docs
- [#​38958](https://github.com/twbs/bootstrap/issues/38958): Examples: improve spinner buttons accessibility
- [#​38947](https://github.com/twbs/bootstrap/issues/38947): Fix postcss plugin options
- [#​38885](https://github.com/twbs/bootstrap/issues/38885): Docs: Update float responsive examples
- [#​38946](https://github.com/twbs/bootstrap/issues/38946): Docs: remove v4 reference on homepage
- [#​38948](https://github.com/twbs/bootstrap/issues/38948): Fix some typos in Customize > Sass doc
- [#​38840](https://github.com/twbs/bootstrap/issues/38840): Docs: fix carousel carousel colors of carousel examples in dark mode
- [#​38604](https://github.com/twbs/bootstrap/issues/38604): Add dropdown alignment options to button group example
- [#​38894](https://github.com/twbs/bootstrap/issues/38894): Docs: add blank target and `noopener` rel to footer external links
- [#​38902](https://github.com/twbs/bootstrap/issues/38902): Fix tooltip generated markup documentation
- [#​38883](https://github.com/twbs/bootstrap/issues/38883): Docs: Fix incorrect class name on migration guide
- [#​38708](https://github.com/twbs/bootstrap/issues/38708): add a base class style display for toggle buttons
- [#​38827](https://github.com/twbs/bootstrap/issues/38827): Docs: add missing `aria-disabled='true'` to disabled anchors
- [#​38844](https://github.com/twbs/bootstrap/issues/38844): Fix for text-reset example class name
- [#​38838](https://github.com/twbs/bootstrap/issues/38838): JS/SCSS shortcodes: Add new feature to remove nested calls inside.
- [#​38850](https://github.com/twbs/bootstrap/issues/38850): Add docs search to homepage
- [#​38872](https://github.com/twbs/bootstrap/issues/38872): Docs: Improve Text Alignment Example
- [#​38865](https://github.com/twbs/bootstrap/issues/38865): Fix custom-radio class name on migration guide
- [#​38786](https://github.com/twbs/bootstrap/issues/38786): Explicitly add missing opacity-0 helper class example for clarity.
- [#​38707](https://github.com/twbs/bootstrap/issues/38707): Update bottom border on dark navbar example
- [#​38726](https://github.com/twbs/bootstrap/issues/38726): Update flex utilities link in navs docs
- [#​38734](https://github.com/twbs/bootstrap/issues/38734): Minor fixes for Docs Versions page
- [#​38745](https://github.com/twbs/bootstrap/issues/38745): Fix stack examples
- [#​38751](https://github.com/twbs/bootstrap/issues/38751): Docs (tooltips): Fix "them" typo in markup section
- [#​38688](https://github.com/twbs/bootstrap/issues/38688): Fix missing word issue on nav-tabs page
- [#​38681](https://github.com/twbs/bootstrap/issues/38681): Docs: consistency between custom buttons, popovers and tooltips
- [#​38600](https://github.com/twbs/bootstrap/issues/38600): collate distribution interval
- [#​38632](https://github.com/twbs/bootstrap/issues/38632): docs(spinners): improve buttons examples accessibility
- [#​38583](https://github.com/twbs/bootstrap/issues/38583): Docs: add more details on accessibility tips
- [#​38554](https://github.com/twbs/bootstrap/issues/38554): Doc: fix 'Events' JS example
- [#​38592](https://github.com/twbs/bootstrap/issues/38592): docs(forms): switch to `aria-describedby`
- [#​38542](https://github.com/twbs/bootstrap/issues/38542): Use `.d-none` instead of inline styling
- [#​38616](https://github.com/twbs/bootstrap/issues/38616): Add 'Issues assignment' section to the Contributing Guidelines
- [#​38528](https://github.com/twbs/bootstrap/issues/38528): Adding a link to `clearfix`
- [#​38538](https://github.com/twbs/bootstrap/issues/38538): Update Sass docs to mention compiling and including
- [#​38623](https://github.com/twbs/bootstrap/issues/38623): Fix disabled element tooltip StackBlitz
#### 🛠 Examples
- [#​38958](https://github.com/twbs/bootstrap/issues/38958): Examples: improve spinner buttons accessibility
- [#​38952](https://github.com/twbs/bootstrap/issues/38952): dashboard: fix offcanvas md display
- [#​38840](https://github.com/twbs/bootstrap/issues/38840): Docs: fix carousel carousel colors of carousel examples in dark mode
- [#​38905](https://github.com/twbs/bootstrap/issues/38905): Fix dark mode rendering of Cheatsheet examples
- [#​38711](https://github.com/twbs/bootstrap/issues/38711): Fix link colors in Sidebars example
#### 🌎 Accessibility
- [#​38958](https://github.com/twbs/bootstrap/issues/38958): Examples: improve spinner buttons accessibility
- [#​38498](https://github.com/twbs/bootstrap/issues/38498): Support `Home` and `End` keys in tabs
- [#​38827](https://github.com/twbs/bootstrap/issues/38827): Docs: add missing `aria-disabled='true'` to disabled anchors
- [#​38850](https://github.com/twbs/bootstrap/issues/38850): Add docs search to homepage
- [#​38774](https://github.com/twbs/bootstrap/issues/38774): Generalize disabled nav links CSS rules
- [#​38632](https://github.com/twbs/bootstrap/issues/38632): docs(spinners): improve buttons examples accessibility
- [#​38583](https://github.com/twbs/bootstrap/issues/38583): Docs: add more details on accessibility tips
- [#​38592](https://github.com/twbs/bootstrap/issues/38592): docs(forms): switch to aria-describedby
#### 🧰 Misc
- [#​38747](https://github.com/twbs/bootstrap/issues/38747): Add `color-modes.js` to `bootstrap-x.y.z-examples.zip`
#### 📦 Dependencies
- Updated numerous [devDependencies](https://github.com/twbs/bootstrap/pulls?q=is%3Apr+label%3Adependencies+project%3Atwbs%2F26+is%3Aclosed)
### [`v5.3.0`](https://github.com/twbs/bootstrap/compare/v5.2.3...v5.3.0)
[Compare Source](https://github.com/twbs/bootstrap/compare/v5.2.3...v5.3.0)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi40OS4wIiwidXBkYXRlZEluVmVyIjoiMzcuMTk0LjAiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIifQ==-->https://git.autistici.org/id/sso-server/-/merge_requests/88Update github.com/duo-labs/webauthn digest to ebaf9b72023-05-17T08:33:42ZrenovateUpdate github.com/duo-labs/webauthn digest to ebaf9b7This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/duo-labs/webauthn](https://github.com/duo-labs/webauthn) | require | digest | `03696f3` -> `ebaf9b7` |
---
### Configuration
...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/duo-labs/webauthn](https://github.com/duo-labs/webauthn) | require | digest | `03696f3` -> `ebaf9b7` |
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS44OS4xIiwidXBkYXRlZEluVmVyIjoiMzUuODkuMSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->https://git.autistici.org/id/sso-server/-/merge_requests/85Update dependency glob to v102024-03-28T16:34:47ZrenovateUpdate dependency glob to v10This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [glob](https://github.com/isaacs/node-glob) | dependencies | major | [`8.1.0` -> `10.3.12`](https://renovatebot.com/diffs/npm/glob/8.1.0/10...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [glob](https://github.com/isaacs/node-glob) | dependencies | major | [`8.1.0` -> `10.3.12`](https://renovatebot.com/diffs/npm/glob/8.1.0/10.3.12) |
---
### Release Notes
<details>
<summary>isaacs/node-glob (glob)</summary>
### [`v10.3.12`](https://github.com/isaacs/node-glob/compare/v10.3.11...v10.3.12)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.11...v10.3.12)
### [`v10.3.11`](https://github.com/isaacs/node-glob/compare/v10.3.10...v10.3.11)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.10...v10.3.11)
### [`v10.3.10`](https://github.com/isaacs/node-glob/compare/v10.3.9...v10.3.10)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.9...v10.3.10)
### [`v10.3.9`](https://github.com/isaacs/node-glob/compare/v10.3.8...v10.3.9)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.8...v10.3.9)
### [`v10.3.8`](https://github.com/isaacs/node-glob/compare/v10.3.7...v10.3.8)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.7...v10.3.8)
### [`v10.3.7`](https://github.com/isaacs/node-glob/compare/v10.3.6...v10.3.7)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.6...v10.3.7)
### [`v10.3.6`](https://github.com/isaacs/node-glob/compare/v10.3.5...v10.3.6)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.5...v10.3.6)
### [`v10.3.5`](https://github.com/isaacs/node-glob/compare/v10.3.4...v10.3.5)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.4...v10.3.5)
### [`v10.3.4`](https://github.com/isaacs/node-glob/compare/v10.3.3...v10.3.4)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.3...v10.3.4)
### [`v10.3.3`](https://github.com/isaacs/node-glob/compare/v10.3.2...v10.3.3)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.2...v10.3.3)
### [`v10.3.2`](https://github.com/isaacs/node-glob/compare/v10.3.1...v10.3.2)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.1...v10.3.2)
### [`v10.3.1`](https://github.com/isaacs/node-glob/compare/v10.3.0...v10.3.1)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.3.0...v10.3.1)
### [`v10.3.0`](https://github.com/isaacs/node-glob/blob/HEAD/changelog.md#1030)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.7...v10.3.0)
- Add `--default -p` flag to provide a default pattern
### [`v10.2.7`](https://github.com/isaacs/node-glob/compare/v10.2.6...v10.2.7)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.6...v10.2.7)
### [`v10.2.6`](https://github.com/isaacs/node-glob/compare/v10.2.5...v10.2.6)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.5...v10.2.6)
### [`v10.2.5`](https://github.com/isaacs/node-glob/compare/v10.2.4...v10.2.5)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.4...v10.2.5)
### [`v10.2.4`](https://github.com/isaacs/node-glob/compare/v10.2.3...v10.2.4)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.3...v10.2.4)
### [`v10.2.3`](https://github.com/isaacs/node-glob/compare/v10.2.2...v10.2.3)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.2...v10.2.3)
### [`v10.2.2`](https://github.com/isaacs/node-glob/compare/v10.2.1...v10.2.2)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.2.1...v10.2.2)
### [`v10.2.1`](https://github.com/isaacs/node-glob/compare/392e681b02599982c1b088736efab7cf44d168a4...v10.2.1)
[Compare Source](https://github.com/isaacs/node-glob/compare/392e681b02599982c1b088736efab7cf44d168a4...v10.2.1)
### [`v10.2.0`](https://github.com/isaacs/node-glob/blob/HEAD/changelog.md#1020)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.1.0...392e681b02599982c1b088736efab7cf44d168a4)
- Add glob cli
### [`v10.1.0`](https://github.com/isaacs/node-glob/blob/HEAD/changelog.md#1010)
[Compare Source](https://github.com/isaacs/node-glob/compare/v10.0.0...v10.1.0)
- Return `'.'` instead of the empty string `''` when the current
working directory is returned as a match.
- Add `posix: true` option to return `/` delimited paths, even on
Windows.
### [`v10.0.0`](https://github.com/isaacs/node-glob/blob/HEAD/changelog.md#1000)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.3.5...v10.0.0)
- No default exports, only named exports
### [`v9.3.5`](https://github.com/isaacs/node-glob/compare/v9.3.4...v9.3.5)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.3.4...v9.3.5)
### [`v9.3.4`](https://github.com/isaacs/node-glob/compare/v9.3.3...v9.3.4)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.3.3...v9.3.4)
### [`v9.3.3`](https://github.com/isaacs/node-glob/blob/HEAD/changelog.md#933)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.3.2...v9.3.3)
- Upgraded minimatch to v8, adding support for any degree of
nested extglob patterns.
### [`v9.3.2`](https://github.com/isaacs/node-glob/compare/v9.3.1...v9.3.2)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.3.1...v9.3.2)
### [`v9.3.1`](https://github.com/isaacs/node-glob/compare/v9.3.0...v9.3.1)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.3.0...v9.3.1)
### [`v9.3.0`](https://github.com/isaacs/node-glob/compare/v9.2.1...v9.3.0)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.2.1...v9.3.0)
### [`v9.2.1`](https://github.com/isaacs/node-glob/compare/v9.2.0...v9.2.1)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.2.0...v9.2.1)
### [`v9.2.0`](https://github.com/isaacs/node-glob/compare/v9.1.2...v9.2.0)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.1.2...v9.2.0)
### [`v9.1.2`](https://github.com/isaacs/node-glob/compare/v9.1.1...v9.1.2)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.1.1...v9.1.2)
### [`v9.1.1`](https://github.com/isaacs/node-glob/compare/v9.1.0...v9.1.1)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.1.0...v9.1.1)
### [`v9.1.0`](https://github.com/isaacs/node-glob/compare/v9.0.2...v9.1.0)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.0.2...v9.1.0)
### [`v9.0.2`](https://github.com/isaacs/node-glob/compare/v9.0.1...v9.0.2)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.0.1...v9.0.2)
### [`v9.0.1`](https://github.com/isaacs/node-glob/compare/v9.0.0...v9.0.1)
[Compare Source](https://github.com/isaacs/node-glob/compare/v9.0.0...v9.0.1)
### [`v9.0.0`](https://github.com/isaacs/node-glob/compare/v8.1.0...v9.0.0)
[Compare Source](https://github.com/isaacs/node-glob/compare/v8.1.0...v9.0.0)
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4yOC4wIiwidXBkYXRlZEluVmVyIjoiMzcuMTk0LjAiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIifQ==-->https://git.autistici.org/id/sso-server/-/merge_requests/64Update module golang.org/x/crypto to v0.9.02023-05-30T10:31:14ZrenovateUpdate module golang.org/x/crypto to v0.9.0This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| golang.org/x/crypto | require | minor | `v0.0.0-20220829220503-c86fa9a7ed90` -> `v0.9.0` |
---
### Configuration
📅 **Schedule**: Branch ...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| golang.org/x/crypto | require | minor | `v0.0.0-20220829220503-c86fa9a7ed90` -> `v0.9.0` |
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4xOTQuMiIsInVwZGF0ZWRJblZlciI6IjM0LjI4LjAifQ==-->https://git.autistici.org/id/sso-server/-/merge_requests/61Update opentelemetry-go monorepo to v1.24.02024-02-23T17:29:17ZrenovateUpdate opentelemetry-go monorepo to v1.24.0This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go) | require | minor | `v1.10.0` -> `v1.24.0` |
| [go.opentelem...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go) | require | minor | `v1.10.0` -> `v1.24.0` |
| [go.opentelemetry.io/otel/trace](https://github.com/open-telemetry/opentelemetry-go) | require | minor | `v1.10.0` -> `v1.24.0` |
---
### Release Notes
<details>
<summary>open-telemetry/opentelemetry-go (go.opentelemetry.io/otel)</summary>
### [`v1.24.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.24.0): /v0.46.0/v0.0.1-alpha
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.23.1...v1.24.0)
This release is the last to support [Go 1.20]. The next release will require at least [Go 1.21].
##### Added
- Support [Go 1.22]. ([#​4890](https://github.com/open-telemetry/opentelemetry-go/issues/4890))
- Add exemplar support to `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`. ([#​4900](https://github.com/open-telemetry/opentelemetry-go/issues/4900))
- Add exemplar support to `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​4900](https://github.com/open-telemetry/opentelemetry-go/issues/4900))
- The `go.opentelemetry.io/otel/log` module is added. This module includes OpenTelemetry Go's implementation of the Logs Bridge API. This module is in an alpha state, it is subject to breaking changes. See our [versioning policy](./VERSIONING.md) for more info. ([#​4961](https://github.com/open-telemetry/opentelemetry-go/issues/4961))
##### Fixed
- Fix registration of multiple callbacks when using the global meter provider from `go.opentelemetry.io/otel`. ([#​4945](https://github.com/open-telemetry/opentelemetry-go/issues/4945))
- Fix negative buckets in output of exponential histograms. ([#​4956](https://github.com/open-telemetry/opentelemetry-go/issues/4956))
##### New Contributors
- [@​kevinburkesegment](https://github.com/kevinburkesegment) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4920
- [@​yizeng](https://github.com/yizeng) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4947
- [@​ntriamme](https://github.com/ntriamme) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4945
- [@​ericayin](https://github.com/ericayin) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4956
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.23.1...v1.24.0
[Go 1.22]: https://go.dev/doc/go1.22
[Go 1.21]: https://go.dev/doc/go1.21
[Go 1.20]: https://go.dev/doc/go1.20
### [`v1.23.1`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.23.1): /v0.45.2
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.23.0...v1.23.1)
##### Fixed
- Register all callbacks passed during observable instrument creation instead of just the last one multiple times in `go.opentelemetry.io/otel/sdk/metric`. ([#​4888](https://github.com/open-telemetry/opentelemetry-go/issues/4888))
### [`v1.23.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.23.0): /v0.45.1
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.23.0)
This release contains the first stable, `v1`, release of the following modules:
- `go.opentelemetry.io/otel/bridge/opencensus`
- `go.opentelemetry.io/otel/bridge/opencensus/test`
- `go.opentelemetry.io/otel/example/opencensus`
- `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`
- `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`
- `go.opentelemetry.io/otel/exporters/stdout/stdoutmetric`
See our [versioning policy](VERSIONING.md) for more information about these stability guarantees.
##### Added
- Add `WithEndpointURL` option to the `exporters/otlp/otlpmetric/otlpmetricgrpc`, `exporters/otlp/otlpmetric/otlpmetrichttp`, `exporters/otlp/otlptrace/otlptracegrpc` and `exporters/otlp/otlptrace/otlptracehttp` packages. ([#​4808](https://github.com/open-telemetry/opentelemetry-go/issues/4808))
- Experimental exemplar exporting is added to the metric SDK. See [metric documentation](./sdk/metric/EXPERIMENTAL.md#exemplars) for more information about this feature and how to enable it. ([#​4871](https://github.com/open-telemetry/opentelemetry-go/issues/4871))
- `ErrSchemaURLConflict` is added to `go.opentelemetry.io/otel/sdk/resource`. This error is returned when a merge of two `Resource`s with different (non-empty) schema URL is attempted. ([#​4876](https://github.com/open-telemetry/opentelemetry-go/issues/4876))
##### Changed
- The `Merge` and `New` functions in `go.opentelemetry.io/otel/sdk/resource` now returns a partial result if there is a schema URL merge conflict. Instead of returning `nil` when two `Resource`s with different (non-empty) schema URLs are merged the merged `Resource`, along with the new `ErrSchemaURLConflict` error, is returned. It is up to the user to decide if they want to use the returned `Resource` or not. It may have desired attributes overwritten or include stale semantic conventions. ([#​4876](https://github.com/open-telemetry/opentelemetry-go/issues/4876))
##### Fixed
- Fix `ContainerID` resource detection on systemd when cgroup path has a colon. ([#​4449](https://github.com/open-telemetry/opentelemetry-go/issues/4449))
- Fix `go.opentelemetry.io/otel/sdk/metric` to cache instruments to avoid leaking memory when the same instrument is created multiple times. ([#​4820](https://github.com/open-telemetry/opentelemetry-go/issues/4820))
- Fix missing `Mix` and `Max` values for `go.opentelemetry.io/otel/exporters/stdout/stdoutmetric` by introducing `MarshalText` and `MarshalJSON` for the `Extrema` type in `go.opentelemetry.io/sdk/metric/metricdata`. ([#​4827](https://github.com/open-telemetry/opentelemetry-go/issues/4827))
##### New Contributors
- [@​Fricounet](https://github.com/Fricounet) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4449
- [@​StLeoX](https://github.com/StLeoX) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4855
- [@​m-posluszny](https://github.com/m-posluszny) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4827
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.22.0...v1.23.0
### [`v1.22.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.22.0): /v0.45.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.21.0...v1.22.0)
##### Added
- The `go.opentelemetry.io/otel/semconv/v1.22.0` package.
The package contains semantic conventions from the `v1.22.0` version of the OpenTelemetry Semantic Conventions. ([#​4735](https://github.com/open-telemetry/opentelemetry-go/issues/4735))
- The `go.opentelemetry.io/otel/semconv/v1.23.0` package.
The package contains semantic conventions from the `v1.23.0` version of the OpenTelemetry Semantic Conventions. ([#​4746](https://github.com/open-telemetry/opentelemetry-go/issues/4746))
- The `go.opentelemetry.io/otel/semconv/v1.23.1` package.
The package contains semantic conventions from the `v1.23.1` version of the OpenTelemetry Semantic Conventions. ([#​4749](https://github.com/open-telemetry/opentelemetry-go/issues/4749))
- The `go.opentelemetry.io/otel/semconv/v1.24.0` package.
The package contains semantic conventions from the `v1.24.0` version of the OpenTelemetry Semantic Conventions. ([#​4770](https://github.com/open-telemetry/opentelemetry-go/issues/4770))
- Add `WithResourceAsConstantLabels` option to apply resource attributes for every metric emitted by the Prometheus exporter. ([#​4733](https://github.com/open-telemetry/opentelemetry-go/issues/4733))
- Experimental cardinality limiting is added to the metric SDK.
See [metric documentation](./sdk/metric/EXPERIMENTAL.md#cardinality-limit) for more information about this feature and how to enable it. ([#​4457](https://github.com/open-telemetry/opentelemetry-go/issues/4457))
- Add `NewMemberRaw` and `NewKeyValuePropertyRaw` in `go.opentelemetry.io/otel/baggage`. ([#​4804](https://github.com/open-telemetry/opentelemetry-go/issues/4804))
##### Changed
- Upgrade all use of `go.opentelemetry.io/otel/semconv` to use `v1.24.0`. ([#​4754](https://github.com/open-telemetry/opentelemetry-go/issues/4754))
- Update transformations in `go.opentelemetry.io/otel/exporters/zipkin` to follow `v1.24.0` version of the OpenTelemetry specification. ([#​4754](https://github.com/open-telemetry/opentelemetry-go/issues/4754))
- Record synchronous measurements when the passed context is canceled instead of dropping in `go.opentelemetry.io/otel/sdk/metric`.
If you do not want to make a measurement when the context is cancelled, you need to handle it yourself (e.g `if ctx.Err() != nil`). ([#​4671](https://github.com/open-telemetry/opentelemetry-go/issues/4671))
- Improve `go.opentelemetry.io/otel/trace.TraceState`'s performance. ([#​4722](https://github.com/open-telemetry/opentelemetry-go/issues/4722))
- Improve `go.opentelemetry.io/otel/propagation.TraceContext`'s performance. ([#​4721](https://github.com/open-telemetry/opentelemetry-go/issues/4721))
- Improve `go.opentelemetry.io/otel/baggage` performance. ([#​4743](https://github.com/open-telemetry/opentelemetry-go/issues/4743))
- Improve performance of the `(*Set).Filter` method in `go.opentelemetry.io/otel/attribute` when the passed filter does not filter out any attributes from the set. ([#​4774](https://github.com/open-telemetry/opentelemetry-go/issues/4774))
- `Member.String` in `go.opentelemetry.io/otel/baggage` percent-encodes only when necessary. ([#​4775](https://github.com/open-telemetry/opentelemetry-go/issues/4775))
- `Property.Value` in `go.opentelemetry.io/otel/baggage` now returns a raw string instead of a percent-encoded value. ([#​4804](https://github.com/open-telemetry/opentelemetry-go/issues/4804))
##### Fixed
- Fix `Parse` in `go.opentelemetry.io/otel/baggage` to validate member value before percent-decoding. ([#​4755](https://github.com/open-telemetry/opentelemetry-go/issues/4755))
- Fix whitespace encoding of `Member.String` in `go.opentelemetry.io/otel/baggage`. ([#​4756](https://github.com/open-telemetry/opentelemetry-go/issues/4756))
- Fix baggage item key so that it is not canonicalized in `go.opentelemetry.io/otel/bridge/opentracing`. ([#​4776](https://github.com/open-telemetry/opentelemetry-go/issues/4776))
- Fix `go.opentelemetry.io/otel/bridge/opentracing` to properly handle baggage values that requires escaping during propagation. ([#​4804](https://github.com/open-telemetry/opentelemetry-go/issues/4804))
- Fix a bug where using multiple readers resulted in incorrect asynchronous counter values in `go.opentelemetry.io/otel/sdk/metric`. ([#​4742](https://github.com/open-telemetry/opentelemetry-go/issues/4742))
### [`v1.21.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.21.0): /v0.44.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.20.0...v1.21.0)
##### Removed
- Remove the deprecated `go.opentelemetry.io/otel/bridge/opencensus.NewTracer`. ([#​4706](https://github.com/open-telemetry/opentelemetry-go/issues/4706))
- Remove the deprecated `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` module. ([#​4707](https://github.com/open-telemetry/opentelemetry-go/issues/4707))
- Remove the deprecated `go.opentelemetry.io/otel/example/view` module. ([#​4708](https://github.com/open-telemetry/opentelemetry-go/issues/4708))
- Remove the deprecated `go.opentelemetry.io/otel/example/fib` module. ([#​4723](https://github.com/open-telemetry/opentelemetry-go/issues/4723))
##### Fixed
- Do not parse non-protobuf responses in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​4719](https://github.com/open-telemetry/opentelemetry-go/issues/4719))
- Do not parse non-protobuf responses in `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`. ([#​4719](https://github.com/open-telemetry/opentelemetry-go/issues/4719))
### [`v1.20.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.20.0): /v0.43.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.19.0...v1.20.0)
This release brings a breaking change for custom trace API implementations. Some interfaces (`TracerProvider`, `Tracer`, `Span`) now embed the `go.opentelemetry.io/otel/trace/embedded` types. Implementors need to update their implementations based on what they want the default behavior to be. See the "API Implementations" section of the [trace API] package documentation for more about how to accomplish this.
##### Added
- Add `go.opentelemetry.io/otel/bridge/opencensus.InstallTraceBridge`, which installs the OpenCensus trace bridge, and replaces `opencensus.NewTracer`. ([#​4567](https://github.com/open-telemetry/opentelemetry-go/issues/4567))
- Add scope version to trace and metric bridges in `go.opentelemetry.io/otel/bridge/opencensus`. ([#​4584](https://github.com/open-telemetry/opentelemetry-go/issues/4584))
- Add the `go.opentelemetry.io/otel/trace/embedded` package to be embedded in the exported trace API interfaces. ([#​4620](https://github.com/open-telemetry/opentelemetry-go/issues/4620))
- Add the `go.opentelemetry.io/otel/trace/noop` package as a default no-op implementation of the trace API. ([#​4620](https://github.com/open-telemetry/opentelemetry-go/issues/4620))
- Add context propagation in `go.opentelemetry.io/otel/example/dice`. ([#​4644](https://github.com/open-telemetry/opentelemetry-go/issues/4644))
- Add view configuration to `go.opentelemetry.io/otel/example/prometheus`. ([#​4649](https://github.com/open-telemetry/opentelemetry-go/issues/4649))
- Add `go.opentelemetry.io/otel/metric.WithExplicitBucketBoundaries`, which allows defining default explicit bucket boundaries when creating histogram instruments. ([#​4603](https://github.com/open-telemetry/opentelemetry-go/issues/4603))
- Add `Version` function in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`. ([#​4660](https://github.com/open-telemetry/opentelemetry-go/issues/4660))
- Add `Version` function in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​4660](https://github.com/open-telemetry/opentelemetry-go/issues/4660))
- Add Summary, SummaryDataPoint, and QuantileValue to `go.opentelemetry.io/sdk/metric/metricdata`. ([#​4622](https://github.com/open-telemetry/opentelemetry-go/issues/4622))
- `go.opentelemetry.io/otel/bridge/opencensus.NewMetricProducer` now supports exemplars from OpenCensus. ([#​4585](https://github.com/open-telemetry/opentelemetry-go/issues/4585))
- Add support for `WithExplicitBucketBoundaries` in `go.opentelemetry.io/otel/sdk/metric`. ([#​4605](https://github.com/open-telemetry/opentelemetry-go/issues/4605))
- Add support for Summary metrics in `go.opentelemetry.io/otel/bridge/opencensus`. ([#​4668](https://github.com/open-telemetry/opentelemetry-go/issues/4668))
##### Deprecated
- Deprecate `go.opentelemetry.io/otel/bridge/opencensus.NewTracer` in favor of `opencensus.InstallTraceBridge`. ([#​4567](https://github.com/open-telemetry/opentelemetry-go/issues/4567))
- Deprecate `go.opentelemetry.io/otel/example/fib` package is in favor of `go.opentelemetry.io/otel/example/dice`. ([#​4618](https://github.com/open-telemetry/opentelemetry-go/issues/4618))
- Deprecate `go.opentelemetry.io/otel/trace.NewNoopTracerProvider`.
Use the added `NewTracerProvider` function in `go.opentelemetry.io/otel/trace/noop` instead. ([#​4620](https://github.com/open-telemetry/opentelemetry-go/issues/4620))
- Deprecate `go.opentelemetry.io/otel/example/view` package in favor of `go.opentelemetry.io/otel/example/prometheus`. ([#​4649](https://github.com/open-telemetry/opentelemetry-go/issues/4649))
- Deprecate `go.opentelemetry.io/otel/exporters/otlp/otlpmetric`. ([#​4693](https://github.com/open-telemetry/opentelemetry-go/issues/4693))
##### Changed
- `go.opentelemetry.io/otel/bridge/opencensus.NewMetricProducer` returns a `*MetricProducer` struct instead of the metric.Producer interface. ([#​4583](https://github.com/open-telemetry/opentelemetry-go/issues/4583))
- The `TracerProvider` in `go.opentelemetry.io/otel/trace` now embeds the `go.opentelemetry.io/otel/trace/embedded.TracerProvider` type.
This extends the `TracerProvider` interface and is is a breaking change for any existing implementation.
Implementors need to update their implementations based on what they want the default behavior of the interface to be.
See the "API Implementations" section of the `go.opentelemetry.io/otel/trace` package documentation for more information about how to accomplish this. ([#​4620](https://github.com/open-telemetry/opentelemetry-go/issues/4620))
- The `Tracer` in `go.opentelemetry.io/otel/trace` now embeds the `go.opentelemetry.io/otel/trace/embedded.Tracer` type.
This extends the `Tracer` interface and is is a breaking change for any existing implementation.
Implementors need to update their implementations based on what they want the default behavior of the interface to be.
See the "API Implementations" section of the `go.opentelemetry.io/otel/trace` package documentation for more informationabout how to accomplish this. ([#​4620](https://github.com/open-telemetry/opentelemetry-go/issues/4620))
- The `Span` in `go.opentelemetry.io/otel/trace` now embeds the `go.opentelemetry.io/otel/trace/embedded.Span` type.
This extends the `Span` interface and is is a breaking change for any existing implementation.
Implementors need to update their implementations based on what they want the default behavior of the interface to be.
See the "API Implementations" section of the `go.opentelemetry.io/otel/trace` package documentation for more information about how to accomplish this. ([#​4620](https://github.com/open-telemetry/opentelemetry-go/issues/4620))
- `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc` does no longer depend on `go.opentelemetry.io/otel/exporters/otlp/otlpmetric`. ([#​4660](https://github.com/open-telemetry/opentelemetry-go/issues/4660))
- `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp` does no longer depend on `go.opentelemetry.io/otel/exporters/otlp/otlpmetric`. ([#​4660](https://github.com/open-telemetry/opentelemetry-go/issues/4660))
- Retry for `502 Bad Gateway` and `504 Gateway Timeout` HTTP statuses in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​4670](https://github.com/open-telemetry/opentelemetry-go/issues/4670))
- Retry for `502 Bad Gateway` and `504 Gateway Timeout` HTTP statuses in `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`. ([#​4670](https://github.com/open-telemetry/opentelemetry-go/issues/4670))
- Retry for `RESOURCE_EXHAUSTED` only if RetryInfo is returned in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`. ([#​4669](https://github.com/open-telemetry/opentelemetry-go/issues/4669))
- Retry for `RESOURCE_EXHAUSTED` only if RetryInfo is returned in `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`. ([#​4669](https://github.com/open-telemetry/opentelemetry-go/issues/4669))
- Retry temporary HTTP request failures in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​4679](https://github.com/open-telemetry/opentelemetry-go/issues/4679))
- Retry temporary HTTP request failures in `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`. ([#​4679](https://github.com/open-telemetry/opentelemetry-go/issues/4679))
##### Fixed
- Fix improper parsing of characters such us `+`, `/` by `Parse` in `go.opentelemetry.io/otel/baggage` as they were rendered as a whitespace. ([#​4667](https://github.com/open-telemetry/opentelemetry-go/issues/4667))
- Fix improper parsing of characters such us `+`, `/` passed via `OTEL_RESOURCE_ATTRIBUTES` in `go.opentelemetry.io/otel/sdk/resource` as they were rendered as a whitespace. ([#​4699](https://github.com/open-telemetry/opentelemetry-go/issues/4699))
- Fix improper parsing of characters such us `+`, `/` passed via `OTEL_EXPORTER_OTLP_HEADERS` and `OTEL_EXPORTER_OTLP_METRICS_HEADERS` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc` as they were rendered as a whitespace. ([#​4699](https://github.com/open-telemetry/opentelemetry-go/issues/4699))
- Fix improper parsing of characters such us `+`, `/` passed via `OTEL_EXPORTER_OTLP_HEADERS` and `OTEL_EXPORTER_OTLP_METRICS_HEADERS` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp` as they were rendered as a whitespace. ([#​4699](https://github.com/open-telemetry/opentelemetry-go/issues/4699))
- Fix improper parsing of characters such us `+`, `/` passed via `OTEL_EXPORTER_OTLP_HEADERS` and `OTEL_EXPORTER_OTLP_TRACES_HEADERS` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlptracegrpc` as they were rendered as a whitespace. ([#​4699](https://github.com/open-telemetry/opentelemetry-go/issues/4699))
- Fix improper parsing of characters such us `+`, `/` passed via `OTEL_EXPORTER_OTLP_HEADERS` and `OTEL_EXPORTER_OTLP_TRACES_HEADERS` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlptracehttp` as they were rendered as a whitespace. ([#​4699](https://github.com/open-telemetry/opentelemetry-go/issues/4699))
- In `go.opentelemetry.op/otel/exporters/prometheus`, the exporter no longer `Collect`s metrics after `Shutdown` is invoked. ([#​4648](https://github.com/open-telemetry/opentelemetry-go/issues/4648))
- Fix documentation for `WithCompressor` in `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc`. ([#​4695](https://github.com/open-telemetry/opentelemetry-go/issues/4695))
- Fix documentation for `WithCompressor` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`. ([#​4695](https://github.com/open-telemetry/opentelemetry-go/issues/4695))
[trace API]: https://pkg.go.dev/go.opentelemetry.io/otel/trace
### [`v1.19.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.19.0): /v0.42.0/v0.0.7
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.18.0...v1.19.0)
This release contains the first stable release of the OpenTelemetry Go [metric SDK]. Our project stability guarantees now apply to the `go.opentelemetry.io/otel/sdk/metric` package. See our [versioning policy](VERSIONING.md) for more information about these stability guarantees.
##### Added
- Add the "Roll the dice" getting started application example in `go.opentelemetry.io/otel/example/dice`. ([#​4539](https://github.com/open-telemetry/opentelemetry-go/issues/4539))
- The `WithWriter` and `WithPrettyPrint` options to `go.opentelemetry.io/otel/exporters/stdout/stdoutmetric` to set a custom `io.Writer`, and allow displaying the output in human-readable JSON. ([#​4507](https://github.com/open-telemetry/opentelemetry-go/issues/4507))
##### Changed
- Allow '/' characters in metric instrument names. ([#​4501](https://github.com/open-telemetry/opentelemetry-go/issues/4501))
- The exporter in `go.opentelemetry.io/otel/exporters/stdout/stdoutmetric` does not prettify its output by default anymore. ([#​4507](https://github.com/open-telemetry/opentelemetry-go/issues/4507))
- Upgrade `gopkg.io/yaml` from `v2` to `v3` in `go.opentelemetry.io/otel/schema`. ([#​4535](https://github.com/open-telemetry/opentelemetry-go/issues/4535))
##### Fixed
- In `go.opentelemetry.op/otel/exporters/prometheus`, don't try to create the Prometheus metric on every `Collect` if we know the scope is invalid. ([#​4499](https://github.com/open-telemetry/opentelemetry-go/issues/4499))
##### Removed
- Remove `"go.opentelemetry.io/otel/bridge/opencensus".NewMetricExporter`, which is replaced by `NewMetricProducer`. ([#​4566](https://github.com/open-telemetry/opentelemetry-go/issues/4566))
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.18.0...v1.19.0
[metric SDK]: https://pkg.go.dev/go.opentelemetry.io/otel/sdk/metric
### [`v1.18.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.18.0): /v0.41.0/v0.0.6
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.17.0...v1.18.0)
This release drops the compatibility guarantee of [Go 1.19].
##### Added
- Add `WithProducer` option in `go.opentelemetry.op/otel/exporters/prometheus` to restore the ability to register producers on the prometheus exporter's manual reader. ([#​4473](https://github.com/open-telemetry/opentelemetry-go/issues/4473))
- Add `IgnoreValue` option in `go.opentelemetry.io/otel/sdk/metric/metricdata/metricdatatest` to allow ignoring values when comparing metrics. ([#​4447](https://github.com/open-telemetry/opentelemetry-go/issues/4447))
##### Deprecated
- The `NewMetricExporter` in `go.opentelemetry.io/otel/bridge/opencensus` was deprecated in `v0.35.0` ([#​3541](https://github.com/open-telemetry/opentelemetry-go/issues/3541)).
The deprecation notice format for the function has been corrected to trigger Go documentation and build tooling. ([#​4470](https://github.com/open-telemetry/opentelemetry-go/issues/4470))
##### Removed
- Removed the deprecated `go.opentelemetry.io/otel/exporters/jaeger` package. ([#​4467](https://github.com/open-telemetry/opentelemetry-go/issues/4467))
- Removed the deprecated `go.opentelemetry.io/otel/example/jaeger` package. ([#​4467](https://github.com/open-telemetry/opentelemetry-go/issues/4467))
- Removed the deprecated `go.opentelemetry.io/otel/sdk/metric/aggregation` package. ([#​4468](https://github.com/open-telemetry/opentelemetry-go/issues/4468))
- Removed the deprecated internal packages in `go.opentelemetry.io/otel/exporters/otlp` and its sub-packages. ([#​4469](https://github.com/open-telemetry/opentelemetry-go/issues/4469))
- Dropped guaranteed support for versions of Go less than 1.20. ([#​4481](https://github.com/open-telemetry/opentelemetry-go/issues/4481))
##### New Contributors
- [@​pkbhowmick](https://github.com/pkbhowmick) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4462
- [@​RangelReale](https://github.com/RangelReale) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4447
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.17.0...v1.18.0
[Go 1.19]: https://go.dev/doc/go1.19
### [`v1.17.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.17.0): /v0.40.0/v0.5.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.16.0...v1.17.0)
##### Added
- Export the `ManualReader` struct in `go.opentelemetry.io/otel/sdk/metric`. ([#​4244](https://github.com/open-telemetry/opentelemetry-go/issues/4244))
- Export the `PeriodicReader` struct in `go.opentelemetry.io/otel/sdk/metric`. ([#​4244](https://github.com/open-telemetry/opentelemetry-go/issues/4244))
- Add support for exponential histogram aggregations.
A histogram can be configured as an exponential histogram using a view with `"go.opentelemetry.io/otel/sdk/metric".ExponentialHistogram` as the aggregation. ([#​4245](https://github.com/open-telemetry/opentelemetry-go/issues/4245))
- Export the `Exporter` struct in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc`. ([#​4272](https://github.com/open-telemetry/opentelemetry-go/issues/4272))
- Export the `Exporter` struct in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​4272](https://github.com/open-telemetry/opentelemetry-go/issues/4272))
- The exporters in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` now support the `OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE` environment variable. ([#​4287](https://github.com/open-telemetry/opentelemetry-go/issues/4287))
- Add `WithoutCounterSuffixes` option in `go.opentelemetry.io/otel/exporters/prometheus` to disable addition of `_total` suffixes. ([#​4306](https://github.com/open-telemetry/opentelemetry-go/issues/4306))
- Add info and debug logging to the metric SDK in `go.opentelemetry.io/otel/sdk/metric`. ([#​4315](https://github.com/open-telemetry/opentelemetry-go/issues/4315))
- The `go.opentelemetry.io/otel/semconv/v1.21.0` package.
The package contains semantic conventions from the `v1.21.0` version of the OpenTelemetry Semantic Conventions. ([#​4362](https://github.com/open-telemetry/opentelemetry-go/issues/4362))
- Accept 201 to 299 HTTP status as success in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp` and `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`. ([#​4365](https://github.com/open-telemetry/opentelemetry-go/issues/4365))
- Document the `Temporality` and `Aggregation` methods of the `"go.opentelemetry.io/otel/sdk/metric".Exporter"` need to be concurrent safe. ([#​4381](https://github.com/open-telemetry/opentelemetry-go/issues/4381))
- Expand the set of units supported by the Prometheus exporter, and don't add unit suffixes if they are already present in `go.opentelemetry.op/otel/exporters/prometheus` ([#​4374](https://github.com/open-telemetry/opentelemetry-go/issues/4374))
- Move the `Aggregation` interface and its implementations from `go.opentelemetry.io/otel/sdk/metric/aggregation` to `go.opentelemetry.io/otel/sdk/metric`. ([#​4435](https://github.com/open-telemetry/opentelemetry-go/issues/4435))
- The exporters in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` now support the `OTEL_EXPORTER_OTLP_METRICS_DEFAULT_HISTOGRAM_AGGREGATION` environment variable. ([#​4437](https://github.com/open-telemetry/opentelemetry-go/issues/4437))
- Add the `NewAllowKeysFilter` and `NewDenyKeysFilter` functions to `go.opentelemetry.io/otel/attribute` to allow convenient creation of allow-keys and deny-keys filters. ([#​4444](https://github.com/open-telemetry/opentelemetry-go/issues/4444))
##### Changed
- Starting from `v1.21.0` of semantic conventions, `go.opentelemetry.io/otel/semconv/{version}/httpconv` and `go.opentelemetry.io/otel/semconv/{version}/netconv` packages will no longer be published. ([#​4145](https://github.com/open-telemetry/opentelemetry-go/issues/4145))
- Log duplicate instrument conflict at a warning level instead of info in `go.opentelemetry.io/otel/sdk/metric`. ([#​4202](https://github.com/open-telemetry/opentelemetry-go/issues/4202))
- Return an error on the creation of new instruments in `go.opentelemetry.io/otel/sdk/metric` if their name doesn't pass regexp validation. ([#​4210](https://github.com/open-telemetry/opentelemetry-go/issues/4210))
- `NewManualReader` in `go.opentelemetry.io/otel/sdk/metric` returns `*ManualReader` instead of `Reader`. ([#​4244](https://github.com/open-telemetry/opentelemetry-go/issues/4244))
- `NewPeriodicReader` in `go.opentelemetry.io/otel/sdk/metric` returns `*PeriodicReader` instead of `Reader`. ([#​4244](https://github.com/open-telemetry/opentelemetry-go/issues/4244))
- Count the Collect time in the `PeriodicReader` timeout in `go.opentelemetry.io/otel/sdk/metric`. ([#​4221](https://github.com/open-telemetry/opentelemetry-go/issues/4221))
- The function `New` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc` returns `*Exporter` instead of `"go.opentelemetry.io/otel/sdk/metric".Exporter`. ([#​4272](https://github.com/open-telemetry/opentelemetry-go/issues/4272))
- The function `New` in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp` returns `*Exporter` instead of `"go.opentelemetry.io/otel/sdk/metric".Exporter`. ([#​4272](https://github.com/open-telemetry/opentelemetry-go/issues/4272))
- If an attribute set is omitted from an async callback, the previous value will no longer be exported in `go.opentelemetry.io/otel/sdk/metric`. ([#​4290](https://github.com/open-telemetry/opentelemetry-go/issues/4290))
- If an attribute set is observed multiple times in an async callback in `go.opentelemetry.io/otel/sdk/metric`, the values will be summed instead of the last observation winning. ([#​4289](https://github.com/open-telemetry/opentelemetry-go/issues/4289))
- Allow the explicit bucket histogram aggregation to be used for the up-down counter, observable counter, observable up-down counter, and observable gauge in the `go.opentelemetry.io/otel/sdk/metric` package. ([#​4332](https://github.com/open-telemetry/opentelemetry-go/issues/4332))
- Restrict `Meter`s in `go.opentelemetry.io/otel/sdk/metric` to only register and collect instruments it created. ([#​4333](https://github.com/open-telemetry/opentelemetry-go/issues/4333))
- `PeriodicReader.Shutdown` and `PeriodicReader.ForceFlush` in `go.opentelemetry.io/otel/sdk/metric` now apply the periodic reader's timeout to the operation if the user provided context does not contain a deadline. ([#​4356](https://github.com/open-telemetry/opentelemetry-go/issues/4356), [#​4377](https://github.com/open-telemetry/opentelemetry-go/issues/4377))
- Upgrade all use of `go.opentelemetry.io/otel/semconv` to use `v1.21.0`. ([#​4408](https://github.com/open-telemetry/opentelemetry-go/issues/4408))
- Increase instrument name maximum length from 63 to 255 characters in `go.opentelemetry.io/otel/sdk/metric`. ([#​4434](https://github.com/open-telemetry/opentelemetry-go/issues/4434))
- Add `go.opentelemetry.op/otel/sdk/metric.WithProducer` as an `Option` for `"go.opentelemetry.io/otel/sdk/metric".NewManualReader` and `"go.opentelemetry.io/otel/sdk/metric".NewPeriodicReader`. ([#​4346](https://github.com/open-telemetry/opentelemetry-go/issues/4346))
##### Removed
- Remove `Reader.RegisterProducer` in `go.opentelemetry.io/otel/metric`.
Use the added `WithProducer` option instead. ([#​4346](https://github.com/open-telemetry/opentelemetry-go/issues/4346))
- Remove `Reader.ForceFlush` in `go.opentelemetry.io/otel/metric`.
Notice that `PeriodicReader.ForceFlush` is still available. ([#​4375](https://github.com/open-telemetry/opentelemetry-go/issues/4375))
##### Fixed
- Correctly format log messages from the `go.opentelemetry.io/otel/exporters/zipkin` exporter. ([#​4143](https://github.com/open-telemetry/opentelemetry-go/issues/4143))
- Log an error for calls to `NewView` in `go.opentelemetry.io/otel/sdk/metric` that have empty criteria. ([#​4307](https://github.com/open-telemetry/opentelemetry-go/issues/4307))
- Fix `"go.opentelemetry.io/otel/sdk/resource".WithHostID()` to not set an empty `host.id`. ([#​4317](https://github.com/open-telemetry/opentelemetry-go/issues/4317))
- Use the instrument identifying fields to cache aggregators and determine duplicate instrument registrations in `go.opentelemetry.io/otel/sdk/metric`. ([#​4337](https://github.com/open-telemetry/opentelemetry-go/issues/4337))
- Detect duplicate instruments for case-insensitive names in `go.opentelemetry.io/otel/sdk/metric`. ([#​4338](https://github.com/open-telemetry/opentelemetry-go/issues/4338))
- The `ManualReader` will not panic if `AggregationSelector` returns `nil` in `go.opentelemetry.io/otel/sdk/metric`. ([#​4350](https://github.com/open-telemetry/opentelemetry-go/issues/4350))
- If a `Reader`'s `AggregationSelector` returns `nil` or `DefaultAggregation` the pipeline will use the default aggregation. ([#​4350](https://github.com/open-telemetry/opentelemetry-go/issues/4350))
- Log a suggested view that fixes instrument conflicts in `go.opentelemetry.io/otel/sdk/metric`. ([#​4349](https://github.com/open-telemetry/opentelemetry-go/issues/4349))
- Fix possible panic, deadlock and race condition in batch span processor in `go.opentelemetry.io/otel/sdk/trace`. ([#​4353](https://github.com/open-telemetry/opentelemetry-go/issues/4353))
- Improve context cancellation handling in batch span processor's `ForceFlush` in `go.opentelemetry.io/otel/sdk/trace`. ([#​4369](https://github.com/open-telemetry/opentelemetry-go/issues/4369))
- Decouple `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal` from `go.opentelemetry.io/otel/exporters/otlp/internal` using gotmpl. ([#​4397](https://github.com/open-telemetry/opentelemetry-go/issues/4397), [#​3846](https://github.com/open-telemetry/opentelemetry-go/issues/3846))
- Decouple `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc/internal` from `go.opentelemetry.io/otel/exporters/otlp/internal` and `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/internal` using gotmpl. ([#​4404](https://github.com/open-telemetry/opentelemetry-go/issues/4404), [#​3846](https://github.com/open-telemetry/opentelemetry-go/issues/3846))
- Decouple `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp/internal` from `go.opentelemetry.io/otel/exporters/otlp/internal` and `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/internal` using gotmpl. ([#​4407](https://github.com/open-telemetry/opentelemetry-go/issues/4407), [#​3846](https://github.com/open-telemetry/opentelemetry-go/issues/3846))
- Decouple `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc/internal` from `go.opentelemetry.io/otel/exporters/otlp/internal` and `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal` using gotmpl. ([#​4400](https://github.com/open-telemetry/opentelemetry-go/issues/4400), [#​3846](https://github.com/open-telemetry/opentelemetry-go/issues/3846))
- Decouple `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp/internal` from `go.opentelemetry.io/otel/exporters/otlp/internal` and `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal` using gotmpl. ([#​4401](https://github.com/open-telemetry/opentelemetry-go/issues/4401), [#​3846](https://github.com/open-telemetry/opentelemetry-go/issues/3846))
- Do not block the metric SDK when OTLP metric exports are blocked in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc` and `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp`. ([#​3925](https://github.com/open-telemetry/opentelemetry-go/issues/3925), [#​4395](https://github.com/open-telemetry/opentelemetry-go/issues/4395))
- Do not append `_total` if the counter already has that suffix for the Prometheus exproter in `go.opentelemetry.io/otel/exporter/prometheus`. ([#​4373](https://github.com/open-telemetry/opentelemetry-go/issues/4373))
- Fix resource detection data race in `go.opentelemetry.io/otel/sdk/resource`. ([#​4409](https://github.com/open-telemetry/opentelemetry-go/issues/4409))
- Use the first-seen instrument name during instrument name conflicts in `go.opentelemetry.io/otel/sdk/metric`. ([#​4428](https://github.com/open-telemetry/opentelemetry-go/issues/4428))
##### Deprecated
- The `go.opentelemetry.io/otel/exporters/jaeger` package is deprecated.
OpenTelemetry dropped support for Jaeger exporter in July 2023.
Use `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp`
or `go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc` instead. ([#​4423](https://github.com/open-telemetry/opentelemetry-go/issues/4423))
- The `go.opentelemetry.io/otel/example/jaeger` package is deprecated. ([#​4423](https://github.com/open-telemetry/opentelemetry-go/issues/4423))
- The `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/internal` package is deprecated. ([#​4420](https://github.com/open-telemetry/opentelemetry-go/issues/4420))
- The `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/internal/oconf` package is deprecated. ([#​4420](https://github.com/open-telemetry/opentelemetry-go/issues/4420))
- The `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/internal/otest` package is deprecated. ([#​4420](https://github.com/open-telemetry/opentelemetry-go/issues/4420))
- The `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/internal/transform` package is deprecated. ([#​4420](https://github.com/open-telemetry/opentelemetry-go/issues/4420))
- The `go.opentelemetry.io/otel/exporters/otlp/internal` package is deprecated. ([#​4421](https://github.com/open-telemetry/opentelemetry-go/issues/4421))
- The `go.opentelemetry.io/otel/exporters/otlp/internal/envconfig` package is deprecated. ([#​4421](https://github.com/open-telemetry/opentelemetry-go/issues/4421))
- The `go.opentelemetry.io/otel/exporters/otlp/internal/retry` package is deprecated. ([#​4421](https://github.com/open-telemetry/opentelemetry-go/issues/4421))
- The `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal` package is deprecated. ([#​4425](https://github.com/open-telemetry/opentelemetry-go/issues/4425))
- The `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/envconfig` package is deprecated. ([#​4425](https://github.com/open-telemetry/opentelemetry-go/issues/4425))
- The `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/otlpconfig` package is deprecated. ([#​4425](https://github.com/open-telemetry/opentelemetry-go/issues/4425))
- The `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/otlptracetest` package is deprecated. ([#​4425](https://github.com/open-telemetry/opentelemetry-go/issues/4425))
- The `go.opentelemetry.io/otel/exporters/otlp/otlptrace/internal/retry` package is deprecated. ([#​4425](https://github.com/open-telemetry/opentelemetry-go/issues/4425))
- The `go.opentelemetry.io/otel/sdk/metric/aggregation` package is deprecated.
Use the aggregation types added to `go.opentelemetry.io/otel/sdk/metric` instead. ([#​4435](https://github.com/open-telemetry/opentelemetry-go/issues/4435))
##### New Contributors
- [@​serdarkalayci](https://github.com/serdarkalayci) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4129
- [@​Jorropo](https://github.com/Jorropo) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4226
- [@​hexdigest](https://github.com/hexdigest) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/3899
- [@​gkze](https://github.com/gkze) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4402
- [@​jaredjenkins](https://github.com/jaredjenkins) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4409
- [@​utezduyar](https://github.com/utezduyar) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4456
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.16.0...v1.17.0
### [`v1.16.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.16.0): /v0.39.0 -- Stable Metric API
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.15.1...v1.16.0)
This release contains the first stable release of the OpenTelemetry Go [metric API]. Our project stability guarantees now apply to the `go.opentelemetry.io/otel/metric` package. See our [versioning policy](VERSIONING.md) for more information about these stability guarantees.
#### What's Changed
##### Added
- The `go.opentelemetry.io/otel/semconv/v1.19.0` package. The package contains semantic conventions from the `v1.19.0` version of the OpenTelemetry specification. ([#​3848](https://github.com/open-telemetry/opentelemetry-go/issues/3848))
- The `go.opentelemetry.io/otel/semconv/v1.20.0` package. The package contains semantic conventions from the `v1.20.0` version of the OpenTelemetry specification. ([#​4078](https://github.com/open-telemetry/opentelemetry-go/issues/4078))
##### Changed
- Use `strings.Cut()` instead of `string.SplitN()` for better readability and memory use. ([#​4049](https://github.com/open-telemetry/opentelemetry-go/issues/4049))
##### Removed
- The deprecated `go.opentelemetry.io/otel/metric/instrument` package is removed. Use `go.opentelemetry.io/otel/metric` instead. ([#​4055](https://github.com/open-telemetry/opentelemetry-go/issues/4055))
##### Fixed
- Fix build for BSD based systems in `go.opentelemetry.io/otel/sdk/resource`. ([#​4077](https://github.com/open-telemetry/opentelemetry-go/issues/4077))
#### New Contributors
- [@​tsloughter](https://github.com/tsloughter) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/3848
- [@​Tijmen34](https://github.com/Tijmen34) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4074
- [@​ChillOrb](https://github.com/ChillOrb) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/3677
- [@​ChenX1993](https://github.com/ChenX1993) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4043
- [@​andrew-womeldorf](https://github.com/andrew-womeldorf) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4086
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.15.1...v1.16.0
[metric API]: https://pkg.go.dev/go.opentelemetry.io/otel/metric
### [`v1.15.1`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.15.1): /v0.38.1
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.15.0...v1.15.1)
##### What's Changed
##### Fixed
- Remove unused imports from `sdk/resource/host_id_bsd.go` which caused build failures. ([#​4040](https://github.com/open-telemetry/opentelemetry-go/issues/4040), [#​4041](https://github.com/open-telemetry/opentelemetry-go/issues/4041))
##### New Contributors
- [@​Achooo](https://github.com/Achooo) made their first contribution in https://github.com/open-telemetry/opentelemetry-go/pull/4041
**Full Changelog**: https://github.com/open-telemetry/opentelemetry-go/compare/v1.15.0...v1.15.1
### [`v1.15.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.15.0): /v0.38.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.14.0...v1.15.0)
##### Added
- The `go.opentelemetry.io/otel/metric/embedded` package. ([#​3916](https://github.com/open-telemetry/opentelemetry-go/issues/3916))
- The `Version` function to `go.opentelemetry.io/otel/sdk` to return the SDK version. ([#​3949](https://github.com/open-telemetry/opentelemetry-go/issues/3949))
- Add a `WithNamespace` option to `go.opentelemetry.io/otel/exporters/prometheus` to allow users to prefix metrics with a namespace. ([#​3970](https://github.com/open-telemetry/opentelemetry-go/issues/3970))
- The following configuration types were added to `go.opentelemetry.io/otel/metric/instrument` to be used in the configuration of measurement methods. ([#​3971](https://github.com/open-telemetry/opentelemetry-go/issues/3971))
- The `AddConfig` used to hold configuration for addition measurements
- `NewAddConfig` used to create a new `AddConfig`
- `AddOption` used to configure an `AddConfig`
- The `RecordConfig` used to hold configuration for recorded measurements
- `NewRecordConfig` used to create a new `RecordConfig`
- `RecordOption` used to configure a `RecordConfig`
- The `ObserveConfig` used to hold configuration for observed measurements
- `NewObserveConfig` used to create a new `ObserveConfig`
- `ObserveOption` used to configure an `ObserveConfig`
- `WithAttributeSet` and `WithAttributes` are added to `go.opentelemetry.io/otel/metric/instrument`. They return an option used during a measurement that defines the attribute Set associated with the measurement. ([#​3971](https://github.com/open-telemetry/opentelemetry-go/issues/3971))
- The `Version` function to `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` to return the OTLP metrics client version. ([#​3956](https://github.com/open-telemetry/opentelemetry-go/issues/3956))
- The `Version` function to `go.opentelemetry.io/otel/exporters/otlp/otlptrace` to return the OTLP trace client version. ([#​3956](https://github.com/open-telemetry/opentelemetry-go/issues/3956))
##### Changed
- The `Extrema` in `go.opentelemetry.io/otel/sdk/metric/metricdata` is redefined with a generic argument of `[N int64 | float64]`. ([#​3870](https://github.com/open-telemetry/opentelemetry-go/issues/3870))
- Update all exported interfaces from `go.opentelemetry.io/otel/metric` to embed their corresponding interface from `go.opentelemetry.io/otel/metric/embedded`. This adds an implementation requirement to set the interface default behavior for unimplemented methods. ([#​3916](https://github.com/open-telemetry/opentelemetry-go/issues/3916))
- Move No-Op implementation from `go.opentelemetry.io/otel/metric` into its own package `go.opentelemetry.io/otel/metric/noop`. ([#​3941](https://github.com/open-telemetry/opentelemetry-go/issues/3941))
- `metric.NewNoopMeterProvider` is replaced with `noop.NewMeterProvider`
- Add all the methods from `"go.opentelemetry.io/otel/trace".SpanContext` to `bridgeSpanContext` by embedding `otel.SpanContext` in `bridgeSpanContext`. ([#​3966](https://github.com/open-telemetry/opentelemetry-go/issues/3966))
- Wrap `UploadMetrics` error in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric/` to improve error message when encountering generic grpc errors. ([#​3974](https://github.com/open-telemetry/opentelemetry-go/issues/3974))
- The measurement methods for all instruments in `go.opentelemetry.io/otel/metric/instrument` accept an option instead of the variadic `"go.opentelemetry.io/otel/attribute".KeyValue`. ([#​3971](https://github.com/open-telemetry/opentelemetry-go/issues/3971))
- The `Int64Counter.Add` method now accepts `...AddOption`
- The `Float64Counter.Add` method now accepts `...AddOption`
- The `Int64UpDownCounter.Add` method now accepts `...AddOption`
- The `Float64UpDownCounter.Add` method now accepts `...AddOption`
- The `Int64Histogram.Record` method now accepts `...RecordOption`
- The `Float64Histogram.Record` method now accepts `...RecordOption`
- The `Int64Observer.Observe` method now accepts `...ObserveOption`
- The `Float64Observer.Observe` method now accepts `...ObserveOption`
- The `Observer` methods in `go.opentelemetry.io/otel/metric` accept an option instead of the variadic `"go.opentelemetry.io/otel/attribute".KeyValue`. ([#​3971](https://github.com/open-telemetry/opentelemetry-go/issues/3971))
- The `Observer.ObserveInt64` method now accepts `...ObserveOption`
- The `Observer.ObserveFloat64` method now accepts `...ObserveOption`
- Move global metric back to `go.opentelemetry.io/otel/metric/global` from `go.opentelemetry.io/otel`. ([#​3986](https://github.com/open-telemetry/opentelemetry-go/issues/3986))
##### Fixed
- `TracerProvider` allows calling `Tracer()` while it's shutting down. It used to deadlock. ([#​3924](https://github.com/open-telemetry/opentelemetry-go/issues/3924))
- Use the SDK version for the Telemetry SDK resource detector in `go.opentelemetry.io/otel/sdk/resource`. ([#​3949](https://github.com/open-telemetry/opentelemetry-go/issues/3949))
- Fix a data race in `SpanProcessor` returned by `NewSimpleSpanProcessor` in `go.opentelemetry.io/otel/sdk/trace`. ([#​3951](https://github.com/open-telemetry/opentelemetry-go/issues/3951))
- Automatically figure out the default aggregation with `aggregation.Default`. ([#​3967](https://github.com/open-telemetry/opentelemetry-go/issues/3967))
##### Deprecated
- The `go.opentelemetry.io/otel/metric/instrument` package is deprecated. Use the equivalent types added to `go.opentelemetry.io/otel/metric` instead. ([#​4018](https://github.com/open-telemetry/opentelemetry-go/issues/4018))
### [`v1.14.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.14.0): /v0.37.0/v0.0.4
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.13.0...v1.14.0)
Part of https://github.com/open-telemetry/opentelemetry-go/issues/3809
This release is the last to support [Go 1.18].
The next release will require at least [Go 1.19].
##### Added
- The `event` type semantic conventions are added to `go.opentelemetry.io/otel/semconv/v1.17.0`. ([#​3697](https://github.com/open-telemetry/opentelemetry-go/issues/3697))
- Support [Go 1.20]. ([#​3693](https://github.com/open-telemetry/opentelemetry-go/issues/3693))
- The `go.opentelemetry.io/otel/semconv/v1.18.0` package.
The package contains semantic conventions from the `v1.18.0` version of the OpenTelemetry specification. ([#​3719](https://github.com/open-telemetry/opentelemetry-go/issues/3719))
- The following `const` renames from `go.opentelemetry.io/otel/semconv/v1.17.0` are included:
- `OtelScopeNameKey` -> `OTelScopeNameKey`
- `OtelScopeVersionKey` -> `OTelScopeVersionKey`
- `OtelLibraryNameKey` -> `OTelLibraryNameKey`
- `OtelLibraryVersionKey` -> `OTelLibraryVersionKey`
- `OtelStatusCodeKey` -> `OTelStatusCodeKey`
- `OtelStatusDescriptionKey` -> `OTelStatusDescriptionKey`
- `OtelStatusCodeOk` -> `OTelStatusCodeOk`
- `OtelStatusCodeError` -> `OTelStatusCodeError`
- The following `func` renames from `go.opentelemetry.io/otel/semconv/v1.17.0` are included:
- `OtelScopeName` -> `OTelScopeName`
- `OtelScopeVersion` -> `OTelScopeVersion`
- `OtelLibraryName` -> `OTelLibraryName`
- `OtelLibraryVersion` -> `OTelLibraryVersion`
- `OtelStatusDescription` -> `OTelStatusDescription`
- A `IsSampled` method is added to the `SpanContext` implementation in `go.opentelemetry.io/otel/bridge/opentracing` to expose the span sampled state.
See the [README](./bridge/opentracing/README.md) for more information. ([#​3570](https://github.com/open-telemetry/opentelemetry-go/issues/3570))
- The `WithInstrumentationAttributes` option to `go.opentelemetry.io/otel/metric`. ([#​3738](https://github.com/open-telemetry/opentelemetry-go/issues/3738))
- The `WithInstrumentationAttributes` option to `go.opentelemetry.io/otel/trace`. ([#​3739](https://github.com/open-telemetry/opentelemetry-go/issues/3739))
- The following environment variables are supported by the periodic `Reader` in `go.opentelemetry.io/otel/sdk/metric`. ([#​3763](https://github.com/open-telemetry/opentelemetry-go/issues/3763))
- `OTEL_METRIC_EXPORT_INTERVAL` sets the time between collections and exports.
- `OTEL_METRIC_EXPORT_TIMEOUT` sets the timeout an export is attempted.
##### Changed
- Fall-back to `TextMapCarrier` when it's not `HttpHeader`s in `go.opentelemetry.io/otel/bridge/opentracing`. ([#​3679](https://github.com/open-telemetry/opentelemetry-go/issues/3679))
- The `Collect` method of the `"go.opentelemetry.io/otel/sdk/metric".Reader` interface is updated to accept the `metricdata.ResourceMetrics` value the collection will be made into.
This change is made to enable memory reuse by SDK users. ([#​3732](https://github.com/open-telemetry/opentelemetry-go/issues/3732))
- The `WithUnit` option in `go.opentelemetry.io/otel/sdk/metric/instrument` is updated to accept a `string` for the unit value. ([#​3776](https://github.com/open-telemetry/opentelemetry-go/issues/3776))
##### Fixed
- Ensure `go.opentelemetry.io/otel` does not use generics. ([#​3723](https://github.com/open-telemetry/opentelemetry-go/issues/3723), [#​3725](https://github.com/open-telemetry/opentelemetry-go/issues/3725))
- Multi-reader `MeterProvider`s now export metrics for all readers, instead of just the first reader. ([#​3720](https://github.com/open-telemetry/opentelemetry-go/issues/3720), [#​3724](https://github.com/open-telemetry/opentelemetry-go/issues/3724))
- Remove use of deprecated `"math/rand".Seed` in `go.opentelemetry.io/otel/example/prometheus`. ([#​3733](https://github.com/open-telemetry/opentelemetry-go/issues/3733))
- Do not silently drop unknown schema data with `Parse` in `go.opentelemetry.io/otel/schema/v1.1`. ([#​3743](https://github.com/open-telemetry/opentelemetry-go/issues/3743))
- Data race issue in OTLP exporter retry mechanism. ([#​3755](https://github.com/open-telemetry/opentelemetry-go/issues/3755), [#​3756](https://github.com/open-telemetry/opentelemetry-go/issues/3756))
- Wrapping empty errors when exporting in `go.opentelemetry.io/otel/sdk/metric`. ([#​3698](https://github.com/open-telemetry/opentelemetry-go/issues/3698), [#​3772](https://github.com/open-telemetry/opentelemetry-go/issues/3772))
- Incorrect "all" and "resource" definition for schema files in `go.opentelemetry.io/otel/schema/v1.1`. ([#​3777](https://github.com/open-telemetry/opentelemetry-go/issues/3777))
##### Deprecated
- The `go.opentelemetry.io/otel/metric/unit` package is deprecated.
Use the equivalent unit string instead. ([#​3776](https://github.com/open-telemetry/opentelemetry-go/issues/3776))
- Use `"1"` instead of `unit.Dimensionless`
- Use `"By"` instead of `unit.Bytes`
- Use `"ms"` instead of `unit.Milliseconds`
[Go 1.20]: https://go.dev/doc/go1.20
[Go 1.19]: https://go.dev/doc/go1.19
[Go 1.18]: https://go.dev/doc/go1.18
### [`v1.13.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.13.0): /v0.36.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.12.0...v1.13.0)
#### 1.13.0/0.36.0 2023-02-07
##### Added
- Attribute `KeyValue` creations functions to `go.opentelemetry.io/otel/semconv/v1.17.0` for all non-enum semantic conventions.
These functions ensure semantic convention type correctness. ([#​3675](https://github.com/open-telemetry/opentelemetry-go/issues/3675))
##### Fixed
- Removed the `http.target` attribute from being added by `ServerRequest` in the following packages. ([#​3687](https://github.com/open-telemetry/opentelemetry-go/issues/3687))
- `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`
- `go.opentelemetry.io/otel/semconv/v1.14.0/httpconv`
- `go.opentelemetry.io/otel/semconv/v1.15.0/httpconv`
- `go.opentelemetry.io/otel/semconv/v1.16.0/httpconv`
- `go.opentelemetry.io/otel/semconv/v1.17.0/httpconv`
##### Removed
- The deprecated `go.opentelemetry.io/otel/metric/instrument/asyncfloat64` package is removed. ([#​3631](https://github.com/open-telemetry/opentelemetry-go/issues/3631))
- The deprecated `go.opentelemetry.io/otel/metric/instrument/asyncint64` package is removed. ([#​3631](https://github.com/open-telemetry/opentelemetry-go/issues/3631))
- The deprecated `go.opentelemetry.io/otel/metric/instrument/syncfloat64` package is removed. ([#​3631](https://github.com/open-telemetry/opentelemetry-go/issues/3631))
- The deprecated `go.opentelemetry.io/otel/metric/instrument/syncint64` package is removed. ([#​3631](https://github.com/open-telemetry/opentelemetry-go/issues/3631))
### [`v1.12.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.12.0): /v0.35.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.11.2...v1.12.0)
##### Added
- The `WithInt64Callback` option to `go.opentelemetry.io/otel/metric/instrument`. This options is used to configure `int64` Observer callbacks during their creation. ([#​3507](https://github.com/open-telemetry/opentelemetry-go/issues/3507))
- The `WithFloat64Callback` option to `go.opentelemetry.io/otel/metric/instrument`. This options is used to configure `float64` Observer callbacks during their creation. ([#​3507](https://github.com/open-telemetry/opentelemetry-go/issues/3507))
- The `Producer` interface and `Reader.RegisterProducer(Producer)` to `go.opentelemetry.io/otel/sdk/metric`. These additions are used to enable external metric Producers. ([#​3524](https://github.com/open-telemetry/opentelemetry-go/issues/3524))
- The `Callback` function type to `go.opentelemetry.io/otel/metric`. This new named function type is registered with a `Meter`. ([#​3564](https://github.com/open-telemetry/opentelemetry-go/issues/3564))
- The `go.opentelemetry.io/otel/semconv/v1.13.0` package. The package contains semantic conventions from the `v1.13.0` version of the OpenTelemetry specification. ([#​3499](https://github.com/open-telemetry/opentelemetry-go/issues/3499))
- The `EndUserAttributesFromHTTPRequest` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is merged into `ClientRequest` and `ServerRequest` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `HTTPAttributesFromHTTPStatusCode` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is merged into `ClientResponse` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `HTTPClientAttributesFromHTTPRequest` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is replaced by `ClientRequest` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `HTTPServerAttributesFromHTTPRequest` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is replaced by `ServerRequest` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `HTTPServerMetricAttributesFromHTTPRequest` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is replaced by `ServerRequest` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `NetAttributesFromHTTPRequest` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is split into `Transport` in `go.opentelemetry.io/otel/semconv/v1.13.0/netconv` and `ClientRequest` or `ServerRequest` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `SpanStatusFromHTTPStatusCode` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is replaced by `ClientStatus` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `SpanStatusFromHTTPStatusCodeAndSpanKind` function in `go.opentelemetry.io/otel/semconv/v1.12.0` is split into `ClientStatus` and `ServerStatus` in `go.opentelemetry.io/otel/semconv/v1.13.0/httpconv`.
- The `Client` function is included in `go.opentelemetry.io/otel/semconv/v1.13.0/netconv` to generate attributes for a `net.Conn`.
- The `Server` function is included in `go.opentelemetry.io/otel/semconv/v1.13.0/netconv` to generate attributes for a `net.Listener`.
- The `go.opentelemetry.io/otel/semconv/v1.14.0` package. The package contains semantic conventions from the `v1.14.0` version of the OpenTelemetry specification. ([#​3566](https://github.com/open-telemetry/opentelemetry-go/issues/3566))
- The `go.opentelemetry.io/otel/semconv/v1.15.0` package. The package contains semantic conventions from the `v1.15.0` version of the OpenTelemetry specification. ([#​3578](https://github.com/open-telemetry/opentelemetry-go/issues/3578))
- The `go.opentelemetry.io/otel/semconv/v1.16.0` package. The package contains semantic conventions from the `v1.16.0` version of the OpenTelemetry specification. ([#​3579](https://github.com/open-telemetry/opentelemetry-go/issues/3579))
- Metric instruments to `go.opentelemetry.io/otel/metric/instrument`. These instruments are use as replacements of the depreacted `go.opentelemetry.io/otel/metric/instrument/{asyncfloat64,asyncint64,syncfloat64,syncint64}` packages.([#​3575](https://github.com/open-telemetry/opentelemetry-go/issues/3575), [#​3586](https://github.com/open-telemetry/opentelemetry-go/issues/3586))
- `Float64ObservableCounter` replaces the `asyncfloat64.Counter`
- `Float64ObservableUpDownCounter` replaces the `asyncfloat64.UpDownCounter`
- `Float64ObservableGauge` replaces the `asyncfloat64.Gauge`
- `Int64ObservableCounter` replaces the `asyncint64.Counter`
- `Int64ObservableUpDownCounter` replaces the `asyncint64.UpDownCounter`
- `Int64ObservableGauge` replaces the `asyncint64.Gauge`
- `Float64Counter` replaces the `syncfloat64.Counter`
- `Float64UpDownCounter` replaces the `syncfloat64.UpDownCounter`
- `Float64Histogram` replaces the `syncfloat64.Histogram`
- `Int64Counter` replaces the `syncint64.Counter`
- `Int64UpDownCounter` replaces the `syncint64.UpDownCounter`
- `Int64Histogram` replaces the `syncint64.Histogram`
- `NewTracerProvider` to `go.opentelemetry.io/otel/bridge/opentracing`. This is used to create `WrapperTracer` instances from a `TracerProvider`. ([#​3116](https://github.com/open-telemetry/opentelemetry-go/issues/3116))
- The `Extrema` type to `go.opentelemetry.io/otel/sdk/metric/metricdata`. This type is used to represent min/max values and still be able to distinguish unset and zero values. ([#​3487](https://github.com/open-telemetry/opentelemetry-go/issues/3487))
- The `go.opentelemetry.io/otel/semconv/v1.17.0` package. The package contains semantic conventions from the `v1.17.0` version of the OpenTelemetry specification. ([#​3599](https://github.com/open-telemetry/opentelemetry-go/issues/3599))
##### Changed
- Jaeger and Zipkin exporter use `github.com/go-logr/logr` as the logging interface, and add the `WithLogr` option. ([#​3497](https://github.com/open-telemetry/opentelemetry-go/issues/3497), [#​3500](https://github.com/open-telemetry/opentelemetry-go/issues/3500))
- Instrument configuration in `go.opentelemetry.io/otel/metric/instrument` is split into specific options and confguration based on the instrument type. ([#​3507](https://github.com/open-telemetry/opentelemetry-go/issues/3507))
- Use the added `Int64Option` type to configure instruments from `go.opentelemetry.io/otel/metric/instrument/syncint64`.
- Use the added `Float64Option` type to configure instruments from `go.opentelemetry.io/otel/metric/instrument/syncfloat64`.
- Use the added `Int64ObserverOption` type to configure instruments from `go.opentelemetry.io/otel/metric/instrument/asyncint64`.
- Use the added `Float64ObserverOption` type to configure instruments from `go.opentelemetry.io/otel/metric/instrument/asyncfloat64`.
- Return a `Registration` from the `RegisterCallback` method of a `Meter` in the `go.opentelemetry.io/otel/metric` package. This `Registration` can be used to unregister callbacks. ([#​3522](https://github.com/open-telemetry/opentelemetry-go/issues/3522))
- Global error handler uses an atomic value instead of a mutex. ([#​3543](https://github.com/open-telemetry/opentelemetry-go/issues/3543))
- Add `NewMetricProducer` to `go.opentelemetry.io/otel/bridge/opencensus`, which can be used to pass OpenCensus metrics to an OpenTelemetry Reader. ([#​3541](https://github.com/open-telemetry/opentelemetry-go/issues/3541))
- Global logger uses an atomic value instead of a mutex. ([#​3545](https://github.com/open-telemetry/opentelemetry-go/issues/3545))
- The `Shutdown` method of the `"go.opentelemetry.io/otel/sdk/trace".TracerProvider` releases all computational resources when called the first time. ([#​3551](https://github.com/open-telemetry/opentelemetry-go/issues/3551))
- The `Sampler` returned from `TraceIDRatioBased` `go.opentelemetry.io/otel/sdk/trace` now uses the rightmost bits for sampling decisions. This fixes random sampling when using ID generators like `xray.IDGenerator` and increasing parity with other language implementations. ([#​3557](https://github.com/open-telemetry/opentelemetry-go/issues/3557))
- Errors from `go.opentelemetry.io/otel/exporters/otlp/otlptrace` exporters are wrapped in erros identifying their signal name. Existing users of the exporters attempting to identify specific errors will need to use `errors.Unwrap()` to get the underlying error. ([#​3516](https://github.com/open-telemetry/opentelemetry-go/issues/3516))
- Exporters from `go.opentelemetry.io/otel/exporters/otlp` will print the final retryable error message when attempts to retry time out. ([#​3514](https://github.com/open-telemetry/opentelemetry-go/issues/3514))
- The instrument kind names in `go.opentelemetry.io/otel/sdk/metric` are updated to match the API. ([#​3562](https://github.com/open-telemetry/opentelemetry-go/issues/3562))
- `InstrumentKindSyncCounter` is renamed to `InstrumentKindCounter`
- `InstrumentKindSyncUpDownCounter` is renamed to `InstrumentKindUpDownCounter`
- `InstrumentKindSyncHistogram` is renamed to `InstrumentKindHistogram`
- `InstrumentKindAsyncCounter` is renamed to `InstrumentKindObservableCounter`
- `InstrumentKindAsyncUpDownCounter` is renamed to `InstrumentKindObservableUpDownCounter`
- `InstrumentKindAsyncGauge` is renamed to `InstrumentKindObservableGauge`
- The `RegisterCallback` method of the `Meter` in `go.opentelemetry.io/otel/metric` changed.
- The named `Callback` replaces the inline function parameter. ([#​3564](https://github.com/open-telemetry/opentelemetry-go/issues/3564))
- `Callback` is required to return an error. ([#​3576](https://github.com/open-telemetry/opentelemetry-go/issues/3576))
- `Callback` accepts the added `Observer` parameter added. This new parameter is used by `Callback` implementations to observe values for asynchronous instruments instead of calling the `Observe` method of the instrument directly. ([#​3584](https://github.com/open-telemetry/opentelemetry-go/issues/3584))
- The slice of `instrument.Asynchronous` is now passed as a variadic argument. ([#​3587](https://github.com/open-telemetry/opentelemetry-go/issues/3587))
- The exporter from `go.opentelemetry.io/otel/exporters/zipkin` is updated to use the `v1.16.0` version of semantic conventions. This means it no longer uses the removed `net.peer.ip` or `http.host` attributes to determine the remote endpoint. Instead it uses the `net.sock.peer` attributes. ([#​3581](https://github.com/open-telemetry/opentelemetry-go/issues/3581))
- The `Min` and `Max` fields of the `HistogramDataPoint` in `go.opentelemetry.io/otel/sdk/metric/metricdata` are now defined with the added `Extrema` type instead of a `*float64`. ([#​3487](https://github.com/open-telemetry/opentelemetry-go/issues/3487))
##### Fixed
- Asynchronous instruments that use sum aggregators and attribute filters correctly add values from equivalent attribute sets that have been filtered. ([#​3439](https://github.com/open-telemetry/opentelemetry-go/issues/3439), [#​3549](https://github.com/open-telemetry/opentelemetry-go/issues/3549))
- The `RegisterCallback` method of the `Meter` from `go.opentelemetry.io/otel/sdk/metric` only registers a callback for instruments created by that meter. Trying to register a callback with instruments from a different meter will result in an error being returned. ([#​3584](https://github.com/open-telemetry/opentelemetry-go/issues/3584))
##### Deprecated
- The `NewMetricExporter` in `go.opentelemetry.io/otel/bridge/opencensus` is deprecated. Use `NewMetricProducer` instead. ([#​3541](https://github.com/open-telemetry/opentelemetry-go/issues/3541))
- The `go.opentelemetry.io/otel/metric/instrument/asyncfloat64` package is deprecated. Use the instruments from `go.opentelemetry.io/otel/metric/instrument` instead. ([#​3575](https://github.com/open-telemetry/opentelemetry-go/issues/3575))
- The `go.opentelemetry.io/otel/metric/instrument/asyncint64` package is deprecated. Use the instruments from `go.opentelemetry.io/otel/metric/instrument` instead. ([#​3575](https://github.com/open-telemetry/opentelemetry-go/issues/3575))
- The `go.opentelemetry.io/otel/metric/instrument/syncfloat64` package is deprecated. Use the instruments from `go.opentelemetry.io/otel/metric/instrument` instead. ([#​3575](https://github.com/open-telemetry/opentelemetry-go/issues/3575))
- The `go.opentelemetry.io/otel/metric/instrument/syncint64` package is deprecated. Use the instruments from `go.opentelemetry.io/otel/metric/instrument` instead. ([#​3575](https://github.com/open-telemetry/opentelemetry-go/issues/3575))
- The `NewWrappedTracerProvider` in `go.opentelemetry.io/otel/bridge/opentracing` is now deprecated. Use `NewTracerProvider` instead. ([#​3116](https://github.com/open-telemetry/opentelemetry-go/issues/3116))
##### Removed
- The deprecated `go.opentelemetry.io/otel/sdk/metric/view` package is removed. ([#​3520](https://github.com/open-telemetry/opentelemetry-go/issues/3520))
- The `InstrumentProvider` from `go.opentelemetry.io/otel/sdk/metric/asyncint64` is removed. Use the new creation methods of the `Meter` in `go.opentelemetry.io/otel/sdk/metric` instead. ([#​3530](https://github.com/open-telemetry/opentelemetry-go/issues/3530))
- The `Counter` method is replaced by `Meter.Int64ObservableCounter`
- The `UpDownCounter` method is replaced by `Meter.Int64ObservableUpDownCounter`
- The `Gauge` method is replaced by `Meter.Int64ObservableGauge`
- The `InstrumentProvider` from `go.opentelemetry.io/otel/sdk/metric/asyncfloat64` is removed. Use the new creation methods of the `Meter` in `go.opentelemetry.io/otel/sdk/metric` instead. ([#​3530](https://github.com/open-telemetry/opentelemetry-go/issues/3530))
- The `Counter` method is replaced by `Meter.Float64ObservableCounter`
- The `UpDownCounter` method is replaced by `Meter.Float64ObservableUpDownCounter`
- The `Gauge` method is replaced by `Meter.Float64ObservableGauge`
- The `InstrumentProvider` from `go.opentelemetry.io/otel/sdk/metric/syncint64` is removed. Use the new creation methods of the `Meter` in `go.opentelemetry.io/otel/sdk/metric` instead. ([#​3530](https://github.com/open-telemetry/opentelemetry-go/issues/3530))
- The `Counter` method is replaced by `Meter.Int64Counter`
- The `UpDownCounter` method is replaced by `Meter.Int64UpDownCounter`
- The `Histogram` method is replaced by `Meter.Int64Histogram`
- The `InstrumentProvider` from `go.opentelemetry.io/otel/sdk/metric/syncfloat64` is removed. Use the new creation methods of the `Meter` in `go.opentelemetry.io/otel/sdk/metric` instead. ([#​3530](https://github.com/open-telemetry/opentelemetry-go/issues/3530))
- The `Counter` method is replaced by `Meter.Float64Counter`
- The `UpDownCounter` method is replaced by `Meter.Float64UpDownCounter`
- The `Histogram` method is replaced by `Meter.Float64Histogram`
### [`v1.11.2`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.11.2): /0.34.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.11.1...v1.11.2)
##### Added
- The `WithView` `Option` is added to the `go.opentelemetry.io/otel/sdk/metric` package.
This option is used to configure the view(s) a `MeterProvider` will use for all `Reader`s that are registered with it. ([#​3387](https://github.com/open-telemetry/opentelemetry-go/issues/3387))
- Add Instrumentation Scope and Version as info metric and label in Prometheus exporter.
This can be disabled using the `WithoutScopeInfo()` option added to that package.([#​3273](https://github.com/open-telemetry/opentelemetry-go/issues/3273), [#​3357](https://github.com/open-telemetry/opentelemetry-go/issues/3357))
- OTLP exporters now recognize: ([#​3363](https://github.com/open-telemetry/opentelemetry-go/issues/3363))
- `OTEL_EXPORTER_OTLP_INSECURE`
- `OTEL_EXPORTER_OTLP_TRACES_INSECURE`
- `OTEL_EXPORTER_OTLP_METRICS_INSECURE`
- `OTEL_EXPORTER_OTLP_CLIENT_KEY`
- `OTEL_EXPORTER_OTLP_TRACES_CLIENT_KEY`
- `OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY`
- `OTEL_EXPORTER_OTLP_CLIENT_CERTIFICATE`
- `OTEL_EXPORTER_OTLP_TRACES_CLIENT_CERTIFICATE`
- `OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE`
- The `View` type and related `NewView` function to create a view according to the OpenTelemetry specification are added to `go.opentelemetry.io/otel/sdk/metric`.
These additions are replacements for the `View` type and `New` function from `go.opentelemetry.io/otel/sdk/metric/view`. ([#​3459](https://github.com/open-telemetry/opentelemetry-go/issues/3459))
- The `Instrument` and `InstrumentKind` type are added to `go.opentelemetry.io/otel/sdk/metric`.
These additions are replacements for the `Instrument` and `InstrumentKind` types from `go.opentelemetry.io/otel/sdk/metric/view`. ([#​3459](https://github.com/open-telemetry/opentelemetry-go/issues/3459))
- The `Stream` type is added to `go.opentelemetry.io/otel/sdk/metric` to define a metric data stream a view will produce. ([#​3459](https://github.com/open-telemetry/opentelemetry-go/issues/3459))
- The `AssertHasAttributes` allows instrument authors to test that datapoints returned have appropriate attributes. ([#​3487](https://github.com/open-telemetry/opentelemetry-go/issues/3487))
##### Changed
- The `"go.opentelemetry.io/otel/sdk/metric".WithReader` option no longer accepts views to associate with the `Reader`.
Instead, views are now registered directly with the `MeterProvider` via the new `WithView` option.
The views registered with the `MeterProvider` apply to all `Reader`s. ([#​3387](https://github.com/open-telemetry/opentelemetry-go/issues/3387))
- The `Temporality(view.InstrumentKind) metricdata.Temporality` and `Aggregation(view.InstrumentKind) aggregation.Aggregation` methods are added to the `"go.opentelemetry.io/otel/sdk/metric".Exporter` interface. ([#​3260](https://github.com/open-telemetry/opentelemetry-go/issues/3260))
- The `Temporality(view.InstrumentKind) metricdata.Temporality` and `Aggregation(view.InstrumentKind) aggregation.Aggregation` methods are added to the `"go.opentelemetry.io/otel/exporters/otlp/otlpmetric".Client` interface. ([#​3260](https://github.com/open-telemetry/opentelemetry-go/issues/3260))
- The `WithTemporalitySelector` and `WithAggregationSelector` `ReaderOption`s have been changed to `ManualReaderOption`s in the `go.opentelemetry.io/otel/sdk/metric` package. ([#​3260](https://github.com/open-telemetry/opentelemetry-go/issues/3260))
- The periodic reader in the `go.opentelemetry.io/otel/sdk/metric` package now uses the temporality and aggregation selectors from its configured exporter instead of accepting them as options. ([#​3260](https://github.com/open-telemetry/opentelemetry-go/issues/3260))
##### Fixed
- The `go.opentelemetry.io/otel/exporters/prometheus` exporter fixes duplicated `_total` suffixes. ([#​3369](https://github.com/open-telemetry/opentelemetry-go/issues/3369))
- Remove comparable requirement for `Reader`s. ([#​3387](https://github.com/open-telemetry/opentelemetry-go/issues/3387))
- Cumulative metrics from the OpenCensus bridge (`go.opentelemetry.io/otel/bridge/opencensus`) are defined as monotonic sums, instead of non-monotonic. ([#​3389](https://github.com/open-telemetry/opentelemetry-go/issues/3389))
- Asynchronous counters (`Counter` and `UpDownCounter`) from the metric SDK now produce delta sums when configured with delta temporality. ([#​3398](https://github.com/open-telemetry/opentelemetry-go/issues/3398))
- Exported `Status` codes in the `go.opentelemetry.io/otel/exporters/zipkin` exporter are now exported as all upper case values. ([#​3340](https://github.com/open-telemetry/opentelemetry-go/issues/3340))
- `Aggregation`s from `go.opentelemetry.io/otel/sdk/metric` with no data are not exported. ([#​3394](https://github.com/open-telemetry/opentelemetry-go/issues/3394), [#​3436](https://github.com/open-telemetry/opentelemetry-go/issues/3436))
- Reenabled Attribute Filters in the Metric SDK. ([#​3396](https://github.com/open-telemetry/opentelemetry-go/issues/3396))
- Asynchronous callbacks are only called if they are registered with at least one instrument that does not use drop aggragation. ([#​3408](https://github.com/open-telemetry/opentelemetry-go/issues/3408))
- Do not report empty partial-success responses in the `go.opentelemetry.io/otel/exporters/otlp` exporters. ([#​3438](https://github.com/open-telemetry/opentelemetry-go/issues/3438), [#​3432](https://github.com/open-telemetry/opentelemetry-go/issues/3432))
- Handle partial success responses in `go.opentelemetry.io/otel/exporters/otlp/otlpmetric` exporters. ([#​3162](https://github.com/open-telemetry/opentelemetry-go/issues/3162), [#​3440](https://github.com/open-telemetry/opentelemetry-go/issues/3440))
- Prevent duplicate Prometheus description, unit, and type. ([#​3469](https://github.com/open-telemetry/opentelemetry-go/issues/3469))
- Prevents panic when using incorrect `attribute.Value.As[Type]Slice()`. ([#​3489](https://github.com/open-telemetry/opentelemetry-go/issues/3489))
##### Removed
- The `go.opentelemetry.io/otel/exporters/otlp/otlpmetric.Client` interface is removed. ([#​3486](https://github.com/open-telemetry/opentelemetry-go/issues/3486))
- The `go.opentelemetry.io/otel/exporters/otlp/otlpmetric.New` function is removed. Use the `otlpmetric[http|grpc].New` directly. ([#​3486](https://github.com/open-telemetry/opentelemetry-go/issues/3486))
##### Deprecated
- The `go.opentelemetry.io/otel/sdk/metric/view` package is deprecated.
Use `Instrument`, `InstrumentKind`, `View`, and `NewView` in `go.opentelemetry.io/otel/sdk/metric` instead. ([#​3476](https://github.com/open-telemetry/opentelemetry-go/issues/3476))
### [`v1.11.1`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.11.1): /v0.33.0
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.11.0...v1.11.1)
##### Added
- The Prometheus exporter in `go.opentelemetry.io/otel/exporters/prometheus` registers with a Prometheus registerer on creation. By default, it will register with the default Prometheus default registerer. A non-default registerer can be used by passing the `WithRegisterer` option. ([#​3239](https://github.com/open-telemetry/opentelemetry-go/issues/3239))
- Added the `WithAggregationSelector` option to the `go.opentelemetry.io/otel/exporters/prometheus` package to change the default `AggregationSelector` used. ([#​3341](https://github.com/open-telemetry/opentelemetry-go/issues/3341))
- The Prometheus exporter in `go.opentelemetry.io/otel/exporters/prometheus` converts the `Resource` associated with metric exports into a `target_info` metric. ([#​3285](https://github.com/open-telemetry/opentelemetry-go/issues/3285))
##### Changed
- The `"go.opentelemetry.io/otel/exporters/prometheus".New` function is updated to return an error. It will return an error if the exporter fails to register with Prometheus. ([#​3239](https://github.com/open-telemetry/opentelemetry-go/issues/3239))
##### Fixed
- The URL-encoded values from the `OTEL_RESOURCE_ATTRIBUTES` environment variable are decoded. ([#​2963](https://github.com/open-telemetry/opentelemetry-go/issues/2963))
- The `baggage.NewMember` function decodes the `value` parameter instead of directly using it. This fixes the implementation to be compliant with the W3C specification. ([#​3226](https://github.com/open-telemetry/opentelemetry-go/issues/3226))
- Slice attributes of the `attribute` package are now comparable based on their value, not instance. ([#​3108](https://github.com/open-telemetry/opentelemetry-go/issues/3108) [#​3252](https://github.com/open-telemetry/opentelemetry-go/issues/3252))
- The `Shutdown` and `ForceFlush` methods of the `"go.opentelemetry.io/otel/sdk/trace".TraceProvider` no longer return an error when no processor is registered. ([#​3268](https://github.com/open-telemetry/opentelemetry-go/issues/3268))
- The Prometheus exporter in `go.opentelemetry.io/otel/exporters/prometheus` cumulatively sums histogram buckets. ([#​3281](https://github.com/open-telemetry/opentelemetry-go/issues/3281))
- The sum of each histogram data point is now uniquely exported by the `go.opentelemetry.io/otel/exporters/otlpmetric` exporters. ([#​3284](https://github.com/open-telemetry/opentelemetry-go/issues/3284), [#​3293](https://github.com/open-telemetry/opentelemetry-go/issues/3293))
- Recorded values for asynchronous counters (`Counter` and `UpDownCounter`) are interpreted as exact, not incremental, sum values by the metric SDK. ([#​3350](https://github.com/open-telemetry/opentelemetry-go/issues/3350), [#​3278](https://github.com/open-telemetry/opentelemetry-go/issues/3278))
- `UpDownCounters` are now correctly output as Prometheus gauges in the `go.opentelemetry.io/otel/exporters/prometheus` exporter. ([#​3358](https://github.com/open-telemetry/opentelemetry-go/issues/3358))
- The Prometheus exporter in `go.opentelemetry.io/otel/exporters/prometheus` no longer describes the metrics it will send to Prometheus on startup. Instead the exporter is defined as an "unchecked" collector for Prometheus. This fixes the `reader is not registered` warning currently emitted on startup. ([#​3291](https://github.com/open-telemetry/opentelemetry-go/issues/3291) [#​3342](https://github.com/open-telemetry/opentelemetry-go/issues/3342))
- The `go.opentelemetry.io/otel/exporters/prometheus` exporter now correctly adds `_total` suffixes to counter metrics. ([#​3360](https://github.com/open-telemetry/opentelemetry-go/issues/3360))
- The `go.opentelemetry.io/otel/exporters/prometheus` exporter now adds a unit suffix to metric names. This can be disabled using the `WithoutUnits()` option added to that package. ([#​3352](https://github.com/open-telemetry/opentelemetry-go/issues/3352))
### [`v1.11.0`](https://github.com/open-telemetry/opentelemetry-go/releases/tag/v1.11.0): /v0.32.3
[Compare Source](https://github.com/open-telemetry/opentelemetry-go/compare/v1.10.0...v1.11.0)
Retracts the `v0.32.2` version of `go.opentelemetry.io/otel/exporters/otlpmetric/otlpmetricgrpc` and `go.opentelemetry.io/otel/exporters/otlpmetric/otlpmetrichttp` given they include unresolvable dependencies.
##### Added
- Add default User-Agent header to OTLP exporter requests (`go.opentelemetry.io/otel/exporters/otlptrace/otlptracegrpc` and `go.opentelemetry.io/otel/exporters/otlptrace/otlptracehttp`). ([#​3261](https://github.com/open-telemetry/opentelemetry-go/issues/3261))
##### Changed
- `span.SetStatus` has been updated such that calls that lower the status are now no-ops. ([#​3214](https://github.com/open-telemetry/opentelemetry-go/issues/3214))
- Upgrade `golang.org/x/sys/unix` from `v0.0.0-20210423185535-09eb48e85fd7` to `v0.0.0-20220919091848-fb04ddd9f9c8`.
This addresses [GO-2022-0493](https://pkg.go.dev/vuln/GO-2022-0493). ([#​3235](https://github.com/open-telemetry/opentelemetry-go/issues/3235))
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about these updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4xOTQuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE5NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->https://git.autistici.org/id/sso-server/-/merge_requests/34Update module github.com/prometheus/client_golang to v1.19.02024-03-22T09:34:39ZrenovateUpdate module github.com/prometheus/client_golang to v1.19.0This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) | require | minor | `v1.12.2` -> `v1.19.0` |
---
### R...This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) | require | minor | `v1.12.2` -> `v1.19.0` |
---
### Release Notes
<details>
<summary>prometheus/client_golang (github.com/prometheus/client_golang)</summary>
### [`v1.19.0`](https://github.com/prometheus/client_golang/releases/tag/v1.19.0)
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.18.0...v1.19.0)
#### What's Changed
The module `prometheus/common v0.48.0` introduced an incompatibility when used together with client_golang (See https://github.com/prometheus/client_golang/pull/1448 for more details). If your project uses client_golang and you want to use `prometheus/common v0.48.0` or higher, please update client_golang to v1.19.0.
- \[CHANGE] Minimum required go version is now 1.20 (we also test client_golang against new 1.22 version). [#​1445](https://github.com/prometheus/client_golang/issues/1445) [#​1449](https://github.com/prometheus/client_golang/issues/1449)
- \[FEATURE] collectors: Add version collector. [#​1422](https://github.com/prometheus/client_golang/issues/1422) [#​1427](https://github.com/prometheus/client_golang/issues/1427)
#### New Contributors
- [@​michurin](https://github.com/michurin) made their first contribution in https://github.com/prometheus/client_golang/pull/1423
- [@​kavu](https://github.com/kavu) made their first contribution in https://github.com/prometheus/client_golang/pull/1445
- [@​ywwg](https://github.com/ywwg) made their first contribution in https://github.com/prometheus/client_golang/pull/1448
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.18.0...v1.19.0
### [`v1.18.0`](https://github.com/prometheus/client_golang/releases/tag/v1.18.0)
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.17.0...v1.18.0)
#### What's Changed
- \[FEATURE] promlint: Allow creation of custom metric validations. [#​1311](https://github.com/prometheus/client_golang/issues/1311)
- \[FEATURE] Go programs using client_golang can be built in wasip1 OS. [#​1350](https://github.com/prometheus/client_golang/issues/1350)
- \[BUGFIX] histograms: Add timer to reset ASAP after bucket limiting has happened. [#​1367](https://github.com/prometheus/client_golang/issues/1367)
- \[BUGFIX] testutil: Fix comparison of metrics with empty Help strings. [#​1378](https://github.com/prometheus/client_golang/issues/1378)
- \[ENHANCEMENT] Improved performance of `MetricVec.WithLabelValues(...)`. [#​1360](https://github.com/prometheus/client_golang/issues/1360)
#### New Contributors
- [@​srenatus](https://github.com/srenatus) made their first contribution in https://github.com/prometheus/client_golang/pull/1350
- [@​jadolg](https://github.com/jadolg) made their first contribution in https://github.com/prometheus/client_golang/pull/1342
- [@​manas-rust](https://github.com/manas-rust) made their first contribution in https://github.com/prometheus/client_golang/pull/1383
- [@​bluekeyes](https://github.com/bluekeyes) made their first contribution in https://github.com/prometheus/client_golang/pull/1378
- [@​tsipo](https://github.com/tsipo) made their first contribution in https://github.com/prometheus/client_golang/pull/1387
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.17.0...v1.18.0
### [`v1.17.0`](https://github.com/prometheus/client_golang/releases/tag/v1.17.0)
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.16.0...v1.17.0)
#### What's Changed
- \[CHANGE] Minimum required go version is now 1.19 (we also test client_golang against new 1.21 version). [#​1325](https://github.com/prometheus/client_golang/issues/1325)
- \[FEATURE] Add support for Created Timestamps in Counters, Summaries and Historams. [#​1313](https://github.com/prometheus/client_golang/issues/1313)
- \[ENHANCEMENT] Enable detection of a native histogram without observations. [#​1314](https://github.com/prometheus/client_golang/issues/1314)
<details><summary>Commits</summary>
- Merge v1.16.0 to main by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1293
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1297
- ci: define minimal permissions to GitHub workflows by [@​diogoteles08](https://github.com/diogoteles08) in https://github.com/prometheus/client_golang/pull/1295
- Do not allocate memory when there's no constraints by [@​Okhoshi](https://github.com/Okhoshi) in https://github.com/prometheus/client_golang/pull/1296
- Bump golang.org/x/sys from 0.8.0 to 0.9.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1306
- Bump google.golang.org/grpc from 1.45.0 to 1.53.0 in /tutorial/whatsup by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1307
- histogram: Enable detection of a native histogram without observations by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1314
- Bump github.com/prometheus/procfs from 0.10.1 to 0.11.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1305
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1302
- Fix data-race in metric without `code` and `method` but with `WithLabelFromCtx` by [@​tigrato](https://github.com/tigrato) in https://github.com/prometheus/client_golang/pull/1318
- Add missing tick "\`" in README by [@​ZiViZiViZ](https://github.com/ZiViZiViZ) in https://github.com/prometheus/client_golang/pull/1321
- Bump golang.org/x/sys from 0.9.0 to 0.10.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1320
- Bump github.com/prometheus/procfs from 0.11.0 to 0.11.1 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1319
- docs: trivial grammar fixes to improve readability in promauto Godoc by [@​sengi](https://github.com/sengi) in https://github.com/prometheus/client_golang/pull/1322
- Add Go 1.21 support by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1325
- Bump client_model by [@​ArthurSens](https://github.com/ArthurSens) in https://github.com/prometheus/client_golang/pull/1323
- histogram docs: Fixed minor nit. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1324
- Update building by [@​SuperQ](https://github.com/SuperQ) in https://github.com/prometheus/client_golang/pull/1326
- Bump golang.org/x/sys from 0.10.0 to 0.11.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1331
- Bump github.com/prometheus/client_golang from 1.15.1-0.20230416215738-0963f595c689 to 1.16.0 in /tutorial/whatsup by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1329
- Bump github.com/prometheus/client_golang from 1.13.1 to 1.16.0 in /examples/middleware by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1328
- Bump github.com/prometheus/common from 0.42.0 to 0.44.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1284
- Bump github.com/prometheus/common from 0.42.0 to 0.44.0 in /tutorial/whatsup by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1330
- Bump google.golang.org/protobuf from 1.30.0 to 1.31.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1304
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1332
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1338
- Cleanup golangci-lint errcheck by [@​SuperQ](https://github.com/SuperQ) in https://github.com/prometheus/client_golang/pull/1339
- Add go_godebug_non_default_behavior_tlsmaxrsasize_events_total by [@​alexandear](https://github.com/alexandear) in https://github.com/prometheus/client_golang/pull/1348
- Extend Counters, Summaries and Histograms with creation timestamp by [@​ArthurSens](https://github.com/ArthurSens) in https://github.com/prometheus/client_golang/pull/1313
- Fix typos in comments, tests, and errors by [@​alexandear](https://github.com/alexandear) in https://github.com/prometheus/client_golang/pull/1346
- Deprecated comment should begin with "Deprecated:" by [@​alexandear](https://github.com/alexandear) in https://github.com/prometheus/client_golang/pull/1347
- Add changelog entry for 1.17 by [@​ArthurSens](https://github.com/ArthurSens) in https://github.com/prometheus/client_golang/pull/1352
</details>
#### New Contributors
* @​diogoteles08 made their first contribution in https://github.com/prometheus/client_golang/pull/1295
* @​tigrato made their first contribution in https://github.com/prometheus/client_golang/pull/1318
* @​ZiViZiViZ made their first contribution in https://github.com/prometheus/client_golang/pull/1321
* @​sengi made their first contribution in https://github.com/prometheus/client_golang/pull/1322
* @​ArthurSens made their first contribution in https://github.com/prometheus/client_golang/pull/1323
* @​alexandear made their first contribution in https://github.com/prometheus/client_golang/pull/1348
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.16.0...v1.17.0
### [`v1.16.0`](https://github.com/prometheus/client_golang/releases/tag/v1.16.0)
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.15.1...v1.16.0)
#### What's Changed
- \[BUGFIX] api: Switch to POST for LabelNames, Series, and QueryExemplars. [#​1252](https://github.com/prometheus/client_golang/issues/1252)
- \[BUGFIX] api: Fix undefined execution order in return statements. [#​1260](https://github.com/prometheus/client_golang/issues/1260)
- \[BUGFIX] native histograms: Fix bug in bucket key calculation. [#​1279](https://github.com/prometheus/client_golang/issues/1279)
- \[ENHANCEMENT] Reduce constrainLabels allocations for all metrics. [#​1272](https://github.com/prometheus/client_golang/issues/1272)
- \[ENHANCEMENT] promhttp: Add process start time header for scrape efficiency. [#​1278](https://github.com/prometheus/client_golang/issues/1278)
- \[ENHANCEMENT] promlint: Improve metricUnits runtime. [#​1286](https://github.com/prometheus/client_golang/issues/1286)
<details>
<summary> Commits </summary>
- Merge v1.15 to main by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1250
- Switch to POST for LabelNames, Series, and QueryExemplars to DoGetFallback by [@​jacksontj](https://github.com/jacksontj) in https://github.com/prometheus/client_golang/pull/1252
- ✏️ \[collectors]: fix typo in test assertion by [@​vegerot](https://github.com/vegerot) in https://github.com/prometheus/client_golang/pull/1153
- Added interactive tutorial \[kubeCon] by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1255
- Fixed tutorial. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1256
- Bump golang.org/x/sys from 0.6.0 to 0.7.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1265
- Cleanup proto use in tests by [@​SuperQ](https://github.com/SuperQ) in https://github.com/prometheus/client_golang/pull/1264
- Fix tutorial on WSL-based systems by [@​marevers](https://github.com/marevers) in https://github.com/prometheus/client_golang/pull/1257
- Fix undefined execution order in return statements by [@​PiotrLewandowski323](https://github.com/PiotrLewandowski323) in https://github.com/prometheus/client_golang/pull/1260
- Merge release 1.15.1 to main by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1267
- GitHub Workflows security hardening by [@​sashashura](https://github.com/sashashura) in https://github.com/prometheus/client_golang/pull/1180
- add process start time header to client_golang prometheus by [@​logicalhan](https://github.com/logicalhan) in https://github.com/prometheus/client_golang/pull/1278
- Fix bug in bucket key calculation by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1279
- Bump github.com/prometheus/procfs from 0.9.0 to 0.10.1 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1283
- Reduce constrainLabels allocations by [@​khasanovbi](https://github.com/khasanovbi) in https://github.com/prometheus/client_golang/pull/1272
- added circleci as gh action YAML by [@​krishnaduttPanchagnula](https://github.com/krishnaduttPanchagnula) in https://github.com/prometheus/client_golang/pull/1281
- Improve metricUnits runtime by [@​avlitman](https://github.com/avlitman) in https://github.com/prometheus/client_golang/pull/1286
- Moving fully to GH actions. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1288
- Fix docstring references to renamed native histogram fields / functions. by [@​juliusv](https://github.com/juliusv) in https://github.com/prometheus/client_golang/pull/1290
- Fixed README & CHANGELOG; Added fmt makefile command (+bingo) for easier contributions. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1289
-
</details>
#### New Contributors
* @​vegerot made their first contribution in https://github.com/prometheus/client_golang/pull/1153
* @​marevers made their first contribution in https://github.com/prometheus/client_golang/pull/1257
* @​PiotrLewandowski323 made their first contribution in https://github.com/prometheus/client_golang/pull/1260
* @​sashashura made their first contribution in https://github.com/prometheus/client_golang/pull/1180
* @​logicalhan made their first contribution in https://github.com/prometheus/client_golang/pull/1278
* @​khasanovbi made their first contribution in https://github.com/prometheus/client_golang/pull/1272
* @​krishnaduttPanchagnula made their first contribution in https://github.com/prometheus/client_golang/pull/1281
* @​avlitman made their first contribution in https://github.com/prometheus/client_golang/pull/1286
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.15.1...v1.16.0
### [`v1.15.1`](https://github.com/prometheus/client_golang/releases/tag/v1.15.1)
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.15.0...v1.15.1)
#### Changes
- \[BUGFIX] Fixed promhttp.Instrument\* handlers wrongly trying to attach exemplar to unsupported metrics (e.g. summary), \
causing panics [#​1253](https://github.com/prometheus/client_golang/issues/1253)
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.15.0...v1.15.1
### [`v1.15.0`](https://github.com/prometheus/client_golang/releases/tag/v1.15.0)
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.14.0...v1.15.0)
#### Changed
\[BUGFIX] Fix issue with atomic variables on ppc64le [#​1171](https://github.com/prometheus/client_golang/issues/1171)
\[BUGFIX] Support for multiple samples within same metric [#​1181](https://github.com/prometheus/client_golang/issues/1181)
\[BUGFIX] Bump golang.org/x/text to v0.3.8 to mitigate CVE-2022-32149 [#​1187](https://github.com/prometheus/client_golang/issues/1187)
\[ENHANCEMENT] Add exemplars and middleware examples [#​1173](https://github.com/prometheus/client_golang/issues/1173)
\[ENHANCEMENT] Add more context to "duplicate label names" error to enable debugging [#​1177](https://github.com/prometheus/client_golang/issues/1177)
\[ENHANCEMENT] Add constrained labels and constrained variant for all MetricVecs [#​1151](https://github.com/prometheus/client_golang/issues/1151)
\[ENHANCEMENT] Moved away from deprecated github.com/golang/protobuf package [#​1183](https://github.com/prometheus/client_golang/issues/1183)
\[ENHANCEMENT] Add possibility to dynamically get label values for http instrumentation [#​1066](https://github.com/prometheus/client_golang/issues/1066)
\[ENHANCEMENT] Add ability to Pusher to add custom headers [#​1218](https://github.com/prometheus/client_golang/issues/1218)
\[ENHANCEMENT] api: Extend and improve efficiency of json-iterator usage [#​1225](https://github.com/prometheus/client_golang/issues/1225)
\[ENHANCEMENT] Added (official) support for go 1.20 [#​1234](https://github.com/prometheus/client_golang/issues/1234)
\[ENHANCEMENT] timer: Added support for exemplars [#​1233](https://github.com/prometheus/client_golang/issues/1233)
\[ENHANCEMENT] Filter expected metrics as well in CollectAndCompare [#​1143](https://github.com/prometheus/client_golang/issues/1143)
\[ENHANCEMENT] ⚠️ Only set start/end if time is not Zero. This breaks compatibility in experimental api package. If you strictly depend on empty time.Time as actual value, the behavior is now changed [#​1238](https://github.com/prometheus/client_golang/issues/1238)
<details>
<summary>All commits</summary>
- Merge release 1.14 to main by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1164
- Fix typo in doc comment by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1166
- Fix issue with atomic variables on ppc64le by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1171
- examples: Add exemplars and middleware examples by [@​jessicalins](https://github.com/jessicalins) in https://github.com/prometheus/client_golang/pull/1173
- Add context to "duplicate label names" to enable debugging by [@​SpencerMalone](https://github.com/SpencerMalone) in https://github.com/prometheus/client_golang/pull/1177
- Add constrained labels and Constrained variant for all MetricVecs by [@​Okhoshi](https://github.com/Okhoshi) in https://github.com/prometheus/client_golang/pull/1151
- Support for multiple samples within same metric by [@​machadovilaca](https://github.com/machadovilaca) in https://github.com/prometheus/client_golang/pull/1181
- Replace deprecated github.com/golang/protobuf package by [@​zhsj](https://github.com/zhsj) in https://github.com/prometheus/client_golang/pull/1183
- Bump golang.org/x/text to v0.3.8 to mitigate CVE-2022-32149 by [@​b4bay](https://github.com/b4bay) in https://github.com/prometheus/client_golang/pull/1187
- typo fix by [@​ibreakthecloud](https://github.com/ibreakthecloud) in https://github.com/prometheus/client_golang/pull/1178
- Add possibility to dynamically get label values for http instrumentation by [@​Okhoshi](https://github.com/Okhoshi) in https://github.com/prometheus/client_golang/pull/1066
- Bump github.com/cespare/xxhash/v2 from 2.1.2 to 2.2.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1199
- Bump github.com/prometheus/procfs from 0.8.0 to 0.9.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1198
- Bump golang.org/x/sys from 0.3.0 to 0.4.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1217
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1213
- Bump github.com/prometheus/common from 0.37.0 to 0.39.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1197
- Add `Header` method to Pusher for custom header by [@​songjiayang](https://github.com/songjiayang) in https://github.com/prometheus/client_golang/pull/1218
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1224
- api: Extend and improve json-iterator usage by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1225
- Indent example in godoc consistently by [@​lamida](https://github.com/lamida) in https://github.com/prometheus/client_golang/pull/1226
- Remove unnecessary check if label is nil in observeWithExemplar by [@​dimonl](https://github.com/dimonl) in https://github.com/prometheus/client_golang/pull/1235
- README: Remove not working gocoverage images. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1236
- Added support for go 1.20. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1234
- timer: Added support for exemplars. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1233
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1237
- Filter expected metrics as well in CollectAndCompare by [@​DariaKunoichi](https://github.com/DariaKunoichi) in https://github.com/prometheus/client_golang/pull/1143
- Only set start/end if time is not Zero by [@​jacksontj](https://github.com/jacksontj) in https://github.com/prometheus/client_golang/pull/1238
- Bump google.golang.org/protobuf from 1.28.1 to 1.30.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1243
- Bump golang.org/x/sys from 0.5.0 to 0.6.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1246
- Bump github.com/golang/protobuf from 1.5.2 to 1.5.3 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1245
- Bump github.com/prometheus/common from 0.41.0 to 0.42.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1244
- Cut v1.15.0 by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1249
</details>
#### New Contributors
* @​SpencerMalone made their first contribution in https://github.com/prometheus/client_golang/pull/1177
* @​Okhoshi made their first contribution in https://github.com/prometheus/client_golang/pull/1151
* @​machadovilaca made their first contribution in https://github.com/prometheus/client_golang/pull/1181
* @​b4bay made their first contribution in https://github.com/prometheus/client_golang/pull/1187
* @​ibreakthecloud made their first contribution in https://github.com/prometheus/client_golang/pull/1178
* @​songjiayang made their first contribution in https://github.com/prometheus/client_golang/pull/1218
* @​lamida made their first contribution in https://github.com/prometheus/client_golang/pull/1226
* @​dimonl made their first contribution in https://github.com/prometheus/client_golang/pull/1235
* @​DariaKunoichi made their first contribution in https://github.com/prometheus/client_golang/pull/1143
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.14.0...v1.15.0
### [`v1.14.0`](https://github.com/prometheus/client_golang/releases/tag/v1.14.0): 1.14.0 / 2022-11-08
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.13.1...v1.14.0)
It might look like a small release, but it's quite opposite 😱 There were many non user facing changes and fixes and enormous work from engineers from Grafana to add native histograms in 💪🏾 Enjoy! 😍
#### What's Changed
- \[FEATURE] Add Support for Native Histograms. [#​1150](https://github.com/prometheus/client_golang/issues/1150)
- \[CHANGE] Extend `prometheus.Registry` to implement `prometheus.Collector` interface. [#​1103](https://github.com/prometheus/client_golang/issues/1103)
#### New Contributors
- [@​hairyhenderson](https://github.com/hairyhenderson) made their first contribution in https://github.com/prometheus/client_golang/pull/1118
- [@​rfratto](https://github.com/rfratto) made their first contribution in https://github.com/prometheus/client_golang/pull/1103
- [@​donotnoot](https://github.com/donotnoot) made their first contribution in https://github.com/prometheus/client_golang/pull/1125
- [@​rogerogers](https://github.com/rogerogers) made their first contribution in https://github.com/prometheus/client_golang/pull/1130
- [@​balintzs](https://github.com/balintzs) made their first contribution in https://github.com/prometheus/client_golang/pull/1148
- [@​fstab](https://github.com/fstab) made their first contribution in https://github.com/prometheus/client_golang/pull/1146
- [@​jessicalins](https://github.com/jessicalins) made their first contribution in https://github.com/prometheus/client_golang/pull/1152
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.13.1...v1.14.0
### [`v1.13.1`](https://github.com/prometheus/client_golang/releases/tag/v1.13.1): 1.13.1 / 2022-11-02
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.13.0...v1.13.1)
- \[BUGFIX] Fix race condition with Exemplar in Counter. [#​1146](https://github.com/prometheus/client_golang/issues/1146)
- \[BUGFIX] Fix `CumulativeCount` value of `+Inf` bucket created from exemplar. [#​1148](https://github.com/prometheus/client_golang/issues/1148)
- \[BUGFIX] Fix double-counting bug in `promhttp.InstrumentRoundTripperCounter`. [#​1118](https://github.com/prometheus/client_golang/issues/1118)
**Full Changelog**: https://github.com/prometheus/client_golang/compare/v1.13.0...v1.13.1
### [`v1.13.0`](https://github.com/prometheus/client_golang/releases/tag/v1.13.0): 1.13.0 / 2022-08-06
[Compare Source](https://github.com/prometheus/client_golang/compare/v1.12.2...v1.13.0)
- \[CHANGE] Minimum required Go version is now 1.17 (we also test client_golang against the new 1.19 version).
- \[ENHANCEMENT] Added `prometheus.TransactionalGatherer` interface for `promhttp.Handler` use which allows using low allocation update techniques for custom collectors. [#​989](https://github.com/prometheus/client_golang/issues/989)
- \[ENHANCEMENT] Added exemplar support to `prometheus.NewConstHistogram`. See [`ExampleNewConstHistogram_WithExemplar`](prometheus/examples_test.go#L602) example on how to use it. [#​986](https://github.com/prometheus/client_golang/issues/986)
- \[ENHANCEMENT] Query requests are now retried after network error. [#​1022](https://github.com/prometheus/client_golang/issues/1022)
- \[ENHANCEMENT] `prometheus/push.Pusher` now has context-aware methods that pass context to HTTP requests. [#​1028](https://github.com/prometheus/client_golang/issues/1028)
- \[ENHANCEMENT] `prometheus/push.Pusher` has now `Error` method that retrieve last error. [#​1075](https://github.com/prometheus/client_golang/issues/1075)
- \[ENHANCEMENT] `testutil.GatherAndCompare` provides now readable diff on failed comparisons. [#​998](https://github.com/prometheus/client_golang/issues/998)
- \[ENHANCEMENT] Query API now supports timeouts. [#​1014](https://github.com/prometheus/client_golang/issues/1014)
- \[ENHANCEMENT] New `MetricVec` method `DeletePartialMatch(labels Labels)` for deleting all metrics that match provided labels. [#​1013](https://github.com/prometheus/client_golang/issues/1013)
- \[ENHANCEMENT] `api.Config` now accepts passing custom `*http.Client`. [#​1025](https://github.com/prometheus/client_golang/issues/1025)
- \[BUGFIX] Raise exemplar labels limit from 64 to 128 bytes as specified in OpenMetrics spec. [#​1091](https://github.com/prometheus/client_golang/issues/1091)
- \[BUGFIX] Allow adding exemplar to +Inf bucket to const histograms. [#​1094](https://github.com/prometheus/client_golang/issues/1094)
- \[ENHANCEMENT] Most `promhttp.Instrument*` middlewares now support adding exemplars to metrics. This allows hooking those to your tracing middleware that retrieves trace ID and puts it in exemplar if present. [#​1055](https://github.com/prometheus/client_golang/issues/1055)
- \[ENHANCEMENT] Added `testutil.ScrapeAndCompare` method. [#​1043](https://github.com/prometheus/client_golang/issues/1043)
- \[BUGFIX] Fixed `GopherJS` build support. [#​897](https://github.com/prometheus/client_golang/issues/897)
- \[ENHANCEMENT] :warning: Added way to specify what `runtime/metrics` `collectors.NewGoCollector` should use. See [`ExampleGoCollector_WithAdvancedGoMetrics`](prometheus/collectors/go_collector_latest_test.go#L263). [#​1102](https://github.com/prometheus/client_golang/issues/1102)
#### New Contributors ❤️
- [@​alissa-tung](https://github.com/alissa-tung) made their first contribution in https://github.com/prometheus/client_golang/pull/1000
- [@​wperron](https://github.com/wperron) made their first contribution in https://github.com/prometheus/client_golang/pull/986
- [@​zhijian-pro](https://github.com/zhijian-pro) made their first contribution in https://github.com/prometheus/client_golang/pull/1005
- [@​dohnto](https://github.com/dohnto) made their first contribution in https://github.com/prometheus/client_golang/pull/1021
- [@​tatsuhiro-t](https://github.com/tatsuhiro-t) made their first contribution in https://github.com/prometheus/client_golang/pull/1028
- [@​sourikghosh](https://github.com/sourikghosh) made their first contribution in https://github.com/prometheus/client_golang/pull/998
- [@​josephwoodward](https://github.com/josephwoodward) made their first contribution in https://github.com/prometheus/client_golang/pull/1014
- [@​stone-z](https://github.com/stone-z) made their first contribution in https://github.com/prometheus/client_golang/pull/1013
- [@​yolossn](https://github.com/yolossn) made their first contribution in https://github.com/prometheus/client_golang/pull/1025
- [@​xrstf](https://github.com/xrstf) made their first contribution in https://github.com/prometheus/client_golang/pull/1039
- [@​dependabot](https://github.com/dependabot) made their first contribution in https://github.com/prometheus/client_golang/pull/1051
- [@​sazary](https://github.com/sazary) made their first contribution in https://github.com/prometheus/client_golang/pull/1056
- [@​oiooj](https://github.com/oiooj) made their first contribution in https://github.com/prometheus/client_golang/pull/1075
- [@​fredr](https://github.com/fredr) made their first contribution in https://github.com/prometheus/client_golang/pull/1095
- [@​inosato](https://github.com/inosato) made their first contribution in https://github.com/prometheus/client_golang/pull/1096
- [@​arun-shopify](https://github.com/arun-shopify) made their first contribution in https://github.com/prometheus/client_golang/pull/1094
- [@​paralin](https://github.com/paralin) made their first contribution in https://github.com/prometheus/client_golang/pull/897
<details close>
<summary>Commits</summary>
<br>
- go.mod: Set minimal support version of go to 1.15 by [@​mrueg](https://github.com/mrueg) in https://github.com/prometheus/client_golang/pull/980
- Enable CodeQL Analysis by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/982
- Added Transactional Gatherer allowed cached solutions by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/989
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/992
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1003
- Fix deprecated `NewBuildInfoCollector` API by [@​alissa-tung](https://github.com/alissa-tung) in https://github.com/prometheus/client_golang/pull/1000
- Add exemplar support for const histogram by [@​wperron](https://github.com/wperron) in https://github.com/prometheus/client_golang/pull/986
- Fixed lint warning. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1007
- .circleci: Add config to test against go1.18 by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1006
- When prefix is empty, no more dots should be written by [@​zhijian-pro](https://github.com/zhijian-pro) in https://github.com/prometheus/client_golang/pull/1005
- Add statebot config by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1001
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1009
- Remove workaround for pre go1.15 by [@​johejo](https://github.com/johejo) in https://github.com/prometheus/client_golang/pull/1010
- go.mod: Update dependencies by [@​mrueg](https://github.com/mrueg) in https://github.com/prometheus/client_golang/pull/1018
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1019
- Refactor apiClientImpl.DoGetFallback by [@​dohnto](https://github.com/dohnto) in https://github.com/prometheus/client_golang/pull/1021
- Added info about our slack channel. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1029
- push: Add PushContext and AddContext to Pusher by [@​tatsuhiro-t](https://github.com/tatsuhiro-t) in https://github.com/prometheus/client_golang/pull/1028
- Make Query requests idempotent by [@​dohnto](https://github.com/dohnto) in https://github.com/prometheus/client_golang/pull/1022
- Bump minimum required Go version to 1.16 by [@​mrueg](https://github.com/mrueg) in https://github.com/prometheus/client_golang/pull/10327
- Update query API to support timeouts by [@​josephwoodward](https://github.com/josephwoodward) in https://github.com/prometheus/client_golang/pull/1014
- Implement deletion based on partially matching labels by [@​stone-z](https://github.com/stone-z) in https://github.com/prometheus/client_golang/pull/1013
- Document WithTimeout option for Query/QueryRange by [@​josephwoodward](https://github.com/josephwoodward) in https://github.com/prometheus/client_golang/pull/1037
- client: Allow configuration of http client by [@​yolossn](https://github.com/yolossn) in https://github.com/prometheus/client_golang/pull/1025
- update branch names in a few links by [@​xrstf](https://github.com/xrstf) in https://github.com/prometheus/client_golang/pull/1039
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1045
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1046
- prometheus: Fix convention violating names for generated collector metrics by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1048
- Remove -Inf buckets from go collector histograms by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1049
- Enable dependabot by [@​SuperQ](https://github.com/SuperQ) in https://github.com/prometheus/client_golang/pull/1050
- Bump github.com/prometheus/common from 0.33.0 to 0.34.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1051
- Cut v1.12.2 by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1052
- Update readme after v0.12.2 by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1053
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1061
- Update minimum supported Go version (1.17) by [@​SuperQ](https://github.com/SuperQ) in https://github.com/prometheus/client_golang/pull/1062
- Add GitHub settings by [@​SuperQ](https://github.com/SuperQ) in https://github.com/prometheus/client_golang/pull/1063
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1064
- Enable same linters as the Prometheus repo itself by [@​sazary](https://github.com/sazary) in https://github.com/prometheus/client_golang/pull/1056
- Synchronize common files from prometheus/prometheus by [@​prombot](https://github.com/prombot) in https://github.com/prometheus/client_golang/pull/1068
- Add Error API for pusher by [@​oiooj](https://github.com/oiooj) in https://github.com/prometheus/client_golang/pull/1075
- Bump github.com/prometheus/common from 0.34.0 to 0.35.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1076
- Merge release-1.12 branch back into main by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1079
- Fix version number in VERSION by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1080
- Merging release branch back to main again by [@​beorn7](https://github.com/beorn7) in https://github.com/prometheus/client_golang/pull/1081
- Raise exemplar labels limit from 64 to 128 by [@​bboreham](https://github.com/bboreham) in https://github.com/prometheus/client_golang/pull/1091
- Update documentation for exemplar label limit by [@​fredr](https://github.com/fredr) in https://github.com/prometheus/client_golang/pull/1095
- Bump github.com/prometheus/common from 0.35.0 to 0.37.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1098
- Bump google.golang.org/protobuf from 1.28.0 to 1.28.1 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1099
- Remove ioutil by [@​inosato](https://github.com/inosato) in https://github.com/prometheus/client_golang/pull/1096
- Bump github.com/prometheus/procfs from 0.7.3 to 0.8.0 by [@​dependabot](https://github.com/dependabot) in https://github.com/prometheus/client_golang/pull/1097
- explicitly add +inf bucket in withExemplarsMetric by [@​arun-shopify](https://github.com/arun-shopify) in https://github.com/prometheus/client_golang/pull/1094
- Ensure tests verify request params by [@​josephwoodward](https://github.com/josephwoodward) in https://github.com/prometheus/client_golang/pull/1047
- Fixed support for unordered input of exemplars. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1100
- Added exemplar support to http middleware. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1055
- fix assorted oddities found by golangci-lint by [@​xrstf](https://github.com/xrstf) in https://github.com/prometheus/client_golang/pull/1040
- Generate new Go runtime metrics for go 1.19 by [@​kakkoyun](https://github.com/kakkoyun) in https://github.com/prometheus/client_golang/pull/1105
- testutil: Add ScrapeAndCompare by [@​sazary](https://github.com/sazary) in https://github.com/prometheus/client_golang/pull/1043
- Fix build against GopherJS by [@​paralin](https://github.com/paralin) in https://github.com/prometheus/client_golang/pull/897
- collectors.GoCollector: Added rule support for granular metric configuration. by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1102
- Cut 1.13.0 by [@​bwplotka](https://github.com/bwplotka) in https://github.com/prometheus/client_golang/pull/1110
</details>
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this MR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box
---
This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzMi4xNTkuMCIsInVwZGF0ZWRJblZlciI6IjM3LjE5NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->