From 64cf0a6aa421021b19b2d176a810fd675e225dcc Mon Sep 17 00:00:00 2001 From: Robin Malfait Date: Fri, 9 May 2025 18:12:57 +0200 Subject: [PATCH 1/3] add failing test --- crates/oxide/src/extractor/named_utility_machine.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/crates/oxide/src/extractor/named_utility_machine.rs b/crates/oxide/src/extractor/named_utility_machine.rs index e92baac2ae2c..4b6f1053324f 100644 --- a/crates/oxide/src/extractor/named_utility_machine.rs +++ b/crates/oxide/src/extractor/named_utility_machine.rs @@ -415,6 +415,9 @@ mod tests { // With numbers ("px-5", vec!["px-5"]), ("px-2.5", vec!["px-2.5"]), + // Underscores followed by numbers + ("header_1", vec!["header_1"]), + ("header_1_2", vec!["header_1_2"]), // With number followed by dash or underscore ("text-title1-strong", vec!["text-title1-strong"]), ("text-title1_strong", vec!["text-title1_strong"]), From 179dbdc083fcc51de87a35a3ee2166ee929cb8fa Mon Sep 17 00:00:00 2001 From: Robin Malfait Date: Fri, 9 May 2025 18:13:03 +0200 Subject: [PATCH 2/3] allow `_` before a number --- crates/oxide/src/extractor/named_utility_machine.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/crates/oxide/src/extractor/named_utility_machine.rs b/crates/oxide/src/extractor/named_utility_machine.rs index 4b6f1053324f..7c847a2e2915 100644 --- a/crates/oxide/src/extractor/named_utility_machine.rs +++ b/crates/oxide/src/extractor/named_utility_machine.rs @@ -279,7 +279,11 @@ impl Machine for NamedUtilityMachine { Class::Number => { if !matches!( cursor.prev.into(), - Class::Dash | Class::Dot | Class::Number | Class::AlphaLower + Class::Dash + | Class::Underscore + | Class::Dot + | Class::Number + | Class::AlphaLower ) { return self.restart(); } From 57aa137b9bab422a93ed6ba73166617fe315fb8f Mon Sep 17 00:00:00 2001 From: Robin Malfait Date: Fri, 9 May 2025 18:25:43 +0200 Subject: [PATCH 3/3] update changelog --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 68a1143d06df..4d76daf0fb56 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -- Nothing yet! +### Fixed + +- Allow `_` before numbers during candidate extraction ([#17961](https://github.com/tailwindlabs/tailwindcss/pull/17961)) ## [4.1.6] - 2025-05-09