aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* docs: update progress checklist in add-picker2魏曹先生2 days1-7/+7
|
* docs(examples): add example `example-argument-picker"`unreleased魏曹先生3 days7-0/+636
|
* docs(features): document the new `picker` feature魏曹先生3 days2-4/+28
|
* feat(macros): update `route!` to use `Routable` trait for error routing魏曹先生3 days1-1/+7
| | | | | | | Add `Routable` implementation for `ChainProcess<ThisProgram>` to enable direct routing of chain process values through the `route!` macro without double-wrapping, improving semantics and flexibility of error conversion
* feat(macros): add Routable trait and update route! macro魏曹先生3 days5-9/+76
| | | | | | Introduce a `Routable` trait with `to_chain` and `to_render` methods, replacing direct `Grouped` usage in the `route!` macro so error branches correctly route through the rendering pipeline
* fix!: rename `Groupped` to `Grouped` across the codebase魏曹先生3 days48-195/+206
|
* fix: correct example dispatcher target and fix list indentation魏曹先生3 days1-10/+10
|
* docs: add GETTING_STARTED.md and update README icon size魏曹先生3 days3-812/+843
|
* feat(macros:chain): accept any return type in chain functions魏曹先生3 days2-33/+48
|
* fix: propagate help flag to program context for global pickers魏曹先生3 days1-3/+12
|
* feat(arg_picker): add mingling_support feature flag魏曹先生3 days3-2/+8
|
* feat: deprecate basic and structural renderer setups when picker is魏曹先生3 days3-0/+43
| | | | enabled
* docs: add doc comments for Picker, AsPicker, and ProgramSetup traits魏曹先生3 days3-0/+25
|
* feat: migrate mingling-specific picker code into mingling crate魏曹先生3 days15-124/+149
| | | | | | | | BREAKING CHANGE: Remove `mingling_support` feature from arg-picker crate. The `EntryPicker` trait and `corebind` module are now part of the mingling crate directly, and `build_pattern1` is now a public method.
* feat(picker): extract remains constant and consolidate imports魏曹先生3 days3-8/+26
| | | | | Move the inline `remains_arg` definition into a shared public constant `REMAINS` and update all consumers to import it from the new location.
* test(or_route): update panic message in test魏曹先生4 days1-2/+2
|
* refactor(picker): extract pick_flag helper to reduce duplication魏曹先生4 days3-26/+40
|
* feat(setups): refactor picker subsystem with new argument manipulation魏曹先生4 days1-0/+23
| | | | | | | | | | API Refactor six setup types into `mingling::setups::picker` to use chained `PickerArg<Flag>` parsing, replacing direct `global_argument` access. Add `get_args_mut`, `take_args`, and `replace_args` to `Program` for enhanced argument control. These changes are gated behind the `picker` feature, with legacy implementations preserved when the feature is off.
* feat(setups): add picker module with flag-based program setup魏曹先生4 days5-0/+333
|
* feat: add structural_renderer and all_serde_fmt cargo features魏曹先生4 days2-1/+10
|
* feat(picker): add From impls for PickerArgs to Vec conversions魏曹先生4 days1-0/+20
| | | | | | | Implement `From<PickerArgs>` for `Vec<String>` and `From<&PickerArgs>` for `Vec<&str>`, enabling seamless conversion from the picker arguments enum to owned or borrowed string vectors.
* feat(program): add mutable access, take, and replace for program args魏曹先生4 days1-0/+27
|
* feat(arg_picker): add preprocessing and postprocessing priority levels魏曹先生4 days4-3/+68
| | | | | | | | Add `Begin`, `Preprocess`, `Final`, and `Postprocess` variants to `PickerArgAttr` enum, and implement `Pickable` for `PickerArgs` as a built-in picker that consumes all remaining unclaimed arguments at lowest priority. Expose `is_masked` and `build_masked_args` as public functions for use by custom pickers.
* chore: add picker, parser, and comp features to rust-analyzer config魏曹先生4 days2-26/+31
|
* chore(idea): add IntelliJ IDE project configuration files魏曹先生4 days16-0/+366
|
* fix(core)!: conditionally override exit code in ExitCodeSetup魏曹先生4 days2-2/+11
|
* feat(macros): relax `#[help]` return type to accept `Into<RenderResult>`魏曹先生4 days3-33/+34
|
* ix(macros)!: require explicit `.into()` on chain function return values魏曹先生4 days34-222/+177
|
* chore: make clippy-fix.sh executable魏曹先生4 days1-0/+0
|
* feat(macros): allow `#[renderer]` to accept any return type魏曹先生4 days2-36/+35
|
* feat(core): add multiple From implementations for RenderResult魏曹先生4 days2-0/+58
| | | | | Implement `From<()>`, integer types, String, &String, and &str to allow renderers to return simple values directly
* chore(package-all): replace system tar with native Rust extraction魏曹先生4 days4-16/+140
|
* refactor(package-all): simplify conditional logic with let-chains and魏曹先生4 days1-51/+42
| | | | use `is_none_or` / `is_some_and`
* test(value_flag): replace assert! with assert_eq! for clarity魏曹先生4 days1-5/+5
|
* chore: remove obsolete gitignore entry for Cargo.toml.bkup魏曹先生4 days1-3/+0
|
* feat: replace RELEASE-WORKSPACE with package-all script魏曹先生4 days2-145/+506
|
* docs: remove redundant logo link from lib.md魏曹先生5 days1-5/+0
|
* docs: add API documentation deployment section to CI docs魏曹先生5 days1-9/+26
|
* docs(mingling): move crate-level docs to separate lib.md魏曹先生5 days3-74/+106
|
* ci(ci): add API docs generation step in deploy workflow魏曹先生5 days1-0/+5
|
* feat: add deploy-api-docs tool for building crate docs with docs.rs魏曹先生5 days2-2/+137
| | | | features
* chore: add symlinked license files to subcrates魏曹先生5 days4-0/+4
|
* feat(dependency_order): include crates starting with "arg" in filter魏曹先生5 days1-2/+2
| | | | | Extend the workspace member filter to also match crates prefixed with "arg" in addition to "mingling"
* chore: make run.sh executable魏曹先生5 days1-0/+0
|
* chore(version-files): remove outdated version file entries魏曹先生5 days1-12/+0
|
* refactor: rename `mingling_picker` to `arg_picker`魏曹先生5 days58-354/+360
|
* docs: enable doc-test linting for prelude and parser modules魏曹先生5 days3-35/+3
| | | | | Convert ```` ```ignore ```` to working doc-tests or remove non-compilable examples
* feat: add shorthand methods for fallback picker patterns魏曹先生5 days3-41/+210
| | | | | | | Introduce `pick_or`, `pick_or_default`, and `pick_or_route` methods on both `Picker` and existing patterns to combine picking with a fallback in a single call. Extract shared `PickerPattern1` construction into `Picker::build_pattern1`.
* feat(corebind): add EntryPicker trait for binding entry types to Picker魏曹先生5 days3-2/+75
| | | | | BREAKING CHANGE: prelude now exports EntryPicker in place of IntoPicker when mingling_support feature is enabled
* feat(picker): expose internal fields and add `IntoPicker` for魏曹先生5 days3-9/+20
| | | | | | | | | `&Vec<String>` Make `route_phantom` and `args` fields `pub(crate)` for internal reuse. Fix error route conversion by adding `.into()` call. Implement `IntoPicker` for `&Vec<String>` to support passing string references.