Releases: gpoore/bespon_py
Releases · gpoore/bespon_py
v0.7.0
v0.6.0
- Fixed encoder bug that caused invalid output for inline strings starting
with a quotation mark (#3). - Encoder now uses single-character string delimiters in more cases.
- Fixed bug that prevented decoding empty block strings and empty block
comments. - Fixed bug that prevented lists in indentation-based syntax immediately
under sections.
v0.5.0
v0.4.0
- Many improvements and new features for
RoundtripAst
.- Improved support for replacing keys and values. There is experimental
support for replacing dicts and lists, and now full support for all other
data types. - Added option
enforce_types
, which provides experimental support for
replacing keys and values with objects of a different data types. - Added support for custom encoders.
- Added preliminary support for
__getitem__
-style access (for example,
ast['key'].value
). - Added access to trailing comments (not doc comments) with new node
attributeskey_trailing_comment
,value_trailing_comment
,
value_start_trailing_comment
, andvalue_end_trailing_comment
. These
also allow modification of existing trailing comments.
- Improved support for replacing keys and values. There is experimental
- New loading options:
custom_types
allows use of custom data types.
empty_default
is a function that is called to produce a
default value when there is no data to load. - New dumping options that control output appearance, data types, and data
structures:aliases
,circular_references
,integers
,
only_ascii_unquoted
,only_ascii_source
,extended_types
,
python_types
,baseclass
,trailing_commas
,compact_inline
,
inline_depth
,nesting_indent
,start_list_item
, and
flush_start_list_item
. - Fixed bug with round-tripping bools.
- Fixed bug in error reporting for reserved words like
inf
in key paths.
v0.3.0
- Added decoder options
aliases
,circular_references
,custom_parsers
,
andpython_types
. - Decoder now disables circular references by default. They may be enabled
with new optioncircular_references
. - More powerful alias support, particularly for alias paths passing through
inherited keys. - Moved decoder
tuple
support from optionextended_types
to new option
python_types
. - Complex numbers starting with
inf
ornan
now work with decoder. - Fixed bug in doc comment-tag interaction.
v0.2.1
- Fixed bugs with decoder options
only_ascii_source
and
only_ascii_unquoted
. - Prevent explicit typing of
none
,true
, andfalse
. - Tag keyword
indent
no longer affects text after an escaped newline. - Fixed bug that prevented inline collections from being tagged if not at line
start. RootNode
andDictlikeNode
now have_state
attribute.- Improved grammar.
v0.2.0
- Significant speed improvements: around 25-30% faster on decoding benchmark
than v0.1.1. - Added encoder options
hex_floats
andmax_nesting_depth
. - Added decoder options
extended_types
,float_overflow_to_inf
,
integers
,only_ascii_unquoted
,only_ascii_source
,max_nesting_depth
. - Added support for tags, which enable explicit typing and object labeling
(for later referencing via aliases). Tags also allowindent
andnewline
to be specified for multiline strings. Added support forbytes
,base16
,
andbase64
types via tagging. - Added support for aliases.
- Encoder now detects circular references.
- Improved error handling and error messages.
setuptools
is used for installation if available.