Skip to content

Commit e6c1082

Browse files
Revert changes to glob handling (#13384)
* Revert "Improve glob handling for folders with `(`, `)`, `[` or `]` in the file path (#12715)" This reverts commit f2a7c2c. * Update changelog
1 parent 8430d8b commit e6c1082

File tree

2 files changed

+4
-43
lines changed

2 files changed

+4
-43
lines changed

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10-
- Nothing yet!
10+
### Fixed
11+
12+
- Revert changes to glob handling ([#13384](https://github.com/tailwindlabs/tailwindcss/pull/13384))
1113

1214
## [3.4.2] - 2024-03-27
1315

src/lib/content.js

Lines changed: 1 addition & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -4,47 +4,10 @@ import fs from 'fs'
44
import path from 'path'
55
import isGlob from 'is-glob'
66
import fastGlob from 'fast-glob'
7+
import normalizePath from 'normalize-path'
78
import { parseGlob } from '../util/parseGlob'
89
import { env } from './sharedState'
910

10-
/*!
11-
* Modified version of normalize-path, original license below
12-
*
13-
* normalize-path <https://github.com/jonschlinkert/normalize-path>
14-
*
15-
* Copyright (c) 2014-2018, Jon Schlinkert.
16-
* Released under the MIT License.
17-
*/
18-
19-
function normalizePath(path) {
20-
if (typeof path !== 'string') {
21-
throw new TypeError('expected path to be a string')
22-
}
23-
24-
if (path === '\\' || path === '/') return '/'
25-
26-
var len = path.length
27-
if (len <= 1) return path
28-
29-
// ensure that win32 namespaces has two leading slashes, so that the path is
30-
// handled properly by the win32 version of path.parse() after being normalized
31-
// https://msdn.microsoft.com/library/windows/desktop/aa365247(v=vs.85).aspx#namespaces
32-
var prefix = ''
33-
if (len > 4 && path[3] === '\\') {
34-
var ch = path[2]
35-
if ((ch === '?' || ch === '.') && path.slice(0, 2) === '\\\\') {
36-
path = path.slice(2)
37-
prefix = '//'
38-
}
39-
}
40-
41-
// Modified part: instead of purely splitting on `\\` and `/`, we split on
42-
// `/` and `\\` that is _not_ followed by any of the following characters: ()[]
43-
// This is to ensure that we keep the escaping of brackets and parentheses
44-
let segs = path.split(/[/\\]+(?![\(\)\[\]])/)
45-
return prefix + segs.join('/')
46-
}
47-
4811
/** @typedef {import('../../types/config.js').RawFile} RawFile */
4912
/** @typedef {import('../../types/config.js').FilePath} FilePath */
5013

@@ -110,10 +73,6 @@ export function parseCandidateFiles(context, tailwindConfig) {
11073
* @returns {ContentPath}
11174
*/
11275
function parseFilePath(filePath, ignore) {
113-
// Escape special characters in the file path such as: ()[]
114-
// But only if the special character isn't already escaped
115-
filePath = filePath.replace(/(?<!\\)([\[\]\(\)])/g, '\\$1')
116-
11776
let contentPath = {
11877
original: filePath,
11978
base: filePath,

0 commit comments

Comments
 (0)