Open
Conversation
28e1333 to
64d4ffa
Compare
Introduces a new Spring Boot CLI module built on picocli. The module targets Java 17 and includes Error Prone and NullAway for compile-time null-safety enforcement via jspecify @NullMarked annotations. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Introduces the root picocli command (SpringJavaFormatCommand), the Spring CommandLineRunner that executes it (PicocliRunner), a version provider (CliVersionProvider), and the PicocliManaged annotation used to suppress NullAway field-initialization warnings for picocli-injected fields. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Introduces InputOptions (shared picocli mixin for path, includes, excludes, encoding, and line-separator), FileScanner (directory scanning using plexus DirectoryScanner), FileFormatterFactory (factory for creating a FileFormatter from a base directory), and ScanConfiguration (Spring configuration wiring the factory bean). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Introduces the apply subcommand which formats Java source files in place. FormattingService wraps the FileFormatter and takes a pre-scanned file list so the directory scan is not repeated. Includes integration tests covering default formatting, encoding, includes/excludes filtering, and springjavaformatconfig discovery. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Introduces the check subcommand which validates source formatting and Spring checkstyle rules. Output is rendered via JTE templates (checkSuccess, checkError, checkFormatting, checkCheckstyleDetailed, checkCombined) with ANSI colour styling. CheckRunner scans files once and shares the list between the formatter and CheckstyleService. Includes integration tests for formatting, checkstyle, combined output, header types, import order, and includes/excludes filtering. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds GraalVM native image configuration: reflect-config.json registers all Checkstyle API classes, Spring JavaFormat checks, and Eclipse JDT types needed at runtime; resource-config.json registers the checkstyle configuration and formatter preference files. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add build-cli-native workflow: 4-platform matrix (linux-amd64, linux-arm64, windows-amd64, macos-arm64); windows-arm64 excluded as GraalVM/Liberica NIK has no native Windows ARM64 support - Clear MAVEN_OPTS in native build step to prevent jvm.config options (heap size, --add-exports) propagating to the native-image subprocess - Use pwsh shell on Windows for native build to invoke mvnw.cmd - Add prepare-cli-native-release workflow: creates draft GitHub release, builds native binaries, uploads as release assets; pass --repo to gh release upload as the job has no checkout step for git context - Add setup-native composite action using Liberica NIK JDK 17
Adds CLI usage documentation to the README covering installation via SDKMAN, the apply and check commands, and available options. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- build-and-deploy-snapshot: move repo guard to Deploy step so Build always runs in the fork (already applied by linter) - build-pull-request: extend repo guard to allow timothysparg fork - release: guard Deploy to Staging step; fall back to github.token for gh-token so draft release creation works without GH_ACTIONS_REPO_TOKEN - promote: guard all external-service steps (JFrog, Maven Central, Eclipse update site) with spring-io repo check; fall back to github.token for Publish GitHub Release Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
64d4ffa to
d6a94bf
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Purpose
Verify that the
Build Pull RequestandBuild CLI Nativejobs run correctly in thetimothysparg/spring-javaformatfork after the repository guard was updated.🤖 Generated with Claude Code