2014-06-09  Nicolas Williams  <nico@cryptonector.com>

	Add libm.h to dist file list

	Add note about cmd.exe quoting

	Building docs fails on powerpc (#349)

2014-06-08  Nicolas Williams  <nico@cryptonector.com>

	Update site news

	Also fix configure.ac to use git describe --tags

	Fix scripts/version: use git describe --tags ...
	After tagging as 1.4 scripts/version was still producing jq-1.3-....

	Add `indices(s)`, improve `index(s)`, `rindex(s)`
	Now these deal with arrays as input and `s` being an array or a scalar.

	Improve `index` and `rindex` examples

	Remove reference to `getpath` from docs

	Document `index` and `rindex` (#389)

2014-06-07  Santiago Lapresta  <santiago.lapresta@gmail.com>

	Added `join` function

2014-06-07  Nicolas Williams  <nico@cryptonector.com>

	String * number should be commutative

2014-06-04  Nicolas Williams  <nico@cryptonector.com>

	Add cross-compilation notes to README
	A detailed set of instruction as to how to setup a cross-compilation
	environment for OS X and Win32/64 would be nice.

	Add -j option to scripts/crosscompile

	Add flags argument to jv_parser_new()
	For extensibility.  We might add streaming parser options, even binary
	JSON encoding options.

2014-06-02  Nicolas Williams  <nico@cryptonector.com>

	Fix tests failures on Windows
	And Solaris 8 and 9 too, no doubt.  The problem was that non-standard
	vsnprintf()s that return -1 when the buffer is too small were not
	properly supported.

2014-05-20  Santiago Lapresta  <santiago.lapresta@gmail.com>

	Documented `del` command

2014-05-11  Santiago Lapresta  <santiago.lapresta@gmail.com>

	Added texts/examples to unique_by function

	Added unique_by function

2014-04-17  Nicolas Williams  <nico@cryptonector.com>

	Make pthread tls configurable for Mingw build
	For the Mingw build we don't want to pull in the pthread DLL just
	because we can autodetect pthread support.  That would make the jq.exe
	binary not self-contained.

2014-04-16  Nicolas Williams  <nico@cryptonector.com>

	Add autoconf checks for pthreads; fix #340

2014-03-20  Jingwen Owen Ou  <jingweno@gmail.com>

	Add link to jqplay

2014-03-13  Nicolas Williams  <nico@cryptonector.com>

	Fix for #303 in the sources

2014-03-13  Santiago Lapresta  <santiago.lapresta@gmail.com>

	Added `arrays` and other filters
	Arrays, objects, numbers, strings, booleans, nulls, values (non-nulls)
	-- these builtins filter out those inputs that don't match the name of
	the builtin.

	This fixes #322 and #324.

2014-03-07  Filippo Valsorda  <filippo.valsorda@gmail.com>

	Add a recursive object merge strategy and bind it to *
	This commit adds a jv_object_merge_recursive function, that performs
	recursive object merging, and binds it to multiply when applied to
	two objects.

	Closes #320

2014-03-06  Nicolas Williams  <nico@cryptonector.com>

	Make libm tests more portable

2014-02-26  Andrew Rodland  <andrew@cleverdomain.org>

	Repair jv_show

2014-02-26  Andrew Rodland  <andrew@cleverdomain.org>

	Make jq --raw-output --unbuffered work
	--unbuffered was only affecting the normal output case, not the --raw-output case. Make the two of them play together.

	This also makes sure that the output is flushed *after* printing the newline, so a consumer doesn't lag a line behind.

2014-02-21  Nicolas Williams  <nico@cryptonector.com>

	Add cbrt (cube root)

	Add missing trig functions and barebones test

	Remove non-standard exp10()

2014-02-21  Mike McCabe  <mccabe@archive.org>

	Initial add of math functions.

2014-02-20  Nicolas Williams  <nico@cryptonector.com>

	Add `?`, `.[]?`, and `..` operators
	Make XPath-like `//a/b` recursive structure traversal easier in jq,
	which then becomes:

	    ..|.a?.b?

	The `?` operator suppresses errors about . not being an array or object.
	The `..` operator is equivalent to calling the new `recurse_down`
	built-in, which in turn is equivalent to

	    recurse(.[]?)

	Note that `..a` is not supported; neither is `...a`.  That could be add
	added, but it doesn't seem worth the trouble of saving the need to type
	a '|'.

2014-02-16  Santiago Lapresta  <santiago.lapresta@gmail.com>

	Added `all` and `any` builtins

2014-01-25  polyester  <paul@cleanclothes.org>

	work with newer versions of automake
	when using a newer automake, the autoreconf step fails with warnings:
	"linking libtool libraries using a non-POSIX archiver requires 'AM_PROG_AR' in 'configure.ac' "

	This happens for instance on ubuntu 13.10.
	Doing just that, adding 'AM_PROG_AR' to configure.ac fixes the problem.

2014-01-01  Nicolas Williams  <nico@cryptonector.com>

	Fix #201; check that bison accepts --warnings

2013-12-27  Joe Littlejohn  <joe.littlejohn@nokia.com>

	Fix rpm build (`make rpm`)
	* Re-add VERSION as it's required for `./setup superclean`
	  and `make rpm`.
	* Add *.rpm to git ignore, we never want them under version control.

2013-12-27  Filippo Giunchedi  <fgiunchedi@gmail.com>

	include additional files in jq.spec
	this will probably need changing upon SONAME bump

	fix rpm Makefile target and prerequisites
	depend on dist and the specfile, plus use automake's variables

2013-12-26  Nicolas Williams  <nico@cryptonector.com>

	Document --version

2013-12-26  Nicolas Williams  <nico@cryptonector.com>

	Add jv_dumpf() and jv_show()
	jv_dumpf() takes a FILE *.

	jv_show() is intended for use in debuggers, so it dumps the jv to stderr
	and it does not jv_free() the jv, so it's safe to
	"call jv_show(some_jv, -1)" in a debugger.  If flags == -1 then the jv
	will be shown pretty-printed and in color.

2013-12-26  Nicolas Williams  <nico@cryptonector.com>

	Document .foo.bar in manual

	Document exit numbers

	Normalize errors for -e

2013-12-25  Nicolas Williams  <nico@cryptonector.com>

	Fix doc typos (.[foo] wanted to be .["foo"])

	Add note to jq.1 about shell quoting

2013-12-20  Philipp Hagemeister  <phihag@phihag.de>

	Ignore the config/test-driver file
	This file is automatically generated and does not need to be committed.

	Fix @uri example
	Previously, the @uri example didn't match the actual behavior of the current jq, as exclamation marks do not need to be encoded in URIs.
	Replace the example with an input that needs encoding, and is encoded by jq.

2013-12-17  Stephen Dolan  <mu@netsoc.tcd.ie>

	Allow negated object values without parens. Fixes #247

2013-12-17  Nicolas Williams  <nico@cryptonector.com>

	Fix memmem() error

2013-12-13  Rémy Léone  <remy.leone@gmail.com>

	Adding a .travis.yml file to use the travis-ci.org
	From wikipedia:

	Travis CI is a hosted, distributed continuous integration service used
	to build and test projects hosted at GitHub.

	Travis CI is configured by adding a file named .travis.yml, which is a
	YAML format text file, to the root directory of the GitHub repository.

	Travis CI automatically detects when a commit has been made and pushed
	to a GitHub repository that is using Travis CI, and each time this
	happens, it will try to build the project and run tests. This includes
	commits to all branches, not just to the master branch. When that
	process has completed, it will notify a developer in the way it has been
	configured to do so — for example, by sending an email containing the
	test results (showing success or failure), or by posting a message on an
	IRC channel. It can be configured to run the tests on a range of
	different machines, with different software installed (such as older
	versions of a programming language, to test for compatibility).

2013-12-13  Stephen Dolan  <mu@netsoc.tcd.ie>

	Make the testsuite run on machines without valgrind

	Format more integers as integers, not scientific notation.
	jq is now willing to put up to 15 zeros after an integer before
	moving to scientific notation.

2013-12-11  Nicolas Williams  <nico@cryptonector.com>

	Complete more-arity feature not complete
	And test

2013-12-10  David R. MacIver  <david@drmaciver.com>

	convert range bounds to integers in a way that avoids undefined behaviour

	add checking of numeric indices to an array to see if they can reasonably be considered integers. Avoid undefined behaviour if out of bounds

2013-12-09  David R. MacIver  <david@drmaciver.com>

	some functions were missing prototypes. Add them

2013-12-08  David R. MacIver  <david@drmaciver.com>

	These vfprintfs are being used as if they were printfs. Fix that

	consistent use of goto out in main

2013-12-08  Stephen Dolan  <mu@netsoc.tcd.ie>

	Refactor jv structure.
	New structure layout is simpler and also faster.  In particular, it's
	now small enough to be passed in registers on amd64.

	Make testsuite not leak when compiled with -DNDEBUG.

2013-12-08  David R. MacIver  <david@drmaciver.com>

	test for losing memory on compile errors

	args to jq_compile_args were not getting freed when there were errors in the compile

2013-12-06  Nicolas Williams  <nico@cryptonector.com>

	Fix double-free typo in print_error()

	Fix manual.yml

2013-12-04  Nicolas Williams  <nico@cryptonector.com>

	Conditionally #define _GNU_SOURCE in compile.c

	Add tests for string index by string and builtins

	Add index and rindex builtins

	Add index strings by string; return string indexes
	    % jq '.[","]'
	    "a,bc,def,ghij,klmno"
	    [1,4,8,13]
	    %

	Make length return abs value of numeric inputs

	Add callback interface for errors
	Printing to stderr is not the right answer for a library.

	Add jv_string_vfmt()

	Document ltrimstr and rtrimstr

	Test ltrimstr and rtrimstr functions

	Add ltrimstr and rtrimstr functions

	Document -e / --exit-status argument

	Add -e | --exit-status CLI option

	Document tojson and fromjson builtins

	Test tojson and fromjson

	Add tojson and fromjson builtins

	Document split function

	Document string multiplication and division

	Document string functions and slicing

	Test string slicing

	Add string slicing

	Add tests for string division/splitting

	Add string division by string (split on separator)

	Test starts/endswith and string multiplication

	Add string multiplication by number

	Add startswith/endswith

	Add explode/implode jq functions to match jv API

	Use uint32_t for codepoint in  jv_string_append_codepoint()

	Add jv string utility functions
	    jv_string_empty()
	        -> return an empty string with given allocated length (for fast
	           appends)
	    jv_string_append_codepoint
	        -> append a single codepoint (int) to the given string
	    jv_string_explode
	        -> return an array of codepoints making up a string
	    jv_string_implode
	        -> return the UTF-8 encoding of an array of codepoint numbers

	Support more arguments for defs

2013-12-04  Stephen Dolan  <mu@netsoc.tcd.ie>

	Preserve insertion order in objects. Closes #169.

2013-11-30  Nicolas Pouillard  <nicolas.pouillard@gmail.com>

	Add a few more test cases (from the man page)

2013-11-08  Stephen Dolan  <mu@netsoc.tcd.ie>

	Add a --unbuffered option. Closes #206

2013-11-07  Peter van Dijk  <peter@7bits.nl>

	count should be length
	Example refers to a count function, which does not exist. Replacing it with length works.

2013-11-07  Stephen Dolan  <mu@netsoc.tcd.ie>

	Fix a crash on group_by of empty list. Fixes #208.

2013-10-16  Ryoichi KATO  <ryo1kato@gmail.com>

	Docs: add description of --from-file option

2013-10-06  Juan Guerrero  <juan.guerrero.lozano@gmail.com>

	Fix typo on error message

2013-09-19  Kenny Shen  <kenny.shen@zalora.com>

	Add missing -i flag in build instructions

2013-09-14  Michael Daines  <michael@mdaines.com>

	Add test showing calculation of standard deviation

2013-09-13  Mike Daines  <michael@mdaines.com>

	Fix typo

2013-09-11  Michael Daines  <michael@mdaines.com>

	Add sqrt operator

2013-09-04  Jack Pearkes  <jackpearkes@gmail.com>

	docs: update the tutorial to use GitHub's API

2013-09-01  Ankur  <ankz.kothari@gmail.com>

	Call AM_INIT_AUTOMAKE once only
	Fixes build with automake-1.14

2013-08-19  Joe Littlejohn  <joe.littlejohn@nokia.com>

	Fix Makefile after refactoring of stacks in 05d90517b02

2013-06-23  Stephen Dolan  <mu@netsoc.tcd.ie>

	Remove #includes from jv.h

	Fix the jv_parser interface.

	Use libtool's built-in symbol exporting rather than a mapfile.

	Move gen_utf8_tables to scripts

	Move libtool m4 junk to config/ and delete some autogenerated files.

	Remove Autoconf-generated config.h.

2013-06-22  Stephen Dolan  <mu@netsoc.tcd.ie>

	Build libjq only once, and link it statically to ./jq
	This means ./jq is a real binary rather than a libtool turd.

	Fix distcheck.
	Update list of files to be distributed.

	Utf8 fixes. Closes #161

	Reject all overlong UTF8 sequences.

	Fix various UTF8 parsing bugs.
	In particular, parse bad UTF8 by replacing the broken bits with U+FFFD
	and resychronise correctly after broken sequences.

	Fix example in manual for `floor`. See #155.

2013-06-21  Nicolas Williams  <nico@cryptonector.com>

	Document floor

	Add floor operator

	Document mod

	Add mod (and setmod) operators

	Update .gitignore

	Add libjq autoconf goo

	Quiet setup.sh re: tmp dir

2013-06-21  Stephen Dolan  <mu@netsoc.tcd.ie>

	Move cfunction invocation code to the interpreter loop.

2013-06-18  Nicolas Williams  <nico@cryptonector.com>

	Fix serious bug in handling of --argfile

	Fix leaks in jv_load_file()

2013-06-17  Stephen Dolan  <mu@netsoc.tcd.ie>

	Fold opcode.{c,h} into bytecode.{c,h}

	Simplify block functions for variables

	Saner build instructions in README.md
	Closes #144

	Remove some initialise-to-zero code.
	This lets valgrind find more bugs - if a field isn't given a
	well-defined value valgrind will now find it instead of seeing it
	set to zero with memset.

2013-06-17  Nicolas Williams  <nico@cryptonector.com>

	Remove accidentally introduced use of fopen "e"

2013-06-16  Stephen Dolan  <mu@netsoc.tcd.ie>

	Merge pull request #114 from nicowilliams/nomem_handler
	Add jv_nomem_handler()

2013-06-16  Nicolas Williams  <nico@cryptonector.com>

	Remove last remnant of main.h

2013-06-15  Nicolas Williams  <nico@cryptonector.com>

	Allow --run-tests to take a file argument

	Fixup API to get closer to a libjq

2013-06-15  Nicolas Williams  <nico@cryptonector.com>

	Move slurp_file() into library as jv_load_file()
	Needed as part of creating a libjq.

2013-06-14  Stephen Dolan  <mu@netsoc.tcd.ie>

	Clean up lots of stack and frame logic.
	Move frame defs to execute.c

2013-06-13  Stephen Dolan  <mu@netsoc.tcd.ie>

	Simplify frame logic.

	Unify all stacks. Passes tests, but needs cleanup.

2013-06-11  Stephen Dolan  <mu@netsoc.tcd.ie>

	Support ."foo" syntax for accessing fields. See #141.

2013-06-09  Stephen Dolan  <mu@netsoc.tcd.ie>

	Unify frame and data stacks

2013-06-05  Stephen Dolan  <mu@netsoc.tcd.ie>

	Speed up cached configure (./configure -C)

	Clean up flex lines in build

	Lex and parse .foo better.
	'.as' is now valid, '. foo' is now invalid. See #141.

2013-06-04  Markus Lanthaler  <mark_lanthaler@gmx.net>

	Update README.md
	Update the link to the documentation. All GitHub pages are now using the github.io domain.

2013-06-03  Stephen Dolan  <mu@netsoc.tcd.ie>

	Make jq --version print to stdout, not stderr

	Better error handling for .foo case in parser. See #141.

	Let the parser rather than the lexer handle invalid characters.

	Add command-line option to sort object keys.
	Closes #79.

	Clean up Makefile.am (distcheck, rebuild version.h less often)

2013-05-31  Brendan Macmillan  <melbourne.research@gmail.com>

	Stop warning on fgets, simple version

	Stop warning on fgets, complex version

2013-05-31  Stephen Dolan  <mu@netsoc.tcd.ie>

	Squash a warning on some GCC versions

2013-05-29  Stephen Dolan  <mu@netsoc.tcd.ie>

	Support for printing object keys in sorted order.
	No command-line option to enable this yet. See #79.

2013-05-29  Brendan Macmillan  <melbourne.research@gmail.com>

	Bugfix multiline off-by-one (locfile.c)

	locfile.h -> locfile.h + locfile.c
	clean up includes of a few files

	Hack bugfix for multiline off-by-one (locfile.c)

	Load library from ~/.jq

2013-05-24  Stephen Dolan  <mu@netsoc.tcd.ie>

	Make jq --version report an actual git revision.
	Closes #129.

2013-05-23  Nicolas Williams  <nico@cryptonector.com>

	Add --argfile variant of --arg (issue #117)
	This is useful when one has a database (in JSON form) to query using jq
	input data.

	    % echo '{"a":1, "c":5}' > db.json
	    % echo '"c"'|./jq --argfile f /tmp/a '$f[.]'
	    5
	    % echo '"a"'|./jq --argfile f /tmp/a '$f[.]'
	    1
	    % echo '"b"'|./jq --argfile f /tmp/a '$f[.]'
	    null
	    %

2013-05-23  Stephen Dolan  <mu@netsoc.tcd.ie>

	'make clean' won't delete jq.1 if it can't be rebuilt.
	See #131
