Nestedtext Versions Save

Human readable and writable data interchange format

v3.6

10 months ago
  • De-duplicating with the on_dup argument to loads() now works well for error reporting with keymaps.
  • The map_keys argument has been added to dump() and dumps().

v3.5

1 year ago
  • Minor refinements and fixes.

v3.4

1 year ago
  • improved the on_dup parameter to load and loads functions.
  • added strict argument to join_keys functions.

v3.3

1 year ago

Changes to Language Definition

  • Defined Minimal NestedText, a subset of NestedText.
  • NestedText document files should end with a newline.

Changes to Python Implementation

  • add normalize_key argument to load and loads.
  • added utility functions for operating on keys and keymaps:
    • get_value_from_keys
    • get_lines_from_keys
    • get_original_keys
    • join_keys
  • None passed as key is now converted to an empty string rather than "None".

v3.2

2 years ago
  • add circular reference detection and reporting.

v3.1

2 years ago
  • change error reporting for dump functions; culprit is now the keys rather than the value.

v3.0

2 years ago
  • Deprecate trailing commas in inline lists and dictionaries.
  • Adds keymap argument to load() and loads().
  • Adds inline_level argument to dump() and dumps().
  • Implement on_dup argument to load() and loads() in inline dictionaries.
  • Apply convert and default arguments of dump() and dumps() to dictionary keys.

v2.0

2 years ago
  • Deprecate quoted keys.
  • Add multiline keys to replace quoted keys.
  • Add inline lists and dictionaries.
  • Move from renderers to converters in dump and dumps. Both allow you to support arbitrary data types. With renderers you provide functions that are responsible for directly creating the text to be inserted in the NestedText output. This can be complicated and error prone. With converters you instead convert the object to a known NestedText data type (dict, list, str, ...) and the dump function automatically formats it appropriately.
  • Restructure documentation.

Be aware that aspects of this version are not backward compatible.

  1. It no longer supports quoted dictionary keys.
  2. The renderers argument to :func:dump and :func:dumps has been replaced by converters.
  3. It no longer allows one to specify level in :func:dump and :func:dumps.

v1.3

3 years ago
  • Move the test cases to a submodule.

v1.2

3 years ago
  • Treat CR LF, CR, or LF as a line break.
  • Always quote keys that start with a quote.