Skip to content

crypto: decorate async crypto job errors with OpenSSL error details#62348

Merged
nodejs-github-bot merged 1 commit intonodejs:mainfrom
panva:crypto-async-error-decoration
Mar 28, 2026
Merged

crypto: decorate async crypto job errors with OpenSSL error details#62348
nodejs-github-bot merged 1 commit intonodejs:mainfrom
panva:crypto-async-error-decoration

Conversation

@panva
Copy link
Copy Markdown
Member

@panva panva commented Mar 20, 2026

Enhance CryptoErrorStore to preserve OpenSSL error details (code, library, reason) on errors from async crypto operations, restoring parity with the errors thrown synchronously.

This is the semver-major PRs that contain breaking changes and should be released in the next major version. follow up to a fix made in 5eeb9f3

@panva panva added crypto Issues and PRs related to the crypto subsystem. semver-major PRs that contain breaking changes and should be released in the next major version. labels Mar 20, 2026
@nodejs-github-bot
Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/crypto

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. labels Mar 20, 2026
@addaleax addaleax added the request-ci Add this label to start a Jenkins CI on a PR. label Mar 20, 2026
@panva panva added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Mar 20, 2026
@codecov
Copy link
Copy Markdown

codecov bot commented Mar 20, 2026

Codecov Report

❌ Patch coverage is 56.86275% with 22 lines in your changes missing coverage. Please review.
✅ Project coverage is 89.70%. Comparing base (7d1f1b4) to head (c5653bf).
⚠️ Report is 6 commits behind head on main.

Files with missing lines Patch % Lines
src/crypto/crypto_argon2.cc 0.00% 2 Missing and 1 partial ⚠️
src/crypto/crypto_hkdf.cc 0.00% 2 Missing and 1 partial ⚠️
src/crypto/crypto_pbkdf2.cc 0.00% 2 Missing and 1 partial ⚠️
src/crypto/crypto_scrypt.cc 0.00% 2 Missing and 1 partial ⚠️
src/crypto/crypto_util.cc 80.00% 1 Missing and 2 partials ⚠️
src/crypto/crypto_ec.cc 0.00% 1 Missing and 1 partial ⚠️
src/crypto/crypto_kem.cc 77.77% 2 Missing ⚠️
src/crypto/crypto_util.h 80.00% 0 Missing and 2 partials ⚠️
src/crypto/crypto_kmac.cc 0.00% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             main   #62348   +/-   ##
=======================================
  Coverage   89.70%   89.70%           
=======================================
  Files         678      678           
  Lines      207260   207278   +18     
  Branches    39749    39744    -5     
=======================================
+ Hits       185917   185949   +32     
+ Misses      13443    13434    -9     
+ Partials     7900     7895    -5     
Files with missing lines Coverage Δ
src/crypto/crypto_argon2.h 50.00% <ø> (ø)
src/crypto/crypto_dh.cc 67.18% <ø> (-0.20%) ⬇️
src/crypto/crypto_dh.h 11.11% <ø> (ø)
src/crypto/crypto_ec.h 12.50% <ø> (ø)
src/crypto/crypto_hash.cc 76.94% <ø> (ø)
src/crypto/crypto_hash.h 20.00% <ø> (ø)
src/crypto/crypto_hkdf.h 33.33% <ø> (ø)
src/crypto/crypto_hmac.cc 68.42% <ø> (ø)
src/crypto/crypto_hmac.h 20.00% <ø> (ø)
src/crypto/crypto_kem.h 33.33% <ø> (ø)
... and 18 more

... and 31 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Mar 26, 2026
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@panva panva added the commit-queue Add this label to land a pull request using GitHub Actions. label Mar 26, 2026
@nodejs-github-bot nodejs-github-bot added commit-queue-failed An error occurred while landing this pull request using GitHub Actions. and removed commit-queue Add this label to land a pull request using GitHub Actions. labels Mar 26, 2026
@nodejs-github-bot

This comment was marked as outdated.

@panva
Copy link
Copy Markdown
Member Author

panva commented Mar 26, 2026

cc @nodejs/tsc for semver-major signoff

@panva panva removed the commit-queue-failed An error occurred while landing this pull request using GitHub Actions. label Mar 27, 2026
@panva panva force-pushed the crypto-async-error-decoration branch from 6be5eb0 to c5653bf Compare March 27, 2026 16:45
@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot

This comment was marked as outdated.

@nodejs-github-bot
Copy link
Copy Markdown
Collaborator

@panva panva added the commit-queue Add this label to land a pull request using GitHub Actions. label Mar 28, 2026
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Mar 28, 2026
@nodejs-github-bot nodejs-github-bot merged commit 74509b1 into nodejs:main Mar 28, 2026
62 checks passed
@nodejs-github-bot
Copy link
Copy Markdown
Collaborator

Landed in 74509b1

@panva panva deleted the crypto-async-error-decoration branch March 28, 2026 07:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author ready PRs that have at least one approval, no pending requests for changes, and a CI started. c++ Issues and PRs that require attention from people who are familiar with C++. crypto Issues and PRs related to the crypto subsystem. lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. semver-major PRs that contain breaking changes and should be released in the next major version.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants