aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* feat: adjust feature presets in mingling魏曹先生15 hours2-2/+7
| | | | | Move `pathf` to `advanced` and remove it from `full`, while removing `dispatch_tree` from `advanced`.
* feat(macros): remove outdated dispatch strategy comment魏曹先生15 hours1-1/+1
|
* feat(dispatch): add auto dispatch strategy selection魏曹先生16 hours8-67/+114
| | | | | | | | | | | Introduce automatic dispatch strategy selection with three mutually-exclusive features: `dispatch_linear`, `dispatch_tree`, and `dispatch_phf`. When none are enabled, the generator picks the optimal strategy at compile time based on command table shape. Add CHD minimal perfect hash generator, refactor trie fallback into a shared method to keep generated code linear, and add a benchmark harness to validate strategy selection.
* feat: add dispatch benchmark subproject魏曹先生16 hours9-4/+798
|
* feat: add dispatch strategy features with auto-selection and benchmark魏曹先生16 hours11-104/+1022
| | | | | | | | | | | | | | | | | | support Add `dispatch_linear`, `dispatch_tree`, and `dispatch_phf` as mutually exclusive features for selecting the command dispatch strategy. When no strategy feature is enabled, an auto-selection heuristic picks the optimal strategy based on command table characteristics (size, name length, nesting depth). Add the `bench_support` feature to compile all three generators for the benchmark harness, and introduce `bench_cell!` to generate benchmark cells comparing strategies. The PHF generator uses a CHD minimal perfect hash for O(1) lookup independent of table size, while the trie generator was refactored to use a shared fallback method, keeping code size linear in table size.
* chore: reorganize dev tools into dev/ directory and consolidate configs魏曹先生37 hours108-741/+312
| | | | | | | | | | Move CI, dev tools, and configs from root-level scattered locations into a unified `dev/` directory structure. Update all references across build scripts, documentation, and editor configurations. Also consolidate editor config generation into build.rs for automated synchronization of rust-analyzer settings across VS Code and Zed.
* docs(contributing): update project structure and docs guide魏曹先生40 hours3-71/+64
|
* docs: update README and add ROADMAP with contributors section魏曹先生43 hours3-97/+147
|
* feat: remove redundant reference in completion handler魏曹先生2 days1-1/+1
|
* fix: use porcelain diff for worktree cleanliness check魏曹先生2 days1-4/+11
| | | | | | Switch from `git diff-index --quiet` to `git diff --quiet` to refresh the index first, avoiding false change reports from stale stat records after compilation.
* docs(ci): clarify git-unlock dirty check behavior魏曹先生2 days1-1/+9
| | | | | Document that the dirtiness check compares content, not timestamps, and add the `--show-diff` flag example used by CI workflows.
* chore: show diff on git-unlock in CI魏曹先生2 days4-24/+46
| | | | | | Pass `--show-diff` to `git-unlock` and restructure CI steps as (command, args) pairs to support per-step arguments. The diff prints tracked workspace changes before they are discarded.
* ci: configure git identity in workflows魏曹先生2 days2-0/+10
|
* ci: remove duplicate arg-picker CI job魏曹先生2 days2-8/+4
|
* docs: update CI documentation for new pipeline structurewip/new-mingling-ci魏曹先生2 days3-87/+156
| | | | | Update contributor and dev docs to reflect the new `mingling_ci` crate, `ci.py` orchestration script, and subcommand-based CI workflow.
* ci(workflows): restructure CI checks with git-lock and reporting魏曹先生2 days2-16/+128
| | | | | | Convert per-check CI commands into a unified git-lock protected flow and add a consolidated report job that aggregates all matrix run results into the job summary.
* feat(ci): add full CI orchestration script魏曹先生2 days1-0/+74
|
* ci: promote cin alias to ci魏曹先生2 days1-4/+1
|
* chore(ci): remove tool binaries from .run/src/bin魏曹先生2 days9-2108/+0
|
* feat(ci-new): preserve dirty changes across CI lock魏曹先生2 days3-28/+67
| | | | | | Store dirty workspace changes in a temporary commit so `git-unlock` can restore them, with the marker file content (`true`/`false`) recording which restore path to take.
* feat(git-unlock): report dirty working tree via exit code魏曹先生2 days1-5/+20
|
* feat(ci-new): add git-lock and git-unlock CI commands魏曹先生2 days6-0/+186
| | | | | Add temporary commit and restore commands to stabilize the workspace during CI runs, with safety checks and error handling.
* feat(ci-new): add refresh tools for docs, examples, and features魏曹先生2 days8-0/+781
| | | | | | | Add three utility commands to regenerate generated files: - `docsify-refresh`: fix code-box blank lines and regenerate sidebars - `example-refresh`: regenerate example docs module and examples index - `features-refresh`: regenerate the features module from Cargo.toml
* chore(ci): remove obsolete run scripts魏曹先生2 days10-68/+0
|
* refactor(mingling_ci): rename build, clippy, and docs commands to -check魏曹先生2 days7-32/+33
| | | | suffix
* feat(ci-new): add docs-build command to mingling_ci魏曹先生2 days3-0/+46
|
* refactor(ci-new): extract shared task progress bar helper魏曹先生2 days5-34/+33
|
* feat(ci-new): add test-examples command魏曹先生2 days5-0/+267
| | | | | | Add a new `test-examples` command that builds each example and runs its `test.toml` cases, reporting failures and setting a non-zero exit code when any example fails.
* docs(ci-new): align help text command layout魏曹先生2 days1-14/+13
|
* feat(ci-new): add markdown structural comparison commands魏曹先生2 days7-11/+439
| | | | | | | Add `markdown-compare` and `markdown-compare-all` commands to verify that translated docs maintain the same structure as the reference. Compare heading levels, code fences, lists, quotes, and other structural elements while allowing text differences.
* feat(ci-new): report per-file results魏曹先生2 days4-15/+97
| | | | | | Add per-file report generation for markdown checks using the reporter module, grouping outcomes by source file and exporting ok or error results with snake_case item names.
* feat(ci-new): add markdown code block verification commands魏曹先生2 days7-0/+626
| | | | | | | Add `markdown-check` and `markdown-check-all` commands to verify Rust code blocks in markdown files. Code blocks are compiled as test projects, sharing temporary crates based on dependency configuration for parallel execution.
* refactor(ci-new): generalize report entries from packages to items魏曹先生2 days8-84/+120
| | | | | | | | Rename package-based terminology and structures to item-based, allowing arbitrary items with associated locations instead of only crate packages. Locations are now carried through report files and included in generated reports, with the fallback to `—` removed.
* feat(ci-new): add test-all task with per-crate config support魏曹先生2 days15-18/+187
| | | | | Add a new `test-all` command that runs tests across all crates with optional per-crate command overrides via `mingling-ci.toml` files.
* refactor(ci-new): flatten collect directory layout魏曹先生2 days2-60/+72
| | | | | | Store result files directly in `collect/` as `{task}.{platform}.ok` and `{task}.{platform}.{package}.err` instead of nesting under task/platform subdirectories.
* refactor(ci-new): aggregate successful package reports魏曹先生2 days3-40/+83
| | | | | Replace per-package `.ok` files with a single `ok` file listing successful packages per platform, flushed after all checks complete.
* chore(ci-new): replace progress system with indicatif魏曹先生2 days4-57/+224
|
* refactor(ci-new): extract parallel cargo check runner魏曹先生2 days4-130/+113
| | | | | | | Extract the duplicate parallel check logic from build-all and clippy-all tasks into a shared `run_parallel_checks` helper. Update renderers to set exit code instead of printing failure counts.
* feat(ci-new): add clippy-all task to run clippy on all crates魏曹先生2 days3-0/+92
|
* feat(ci-new): add show-features command to list documented features魏曹先生2 days6-0/+79
|
* feat(ci-new): add report-clean command to remove collected logs and魏曹先生2 days4-3/+60
| | | | report
* feat(ci-new): implement build-all task魏曹先生2 days4-7/+142
| | | | | Run cargo build for all package manifests in parallel and report failures.
* refactor(ci-new): rename job module to task魏曹先生2 days3-1/+1
|
* refactor(ci-new): infer platform from build target in export魏曹先生2 days1-7/+30
| | | | | Rename the explicit-platform variant to `export_on` and add a new `export` that uses `current_platform()` to determine the target.
* refactor(ci-new): extract report log collection into resource魏曹先生2 days6-173/+233
| | | | | | | Move log parsing, ANSI stripping, and git info retrieval into a `ResCollectLogs` resource read once during CI setup, keeping the report command focused on rendering. Also add a `package_dirs` map to `Manifests` for direct package name lookups.
* feat: add new Mingling CI system crate (WIP)魏曹先生2 days21-0/+1481
| | | | | | Add `mingling_ci` as a standalone CI system built on Mingling 0.4.0 to validate the next version, with report collection and manifest listing commands.
* chore: remove stale doc comments from ExitCodeSetupunreleased魏曹先生3 days1-6/+0
|
* fix: update feature flag from extra_macros to extras in doc scripts魏曹先生3 days4-4/+4
|
* fix: generate async-compatible empty do_chain fallback魏曹先生3 days2-4/+20
| | | | | | | When a program declares no chains, the synthesized `do_chain` now respects the `async` feature by emitting a boxed future signature with a `Box::pin(async { panic! })` body, matching the trait requirement and fixing E0053 in async builds.
* chore!: simplify ExitCodeSetup to non-generic unit struct魏曹先生3 days8-32/+67
|