You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Release the vendor-profile work from #37 and #38:
- rustnetconf 0.12.3 -> 0.13.0 (new Client/Session::unwrap_config +
vendor_profile_arc APIs; DeviceConfig.vendor Box->Arc)
- rustnetconf-cli 0.3.3 -> 0.3.4 (vendor-aware plan/apply diffs)
Bump internal version reqs in cli and yang crates to 0.13; document in
README What's New.
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Built on [tokio](https://tokio.rs), [russh](https://crates.io/crates/russh), and [rustls](https://crates.io/crates/rustls) — pure Rust, no OpenSSL, no libssh2.
Vendor-profile plumbing for `rustnetconf` (0.13.0) and `rustnetconf-cli` (0.3.4), from a project review (PRs #37, #38). `rustnetconf-yang` is unchanged at 0.1.4.
42
+
43
+
-**`DevicePool` honors an explicit vendor profile.**`DeviceConfig.vendor` is now wired into connection setup — previously it was silently ignored. The field changed from `Box<dyn VendorProfile>` to `Arc<dyn VendorProfile>`; new `ClientBuilder::vendor_profile_arc()` and `Session::set_vendor_profile_arc()` support the shared-ownership path. The existing `vendor_profile(Box<…>)` API is unchanged.
44
+
-**New `Client::unwrap_config()`** (and `Session::unwrap_config()`) exposes the connected device's vendor `unwrap_config` — additive public API.
45
+
-**Vendor-aware CLI diffs.**`netconf plan`/`apply` now normalize the desired config through the connected device's vendor profile instead of a hardcoded `<configuration>` strip. This fixes an asymmetric, potentially wrong diff against generic (non-Junos) devices; Junos behavior is unchanged.
46
+
- Internally, `VendorProfile::post_facts_hook` takes `&self` (with `JunosVendor` cluster state moved to interior mutability) so profiles work under `Arc`.
47
+
39
48
## What's New in v0.12.3
40
49
41
50
Parser correctness patch for `rustnetconf` (0.12.3) and `rustnetconf-cli` (0.3.3), from a full code review (closes #33 via PR #34). No API changes; `rustnetconf-yang` is unchanged at 0.1.4.
0 commit comments