Skip to content

Clixon 7.2.0

Latest
Compare
Choose a tag to compare
@olofhagsand olofhagsand released this 28 Oct 13:02
· 37 commits to master since this release

7.2.0

28 October 2024

The 7.2.0 release feature lots of minor changes and bug-fixes including memory optimizations and package builds.

Features

  • Restconf: Support for list of media in Accept header
  • Rearranged YANG top-levels into YANG domains, mounts, and specs
  • Deb build script
  • Optimize YANG memory
    • Autocli
      • Late evaluation of uses/grouping
    • YANG
      • Added union and extended struct for uncommon fields
      • Removed per-object YANG linenr info
      • Yang-type cache only for original trees (not derived via grouping/augment)
      • Added option CLICON_YANG_USE_ORIGINAL to use original yang object in grouping/augment
  • New: CLI simple alias
  • List pagination more ietf-draft compliance
    • Added where, sort-by and direction parameter for configured data
  • New clixon-autocli@2024-08-01.yang revision
    • Added: disable operation for module rules
  • New clixon-config@2024-08-01.yang revision
    • Added: CLICON_YANG_DOMAIN_DIR
    • Added: CLICON_YANG_USE_ORIGINAL

API changes on existing protocol/config features

Users may have to change how they access the system

  • Capability announce urn:ietf:params:netconf:capability:yang-library:1.1 (instead of 1.0)
    • RFC 7950->8526
  • New version string on the form: 7.1.0-1+11+g2b25294
  • Restconf: Better RFC compliance with Accept errors: 406 vs 415
  • Removed YANG line-number in error-messages for memory optimization
    • Re-enable by setting YANG_SPEC_LINENR compile-time option
  • NETCONF error returns of failed leafref references, see #536

C/CLI-API changes on existing features

Developers may need to change their code

  • Added domain argument to yang parse functions. Upgrade as follows:
    • yang_file_find_match(h, m, r, f) -> yang_file_find_match(h, m, r, NULL, f)
    • yang_parse_module(h, m, r, y, o) -> yang_parse_module(h, m, r, y, NULL, o)
  • Replaced clixon_get_logflags() with clixon_logflags_get()
  • New yn_iter() yang iterator replaces yn_each()
    • Use an integer iterator instead of yang object
    • Replace:
      y1 = yn_each(y0, y1) { ...
    • with:
      int inext = 0; y1 = yn_iter(y0, &inext) { ...
  • Add keyw argument to yang_stats()

Corrected Bugs