Skip to content

Bump colord from 2.9.3 to 2.10.0 - #565

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/colord-2.10.0
Open

Bump colord from 2.9.3 to 2.10.0#565
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/colord-2.10.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 9, 2026

Copy link
Copy Markdown
Contributor

Bumps colord from 2.9.3 to 2.10.0.

Release notes

Sourced from colord's releases.

v2.10 (RGB color mixing)

  • mix, tints, shades and tones (mix plugin) now accept an optional interpolation color space. LAB stays the default; pass "rgb" to interpolate RGB channels instead — the way browsers and design tools (such as Figma) composite translucent layers.
import { colord, extend } from "colord";
import mixPlugin from "colord/plugins/mix";
extend([mixPlugin]);
colord("#ff0000").mix("#ffffff", 0.5, "rgb").toHex(); // "#ff8080"
colord("#f0f3f1").mix("#007d40", 0.14, "rgb").toHex(); // "#cee2d8" — same as compositing rgba(0, 125, 64, 0.14) over #f0f3f1
colord("#ff0000").tints(3, "rgb").map((c) => c.toHex()); // ["#ff0000", "#ff8080", "#ffffff"]

Changelog

Sourced from colord's changelog.

2.10.0

  • Improve mix plugin by adding an optional "rgb" interpolation mode to mix, tints, tones and shades

2.9.7

  • Make HEX parsing and serialization more than 2x faster

2.9.6

  • Fix: Rotate the unrounded hue so rotate and harmonies preserve the original color
  • Fix: Normalize HWB whiteness + blackness over 100% to gray ❤️ @​spokodev

2.9.5

Both fixes change returned numbers for a small set of colors; toHex() output is unchanged. Snapshots holding h: 360, "hsl(360, …)" or a delta() value may need updating.

2.9.4

  • Fix: Reject malformed color strings in linear time ❤️ @​GAP-dev
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 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)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Note

Low Risk
Lockfile-only transitive dependency bump with backward-compatible defaults; no direct application usage of colord.

Overview
Updates the lockfile so the resolved colord package moves from 2.9.3 to 2.10.0. Nothing in this repo references colord directly; it is pulled in transitively (e.g. postcss-colormin, postcss-minify-gradients) for CSS color minification during the build.

2.10.0 mainly extends the optional mix plugin with an "rgb" interpolation mode on mix, tints, shades, and tones; LAB remains the default, so existing call sites that do not pass the new argument should behave as before.

Reviewed by Cursor Bugbot for commit 9343f5a. Bugbot is set up for automated code reviews on this repo. Configure here.

Bumps [colord](https://github.com/omgovich/colord) from 2.9.3 to 2.10.0.
- [Release notes](https://github.com/omgovich/colord/releases)
- [Changelog](https://github.com/omgovich/colord/blob/master/CHANGELOG.md)
- [Commits](https://github.com/omgovich/colord/commits/v2.10)

---
updated-dependencies:
- dependency-name: colord
  dependency-version: 2.10.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added Changed Required label for PR that categorizes merge commit message as "Changed" for changelog dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Sep 9, 2026
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown

🤖 Cursor Dependency Analysis

Supply-Chain Malware Review

I'll review the colord 2.9.3 → 2.10.0 bump for supply-chain issues, starting with the malware scan, lockfile, and upstream tags.The missing-tag finding looks like a v2.10 vs v2.10.0 naming mismatch. I'll verify tags, changelog, and the actual source diff next.Verdict: benign

The ghost_version_or_missing_tag finding for 2.10.0 is a false positive. This project tags v2.10 / v2.9 (not v2.10.0). package.json at v2.10 is 2.10.0, the GitHub release exists, and npm resolves https://registry.npmjs.org/colord/-/colord-2.10.0.tgz with a normal sha512 integrity. The scanner also reported 0 changed files / unresolved refs, so it never actually diffed the update.

Evidence

  • No install/lifecycle malware: scripts are lint/test/build/release only; no preinstall/install/postinstall.
  • No new graph: colord still has zero runtime dependencies. Transitive use here is via postcss-colormin (^2.9.3).
  • Diff matches the changelog: optional "rgb" mix interpolation (LAB default unchanged), HEX parse speedup, hue/HWB/CIEDE2000/parser fixes. Source is ordinary color math; no eval, network, FS, or process spawn.
  • Unicode: only U+FE0F on ❤️ in CHANGELOG.md, not hidden payload.
  • Maintainer: still Vlad Shilov (omgovich/colord); email shift omgovich@ya.rushilovvladislav@gmail.com looks like the same author, not a publisher takeover.
  • Lockfile: version bump + integrity only; no extra packages or workflow changes in this consumer repo.

Compatibility Analysis

I'll inspect how colord is used in this repo and compare that against the 2.9.3 → 2.10.0 upstream changes.## Compatibility review: colord 2.9.3 → 2.10.0

Recommendation: merge-with-caveats

1) Usage in this repo

colord is not a direct dependency and is not imported by app/docs code.

It is transitive, locked at 2.10.0 via cssnano in the Docusaurus production CSS pipeline:

  • @docusaurus/core / @docusaurus/cssnano-presetcssnanocssnano-preset-default
  • postcss-colormin@6.1.0 (colord: ^2.9.3) — color parse/minify
  • postcss-minify-gradients@6.0.3 (colord: ^2.9.3) — gradient color parse

Those consumers typically use core parse/toHex plus plugins names / hwb / lab / lch / minify, not the mix plugin.

2) Intersection with changed APIs

From .upstream-dependency (CHANGELOG.md, src/plugins/mix.ts, src/manipulate/mix.ts):

Version Change Hits this repo?
2.10.0 Optional "rgb" space on mix / tints / shades / tones; default still LAB No — additive; cssnano does not use mix
2.9.7 Faster HEX parse/serialize Unlikely — performance only
2.9.6 rotate / harmonies; HWB w+b > 100% → gray Low — HWB only if those plugins see invalid HWB
2.9.5 Hue wrap [0, 360); CIEDE2000 delta() tweak Possible, small — minify/HSL strings; names closest uses delta(). Changelog: toHex() unchanged
2.9.4 Malformed strings rejected in linear time No for valid CSS; DoS hardening

Default mix() behavior is unchanged unless callers pass "rgb".

3) Risks / unknowns

  • Build, not runtime: only production CSS minification.
  • Possible CSS byte diffs: a few colors might minify to hsl(0,…) instead of hsl(360,…), or a different closest name after the delta() fix. Visual change is unlikely.
  • Semver: still satisfies ^2.9.3. Zero runtime deps; exports map unchanged.
  • Tag naming: upstream tags v2.10 (not v2.10.0); npm 2.10.0 matches package.json at that tag.

4) Action

Merge. Spot-check the production CSS bundle (or a docusaurus build artifact diff) if you care about bit-stable minify output. No app code or mix-plugin call sites to update.


Malware Scan Summary

  • Status: warn
  • Warn only mode: true
  • Changed upstream files scanned: 0
  • Resolution strategy: unresolved
  • Changed node/vendor paths: 0
  • Changed lockfiles: 0
  • Resolved refs: from=n/a to=n/a
  • Unicode findings (post-allowlist): 0
  • Confusable findings (post-allowlist): 0
  • IOC findings (post-allowlist): 0
  • Heuristic findings (post-allowlist): 1

Top findings

  • colord:0 ghost_version_or_missing_tag :: 2.10.0

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

Labels

Changed Required label for PR that categorizes merge commit message as "Changed" for changelog dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants