Use 'slash' on input files before globbing to support absolute paths with backslashes on Windows - #355
Conversation
…with backslashes on Windows
|
Forgive me for my ignorance (I've never actually run postcss on Windows), but why can't you just pass paths with forward slashes from the CLI? |
|
@RyanZim, on Windows, the natural directory separator is a backslash. For instance, if you tab-autocomplete a path in a Windows command line, it will convert forward slashes to backslashes. So, in particular for a command line tool, I think it is important to accept paths in the system's standard format. |
RyanZim
left a comment
There was a problem hiding this comment.
Got it, tab-autocomplete. That makes sense; LGTM.
|
Will try to release this later this week. |
|
Eh, that was a bit longer than a week. Regardless, published in v8.2.0. 🚀 |
This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [postcss-cli](https://github.com/postcss/postcss-cli) | [`^7.1.2` → `^12.0.0`](https://renovatebot.com/diffs/npm/postcss-cli/7.1.2/12.0.0) |  |  | --- ### Release Notes <details> <summary>postcss/postcss-cli (postcss-cli)</summary> ### [`v12.0.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#1200--2026-09-04) [Compare Source](postcss/postcss-cli@11.0.1...12.0.0) - If using a YAML config, the `yaml` package must be installed separately ([#​478](postcss/postcss-cli#478)) - Requires Node.js v22+ ([#​525](postcss/postcss-cli#525)) - Errors if `--config` is passed, but no config is found ([#​467](postcss/postcss-cli#467), [#​522](postcss/postcss-cli#522)) - Now properly exits with an error if invalid options/configuration are passed in watch mode ([#​527](postcss/postcss-cli#527)) - Upgrade to chokidar v5; which results in slightly different handling of `dir-dependency` messages in watch mode ([#​501](postcss/postcss-cli#501)) - Properly watchs all config files if there are multiple config files ([#​536](postcss/postcss-cli#536)) - Minimized dependencies by removing fs-extra ([#​510](postcss/postcss-cli#510)) - Internal refactoring ### [`v11.0.1`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#1101--2025-03-12) [Compare Source](postcss/postcss-cli@11.0.0...11.0.1) - Update and minimize dependencies ### [`v11.0.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#1100--2023-12-05) [Compare Source](postcss/postcss-cli@10.1.0...11.0.0) - **BREAKING:** Require Node.js v18+ ([#​464](postcss/postcss-cli#464)) - Upgrade to [`postcss-load-config@5`](https://github.com/postcss/postcss-load-config/blob/main/CHANGELOG.md#50-2023-11-20) for improved ESM & TS config support ([#​461](postcss/postcss-cli#461), [#​462](postcss/postcss-cli#462)) ### [`v10.1.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#1010--2022-11-29) [Compare Source](postcss/postcss-cli@10.0.0...10.1.0) - Allow running `--watch` mode in non-TTY contexts, like Docker ([#​448](postcss/postcss-cli#448)) - Update dependencies ### [`v10.0.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#1000--2022-06-29) [Compare Source](postcss/postcss-cli@9.1.0...10.0.0) - **BREAKING:** Drop Node 12 support ([#​438](postcss/postcss-cli#438)) - Add support for ESM config files ([#​437](postcss/postcss-cli#437)) ### [`v9.1.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#910--2021-12-10) [Compare Source](postcss/postcss-cli@9.0.2...9.1.0) - Don't write to files if they're unchanged ([#​320](postcss/postcss-cli#320), [#​417](postcss/postcss-cli#417)) ### [`v9.0.2`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#902--2021-11-04) [Compare Source](postcss/postcss-cli@9.0.1...9.0.2) - Switch to picocolors ([#​409](postcss/postcss-cli#409)) - Remove test files from npm package ### [`v9.0.1`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#901--2021-09-28) [Compare Source](postcss/postcss-cli@9.0.0...9.0.1) - Actually exit with error when attempting to stdout in watch mode - Remove `bin/` from `files` in package.json ### [`v9.0.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#900--2021-09-24) [Compare Source](postcss/postcss-cli@8.3.1...9.0.0) - **BREAKING:** Require Node.js v12+ - **BREAKING:** Must specify full file path, including `.js` extension, when loading local plugins with `--use` ([#​401](postcss/postcss-cli#401)) - **BREAKING:** Officially remove support for watching postcss config (was already broken in previous releases) - Add support for `dir-dependency` messages ([#​383](postcss/postcss-cli#383), [#​391](postcss/postcss-cli#391)) - Update deps ### [`v8.3.1`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#831--2020-12-12) [Compare Source](postcss/postcss-cli@8.3.0...8.3.1) - Ensure paths are not interpreted as numbers ([#​360](postcss/postcss-cli#360)) - Better errors for incorrect postcss version ([#​361](postcss/postcss-cli#361), [#​362](postcss/postcss-cli#362)) ### [`v8.3.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#830--2020-11-17) [Compare Source](postcss/postcss-cli@8.2.0...8.3.0) - Exit on EOF/`^D` ([#​358](postcss/postcss-cli#358)) ### [`v8.2.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#820--2020-10-29) [Compare Source](postcss/postcss-cli@8.1.0...8.2.0) - Allow backslashes in paths for better Windows experience ([#​355](postcss/postcss-cli#355)) ### [`v8.1.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#810--2020-10-08) [Compare Source](postcss/postcss-cli@8.0.0...8.1.0) - Add support for `postcss.config.cjs` files ([#​351](postcss/postcss-cli#351)) ### [`v8.0.0`](https://github.com/postcss/postcss-cli/blob/HEAD/CHANGELOG.md#800--2020-09-21) [Compare Source](postcss/postcss-cli@7.1.2...8.0.0) - **BREAKING:** Support postcss v8 ([#​344](postcss/postcss-cli#344), [#​349](postcss/postcss-cli#349)) - **BREAKING:** postcss is now a `peerDependency`, you must install it seperately ([#​344](postcss/postcss-cli#344), [#​349](postcss/postcss-cli#349)) - Upgrade dependencies ([#​340](postcss/postcss-cli#340)) </details> --- ### Configuration 📅 **Schedule**: (in timezone Etc/UTC) - Branch creation - Between 12:00 AM and 03:59 AM, only on Monday (`* 0-3 * * 1`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [x] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC42NS41IiwidXBkYXRlZEluVmVyIjoiNDQuNjUuNSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19--> Co-authored-by: Renovate <renovate@users.noreply.code.inl.io> Co-authored-by: Nicholas Santiago <nicholas.santiago@gmail.com> Reviewed-on: https://code.inl.io/nick/personal-website/pulls/11
globby (used to glob input arguments to postcss-cli) only supports forward slashes.
In order to be able to provide absolute paths containing backslashes to the CLI on Windows, they need to be converted to forward slashes, otherwise postcss-cli terminates with the error message 'Input Error: You must pass a valid list of files to parse'.