ios-config 0.2.0

Zero-dependency Cisco IOS configuration parser. Parses `show running-config` output into a typed IR, with per-line unrecognized-command reporting.
Documentation
  • Coverage
  • 23.08%
    6 out of 26 items documented0 out of 16 items with examples
  • Size
  • Source code size: 109.54 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 860 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 14s Average build duration of successful builds.
  • all releases: 15s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • casablanque-code/netconv
    3 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • casablanque-code

ios-config

Cisco IOS configuration parser, built on netconv-core.

Parses show running-config output into a typed NetworkConfig IR, with per-line unrecognized-command reporting via ConversionReport so that callers can tell what was and wasn't understood, rather than having unknown lines silently dropped.

use netconv_core::traits::ConfigParser;
use ios_config::IosParser;

let (config, report) = IosParser.parse(raw_config_text).unwrap();

Upgrading from 0.1.x

0.2.0 is a breaking release. The old free function

// 0.1.x — gone
ios_config::parse(input) -> Result<NetworkConfig, ParseError>

is replaced by the ConfigParser trait impl shown above, which returns the parsed config alongside a ConversionReport of anything the parser didn't recognize, instead of silently dropping it. ios-config-core is no longer a separate dependency — the IR now comes from netconv-core.

Part of the netconv project — see the main repository for the CLI, web UI, and full documentation.

License

MIT