@ 261027.5

200217.37 · 0874aa115c92f102a6ec474944f589667463fcd0

repo: make ripgrep build with the new organization

reading declarations

Cargo.toml

@@ -25,7 +25,7 @@ appveyor = { repository = "BurntSushi/ripgrep" }  [[bin]] bench = false-path = "src/main.rs"+path = "crates/core/main.rs" name = "rg"  [[test]]@@ -34,21 +34,21 @@ path = "tests/tests.rs"  [workspace] members = [-  "globset",-  "grep",-  "grep-cli",-  "grep-matcher",-  "grep-pcre2",-  "grep-printer",-  "grep-regex",-  "grep-searcher",-  "ignore",+  "crates/globset",+  "crates/grep",+  "crates/cli",+  "crates/matcher",+  "crates/pcre2",+  "crates/printer",+  "crates/regex",+  "crates/searcher",+  "crates/ignore", ]  [dependencies] bstr = "0.2.0"-grep = { version = "0.2.4", path = "grep" }-ignore = { version = "0.4.7", path = "ignore" }+grep = { version = "0.2.4", path = "crates/grep" }+ignore = { version = "0.4.7", path = "crates/ignore" } lazy_static = "1.1.0" log = "0.4.5" num_cpus = "1.8.0"

build.rs

@@ -9,7 +9,7 @@ use clap::Shell; use app::{RGArg, RGArgKind};  #[allow(dead_code)]-#[path = "src/app.rs"]+#[path = "crates/core/app.rs"] mod app;  fn main() {

crates/core/README.md

new file mode 100644@@ -0,0 +1,15 @@+ripgrep core+------------+This is the core ripgrep crate. In particular, `main.rs` is where the `main`+function lives.++Most of ripgrep core consists of two things:++* The definition of the CLI interface, including docs for every flag.+* Glue code that brings the `grep-matcher`, `grep-regex`, `grep-searcher` and+  `grep-printer` crates together to actually execute the search.++Currently, there are no plans to make ripgrep core available as an independent+library. However, much of the heavy lifting of ripgrep is done via its+constituent crates, which can be reused independent of ripgrep. Unfortunately,+there is no guide or tutorial to teach folks how to do this yet.

crates/grep/Cargo.toml

@@ -13,12 +13,12 @@ keywords = ["regex", "grep", "egrep", "search", "pattern"] license = "Unlicense/MIT"  [dependencies]-grep-cli = { version = "0.1.2", path = "../grep-cli" }-grep-matcher = { version = "0.1.2", path = "../grep-matcher" }-grep-pcre2 = { version = "0.1.3", path = "../grep-pcre2", optional = true }-grep-printer = { version = "0.1.2", path = "../grep-printer" }-grep-regex = { version = "0.1.3", path = "../grep-regex" }-grep-searcher = { version = "0.1.4", path = "../grep-searcher" }+grep-cli = { version = "0.1.2", path = "../cli" }+grep-matcher = { version = "0.1.2", path = "../matcher" }+grep-pcre2 = { version = "0.1.3", path = "../pcre2", optional = true }+grep-printer = { version = "0.1.2", path = "../printer" }+grep-regex = { version = "0.1.3", path = "../regex" }+grep-searcher = { version = "0.1.4", path = "../searcher" }  [dev-dependencies] termcolor = "1.0.4"

crates/pcre2/Cargo.toml

@@ -13,5 +13,5 @@ keywords = ["regex", "grep", "pcre", "backreference", "look"] license = "Unlicense/MIT"  [dependencies]-grep-matcher = { version = "0.1.2", path = "../grep-matcher" }+grep-matcher = { version = "0.1.2", path = "../matcher" } pcre2 = "0.2.0"

crates/printer/Cargo.toml

@@ -20,12 +20,12 @@ serde1 = ["base64", "serde", "serde_derive", "serde_json"] [dependencies] base64 = { version = "0.11.0", optional = true } bstr = "0.2.0"-grep-matcher = { version = "0.1.2", path = "../grep-matcher" }-grep-searcher = { version = "0.1.4", path = "../grep-searcher" }+grep-matcher = { version = "0.1.2", path = "../matcher" }+grep-searcher = { version = "0.1.4", path = "../searcher" } termcolor = "1.0.4" serde = { version = "1.0.77", optional = true } serde_derive = { version = "1.0.77", optional = true } serde_json = { version = "1.0.27", optional = true }  [dev-dependencies]-grep-regex = { version = "0.1.3", path = "../grep-regex" }+grep-regex = { version = "0.1.3", path = "../regex" }

crates/regex/Cargo.toml

@@ -15,7 +15,7 @@ license = "Unlicense/MIT" [dependencies] aho-corasick = "0.7.3" bstr = "0.2.10"-grep-matcher = { version = "0.1.2", path = "../grep-matcher" }+grep-matcher = { version = "0.1.2", path = "../matcher" } log = "0.4.5" regex = "1.1" regex-syntax = "0.6.5"

crates/searcher/Cargo.toml

@@ -17,12 +17,12 @@ bstr = { version = "0.2.0", default-features = false, features = ["std"] } bytecount = "0.6" encoding_rs = "0.8.14" encoding_rs_io = "0.1.6"-grep-matcher = { version = "0.1.2", path = "../grep-matcher" }+grep-matcher = { version = "0.1.2", path = "../matcher" } log = "0.4.5" memmap = "0.7"  [dev-dependencies]-grep-regex = { version = "0.1.3", path = "../grep-regex" }+grep-regex = { version = "0.1.3", path = "../regex" } regex = "1.1"  [features]