tailwindcss/crates/oxide/src
Jordan Pittman 6220cb8749 Fix Ruby files causing the CLI to hang (#17383)
Fixes #17379

The preprocessor we added to detect embedded languages uses a back
reference and given a long enough file with certain byte / character
patterns it'll cause what appears to be an indefinite hang (might just
be catastrophically exponential backtracking but not sure)

This replaces the one regex w/ back references with two, anchored,
multi-line regexes

Now we search for all the starting & ending delimiters in the file. We
then loop over all the starting delimiters, find the paired ending one,
and preprocess the content inside

---------

Co-authored-by: Philipp Spiess <hello@philippspiess.com>
2025-03-26 11:02:09 +01:00
..
extractor Fix Ruby files causing the CLI to hang (#17383) 2025-03-26 11:02:09 +01:00
fixtures Improve Oxide candidate extractor [0] (#16306) 2025-03-05 11:55:24 +01:00
scanner Add .node and .wasm to known binary file list (#17123) 2025-03-11 13:05:51 +01:00
cursor.rs Improve Oxide candidate extractor [0] (#16306) 2025-03-05 11:55:24 +01:00
fast_skip.rs Hoist oxide/crates to just crates (#13333) 2024-03-23 09:00:48 -04:00
glob.rs Improve Oxide candidate extractor [0] (#16306) 2025-03-05 11:55:24 +01:00
lib.rs Pre process <template lang="…"> in Vue files (#17252) 2025-03-17 13:54:37 +00:00
main.rs Improve Oxide candidate extractor [0] (#16306) 2025-03-05 11:55:24 +01:00
paths.rs Fix integration tests on Windows (#14824) 2024-10-30 11:26:29 +00:00
throughput.rs Improve Oxide candidate extractor [0] (#16306) 2025-03-05 11:55:24 +01:00