talex5 · GitHub

talex5

avsm added a commit to avsm/prometheus that referenced this pull request

Aug 6, 2026
Introduce the `prometheus-lwt` package with the API that the core will keep
once its Lwt dependency is removed (mirage#60 mirage#65), but implemented for now via Lwt
support still present in `prometheus`.
Therefore nothing breaks in this release as existing users can migrate to
`Prometheus_lwt` and also to the new synchronous `_fn` functions at their own
pace. The actual interface break will then happen in a later release without
further source changes for migrated Lwt users.
Also add synchronous variants of the timing helpers to the core since the
existing Lwt-typed functions occupy the unsuffixed names until the break.
Suggested by @talex5 in mirage#65.
Co-authored-by: Mark Elvers <mark.elvers@tunbury.org>

avsm added a commit to avsm/prometheus that referenced this pull request

Aug 6, 2026
Introduce the `prometheus-lwt` package with the API that the core will keep
once its Lwt dependency is removed (mirage#60 mirage#65), but implemented for now via Lwt
support still present in `prometheus`.
Therefore nothing breaks in this release as existing users can migrate to
`Prometheus_lwt` and also to the new synchronous `_fn` functions at their own
pace. The actual interface break will then happen in a later release without
further source changes for migrated Lwt users.
Also add synchronous variants of the timing helpers to the core since the
existing Lwt-typed functions occupy the unsuffixed names until the break.
Suggested by @talex5 in mirage#65.
Co-authored-by: Mark Elvers <mark.elvers@tunbury.org>

avsm added a commit to avsm/prometheus that referenced this pull request

Aug 6, 2026
Introduce the `prometheus-lwt` package with the API that the core will keep
once its Lwt dependency is removed (mirage#60 mirage#65), but implemented for now via Lwt
support still present in `prometheus`.
Therefore nothing breaks in this release as existing users can migrate to
`Prometheus_lwt` and also to the new synchronous `_fn` functions at their own
pace. The actual interface break will then happen in a later release without
further source changes for migrated Lwt users.
Also add synchronous variants of the timing helpers to the core since the
existing Lwt-typed functions occupy the unsuffixed names until the break.
Suggested by @talex5 in mirage#65.
Co-authored-by: Mark Elvers <mark.elvers@tunbury.org>

@avsm avsm mentioned this pull request

Aug 6, 2026

Merged

@avsm

talex5 added a commit to avsm/prometheus that referenced this pull request

Aug 6, 2026
Introduce the `prometheus-lwt` package with the API that the core will keep
once its Lwt dependency is removed (mirage#60 mirage#65), but implemented for now via Lwt
support still present in `prometheus`.
Therefore nothing breaks in this release as existing users can migrate to
`Prometheus_lwt` and also to the new synchronous functions at their own
pace. The actual interface break will then happen in a later release without
further source changes for migrated Lwt users.
Also add synchronous variants of the timing helpers to the core since the
existing Lwt-typed functions occupy the unsuffixed names until the break.
Suggested by @talex5 in mirage#65.
Co-authored-by: Mark Elvers <mark.elvers@tunbury.org>
Co-authored-by: Thomas Leonard <talex5@gmail.com>

@avsm

Merged

Complete the migration started in mirage#66 mirage#67 mirage#68 mirage#69 so core no longer
depends on Lwt.
Libraries that only define and record metrics no longer need
to pull in a concurrency library.
Review suggestions from @talex5.
Co-authored-by: Mark Elvers <mark.elvers@tunbury.org>

@avsm

Read the original on github.com ↗