summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Gallant <jamslam@gmail.com>2020-02-17 18:28:09 -0500
committerAndrew Gallant <jamslam@gmail.com>2020-02-17 19:24:53 -0500
commit0874aa115c92f102a6ec474944f589667463fcd0 (patch)
treecd88b34bbc4fe58bf70a9ef0556245f53d4e1d50
parentfdd8510fdda6109c562e479c718d42c8ecc26263 (diff)
repo: make ripgrep build with the new organization
-rw-r--r--Cargo.toml24
-rw-r--r--build.rs2
-rw-r--r--crates/core/README.md15
-rw-r--r--crates/grep/Cargo.toml12
-rw-r--r--crates/pcre2/Cargo.toml2
-rw-r--r--crates/printer/Cargo.toml6
-rw-r--r--crates/regex/Cargo.toml2
-rw-r--r--crates/searcher/Cargo.toml4
8 files changed, 41 insertions, 26 deletions
diff --git a/Cargo.toml b/Cargo.toml
index d0007022..02e9724a 100644
--- a/Cargo.toml
+++ b/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"
diff --git a/build.rs b/build.rs
index 53f7259e..00e0a051 100644
--- a/build.rs
+++ b/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() {
diff --git a/crates/core/README.md b/crates/core/README.md
new file mode 100644
index 00000000..44920e43
--- /dev/null
+++ b/crates/core/README.md
@@ -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.
diff --git a/crates/grep/Cargo.toml b/crates/grep/Cargo.toml
index d37ceff7..7371750e 100644
--- a/crates/grep/Cargo.toml
+++ b/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"
diff --git a/crates/pcre2/Cargo.toml b/crates/pcre2/Cargo.toml
index 8b907106..924943d5 100644
--- a/crates/pcre2/Cargo.toml
+++ b/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"
diff --git a/crates/printer/Cargo.toml b/crates/printer/Cargo.toml
index 3a04a8b8..ca9d0b7e 100644
--- a/crates/printer/Cargo.toml
+++ b/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" }
diff --git a/crates/regex/Cargo.toml b/crates/regex/Cargo.toml
index a1dbb9f9..e390480f 100644
--- a/crates/regex/Cargo.toml
+++ b/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"
diff --git a/crates/searcher/Cargo.toml b/crates/searcher/Cargo.toml
index 82c97c2a..ac20ae0f 100644
--- a/crates/searcher/Cargo.toml
+++ b/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]