Skip to content

chore(deps): update dependency safe-stable-stringify to v3 - #296

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/safe-stable-stringify-3.x
Open

renovate[bot] wants to merge 1 commit into
masterfrom
renovate/safe-stable-stringify-3.x

Conversation

@renovate

@renovate renovate Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
safe-stable-stringify ^2.5.0 → ^3.0.0 age confidence

Release Notes

BridgeAR/safe-stable-stringify (safe-stable-stringify)

v3.0.0

Compare Source

Breaking changes

  • Require Node.js 18 or later (older versions will likely still work but are not supported).
  • Changed the default circular marker to '[Circular: N]', where N is the referenced ancestor's depth, starting at 0 for the root.
    Set circularValue: '[Circular]' to retain the previous format. This changes the serialized output for circular references.

Features

  • Added 'string' as possible bigint option value. Bigint values are serialized as JSON strings using it.
import { configure } from 'safe-stable-stringify'

const stringify = configure({
  bigint: 'string'
})

stringify([1n, 2, 3n, 4, 5n])
// '["1",2,"3",4,"5"]'
  • Added safe option to not fail in case a getter, .toJSON(), or a replacer throws an error.
    Instead, a string as error message is replacing the object inspection. This allows to partially inspect such objects.
    The default is false to prevent any breaking change.
import { configure } from 'safe-stable-stringify'

const stringify = configure({
  safe: true
})

stringify([{
  foo: { a: 5, get foo() { throw new Error('Oops') }, c: true }
}])
// '[{"foo":"Error: Stringification failed. Message: Oops"}]'

stringify([{
  foo: { a: 5, toJSON() { throw new Error('Oops') }, c: true }
}])
// '[{"foo":"Error: Stringification failed. Message: Oops"}]'

Fixes

  • Fixed ESM imports in Node.js and bundlers, including applications that also use CommonJS.
  • Fixed off by one error using the maximumBreadth option. It showed one entry to few being skipped.
  • Fixed throwing on a negative spacer number
  • Fixed serializing non-finite floating-point typed array values (e.g., new Float32Array([Infinity]))

Performance

  • Sorting and escaping is now faster on newer Node.js versions
  • Defer index string conversion

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • "before 6am on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot added the dependencies Pull requests that update a dependency file label Oct 26, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants