<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mingling.git/mingling_pathf/src/lib.rs, branch try-new-badges</title>
<subtitle>用于开发多子命令的命令行框架
</subtitle>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/'/>
<entry>
<title>refactor!: replace build.rs with compile-time macro build steps</title>
<updated>2026-08-17T11:21:52+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-08-17T11:21:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=89bf57f33a9f0f5a96fc50e272c83d926fa35c4a'/>
<id>89bf57f33a9f0f5a96fc50e272c83d926fa35c4a</id>
<content type='text'>
BREAKING CHANGE: Replace the `build`/`builds` feature system with
compile-time macro-driven generation. `gen_program!()` now automatically
invokes `build_comp!()` and `build_pathf!()` when the `comp`/`pathf`
features are enabled, eliminating the need for `build.rs` and
`[build-dependencies]` blocks.

This removes the `build` feature, the `mingling::build` module, and all
related build-time API functions. Completion scripts are now written to
`{target_directory}/mingling/` instead of `target/release/`. The
`mingling_cli` uses `build_comp!("mling")` for its custom binary name.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
BREAKING CHANGE: Replace the `build`/`builds` feature system with
compile-time macro-driven generation. `gen_program!()` now automatically
invokes `build_comp!()` and `build_pathf!()` when the `comp`/`pathf`
features are enabled, eliminating the need for `build.rs` and
`[build-dependencies]` blocks.

This removes the `build` feature, the `mingling::build` module, and all
related build-time API functions. Completion scripts are now written to
`{target_directory}/mingling/` instead of `target/release/`. The
`mingling_cli` uses `build_comp!("mling")` for its custom binary name.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor!: remove dynamic dispatcher registration API</title>
<updated>2026-08-16T18:39:56+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-08-16T18:29:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=6980fbf2f9fb4c599d8dc6ff549a8b3288eb24e9'/>
<id>6980fbf2f9fb4c599d8dc6ff549a8b3288eb24e9</id>
<content type='text'>
Dispatchers are now always registered at compile time, removing the
`with_dispatcher` / `with_dispatchers` methods and the
`PathfinderConfig` API. The `dispatch_tree` feature now only controls
the matching strategy (trie vs linear list).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Dispatchers are now always registered at compile time, removing the
`with_dispatcher` / `with_dispatchers` methods and the
`PathfinderConfig` API. The `dispatch_tree` feature now only controls
the matching strategy (trie vs linear list).
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: add "Doc Not Optimize" comments to source files</title>
<updated>2026-08-13T16:23:06+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-08-13T16:23:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=1198f2b81a845bd475594cdf42d04e7bd750ebd2'/>
<id>1198f2b81a845bd475594cdf42d04e7bd750ebd2</id>
<content type='text'>
Mark all source files with a comment indicating they are not optimized
for documentation purposes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Mark all source files with a comment indicating they are not optimized
for documentation purposes.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(pathf): enforce pedantic lints and update API ergonomics</title>
<updated>2026-08-10T08:30:20+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-08-10T08:30:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=03b487f0f93ac32835149d4c1a0fb420341134f8'/>
<id>03b487f0f93ac32835149d4c1a0fb420341134f8</id>
<content type='text'>
- Add `#[must_use]` to public constructors and getters
- Change `init_with_config` to accept `&amp;PathfinderConfig` instead of
  owned value
- Refactor `map_or_else` and `or_insert_with` for clippy compliance
- Add `#![deny(clippy::pedantic)]` and `#![deny(clippy::nursery)]`
- Document error cases in public API docs
- Simplify duplicated dispatcher_clap analysis logic
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Add `#[must_use]` to public constructors and getters
- Change `init_with_config` to accept `&amp;PathfinderConfig` instead of
  owned value
- Refactor `map_or_else` and `or_insert_with` for clippy compliance
- Add `#![deny(clippy::pedantic)]` and `#![deny(clippy::nursery)]`
- Document error cases in public API docs
- Simplify duplicated dispatcher_clap analysis logic
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: add missing docs lint and document public API</title>
<updated>2026-07-20T06:49:47+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-20T06:49:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=9f5a0f2e9325264564bc6fe9ff544c034ad16287'/>
<id>9f5a0f2e9325264564bc6fe9ff544c034ad16287</id>
<content type='text'>
Add `#![deny(missing_docs)]` across multiple crates and fill in
documentation for all public items, including struct fields, enum
variants, trait methods, and proc macros.  Also mark two shell scripts
as executable.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add `#![deny(missing_docs)]` across multiple crates and fill in
documentation for all public items, including struct fields, enum
variants, trait methods, and proc macros.  Also mark two shell scripts
as executable.
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: add module-level documentation and improve doc comments</title>
<updated>2026-07-16T20:04:11+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-07-16T20:04:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=dc9d5ea0026a6cb6bb477d5db8e9190a79ecb337'/>
<id>dc9d5ea0026a6cb6bb477d5db8e9190a79ecb337</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(pathf): add dispatch tree config and pass feature to analyzer</title>
<updated>2026-06-29T06:12:24+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-06-29T06:12:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=2fa18e2190fb3c17892e13cb06d330e707dc05ec'/>
<id>2fa18e2190fb3c17892e13cb06d330e707dc05ec</id>
<content type='text'>
Add `PathfinderConfig` struct to control dispatch tree extraction,
and wire `use_dispatch_tree` through `DispatcherPattern`,
`init_with_config`,
and `analyze_and_build_type_mapping_for`. Expose config and wrapper
from `mingling_core` under the `pathf` feature.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add `PathfinderConfig` struct to control dispatch tree extraction,
and wire `use_dispatch_tree` through `DispatcherPattern`,
`init_with_config`,
and `analyze_and_build_type_mapping_for`. Expose config and wrapper
from `mingling_core` under the `pathf` feature.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(pathf): add build-time type path resolution system</title>
<updated>2026-06-28T01:06:08+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-06-28T01:06:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=748c14588cf1c31c8b8d60a9c94349c0173ef607'/>
<id>748c14588cf1c31c8b8d60a9c94349c0173ef607</id>
<content type='text'>
Add `mingling_pathf` sub-crate and `pathf` feature for automatic
resolution of Mingling type module paths at build time. Scans source
files, identifies macro invocations via pattern matchers, and generates
mapping files consumed by `gen_program!()`.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add `mingling_pathf` sub-crate and `pathf` feature for automatic
resolution of Mingling type module paths at build time. Scans source
files, identifies macro invocations via pattern matchers, and generates
mapping files consumed by `gen_program!()`.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(mingling_pathf): add pattern analyzer module for struct detection</title>
<updated>2026-06-27T22:21:56+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-06-27T22:21:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=0f84a88d0b2c9205ec1b3cbfa18ffe05478e5a64'/>
<id>0f84a88d0b2c9205ec1b3cbfa18ffe05478e5a64</id>
<content type='text'>
Add a `PatternAnalyzer` with an `AnalyzePattern` trait to detect and
extract struct declarations from Rust source files, supporting nested
inline modules.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a `PatternAnalyzer` with an `AnalyzePattern` trait to detect and
extract struct declarations from Rust source files, supporting nested
inline modules.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(mingling_pathf): add module path resolution and error handling</title>
<updated>2026-06-27T21:24:31+00:00</updated>
<author>
<name>魏曹先生</name>
<email>1992414357@qq.com</email>
</author>
<published>2026-06-27T21:24:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.catilgrass.cn/catilgrass/mingling.git/commit/?id=0c97eee05e8cd99b17ad17827d79afa739957db1'/>
<id>0c97eee05e8cd99b17ad17827d79afa739957db1</id>
<content type='text'>
Introduce the core pathfinding infrastructure with `ModulePathMapping`,
`MappingItem`, and `MinglingPathfinderError` types. Support recursive
module traversal, `pub use` re-export hoisting, and standard Rust
module resolution rules.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Introduce the core pathfinding infrastructure with `ModulePathMapping`,
`MappingItem`, and `MinglingPathfinderError` types. Support recursive
module traversal, `pub use` re-export hoisting, and standard Rust
module resolution rules.
</pre>
</div>
</content>
</entry>
</feed>
