Skip to content

Releases: CodSpeedHQ/codspeed-rust

v5.0.1

Choose a tag to compare

@github-actions github-actions released this 26 Jun 14:44
v5.0.1
69f74b6

What's Changed

Full Changelog: v5.0.0...v5.0.1

v5.0.0

Choose a tag to compare

@github-actions github-actions released this 23 Jun 12:50
v5.0.0
9339a52

💥 BREAKING

MSRV bumped to 1.85 for all packages: codspeed, codspeed-criterion-compat, codspeed-divan-compat

What's Changed

This release includes a fix for benchmark URI generation when users do not use the provided macros to declare their criterion main function.

  • fix(criterion-compat): fix URI formatting when criterion_group!/criterion_main! are bypassed by @not-matthias in #169
  • Fix lower bound of cc crate by @konstin in #182
  • Update colored dep by @rukai in #142
  • update getrandom to 0.4 by @Ludea in #177

New Contributors

Full Changelog: v4.7.0...v5.0.0

v4.7.0

Choose a tag to compare

@github-actions github-actions released this 23 May 00:10
v4.7.0
99c7b5a

What's Changed

Manual sampling for criterion

Note: ignored under CodSpeed simulation mode (single measured iteration). Only takes effect in walltime mode.

We introduced a new finer control way of defining a criterion benchmark to have full control over how many times your code is ran.
This bypasses criterion's original sampler, which we still recommend using if you do not have specific control needs.

use codspeed_criterion_compat::{criterion_group, criterion_main, Criterion, IterManualOptions};

fn bench_my_function(c: &mut Criterion) {
    c.bench_function("my_function", |b| {
        b.iter_manual_unstable(
            IterManualOptions::new()
                .rounds(5)   // 5 measurement samples, can be lower than criterion's imposed 10
                .iters(1000)  // 1000 calls per sample
                .warmup(5),   // 5 unmeasured warmup iterations
            || my_function(),
        );
    });
}

criterion_group!(benches, bench_my_function);
criterion_main!(benches);

Please note that this API is still under development and may change with future releases.

Full Changelog: v4.6.0...v4.7.0

v4.6.0

Choose a tag to compare

@github-actions github-actions released this 28 Apr 13:20
v4.6.0
0c6ccae

What's Changed

This release adds first support for macOS walltime.

Please note that profiling and other instruments are not yet available on macOS and will come in a later update.

Full Changelog: v4.5.0...v4.6.0

v4.5.0

Choose a tag to compare

@github-actions github-actions released this 17 Apr 09:59
v4.5.0
2b09043

What's Changed

We now collect buildtime and runtime environment data to warn users about differences in their runtime environment when comparing two runs against one another.

This data includes toolchain metadata like version and build options, as well as a list of dynamically loaded linked libraries.

Full Changelog: v4.4.1...v4.5.0

v4.4.1

Choose a tag to compare

@github-actions github-actions released this 16 Mar 12:33
v4.4.1
dccf5f4

What's changed

Full Changelog: v4.4.0...v4.4.1

v4.4.0

Choose a tag to compare

@github-actions github-actions released this 12 Mar 09:46
v4.4.0
163ca0d

What's Changed

New Contributors

Full Changelog: v4.3.0...v4.4.0

v4.3.0

Choose a tag to compare

@github-actions github-actions released this 21 Jan 13:01
a8754dd

What's Changed

Full Changelog: v4.2.1...v4.3.0

v4.2.1

Choose a tag to compare

@github-actions github-actions released this 07 Jan 17:25
0afd168

What's Changed

Full Changelog: v4.2.0...v4.2.1

v4.2.0

Choose a tag to compare

@github-actions github-actions released this 23 Dec 08:37
3731cf2

What's Changed

Full Changelog: v4.1.0...v4.2.0