<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Changes in Jansson — Jansson v1.2 documentation</title> <link rel="stylesheet" href="_static/default.css" type="text/css" /> <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '#', VERSION: '1.2', COLLAPSE_MODINDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="_static/jquery.js"></script> <script type="text/javascript" src="_static/doctools.js"></script> <link rel="top" title="Jansson v1.2 documentation" href="index.html" /> <link rel="prev" title="API Reference" href="apiref.html" /> </head> <body> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="apiref.html" title="API Reference" accesskey="P">previous</a> |</li> <li><a href="index.html">Jansson v1.2 documentation</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="changes-in-jansson"> <h1>Changes in Jansson<a class="headerlink" href="#changes-in-jansson" title="Permalink to this headline">¶</a></h1> <div class="section" id="version-1-2"> <h2>Version 1.2<a class="headerlink" href="#version-1-2" title="Permalink to this headline">¶</a></h2> <p>Released 2010-01-21</p> <ul class="simple"> <li>New functions:<ul> <li><a title="json_equal" class="reference external" href="apiref.html#json_equal"><tt class="xref docutils literal"><span class="pre">json_equal()</span></tt></a>: Test whether two JSON values are equal</li> <li><a title="json_copy" class="reference external" href="apiref.html#json_copy"><tt class="xref docutils literal"><span class="pre">json_copy()</span></tt></a> and <a title="json_deep_copy" class="reference external" href="apiref.html#json_deep_copy"><tt class="xref docutils literal"><span class="pre">json_deep_copy()</span></tt></a>: Make shallow and deep copies of JSON values</li> <li>Add a version of all functions taking a string argument that doesn’t check for valid UTF-8: <a title="json_string_nocheck" class="reference external" href="apiref.html#json_string_nocheck"><tt class="xref docutils literal"><span class="pre">json_string_nocheck()</span></tt></a>, <a title="json_string_set_nocheck" class="reference external" href="apiref.html#json_string_set_nocheck"><tt class="xref docutils literal"><span class="pre">json_string_set_nocheck()</span></tt></a>, <a title="json_object_set_nocheck" class="reference external" href="apiref.html#json_object_set_nocheck"><tt class="xref docutils literal"><span class="pre">json_object_set_nocheck()</span></tt></a>, <a title="json_object_set_new_nocheck" class="reference external" href="apiref.html#json_object_set_new_nocheck"><tt class="xref docutils literal"><span class="pre">json_object_set_new_nocheck()</span></tt></a></li> </ul> </li> <li>New encoding flags:<ul> <li><tt class="docutils literal"><span class="pre">JSON_SORT_KEYS</span></tt>: Sort objects by key</li> <li><tt class="docutils literal"><span class="pre">JSON_ENSURE_ASCII</span></tt>: Escape all non-ASCII Unicode characters</li> <li><tt class="docutils literal"><span class="pre">JSON_COMPACT</span></tt>: Use a compact representation with all unneeded whitespace stripped</li> </ul> </li> <li>Bug fixes:<ul> <li>Revise and unify whitespace usage in encoder: Add spaces between array and object items, never append newline to output.</li> <li>Remove const qualifier from the <tt class="docutils literal"><span class="pre">json_t</span></tt> parameter in <a title="json_string_set" class="reference external" href="apiref.html#json_string_set"><tt class="xref docutils literal"><span class="pre">json_string_set()</span></tt></a>, <a title="json_integer_set" class="reference external" href="apiref.html#json_integer_set"><tt class="xref docutils literal"><span class="pre">json_integer_set()</span></tt></a> and <a title="json_real_set" class="reference external" href="apiref.html#json_real_set"><tt class="xref docutils literal"><span class="pre">json_real_set()</span></tt></a>.</li> <li>Use <tt class="docutils literal"><span class="pre">int32_t</span></tt> internally for representing Unicode code points (int is not enough on all platforms)</li> </ul> </li> <li>Other changes:<ul> <li>Convert <tt class="docutils literal"><span class="pre">CHANGES</span></tt> (this file) to reStructured text and add it to HTML documentation</li> <li>The test system has been refactored. Python is no longer required to run the tests.</li> <li>Documentation can now be built by invoking <tt class="docutils literal"><span class="pre">make</span> <span class="pre">html</span></tt></li> <li>Support for pkg-config</li> </ul> </li> </ul> </div> <div class="section" id="version-1-1-3"> <h2>Version 1.1.3<a class="headerlink" href="#version-1-1-3" title="Permalink to this headline">¶</a></h2> <p>Released 2009-12-18</p> <ul class="simple"> <li>Encode reals correctly, so that first encoding and then decoding a real always produces the same value</li> <li>Don’t export private symbols in <tt class="docutils literal"><span class="pre">libjansson.so</span></tt></li> </ul> </div> <div class="section" id="version-1-1-2"> <h2>Version 1.1.2<a class="headerlink" href="#version-1-1-2" title="Permalink to this headline">¶</a></h2> <p>Released 2009-11-08</p> <ul class="simple"> <li>Fix a bug where an error message was not produced if the input file could not be opened in <a title="json_load_file" class="reference external" href="apiref.html#json_load_file"><tt class="xref docutils literal"><span class="pre">json_load_file()</span></tt></a></li> <li>Fix an assertion failure in decoder caused by a minus sign without a digit after it</li> <li>Remove an unneeded include of <tt class="docutils literal"><span class="pre">stdint.h</span></tt> in <tt class="docutils literal"><span class="pre">jansson.h</span></tt></li> </ul> </div> <div class="section" id="version-1-1-1"> <h2>Version 1.1.1<a class="headerlink" href="#version-1-1-1" title="Permalink to this headline">¶</a></h2> <p>Released 2009-10-26</p> <ul class="simple"> <li>All documentation files were not distributed with v1.1; build documentation in make distcheck to prevent this in the future</li> <li>Fix v1.1 release date in <tt class="docutils literal"><span class="pre">CHANGES</span></tt></li> </ul> </div> <div class="section" id="version-1-1"> <h2>Version 1.1<a class="headerlink" href="#version-1-1" title="Permalink to this headline">¶</a></h2> <p>Released 2009-10-20</p> <ul class="simple"> <li>API additions and improvements:<ul> <li>Extend array and object APIs</li> <li>Add functions to modify integer, real and string values</li> <li>Improve argument validation</li> <li>Use unsigned int instead of <tt class="docutils literal"><span class="pre">uint32_t</span></tt> for encoding flags</li> </ul> </li> <li>Enhance documentation<ul> <li>Add getting started guide and tutorial</li> <li>Fix some typos</li> <li>General clarifications and cleanup</li> </ul> </li> <li>Check for integer and real overflows and underflows in decoder</li> <li>Make singleton values thread-safe (<tt class="docutils literal"><span class="pre">true</span></tt>, <tt class="docutils literal"><span class="pre">false</span></tt> and <tt class="docutils literal"><span class="pre">null</span></tt>)</li> <li>Enhance circular reference handling</li> <li>Don’t define <tt class="docutils literal"><span class="pre">-std=c99</span></tt> in <tt class="docutils literal"><span class="pre">AM_CFLAGS</span></tt></li> <li>Add C++ guards to <tt class="docutils literal"><span class="pre">jansson.h</span></tt></li> <li>Minor performance and portability improvements</li> <li>Expand test coverage</li> </ul> </div> <div class="section" id="version-1-0-4"> <h2>Version 1.0.4<a class="headerlink" href="#version-1-0-4" title="Permalink to this headline">¶</a></h2> <p>Released 2009-10-11</p> <ul class="simple"> <li>Relax Autoconf version requirement to 2.59</li> <li>Make Jansson compile on platforms where plain <tt class="docutils literal"><span class="pre">char</span></tt> is unsigned</li> <li>Fix API tests for object</li> </ul> </div> <div class="section" id="version-1-0-3"> <h2>Version 1.0.3<a class="headerlink" href="#version-1-0-3" title="Permalink to this headline">¶</a></h2> <p>Released 2009-09-14</p> <ul class="simple"> <li>Check for integer and real overflows and underflows in decoder</li> <li>Use the Python json module for tests, or simplejson if the json module is not found</li> <li>Distribute changelog (this file)</li> </ul> </div> <div class="section" id="version-1-0-2"> <h2>Version 1.0.2<a class="headerlink" href="#version-1-0-2" title="Permalink to this headline">¶</a></h2> <p>Released 2009-09-08</p> <ul class="simple"> <li>Handle EOF correctly in decoder</li> </ul> </div> <div class="section" id="version-1-0-1"> <h2>Version 1.0.1<a class="headerlink" href="#version-1-0-1" title="Permalink to this headline">¶</a></h2> <p>Released 2009-09-04</p> <ul class="simple"> <li>Fixed broken <a title="json_is_boolean" class="reference external" href="apiref.html#json_is_boolean"><tt class="xref docutils literal"><span class="pre">json_is_boolean()</span></tt></a></li> </ul> </div> <div class="section" id="version-1-0"> <h2>Version 1.0<a class="headerlink" href="#version-1-0" title="Permalink to this headline">¶</a></h2> <p>Released 2009-08-25</p> <ul class="simple"> <li>Initial release</li> </ul> </div> </div> </div> </div> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <h3><a href="index.html">Table Of Contents</a></h3> <ul> <li><a class="reference external" href="#">Changes in Jansson</a><ul> <li><a class="reference external" href="#version-1-2">Version 1.2</a></li> <li><a class="reference external" href="#version-1-1-3">Version 1.1.3</a></li> <li><a class="reference external" href="#version-1-1-2">Version 1.1.2</a></li> <li><a class="reference external" href="#version-1-1-1">Version 1.1.1</a></li> <li><a class="reference external" href="#version-1-1">Version 1.1</a></li> <li><a class="reference external" href="#version-1-0-4">Version 1.0.4</a></li> <li><a class="reference external" href="#version-1-0-3">Version 1.0.3</a></li> <li><a class="reference external" href="#version-1-0-2">Version 1.0.2</a></li> <li><a class="reference external" href="#version-1-0-1">Version 1.0.1</a></li> <li><a class="reference external" href="#version-1-0">Version 1.0</a></li> </ul> </li> </ul> <h4>Previous topic</h4> <p class="topless"><a href="apiref.html" title="previous chapter">API Reference</a></p> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="_sources/changes.txt" rel="nofollow">Show Source</a></li> </ul> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="search.html" method="get"> <input type="text" name="q" size="18" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="apiref.html" title="API Reference" >previous</a> |</li> <li><a href="index.html">Jansson v1.2 documentation</a> »</li> </ul> </div> <div class="footer"> © Copyright 2009, Petri Lehtinen. Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.4. </div> </body> </html>