Skip to content

Commit 98ffb1e

Browse files
committed
update README
1 parent dd6d3b5 commit 98ffb1e

File tree

2 files changed

+191
-4
lines changed

2 files changed

+191
-4
lines changed

README.rst

Lines changed: 97 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,60 @@ Table of Contents
1414
:local:
1515
:depth: 3
1616

17+
============
18+
What's New
19+
============
20+
21+
JSONLab v1.9 is the alpha release of the next milestone - code named "Magnus".
22+
Notable changes are summarized below, key features marked by *:
23+
24+
- 2019-05-06 [25ad795] unescape string in loadjson.m
25+
- 2019-05-04 [2e317c9] explain extra compression fields
26+
- 2019-05-02 [1b1be65] avoid side effect of removing singletarray
27+
- 2019-05-02*[8360fd1] support zmat based base64 encoding and decoding
28+
- 2019-05-01*[c797bb2] integrating zmat, for zlib/gzip data compression
29+
- 2019-04-29 [70551fe] remove warnings from matlab
30+
- 2019-04-28 [0d61c4b] complete data compression support, close #52
31+
- 2019-04-27 [804115b] avoid typecast error
32+
- 2019-04-27 [c166aa7] change default compressarraysize to 100
33+
- 2019-04-27*[3322f6f] major new feature: support array compression and decompression
34+
- 2019-03-13*[9c01046] support saving function handles, close #51
35+
- 2019-03-13 [a8fde38] add option to parse string array or convert to char, close #50
36+
- 2019-03-12 [ed2645e] treat string array as cell array in newer matlab
37+
- 2018-11-18 [c3eb021] allow saving uint64 integers in saveubjson, fix #49
38+
39+
The biggest change in this release, compared to v1.8 released in July 2018,
40+
is the support of data compression via the 'Compression' option for both
41+
savejson and saveubjson. Two compression methods are currently supported -
42+
"zlib" and "gzip". The compression interfaces, zlibencode/zlibdecode/gzipencode/
43+
gzipdecode are modified from the "Byte Encoding Utilities" by Kota Yamaguchi [1],
44+
which has built-in support for java-based compression in MATLAB (when jvm is
45+
enabled). To support Octave, as well as MATLAB in "nojvm" mode, a mex-based
46+
data compression/encoding toolbox, ZMat [2], written by Qianqian Fang, takes priority
47+
over the java-based utilities, if installed. For savejson, a 'base64' encoding is
48+
applied to convert the compressed binary stream into a string; 'base64' encoding
49+
is not used in saveubjson. The encoding and restoration of the binary matlab arrays
50+
are automatically handled in save*json/load*json round-trip conversions.
51+
52+
To save matlab data with compression, one simply append 'Compression', 'method' pair
53+
in the savejson/saveubjson call. For example
54+
55+
.. code:: matlab
56+
57+
jsonstr=savejson('',mydata,'compression','zlib');
58+
data=loadjson(jsonstr);
59+
60+
In addition, the below features are added to JSONLab
61+
62+
* save function handles
63+
* support saving "string" class in MATLAB
64+
* fix two bugs in saveubjson
65+
* unescape strings in loadjson
66+
67+
68+
- [1] https://www.mathworks.com/matlabcentral/fileexchange/39526-byte-encoding-utilities
69+
- [2] http://github.com/fangq/zmat
70+
1771
============
1872
Introduction
1973
============
@@ -457,10 +511,12 @@ following command:
457511
458512
or browsing the github site at
459513

460-
.. code:: shell
461-
462514
https://github.com/fangq/jsonlab
463515

516+
Please report any bugs or issues to the below URL:
517+
518+
https://github.com/fangq/jsonlab/issues
519+
464520
Sometimes, you may find it is necessary to modify JSONLab to achieve your
465521
goals, or attempt to modify JSONLab functions to fix a bug that you have
466522
encountered. If you are happy with your changes and willing to share those
@@ -480,6 +536,44 @@ the upstream code.
480536
We appreciate any suggestions and feedbacks from you. Please use the following
481537
mailing list to report any questions you may have regarding JSONLab:
482538

483-
`iso2mesh-users <https://groups.google.com/forum/#!forum/iso2mesh-users>`_
539+
https://github.com/fangq/jsonlab/issues
484540

485541
(Subscription to the mailing list is needed in order to post messages).
542+
543+
544+
==========================
545+
Acknowledgement
546+
==========================
547+
548+
---------
549+
zlibdecode.m, zlibencode.m, gzipencode.m, gzipdecode.m, base64encode.m, base64decode.m
550+
---------
551+
552+
* Author: Kota Yamaguchi
553+
* URL: https://www.mathworks.com/matlabcentral/fileexchange/39526-byte-encoding-utilities
554+
* License: BSD License, see below
555+
556+
```
557+
Copyright (c) 2012, Kota Yamaguchi
558+
All rights reserved.
559+
560+
Redistribution and use in source and binary forms, with or without
561+
modification, are permitted provided that the following conditions are met:
562+
563+
* Redistributions of source code must retain the above copyright notice, this
564+
list of conditions and the following disclaimer.
565+
566+
* Redistributions in binary form must reproduce the above copyright notice,
567+
this list of conditions and the following disclaimer in the documentation
568+
and/or other materials provided with the distribution
569+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
570+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
571+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
572+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
573+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
574+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
575+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
576+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
577+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
578+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
579+
```

README.txt

Lines changed: 94 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,65 @@
1111

1212
Table of Content:
1313

14+
0. What's New
1415
I. Introduction
1516
II. Installation
1617
III.Using JSONLab
1718
IV. Known Issues and TODOs
1819
V. Contribution and feedback
20+
V. Acknowledgement
21+
22+
-------------------------------------------------------------------------------
23+
24+
0. What's New
25+
26+
JSONLab v1.9 is the alpha release of the next milestone - code named "Magnus".
27+
Notable changes are summarized below, key features marked by *:
28+
29+
2019-05-06 [25ad795] unescape string in loadjson.m
30+
2019-05-04 [2e317c9] explain extra compression fields
31+
2019-05-02 [1b1be65] avoid side effect of removing singletarray
32+
2019-05-02*[8360fd1] support zmat based base64 encoding and decoding
33+
2019-05-01*[c797bb2] integrating zmat, for zlib/gzip data compression
34+
2019-04-29 [70551fe] remove warnings from matlab
35+
2019-04-28 [0d61c4b] complete data compression support, close #52
36+
2019-04-27 [804115b] avoid typecast error
37+
2019-04-27 [c166aa7] change default compressarraysize to 100
38+
2019-04-27*[3322f6f] major new feature: support array compression and decompression
39+
2019-03-13*[9c01046] support saving function handles, close #51
40+
2019-03-13 [a8fde38] add option to parse string array or convert to char, close #50
41+
2019-03-12 [ed2645e] treat string array as cell array in newer matlab
42+
2018-11-18 [c3eb021] allow saving uint64 integers in saveubjson, fix #49
43+
44+
The biggest change in this release, compared to v1.8 released in July 2018,
45+
is the support of data compression via the 'Compression' option for both
46+
savejson and saveubjson. Two compression methods are currently supported -
47+
"zlib" and "gzip". The compression interfaces, zlibencode/zlibdecode/gzipencode/
48+
gzipdecode are modified from the "Byte Encoding Utilities" by Kota Yamaguchi [1],
49+
which has built-in support for java-based compression in MATLAB (when jvm is
50+
enabled). To support Octave, as well as MATLAB in "nojvm" mode, a mex-based
51+
data compression/encoding toolbox, ZMat [2], written by Qianqian Fang, takes priority
52+
over the java-based utilities, if installed. For savejson, a 'base64' encoding is
53+
applied to convert the compressed binary stream into a string; 'base64' encoding
54+
is not used in saveubjson. The encoding and restoration of the binary matlab arrays
55+
are automatically handled in save*json/load*json round-trip conversions.
56+
57+
To save matlab data with compression, one simply append 'Compression', 'method' pair
58+
in the savejson/saveubjson call. For example
59+
60+
jsonstr=savejson('',mydata,'compression','zlib');
61+
data=loadjson(jsonstr);
62+
63+
In addition, the below features are added to JSONLab
64+
65+
* save function handles
66+
* support saving "string" class in MATLAB
67+
* fix two bugs in saveubjson
68+
* unescape strings in loadjson
69+
70+
71+
* [1] https://www.mathworks.com/matlabcentral/fileexchange/39526-byte-encoding-utilities
72+
* [2] http://github.com/fangq/zmat
1973

2074
-------------------------------------------------------------------------------
2175

@@ -448,6 +502,10 @@ or browsing the github site at
448502

449503
https://github.com/fangq/jsonlab
450504

505+
Please report any bugs or issues to the below URL:
506+
507+
https://github.com/fangq/jsonlab/issues
508+
451509
Sometimes, you may find it is necessary to modify JSONLab to achieve your
452510
goals, or attempt to modify JSONLab functions to fix a bug that you have
453511
encountered. If you are happy with your changes and willing to share those
@@ -467,6 +525,41 @@ the upstream code.
467525
We appreciate any suggestions and feedbacks from you. Please use the following
468526
mailing list to report any questions you may have regarding JSONLab:
469527

470-
https://groups.google.com/forum/?hl=en#!forum/iso2mesh-users
528+
https://github.com/fangq/jsonlab/issues
471529

472530
(Subscription to the mailing list is needed in order to post messages).
531+
532+
-------------------------------------------------------------------------------
533+
534+
V. Acknowledgement
535+
536+
This toolbox contains modified functions from the below toolboxes:
537+
538+
== zlibdecode.m, zlibencode.m, gzipencode.m, gzipdecode.m, base64encode.m, base64decode.m ==
539+
540+
* Author: Kota Yamaguchi
541+
* URL:https://www.mathworks.com/matlabcentral/fileexchange/39526-byte-encoding-utilities
542+
* License: BSD License, see below
543+
544+
Copyright (c) 2012, Kota Yamaguchi
545+
All rights reserved.
546+
547+
Redistribution and use in source and binary forms, with or without
548+
modification, are permitted provided that the following conditions are met:
549+
550+
* Redistributions of source code must retain the above copyright notice, this
551+
list of conditions and the following disclaimer.
552+
553+
* Redistributions in binary form must reproduce the above copyright notice,
554+
this list of conditions and the following disclaimer in the documentation
555+
and/or other materials provided with the distribution
556+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
557+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
558+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
559+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
560+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
561+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
562+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
563+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
564+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
565+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

0 commit comments

Comments
 (0)