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

refactor: fail build on compiler warnings #348

Merged
merged 2 commits into from Jul 26, 2018

Conversation

fractalwrench
Copy link
Contributor

Goal

Detect compiler warnings introduced in changes to Java code quickly.

Changeset

  • Updated gradle to error on any warnings during compilation
  • Suppressed deprecation warnings for use of deprecated APIs (both internal + external)
  • Added missing serialVersionUID field to serializable classes
  • Annotated public methods as deprecated when this had only been done in JavaDoc
  • Suppress or address generic warnings (mostly caused by type erasure)

Tests

Ran tests on CI, manual test to ensure compilation errors in example project don't break build

Review

For the submitter, initial self-review:

  • Commented on code changes inline explain the reasoning behind the approach
  • Reviewed the test cases added for completeness and possible points for discussion
  • A changelog entry was added for the goal of this pull request
  • Check the scope of the changeset - is everything in the diff required for the pull request?
  • This pull request is ready for:
    • Initial review of the intended approach, not yet feature complete
    • Structural review of the classes, functions, and properties modified
    • Final review

For the pull request reviewer(s), this changeset has been reviewed for:

  • Consistency across platforms for structures or concepts added or modified
  • Consistency between the changeset and the goal stated above
  • Internal consistency with the rest of the library - is there any overlap between existing interfaces and any which have been added?
  • Usage friction - is the proposed change in usage cumbersome or complicated?
  • Performance and complexity - are there any cases of unexpected O(n^3) when iterating, recursing, flat mapping, etc?
  • Concurrency concerns - if components are accessed asynchronously, what issues will arise
  • Thoroughness of added tests and any missing edge cases
  • Idiomatic use of the language

Fails the build when compiler warnings are detected. @SuppressWarnings has been added to existing
issues which should not be resolved
@fractalwrench fractalwrench requested a review from a team July 25, 2018 09:51
@coveralls
Copy link

coveralls commented Jul 25, 2018

Coverage Status

Coverage decreased (-0.09%) to 74.927% when pulling c8c505d on fail-on-compiler-warnings into 397d771 on next.

Copy link
Contributor

@simonbowring simonbowring left a comment

Choose a reason for hiding this comment

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

LGTM

@simonbowring
Copy link
Contributor

@fractalwrench, is the slight reduction in coverage ok?

@fractalwrench
Copy link
Contributor Author

@simonbowring generally as long as it's a small reduction we've been ok with it in the past.

@fractalwrench fractalwrench merged commit 8af1c04 into next Jul 26, 2018
@fractalwrench fractalwrench deleted the fail-on-compiler-warnings branch July 26, 2018 14:16
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.

None yet

3 participants