Skip to content
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

Update to Checker Framework 3.39.0 #839

Merged
merged 6 commits into from
Oct 5, 2023
Merged

Conversation

msridhar
Copy link
Collaborator

@msridhar msridhar commented Oct 2, 2023

Fixes #831 as Checker Framework dataflow now has support for JDK 21 constructs

@msridhar
Copy link
Collaborator Author

msridhar commented Oct 2, 2023

/benchmark

@codecov
Copy link

codecov bot commented Oct 2, 2023

Codecov Report

Attention: 1 lines in your changes are missing coverage. Please review.

Comparison is base (91374c3) 86.78% compared to head (ffecd6a) 86.80%.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #839      +/-   ##
============================================
+ Coverage     86.78%   86.80%   +0.01%     
- Complexity     1877     1878       +1     
============================================
  Files            74       74              
  Lines          6191     6192       +1     
  Branches       1204     1204              
============================================
+ Hits           5373     5375       +2     
  Misses          407      407              
+ Partials        411      410       -1     
Files Coverage Δ
...llaway/dataflow/AccessPathNullnessPropagation.java 82.18% <0.00%> (-0.24%) ⬇️

... and 1 file with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@armughan11
Copy link
Collaborator

/benchmark

@github-actions
Copy link

github-actions bot commented Oct 3, 2023

Main Branch:

Benchmark                          Mode  Cnt   Score   Error  Units
AutodisposeBenchmark.compile      thrpt   25   9.010 ± 0.063  ops/s
CaffeineBenchmark.compile         thrpt   25   2.097 ± 0.015  ops/s
DFlowMicroBenchmark.compile       thrpt   25  24.494 ± 0.256  ops/s
NullawayReleaseBenchmark.compile  thrpt   25   1.245 ± 0.023  ops/s

With This PR:

Benchmark                          Mode  Cnt   Score   Error  Units
AutodisposeBenchmark.compile      thrpt   25   8.936 ± 0.063  ops/s
CaffeineBenchmark.compile         thrpt   25   2.113 ± 0.018  ops/s
DFlowMicroBenchmark.compile       thrpt   25  24.289 ± 0.423  ops/s
NullawayReleaseBenchmark.compile  thrpt   25   1.257 ± 0.024  ops/s

@msridhar
Copy link
Collaborator Author

msridhar commented Oct 3, 2023

I've confirmed that the code coverage issue was due to an issue in Checker Framework; see typetools/checker-framework#6215. So this will be fixed once Checker Framework cuts another release and we update. In the meantime, I think we should go ahead and land this (and possibly cut a new release) to fix the #831 crasher on JDK 21.

@msridhar msridhar marked this pull request as ready for review October 3, 2023 17:13
Copy link
Collaborator

@lazaroclapp lazaroclapp left a comment

Choose a reason for hiding this comment

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

Quick question/nit below, but otherwise LGTM

public TransferResult<Nullness, NullnessStore> visitDeconstructorPattern(
DeconstructorPatternNode deconstructorPatternNode,
TransferInput<Nullness, NullnessStore> input) {
return noStoreChanges(NULLABLE, input);
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why is this marked as not covered? Because the codecov report is for an older JDK?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It's due to typetools/checker-framework#6215, which is now fixed. Before, these nodes were not getting added properly to CFGs by Checker dataflow. Turns out checking code coverage is handy!

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

We won't get the coverage until Checker Framework does another release and we update, but I don't think it's worth waiting for that to land this.

@msridhar msridhar enabled auto-merge (squash) October 5, 2023 14:47
@msridhar msridhar merged commit 613f98c into uber:master Oct 5, 2023
9 of 10 checks passed
@msridhar msridhar deleted the cf-3.39.0 branch October 5, 2023 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants