Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

remove regex plugin + rollup + chores #436

Merged
merged 15 commits into from
Dec 30, 2017
Merged

remove regex plugin + rollup + chores #436

merged 15 commits into from
Dec 30, 2017

Commits on Dec 30, 2017

  1. deps: update quickcheck and rand to latest versions

    These are dev dependencies, so we don't need to worry about the minimum
    Rust version supported.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    a5585c8 View commit details
    Browse the repository at this point in the history
  2. ci: limit testing on 1.12.0

    The latest update to rand requires a newer version of Rust. Since it's
    a dev dependency, we shouldn't need to do a semver bump when updating
    rand. However, CI needs to be told not to run tests. Instead, we merely
    check that we can build the crate and produce documentation.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    b247c57 View commit details
    Browse the repository at this point in the history
  3. regex_macros: delete it

    The regex_macros crate hasn't been maintained in quite some time, and has
    been broken. Nobody has complained. Given the fact that there are no
    immediate plans to improve the situation, and the fact that it is slower
    than the runtime engine, we simply remove it.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    cc7b00c View commit details
    Browse the repository at this point in the history
  4. deps: bump simd to 0.2.1

    The 0.2.1 release of simd includes a fix so that it can compile on the
    latest nightly.
    
    We needn't worry about semver here because simd is a nightly-only
    dependency.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    e39e4f1 View commit details
    Browse the repository at this point in the history
  5. deps: setup workspace

    There are a few sub-crates in this repository, so sharing a target
    directory makes sense.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    b8f40ef View commit details
    Browse the repository at this point in the history
  6. bench: update the benchmark runner

    This updates dependencies and makes sure everything compiles and runs.
    This also simplifies the build script.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    a7ef77f View commit details
    Browse the repository at this point in the history
  7. regex-debug: update deps

    Principally, this updates docopt to 0.8, which replaces rustc-serialize
    with serde.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    d07b285 View commit details
    Browse the repository at this point in the history
  8. docs: link to docs.rs

    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    f0a1584 View commit details
    Browse the repository at this point in the history
  9. literals: tweak the TBM heuristic

    This commit tweaks the heuristic employed to determine whether to use TBM
    or not. For the most part, the heuristic was tweaked by combining the
    actual benchmark results with a bit of hand waving. In particular, the
    primary change here is that the frequency rank cutoff is no longer a
    constant, but rather, a function of the pattern length. That is, we guess
    that TBM will do well with longer patterns, even if it contains somewhat
    infrequent bytes. We do put a constant cap on this heuristic. That is,
    regardless of the length of the pattern, if a "very rare" byte is found
    in the pattern, then we won't use TBM.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    392b3d6 View commit details
    Browse the repository at this point in the history
  10. literals: rename SingleMemchr to FreqyPacked

    As far as I can tell, nobody has actually described a substring search
    algorithm that used both frequency analysis and vector instructions.
    So I'm naming it.
    BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    0cbcb51 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    fd11756 View commit details
    Browse the repository at this point in the history
  12. tests: added test for demoing capture names

    See also: #399
    fulara authored and BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    75907d5 View commit details
    Browse the repository at this point in the history
  13. docs: fix dangling references to run-bench

    4fab6c added the current bench runner script as `benches/run`, and
    removed the old `run-bench` script. It was later renamed to `bench/run`
    when `benches` was renamed to `bench` in b217bf. This patch fixes a few
    references to the old benchmark runner in the hacking guide as well
    as a few references to the old directory structure. The cargo plugin
    syntax in the example is also updated.
    Ethan Pailes authored and BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    99fd316 View commit details
    Browse the repository at this point in the history
  14. search: skip dfa for anchored pats with captures

    The DFA can't produce captures, but is still faster than the Pike VM
    NFA, so the normal approach to finding capture groups is to look for
    the entire match with the DFA and then run the NFA on the substring
    of the input that matched. In cases where the regex in anchored, the
    match always starts at the beginning of the input, so there is never
    any point to trying the DFA first.
    
    The DFA can still be useful for rejecting inputs which are not in the
    language of the regular expression, but anchored regex with capture
    groups are most commonly used in a parsing context, so it seems like a
    fair trade-off.
    
    Fixes #348
    Ethan Pailes authored and BurntSushi committed Dec 30, 2017
    Configuration menu
    Copy the full SHA
    2103045 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    5ea594e View commit details
    Browse the repository at this point in the history