Skip to content

chore(deps-dev): bump lefthook from 1.13.6 to 2.0.0#188

Merged
cb1kenobi merged 2 commits intomainfrom
dependabot/npm_and_yarn/lefthook-2.0.0
Oct 21, 2025
Merged

chore(deps-dev): bump lefthook from 1.13.6 to 2.0.0#188
cb1kenobi merged 2 commits intomainfrom
dependabot/npm_and_yarn/lefthook-2.0.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Oct 21, 2025

Bumps lefthook from 1.13.6 to 2.0.0.

Release notes

Sourced from lefthook's releases.

v2.0.0

Changelog

  • c7ae2cf638cbf1e6f72454b80c633be84af63a83 feat: use sh as command executor on Windows (#1166)
  • 25948ab1ae9b6cb5e16cff65fbb025071c577097 fix: accept --fail-on-changes=false as override value (#1168)
  • 21d607caebaff8b136f43810e4832d214df3e16a refactor!: drop deprecated skip_output option (#1159)
  • 56264b2026033d70ec96903c5ce2dbdccaebce9d refactor!: drop support for exclude regexp (#1162)
  • 32a6a397682d0177c048c47488fa95ea725326da refactor!: use another cli framework (#1155)
Changelog

Sourced from lefthook's changelog.

2.0.0 (2025-10-20)

Breaking changes

  • exclude option no longer accepts regexp, only globs.
  • skip_output option is dropped, use output instead.
  • Some CLI arguments have changed their names to make it more consistent. See lefthook run -h for details.
  • for only and skip options with - run: '...' values the command executer was changed to Bourne Shell.

Commits

  • fix: accept --fail-on-changes=false as override value (#1168) by @​mrexox
  • feat: [breaking] use sh as command executor on Windows (#1166) by @​mrexox
  • refactor: [breaking] drop support for exclude regexp (#1162) by @​mrexox
  • refactor: [breaking] drop deprecated skip_output option (#1159) by @​mrexox
  • refactor: [breaking] use another cli framework (#1155) by @​mrexox
Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [lefthook](https://github.com/evilmartians/lefthook) from 1.13.6 to 2.0.0.
- [Release notes](https://github.com/evilmartians/lefthook/releases)
- [Changelog](https://github.com/evilmartians/lefthook/blob/master/CHANGELOG.md)
- [Commits](evilmartians/lefthook@v1.13.6...v2.0.0)

---
updated-dependencies:
- dependency-name: lefthook
  dependency-version: 2.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added automated dependencies Pull requests that update a dependency file labels Oct 21, 2025
@github-actions
Copy link
Copy Markdown
Contributor

📊 Benchmark Results

encoding.bench.ts

Key encoding > ordered-binary keys - strings (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 24.74K ops/sec 40.43 35.47 447.027 1.18 12,369
🥈 rocksdb 2 4.67K ops/sec 214.086 199.086 1,541.249 0.873 2,336

Key encoding > ordered-binary keys - numbers (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 27.28K ops/sec 36.65 32.97 516.876 0.907 13,642
🥈 rocksdb 2 5.00K ops/sec 199.893 189.738 634.047 0.361 2,502

Key encoding > ordered-binary keys - mixed types (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 24.08K ops/sec 41.52 36.50 456.529 1.03 12,043
🥈 rocksdb 2 4.82K ops/sec 207.304 196.272 674.752 0.386 2,412

Value encoding > msgpack values - strings (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 16.36K ops/sec 61.13 54.83 961.39 1.19 8,180
🥈 rocksdb 2 4.32K ops/sec 231.465 219.566 926.902 0.485 2,161

Value encoding > msgpack values - numbers (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 25.08K ops/sec 39.88 35.49 390.525 0.909 12,539
🥈 rocksdb 2 4.61K ops/sec 216.843 196.769 3,828.073 1.76 2,306

Value encoding > msgpack values - arrays (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 9.33K ops/sec 107.182 96.04 1,147.26 1.50 4,665
🥈 rocksdb 2 3.55K ops/sec 281.445 265.366 967.711 0.550 1,777

Value encoding > msgpack values - small objects (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 5.90K ops/sec 169.608 152.565 1,129.267 1.77 2,948
🥈 rocksdb 2 2.59K ops/sec 386.047 361.854 768.252 0.623 1,296

Value encoding > msgpack values - large objects (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 631.86 ops/sec 1,582.633 1,445.887 8,227.106 3.62 316
🥈 rocksdb 2 599.90 ops/sec 1,666.953 1,472.746 4,043.35 2.42 300

get-sync.bench.ts

getSync() > random keys - small key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 20.11K ops/sec 49.74 42.68 2,475.785 1.54 10,053
🥈 rocksdb 2 4.43K ops/sec 225.691 193.828 10,608.7 6.08 2,216

get.bench.ts

get() > rocksdb - random vs sequential keys (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 sequential 1 3.91K ops/sec 255.481 240.323 1,152.252 0.634 1,958
🥈 random 2 3.76K ops/sec 266.014 248.389 1,140.59 0.735 1,880

get() > random keys - max 1978 lmdb key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.96K ops/sec 338.382 304.59 2,298.635 2.07 1,478

get() > rocksdb - async vs sync

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 sync 1 4.15K ops/sec 241.247 222.333 3,412.05 1.52 2,073
🥈 async 2 3.57K ops/sec 279.891 263.375 1,028.603 0.474 1,787

put-sync.bench.ts

putSync() > random keys - insert - small key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.16K ops/sec 461.983 441.85 616.404 0.243 1,083
🥈 lmdb 2 4.24 ops/sec 235,941.991 227,178.146 258,396.395 2.52 10.00

putSync() > random keys - update - small key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.23K ops/sec 448.326 429.197 680.613 0.187 1,116
🥈 lmdb 2 4.16 ops/sec 240,567.325 231,877.788 258,632.651 3.28 10.00

putSync() > random keys - insert - max 1978 lmdb key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 1.02K ops/sec 976.881 873.139 1,236.862 0.468 512
🥈 lmdb 2 3.91 ops/sec 255,535.172 245,699.651 276,829.347 2.74 10.00

putSync() > random keys - update - max 1978 lmdb key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 1.03K ops/sec 974.097 895.943 1,264.292 0.453 514
🥈 lmdb 2 3.98 ops/sec 251,327.077 225,298.661 271,940.008 3.56 10.00

putSync() > sequential keys - insert (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.15K ops/sec 464.913 420.997 2,728.102 0.914 1,076
🥈 lmdb 2 4.14 ops/sec 241,622.746 234,430.807 260,034.173 2.65 10.00

putSync() > put 100KB value (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 51.51 ops/sec 19,414.615 17,873.204 21,071.378 2.16 26.00
🥈 lmdb 2 2.80 ops/sec 356,619.988 298,341.305 384,562.839 6.05 10.00

putSync() > put 1MB value (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 5.19 ops/sec 192,509.833 183,041.593 206,703.887 2.84 10.00
🥈 lmdb 2 1.73 ops/sec 576,380.087 535,355.504 625,990.994 3.92 10.00

putSync() > get 10MB value (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 0.27 ops/sec 3,688,222.694 2,879,752.53 4,150,248.207 9.00 10.00
🥈 rocksdb 2 0.13 ops/sec 7,473,639.212 4,230,690.674 11,220,815.413 21.23 10.00

put.bench.ts

put > small dataset (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 1.98K ops/sec 505.954 486.021 1,320.925 0.486 989
🥈 lmdb 2 3.73 ops/sec 268,368.497 261,004.762 287,367.309 2.64 10.00

put > async vs sync overhead

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 sync 1 2.19K ops/sec 457.638 427.358 624.57 0.180 1,093
🥈 async 2 2.01K ops/sec 497.789 473.423 832.076 0.257 1,005

ranges.bench.ts

getRange() > small range (100 records, 50 range)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 23.34K ops/sec 42.84 37.54 739.277 1.09 11,671
🥈 rocksdb 2 2.92K ops/sec 342.876 297.291 2,116.451 2.59 1,459

getRange() > full scan vs range scan

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb range scan 1 21.73K ops/sec 46.03 39.76 629.764 1.15 10,864
🥈 lmdb full scan 2 12.00K ops/sec 83.32 75.35 763.914 1.42 6,001
🥉 rocksdb range scan 3 2.91K ops/sec 343.851 300.415 1,788.896 1.86 1,455
rocksdb full scan 4 1.60K ops/sec 626.119 554.693 3,610.866 2.88 799

getKeys() > keys only (100 records, 50 range)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 51.78K ops/sec 19.31 16.74 7,541.184 3.53 25,889
🥈 rocksdb 2 4.55K ops/sec 219.722 193.93 1,177.875 1.08 2,276

Reverse iteration > reverse range (100 records, 50 range)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 517.42K ops/sec 1.93 1.23 6,224.823 7.70 258,708
🥈 rocksdb 2 2.77K ops/sec 360.692 322.001 1,385.512 1.51 1,387

Reverse iteration > rocksdb - reverse vs forward

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 forward 1 3.03K ops/sec 329.766 296.533 5,506.735 2.57 1,518
🥈 reverse 2 2.82K ops/sec 354.169 324.662 1,375.062 1.53 1,412

Range query patterns > prefix scan performance

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 32.88K ops/sec 30.41 28.69 1,224.924 0.970 16,441
🥈 rocksdb 2 3.21K ops/sec 311.808 283.043 1,420.845 1.59 1,604

Sparse data patterns > sparse - range over gaps

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 57.66K ops/sec 17.34 14.94 2,326.291 1.50 28,832
🥈 rocksdb 2 5.87K ops/sec 170.3 152.32 1,148.257 1.14 2,937

Sparse data patterns > sparse - prefix with gaps

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 123.87K ops/sec 8.07 6.82 2,721.302 2.52 61,936
🥈 rocksdb 2 12.06K ops/sec 82.91 73.23 2,664.733 1.31 6,031

remove-sync.bench.ts

removeSync() > random keys - small key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 12.78K ops/sec 78.23 67.09 885.048 1.73 6,392
🥈 rocksdb 2 2.53K ops/sec 395.146 371.476 640.725 0.389 1,266

removeSync() > sequential keys - small key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 12.96K ops/sec 77.18 67.40 741.872 1.36 6,479
🥈 rocksdb 2 2.55K ops/sec 392.707 369.285 573.72 0.156 1,274

removeSync() > rocksdb - random vs sequential keys (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 sequential 1 2.55K ops/sec 391.87 363.579 589.293 0.220 1,276
🥈 random 2 2.52K ops/sec 396.565 373.967 553.484 0.159 1,261

removeSync() > random keys - max 1978 lmdb key size (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 8.71K ops/sec 114.785 85.43 1,740.872 2.96 4,356
🥈 rocksdb 2 1.06K ops/sec 944.219 835.212 1,226.909 0.446 530

removeSync() > random access pattern (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 11.88K ops/sec 84.20 72.54 713.837 1.38 5,939
🥈 rocksdb 2 2.54K ops/sec 393.658 371.447 540.817 0.253 1,271

removeSync() > non-existent keys (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 13.04K ops/sec 76.68 71.42 396.557 0.265 6,521
🥈 rocksdb 2 2.57K ops/sec 389.236 366.412 532.94 0.180 1,285

transaction-sync.bench.ts

transaction sync > optimistic > simple put operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 572.85 ops/sec 1,745.646 1,650.831 4,750.84 1.67 287
🥈 lmdb 2 4.14 ops/sec 241,660.14 231,571.381 260,914.626 2.98 10.00

transaction sync > optimistic > batch operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.86K ops/sec 349.173 312.36 1,884.642 0.652 1,432
🥈 lmdb 2 333.06 ops/sec 3,002.435 2,076.638 8,569.194 4.21 167

transaction sync > optimistic > read-write operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 350.07 ops/sec 2,856.532 2,582.306 5,106.202 1.81 176
🥈 lmdb 2 4.18 ops/sec 239,152.941 232,342.415 277,864.576 4.10 10.00

transaction sync > optimistic > concurrent non-conflicting operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 551.79 ops/sec 1,812.281 1,734.553 3,340.996 0.990 276
🥈 lmdb 2 4.29 ops/sec 232,923.719 213,518.311 257,764.426 4.27 10.00

transaction sync > optimistic > rollback operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 16.36K ops/sec 61.14 58.31 363.243 0.382 8,179
🥈 rocksdb 2 5.59K ops/sec 178.948 171.439 775.693 0.295 2,795

transaction sync > optimistic > rocksdb - large transaction vs many small

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.93K ops/sec 341.627 305.586 480.851 0.221 1,464
🥈 rocksdb 2 579.12 ops/sec 1,726.769 1,672.667 3,913.641 0.906 290

transaction sync > optimistic > lmdb - large transaction vs many small

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 364.09 ops/sec 2,746.602 2,089.319 3,201.218 1.12 183
🥈 lmdb 2 4.28 ops/sec 233,626.542 228,618.64 238,191.178 0.944 10.00

transaction sync > optimistic > empty transaction overhead

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 803.13K ops/sec 1.25 1.09 1,769.759 0.838 401,564
🥈 rocksdb 2 93.75K ops/sec 10.67 9.60 2,181.887 1.14 46,877

transaction sync > optimistic > transaction with only reads (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 1.54K ops/sec 649.522 590.743 4,244.491 3.36 770
🥈 rocksdb 2 252.85 ops/sec 3,954.843 3,679.407 12,186.058 4.20 127

transaction sync > pessimistic > simple put operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 498.82 ops/sec 2,004.734 1,940.892 6,536.376 1.79 250
🥈 lmdb 2 4.31 ops/sec 232,082.068 227,314.807 238,227.111 1.03 10.00

transaction.bench.ts

transaction > optimistic > simple put operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 300.73 ops/sec 3,325.242 2,750.197 5,803.474 3.00 151
🥈 lmdb 2 3.09 ops/sec 323,866.914 276,205.497 654,898.498 25.80 10.00

transaction > optimistic > batch operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 1.87K ops/sec 535.336 472.079 659.084 0.304 934
🥈 lmdb 2 299.64 ops/sec 3,337.305 2,310.097 6,461.515 1.96 150

transaction > optimistic > read-write operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 224.71 ops/sec 4,450.084 3,788.841 11,610.19 4.17 113
🥈 lmdb 2 3.48 ops/sec 287,643.911 271,054.056 298,493.643 1.95 10.00

transaction > optimistic > concurrent non-conflicting operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 959.46 ops/sec 1,042.258 940.424 3,710.453 3.25 480
🥈 lmdb 2 300.21 ops/sec 3,331.019 2,080.739 6,497.91 4.15 151

transaction > optimistic > rollback operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 4.77K ops/sec 209.425 192.46 756.25 0.458 2,388
🥈 lmdb 2 315.60 ops/sec 3,168.554 2,069.614 5,629.771 2.24 158

transaction > optimistic > rocksdb - large transaction vs many small

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 2.23K ops/sec 448.157 385.027 717.863 0.296 1,116
🥈 rocksdb 2 148.85 ops/sec 6,718.295 5,853.532 10,012.539 1.44 75.00

transaction > optimistic > lmdb - large transaction vs many small

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 277.87 ops/sec 3,598.757 3,199.482 9,635.125 4.12 139
🥈 lmdb 2 3.52 ops/sec 284,298.608 275,666.228 306,389.405 2.09 10.00

transaction > optimistic > empty transaction overhead

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 44.94K ops/sec 22.25 15.55 368.015 0.351 22,472
🥈 rocksdb 2 39.03K ops/sec 25.62 19.88 4,283.068 2.70 19,518

transaction > optimistic > transaction with only reads (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 347.93 ops/sec 2,874.118 2,527.627 21,576.642 8.61 174
🥈 rocksdb 2 187.31 ops/sec 5,338.719 4,905.437 13,110.245 4.51 94.00

transaction > pessimistic > simple put operations (100 records)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 135.62 ops/sec 7,373.525 3,648.112 18,542.571 18.39 68.00
🥈 lmdb 2 3.80 ops/sec 263,314.77 204,987.782 298,100.928 6.88 10.00

worker-get-sync.bench.ts

Worker > random keys - small key size (100 records, 1 worker)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 14.85K ops/sec 67.33 59.06 6,730.237 3.08 7,426
🥈 rocksdb 2 3.57K ops/sec 280.175 234.539 1,388.276 0.987 1,785

Worker > random keys - small key size (100 records, 2 workers)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 14.03K ops/sec 71.26 61.67 7,552.069 3.45 7,017
🥈 rocksdb 2 3.51K ops/sec 284.521 240.211 1,953.577 1.12 1,758

Worker > random keys - small key size (100 records, 10 workers)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 lmdb 1 6.97K ops/sec 143.415 116.476 10,910.503 4.92 3,487
🥈 rocksdb 2 1.67K ops/sec 598.379 508.921 2,852.873 2.12 836

worker-put-sync.bench.ts

putSync() > random keys - small key size (100 records, 1 worker)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 1.79K ops/sec 559.668 510.034 2,461.235 1.01 894
🥈 lmdb 2 4.14 ops/sec 241,700.573 232,007.264 258,664.641 3.27 10.00

putSync() > random keys - small key size (100 records, 2 workers)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 1.47K ops/sec 678.733 630.087 3,136.918 1.07 737
🥈 lmdb 2 2.13 ops/sec 470,213.129 448,230.186 503,685.433 2.71 10.00

putSync() > random keys - small key size (100 records, 10 workers)

Implementation Rank Operations/sec Mean (ms) Min (ms) Max (ms) RME (%) Samples
🥇 rocksdb 1 787.41 ops/sec 1,269.989 1,157.52 4,689.646 1.79 394
🥈 lmdb 2 1.12 ops/sec 891,782.625 779,296.109 1,086,263.081 8.54 10.00

Results from commit 07f6bc0

@cb1kenobi cb1kenobi merged commit e2fceff into main Oct 21, 2025
39 of 40 checks passed
@dependabot dependabot bot deleted the dependabot/npm_and_yarn/lefthook-2.0.0 branch October 21, 2025 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automated dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant