Commit Graph

151 Commits

Author SHA1 Message Date
Fabio Caccamo a83e6473a6 Add support for `pathlib.Path`. #144 2023-01-02 17:53:55 +01:00
Fabio Caccamo 1284afb8a6 Add `pyupgrade` to `pre-commit` config. 2022-12-31 18:33:20 +01:00
Fabio Caccamo 0bdd999cdd
Fix `s3_options` option forwarded to `json` decoder. (#204) 2022-12-29 15:38:25 +01:00
Fabio Caccamo a7edec7285 Remove encoding pragma. 2022-12-05 20:35:43 +01:00
Fabio Caccamo b504e00d7e Add `pre-commit` with `black`, `isort` and `flake8`. 2022-10-14 16:53:06 +02:00
Fabio Caccamo 5ac299d1e7
Add `s3` support to I/O operations. (#126) 2022-10-12 15:12:03 +02:00
Fabio Caccamo a1e5b9f8cc
Fix subclasses type. #115 (#124) 2022-10-09 15:15:51 +02:00
Fabio Caccamo ee698600a2
Add read-only `xls` files (`.xlsx`, `.xlsm`, `.xls`) support. #70 (#122)
* Started adding xls format support.

* Add `openpyxl` requirement.

* Add missing serializer class declaration.

* Register serializers with their own format extension(s).

* Sort serializers alphabetically.

* Optional serializer extensions argument.

* Add xls test input files.

* Refactor `io_dict` and `io_utils` for handling correctly local and remote binary files.

* Add `xlrd` requirement for reading old format excel files.

* Remove untestes extensions support.

* Add xls serializer with `.xls`, `.xlsx`, `.xlsm` files support.

* Add support for reading remote binary files.

* Update `README.md`.
2022-10-05 16:43:46 +02:00
Fabio Caccamo 4ef9c25114 Fix set dict item value in list. #109 2022-08-23 10:00:10 +02:00
Fabio Caccamo f7d59a2cb8 Fixed `deepcopy` with pointer. 2022-07-15 23:56:04 +02:00
Fabio Caccamo 244f6056bc Fixed `orjson` compatibility. #102 2022-07-15 23:53:34 +02:00
Fabio Caccamo 95a0ca196c Fixed `flatten` not working when separator is equal to `keypath_separator`. #88 2022-04-27 19:26:21 +02:00
Fabio Caccamo 8b7a9b6d98 Improved code quality. 2022-03-24 13:26:18 +01:00
Fabio Caccamo 7d6b709ddf Replaced `string.format` with `f-strings`. 2022-02-18 01:02:02 +01:00
Fabio Caccamo 0457802c17 Removed dead code. 2022-02-18 00:36:49 +01:00
Fabio Caccamo 9ea8b4ac46 Dropped python 2.7 and python 3.5 support. 2022-02-17 23:54:30 +01:00
Fabio Caccamo dad6993054 Reformatted code with Black. 2022-02-13 11:35:43 +01:00
Fabio Caccamo b907e1a9c7 Formatted code with black. 2021-10-12 14:27:35 +02:00
Fabio Caccamo 8758137c89 Added tuple index support when getting items. #66 2021-10-02 16:56:28 +02:00
Fabio Caccamo 92d9a32d5b Fixed `json.dumps()` when `benedict` is initialized with an empty dict. #57 #61 2021-08-11 11:27:02 +02:00
Fabio Caccamo e8ccb7270e Fixed `json.dumps()` when `benedict` is initialized with an empty dict. #57 2021-08-01 12:12:05 +02:00
Fabio Caccamo b46a87de04 Added `ini` format support. #36 #40 2021-05-04 23:22:11 +02:00
Fabio Caccamo f364542949 Fixed `to_toml` circular reference error. #53 2021-05-04 15:12:02 +02:00
Fabio Caccamo 81ff459304 Updated `to_csv` comments and usage example. [ci skip] 2021-04-23 12:56:00 +02:00
Fabio Caccamo 6bae657d44 Fixed BaseDict initialized with BaseDict subclass argument. 2021-01-18 15:52:59 +01:00
Fabio Caccamo cf4612937d Fixed get_int_list with single value. 2021-01-14 18:28:01 +01:00
Fabio Caccamo 86082e8b9f Added python-fsutil for file-system operations. 2020-12-24 16:37:16 +01:00
Fabio Caccamo 7d350139ee Added get_date and get_date_list methods. 2020-12-24 16:36:25 +01:00
Fabio Caccamo 1782a9f72a Fixed broken json dumps using cloned instance. #46 2020-12-22 12:52:55 +01:00
Fabio Caccamo b7066e1812 Removed unnecessary dict() calls. 2020-12-22 12:49:23 +01:00
Fabio Caccamo eae58feb10 Added concat option to merge method. 2020-12-09 11:03:03 +01:00
Fabio Caccamo 69cfa127da Fixed benedict yaml representer. #43 2020-11-30 11:27:54 +01:00
Fabio Caccamo a121c9da9e Fixed benedict yaml representer. #43 2020-11-30 11:26:20 +01:00
Fabio Caccamo cdcc638758 Fixed dump benedict object to yaml not working correctly. #43 2020-11-27 12:06:40 +01:00
Fabio Caccamo ca0defcb38 Added get_uuid and get_uuid_list methods. 2020-10-15 14:18:02 +02:00
Fabio Caccamo 471950a8e5 Refactored BaseDict class. 2020-09-30 19:03:09 +02:00
Fabio Caccamo d0b5f17295 Fixed performance issue. #39 2020-09-30 18:59:40 +02:00
Fabio Caccamo 497d3782c0 Fixed to_json returns empty dict from generator. #38 2020-09-29 10:31:55 +02:00
Fabio Caccamo f4cc5abdd9 Removed unnecessarily dict() calls. 2020-09-22 15:06:10 +02:00
Fabio Caccamo 234b888e36 Mirrored BaseDict internal dict data to instance data. 2020-09-22 15:05:39 +02:00
Fabio Caccamo 835f8a9955 Improved BaseDict backward compatibility. 2020-09-22 14:13:44 +02:00
Fabio Caccamo d7e35779c0 Replaced internal variable references with method call. 2020-09-22 14:13:08 +02:00
Fabio Caccamo 1bf7864ecb Added match utility method. #11 #16 2020-09-22 14:10:59 +02:00
Fabio Caccamo a8ebc85105 Fixed keypath_separator inheritance when init from another benedict instance. #35 2020-09-22 14:08:31 +02:00
Fabio Caccamo 81197b2d71 Fixed keypath_separator inheritance when init from another benedict instance. #35 2020-09-22 14:07:50 +02:00
Fabio Caccamo 1105dc67b5 Fixed E501 warnings. 2020-09-21 18:07:00 +02:00
Fabio Caccamo 4ad0f9439e Added indexes support to keypaths method. #13 2020-09-21 16:41:44 +02:00
Fabio Caccamo 2d519d76cb Improved benedict casting support. 2020-09-19 14:42:02 +02:00
Fabio Caccamo 0baa5bb7f0 Refactored BaseDict init method. 2020-09-19 14:40:53 +02:00
Fabio Caccamo 7e7541cce5 Added automatic benedict casting to methods that return dict instances. 2020-09-19 14:40:17 +02:00