Skip to content

Commit d1b13da

Browse files
felipestanzanidependabot[bot]jenspapenhagenGiovanniCaggianellajohannschopplich
authored
Migration (#51)
* Bump actions/github-script from 6 to 8 Bumps [actions/github-script](https://github.com/actions/github-script) from 6 to 8. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](actions/github-script@v6...v8) --- updated-dependencies: - dependency-name: actions/github-script dependency-version: '8' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * Change settings.gradle * update gradle wrapper * change group var in build.gradle * change gitHub URL in publishing.gradle * enhance minimum test coverage from 85-90 * change package name * change und misc.xml change for idea * fix strange refactor artefacts in markdown code blocks * fix strange refactor artefacts in markdown code blocks part 2 * CODE_OF_CONDUCT.md * docs: CONTRIBUTING.md * Update readme for the gitHub Action * Update build workflow * Update release workflow * adding ci step for specs validation * JTOON * JTOON * JTOON renmame in README.md * JTOON renmame in README.md * Update publishing.gradle * Update repository links in CONTRIBUTING.md and README.md to reflect new GitHub organization * Update documentation: Add new contributors, enhance contribution guidelines, and clarify project status in README.md, CHANGELOG.md, and LICENSE.md * Update README.md to reflect new Maven Central group ID and enhance documentation structure; add FORMAT.md for TOON format specification and documentation/README.md for API details. * Add Javadoc generation task to build.gradle for HTML documentation * Enhance Javadoc comments across multiple classes to improve documentation clarity, including detailed parameter and return descriptions for methods in DecodeOptions, EncodeOptions, ArrayEncoder, ObjectEncoder, and others. * Creates project Javadoc * Moves documentation folder to docs * Update README and docs/README to correct Javadoc links for improved accessibility * Add project name to .idea configuration and update JDK version to 17 in misc.xml * docs: harmonize issue templates, contributing guide, readme, etc. with other repos * Update repository links and documentation references to reflect project renaming from JToon to toon-java * Update Javadoc package summary and improve documentation links for consistency and clarity * Update README to correct Javadoc link and enhance table formatting for better readability * Fixes migration details --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Jens Papenhagen <[email protected]> Co-authored-by: GiovanniCaggianella <[email protected]> Co-authored-by: Johann Schopplich <[email protected]>
1 parent fa6e2a8 commit d1b13da

File tree

158 files changed

+14573
-1098
lines changed

Some content is hidden

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

158 files changed

+14573
-1098
lines changed

.github/CODEOWNERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Default owners for everything
2+
* @toon-format/java-maintainers
3+
4+
# Project governance and documentation
5+
CODE_OF_CONDUCT.md @johannschopplich
6+
CONTRIBUTING.md @felipestanzani
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Bug Report
2+
description: Report a bug or unexpected behavior
3+
labels: ["bug"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
Thanks for taking the time to report a bug!
9+
10+
- type: textarea
11+
id: description
12+
attributes:
13+
label: Description
14+
description: A clear description of what the bug is
15+
placeholder: When I try to encode..., I expect..., but instead...
16+
validations:
17+
required: true
18+
19+
- type: textarea
20+
id: reproduction
21+
attributes:
22+
label: Reproduction Steps
23+
description: Steps to reproduce the behavior
24+
placeholder: |
25+
1. Create a Toon instance
26+
2. Call encode() with...
27+
3. See error...
28+
validations:
29+
required: true
30+
31+
- type: textarea
32+
id: expected
33+
attributes:
34+
label: Expected Behavior
35+
description: What you expected to happen
36+
validations:
37+
required: true
38+
39+
- type: textarea
40+
id: actual
41+
attributes:
42+
label: Actual Behavior
43+
description: What actually happened (including error messages and stack traces)
44+
validations:
45+
required: true
46+
47+
- type: textarea
48+
id: environment
49+
attributes:
50+
label: Environment
51+
description: |
52+
Please provide:
53+
- Java version
54+
- JToon version (from build.gradle or pom.xml)
55+
- Operating system
56+
placeholder: |
57+
- Java 21.0.1
58+
- JToon 0.1.2
59+
- macOS 15.0
60+
validations:
61+
required: true
62+
63+
- type: textarea
64+
id: additional
65+
attributes:
66+
label: Additional Context
67+
description: Any other context about the problem (optional)
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Feature Request
2+
description: Suggest a new feature or enhancement
3+
labels: ["enhancement"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
Thanks for suggesting a feature!
9+
10+
- type: textarea
11+
id: problem
12+
attributes:
13+
label: Problem Statement
14+
description: What problem does this feature solve?
15+
placeholder: As a user, I want to... because...
16+
validations:
17+
required: true
18+
19+
- type: textarea
20+
id: solution
21+
attributes:
22+
label: Proposed Solution
23+
description: How would you like this to work?
24+
placeholder: |
25+
Add a new method/function that...
26+
validations:
27+
required: true
28+
29+
- type: textarea
30+
id: alternatives
31+
attributes:
32+
label: Alternatives Considered
33+
description: What alternative solutions have you considered?
34+
35+
- type: textarea
36+
id: spec
37+
attributes:
38+
label: SPEC Compliance
39+
description: |
40+
Does this relate to the TOON specification?
41+
If yes, please reference the relevant section.
42+
placeholder: This relates to SPEC.md section...
43+
44+
- type: textarea
45+
id: additional
46+
attributes:
47+
label: Additional Context
48+
description: Any other context, mockups, or examples
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: SPEC Compliance Issue
2+
description: Report a deviation from the TOON specification
3+
labels: ["spec-compliance"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
Report an issue where JToon doesn't comply with the official TOON spec.
9+
10+
- type: input
11+
id: spec-version
12+
attributes:
13+
label: SPEC Version
14+
description: Which version of the TOON spec does this relate to?
15+
placeholder: v1.3
16+
validations:
17+
required: true
18+
19+
- type: input
20+
id: spec-section
21+
attributes:
22+
label: SPEC Section
23+
description: Which section of SPEC.md is affected?
24+
placeholder: "Section 2.3: Array Notation"
25+
validations:
26+
required: true
27+
28+
- type: textarea
29+
id: spec-requirement
30+
attributes:
31+
label: SPEC Requirement
32+
description: What does the spec require?
33+
placeholder: According to SPEC.md, the encoder should...
34+
validations:
35+
required: true
36+
37+
- type: textarea
38+
id: current-behavior
39+
attributes:
40+
label: Current Behavior
41+
description: What does JToon currently do?
42+
placeholder: Currently, JToon...
43+
validations:
44+
required: true
45+
46+
- type: textarea
47+
id: test-case
48+
attributes:
49+
label: Test Case
50+
description: Provide a test case that demonstrates the issue
51+
placeholder: |
52+
```java
53+
import com.felipestanzani.toon.Toon;
54+
String result = Toon.encode(...);
55+
// Expected: ...
56+
// Actual: ...
57+
```
58+
validations:
59+
required: true
60+
61+
- type: textarea
62+
id: additional
63+
attributes:
64+
label: Additional Context
65+
description: Any other relevant information

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
## Description
2+
3+
<!-- Provide a clear and concise description of your changes -->
4+
5+
## Type of Change
6+
7+
<!-- Mark the relevant option with an [x] -->
8+
9+
- [ ] Bug fix (non-breaking change that fixes an issue)
10+
- [ ] New feature (non-breaking change that adds functionality)
11+
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
12+
- [ ] Documentation update
13+
- [ ] Refactoring (no functional changes)
14+
- [ ] Performance improvement
15+
- [ ] Test coverage improvement
16+
17+
## Related Issues
18+
19+
<!-- Link any related issues using #issue_number -->
20+
21+
Closes #
22+
23+
## Changes Made
24+
25+
<!-- List the main changes in this PR -->
26+
27+
-
28+
-
29+
-
30+
31+
## SPEC Compliance
32+
33+
<!-- If this PR relates to the TOON spec, indicate which sections are affected -->
34+
35+
- [ ] This PR implements/fixes spec compliance
36+
- [ ] Spec section(s) affected:
37+
- [ ] Spec version:
38+
39+
## Testing
40+
41+
<!-- Describe the tests you added or ran -->
42+
43+
- [ ] All existing tests pass
44+
- [ ] Added new tests for changes
45+
- [ ] Tested on Java 17
46+
- [ ] Tested on Java 21
47+
48+
### Test Output
49+
50+
```bash
51+
# Paste test output here
52+
```
53+
54+
## Code Quality
55+
56+
<!-- Confirm code quality checks -->
57+
58+
- [ ] Ran `./gradlew test` - all tests pass
59+
- [ ] Ran `./gradlew jacocoTestCoverageVerification` - coverage meets 85% threshold
60+
- [ ] Added JavaDoc comments for public APIs
61+
- [ ] Code follows Java conventions
62+
63+
## Checklist
64+
65+
<!-- Mark completed items with an [x] -->
66+
67+
- [ ] My code follows the project's coding standards
68+
- [ ] I have added JavaDoc comments to new public APIs
69+
- [ ] I have added JUnit tests that prove my fix/feature works
70+
- [ ] New and existing tests pass locally
71+
- [ ] I have updated documentation (README.md if needed)
72+
- [ ] My changes do not introduce new dependencies (or are justified)
73+
- [ ] I have maintained Java 17+ compatibility
74+
- [ ] I have reviewed the [TOON specification](https://github.com/toon-format/spec) for relevant sections
75+
76+
## Performance Impact
77+
78+
<!-- If applicable, describe any performance implications -->
79+
80+
- [ ] No performance impact
81+
- [ ] Performance improvement (describe below)
82+
- [ ] Potential performance regression (describe and justify below)
83+
84+
<!-- Details: -->
85+
86+
## Breaking Changes
87+
88+
<!-- If this is a breaking change, describe the migration path for users -->
89+
90+
- [ ] No breaking changes
91+
- [ ] Breaking changes (describe migration path below)
92+
93+
<!-- Migration path: -->
94+
95+
## Screenshots / Examples
96+
97+
<!-- If applicable, add screenshots or example output -->
98+
99+
```java
100+
// Example usage
101+
```
102+
103+
Output:
104+
```
105+
# Example output
106+
```
107+
108+
## Additional Context
109+
110+
<!-- Add any other context about the PR here (optional) -->
111+
112+
## Checklist for Reviewers
113+
114+
<!-- For maintainers reviewing this PR -->
115+
116+
- [ ] Code changes are clear and well-documented
117+
- [ ] Tests adequately cover the changes
118+
- [ ] Documentation is updated
119+
- [ ] No security concerns
120+
- [ ] Follows TOON specification
121+
- [ ] Backward compatible (or breaking changes are justified and documented)

.github/RELEASE.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@ The project uses GitHub Actions to automatically build and release when a versio
3030
```
3131

3232
4. **Wait for the workflow to complete**
33-
- The GitHub Actions workflow will automatically:
34-
- Build the project
35-
- Run all tests
36-
- Create a GitHub release
37-
- Attach the JAR file to the release
38-
- Generate release notes from commits
33+
- The GitHub Actions workflow will automatically:
34+
- Build the project
35+
- Run all tests
36+
- Create a GitHub release
37+
- Attach the JAR file to the release
38+
- Generate release notes from commits
3939

4040
### Release Artifacts
4141

@@ -46,7 +46,8 @@ The release will include:
4646

4747
### Pre-release Versions
4848

49-
If your version contains a dash (e.g., `1.0-SNAPSHOT`, `2.0-beta`), the release will be marked as a pre-release automatically.
49+
If your version contains a dash (e.g., `1.0-SNAPSHOT`, `2.0-beta`),
50+
the release will be marked as a pre-release automatically.
5051

5152
### Version Tag Format
5253

@@ -59,7 +60,8 @@ Use semantic versioning with a `v` prefix:
5960

6061
## Continuous Integration
6162

62-
Every push to `main`, `master`, or `develop` branches, and every pull request, triggers the build workflow which:
63+
Every push to `main`, `master`, or `develop` branches, and every pull request,
64+
triggers the build workflow which:
6365

6466
- Compiles the code
6567
- Runs all tests

.github/workflows/build.yml

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,10 @@ jobs:
2222

2323
steps:
2424
- name: Checkout code
25-
uses: actions/checkout@v5
25+
uses: actions/checkout@v5.0.0
2626

2727
- name: Set up JDK 21
28-
uses: actions/setup-java@v5
28+
uses: actions/setup-java@v5.0.0
2929
with:
3030
java-version: '21'
3131
distribution: 'temurin'
@@ -38,7 +38,7 @@ jobs:
3838
run: ./gradlew build
3939

4040
- name: Upload test results
41-
uses: actions/upload-artifact@v5
41+
uses: actions/upload-artifact@v5.0.0
4242
if: always()
4343
with:
4444
name: test-results
@@ -58,15 +58,14 @@ jobs:
5858

5959
- name: Fail PR if overall coverage is less than 85%
6060
if: ${{ steps.jacoco.outputs.coverage-overall < 85.0 }}
61-
uses: actions/github-script@v6
61+
uses: actions/github-script@v8
6262
with:
6363
script: |
6464
core.setFailed('Overall coverage is less than 85%!')
6565
6666
- name: Upload build artifacts
67-
uses: actions/upload-artifact@v5
67+
uses: actions/upload-artifact@v5.0.0
6868
with:
6969
name: build-artifacts
7070
path: build/libs/*.jar
7171
retention-days: 7
72-

0 commit comments

Comments
 (0)