aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ix(macros)!: require explicit `.into()` on chain function return values魏曹先生29 hours34-222/+177
|
* chore: make clippy-fix.sh executable魏曹先生30 hours1-0/+0
|
* feat(macros): allow `#[renderer]` to accept any return type魏曹先生30 hours2-36/+35
|
* feat(core): add multiple From implementations for RenderResult魏曹先生30 hours2-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魏曹先生31 hours4-16/+140
|
* refactor(package-all): simplify conditional logic with let-chains and魏曹先生31 hours1-51/+42
| | | | use `is_none_or` / `is_some_and`
* test(value_flag): replace assert! with assert_eq! for clarity魏曹先生34 hours1-5/+5
|
* chore: remove obsolete gitignore entry for Cargo.toml.bkup魏曹先生34 hours1-3/+0
|
* feat: replace RELEASE-WORKSPACE with package-all script魏曹先生36 hours2-145/+506
|
* docs: remove redundant logo link from lib.md魏曹先生43 hours1-5/+0
|
* docs: add API documentation deployment section to CI docs魏曹先生43 hours1-9/+26
|
* docs(mingling): move crate-level docs to separate lib.md魏曹先生43 hours3-74/+106
|
* ci(ci): add API docs generation step in deploy workflow魏曹先生44 hours1-0/+5
|
* feat: add deploy-api-docs tool for building crate docs with docs.rs魏曹先生44 hours2-2/+137
| | | | features
* chore: add symlinked license files to subcrates魏曹先生44 hours4-0/+4
|
* feat(dependency_order): include crates starting with "arg" in filter魏曹先生44 hours1-2/+2
| | | | | Extend the workspace member filter to also match crates prefixed with "arg" in addition to "mingling"
* chore: make run.sh executable魏曹先生44 hours1-0/+0
|
* chore(version-files): remove outdated version file entries魏曹先生44 hours1-12/+0
|
* refactor: rename `mingling_picker` to `arg_picker`魏曹先生44 hours58-354/+360
|
* docs: enable doc-test linting for prelude and parser modules魏曹先生46 hours3-35/+3
| | | | | Convert ```` ```ignore ```` to working doc-tests or remove non-compilable examples
* feat: add shorthand methods for fallback picker patterns魏曹先生46 hours3-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魏曹先生46 hours3-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魏曹先生46 hours3-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.
* docs: add changelog entries for core/macros features and picker system魏曹先生46 hours1-0/+36
|
* feat(mingling, mingling_picker): add feature constants and fixunreleased魏曹先生2 days3-6/+27
| | | | | | | | | | formatting Add `MINGLING_CORE` and `MINGLING_MACROS` feature flag constants to the mingling crate, mirroring existing pattern for other features Reorganize imports and reformat closures in mingling_picker for consistent style
* docs(picker): replace doc comment with `include_str!` reference魏曹先生2 days2-10/+4
|
* docs: add module-level documentation and improve doc comments魏曹先生2 days27-55/+278
|
* feat(picker2): complete Picker2 prototype魏曹先生2 days89-93/+6119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Picker2 replaces the original Picker1 with a two-phase (tag → pick) + mask-bitmap architecture, decoupling argument matching from type conversion via a composable matcher pipeline. Architecture - FlagMatcher — boolean flags (--verbose) - ArgMatcher — single flag+value pairs (--name Alice) - MultiArgMatcher — multi-value flag groups (--files a.txt b.txt) - PositionalMatcher — positional arguments, respects `--` - SingleMatcher — composite for Single-type Pickables Types - Flag (Active/Inactive) — semantic bool flag value - String + 14 numeric types via SinglePickable trait - Vec<T> — greedy multi-value (all SinglePickable types) - VecUntil<T> — bounded multi-value via BoundaryCheck trait - VecUntil<T>, pick_string, pick_numbers, pick_bool, pick_flag Style system - UNIX_STYLE (kebab), POWERSHELL_STYLE (Pascal), WINDOWS_STYLE (Pascal) - naming_case auto-conversion via just_fmt integration - Style-aware separator (= for Unix, : for PS/Windows) Infrastructure - internal_repeat! macro generates PickerPattern1..=32 - SinglePickable blanket impl → Pickable - MultiPickableWithBoundary trait with greedy/bounded variants - 151 integration tests - Docs updated for parser feature
* fix: correct typo in module name魏曹先生8 days1-1/+1
|
* docs: Update help functions note to use `writeln!` instead of魏曹先生8 days2-2/+2
| | | | `r_println!`
* feat(renderer): change render_greeting to return RenderResult魏曹先生8 days1-2/+4
|
* docs(readme): add CI workflow badge魏曹先生8 days1-0/+1
|
* refactor(docs): mark documentation update as completed魏曹先生8 days1-1/+1
|
* docs(changelog): document RenderResult::new and removed r_print macros魏曹先生8 days2-4/+27
|
* style: Reorder imports and reformat code with cargo fmt魏曹先生8 days12-29/+35
|
* docs: migrate renderers from `r_println!` to `RenderResult` return type魏曹先生8 days22-174/+276
|
* feat(mingling): add Write import and doc comment for picker re-export魏曹先生8 days1-1/+4
|
* docs(readme): migrate renderer examples from r_print macros to魏曹先生8 days1-30/+71
| | | | | | | | | | RenderResult Replace all uses of `r_print!` and `r_println!` with the new `RenderResult`-based API in the documentation. Add missing `use` imports (`pack`, `prelude`, `std::io::Write`) to make code examples self-contained and runnable.
* docs: mark remove-r-print-macro tasks as complete魏曹先生8 days1-4/+4
|
* refactor(examples): migrate renderers to return RenderResult and add魏曹先生8 days27-280/+561
| | | | | | | | | std::io::Write import Replace r_println!/r_print! macro usage across all example renderers with explicit RenderResult construction using std::io::Write, enabling more flexible output handling and reducing reliance on macro-side effects.
* fix(docs): correct RenderResult usage examples to use mut binding and魏曹先生8 days1-7/+10
| | | | add Write import
* feat(renderer): add new() constructor to RenderResult魏曹先生8 days1-0/+17
|
* feat: require renderers to return RenderResult instead of mutating one魏曹先生8 days17-383/+268
| | | | | | | BREAKING CHANGE: The `render` method on `Renderer`, `HelpRequest`, and `ProgramCollect` now returns `RenderResult` instead of taking `&mut RenderResult`. The `r_print!` and `r_println!` macros have been removed in favor of using `std::io::Write` directly on `RenderResult`.
* chore: add Release 0.3.0 entry to changelog魏曹先生8 days1-0/+21
|
* docs(dev): add changelog template魏曹先生8 days2-0/+29
|
* feat(run): update `.run` to 0.1.1魏曹先生8 days2-6/+24
|
* chore: rename release binary to RELEASE-WORKSPACE魏曹先生8 days1-0/+0
|
* feat(release): add workspace release script and refactor run_cmd helpers魏曹先生8 days4-4/+178
|
* chore(picker): add mingling_core as a dependency魏曹先生8 days2-0/+4
|
* chore: add linked project config for Cargo workspace魏曹先生8 days2-0/+2
|