Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A 2.0.0 release, please? #113

Open
wants to merge 132 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
132 commits
Select commit Hold shift + click to select a range
693bd97
See the change log section of README.txt for details.
Aug 31, 2016
97b3f01
Project files were suppose to be removed from the repo.
Aug 31, 2016
055f3d2
Added old version's github location.
Aug 31, 2016
c0460aa
.settings directory was suppose to be deleted.
Aug 31, 2016
742deb0
Group id matches old library.
Sep 1, 2016
96dba8d
Tweaked java docs. Map#getByDefault(Object) is only available in java…
Sep 1, 2016
05838c3
Ignore xml files.
Sep 1, 2016
115442d
POM generates sources on jar. Developer docs updated in README.txt
Sep 1, 2016
9d650ca
Added developer notes about updating hg-pages.
Sep 1, 2016
fe7095d
Made the group id the original value in the POM.
Sep 1, 2016
35d5433
Updated group id, description, and project url.
Sep 1, 2016
a8a11d4
Added a field into the POM that was in the example POM for maven arti…
Sep 1, 2016
f112f6e
POM prep for automated deploys to public repository. Updated develope…
Sep 2, 2016
57cf9da
Removed unneeded property.
Sep 2, 2016
7bae9de
Deploy options updated in README.txt.
Sep 2, 2016
14bb306
Decided a release profile was superfluous.
Sep 2, 2016
140e396
Added a post clean step to keep the local directory clean in the depl…
Sep 2, 2016
e9d7fe1
Waiting on sonatype approval for org.json group id.
Sep 2, 2016
9f599dc
Removed examples from README.txt
Sep 2, 2016
f5f56c8
Finalizing Jsoner API.
Sep 2, 2016
3dd58c2
Added javadocs about IllegalArgumentException on serialize calls.
Sep 2, 2016
87d2db2
Authors -> Contributors. Change log moved to the front of the file.
Sep 2, 2016
2b8aba7
Added proper copyright notice for the Apache License 2.0 for Clifton …
Sep 2, 2016
47e6abd
Maven coordinates updated hoping/wishing org.json.simple groupId acce…
Sep 6, 2016
3406633
Removing deploy password placeholder since it listed as optional in d…
Sep 7, 2016
b508be2
Not sure why the settings.xml and pom.xml file are not cooperating on…
Sep 7, 2016
4285164
Settings.xml may not need to be part of the repo?
Sep 7, 2016
24e531c
[maven-release-plugin] prepare release json-simple-2.0.0
Sep 7, 2016
758bba4
[maven-release-plugin] prepare for next development iteration
Sep 7, 2016
98f221e
JsonArray and JsonObject no longer return primitives. JsonObject has …
Sep 14, 2016
479f80e
Automated code cleanup.
Sep 14, 2016
de60f10
Fixed some README typos.
Sep 14, 2016
eda23e7
[maven-release-plugin] prepare release json-simple-2.1.0
Sep 14, 2016
c6e0d3b
[maven-release-plugin] prepare for next development iteration
Sep 14, 2016
ea61f87
Updated gh-pages update process.
Sep 14, 2016
20d45a2
Added a LICENSE and CHANGELOG file. README.txt -> README. Convenience…
Sep 28, 2016
beecc62
JsonArray#get javadocs now mention the possibility of a NumberFormatE…
Sep 29, 2016
a6a3a66
Separated a TODO from a comment about the code.
Sep 29, 2016
6985447
[maven-release-plugin] prepare release json-simple-2.1.1
Sep 29, 2016
10ee77b
[maven-release-plugin] prepare for next development iteration
Sep 29, 2016
e127ca8
Corrected the latest version in the CHANGELOG.
Sep 29, 2016
3dea0b5
Noted that the README was split.
Oct 18, 2016
418d8fb
Updated tests to ensure deserialization allows a missing colon in a k…
Oct 31, 2016
e4d8545
[maven-release-plugin] prepare release json-simple-2.1.2
Oct 31, 2016
0c20efb
[maven-release-plugin] prepare for next development iteration
Oct 31, 2016
bd12c83
Added a direct URL to the javadocs in the README.
Nov 2, 2016
12e57a8
README now contains a heads up to developers that wish to contribute …
Nov 10, 2016
b8f365f
Update CHANGELOG
Dec 8, 2016
2371708
Jsoner may now pretty prints with 2 to 10 spaces or tabs.
Oct 2, 2017
ecc3104
Convenience gets for numbers no longer throw NPE and return null when…
Oct 2, 2017
63d94a7
Updated CHANGELOG for release 2.2.0.
Oct 2, 2017
42f5bc4
[maven-release-plugin] prepare release json-simple-2.2.0
Oct 2, 2017
7157fcd
[maven-release-plugin] prepare for next development iteration
Oct 2, 2017
0078ab1
Added JsonKey interface.
Oct 4, 2017
0741bc9
Updated javadocs on JsonArray.
Oct 4, 2017
0784438
DeserializationException problems are now public, and thus usable.
Oct 4, 2017
d1c1c2d
Source cleanup.
Oct 4, 2017
d68b8a1
Deprecated Enums automatically being serialized as fully qualified St…
Oct 4, 2017
30b0bdc
Source cleanup.
Oct 4, 2017
342856d
IOExceptions are no longer thrown by deserialization calls. See https…
Oct 4, 2017
08c3b84
Jsoner can mint a JsonKey.
Oct 4, 2017
a112c1a
JsonKey usage is prefered over raw Strings.
Oct 4, 2017
b579760
JsonObject getEnumOrDefault no longer calls getEnum due to incompatib…
Oct 4, 2017
52d71be
Updated changelog for 2.3.0.
Oct 4, 2017
71ce334
Jsoner javadocs updated.
Oct 4, 2017
87820bc
Updated javadocs.
Oct 4, 2017
93def9c
Updated changelog.
Oct 4, 2017
069f98d
[maven-release-plugin] prepare release json-simple-2.3.0
Oct 4, 2017
23dbdaf
[maven-release-plugin] prepare for next development iteration
Oct 4, 2017
6c079d4
All deprecated code is removed. Java package changed to match maven g…
Jan 10, 2018
9704fae
DeserializationException is now called JsonException.
Jan 10, 2018
db34bbe
Automated source cleanup.
Jan 10, 2018
72381e6
Added IDE settings for other developers and updated README.
Jan 10, 2018
52a40b9
[maven-release-plugin] prepare release json-simple-3.0.0
Jan 10, 2018
f78a056
[maven-release-plugin] prepare for next development iteration
Jan 10, 2018
9b34837
Updated changelog.
Jan 10, 2018
9f1dfbe
Corrected errors in javadocs.
Jan 10, 2018
917bb81
[maven-release-plugin] prepare release json-simple-3.0.1
Jan 10, 2018
5386248
[maven-release-plugin] prepare for next development iteration
Jan 10, 2018
2ae37de
Updated changelog.
Jan 10, 2018
662c5f4
README tweak.
Jan 10, 2018
154852d
Fixed typo in CHANGELOG.
Jan 17, 2018
f02df84
Fix off-by-one errors when serializing Java arrays (with tests).
cbojar Jan 23, 2018
846d778
Merge pull request #19 from cbojar/master
Jan 24, 2018
b0ee905
Automated source cleanup, updated CHANGELOG, and README.
Jan 24, 2018
48cb56e
[maven-release-plugin] prepare release json-simple-3.0.2
Jan 24, 2018
fa86d41
[maven-release-plugin] prepare for next development iteration
Jan 24, 2018
1ba17b0
3.0.2 fix back patched for 2.* version.
Feb 5, 2018
2eb699d
Fixed version.
Feb 5, 2018
38dba74
[maven-release-plugin] prepare release json-simple-2.3.1
Feb 5, 2018
ea137c3
[maven-release-plugin] prepare for next development iteration
Feb 5, 2018
f32540b
3.* fix applied to 2.*.
Feb 5, 2018
fd801f9
Updated changelog to include release 2.3.1.
Feb 5, 2018
c0245e1
Prefer StringBuilder over StringBuffer
gaul Jun 4, 2018
79c0df3
Merge pull request #21 from gaul/stringbuilder
Jun 27, 2018
6fd30ab
Added code sorting clause into README.
loegering Mar 4, 2019
44c8b31
Jsoner javadocs now correctly reference RFC 7159 instead of RFC 4627.…
loegering Mar 4, 2019
cfe8a1c
JsonArray and JsonObject can chain calls to instantiate them with dat…
loegering Mar 4, 2019
79930d5
Updated CHANGELOG.
loegering Mar 4, 2019
13b3fdf
Upgraded maven plugins.
loegering Mar 4, 2019
7d4bce7
[maven-release-plugin] prepare release json-simple-3.1.0
Mar 4, 2019
3741261
[maven-release-plugin] prepare for next development iteration
Mar 4, 2019
061f3ea
Support for JsonKey parameter for put and putChain operations
Jan 18, 2020
b0264a7
Merge pull request #23 from blagerweij/feature/put-support-jsonkey
loegering Jan 20, 2020
17eaf8d
Cleaned up contributions to match release versions noted in the @sinc…
Jan 27, 2020
d645c7e
Updated changelog with changes since 3.1.0.
Jan 27, 2020
602189b
Moved back release date for 3.1.1 in the change log.
loegering Feb 4, 2020
2078850
Added convenience remove methods for JsonObjects to complement the ne…
loegering Feb 4, 2020
abf3f29
[maven-release-plugin] prepare release json-simple-3.1.1
loegering Feb 5, 2020
1bdf567
[maven-release-plugin] prepare for next development iteration
loegering Feb 5, 2020
8f9ca26
Updated release process README from the perspective of a fresh computer.
loegering Feb 5, 2020
a61f04f
Upgraded jflex plugin to 1.8.2.
loegering Jul 1, 2020
66d0c89
jflex has removed %table as a code generation option. The lex file no…
loegering Jul 1, 2020
863083e
Added a test that would catch future type changes in the JsonExceptio…
loegering Jul 1, 2020
4204c87
The Jflex upgrade added to the CHANGELOG.
loegering Jul 1, 2020
cbdd1fa
Jsoner, JsonArray, and JsonObject now use method calls that pass thei…
loegering Jul 1, 2020
2e0d5a2
Jsoner, JsonArray, and JsonObject enhancement noted in the CHANGELOG.
loegering Jul 1, 2020
a02e704
Removed deprecated code. Updated dependencies and plugins.
loegering Jul 6, 2021
2644704
Version number bumped.
loegering Jul 6, 2021
cabff7e
[maven-release-plugin] prepare release json-simple-4.0.0
loegering Jul 6, 2021
9b77261
[maven-release-plugin] prepare for next development iteration
loegering Jul 6, 2021
9e444ca
Added release date for 4.0.0.
loegering Jul 6, 2021
b31833d
Forward slashes (/) are no longer escaped.
loegering Feb 22, 2022
86ca454
Changelog's 4.0.1 release added.
loegering Feb 22, 2022
bde8a14
Updated version 4.0.1 changelog entry.
loegering Feb 22, 2022
03608d1
Pretty print now puts a space after colons.
loegering Feb 22, 2022
ccab487
Updated version 4.0.1 entry.
loegering Feb 22, 2022
0d7dabc
Fixed Pretty print and string serialization tests.
loegering Mar 12, 2022
8e8fbc1
Automated source clean up.
loegering Mar 12, 2022
ca5ec68
Updated pom.xml to use keys instead of user-pass for git.
loegering Mar 12, 2022
b61a1c2
[maven-release-plugin] prepare release json-simple-4.0.1
loegering Mar 12, 2022
e57de10
[maven-release-plugin] prepare for next development iteration
loegering Mar 12, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 0 additions & 8 deletions .classpath

This file was deleted.

11 changes: 11 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
bin
target
pom.xml.releaseBackup
release.properties
.project
.classpath
.metadata
.settings
*.log
*.java~
*.xml
17 changes: 0 additions & 17 deletions .project

This file was deleted.

3 changes: 0 additions & 3 deletions .settings/org.eclipse.core.resources.prefs

This file was deleted.

3 changes: 0 additions & 3 deletions AUTHORS.txt

This file was deleted.

137 changes: 137 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
Version 4.0.1 (2022/03/*)
* Jsoner no longer escapes forward slashes (/) when serializing or pretty printing.
* Jsoner now adds a space ( ) after a colon (:) when pretty printing.

Version 4.0.0 (2021/07/*)
* Jflex plugin was upgraded from 1.4.3 to 1.8.2. This resulted in JsonException#getPosition() returning a long instead of an int. If you don't do position based JsonException handling this is backwards compatible with 3.* versions of this library. If you do position based JsonException handling, just change your position variables from int to long and your project will work as expected.
* Jflex removed %table as a code generation option and has been replaced with its default behavior %pack.
* Jsoner, JsonArray, and JsonObject now call methods that pass their writer. This avoids convenience calls that instantiate their own writer. Expect minor performance improvements for JSON with many fields.
* Removed deprecated method Jsoner.prettyPrint(String, int). Use Jsoner.prettyPrint(Reader, Writer, String, String) or Jsoner.prettyPrint(String) instead.

Version 3.1.1 (2020/02/*)
* JsonObject now has put methods that call JsonKey#getKey() on the given JsonKey as a convenience.
* JsonObject now has remove methods that call JsonKey#getKey() on the given JsonKey as a convenience.
* There are no such convenience methods for other methods in the Map API so it is important to remember the JsonObject is a Map<String, Object> not a Map<JsonKey, Object>.
* Note these changes were avoided in the past because it makes the API inconsistent. However, since they account for the vast majority of interactions with the API they do reduce verbosity of the code. They will also likely be a custom additions in many projects anyway and thus are included in the official release to maximize compatibility.

Version 3.1.0 (2019/03/*)
* Jsoner exposed its internal pretty print function to give the caller more control over how it indents and newlines. It also uses a Reader's input and pretty print to a Writer's output, such as for formatting a file.
* Jsoner#prettyPrint(String, int) deprecated in favor of the exposed function.
* Jsoner#prettyPrint(String) will be kept as a reasonable convenience method.
* JsonArray now has add methods that can be chained for inline instantiation.
* JsonObject now has put methods that can be chained for inline instantiation.
* Javadocs now correctly refer to RFC 7159.

Version 3.0.2 (2018/01/*)
* Bug fix: Serialization of primitive arrays no longer starts at the 2nd index with test cases.
* Bug fix: Character or primitive char is supported and with test cases.
* Chris (cbojar) was added to the list of Authors.

Version 3.0.1 (2018/01/*)
* Corrected javadocs.

Version 3.0.0 (2018/01/*)
* Removed all deprecated code: allowing development on case insensitive file systems.
* Refactored: code into a java package that matches the maven artifact group and id.
* Refactored: DeserializationException to JsonException.

Version 2.3.1 (2018/02/*)
* Bug fix: from 3.0.2 applied as a patch to 2.3.0 for the 2.3.1 release.

Version 2.3.0 (2017/10/*)
* Deprecated the feature in Jsoner that serializes Enums to fully qualified strings, the Enums should implement Jsonable instead.
* Deprecated getEnum and getEnumOrDefault methods in JsonArray and JsonObject.
* Deprecated get___(String) and get___OrDefault(String, ___) in favor of get___(JsonKey) and get___OrDefault(JsonKey) respectively.
* Enhancement: Added JsonKey interface to aid with code maintainability and convenience.
* Enhancement: Jsoner can mint a JsonKey.
* Enhancement: Jsoner deserialization no longer throws IOExceptions in favor of a DeserializationException with an IOEXCEPTION problem since the code to handle one is typically duplicated to handle the other.

Version 2.2.0 (2017/10/*)
* Bug fix: getEnum and getInteger and friends return null when the paired value is null to better match the java Map contract.
* Enhancement: Jsoner can prettyPrint with tabs or spaces.

Version 2.1.2 (2016/10/*)
* Bug fix: Jsoner#prettyPrint(printable) no longer quotes colons.
* Enhancement: for convenience a colon missing between a key value pair will officially continue to function as it has since the 1.* versions. Deserialization test cases have been updated.

Version 2.1.1 (2016/09/*)
* Separated the CHANGLOG and LICENSE from the README as they are recognized by tools like github. Most of the information in README is linked to on the project's website.
* Enhancement: JsonArray and JsonObject convenience gets are more flexible on their expected value. Booleans now allow Booleans or Strings. Numbers now allow Numbers or Strings. Strings now allow Booleans, Numbers, or Strings.

Version 2.1.0 (2016/09/*)
* Bug fix: JsonObject#getDefaultByte(key, defaultValue) now properly returns a byte value instead of a float.
* Enhancement: JsonObject has typed gets for each JSON value type.
* Enhancement: JsonArray and JsonObject no longer return primitives.

Version 2.0.0 (2016/09/*)
* Davin Loegering was added to the list of Authors.
* Consolidated the author list, change log, and license files from the base directory into the README.txt file.
* Removed ant build file.
* SCM section of the POM is updated with the github information since the svn repo urls were 404s.
* POM now defines the source at 1.7 instead of 1.2, and is the only cause for the major version increment. The 2.0.0 release of this library is otherwise 100% backwards compatible with the older versions.
* Minor code quality changes have been made to the old files of the project.
* JFlex plugin now included in POM.
* JFlex will produce a lexing class from all lex files in src/main/lex.
* Javadocs are now produced when the jar goal is executed.
* Moved lex files from doc/ to src/main/lex.
* Deprecated the old json.lex in favor of jsonstrict.lex.
* Deprecated ContentHandler and doesn't have a 2.0 equivalent.
* Deprecated ContainerFactory and doesn't have a 2.0 equivalent.
* Deprecated ItemList and doesn't have a 2.0 equivalent.
* Deprecated JSONParse and JSONValue in favor of Jsoner.
* Deprecated JSONStreamAware and JSONAware in favor of Jsonable.
* Deprecated JSONObject in favor of JsonObject.
* Deprecated JSONArray in favor of JsonArray.
* Deprecated org.json.simple.parser.ParseException for org.json.simple.DeserializationException.
* Deprecated org.json.simple.parser.Yytoken for org.json.simple.Yytoken.
* Deprecated org.json.simple.parser.Yylex for org.json.simple.Yylex.
* Tests for deprecated classes have been reorganized and updated to ensure backwards compatibility is maintained throughout the 2.x release lifetime.
* Classes that have been deprecated still have shoddy javadocs but were updated to not produce errors and warnings during the build process.
* Classes introduced in the 2.0 release have substantial javadocs to help projects heathily update ASAP.
* The Jsonable interface allows others to define how their objects should be serialized in JSON.
* DeserializationException has a new problem type for disallowed tokens.
* DeserializationException now recommends recovery actions based on the problem that caused the DeserializationException in its message. All recovery scenarios are basically the same so DeserializationException is still the only json-simple exception class.
* The new Yytoken types are renamed.
* The new Yytoken is robustly constructed only allowing a null value when it is a null value in the DATUM tokens.
* Jsoner can escape strings provided to it to help with implementing the Jsonable interface.
* Jsoner can pretty print JSON strings provided to it for logging and basic display purposes.
* Jsoner can serialize data defined in the RFC 4627 specification and objects that implement the Jsonable interface. If data could be serialized multiple ways the deepest Jsonable implementation in the heiarchy is preferred. Any defined Jsonable implementation will be preferred before falling back to a default serialization.
* Jsoner can serialize an Enum that doesn't implement Jsonable.
* Jsoner will deserialize any numerical value as a BigDecimal.
* Jsoner can deserialize JsonArrays, JsonObjects, Strings, Numbers, Booleans, and null from strings provided to it.
* Jsoner can deserialize a JsonArray and exception out if any other value would be returned.
* Jsoner can deserialize a JsonObject and exception out if any other value would be returned.
* Jsoner can deserialize multiple JsonArrays, JsonObjects, Strings, Numbers, Booleans, and nulls from a single string provided to it.
* Jsoner deserialization (parsing) is thread safe.
* JsonArray is based on ArrayList<Object>. So it won't produce code warnings and can be used to construct a more convenient Collection.
* JsonArrays that are homogeneous can be cast and copied into a provided collection of the homogenous type.
* JsonArray contains gets for each allowed data type in JSON and convenience methods for Collections, Enums, and Maps. Note that they will throw ClassCastExceptions in such cases since it is still indictitive of a programmer's error.
* JsonObject is based on HashMap<String, Object>.
* JsonObject contains getTypeOrDefault for each allowed data type in JSON and convenience methods for Collections, Enums, and Maps. Note that they will throw ClassCastExceptions in such cases since it is still indictitive of a programmer's error.

Version 1.1.1 (2012/01/29)
* Supports OSGi
* Accepts a java.util.Map parameter in constructor of JSONObject

Version 1.1 (2009/01/23)
* Supports stoppable SAX-like content handler for streaming of JSON text
* Added JSONStreamAware to support streaming JSON text
* Added ContainerFactory to support creating arbitrary Map and List as JSON object and JSON array container during decoding
* Supports any Map and List as JSON object and JSON array container during encoding
* Added interface JSONAware
* Added ParseException to get detail error report while parsing
* Added escaping for Unicode characters that cause problems for browser JS eval

Version 1.02 (2009/01/10)
* Updated json.lex to improve performance of the lexer
* Removed Rope.java and related junit test

Version 1.01 (2008/08/26)
* License changed to a more commerce friendly and clear one, Apache License 2.0
* Use JFlex to generate a faster Yylex.java
* Added Rope.java to get faster string operations
* Separate test codes from source codes
* Added ant build file build.xml

Version 1.0 (2006/04/15)
* Initial version
28 changes: 0 additions & 28 deletions ChangeLog.txt

This file was deleted.

Loading