{"push_id":564216244,"size":38,"distinct_size":2,"ref":"refs/heads/master","head":"5f23fbf1880e513495a67d52d493855f88b19460","before":"b445f1356bd64b7537746ba751526c535caa2283","commits":[{"sha":"6102dbaf1867107bf2068d9d027d85df20b5dfaa","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Allow to_string to work with python types\n\nThe default behavior is to just str() them, which\nis better behavior than to do nothing.\n\nThe spec does not specify what should happen with\nlanguage specific types (it only assumes JSON types),\nso we're not violating the spec.  It accomodates the\nuse case where you want to be able to work with a python\ntype as an expref, for example::\n\n  >>> import jmespath\n  >>> from datetime import datetime, timedelta\n  >>> data = [\n      {\"time\": datetime.now(), \"other\": \"foo\"},\n      {\"time\": datetime.now() + timedelta(seconds=1), \"other\": \"bar\"}]\n  >>> jmespath.search('max_by(@, &to_string(time)).other', data)\n  'bar'","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/6102dbaf1867107bf2068d9d027d85df20b5dfaa"},{"sha":"0b05ecb628329cf1ed5feb1b899a09450c7b0e41","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Merge branch 'release-0.5.0' into develop\n\n* release-0.5.0:\n  Bump version to 0.5.0","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/0b05ecb628329cf1ed5feb1b899a09450c7b0e41"},{"sha":"6b7d8112b2f1678064f11dd472642b86f99ac373","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Merge remote-tracking branch 'upstream/handle-datetimes' into develop\n\nCloses #69.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/6b7d8112b2f1678064f11dd472642b86f99ac373"},{"sha":"3ad12d2a98921f3efe8e0081b66056a6f33f0ee5","author":{"email":"68f210f9f3d4951dbeb87ce8c9d10ffe36d445f9@gmail.com","name":"Areski Belaid"},"message":"Fix readthedocs link on Readme.rst","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/3ad12d2a98921f3efe8e0081b66056a6f33f0ee5"},{"sha":"e8b8f7360c6766ff6c1f6cf90db3ec9605dde263","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Implement slicing syntax (jep 5)\n\nI've also added several additional compliance tests\nfor slices that cover some missing cases.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/e8b8f7360c6766ff6c1f6cf90db3ec9605dde263"},{"sha":"14b28445b97e8eb5da27db17a500a715ba410353","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Add array slice jep to list of proposals\n\nCouldn't find the original repo, so this is just a copy of that\nversion with some small changes.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/14b28445b97e8eb5da27db17a500a715ba410353"},{"sha":"c1f035d812932079c1d36c365e532249e1cf44ff","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Update spec with new slice expr\n\nThis copies over parts of the slice JEP\ninto the specification and also adds a little\nmore explanation of what slices are and some\ncommon examples.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/c1f035d812932079c1d36c365e532249e1cf44ff"},{"sha":"eb01f579e369082b6341931ddaa083d8768d87e0","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Update perf tests to check combined time\n\nThis is the aggregate of lex + parse + search.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/eb01f579e369082b6341931ddaa083d8768d87e0"},{"sha":"4527327781f000d44321d35e1a37426911868b05","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Bump up iteration count on perf tests","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/4527327781f000d44321d35e1a37426911868b05"},{"sha":"344fe1e073279eb5eb03eeac3ac3fd8a97a2ea70","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Use more accurate clock() for perf tests","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/344fe1e073279eb5eb03eeac3ac3fd8a97a2ea70"},{"sha":"565c480d5b4b1f471f1a375b90c38e406c01a787","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Perf improvement for parsing subexprs\n\nRather than having subexprs be a binary AST node,\nthe children key is now an array of N children.\nDuring parsing, if we encounter a subexpr, rather than\ncreating a new AST node, we just add to the children\nnode.\n\nThis not only improves parsing, but also improves search\ntime.\n\nFrom the perf tests, before:\n\nlex_time:      0.40006638\nparse_time:    0.70905685ms\nsearch_time:   0.11396408ms\ncombined_time: 0.83518028ms\nname: deep_nesting_50\n\nand after:\n\nlex_time:      0.40888786\nparse_time:    0.69713593ms\nsearch_time:   0.05698204ms\ncombined_time: 0.76007843ms\nname: deep_nesting_50","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/565c480d5b4b1f471f1a375b90c38e406c01a787"},{"sha":"b67852498714a07c3b066702927e27d36ca81adb","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Perf improvements for index exprs\n\nSwitch from a binary AST node over to an array\nof children.  Same thing as sub exprs but for index\nexpressions (e.g. `[0][1][2][3]`).  Perf improvements\nshow improvements but not as much as sub expressions.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/b67852498714a07c3b066702927e27d36ca81adb"},{"sha":"d2332759939b26f31083f7287e788e8b5c3b0e83","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Inline token match functions for _match()\n\nThis is the most common code path so the function\ncalls are inlined here.  perf/perftest.py shows\nperf improvements.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/d2332759939b26f31083f7287e788e8b5c3b0e83"},{"sha":"b9342f001b8127a9531f2d01772647d86464623b","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Merge branch 'areski-patch-1' into develop\n\n* areski-patch-1:\n  Fix readthedocs link on Readme.rst","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/b9342f001b8127a9531f2d01772647d86464623b"},{"sha":"906d3a3aa7c64cbe2c2630af3de28d6b6c491bdf","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Fix link for RFC 4234","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/906d3a3aa7c64cbe2c2630af3de28d6b6c491bdf"},{"sha":"c38a158da22eaae22d853a50911f3670f8e2fdf7","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Update README links to point to jmespath.org","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/c38a158da22eaae22d853a50911f3670f8e2fdf7"},{"sha":"7fbdb46d50045fe59a56cfc61efc28f006ba4247","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Add graphviz AST generator\n\nThis will take a parsed expression and generate a .dot file\nthat can be rendered via graphviz.  The sole purpose of this tool\nis to enable devs to visualize the AST and help troubleshoot issues.\nI've made this an internal interface for now, but only because the\nAST is an implementation detail and subject to change.  People that\nneed this functionality are free to call the new method as needed.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/7fbdb46d50045fe59a56cfc61efc28f006ba4247"},{"sha":"2e6c6b128f3415e6ae07a3e4ef79cbada23c7e9a","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Add astrender script\n\nAllows you to do:\n\n```\n  $ scripts/astrender foo.bar.baz[0]\n\n```\n\nAnd it will open up the rendered AST for the expression.","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/2e6c6b128f3415e6ae07a3e4ef79cbada23c7e9a"},{"sha":"491839a81772e6cb37dc66576c068dd1eb82c420","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Merge branch 'jamesls-add-ast-viz' into develop\n\n* jamesls-add-ast-viz:\n  Add astrender script\n  Add graphviz AST generator","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/491839a81772e6cb37dc66576c068dd1eb82c420"},{"sha":"47abb3a95dddd360dd14534a26cce779740803d9","author":{"email":"93f8bb0eb2c659b85694486c41717eaf0fe23cd4@jamesls.com","name":"James Saryerwinnie"},"message":"Merge branch 'jamesls-slices' into develop\n\n* jamesls-slices:\n  Update spec with new slice expr\n  Add array slice jep to list of proposals\n  Implement slicing syntax (jep 5)","distinct":false,"url":"https://api.github.com/repos/jmespath/jmespath.py/commits/47abb3a95dddd360dd14534a26cce779740803d9"}]}