Jordan Harband
8610e1578d
[Fix] nvm_process_nvmrc_content: reject control characters
...
An `.nvmrc` line containing a control character
(eg, an escape, a bell, or a carriage return in the middle of the version)
was accepted as-is,
so the raw bytes were passed along as the version and printed verbatim in the "Found '…' with version <…>" and "N/A: version … is not yet installed" messages,
garbling the terminal output.
Any line that still contains a control character other than a tab,
after comments and leading and trailing white space are removed,
now makes the file invalid.
CRLF line endings keep working,
since the trailing carriage return is trimmed as white space before the check.
The "non-commented content parsed" part of the invalid `.nvmrc` message now shows each control character
(other than tabs and newlines) as `?`,
so it prints as plain text
Discovered by Anthropic's OSS Scanner, as ANT-2026-R3FR49Z7; the scanner reported it as a vulnerability, but it is not one.
2026-10-23 08:53:59 -07:00
..
2026-09-23 21:35:43 +00:00
2026-04-23 17:16:32 +03:00
2026-04-23 17:16:32 +03:00
2026-10-22 20:10:42 -07:00
2026-04-23 17:16:32 +03:00
2026-10-23 08:53:59 -07:00
2026-07-09 22:40:07 -07:00
2026-01-26 21:41:57 -08:00
2026-03-14 09:38:04 -07:00
2026-07-24 10:54:17 -07:00
2026-10-22 20:10:42 -07:00
2026-07-24 10:51:53 -07:00
2026-01-26 21:41:57 -08:00
2026-09-23 21:35:43 +00:00
2026-09-23 21:35:43 +00:00
2026-05-15 23:08:37 -07:00
2026-01-26 21:41:57 -08:00
2026-10-01 09:51:16 +05:30
2026-01-26 21:41:57 -08:00
2026-07-24 10:55:58 -07:00
2026-01-26 21:41:57 -08:00
2026-03-13 15:26:07 -04:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-09-21 10:01:34 +08:00
2026-01-26 21:41:57 -08:00
2026-09-28 15:05:28 +09:00
2026-10-09 21:16:17 -07:00
2026-09-08 11:01:03 -07:00
2026-10-01 16:35:00 +05:00
2026-01-26 21:41:57 -08:00
2016-11-14 12:28:41 +08:00
2026-01-26 21:41:57 -08:00
2026-09-04 14:08:01 -07:00
2026-03-13 15:26:07 -04:00
2026-07-08 13:02:41 -07:00
2026-07-08 13:02:41 -07:00
2026-07-08 13:02:41 -07:00
2026-10-06 14:01:11 -03:00
2026-06-03 13:12:31 -07:00
2026-07-08 13:03:16 -07:00
2026-10-23 08:53:58 -07:00
2026-06-02 17:41:44 -07:00
2026-09-02 19:36:04 -07:00
2026-01-26 21:41:57 -08:00
2026-03-14 14:30:31 -07:00
2026-10-23 08:53:58 -07:00
2026-06-03 13:09:07 -07:00
2026-10-06 17:54:48 -03:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-09-04 14:08:01 -07:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-10-06 14:23:02 -03:00
2026-10-06 14:23:02 -03:00
2026-09-30 16:09:09 +09:00
2026-01-26 21:41:57 -08:00
2026-03-13 15:26:07 -04:00
2026-06-03 13:11:26 -07:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2025-11-16 14:48:10 +05:30
2026-07-08 13:03:16 -07:00
2026-10-22 20:10:42 -07:00
2026-03-13 15:26:07 -04:00
2026-09-02 19:40:47 -07:00
2026-10-06 14:23:02 -03:00
2026-01-26 21:41:57 -08:00
2026-01-27 10:31:07 -08:00
2026-09-29 17:08:36 +09:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-09-04 09:16:10 -07:00
2026-10-05 10:02:48 -07:00
2026-10-23 08:53:58 -07:00
2026-01-26 21:41:57 -08:00
2026-07-24 10:50:47 -07:00
2026-03-24 12:44:21 -07:00
2026-03-13 15:26:07 -04:00
2026-07-24 10:55:58 -07:00
2026-09-30 16:09:09 +09:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-03-24 12:44:21 -07:00
2026-01-26 21:41:57 -08:00
2026-10-23 08:53:58 -07:00
2026-10-01 09:51:16 +05:30
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-10-22 20:10:42 -07:00
2026-10-06 18:01:38 -03:00
2026-10-22 20:10:42 -07:00
2026-07-08 23:14:23 -07:00
2026-10-22 20:10:42 -07:00
2026-01-26 21:41:57 -08:00
2026-03-13 15:26:07 -04:00
2026-01-26 21:41:57 -08:00
2026-07-15 13:46:52 -07:00
2026-03-13 15:26:07 -04:00
2026-03-13 15:26:07 -04:00
2026-03-13 15:26:07 -04:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-07-09 22:35:15 -07:00
2026-09-03 20:54:28 -07:00
2026-03-13 15:26:07 -04:00
2026-01-26 21:41:57 -08:00
2026-09-03 15:12:34 -07:00
2026-03-13 15:26:07 -04:00
2026-03-13 15:26:07 -04:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-03-13 15:26:07 -04:00
2026-10-23 08:53:59 -07:00
2026-06-10 15:16:23 -07:00
2026-07-24 10:55:58 -07:00
2026-10-22 20:10:42 -07:00
2026-03-13 15:26:07 -04:00
2026-03-14 09:39:20 -07:00
2026-10-22 20:10:42 -07:00
2026-10-01 16:35:00 +05:00
2026-10-23 08:53:59 -07:00
2026-01-27 10:31:07 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-09-11 16:49:46 +08:00
2026-01-26 21:41:57 -08:00
2026-03-13 15:26:07 -04:00
2026-07-24 10:51:53 -07:00
2026-10-06 12:43:22 -03:00
2026-01-26 21:41:57 -08:00
2026-10-07 15:30:01 -03:00
2026-10-03 12:49:00 +05:30
2026-01-26 21:41:57 -08:00
2022-10-13 20:16:42 -07:00
2026-01-26 21:41:57 -08:00
2026-10-23 08:53:58 -07:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-01-26 21:41:57 -08:00
2026-05-25 11:14:39 +10:00
2026-09-03 20:44:59 -07:00