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

Publish Error Prone compatibility matrix on website #938

Merged
merged 1 commit into from
Jan 22, 2024

Conversation

Stephan202
Copy link
Member

@Stephan202 Stephan202 commented Dec 23, 2023

This resolves #724 and addresses a discussion in #935. The result can be seen here.

Suggested commit message:

Publish Error Prone compatibility matrix on website (#938)

The new `website/generate-version-compatibility-overview.sh` script
tests all combinations, and stores the result in a Jekyll data file.

Resolves #724.

@Stephan202 Stephan202 added this to the 0.15.0 milestone Dec 23, 2023
@Stephan202 Stephan202 requested a review from rickie December 23, 2023 20:51
Copy link

Looks good. No mutations were possible for these changes.
Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

Copy link
Member Author

@Stephan202 Stephan202 left a comment

Choose a reason for hiding this comment

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

Some context.

Comment on lines +1 to +2
# An overview of Error Prone Support releases, along with compatible Error
# Prone releases. This data was generated by `generate-version-compatibility-overview.sh`.
Copy link
Member Author

Choose a reason for hiding this comment

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

This script takes quite some time to run (and that'll go up due to it's quadratic nature 🙊), so committing the result is the only realistic option.

Comment on lines +28 to +31
| [{{ release.version }}](https://github.com/PicnicSupermarket/error-prone-support/releases/tag/v{{ release.version }}) | {%
for version in release.compatible -%}
[{{ version }}](https://github.com/google/error-prone/releases/tag/v{{ version }}){% unless forloop.last %}, {% endunless %}
{%- endfor %} |
Copy link
Member Author

Choose a reason for hiding this comment

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

The formatting is funny here, but that seemed necessary to make sure that a proper Markdown table is produced. Suggestions welcome.

Copy link
Contributor

Choose a reason for hiding this comment

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

image

github doesn't really seem to properly display this? 🤔

Copy link
Member Author

Choose a reason for hiding this comment

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

So yeah, this PR is a bit "fake": we don't currently deploy the website from the master branch, but instead from the website branch. Not all logic there has been properly cleaned up yet, and some of the changes there are really not acceptable on master; hence the split.

But... these changes in this PR are also part of that branch, so you can see the result live on the internet.

Comment on lines +34 to +35
[^1]: Note that this [does not prove][source-binary-compat] that the Error Prone Support and Error Prone versions are _binary_ compatible. This limitation does not appear to be an issue in practice.
[^2]: The approach taken here may yield false negatives, because a reported incompatibility may merely be due to a test API incompatibility.
Copy link
Member Author

Choose a reason for hiding this comment

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

Wrapping these lines breaks the formatting 🤷

@Stephan202 Stephan202 added the documentation A documentation update label Dec 24, 2023
@Stephan202 Stephan202 force-pushed the sschroevers/document-error-prone-compatibility branch from 02142a8 to a7ee352 Compare January 13, 2024 20:24
Copy link

Looks good. No mutations were possible for these changes.
Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

The new `website/generate-version-compatibility-overview.sh` script
tests all combinations, and stores the result in a Jekyll data file.

Resolves #724.
@rickie rickie force-pushed the sschroevers/document-error-prone-compatibility branch from a7ee352 to 8dc234a Compare January 22, 2024 06:13
Copy link

Looks good. No mutations were possible for these changes.
Mutation testing report by Pitest. Review any surviving mutants by inspecting the line comments under Files changed.

Copy link

Quality Gate Passed Quality Gate passed

Kudos, no new issues were introduced!

0 New issues
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Copy link
Member

@rickie rickie left a comment

Choose a reason for hiding this comment

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

Awesome work @Stephan202 , really cool script 🚀 !

Thanks for the review @Venorcis!

@rickie rickie merged commit aa1cfd9 into master Jan 22, 2024
16 checks passed
@rickie rickie deleted the sschroevers/document-error-prone-compatibility branch January 22, 2024 09:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation A documentation update
Development

Successfully merging this pull request may close these issues.

Document minimum version of Error Prone required
3 participants