Commit Graph

237 Commits (975d5d7357a220192fe1307b10ded9b35130ab1c)

Author SHA1 Message Date
Jan Fajerski d541b3bbeb prepare release 3.0.0
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
2024-11-13 15:41:05 +01:00
Jan Fajerski 60489308a1 Prepare v3.0.0-rc.1
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
2024-11-11 22:32:26 +00:00
Julius Volz d19e749dc6 Fix selector / series formatting for empty metric names
Fixes https://github.com/prometheus/prometheus/issues/15335

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-11-05 16:29:40 +01:00
Jan Fajerski 1ac3ca9528 Release 3.0.0-rc.0
Signed-off-by: Jan Fajerski <jfajersk@redhat.com>
2024-11-04 14:19:32 +01:00
Julius Volz 76ca7d08d9 Fixup: re-add erroneously removed lines
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-30 16:43:10 +01:00
Julius Volz c861b31b72 Support UTF-8 metric names and labels in web UI
Fixes most of https://github.com/prometheus/prometheus/issues/15202

This should address all areas of the UI except for the autocompletion in the
codemirror-promql text editor. The strategy here is that any time we print or
internally serialize (like for the PromLens tree view) either a metric name or
a label name as part of a selector or in other relevant parts of PromQL, we
check whether it contains characters beyond what was previously supported, and
if so, quote and escape it. In the case of metric names, we also have to move
them from the beginning of the selector into the curly braces.

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-29 20:22:52 +01:00
Bryan Boreham 9623681543 Prepare 3.0.0-beta.1
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-10-08 17:27:10 +01:00
Julius Volz 3d2194f561 Style cleanups, mostly for web notifications and startup alert
Some of the changes are a bit unreadable because the previous files were not
saved with the project's linter / auto-formatter settings applied. But it's
basically:

* For icons that are not Mantine-native components, use the rem() function
  for computing their size, so they scale correctly with the root font size.
  See https://mantine.dev/styles/rem/.
* Try a different icon for the notifications tray, since the bell icon was
  already used for Prometheus alerts. Other candidates from
  https://tabler.io/icons would be IconExclamationCircle or
  IconDeviceDesktopExclamation or IconMessageCircleExclamation.
* The server startup alert looked a bit cramped, introduced a Stack to add
  spacing between the text and the progress bar.
* Added a bit of spacing between notification text and date. Things looked
  cramped. To make things look ok with that, I also top-aligned the
  notification text and icon.

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-04 14:14:45 +02:00
Julius Volz bcd9ce1d43
Merge pull request #15061 from prometheus/dependabot/npm_and_yarn/web/ui/postcss-8.4.47
Bump postcss from 8.4.44 to 8.4.47 in /web/ui
2024-10-02 08:24:41 +02:00
Julius Volz 4edbe3f70a
Merge pull request #15055 from prometheus/dependabot/npm_and_yarn/web/ui/globals-15.10.0
Bump globals from 15.9.0 to 15.10.0 in /web/ui
2024-10-02 08:24:24 +02:00
Julius Volz d3b0ab453c Fix tabler icon props import after version bump
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-10-02 08:05:20 +02:00
dependabot[bot] 4f448d4c4c
Bump @tabler/icons-react from 2.47.0 to 3.19.0 in /web/ui
Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 2.47.0 to 3.19.0.
- [Release notes](https://github.com/tabler/tabler-icons/releases)
- [Commits](https://github.com/tabler/tabler-icons/commits/v3.19.0/packages/icons-react)

---
updated-dependencies:
- dependency-name: "@tabler/icons-react"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:56:23 +00:00
dependabot[bot] c0a0520b54
Bump globals from 15.9.0 to 15.10.0 in /web/ui
Bumps [globals](https://github.com/sindresorhus/globals) from 15.9.0 to 15.10.0.
- [Release notes](https://github.com/sindresorhus/globals/releases)
- [Commits](https://github.com/sindresorhus/globals/compare/v15.9.0...v15.10.0)

---
updated-dependencies:
- dependency-name: globals
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:55:37 +00:00
Julius Volz e32dbeb384
Merge pull request #15056 from prometheus/dependabot/npm_and_yarn/web/ui/eslint-9.11.1
Bump eslint from 9.9.1 to 9.11.1 in /web/ui
2024-10-02 07:54:54 +02:00
Julius Volz 9c0fe8e452
Merge pull request #15057 from prometheus/dependabot/npm_and_yarn/web/ui/codemirror/autocomplete-6.18.1
Bump @codemirror/autocomplete from 6.18.0 to 6.18.1 in /web/ui
2024-10-02 07:54:37 +02:00
dependabot[bot] 98cf5942ae
Bump postcss from 8.4.44 to 8.4.47 in /web/ui
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.44 to 8.4.47.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.44...8.4.47)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:07:46 +00:00
dependabot[bot] ab808f6e64
Bump eslint from 9.9.1 to 9.11.1 in /web/ui
Bumps [eslint](https://github.com/eslint/eslint) from 9.9.1 to 9.11.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.9.1...v9.11.1)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 05:07:01 +00:00
Julius Volz 05668c5928
Merge pull request #15059 from prometheus/dependabot/npm_and_yarn/web/ui/vite-5.4.8
Bump vite from 5.4.2 to 5.4.8 in /web/ui
2024-10-02 07:06:39 +02:00
Julius Volz 26058254a4
Merge pull request #15062 from prometheus/dependabot/npm_and_yarn/web/ui/eslint/js-9.11.1
Bump @eslint/js from 9.9.1 to 9.11.1 in /web/ui
2024-10-02 07:05:53 +02:00
Julius Volz cb895264a1
Merge pull request #15060 from prometheus/dependabot/npm_and_yarn/web/ui/mantine/code-highlight-7.13.1
Bump @mantine/code-highlight from 7.12.2 to 7.13.1 in /web/ui
2024-10-02 07:05:29 +02:00
Julius Volz 6685222252
Merge pull request #15054 from prometheus/dependabot/npm_and_yarn/web/ui/tanstack/react-query-5.59.0
Bump @tanstack/react-query from 5.53.2 to 5.59.0 in /web/ui
2024-10-02 07:05:05 +02:00
Julius Volz 889588317e
Merge pull request #15053 from prometheus/dependabot/npm_and_yarn/web/ui/mantine/notifications-7.13.1
Bump @mantine/notifications from 7.12.2 to 7.13.1 in /web/ui
2024-10-02 07:04:38 +02:00
Julius Volz 1b856bbe80
Merge pull request #15037 from prometheus/dependabot/npm_and_yarn/web/ui/jsdom-25.0.1
Bump jsdom from 25.0.0 to 25.0.1 in /web/ui
2024-10-02 06:49:36 +02:00
dependabot[bot] 4782b75d11
Bump @codemirror/autocomplete from 6.18.0 to 6.18.1 in /web/ui
Bumps [@codemirror/autocomplete](https://github.com/codemirror/autocomplete) from 6.18.0 to 6.18.1.
- [Changelog](https://github.com/codemirror/autocomplete/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/autocomplete/compare/6.18.0...6.18.1)

---
updated-dependencies:
- dependency-name: "@codemirror/autocomplete"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:48:12 +00:00
Julius Volz 45efd01768
Merge pull request #15052 from prometheus/dependabot/npm_and_yarn/web/ui/uiw/react-codemirror-4.23.3
Bump @uiw/react-codemirror from 4.23.1 to 4.23.3 in /web/ui
2024-10-02 06:47:02 +02:00
Julius Volz 72a0d2cb3f
Merge pull request #15047 from prometheus/dependabot/npm_and_yarn/web/ui/codemirror/view-6.34.1
Bump @codemirror/view from 6.33.0 to 6.34.1 in /web/ui
2024-10-02 06:23:40 +02:00
dependabot[bot] 1e18e5c661
Bump vite from 5.4.2 to 5.4.8 in /web/ui
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.2 to 5.4.8.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.8/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.8/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:13:57 +00:00
dependabot[bot] 0e2623910f
Bump jsdom from 25.0.0 to 25.0.1 in /web/ui
Bumps [jsdom](https://github.com/jsdom/jsdom) from 25.0.0 to 25.0.1.
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md)
- [Commits](https://github.com/jsdom/jsdom/compare/25.0.0...25.0.1)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:13:09 +00:00
Julius Volz 357e64dbe9
Merge pull request #15050 from prometheus/dependabot/npm_and_yarn/web/ui/eslint-plugin-react-refresh-0.4.12
Bump eslint-plugin-react-refresh from 0.4.11 to 0.4.12 in /web/ui
2024-10-02 06:12:06 +02:00
dependabot[bot] 1da185244e
Bump @tanstack/react-query from 5.53.2 to 5.59.0 in /web/ui
Bumps [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query) from 5.53.2 to 5.59.0.
- [Release notes](https://github.com/TanStack/query/releases)
- [Commits](https://github.com/TanStack/query/commits/v5.59.0/packages/react-query)

---
updated-dependencies:
- dependency-name: "@tanstack/react-query"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:09:28 +00:00
dependabot[bot] f24e2109ad
Bump @uiw/react-codemirror from 4.23.1 to 4.23.3 in /web/ui
Bumps [@uiw/react-codemirror](https://github.com/uiwjs/react-codemirror) from 4.23.1 to 4.23.3.
- [Release notes](https://github.com/uiwjs/react-codemirror/releases)
- [Commits](https://github.com/uiwjs/react-codemirror/compare/v4.23.1...v4.23.3)

---
updated-dependencies:
- dependency-name: "@uiw/react-codemirror"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:09:11 +00:00
Julius Volz c43da57a21
Merge pull request #15051 from prometheus/dependabot/npm_and_yarn/web/ui/types/lodash-4.17.9
Bump @types/lodash from 4.17.7 to 4.17.9 in /web/ui
2024-10-02 06:08:21 +02:00
dependabot[bot] bcaf1084e6
Bump @mantine/code-highlight from 7.12.2 to 7.13.1 in /web/ui
Bumps [@mantine/code-highlight](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/code-highlight) from 7.12.2 to 7.13.1.
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/7.13.1/packages/@mantine/code-highlight)

---
updated-dependencies:
- dependency-name: "@mantine/code-highlight"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:03:48 +00:00
dependabot[bot] 6d4de28918
Bump @mantine/notifications from 7.12.2 to 7.13.1 in /web/ui
Bumps [@mantine/notifications](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/notifications) from 7.12.2 to 7.13.1.
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/7.13.1/packages/@mantine/notifications)

---
updated-dependencies:
- dependency-name: "@mantine/notifications"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-02 04:03:42 +00:00
Julius Volz 885138861e
Merge pull request #15041 from prometheus/dependabot/npm_and_yarn/web/ui/vitest-2.1.1
Bump vitest from 2.0.5 to 2.1.1 in /web/ui
2024-10-02 06:03:18 +02:00
Julius Volz f1f63a19a4
Merge pull request #15044 from prometheus/dependabot/npm_and_yarn/web/ui/react-router-dom-6.26.2
Bump react-router-dom from 6.26.1 to 6.26.2 in /web/ui
2024-10-02 06:02:47 +02:00
dependabot[bot] 8d9850b7ff
Bump @eslint/js from 9.9.1 to 9.11.1 in /web/ui
Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.9.1 to 9.11.1.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/commits/v9.11.1/packages/js)

---
updated-dependencies:
- dependency-name: "@eslint/js"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:21:30 +00:00
dependabot[bot] 50ccf5cfd7
Bump @types/lodash from 4.17.7 to 4.17.9 in /web/ui
Bumps [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) from 4.17.7 to 4.17.9.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)

---
updated-dependencies:
- dependency-name: "@types/lodash"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:19:11 +00:00
dependabot[bot] 8f64d9144b
Bump eslint-plugin-react-refresh from 0.4.11 to 0.4.12 in /web/ui
Bumps [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) from 0.4.11 to 0.4.12.
- [Release notes](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases)
- [Changelog](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.4.11...v0.4.12)

---
updated-dependencies:
- dependency-name: eslint-plugin-react-refresh
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:19:00 +00:00
dependabot[bot] cbb4ed0c3b
Bump @mantine/dates from 7.12.2 to 7.13.1 in /web/ui
Bumps [@mantine/dates](https://github.com/mantinedev/mantine/tree/HEAD/packages/@mantine/dates) from 7.12.2 to 7.13.1.
- [Release notes](https://github.com/mantinedev/mantine/releases)
- [Changelog](https://github.com/mantinedev/mantine/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mantinedev/mantine/commits/7.13.1/packages/@mantine/dates)

---
updated-dependencies:
- dependency-name: "@mantine/dates"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:18:37 +00:00
dependabot[bot] 8907583524
Bump @codemirror/view from 6.33.0 to 6.34.1 in /web/ui
Bumps [@codemirror/view](https://github.com/codemirror/view) from 6.33.0 to 6.34.1.
- [Changelog](https://github.com/codemirror/view/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/view/compare/6.33.0...6.34.1)

---
updated-dependencies:
- dependency-name: "@codemirror/view"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:18:22 +00:00
dependabot[bot] a425dbfa72
Bump react-router-dom from 6.26.1 to 6.26.2 in /web/ui
Bumps [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) from 6.26.1 to 6.26.2.
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@6.26.2/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router-dom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:18:11 +00:00
dependabot[bot] bb0382fbaf
Bump vitest from 2.0.5 to 2.1.1 in /web/ui
Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 2.0.5 to 2.1.1.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v2.1.1/packages/vitest)

---
updated-dependencies:
- dependency-name: vitest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-01 23:17:56 +00:00
Julius Volz b826c43987
Calculate path prefix directly in initial settings Redux value (#14981)
Without this, the page that is shown first renders once with an empty path
prefix value, since the settings update takes a render cycle to complete.
However, we only fetch certain data from the API exactly once for a given
page, and not for every re-render with changed path prefix value (and we
also wouldn't want to fetch it from the wrong location initially).

This duplicates the served endpoint list once more, but exporting them from
App.tsx would also have been dirty (hot reload only works when a file only
exports one component and nothing else, thus there'd be a linter warning).

Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-30 14:22:40 +02:00
Julien e34563bfe0 Retry SSE connection unless max clients have been reached.
This switches from the prehistoric EventSource API to the more modern
fetch-event-source package. That packages gives us full control over the
retries.

It also gives us the opportunity to close the event source when the
browser tab is hidden, saving resources.

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-27 16:18:33 +02:00
Julien f9bbad1148 Limit the number of SSE Subscribers to 16 by default
Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-27 15:51:51 +02:00
Julien 7aa4721373
Merge pull request #14946 from roidelapluie/notifications
Add notifications to the Web UI
2024-09-27 15:50:43 +02:00
Julien 6cde0096e2 Add notifications to the web UI when configuration reload fails.
This commit introduces a new `/api/v1/notifications/live` endpoint that
utilizes Server-Sent Events (SSE) to stream notifications to the web UI.
This is used to display alerts such as when a configuration reload
has failed.

I opted for SSE over WebSockets because SSE is simpler to implement and
more robust for our use case. Since we only need one-way communication
from the server to the client, SSE fits perfectly without the overhead
of establishing and maintaining a two-way WebSocket connection.

When the SSE connection fails, we go back to a classic
/api/v1/notifications API endpoint.

This commit also contains the required UI changes for the new Mantine UI.

Signed-off-by: Julien <roidelapluie@o11y.eu>
2024-09-27 15:28:38 +02:00
Julius Volz fcbd18dabb Remove Query page alert close buttons that don't do anything
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2024-09-25 18:27:27 +02:00
Jesus Vazquez cb4bc5e786
UI: Make mantime UI assets relative
Signed-off-by: Jesus Vazquez <jesusvzpg@gmail.com>
2024-09-24 15:30:54 +02:00