JoshMcguigan / shell_completion

Write shell completion scripts in pure Rust
Apache License 2.0
133 stars 6 forks source link

crates.io package does not work with the example #9

Closed itacud95 closed 1 year ago

itacud95 commented 1 year ago

The example cargo_completion works when cloning this repo, but when using the crates.io package it fails to compile.

To reproduce, clone this repo and make the following changes:

git diff
diff --git a/cargo_completion/Cargo.toml b/cargo_completion/Cargo.toml
index 7ee4c76..2fb70ad 100644
--- a/cargo_completion/Cargo.toml
+++ b/cargo_completion/Cargo.toml
@@ -10,7 +10,7 @@ keywords = ["cli", "completion", "autocomplete", "cargo"]
 license = "MIT OR Apache-2.0"

 [dependencies]
-shell_completion = { path = "../shell_completion" }
+shell_completion = "0.0.1"

 [[bin]]
 name = "_cargo_completion"

Building the example will generate the following error (truncated):

cargo install --force --path cargo_completion
  Installing cargo_completion v0.0.1 (/home/jk/dev/rust/shell_completion/cargo_completion)
    Updating crates.io index
   Compiling shell_completion v0.0.1
   Compiling cargo_completion v0.0.1 (/home/jk/dev/rust/shell_completion/cargo_completion)
error[E0432]: unresolved import `shell_completion::CompletionSet`
 --> cargo_completion/src/main.rs:1:62
  |
1 | use shell_completion::{BashCompletionInput, CompletionInput, CompletionSet};
  |                                                              ^^^^^^^^^^^^^
  |                                                              |
  |                                                              no `CompletionSet` in the root
  |                                                              help: a similar name exists in the module: `CompletionInput`

Am I doing something wrong, or is the crates.io package out-dated?

JoshMcguigan commented 1 year ago

Thanks for the report!

I've pushed a 0.0.2 version to crates.io, and confirmed cargo build -p cargo_completion builds.