| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
|
| |
Add detailed doc comments, examples, and usage notes across
the completion module including ShellContext, Suggest, and
related traits.
|
| | |
|
| |
|
|
|
|
| |
Replace intra-doc links with explicit URLs for types that are
not accessible from the current module scope, and add missing
panic documentation section.
|
| | |
|
| |
|
|
|
| |
Mark all source files with a comment indicating they are not optimized
for documentation purposes.
|
| | |
|
| |
|
|
|
| |
Add `#[allow(clippy::future_not_send)]` to chain invocation methods and
clarify Send requirements for `exec` bounds.
|
| |
|
|
|
|
|
|
| |
Refactor `GlobalResources` from a type-erased `Arc<Mutex<HashMap<...>>>`
alias into a `GlobalResContainer` struct with per-resource mutexes.
This prevents nested `modify_res` calls from deadlocking, allows
independent containers to coexist, and keeps `Program`'s public
resource API unchanged.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace bool-based settings with enums, refine visibility and
signatures, and standardize `Self` usage across the crate.
- Introduce `ErrorOutput`, `RenderOutput`, `PanicSilence`, `Verbosity`,
`ColorOutput`, and `ProgressOutput` enums for clearer configuration
semantics
- Make `GlobalResources`, `ProgramCell`, and
`split_input`/`split_input_string` public
- Change hook info parameters to accept references and
`split_input_string` to take `&str`
- Apply `Self` shorthand throughout implementations and add
`#[must_use]` attributes where appropriate
- Enable strict clippy lints with targeted allowances
|
| |
|
|
|
| |
Fix the method to use `eprintln!` instead of `println!` when
`immediate_output` is enabled, ensuring error output goes to stderr.
|
| | |
|
| |
|
|
|
| |
Update changelog and issue tracker notes for the enhanced
`default_completion` behavior.
|
| | |
|
| |
|
|
|
|
|
| |
When a concrete entry's custom completion handler produces a `Suggest`
value, combine it with the default subcommand suggestions instead of
replacing them entirely. `FileCompletion` still falls back to the
default completion since it cannot be meaningfully merged.
|
| |
|
|
|
|
|
|
|
|
|
| |
Add `Metadata<B>` trait and `#[metadata(Entry)]` attribute macro
to attach arbitrary, compile-time-typed metadata to entries.
Implement `ProgramCollect::get_metadata<T>()` for runtime retrieval,
backed by a global registry populated by `register_metadata!`.
Extend `pathf` with `MetadataPattern` to resolve metadata types
across modules at build time. Add two examples demonstrating
metadata usage with and without pathf integration.
|
| | |
|
| | |
|
| |
|
|
| |
Fix command tree matching when global flags precede the subcommand.
|
| |
|
|
|
|
| |
Add `#[completion(EntryFallback)]` syntax to enable custom
completion suggestions for unmatched entries, merging fallback
results with default completions via `Suggest::combine()`.
|
| | |
|
| |
|
|
|
|
|
|
| |
Rename the internal fallback type and its associated `ProgramCollect`
plumbing from `ErrorDispatcherNotFound`/`build_dispatcher_not_found` to
`EntryFallback`/`build_entry_fallback`, along with the generated enum
variant and pack type. Update all documentation, examples, and tests
accordingly.
|
| |
|
|
|
|
| |
Previously, an absent -F and a present -F without a value both
mapped to "unknown". Now, a -F with no value maps to an empty
shell flag, while a missing -F remains "unknown".
|
| |
|
|
|
| |
Document build-time features, feature pairing, and add a `build.rs`
template for easily setting up `comp` and `pathf`.
|
| |
|
|
|
| |
Add module-level docs for the build module via include_str and
restrict public re-exports to explicit items instead of glob imports.
|
| |
|
|
|
| |
Use the `special_argument!` macro to simplify extracting
shell context values from command-line arguments.
|
| |
|
|
|
|
|
|
|
| |
Add `add_suggest()` and `add_suggest_with_description()` methods to
`Suggest` for ergonomic batch population of suggestion sets from
collections of strings.
Update the `suggest!` macro to use these new methods and accept
expressions beyond string literals for suggestion items.
|
| |
|
|
|
| |
Update all references across docs, examples, and configuration files to
use the shorter `extras` feature name.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
Replace manual `#[cfg(feature = "async")]` code duplication in `exec`
and
`exec_with_args` with `#[might_be_async::func]` annotations and
`might_be_async::invoke!()` wrappers, reducing two code paths to one.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
Replace the `builds` feature with `build` across the crate, keeping
a backward-compatible alias for the old name. Update all internal
visibility from `#[doc(hidden)] pub mod` to `pub(crate) mod` and
reorganize the `__private` module into a dedicated `private.rs`.
|
| |
|
|
| |
clause
|
| | |
|
| |
|
|
|
|
|
|
|
|
| |
fields
Declare `Grouped` as `unsafe trait` to make its soundness invariant
visible.
Make `AnyOutput.type_id` and `member_id` private; add public accessors
and
the `unsafe fn new_bare` constructor.
|
| |
|
|
|
|
|
| |
Make `StructuralData` and `StructuralDataSealed` generic over a program
collector type to bypass the orphan rule for `group_structural!`. This
enables external types to implement `StructuralData<crate::ThisProgram>`
without violating coherence.
|
| | |
|
| |
|
|
|
|
|
| |
Implement `RenderResult::append_other()` to merge buffered content and
immediate output behavior from one result into another. Add the
`r_append!` macro with both explicit buffer (`dst, src`) and implicit
buffer (`src`) usage forms, re-exported from `mingling::prelude`.
|
| |
|
|
|
| |
Enables method chaining for `with_resource`, `with_dispatcher`,
`with_dispatchers`, `with_hook`, and `with_setup`
|
| | |
|