Commit graph

13 commits

Author SHA1 Message Date
Ben Blackmore
31f046f416
feat: add destroy() method to PromQLExtension for memory leak prevention
When React components mount/unmount repeatedly, each creating a new
PromQLExtension, memory leaks occur due to LRU caches with ttlAutopurge
timers keeping references alive and in-flight HTTP requests holding
closure references. This adds destroy() methods throughout the class
hierarchy to properly release resources on unmount.

Changes:
- Add destroy() to PrometheusClient interface (optional)
- HTTPPrometheusClient: track AbortControllers and abort pending requests
- Cache: clear all LRU caches and reset cached data
- CachedPrometheusClient: delegate to cache and underlying client
- HybridComplete: delegate to prometheusClient
- CompleteStrategy: add optional destroy() method
- PromQLExtension: delegate to complete strategy

Signed-off-by: Ben Blackmore <ben.blackmore@dash0.com>
2025-12-29 08:27:56 +01:00
Augustin Husson
5d1756c822
Upgrade codemirror and lezer to the latest version (#10841)
* bump codemirror to v0.20.x and lezer to v.0.16.x

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* bump codemirror to v6 and lezer to v1

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* stop treating warning as error for UI

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2022-06-13 17:55:06 +02:00
Augustin Husson
5184f49a2a
put every packages under the prometheus-io organization (#10849)
Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2022-06-13 15:19:07 +02:00
Ivo Gosemann
e22b54e253 Adds day_of_year function to PromQL
Signed-off-by: Ivo Gosemann <ivo.gosemann@sap.com>
2022-05-20 14:08:34 +02:00
Augustin Husson
043a2954f8
UI: stabilize dependencies and environment (#10517)
* create lezer-promql module + move codemirror to a pure esm module + unified dependencies

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* ignore test utils file and remove the type "module" in package.json

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* use jest to run the lezer-promql test

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* give an automatic way to update the ui dependencies

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* update all dependencies using make update-npm-deps

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* fix react-app test

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* remove generated file

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* remove unnecessary backslash in script

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* fix reviews

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* rewording

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* use npx to run lezer-generator

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2022-04-05 11:49:22 +02:00
Julius Volz
f103acd513
Merge pull request #9248 from LeviHarrison/atan2-binary-op
PromQL: Add `atan2` binary operator
2021-09-27 18:45:56 +02:00
Augustin Husson
3e494eac71
upgrade to codemirror v19 (#9363)
* upgrade to codemirror v19

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* fix autocomplete test

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>

* fix wording

Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2021-09-24 21:40:49 +02:00
Levi Harrison
e27ac3e7e4 Add grammar (maybe?)
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-09-23 10:30:46 -04:00
Julius Volz
447d9401fc
Merge pull request #9239 from LeviHarrison/promql-trig-functions
PromQL: Add trigonometric functions
2021-09-16 14:11:40 +02:00
Levi Harrison
ed220c1ae7 Add grammar
Signed-off-by: Levi Harrison <git@leviharrison.dev>
2021-09-15 23:02:25 -04:00
Augustin Husson
e52204e556 fix eslint warning for codemirror-promql
Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2021-09-15 13:38:48 +02:00
Julius Volz
d2c0eac37f Fix linter errors in codemirror-promql module
Signed-off-by: Julius Volz <julius.volz@gmail.com>
2021-09-15 11:48:21 +02:00
Augustin Husson
29b788a7b5 remove app package in codemirror-module
Signed-off-by: Augustin Husson <husson.augustin@gmail.com>
2021-09-09 17:52:03 +02:00
Renamed from web/ui/module/codemirror-promql/src/lang-promql/promql.ts (Browse further)