-
-
Notifications
You must be signed in to change notification settings - Fork 8.6k
[Java] JSpecify annotations for LoadableComponent , SlowLoadableComponent
#16798
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: trunk
Are you sure you want to change the base?
Conversation
PR Compliance Guide 🔍Below is a summary of compliance checks for this PR:
Compliance status legend🟢 - Fully Compliant🟡 - Partial Compliant 🔴 - Not Compliant ⚪ - Requires Further Human Verification 🏷️ - Compliance label |
|||||||||||||||||||||||||||
|
Thank you, @mk868 for this code suggestion. The support packages contain example code that many users find helpful, but they do not necessarily represent After reviewing the change, unless it is a critical fix or a feature that is needed for Selenium We actively encourage people to add the wrapper and helper code that makes sense for them to their own frameworks. |
PR Code Suggestions ✨No code suggestions found for the PR. |
|
|
||
| package org.openqa.selenium.support.ui; | ||
|
|
||
| import org.jspecify.annotations.NullMarked; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mk868 please add Nullmarked annotation and import to package-info.java on ui package level
| import java.time.Clock; | ||
| import java.time.Duration; | ||
| import java.time.Instant; | ||
| import org.jspecify.annotations.NullMarked; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just a reminder to remove import here after you add package-info.java to ui package
User description
🔗 Related Issues
Related #14291
💥 What does this PR do?
JSpecify annotations added to the:
org.openqa.selenium.support.ui.SlowLoadableComponentorg.openqa.selenium.support.ui.LoadableComponent🔧 Implementation Notes
💡 Additional Considerations
I know that the future of the support package is still unknown/undecided.
But there is an user-facing API, so it would be nice to have nullability annotations there.
Especially for running a NullAway analysis for the whole project.
🔄 Types of changes
PR Type
Enhancement
Description
Add JSpecify
@NullMarkedannotations to LoadableComponentAdd JSpecify
@NullMarkedannotations to SlowLoadableComponentAdd jspecify dependency to BUILD.bazel configuration
Diagram Walkthrough
File Walkthrough
LoadableComponent.java
Add JSpecify nullability annotation to LoadableComponentjava/src/org/openqa/selenium/support/ui/LoadableComponent.java
org.jspecify.annotations.NullMarked@NullMarkedannotation to class declarationSlowLoadableComponent.java
Add JSpecify nullability annotation to SlowLoadableComponentjava/src/org/openqa/selenium/support/ui/SlowLoadableComponent.java
org.jspecify.annotations.NullMarked@NullMarkedannotation to class declarationBUILD.bazel
Add jspecify dependency to BUILD configurationjava/src/org/openqa/selenium/support/ui/BUILD.bazel
org.jspecify:jspecifyartifact dependency to components targetSlowLoadableComponent