Skip to content

Add settings: API as well to not only accept salts - #6

Merged
ptoffy merged 1 commit into
mainfrom
settings-api
Sep 21, 2026
Merged

ptoffy merged 1 commit into
mainfrom
settings-api

Conversation

@ptoffy

@ptoffy ptoffy commented Sep 21, 2026

Copy link
Copy Markdown
Owner

No description provided.

@ptoffy

ptoffy commented Sep 21, 2026

Copy link
Copy Markdown
Owner Author

💔 API breakage: enumelement BcryptError.invalidSettings has been added as a new enum case

The enum is @nonexhaustive so this is not breaking

@github-actions

Copy link
Copy Markdown

Benchmark report

Commit ada0a00 against main, cost 12. Full comparisons are in the run summary.

Platform Configuration Result
ubuntu-latest release ✅ No significant differences
ubuntu-latest debug ✅ No significant differences
macos-26 release ✅ No significant differences
macos-26 debug ✅ No significant differences
ubuntu-latest, release

New baseline 'pull_request' is WITHIN the 'main' baseline thresholds.

Hashing

Hash 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 5
Time (wall clock) (ms) * 234 234 234 235 235 235 235 5

Hash 12 Span with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 5
Time (wall clock) (ms) * 234 234 234 234 234 234 234 5

Hash 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 2 2 2 2 2 2 2 5
Time (wall clock) (ms) * 234 234 234 234 234 234 234 5

Hash 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 5
Time (wall clock) (ms) * 234 235 235 235 235 235 235 5

Hash 12 [UInt8] with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 5
Time (wall clock) (ms) * 234 234 234 235 235 235 235 5

Hash 12 into OutputSpan

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 234 234 234 234 234 234 234 5

Verifying

Verify 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 234 234 235 235 235 235 235 5

Verify 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 234 234 234 235 235 235 235 5

Verify 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 234 234 234 235 235 235 235 5
ubuntu-latest, debug

New baseline 'pull_request' is WITHIN the 'main' baseline thresholds.

Hashing

Hash 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 1
Time (wall clock) (ms) * 1314 1314 1314 1314 1314 1314 1314 1

Hash 12 Span with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 1
Time (wall clock) (ms) * 1311 1311 1311 1311 1311 1311 1311 1

Hash 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 2 2 2 2 2 2 2 1
Time (wall clock) (ms) * 1310 1310 1310 1310 1310 1310 1310 1

Hash 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 1
Time (wall clock) (ms) * 1314 1314 1314 1314 1314 1314 1314 1

Hash 12 [UInt8] with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 1
Time (wall clock) (ms) * 1310 1310 1310 1310 1310 1310 1310 1

Hash 12 into OutputSpan

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 1
Time (wall clock) (ms) * 1314 1314 1314 1314 1314 1314 1314 1

Verifying

Verify 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 1
Time (wall clock) (ms) * 1330 1330 1330 1330 1330 1330 1330 1

Verify 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 1
Time (wall clock) (ms) * 1330 1330 1330 1330 1330 1330 1330 1

Verify 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 1
Time (wall clock) (ms) * 1327 1327 1327 1327 1327 1327 1327 1
macos-26, release

New baseline 'pull_request' is WITHIN the 'main' baseline thresholds.

Hashing

Hash 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 4
Time (wall clock) (ms) * 233 233 242 292 333 333 333 4

Hash 12 Span with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 4
Time (wall clock) (ms) * 249 249 251 252 275 275 275 4

Hash 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 2 2 2 2 2 2 2 4
Time (wall clock) (ms) * 276 276 279 280 281 281 281 4

Hash 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 4
Time (wall clock) (ms) * 235 235 250 265 269 269 269 4

Hash 12 [UInt8] with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 4
Time (wall clock) (ms) * 262 262 268 273 273 273 273 4

Hash 12 into OutputSpan

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 227 235 236 252 255 255 255 5

Verifying

Verify 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 227 234 236 239 270 270 270 5

Verify 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 231 232 234 235 238 238 238 5

Verify 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 5
Time (wall clock) (ms) * 227 233 236 237 241 241 241 5
macos-26, debug

New baseline 'pull_request' is WITHIN the 'main' baseline thresholds.

Hashing

Hash 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 2
Time (wall clock) (ms) * 620 621 621 623 623 623 623 2

Hash 12 Span with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 2
Time (wall clock) (ms) * 698 698 698 729 729 729 729 2

Hash 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 2 2 2 2 2 2 2 2
Time (wall clock) (ms) * 623 623 623 623 623 623 623 2

Hash 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 2
Time (wall clock) (ms) * 658 658 658 715 715 715 715 2

Hash 12 [UInt8] with salt

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 1 1 1 1 1 1 1 2
Time (wall clock) (ms) * 699 699 699 736 736 736 736 2

Hash 12 into OutputSpan

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 2
Time (wall clock) (ms) * 622 623 623 636 636 636 636 2

Verifying

Verify 12 Span

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 2
Time (wall clock) (ms) * 625 625 625 627 627 627 627 2

Verify 12 String

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 2
Time (wall clock) (ms) * 622 622 622 622 622 622 622 2

Verify 12 [UInt8]

Metric p0 p25 p50 p75 p90 p99 p100 Samples
Malloc (total) * 0 0 0 0 0 0 0 2
Time (wall clock) (ms) * 622 622 622 960 960 960 960 2

@ptoffy
ptoffy merged commit 24e7b8b into main Sep 21, 2026
28 of 29 checks passed
@ptoffy
ptoffy deleted the settings-api branch September 21, 2026 11:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant