Skip to content

Commit 837dedd

Browse files
v1.0.12 #124
Release v1.0.2
2 parents 711b2b6 + 0024e4b commit 837dedd

File tree

76 files changed

+2451
-1959
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+2451
-1959
lines changed

.github/ruleset.xml

+19-16
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,9 @@
3535
<rule ref="category/java/bestpractices.xml/LiteralsFirstInComparisons" />
3636
<rule ref="category/java/bestpractices.xml/LooseCoupling"/>
3737
<!-- <rule ref="category/java/bestpractices.xml/MethodReturnsInternalArray" /> -->
38-
<rule ref="category/java/bestpractices.xml/MissingOverride"/>
39-
<rule ref="category/java/bestpractices.xml/OneDeclarationPerLine"/>
38+
<!-- TODO enable MissingOverride-->
39+
<!-- <rule ref="category/java/bestpractices.xml/MissingOverride"/> -->
40+
<!-- <rule ref="category/java/bestpractices.xml/OneDeclarationPerLine"/>-->
4041
<rule ref="category/java/bestpractices.xml/PrimitiveWrapperInstantiation"/>
4142
<rule ref="category/java/bestpractices.xml/PreserveStackTrace"/>
4243
<!-- <rule ref="category/java/bestpractices.xml/ReplaceEnumerationWithIterator" /> -->
@@ -46,7 +47,8 @@
4647
<rule ref="category/java/bestpractices.xml/SwitchStmtsShouldHaveDefault"/>
4748
<!-- <rule ref="category/java/bestpractices.xml/SystemPrintln" /> -->
4849
<!-- <rule ref="category/java/bestpractices.xml/UnusedAssignment"/> -->
49-
<rule ref="category/java/bestpractices.xml/UnusedFormalParameter"/>
50+
<!-- TODO enable UnusedFormalParameter-->
51+
<!--<rule ref="category/java/bestpractices.xml/UnusedFormalParameter"/> -->
5052
<rule ref="category/java/bestpractices.xml/UnusedLocalVariable"/>
5153
<rule ref="category/java/bestpractices.xml/UnusedPrivateField"/>
5254
<rule ref="category/java/bestpractices.xml/UnusedPrivateMethod"/>
@@ -65,7 +67,7 @@
6567
<!-- <rule ref="category/java/codestyle.xml/LinguisticNaming" /> -->
6668
<rule ref="category/java/codestyle.xml/LocalVariableNamingConventions"/>
6769
<!-- <rule ref="category/java/codestyle.xml/LongVariable" /> -->
68-
<rule ref="category/java/codestyle.xml/MethodNamingConventions"/>
70+
<!-- <rule ref="category/java/codestyle.xml/MethodNamingConventions"/>-->
6971
<rule ref="category/java/codestyle.xml/PackageCase"/>
7072
<!-- <rule ref="category/java/codestyle.xml/ShortClassName" /> -->
7173
<!-- <rule ref="category/java/codestyle.xml/ShortMethodName" /> -->
@@ -113,7 +115,7 @@
113115
<rule ref="category/java/codestyle.xml/UnnecessaryModifier"/>
114116
<rule ref="category/java/codestyle.xml/UnnecessaryReturn"/>
115117
<!-- <rule ref="category/java/codestyle.xml/UseDiamondOperator" /> -->
116-
<rule ref="category/java/codestyle.xml/UselessParentheses"/>
118+
<!-- <rule ref="category/java/codestyle.xml/UselessParentheses"/> -->
117119
<rule ref="category/java/codestyle.xml/UselessQualifiedThis"/>
118120

119121

@@ -168,14 +170,14 @@
168170
<!-- <rule ref="category/java/design.xml/TooManyMethods" /> -->
169171
<rule ref="category/java/design.xml/UselessOverridingMethod"/>
170172
<!-- <rule ref="category/java/design.xml/UseObjectForClearerAPI" /> -->
171-
<rule ref="category/java/design.xml/UseUtilityClass"/>
173+
<!-- <rule ref="category/java/design.xml/UseUtilityClass"/> -->
172174

173175

174176
<!-- <rule ref="category/java/documentation.xml/CommentContent" /> -->
175177
<!-- <rule ref="category/java/documentation.xml/CommentRequired" /> -->
176178
<!-- <rule ref="category/java/documentation.xml/CommentSize" /> -->
177-
<rule ref="category/java/documentation.xml/UncommentedEmptyConstructor"/>
178-
<rule ref="category/java/documentation.xml/UncommentedEmptyMethodBody"/>
179+
<!--<rule ref="category/java/documentation.xml/UncommentedEmptyConstructor"/>-->
180+
<!--<rule ref="category/java/documentation.xml/UncommentedEmptyMethodBody"/>-->
179181

180182

181183

@@ -211,8 +213,8 @@
211213
<rule ref="category/java/errorprone.xml/CloneMethodMustImplementCloneable"/>
212214
<rule ref="category/java/errorprone.xml/CloneMethodReturnTypeMustMatchClassName"/>
213215
<!-- <rule ref="category/java/errorprone.xml/CloneThrowsCloneNotSupportedException"/> deprecated since 6.35.0 -->
214-
<rule ref="category/java/errorprone.xml/CloseResource"/>
215-
<rule ref="category/java/errorprone.xml/CompareObjectsWithEquals"/>
216+
<!--<rule ref="category/java/errorprone.xml/CloseResource"/>-->
217+
<!-- <rule ref="category/java/errorprone.xml/CompareObjectsWithEquals"/>-->
216218
<rule ref="category/java/errorprone.xml/ComparisonWithNaN"/>
217219
<!-- <rule ref="category/java/errorprone.xml/ConstructorCallsOverridableMethod" /> -->
218220
<!-- <rule ref="category/java/errorprone.xml/DataflowAnomalyAnalysis" /> -->
@@ -248,31 +250,31 @@
248250
<rule ref="category/java/errorprone.xml/OverrideBothEqualsAndHashcode"/>
249251
<rule ref="category/java/errorprone.xml/ProperCloneImplementation"/>
250252
<rule ref="category/java/errorprone.xml/ProperLogger"/>
251-
<rule ref="category/java/errorprone.xml/ReturnEmptyCollectionRatherThanNull"/>
253+
<!-- <rule ref="category/java/errorprone.xml/ReturnEmptyCollectionRatherThanNull"/> -->
252254
<rule ref="category/java/errorprone.xml/ReturnFromFinallyBlock"/>
253255
<!-- <rule ref="category/java/errorprone.xml/SimpleDateFormatNeedsLocale" /> -->
254256
<rule ref="category/java/errorprone.xml/SingleMethodSingleton"/>
255-
<rule ref="category/java/errorprone.xml/SingletonClassReturningNewInstance"/>
257+
<!--<rule ref="category/java/errorprone.xml/SingletonClassReturningNewInstance"/>-->
256258
<!-- <rule ref="category/java/errorprone.xml/StaticEJBFieldShouldBeFinal" /> -->
257259
<!-- <rule ref="category/java/errorprone.xml/StringBufferInstantiationWithChar" /> -->
258260
<rule ref="category/java/errorprone.xml/SuspiciousEqualsMethodName"/>
259261
<rule ref="category/java/errorprone.xml/SuspiciousHashcodeMethodName"/>
260262
<rule ref="category/java/errorprone.xml/SuspiciousOctalEscape"/>
261263
<!-- <rule ref="category/java/errorprone.xml/TestClassWithoutTestCases" /> -->
262-
<rule ref="category/java/errorprone.xml/UnconditionalIfStatement"/>
264+
<!-- <rule ref="category/java/errorprone.xml/UnconditionalIfStatement"/>-->
263265
<!-- <rule ref="category/java/errorprone.xml/UnnecessaryBooleanAssertion" /> -->
264266
<!-- <rule ref="category/java/errorprone.xml/UnnecessaryCaseChange" /> -->
265267
<rule ref="category/java/errorprone.xml/UnnecessaryConversionTemporary"/>
266268
<rule ref="category/java/errorprone.xml/UnusedNullCheckInEquals"/>
267269
<!-- <rule ref="category/java/errorprone.xml/UseCorrectExceptionLogging" /> -->
268270
<rule ref="category/java/errorprone.xml/UseEqualsToCompareStrings"/>
269271
<rule ref="category/java/errorprone.xml/UselessOperationOnImmutable"/>
270-
<rule ref="category/java/errorprone.xml/UseLocaleWithCaseConversions"/>
272+
<!-- <rule ref="category/java/errorprone.xml/UseLocaleWithCaseConversions"/> -->
271273
<!-- <rule ref="category/java/errorprone.xml/UseProperClassLoader" /> -->
272274

273275
<!-- Empty rules -->
274276
<rule ref="category/java/codestyle.xml/EmptyControlStatement"/>
275-
<rule ref="category/java/codestyle.xml/UnnecessarySemicolon"/>
277+
<!-- <rule ref="category/java/codestyle.xml/UnnecessarySemicolon"/>-->
276278
<rule ref="category/java/errorprone.xml/EmptyCatchBlock"/>
277279
<rule ref="category/java/errorprone.xml/EmptyFinalizer"/>
278280

@@ -283,7 +285,8 @@
283285
<!-- <rule ref="category/java/multithreading.xml/DoNotUseThreads" /> -->
284286
<rule ref="category/java/multithreading.xml/DontCallThreadRun"/>
285287
<rule ref="category/java/multithreading.xml/DoubleCheckedLocking"/>
286-
<rule ref="category/java/multithreading.xml/NonThreadSafeSingleton"/>
288+
<!-- TODO enable NonThreadSafeSingleton -->
289+
<!-- <rule ref="category/java/multithreading.xml/NonThreadSafeSingleton"/> -->
287290
<rule ref="category/java/multithreading.xml/UnsynchronizedStaticFormatter"/>
288291
<!-- <rule ref="category/java/multithreading.xml/UseConcurrentHashMap" /> -->
289292
<rule ref="category/java/multithreading.xml/UseNotifyAllInsteadOfNotify"/>

.github/workflows/cicd.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -128,10 +128,11 @@ jobs:
128128
run: |
129129
export PATH_GOOGLE_JAVA_FORMAT=${PWD}/google-java-format.jar
130130
./check-format
131+
echo $?
131132
132133
- name: Run PMD
133134
run: |
134-
pmd-bin-6.52.0/bin/run.sh pmd -d ${PWD}/libcobj/src -R ${PWD}/.github/ruleset.xml -f text || true
135+
pmd-bin-6.52.0/bin/run.sh pmd -d ${PWD}/libcobj/src -R ${PWD}/.github/ruleset.xml -f text
135136
136137
- name: Run cppcheck
137138
run: |

.github/workflows/codeql.yml

-89
This file was deleted.

CHANGELOG.md

+138
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6+
7+
## [1.0.12]
8+
### Added
9+
- Run NIST85 tests for Relative files and add the test status to README.md
10+
- Add CHANGELOG.md (#119)
11+
### Fixed
12+
- Fix overflows of USAGE COMP data (#105)
13+
- Fix the bug related to overflows of USAGE COMP (Issue #105) #107
14+
- Fix the bug of comparison process for national strings of different lengths (#113)
15+
- Fix overflows of USAGE COMP-3 data (#118)
16+
- Fix CANCEL statement (#121)
17+
### Changed
18+
- Refactor Java files in libcobj/ (#111)
19+
- Improve the performance of File processing and comparision of 9(m)V9(n) (#114)
20+
- Update README.md (#116)
21+
- Improve the performance of converting Strings to byte arrays (#117)
22+
23+
## [1.0.11] - 2023-05-31
24+
### Added
25+
- Implement new options `-o`, `-j`, `-class-file-path`, `-java-file-path` (#99)
26+
### Fixed
27+
- Fix the command checking the results of NIST test and the read functoin of RELATIVE files (#98)
28+
- Fix the method `realPutSign` of `AbstractCobolField` (#100)
29+
30+
## [1.0.10] - 2023-04-28
31+
### Fixed
32+
- Fix string literals containing mutiple bytes
33+
- Fix some broken tests for special-names
34+
35+
## [1.0.9] - 2023-03-31
36+
### Added
37+
- Add `-constant` option and fix tests for dollarif
38+
### Fixed
39+
- Fix some build warnings
40+
- Fix `Source file not found` test
41+
- Fix `FUNCTION ABS`
42+
- Fix warning messages involved with MOVE statements
43+
- Fix the test for `EXIT PERFORM CYCLE`
44+
- Fix warning messages involved with MOVE statements
45+
### Changed
46+
- Improve the representations of string literals
47+
### Removed
48+
- Remove `frameIndex`, frame` and comments in generated Java source code
49+
50+
## [1.0.8] - 2023-02-28
51+
### Added
52+
- Implement relative files (#97)
53+
- Add `DESTDIR` support in libcobj/Makefile (#90)
54+
- Add help messages to cobj and add comments to spring_batch_tasklet.sh
55+
- Add static analysis for C source code
56+
### Fixed
57+
- Fix moveFrom of CobolNumericPackedField (#79)
58+
- Fix some warning messages
59+
- Use equals to compare Java Strings
60+
- Fix CI and remove unnecessary files
61+
### Changed
62+
- Update .gitignore and tests/cobol85/Makefile.am (#79)
63+
- Use BigDecimal.valueOf to create a new instance with double value (#85)
64+
### Removed
65+
66+
## [1.0.7] - 2023-01-31
67+
### Added
68+
- Create cob_delete_file method (#68)
69+
- Implement -java-package option (#70)
70+
- Implement "SET ENVIRONMENT" statement (#72)
71+
- Add a test for exchanging Japanese data between COBOL and Java (#73)
72+
### Fixed
73+
- Fix file-control.at
74+
- Fix cmpInt of CobolNumericPackedField and add tests (#71)
75+
- Fix EXIT PERFORM and EXIT PERFORM CYCLE (#75)
76+
### Changed
77+
- Improve Java interface (#69)
78+
- Improve tests and CI (#67)
79+
80+
## [1.0.6] - 2022-12-29
81+
### Added
82+
- Add code-format scripts and Update CI (#58)
83+
- Implement the matrix build (#59)
84+
- Implement -fshort-variable option (#61)
85+
- Add PMD analysis (#63)
86+
### Fixed
87+
- Fix FUNCTION CURRENT-DATE (#56)
88+
### Changed
89+
- Update libcobj/Makefile to install libcobj.jar into /usr/lib/opensourcecobol4j (#57)
90+
91+
## [1.0.5] - 2022-11-22
92+
### Added
93+
- Add options
94+
- Add -B, -E, -g, -t, -C, -m options
95+
- Add --listreserved, -fsyntax-only, -Wunreachable, -free and -free_1col_aster options
96+
- Add the test case for NATIONAL items
97+
### Fixed
98+
- Fix warnings in cobj/*.c
99+
- Fix codegen.c
100+
- Fix segmentation faults when parsing exit-perform
101+
- Fix exit perform and perform cycle
102+
- Fix the help message of -m option
103+
- Fix the bug of NATIONAL literals (#47)
104+
- Fix the bug of NATIONAL items (#49)
105+
- Fix moving sign-leading-separate to COMP3
106+
### Changed
107+
- Update README_JP.md
108+
- Update CI
109+
- Update default compile level
110+
- Output raw multi-byte characters in generated Java source code
111+
- Improve test cases for binary data
112+
- Update NIST85 tests
113+
### Removed
114+
- remove libcob/ and po/ directory
115+
- Remove options -c,-S, -O,-O2,-Os,-Q,-D
116+
117+
## [1.0.4] - 2022-07-20
118+
### Added
119+
- Embedding COBOL variable names into Java variable names (#39)
120+
### Changed
121+
- Add libcobj/compile.sh that builds java source code
122+
123+
## [1.0.3] - 2022-01-31
124+
### Added
125+
- implement INDEXED files with SQLite
126+
127+
## [1.0.2] - 2021-11-10
128+
### Fixed
129+
- Fix compilation errors related to EXIT PERFORM statements
130+
### Changed
131+
- The license upgrades to GPL3.(#22)
132+
133+
## [1.0.1] - 2021-08-26
134+
### Added
135+
- Add the conversoin process for CALL statement
136+
137+
## [1.0.0] - 2021-08-02
138+
- The first release

ChangeLog

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2023-06-30 OSS Consortium <ws-opensource-cobol-contact@osscons.jp>
2+
3+
* opensource COBOL 4J v1.0.12 released.
4+
15
2023-05-31 OSS Consortium <ws-opensource-cobol-contact@osscons.jp>
26

37
* opensource COBOL 4J v1.0.11 released.

NEWS

+19
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,25 @@ NEWS - user visible changes -*- outline -*-
22

33
-----------------------------------------------------------------------
44

5+
* opensource COBOL 4J 1.0.12
6+
7+
** New Features
8+
(1) Add -fdefaultbyte option
9+
10+
** Improve Performance
11+
(1) Improve the performance of converting String to a byte array and comparision of 9(m)V9(n)
12+
(2) Improve the performance of file processing slightly
13+
14+
** Bug fixes
15+
(1) Fix the bugs of USAGE COMP, USAGE COMP-3 and PIC N(m)
16+
(2) Fix CANCEL statement
17+
18+
** Miscellaneous
19+
(1) Run NIST85 tests for Relative files and add the test status to README.md
20+
(2) Refactor Java files in libcobj/ in order to pass static analysis "PMD"
21+
22+
-----------------------------------------------------------------------
23+
524
* opensource COBOL 4J 1.0.11
625

726
** New Features

0 commit comments

Comments
 (0)