Repository navigation
Commit 4318284
authored
deps: bump ansis from 4.3.1 to 4.4.0 (#105)
Bumps [ansis](https://github.com/webdiscus/ansis) from 4.3.1 to 4.4.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webdiscus/ansis/releases">ansis's
releases</a>.</em></p>
<blockquote>
<h2>v4.4.0</h2>
<h1>Bug fixes</h1>
<h2>1. <code>TERM=dumb</code> now disables colors during
auto-detection</h2>
<p>Ansis now treats <code>TERM=dumb</code> as no color before applying
<code>COLORTERM</code>, CI detection, PM2, Next.js runtime detection,
and platform-specific defaults, <a
href="https://redirect.github.com/webdiscus/ansis/issues/49">#49</a>.</p>
<p>Before, <code>COLORTERM=truecolor</code> or other later
auto-detection checks could still enable colors even when the
environment reported <code>TERM=dumb</code>. This could produce visible
ANSI escape codes in environments such as Emacs <code>M-x
compile</code>.</p>
<p><code>COLORTERM</code> remains a color capability hint.
<code>FORCE_COLOR</code> keeps the highest priority and can still
explicitly enable colors.</p>
<table>
<thead>
<tr>
<th>Use case</th>
<th>v4.3.1</th>
<th>v4.4.0</th>
<th>Notes</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>TERM=dumb</code></td>
<td>✅ may allow colors *</td>
<td>❌ no color</td>
<td><code>TERM=dumb</code> now has higher priority in
<code>autoDetectLevel</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + <code>COLORTERM=truecolor</code></td>
<td>✅ allow colors</td>
<td>❌ no color</td>
<td><code>COLORTERM</code> no longer overrides
<code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + CI</td>
<td>✅ allow colors</td>
<td>❌ no color</td>
<td>CI detection runs after <code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + PM2</td>
<td>✅ may allow colors *</td>
<td>❌ no color</td>
<td>PM2 detection runs after <code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + Next.js runtime</td>
<td>✅ may allow colors *</td>
<td>❌ no color</td>
<td>Next.js detection runs after <code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>COLORTERM</code> without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
<tr>
<td>CI without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
<tr>
<td>PM2 without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
<tr>
<td>Next.js without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
</tbody>
</table>
<p><code>*</code> - Depends on additional conditions.</p>
<h1>Tests and CI</h1>
<ul>
<li>Added regression coverage for <code>TERM=dumb</code> with inherited
<code>COLORTERM=truecolor</code>.</li>
<li>Added coverage for PM2 and Next.js runtime behavior where
<code>stdout.isTTY</code> is not exposed.</li>
<li>Added a manual color checker. Run <code>npm run color-checker</code>
to print the environment values used by color detection and visually
inspect ANSI 16, ANSI 256, and Truecolor rendering.</li>
<li>Updated Deno CI to test Deno 2.3+ and the current LTS. Runtime
compatibility with Deno 2.0-2.2 remains supported.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/webdiscus/ansis/blob/master/CHANGELOG.md">ansis's
changelog</a>.</em></p>
<blockquote>
<h2>4.4.0 (2026-09-13)</h2>
<ul>
<li>
<p>fix(color-support): treat <code>TERM=dumb</code> as no color before
applying <code>COLORTERM</code>, <a
href="https://redirect.github.com/webdiscus/ansis/issues/49">#49</a>.</p>
<p><code>COLORTERM</code> is a color level hint.
When <code>TERM=dumb</code>, Ansis now disables ANSI color output even
if color environment variables such as <code>COLORTERM=truecolor</code>
were inherited from a parent process (e.g. in Emacs M-x compile).</p>
<p><code>FORCE_COLOR</code> keeps the highest priority and can still
explicitly enable colors.</p>
<p><strong>Auto-detection behavior changes after the fix</strong></p>
<table>
<thead>
<tr>
<th>Use case</th>
<th>v4.3.1</th>
<th>v4.4.0</th>
<th>Notes</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>TERM=dumb</code></td>
<td>✅ may allow colors *</td>
<td>❌ no color</td>
<td><code>TERM=dumb</code> now has higher priority in
<code>autoDetectLevel</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + <code>COLORTERM=truecolor</code></td>
<td>✅ allow colors</td>
<td>❌ no color</td>
<td><code>COLORTERM</code> no longer overrides
<code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + CI</td>
<td>✅ allow colors</td>
<td>❌ no color</td>
<td>CI detection runs after <code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + PM2</td>
<td>✅ may allow colors *</td>
<td>❌ no color</td>
<td>PM2 detection runs after <code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>TERM=dumb</code> + Next.js runtime</td>
<td>✅ may allow colors *</td>
<td>❌ no color</td>
<td>Next.js detection runs after <code>TERM=dumb</code>.</td>
</tr>
<tr>
<td><code>COLORTERM</code> without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
<tr>
<td>CI without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
<tr>
<td>PM2 without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
<tr>
<td>Next.js without <code>TERM=dumb</code></td>
<td>✅ allow colors</td>
<td>✅ allow colors</td>
<td>Unchanged.</td>
</tr>
</tbody>
</table>
<p><code>*</code> - Depends on additional conditions.</p>
</li>
<li>
<p>test(color-support): add regression coverage for
<code>TERM=dumb</code> with inherited
<code>COLORTERM=truecolor</code></p>
<p>The tests also cover PM2 and Next.js edge behavior where
<code>stdout.isTTY</code> is not exposed.</p>
</li>
<li>
<p>test: add a manual color support checker</p>
<p>Run <code>npm run color-checker</code> to print the environment
values used by color detection and visually inspect ANSI 16, ANSI 256,
and Truecolor rendering.</p>
</li>
<li>
<p>test(deno): run CI against Deno 2.3+ and the current LTS</p>
<p>Deno 2.0-2.2 are no longer tested in the CI matrix because they
cannot use the same <code>deno.lock</code> v5 format as Deno 2.3+.
Runtime compatibility with Deno 2.0-2.2 remains supported.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webdiscus/ansis/commit/670e0625a27b1797e48bda929b9bad475fbeb45e"><code>670e062</code></a>
docs: add description of <code>TERM</code> env variable</li>
<li><a
href="https://github.com/webdiscus/ansis/commit/d5b557c4c5c14913c20d1e322837ba62f23257e3"><code>d5b557c</code></a>
Merge pull request <a
href="https://redirect.github.com/webdiscus/ansis/issues/51">#51</a>
from webdiscus/next</li>
<li><a
href="https://github.com/webdiscus/ansis/commit/a724646d606421b35fdfa9c4bc2dbc3d08f5f47c"><code>a724646</code></a>
fix(color-support): treat <code>TERM=dumb</code> as no color before
applying <code>COLORTERM</code>...</li>
<li><a
href="https://github.com/webdiscus/ansis/commit/798596636f378da2c7672d94305646ca81873bd7"><code>7985966</code></a>
Merge pull request <a
href="https://redirect.github.com/webdiscus/ansis/issues/48">#48</a>
from PingouinFerreux/fix/star-history-chart</li>
<li><a
href="https://github.com/webdiscus/ansis/commit/7cf88892f667a59f01290fa8faf89a11ce4790e4"><code>7cf8889</code></a>
docs: fix broken star history chart in readme</li>
<li><a
href="https://github.com/webdiscus/ansis/commit/678da3ad2a8ab29b9ec2b3ba7b74d2a78d5fef76"><code>678da3a</code></a>
test: add tests to to control level in files usied ansis</li>
<li>See full diff in <a
href="https://github.com/webdiscus/ansis/compare/v4.3.1...v4.4.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
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-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
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)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>1 parent d5617bf commit 4318284
1 file changed
Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments