Merge branch 'develop' for 3.4.0
This commit is contained in:
commit
d3460bfc26
74 changed files with 4391 additions and 1538 deletions
51
CHANGELOG.md
51
CHANGELOG.md
|
|
@ -1,11 +1,56 @@
|
|||
# Clixon Changelog
|
||||
|
||||
## 3.4.0 (Upcoming)
|
||||
### Known issues
|
||||
* Please use text datastore, key-value datastore no up-to-date
|
||||
|
||||
### Major changes:
|
||||
* Optimized search performance for large lists by sorting and binary search.
|
||||
* New CLICON_XML_SORT configuration option. Default is true. Disable by setting to false.
|
||||
* Added yang ordered-by user. The default (ordered-by system) will now sort lists and leaf-lists alphabetically to increase search performance. Note that this may change outputs.
|
||||
* If you need legacy order, either set CLICON_XML_SORT to false, or set that list to "ordered-by user".
|
||||
* This replaces XML hash experimental code, ie xml_child_hash variables and all xml_hash_ functions have been removed.
|
||||
* Implementation detail: Cached keys are stored in in yang Y_LIST nodes as cligen vector, see ys_populate_list()
|
||||
|
||||
* Datastore cache introduced: cache XML tree in memory for faster get access.
|
||||
* Reads are cached. Writes are written to disk.
|
||||
* New CLICON_XMLDB_CACHE configuration option. Default is true. To disable set to false.
|
||||
* With cache, you cannot have multiple backends (with single datastore). You need to have a single backend.
|
||||
* Thanks netgate for proposing this.
|
||||
|
||||
* Changed C functional API for XML creation and parsing for better coherency and closer YANG/XML integration. This may require your action.
|
||||
* New yang spec parameter has been added to most functions (default NULL) and functions have been removed and renamed. You may need to change the XML calls as follows.
|
||||
* xml_new(name, parent) --> xml_new(name, xn_parent, yspec)
|
||||
* xml_new_spec(name, parent, spec) --> xml_new(name, parent, spec)
|
||||
* clicon_xml_parse(&xt, format, ...) --> xml_parse_va(&xt, yspec, format, ...)
|
||||
* clicon_xml_parse_file(fd, &xt, endtag) --> xml_parse_file(fd, endtag, yspec, &xt)
|
||||
* clicon_xml_parse_string(&str, &xt) --> xml_parse_string(str, yspec, &xt)
|
||||
* clicon_xml_parse_str(str, &xt) --> xml_parse_string(str, yspec, &xt)
|
||||
* xml_parse(str, xt) --> xml_parse_string(str, yspec, &xt)
|
||||
* Backward compatibility is enabled by (will be removed in 3.5.0:
|
||||
```
|
||||
configure --with-xml-compat
|
||||
```
|
||||
|
||||
### Minor changes:
|
||||
* Better semantic versioning, eg MAJOR/MINOR/PATCH, where increment in PATCH does not change API.
|
||||
* Added CLICON_XMLDB_PRETTY option. If set to false, XML database files will be more compact.
|
||||
* Added CLICON_XMLDB_FORMAT option. Default is "xml". If set to "json", XML database files uses JSON format.
|
||||
* Clixon_backend now returns -1/255 on error instead of 0. Useful for systemd restarts, for example.
|
||||
* Experimental: netconf yang rpc. That is, using ietf-netconf@2011-06-01.yang
|
||||
formal specification instead of hardcoded C-code.
|
||||
|
||||
### Corrected Bugs
|
||||
|
||||
* Fixed bug that deletes running on startup if backup started with -m running.
|
||||
When clixon starts again, running is lost.
|
||||
The error was that the running (or startup) configuration may fail when
|
||||
clixon backend starts.
|
||||
The fix now makes a copy of running and copies it back on failure
|
||||
|
||||
clixon backend starts.
|
||||
The fix now makes a copy of running and copies it back on failure.
|
||||
* datastore/keyvalue/Makefile was left behind on make distclean. Fixed by conditional configure. Thanks renato@netgate.com.
|
||||
* Escape " in JSON names and strings and values
|
||||
|
||||
|
||||
## 3.3.3 (25 November 2017)
|
||||
|
||||
Thanks to Matthew Smith, Joe Loeliger at Netgate; Fredrik Pettai at
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue