-
Notifications
You must be signed in to change notification settings - Fork 743
Comparing changes
Open a pull request
base repository: tinyproxy/tinyproxy
base: master
head repository: tinyproxy/tinyproxy
compare: ragel
- 13 commits
- 6 files changed
- 1 contributor
Commits on Oct 8, 2020
-
conf: factor out list of regex into separate header
this allows to include the regexes in another file and apply transformations and experiments.
Configuration menu - View commit details
-
Copy full SHA for f1f3994 - Browse repository at this point
Copy the full SHA f1f3994View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3eb2386 - Browse repository at this point
Copy the full SHA 3eb2386View commit details -
conf: remove empty parens group from regex
using an empty group () is not defined in the posix spec, and as such "undefined behaviour", even though it happened to work with both GLIBC and MUSL libc, as well as with oniguruma's POSIX compatibility API. we used this idiom as a trick when refactoring the regex parsing, in order not to change the match indices of all the handler functions, ignorant that this is not explicitly allowed by the spec. to make future refactoring easier, we introduce a MGROUP1 macro that's added to each match group index, so we have only a single knob to turn in case a similar change becomes necessary again.
Configuration menu - View commit details
-
Copy full SHA for b07f7a8 - Browse repository at this point
Copy the full SHA b07f7a8View commit details
Commits on Oct 9, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 393e51b - Browse repository at this point
Copy the full SHA 393e51bView commit details -
conf: remove obsolete whitespace from regex start
we already deal with leading whitespace before a command in a manual way before comparing keywords.
Configuration menu - View commit details
-
Copy full SHA for 173c5b6 - Browse repository at this point
Copy the full SHA 173c5b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 57f932a - Browse repository at this point
Copy the full SHA 57f932aView commit details -
conf: parse regexes case-sensitive
rather than treating everything as case insensitive, we explicitly allow upper/lowercase where it makes sense.
Configuration menu - View commit details
-
Copy full SHA for 86379b4 - Browse repository at this point
Copy the full SHA 86379b4View commit details
Commits on Oct 12, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 22f059d - Browse repository at this point
Copy the full SHA 22f059dView commit details
Commits on Oct 15, 2020
-
Configuration menu - View commit details
-
Copy full SHA for ae4cbca - Browse repository at this point
Copy the full SHA ae4cbcaView commit details -
Configuration menu - View commit details
-
Copy full SHA for dabfd1a - Browse repository at this point
Copy the full SHA dabfd1aView commit details
Commits on Oct 16, 2020
-
conf: shrink back RE_MAX_MATCHES to 16
with the IPv4 regex simplification from 22f059d we're back to max 15 match groups according to re2r analysis (the most elaborate regex is the upstream one).
Configuration menu - View commit details
-
Copy full SHA for 42bb446 - Browse repository at this point
Copy the full SHA 42bb446View commit details -
conf: add tool to print regex name/regex pairs as re2r input
this is currently not included in the build system and needs to be compiled by hand.
Configuration menu - View commit details
-
Copy full SHA for 3a920b7 - Browse repository at this point
Copy the full SHA 3a920b7View commit details -
conf: speed up parsing 10x by using ragel if available
conf_regex.rl is generated from the output of conf_regex_print.c using re2r (https://github.com/rofl0r/re2r). if ragel is available on the build host, it is being used to generate finite state machines from the regexes used by the config file parser for an impressive speed boost, while only adding moderately to binary size. a stripped x86_64 tinyproxy binary compiled with -O2 is still only ~100KB.
Configuration menu - View commit details
-
Copy full SHA for 417c258 - Browse repository at this point
Copy the full SHA 417c258View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff master...ragel