utility set of handling dict
Project description
dictknife
swiss army knife for handling dict.
install
$ pip install dictknife[load,command]
examples
doc
http://dictknife.readthedocs.io
(:warning: this document is obsoleted)
0.14.1
- fix bug
unexpected keyword argument loader
is occured when yaml library is not installed
0.14.0
- use tomlkit instead of qtoml
- use ruamel.yaml instead of pyyaml (for preserving comments)
- add
dictknife diff -o pair
0.13.0
- loading, see envvar (DICTKNIFE_LOAD_FORMAT, DICTKNIFE_DUMP_FORMAT)
- omit oauth2client dependency, if spreadsheet's requires
0.12.0
- add dictknife.naming
- add builtin transform functions (snakecase_dict, camelcase_dict, kebabcase_dict, ...)
- rename function, dictknife.transform:normalize_dict -> dictknife.transform:str_dict
0.11.0
- add dictknife.accessing.Scope (#108)
- fix: fix accessing with list (#113)
- fix: fix maybe access (#112)
- add 2to3, but not complete implementation (#115)
- add jsonknife bundle, --flavour option (#133)
- add jsonknife separate (#137)
- use qtoml instead of toml (#156)
- fix: use pyyaml's sort_keys option, instead of custom implementation (#162)
0.10.2
- loading, adjustment yaml's output
0.10.1
- this is latest version of support 3.5
0.10.0
- drop 3.5 support
- adding swaggerknife merge command, (#100), (#86)
- jsonknife's bundle action support jsonreference (#94)
- jsonknife's bundler fix conflict automatically (#101), when primitive input
- dictknife's diff support jsonpatch's output
- dictknife's shape output using jsonpointer (#88)
- loading, Yaml include hash (#105), quoted output, as default
- (fix) swaggerknife, tojsonschema json2swagger (#96)
- (refactor) jsonknife lazy import (#95)
- (WIP) initial work for open api3.0 (#103)
0.9.0
- bundle, prevent infinite recursion
- dictknife cat, extra arguments
- drop line cat
- modification
- transform
- dictknife mkdict, new command
- dictknife cat, fix --size option
- dictknife cat, support spreadsheet(extra)
0.8.2
- fix bug of dictknife diff, broken output is appeared, when input file is csv
- fix bug of dictknife diff, 0 is not treated as empty
0.8.1
- suport markdown table format
- support dictknife diff with --output (default is diff)
0.8.0
- adding dictknife diff --output-format dict option
- support loading markdown table format
0.7.6
- dictknife rename command concat -> cat
- dictknife linecat command is deprecated
- dictknife fake yaml module is broken when loading file
- dictknife support stdin input
- dictknife add --size option for dictknife.cat
- dictknife add --quiet option
0.7.5
- add
errors
andignore
options, in loading.loadfile - when PyYAML is not installed, then, using fake yaml module(actually this is json module)
0.7.2
- add
-sort-keys
option - shape command
0.7.0
- support loading csv and tsv
- rename iterate() to walk() of DictWalker
0.6.0
- drop click
- many short options (e.g. -o for --output-format)
- drop legacy LooseDictWalker and dictknife.chain
- simply for lazy loading module, in dictknife.loading
0.5.0
- lazy loading for loading data (e.g. yaml, toml)
- dictknife linecat command
- short error message
- dictknife diff support array
0.4.7
- loading via envvar with white list
- jsonknife deref with --unwrap,--wrap option and --ref supports '@' expression
- jsonknife bundle generating ordered output
0.4.5
- dictknife cat with list JSON
- omitting deprecated commands (extract, lift)
0.4.4
- adjusting commands options
- changing yaml's multine line string format
0.4.3
- raw format
0.4.2
- deepmerge with override option
- toml support
- jsonknife cut command
0.4.1
- some commands have format option
- some fixes
0.3
- command extras
pip install dictknife[command]
- adding dictknife-concat command
- adding dictknife-transform command
- adding dictknife-diff command
0.2
- external iterator is recommened. (using LooseDictWalkingIterator instead of LooseDictWalker)
0.1
- yaml/json load extras (
pip install dictknife[load]
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dictknife-0.14.1.tar.gz
(53.8 kB
view details)
Built Distribution
File details
Details for the file dictknife-0.14.1.tar.gz
.
File metadata
- Download URL: dictknife-0.14.1.tar.gz
- Upload date:
- Size: 53.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5cd766335f105a7cfbf902eb31db603c41ddd870fe5a030e2f987de8a54b24d |
|
MD5 | bedcf54943fadbc2cf8f9a9431069046 |
|
BLAKE2b-256 | 5c539a32ae446ef0a8360489e185dcbb1003a6c24970733321a5b5d67467bbcf |
File details
Details for the file dictknife-0.14.1-py3-none-any.whl
.
File metadata
- Download URL: dictknife-0.14.1-py3-none-any.whl
- Upload date:
- Size: 70.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 39a2105174a47b9e00ed355a73eea7908c2867620dc7ba1530bdf252f080d3d1 |
|
MD5 | d20a73b422cd56f971e2e6889aa0390f |
|
BLAKE2b-256 | b6d3a35ab3b11ce22609d1d54285dc3a30e07a780fb165ecb67ebc9e1520a0b2 |