jdp / jarg Goto Github PK
View Code? Open in Web Editor NEWshorthand JSON and form encoding syntax in the shell
Home Page: http://jdp.github.io/jarg/
License: MIT License
shorthand JSON and form encoding syntax in the shell
Home Page: http://jdp.github.io/jarg/
License: MIT License
The default form encoding from urllib.urlencode
doesn't support multi-dimensional values. That behavior can be taken from the multidimensional-urlencode package:
>>> import urllib
>>> from multidimensional_urlencode import urlencode
>>> e = urlencode({"a": {"b": {"c": [1, 2, 3], "d": "e"}}})
>>> urllib.unquote(e)
'a[b][d]=e&a[b][c]=1&a[b][c]=2&a[b][c]=3'
Should it be part of the default form dialect, or should there be a separate dialect for multidimensional values?
jarg should support files as values. I think it could use cURL's syntax:
$ jarg file=@/path/to/file
In the JSON dialect, it should conform to example 9 of the HTML JSON forms draft. In the form dialect, should it conform to multipart?
I'm trying to run jarg on crontab, simple by doing this:
jarg foo=bar
but I get this error:
Traceback (most recent call last):
File "/usr/bin/jarg", line 9, in
load_entry_point('jarg==0.4.1', 'console_scripts', 'jarg')()
File "/usr/lib/python2.7/site-packages/jarg/cli.py", line 66, in main
context = dialect.from_literal(sys.stdin.read())
File "/usr/lib/python2.7/site-packages/jarg/dialects.py", line 41, in from_literal
return json.loads(value)
File "/usr/lib64/python2.7/json/init.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib64/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib64/python2.7/json/decoder.py", line 384, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
I've placed all my env variables on crontab.
Any thoughts on how to solve it?
Thanks
Right now jarg
builds from an empty context. It should be able to take context from standard input:
$ echo '{"a": 1, "b": 2}' | jarg c=3
{"a": 1, "b": 2, "c": 3}
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.