doc: Convert CHANGES to reStructuredText and add it to HTML docs

CHANGES is preprocessed to convert json_*() function names to Sphinx
:cfunc: cross references. This is to keep CHANGES more readable in
both plain text and HTML.
This commit is contained in:
Petri Lehtinen 2010-01-12 21:58:52 +02:00
parent b077d7988e
commit b76ee75aad
5 changed files with 98 additions and 21 deletions

101
CHANGES
View File

@ -1,54 +1,108 @@
Version 1.1.3, released 2009-12-18
Version 1.2 (in development)
============================
* New functions:
- ``json_equal()``: Test whether two JSON values are equal
- ``json_copy()`` and ``json_deep_copy()``: Make shallow and deep
copies of JSON values
- Add a version of all functions taking a string argument that
doesn't check for valid UTF-8: ``json_string_nocheck()``,
``json_string_set_nocheck()``, ``json_object_set_nocheck()``,
``json_object_set_new_nocheck()``
* New encoding flags:
- ``JSON_SORT_KEYS``: Sort objects by key
- ``JSON_ENSURE_ASCII``: Escape all non-ASCII Unicode characters
- ``JSON_COMPACT``: Use a compact representation with all unneeded
whitespace stripped
* Bug fixes:
- Revise and unify whitespace usage in encoder
* Other changes:
- Convert ``CHANGES`` (this file) to reStructured text and add it to
HTML documentation
- Python is no longer required to run the tests
- Documentation can now be built by invoking ``make html``
Version 1.1.3
=============
Released 2009-12-18
* Encode reals correctly, so that first encoding and then decoding a
real always produces the same value
* Don't export private symbols in libjansson.so
* Don't export private symbols in ``libjansson.so``
Version 1.1.2, released 2009-11-08
Version 1.1.2
=============
Released 2009-11-08
* Fix a bug where an error message was not produced if the input file
could not be opened in json_load_file()
could not be opened in ``json_load_file()``
* Fix an assertion failure in decoder caused by a minus sign without a
digit after it
* Remove an unneeded include for stdint.h in jansson.h
* Remove an unneeded include of ``stdint.h`` in ``jansson.h``
Version 1.1.1, released 2009-10-26
Version 1.1.1
=============
Released 2009-10-26
* All documentation files were not distributed with v1.1; build
documentation in make distcheck to prevent this in the future
* Fix v1.1 release date in CHANGES
* Fix v1.1 release date in ``CHANGES``
Version 1.1, released 2009-10-20
Version 1.1
===========
Released 2009-10-20
* API additions and improvements:
- Extend array and object APIs
- Add functions to modify integer, real and string values
- Improve argument validation
- Use unsigned int instead of uint32_t for encoding flags
- Use unsigned int instead of ``uint32_t`` for encoding flags
* Enhance documentation
- Add getting started guide and tutorial
- Fix some typos
- General clarifications and cleanup
* Check for integer and real overflows and underflows in decoder
* Make singleton values thread-safe (true, false and null)
* Make singleton values thread-safe (``true``, ``false`` and ``null``)
* Enhance circular reference handling
* Don't define -std=c99 in AM_CFLAGS
* Add C++ guards to jansson.h
* Don't define ``-std=c99`` in ``AM_CFLAGS``
* Add C++ guards to ``jansson.h``
* Minor performance and portability improvements
* Expand test coverage
Version 1.0.4, released 2009-10-11
Version 1.0.4
=============
Released 2009-10-11
* Relax Autoconf version requirement to 2.59
* Make Jansson compile on platforms where plain char is unsigned
* Make Jansson compile on platforms where plain ``char`` is unsigned
* Fix API tests for object
Version 1.0.3, released 2009-09-14
Version 1.0.3
=============
Released 2009-09-14
* Check for integer and real overflows and underflows in decoder
* Use the Python json module for tests, or simplejson if the json
@ -56,16 +110,25 @@ Version 1.0.3, released 2009-09-14
* Distribute changelog (this file)
Version 1.0.2, released 2009-09-08
Version 1.0.2
=============
Released 2009-09-08
* Handle EOF correctly in decoder
Version 1.0.1, released 2009-09-04
Version 1.0.1
=============
* Fixed broken json_is_boolean()
Released 2009-09-04
* Fixed broken ``json_is_boolean()``
Version 1.0, released 2009-08-25
Version 1.0
===========
Released 2009-08-25
* Initial release

1
doc/.gitignore vendored
View File

@ -1 +1,2 @@
_build/
changes.rst

View File

@ -5,7 +5,15 @@ EXTRA_DIST = \
SPHINXBUILD = sphinx-build
SPHINXOPTS = -d _build/doctrees -W
html-local:
# Convert json_*() functions to :cfunc: cross references in
# ../CHANGES, and add a header from changes.rst.in
changes.rst: changes.rst.in ../CHANGES
set -e; \
cat changes.rst.in >$@; \
sed -r -e 's/``(json_[a-z_]+\(\))``/:cfunc:`\1`/g' ../CHANGES \
>>$@
html-local: changes.rst
$(SPHINXBUILD) -b html $(SPHINXOPTS) $(srcdir) _build/html
install-html-local: html
@ -17,4 +25,4 @@ uninstall-local:
clean-local:
rm -rf _build
rm -f ext/refcounting.pyc
rm -f ext/refcounting.pyc changes.rst

4
doc/changes.rst.in Normal file
View File

@ -0,0 +1,4 @@
******************
Changes in Jansson
******************

View File

@ -35,6 +35,7 @@ Contents
gettingstarted
tutorial
apiref
changes
Indices and Tables