4. Changelog#
4.1. History#
4.1.1. Version 1.2.2 (2025-02-17)#
Rename of entire project from
rickled
torickle
!Fixed bug in CLI tool not able to run
Made
provider_access_key
optional forsecret
type.
4.1.2. Version 1.2.1 (2025-02-12)#
Major additions and changes, bumped version to
1.5.0
.Init args now parsed with opening braces
{{
and closing braces}}
.Opening and closing braces can be defined using environment variables
RICKLE_OPENING_BRACES
andRICKLE_CLOSING_BRACES
.RICKLE_OPENING_BRACES
andRICKLE_CLOSING_BRACES
can also be passed as init arguments.Added optional INI support.
Added optional .ENV support if extras installed
pip install rickled[dotenv]
.Added optional XML support if extras installed
pip install rickled[xml]
.Renamed optional extras for twisted, now installed
pip install rickled[net]
.With added ability to use XML, keys are now cleansed of non alphabetic characters, but kept for serialisation.
Added more customisation. Path separator can now be define with init arg
RICKLE_PATH_SEP
or environment variableRICKLE_PATH_SEP
.Added list type index getter to paths, for example
/path/to/a_list[0]
returns first element (ifa_list
is of list type)Added static method
flatten_dict
to squash a Python dictionary into a thin dictionary with depth of 1.Undo the flattening of a dictionary with static method
inflate_dict
.Now able to dump to INI file or string using
to_ini
.When reading INI, dictionaries are automatically inflated, split on
RICKLE_INI_PATH_SEP
env var or init arg.Furthermore,
RICKLE_INI_OPENING_BRACES
andRICKLE_INI_CLOSING_BRACES
can be set with env var or init arg.Removed unsafe code and usage into separate class,
UnsafeRickle
.Added optional schema validator if extras installed (only for Python>3.8)
pip install rickled[validators]
.Adding ability to pipe into CLI tool, i.e. perform
cat file.json | rickle conv -x json -t yaml
.Added a helper
classify_string
to tools to classify a string type.Renaming optional arguments for CLI in order to be more clear on their meaning.
-i
becomes--input
-d
becomes--dir
-o
becomes--output
-t
becomes--output-type
Added
full
to install extras to install all extras.Alternative for
from_file
type is nowfile
. Will be deprecated in the future.Alternative for
from_csv
type is nowcsv
. Will be deprecated in the future.Deprecating
add_env_variable
foradd_env
.Deprecating
add_csv_file
foradd_csv
.Deprecating
add_from_file
foradd_from
.Deprecating
add_api_json_call
foradd_api_json
.Deprecating
add_attr
foradd
.New init arg
RICKLE_NAME_CLEAN_UP
to skip cleaning key names of disallowed chars.Fixed logical flaw in
dict
where cleaned up keys not being used.Added helper mapping
get_native_type_name
to map Python type names to format native names.Renamed schema types to conform more to JSON schema, i.e.
dict
becomesobject
,list
becomesarray
etc.Added
min
andmax
to array type in schema validation.Added ability to use
jsonschema
instead inSchema.schema_validation
by settinguse_json_schema=True
if jsonschema is installed.Added
--extras
to schema generation to add things like “required” etc.Renamed
schema
toproperties
for objects in default rickle schema.Renamed
schema
toitems
for objects in default rickle schema.Added
add_secret
to Rickle, now able to add secrets from cloud providersaws
,google
,azure
.Added
add_random_value
to Rickle, usinggenerate_random_value
in tools. Useful for mock data.Moved
--output-type
to the main argument parserrickle
.
4.1.3. Version 1.1.3 (2024-05-05)#
New addition: TOML now supported
4.1.4. Version 1.1.2 (2024-04-23)#
Minor fix in schema tool where bool mistaken as int.
Added CLI tools documentation.
Fixed bug when using CLI tool and twisted not installed, better error handling in CLI tools.
Changed the default
serialised=False
for the to YAML and JSON file/string methods.Changed default behaviour of
serve
to return deserialised form.Added 404 response to serve when path can not be traversed.
Added
-s
toserve
to serve the file in serialised form.Added
-t
toserve
to serve the file in output type JSON or YAML (JSON by default).Changed
-f
to-i
inserve
tool for consistency.
4.1.5. Version 1.1.1 (2024-03-19)#
Updated documentation and links to pages.
4.1.6. Version 1.1.0 (2024-02-05)#
Added set to BaseRickle, as a equivalent to the get method.
Updated the get method to handle document paths.
Added remove method to delete items from object.
Added the __delitem__ dunder, now able to del rickle[‘key’].
Fixed bug where search_path was exiting loops in dictionary too early (after first find).
Implemented type guessing of params for functions when using path like calling.
Added ability to add params to callable. Example rickle(‘/path/to/func’, x=1, y=’str’).
Bug fix in trying to parse URL by user deajan, commit 7cb1773.
4.1.7. Version 1.0.2 (2023-12-12)#
Added strict boolean parameter for allowing properties that are reserved keywords.
4.1.8. Version 1.0.1 (2023-10-03)#
Added the ability to load a Rickle from URL at init.
Added the -b flag to serve CLI tool to open host on browser.
Bug fix in infer_read_file_type when reading unknown file suffix.
Renamed the -i flag to -a in serve CLI tool.
4.1.9. Version 1.0.0 (2023-09-20)#
Added the schema validation tool Schema in tools.
Added all CLI tools.
Now releasing version 1.0.0
4.1.10. Version 0.3.5 (2023-09-09)#
Added the first of the rickled.tools, the Converter.
Added first CLI tools rickle conv and rickle serve.
4.1.11. Version 0.3.4 (2023-07-20)#
Fixed error when importing from rickled.net when openssl is not installed.
4.1.12. Version 0.3.3 (2023-07-20)#
Adding optional install of twisted library.
Added serve_rickle_http and serve_rickle_https to rickled.net to serve Rickles as REST API.
4.1.13. Version 0.3.2 (2023-04-07)#
When calling dict() on rickle, hot loaded items were not being serialised. Fixed.
4.1.14. Version 0.3.1 (2023-04-02)#
Fixed issue for path based query, where Rickle objects are considered callable (rightfully).
Uses inspect.isfunction instead of callable.
Added meta to base class for getting metadata of a property.
4.1.15. Version 0.3.0 (2023-02-16)#
Bumped up to minor 3, close to releasing version 1.0 after http server is implemented.
Added the hot_load property to API calls, making it load on call instead of only on start.
Added the hot_load property to HTML page, making it load on call instead of only on start.
Added the hot_load property to add file, making it load on call instead of only on start.
4.1.16. Version 0.2.7 (2023-02-15)#
Complete revamp of internal versioning.
4.1.17. Version 0.2.6 (2023-02-15)#
Fixed the same bug, but the root cause. The fact that modules are imported before proper install.
4.1.18. Version 0.2.5 (2023-01-18)#
Fixed a bug where requests is not installed
4.1.19. Version 0.2.4 (2022-09-02)#
Added ability to get nodes by using Unix style paths to get to nodes.
Added a safe load environment variable “RICKLE_SAFE_LOAD” to override all lambda loads (as a safety measure).
Added
search_path
to search for a key in the Rickle.Removed
includes_self_reference
due to confusion.Added a third way to load CSV files, see example documentation.
Added
load_as_rick
toadd_api_json_call
.
4.1.20. Version 0.2.3 (2022-03-13)#
Merged but cleaned up contributions by Fabian.
4.1.21. Version 0.2.2 (2022-02-14)#
Added
do_recursive
param to.get
to optionally do a deeper recursive search.Do you agree that valentine’s day is bullshit? Because my gf doesn’t.
4.1.22. Version 0.2.1 (2021-12-08)#
Added
add_class_definition
to define classes.Created a new class,
ObjectRickler
, to dump (almost) any object or convert to Rickle.Added
add_module_import
to Rickle, with functionality to add global Python module imports.
4.1.23. Version 0.2.0 (2021-12-06)#
Renamed project to
Rickled
to avoid any possible lawsuits from money hungry media execs.Pickle Rick was a great name, possibly even considered a parody which is protected under copyright law.
But rather safe than sued..
4.1.24. Version 0.1.14 (2021-10-28)#
Added new
add_html_page
to load HTML text.Added new
add_csv_file
to load CSV files as either a list of lists, or list of PickleRicks.
4.1.25. Version 0.1.13 (2021-10-07)#
Added ability to load from multiple YAML files or JSON files from start up.
4.1.26. Version 0.1.12 (2021-09-23)#
Fixed major bug, YAML was not loaded!
Adding preload arguments for load and replace values within YAML files using
_|PARAM|_
Added new API JSON call method, to load and create a Rick from an API response
add_api_json_call
.Added new ability to load other YAML, JSON, or text files from within, using
add_from_file
.Added
add_base64
to load base 64 encoded data.
4.1.27. Version 0.1.11 (2021-09-09)#
Fixed bug in
get
for finding values.
4.1.28. Version 0.1.10 (2021-05-01)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.29. Version 0.1.9 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.30. Version 0.1.7 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.31. Version 0.1.6 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.32. Version 0.1.5 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.33. Version 0.1.4 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.34. Version 0.1.3 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.35. Version 0.1.2 (2020-12-17)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.36. Version 0.1.1 (2020-11-19)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.37. Version 0.1.0 (2020-11-11)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.38. Version 0.0.2 (2020-10-02)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history
4.1.39. Version 0.0.1 (2020-10-02)#
Under previous name pickle-rick
.
See https://pypi.org/project/pickle-rick/#history