forked from MirrorHub/synapse
* tests for push rule pattern matching * tests for acl pattern matching * factor out common `re.escape` * Factor out common re.compile * Factor out common anchoring code * add word_boundary support to `glob_to_regex` * Use `glob_to_regex` in push rule evaluator NB that this drops support for character classes. I don't think anyone ever used them. * Improve efficiency of globs with multiple wildcards The idea here is that we compress multiple `*` globs into a single `.*`. We also need to consider `?`, since `*?*` is as hard to implement efficiently as `**`. * add assertion on regex pattern * Fix mypy * Simplify glob_to_regex * Inline the glob_to_regex helper function Signed-off-by: Dan Callahan <danc@element.io> * Moar comments Signed-off-by: Dan Callahan <danc@element.io> Co-authored-by: Dan Callahan <danc@element.io> |
||
---|---|---|
.. | ||
caches | ||
__init__.py | ||
test_async_utils.py | ||
test_dict_cache.py | ||
test_expiring_cache.py | ||
test_file_consumer.py | ||
test_glob_to_regex.py | ||
test_itertools.py | ||
test_linearizer.py | ||
test_logcontext.py | ||
test_logformatter.py | ||
test_lrucache.py | ||
test_ratelimitutils.py | ||
test_retryutils.py | ||
test_rwlock.py | ||
test_stream_change_cache.py | ||
test_stringutils.py | ||
test_threepids.py | ||
test_treecache.py | ||
test_wheel_timer.py |