Skip to content

Features/nullaway - #58

Merged
juherr merged 12 commits into
mainfrom
features/nullaway
Aug 27, 2025
Merged

Features/nullaway#58
juherr merged 12 commits into
mainfrom
features/nullaway

Conversation

@juherr

@juherr juherr commented Aug 27, 2025

Copy link
Copy Markdown
Owner

No description provided.

@coderabbitai

coderabbitai Bot commented Aug 27, 2025

Copy link
Copy Markdown

Important

Review skipped

More than 25% of the files skipped due to max files limit. The review is being skipped to prevent a low-quality review.

192 files out of 300 files are above the max files limit of 100. Please upgrade to Pro plan to get higher limits.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing Touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch features/nullaway

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Comment thread steve/src/main/java/de/rwth/idsg/steve/config/SecurityConfiguration.java Dismissed
@juherr
juherr force-pushed the features/nullaway branch 2 times, most recently from f0c9fb5 to a4f7400 Compare August 27, 2025 13:59
@juherr
juherr force-pushed the features/nullaway branch from a4f7400 to b0f390d Compare August 27, 2025 14:26
@juherr
juherr requested a review from Copilot August 27, 2025 14:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request introduces NullAway static analysis support to improve null safety in the codebase. The main purpose is to enhance code quality by adding null annotations and restructuring imports/formatting to align with NullAway requirements.

  • Added NullAway-compatible @Nullable annotations using org.jspecify.annotations.Nullable
  • Reformatted code to improve readability and comply with code style guidelines
  • Updated import statements to use consistent ordering and remove unused imports

Reviewed Changes

Copilot reviewed 287 out of 309 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
steve/pom.xml Updated Maven configuration and reordered XML elements
steve/Dockerfile, steve/k8s/docker/Dockerfile Updated Java runtime from 17 to 21
steve/src/main/java/**/*.java Added null safety annotations and code formatting improvements
steve/src/test/java/**/*.java Updated test classes with formatting and import reorganization
steve-ui-jsp/src/**/*.java Updated JSP UI classes with formatting and annotation improvements

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment on lines +204 to +205
setList(list, isSecured -> isSecured ? "https" : "http", info.getWebInterface(), info.getOcppSoap());
setList(list, isSecured -> isSecured ? "wss" : "ws", info.getOcppWebSocket());

Copilot AI Aug 27, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The boolean logic is inverted. For secure connections, HTTPS should be used when isSecured is true, and HTTP when false. Currently it returns HTTPS when isSecured is false and HTTP when true. Same issue with WebSocket protocols.

Copilot uses AI. Check for mistakes.
Comment on lines +115 to +116
var build = Version.parse(buildVersion);
var github = Version.parse(githubVersion);

Copilot AI Aug 27, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code is calling Version.parse() method, but the diff shows it was previously using Version.valueOf(). The Version.parse() method may not exist or may have different behavior than valueOf(). This could be a breaking change that needs verification.

Suggested change
var build = Version.parse(buildVersion);
var github = Version.parse(githubVersion);
var build = Version.valueOf(buildVersion);
var github = Version.valueOf(githubVersion);

Copilot uses AI. Check for mistakes.

boolean isGithubMoreRecent = github.greaterThan(build);
String downloadUrl = decideDownloadUrl(response);
var isGithubMoreRecent = github.isHigherThan(build);

Copilot AI Aug 27, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The method name has changed from greaterThan() to isHigherThan(). This suggests a potential API change that may not be compatible with the existing Version class implementation.

Copilot uses AI. Check for mistakes.
}
s = resolveIfSystemEnv(s);
return Optional.of(trim(key, s));
return Optional.ofNullable(trim(key, s));

Copilot AI Aug 27, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change from Optional.of() to Optional.ofNullable() could alter behavior if trim() returns null. If the previous code expected trim() to always return a non-null value, this change might introduce unexpected null values in the Optional.

Suggested change
return Optional.ofNullable(trim(key, s));
return Optional.of(trim(key, s));

Copilot uses AI. Check for mistakes.
@juherr
juherr merged commit ca35cd6 into main Aug 27, 2025
50 checks passed
@juherr
juherr deleted the features/nullaway branch August 27, 2025 14:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants