Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1427 commits
Select commit Hold shift + click to select a range
6c160b7
leave JSONTokener.toString unchanged
Simulant87 Mar 22, 2024
d335447
test(#871-strictMode): add two more test which validate error correct…
Mar 22, 2024
49de922
chore(#871-strictMode): fix small spacing typo
Mar 22, 2024
f1c9d07
add test cases for extended syntax error exception messages
Simulant87 Mar 23, 2024
d69d5e2
explain position information numbers in syntax exception
Simulant87 Mar 23, 2024
4e39d8c
fix wrong comment update
Simulant87 Mar 23, 2024
ccb4a9b
fix wrong comment update
Simulant87 Mar 23, 2024
78151be
fix wrong comment update
Simulant87 Mar 23, 2024
75a34a2
fix wrong comment update
Simulant87 Mar 23, 2024
7324cc0
fix wrong comment update
Simulant87 Mar 23, 2024
78cdb3d
fix wrong comment update
Simulant87 Mar 23, 2024
0fcf352
Revert "explain position information numbers in syntax exception"
Simulant87 Mar 27, 2024
372f5ca
feat(#871-strictMode): enhanced and simplified strictMode logic
Mar 30, 2024
4929fc9
test(#871-strictMode): added more test cases, improved existing ones
Mar 30, 2024
d2cb38d
feat(#871-strictMode): added ORIGINAL implementation to JSONParserCon…
Mar 30, 2024
c0918c2
feat(#871-strictMode): add allowSingleQuote option, add enhancements …
Mar 30, 2024
87406e4
Merge pull request #879 from Simulant87/add-syntax-error-details
stleary Mar 30, 2024
46534b5
feat(#871-strictMode): removed allowSingleQuotes
Mar 30, 2024
d92d62a
Merge branch 'master' into feat/871-strictMode
Mar 30, 2024
3200275
change(stleary#871-strictMode): cleanup
Apr 7, 2024
cfd4761
Update README.md to fix the download-jar link
stleary Apr 7, 2024
d02ac0f
Merge pull request #877 from rikkarth/feat/871-strictMode
stleary Apr 10, 2024
5bd4257
add javadoc for strictmode
Simulant87 Apr 12, 2024
fe597d2
fix(#887): complete strictMode for JSONArray
Apr 14, 2024
ce074e9
fix(#887): corrected small typo
Apr 14, 2024
8983ca6
Merge pull request #886 from Simulant87/884-strictmode-javadoc
stleary Apr 15, 2024
3dcd5b2
fix(#887): double array breaking JSONTokener.nextValue
Apr 21, 2024
03def9c
Merge branch 'master' of github.com:stleary/JSON-java into fix/887
Apr 21, 2024
0bace72
fix(#887): small typo
Apr 21, 2024
7cc1948
fix(#887): regression parsing array with non-string and boolean values
Apr 23, 2024
ce13ebd
chore(#887): clean up parsedUnquotedText implementation
Apr 23, 2024
898dd5a
fix(#887): allow null value strict mode
Apr 23, 2024
879579d
chore(#887): signature minor edit
Apr 23, 2024
b6e347d
fixed non-idempotent unit tests
kaiyaok2 Apr 26, 2024
9216a19
feat(#877): improved JSONArray and JSONTokener logic
Apr 27, 2024
7a8c216
fix(#877): adaptation for java 6 compatibility
Apr 27, 2024
1e3f37b
feat(#877): add additional validation, test case
Apr 27, 2024
4319b71
force strict mode to expose failing tests
Apr 28, 2024
6529a7e
fixes the broken JSONArrayTest cases
Apr 28, 2024
d1fd901
fixes the JSONObjectNumberTest cases
Apr 28, 2024
2098373
fixes the broken JSONObjectTest cases
Apr 28, 2024
1881cbe
fixes the broken CDLTest cases
Apr 28, 2024
f4944fb
fixes the broken JSONMLTest cases
Apr 28, 2024
fa2f340
fixes the broken XMLConfigurationTest cases
Apr 28, 2024
0180bd9
fixes the broken XMLTest cases
Apr 28, 2024
cf00ef3
fixes the broken JSONTokenerTest cases
Apr 28, 2024
1ae43bd
fix(#887): regressions, unit tests
Apr 28, 2024
48dfeb8
fix(#887): unit tests, uncommented tests after fix
Apr 28, 2024
054786e
Merge pull request #889 from kaiyaok2/fix_nio_tests
stleary May 3, 2024
783577b
update-jsonpath: update jsonpath from 2.4.0 to 2.9.0
May 15, 2024
a8ab79e
chore(#887): JSONParserConfiguration strictMode true flag cleanup
May 19, 2024
14f7127
Merge pull request #888 from rikkarth/fix/887
stleary May 21, 2024
0d71dcf
test(#901): call JsonArray.putAll with a casted list as object
hexetia Oct 5, 2024
14e9cdc
fix(#901): add the jsonparserConfiguration param to avoid a stackover…
hexetia Oct 5, 2024
ab1b9a3
Revert "Merge pull request #888 from rikkarth/fix/887"
Nov 3, 2024
61dc264
Revert "Merge pull request #886 from Simulant87/884-strictmode-javadoc"
Nov 3, 2024
215ec9b
Revert "Merge pull request #877 from rikkarth/feat/871-strictMode"
Nov 3, 2024
39ee5e0
Merge pull request #911 from stleary/revert-strict-mode-for-now
stleary Nov 10, 2024
e7e52da
Merge pull request #894 from stleary/update-jsonpath
stleary Nov 10, 2024
2ee5bf1
Merge pull request #907 from hexetia/fix-901
stleary Nov 13, 2024
1f308db
restore-jsonparserconfiguration: Restore methods to be used for stric…
Dec 14, 2024
80b2672
restore-jsonparserconfiguration: clean up some whitespace
Dec 14, 2024
1f0729c
restore-jsonparserconfiguration: strict mode initial attempt. Still m…
Dec 14, 2024
09536cd
restore-jsonparserconfiguration: add jsonobject strict tests. Detect …
Dec 15, 2024
d3c7eaf
restore-jsonparserconfiguration: fix unit tests to work when strictMo…
Dec 15, 2024
2dcef89
Code review action items - add comments and consistent error messages…
Dec 21, 2024
ac40a6f
Merge pull request #921 from stleary/restore-jsonparserconfiguration
stleary Dec 21, 2024
4cd70cf
pre-release-20241224: updates for next release
Dec 24, 2024
0e60592
Merge pull request #924 from stleary/pre-release-20241224
stleary Dec 24, 2024
41c6e9e
restore-moditect-pom.xml restore plugin
Jan 7, 2025
324090a
Merge pull request #929 from stleary/restore-moditect-pom.xml
stleary Jan 7, 2025
ed8c739
pre-release-20250107
Jan 7, 2025
391c869
Merge pull request #930 from stleary/pre-release-20250107
stleary Jan 7, 2025
2e15373
remove-duplicate-moditect: from pom.xml
Jan 8, 2025
ca1c683
remove field references to JSONTokener and JSONParserConfiguration in…
michael-ameri Jan 10, 2025
215f426
add Javadoc and rename parameters to speaking variable names
Simulant87 Jan 11, 2025
3b7ba07
add test for invalid input on JSONTokener
Simulant87 Jan 11, 2025
ad44a92
add new test cases for JSONObject and JSONArray Constructors with JSO…
Simulant87 Jan 11, 2025
4bbbe77
add missing fields when cloning
michael-ameri Jan 12, 2025
8c427d9
Merge pull request #937 from michael-ameri/remove-references
stleary Jan 15, 2025
dde9d7e
Merge pull request #931 from stleary/remove-duplicate-moditect
stleary Jan 15, 2025
54470e6
Merge branch 'stleary:master' into remove-references
Simulant87 Jan 15, 2025
afd9a6f
#928 add missing java dock for JSONParserConfiguration
Simulant87 Jan 15, 2025
94341cd
Revert "#928 add missing java dock for JSONParserConfiguration"
Simulant87 Jan 15, 2025
9218f28
#928 add missing java dock for JSONParserConfiguration
Simulant87 Jan 15, 2025
6631b80
#947 add new failing tests with JSONTokener having strict mode config…
Simulant87 Jan 15, 2025
4c873a1
#947 use JSONParserConfiguration of JSONTokener in JSONObject and JSO…
Simulant87 Jan 15, 2025
1d81e88
Merge pull request #938 from Simulant87/remove-references
stleary Jan 19, 2025
07b1291
Merge pull request #942 from michael-ameri/fix-clone
stleary Jan 19, 2025
8b857da
Merge pull request #946 from Simulant87/928-javadoc-warning-JSONParse…
stleary Jan 19, 2025
22f8290
Merge pull request #948 from Simulant87/947-JSONTokener-configuration…
stleary Jan 19, 2025
1689fc2
deprecated unnecessary setter method
marilynel Feb 9, 2025
52f249c
upgrade-upload-artifact-in-pipeline update from v3 to v4
Feb 9, 2025
c524cd1
Merge pull request #950 from stleary/upgrade-upload-artifact-in-pipeline
stleary Feb 9, 2025
a746322
Merge branch 'stleary:master' into master
marilynel Feb 10, 2025
42afb34
Merge pull request #949 from marilynel/master
stleary Feb 15, 2025
f112a09
fixed failing unit tests in strict mode, issue 940
marilynel Feb 15, 2025
3919abd
optimized unit tests to respond accurately to default strictMode
marilynel Feb 15, 2025
75e5a3d
Merge pull request #951 from marilynel/master
stleary Feb 21, 2025
f30167e
tests seem to be working, run with strictMode = fale then true
marilynel Feb 24, 2025
8a86894
test with strict mode enabled and fixed
marilynel Mar 2, 2025
ae4f4af
dont mess with my line
marilynel Mar 2, 2025
6452a6f
Merge pull request #955 from marilynel/master
stleary Mar 6, 2025
4a66231
edited pom.xml for mvn testing with strict mode
marilynel Mar 16, 2025
76ee431
readme edit
marilynel Mar 16, 2025
628d8c4
Merge branch 'stleary:master' into master
marilynel Mar 16, 2025
b2943b8
fixed issue #943 Csv parsing skip last row if last line is missing ne…
marilynel Mar 16, 2025
d1327c2
Allow to configure Java null handling.
Mar 19, 2025
5d1c789
Add test for JSONArray from Java collection.
Mar 19, 2025
7751b39
Merge pull request #960 from marilynel/master
stleary Mar 19, 2025
1afd7cd
Use better name for parser configuration option, fix API comment.
Mar 21, 2025
50a5ce2
Merge branch 'stleary:master' into master
effad Mar 21, 2025
fd0cca3
Fix cloning of parser configuration.
Mar 21, 2025
d4c5136
Merge pull request #961 from effad/master
stleary Mar 23, 2025
45ec164
Merge branch 'master' of https://github.com/marilynel/JSON-java
marilynel Mar 23, 2025
4917e35
Merge pull request #962 from marilynel/master
stleary Mar 27, 2025
8dbf03e
work on issue 841
marilynel Mar 30, 2025
2e9ad6f
Merge pull request #966 from marilynel/master
stleary Apr 4, 2025
53da5ce
adjusted keepstrings behavior to reflect changes in keepBooleanAsStri…
marilynel Apr 6, 2025
74439cf
Merge branch 'master' of https://github.com/marilynel/JSON-java
marilynel Apr 6, 2025
8e65eaa
Merge pull request #968 from marilynel/master
stleary Apr 10, 2025
2184ef3
refactored large test for strict mode
marilynel Apr 13, 2025
82a02d8
Merge pull request #969 from marilynel/master
stleary Apr 18, 2025
418d5e9
pre-release-20250517 prep for next release
May 17, 2025
24fafcf
Merge pull request #981 from stleary/pre-release-20250517
stleary May 17, 2025
dadc3e5
Use JSONParserConfiguration to decide on serializing null fields into…
harshith8854 May 23, 2025
a381060
Add testcase to assert Null fields serialization without JSONParserCo…
harshith8854 May 24, 2025
72a1a48
Merge pull request #983 from harshith8854/master
stleary May 31, 2025
e800cc3
Use constant.equals()
AlexCai2019 Jun 4, 2025
f1935f5
Merge pull request #987 from AlexCai2019/master
stleary Jun 7, 2025
5033043
remove-unused-code-jsonobject removed unused method from jsonobject
Jun 7, 2025
32e56da
Merge pull request #988 from stleary/remove-unused-code-jsonobject
stleary Jun 16, 2025
aac376f
Remove a redundant condition and an empty string
AlexCai2019 Jun 22, 2025
916fba5
#984 extract methods reducing cognitive complexity
Simulant87 Jun 25, 2025
5063d31
#984 extract method for annotation value check
Simulant87 Jun 25, 2025
c882783
Format line 2755 in JSONObject.java
AlexCai2019 Jun 26, 2025
1bdaacc
Merge pull request #989 from AlexCai2019/master
stleary Jun 28, 2025
197afdd
Merge pull request #990 from Simulant87/984-refactor-cognitive-comple…
stleary Jul 1, 2025
7da120e
update CodeQL to v3
Simulant87 Jul 1, 2025
7ac773b
Added JUnit test cases for HTTPTokener
surajdm123 Jul 3, 2025
a729c20
Added JUnit tests for XMLTokenerTest
surajdm123 Jul 3, 2025
7b0d194
tech-debt-25250701 add jacoco to gradle build, refactor JSONObject to…
Jul 4, 2025
7eccade
Merge pull request #991 from Simulant87/update-codeql-v3
stleary Jul 4, 2025
1eed44a
Merge pull request #993 from surajdm123/add-tests-2
stleary Jul 6, 2025
d7593fb
Merge pull request #992 from surajdm123/add-tests
stleary Jul 6, 2025
3dce557
fixed keeping null as string
marilynel Jul 6, 2025
7bb3df8
added test details
marilynel Jul 6, 2025
a79e8a1
Merge pull request #994 from stleary/tech-debt-20250701
stleary Jul 8, 2025
f0a78af
Merge pull request #995 from marilynel/master
stleary Jul 10, 2025
fdaeb48
fixed some strict mode issues 980
marilynel Jul 13, 2025
c91b728
oops forgot null
marilynel Jul 13, 2025
0a9364e
Merge pull request #999 from marilynel/master
stleary Jul 17, 2025
d5d82cd
fixing sonarcube issues
marilynel Jul 20, 2025
7fc41a6
addressing cognitive complextity
marilynel Jul 20, 2025
e762629
oops one more sonarcube issue lol
marilynel Jul 20, 2025
82432f0
Merge pull request #1000 from marilynel/master
stleary Jul 24, 2025
ebd9a17
addressing minor sonarqube concerns
marilynel Jul 27, 2025
38c3a0b
more sonarcube issues
marilynel Jul 27, 2025
78137d3
Merge pull request #1001 from marilynel/master
stleary Aug 1, 2025
9bb26bd
sonar cube stuff
marilynel Aug 3, 2025
6ed2880
more sonarcube cleanup
marilynel Aug 24, 2025
9b8eefc
Merge pull request #1004 from marilynel/master
stleary Aug 29, 2025
4e0f62b
more sonarcube optimization in jsonobject.java
marilynel Sep 7, 2025
53cfa74
more sonarcube optimization in jsonobject.java
marilynel Sep 7, 2025
69c87dc
more sonarcube optimization in jsonobject.java
marilynel Sep 7, 2025
9de3005
Update JSONArray.java for #1007
eleumik Sep 10, 2025
686c084
Update JSONTokener.java for #1007
eleumik Sep 10, 2025
a3edc1d
Merge pull request #1005 from marilynel/master
stleary Sep 11, 2025
f2af220
more sonarcube fixes
marilynel Sep 14, 2025
a5e234a
Merge pull request #1009 from eleumik/eleumik-patch-1
stleary Sep 19, 2025
b258ea3
Merge pull request #1008 from eleumik/eleumik-patch-1007-array
stleary Sep 19, 2025
aff59d0
Merge pull request #1011 from marilynel/master
stleary Sep 19, 2025
c6efa08
more cleanup sonarqube JSONArray
marilynel Sep 22, 2025
05867c4
Merge branch 'master' of https://github.com/marilynel/JSON-java
marilynel Sep 22, 2025
eb97037
Merge pull request #1013 from marilynel/master
stleary Sep 24, 2025
1a2c50b
changed string checking logic >> string.length() > 0 to !string.isEmp…
Md-Yasir Oct 11, 2025
3e8d1d1
Merge pull request #1014 from Md-Yasir/enhancement/string-check
stleary Oct 12, 2025
83a0e34
1003: Implement JSONObject.fromJson() with unit tests
sk02241994 Sep 9, 2025
7d28955
Updating to work with java 1.6
sk02241994 Sep 9, 2025
ebc13d6
Updating to work with java 1.6
sk02241994 Sep 9, 2025
fbb6b31
Updating to work with java 1.6
sk02241994 Sep 9, 2025
0521928
- Added implementation for Enum and Map
sk02241994 Sep 28, 2025
7465da8
- Updating for java 1.6
sk02241994 Sep 28, 2025
9adea9e
Updating to work with java 1.6
sk02241994 Sep 28, 2025
c4c2beb
Limiting implemetation by removing the new classes.
sk02241994 Oct 16, 2025
a7c1930
Updating docs
sk02241994 Oct 16, 2025
8ccf5d7
Removing the interface classes and simplifying the implementation to …
sk02241994 Oct 23, 2025
f92f281
Updating to work with java 1.6
sk02241994 Oct 23, 2025
c13b57c
Made Cookie constructor to private.
Md-Yasir Oct 23, 2025
1de42aa
Made CookieList constructor to private.
Md-Yasir Oct 23, 2025
5dc1031
Made JSONMl constructor to private and refactored ternary operations …
Md-Yasir Oct 23, 2025
2c6082a
Refactored stop conditions to be invariant by using while loop.
Md-Yasir Oct 23, 2025
6dd878d
Deprecated public constructors instead of making it private.
Md-Yasir Oct 24, 2025
39e8ead
Added java doc for deprecated decoration
Md-Yasir Oct 24, 2025
ac65ee0
Revert "Refactored stop conditions to be invariant by using while loop."
Md-Yasir Oct 25, 2025
0cdc5e5
Reverted Constructor access to public
Md-Yasir Oct 25, 2025
42800c2
Updating to work with java 1.6
sk02241994 Oct 28, 2025
25f355a
Merge pull request #1006 from sk02241994/feature-1003
stleary Oct 31, 2025
20f5200
Fix: Support Java record accessors in JSONObject
Abhineshhh Oct 25, 2025
2550c69
Refactor: Extract isRecordStyleAccessor helper method
Abhineshhh Oct 25, 2025
fd1eee9
Add comprehensive edge case tests for record support
Abhineshhh Oct 25, 2025
f2acf8a
Optimize method name exclusion using Set lookup instead of multiple e…
Abhineshhh Oct 30, 2025
8f3b0f1
Add runtime record detection for backward compatibility
Abhineshhh Nov 2, 2025
8c14e96
Merge pull request #1017 from Md-Yasir/enhancement/refactors
stleary Nov 10, 2025
a6ca840
Merge pull request #1020 from Abhineshhh/fix/support-java-records
stleary Nov 12, 2025
73c582e
update github actions to version 5
Simulant87 Nov 14, 2025
e9a7d7c
add distribution to java 1.6 build
Simulant87 Nov 14, 2025
d38cb06
reset setup-java to version 1 for 1.6 build
Simulant87 Nov 14, 2025
005dc7b
add build for LTS JDK 25
Simulant87 Nov 14, 2025
3bc98df
Update README.md tested on java 25
Simulant87 Nov 14, 2025
f8e6dfd
Merge pull request #3 from Simulant87/update-readme
Simulant87 Nov 14, 2025
128fb42
Merge pull request #1021 from Simulant87/update-build-script
stleary Nov 18, 2025
421abfd
save and restore the current default locale, to avoid any side effect…
Simulant87 Dec 20, 2025
8cbb4d5
Fix sonarqube reliability issues
Simulant87 Dec 20, 2025
96353de
add badge to external hosted javadoc
Simulant87 Dec 21, 2025
24bba97
pre-release-20251224 update docs and builds for next release
Dec 24, 2025
cf65368
Merge pull request #1030 from stleary/pre-release-20251224
stleary Dec 24, 2025
e0c4086
Merge pull request #1029 from Simulant87/external-javadoc-badge
stleary Dec 30, 2025
d5e744c
Merge pull request #1028 from Simulant87/fix-sonarqube-reliability-is…
stleary Dec 30, 2025
e635f40
Merge pull request #1027 from Simulant87/1023-set-default-locale
stleary Dec 30, 2025
995fb84
Fixes the issue of losing the array if an empty forceList element or …
pratiktiwari13 Jan 2, 2026
9d14246
Fix ClassCastException in JSONML.toJSONArray and toJSONObject
OwenSanzas Jan 27, 2026
534ce3c
Fix input validation in XMLTokener.unescapeEntity()
OwenSanzas Jan 27, 2026
6c1bfbc
Refactor XMLTokener.unescapeEntity() to reduce complexity
OwenSanzas Jan 28, 2026
592e782
Add unit tests for XMLTokener.unescapeEntity() input validation
OwenSanzas Jan 28, 2026
0737e04
Add unit tests for JSONML ClassCastException fix
OwenSanzas Jan 28, 2026
7a8da88
Remove unnecessary conditions
pratiktiwari13 Jan 30, 2026
d092d09
Merge pull request #1037 from OwenSanzas/fix-jsonml-classcast
stleary Jan 30, 2026
538afc3
Merge pull request #1038 from OwenSanzas/fix-xmltokener-unescapeentity
stleary Jan 30, 2026
510a03a
Fixes #1040, Aligns non-forceList behaviour with forceList
pratiktiwari13 Jan 31, 2026
a37aa69
Merge pull request #1039 from pratiktiwari13/bugfix/empty-force-list
stleary Feb 3, 2026
ff264ef
Enhance README with license clarification
stleary Feb 18, 2026
6230128
Merge pull request #1041 from stleary/license-clarification
stleary Feb 22, 2026
94e3400
Ignore static fields in JSONObject.fromJson()
yuki-matsuhashi Mar 12, 2026
039f331
Add comment for empty test constructor
yuki-matsuhashi Mar 12, 2026
b959027
Merge pull request #1044 from yuki-matsuhashi/1043-ignore-static
stleary Mar 16, 2026
1877069
Validate XML numeric character references before string construction
yuki-matsuhashi Mar 23, 2026
896ce0f
Merge pull request #1046 from yuki-matsuhashi/master
stleary Mar 26, 2026
6495983
update-security-md-with-key new security.md file, also fixed 1000 lev…
May 11, 2026
d749ee1
Merge pull request #1053 from stleary/update-security-md-with-key
stleary May 16, 2026
3665aad
pre-release-20260522 doc and build updates for release
May 22, 2026
968a592
Merge pull request #1054 from stleary/pre-release-20260522
stleary May 22, 2026
d84fa1a
docs-and-warnings-cleanup cleanup some doc files, update pom for depl…
May 29, 2026
33a4698
Merge pull request #1058 from stleary/docs-and-warnings-cleanup
stleary Jun 1, 2026
c073157
restore-lenient-jsonarray initial commit
Jun 15, 2026
ad26e94
restore-lenient-jsonarray fix some sonarcube issues
Jun 16, 2026
26ee6eb
Refactor CDL row serialization
Fahmida-Hossain-Charu Jun 15, 2026
8353b59
Address CDL row serialization review comments
Fahmida-Hossain-Charu Jun 17, 2026
4a23fd8
Merge pull request #1061 from stleary/restore-lenient-jsonarray
stleary Jun 18, 2026
c91d821
Merge pull request #1062 from Fahmida-Hossain-Charu/pr/refactor-cdl-r…
stleary Jun 21, 2026
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
43 changes: 43 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: "CodeQL"

on:
push:
branches: [ master ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
schedule:
- cron: '18 18 * * 1'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'java' ]

steps:
- name: Checkout repository
uses: actions/checkout@v3

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main

- run: "mvn clean compile -Dmaven.test.skip=true -Dmaven.site.skip=true -Dmaven.javadoc.skip=true"

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
277 changes: 277 additions & 0 deletions .github/workflows/pipeline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,277 @@
# This workflow will build a Java project with Maven
# For more information see: https://docs.github.com/en/actions/learn-github-actions or https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions

name: Java CI with Maven

on:
push:
# branches: [ master ]
pull_request:
branches: [ master ]

jobs:
# old-school build and jar method. No tests run or compiled.
build-1_6:
name: Java 1.6
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Setup java
uses: actions/setup-java@v1
with:
java-version: 1.6
- name: Compile Java 1.6
run: |
mkdir -p target/classes
javac -version
javac -source 1.6 -target 1.6 -d target/classes/ src/main/java/org/json/*.java
- name: Create java 1.6 JAR
run: |
jar cvf target/org.json.jar -C target/classes .
- name: Upload JAR 1.6
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Create java 1.6 JAR
path: target/*.jar

build-8:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 1
matrix:
# build against supported Java LTS versions:
java: [ 8 ]
name: Java ${{ matrix.java }}
steps:
- uses: actions/checkout@v5
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'maven'
- name: Compile Java ${{ matrix.java }}
run: mvn clean compile -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true -D maven.javadoc.skip=true
- name: Run Tests ${{ matrix.java }}
run: |
mvn test -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Build Test Report ${{ matrix.java }}
if: ${{ always() }}
run: |
mvn surefire-report:report-only -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
mvn site -D generateReports=false -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Upload Test Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Results ${{ matrix.java }}
path: target/surefire-reports/
- name: Upload Test Report ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Report ${{ matrix.java }}
path: target/site/
- name: Package Jar ${{ matrix.java }}
run: mvn clean package -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true
- name: Upload Package Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Package Jar ${{ matrix.java }}
path: target/*.jar

build-11:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 1
matrix:
# build against supported Java LTS versions:
java: [ 11 ]
name: Java ${{ matrix.java }}
steps:
- uses: actions/checkout@v5
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'maven'
- name: Compile Java ${{ matrix.java }}
run: mvn clean compile -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true -D maven.javadoc.skip=true
- name: Run Tests ${{ matrix.java }}
run: |
mvn test -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Build Test Report ${{ matrix.java }}
if: ${{ always() }}
run: |
mvn surefire-report:report-only -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
mvn site -D generateReports=false -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Upload Test Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Results ${{ matrix.java }}
path: target/surefire-reports/
- name: Upload Test Report ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Report ${{ matrix.java }}
path: target/site/
- name: Package Jar ${{ matrix.java }}
run: mvn clean package -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true
- name: Upload Package Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Package Jar ${{ matrix.java }}
path: target/*.jar

build-17:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 1
matrix:
# build against supported Java LTS versions:
java: [ 17 ]
name: Java ${{ matrix.java }}
steps:
- uses: actions/checkout@v5
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'maven'
- name: Compile Java ${{ matrix.java }}
run: mvn clean compile -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true -D maven.javadoc.skip=true
- name: Run Tests ${{ matrix.java }}
run: |
mvn test -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Build Test Report ${{ matrix.java }}
if: ${{ always() }}
run: |
mvn surefire-report:report-only -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
mvn site -D generateReports=false -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Upload Test Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Results ${{ matrix.java }}
path: target/surefire-reports/
- name: Upload Test Report ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Report ${{ matrix.java }}
path: target/site/
- name: Package Jar ${{ matrix.java }}
run: mvn clean package -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true
- name: Upload Package Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Package Jar ${{ matrix.java }}
path: target/*.jar

build-21:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 1
matrix:
# build against supported Java LTS versions:
java: [ 21 ]
name: Java ${{ matrix.java }}
steps:
- uses: actions/checkout@v5
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'maven'
- name: Compile Java ${{ matrix.java }}
run: mvn clean compile -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true -D maven.javadoc.skip=true
- name: Run Tests ${{ matrix.java }}
run: |
mvn test -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Build Test Report ${{ matrix.java }}
if: ${{ always() }}
run: |
mvn surefire-report:report-only -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
mvn site -D generateReports=false -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Upload Test Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Results ${{ matrix.java }}
path: target/surefire-reports/
- name: Upload Test Report ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Report ${{ matrix.java }}
path: target/site/
- name: Package Jar ${{ matrix.java }}
run: mvn clean package -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true
- name: Upload Package Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Package Jar ${{ matrix.java }}
path: target/*.jar

build-25:
runs-on: ubuntu-latest
strategy:
fail-fast: false
max-parallel: 1
matrix:
# build against supported Java LTS versions:
java: [ 25 ]
name: Java ${{ matrix.java }}
steps:
- uses: actions/checkout@v5
- name: Set up JDK ${{ matrix.java }}
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: ${{ matrix.java }}
cache: 'maven'
- name: Compile Java ${{ matrix.java }}
run: mvn clean compile -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true -D maven.javadoc.skip=true
- name: Run Tests ${{ matrix.java }}
run: |
mvn test -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Build Test Report ${{ matrix.java }}
if: ${{ always() }}
run: |
mvn surefire-report:report-only -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
mvn site -D generateReports=false -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }}
- name: Upload Test Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Results ${{ matrix.java }}
path: target/surefire-reports/
- name: Upload Test Report ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Test Report ${{ matrix.java }}
path: target/site/
- name: Package Jar ${{ matrix.java }}
run: mvn clean package -D maven.compiler.source=${{ matrix.java }} -D maven.compiler.target=${{ matrix.java }} -D maven.test.skip=true -D maven.site.skip=true
- name: Upload Package Results ${{ matrix.java }}
if: ${{ always() }}
uses: actions/upload-artifact@v5
with:
name: Package Jar ${{ matrix.java }}
path: target/*.jar

21 changes: 21 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# ignore eclipse project files
.project
.classpath
# ignore vscode files
.vscode
# ignore Intellij Idea project files
.idea
*.iml
/target/

/bin/
build
.settings/
/.gradle/
/gradle/
/gradlew
/gradlew.bat
.gitmodules

# ignore compiled class files
*.class
Loading