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

build(deps): bump the dependencies group in /core-java with 2 updates #769

Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 4, 2024

Bumps the dependencies group in /core-java with 2 updates: com.google.truth:truth and com.networknt:json-schema-validator.

Updates com.google.truth:truth from 1.3.0 to 1.4.0

Release notes

Sourced from com.google.truth:truth's releases.

1.4.0

In this release, our assertions on Java 8 types continue to move from the Truth8 class to the main Truth class. This change should not break compatibility for any supported JDK or Android version, even users who test under old versions of Android without API desugaring. Additionally, we will never break binary compatibility, though some users will have to make changes to their source code in order for it to compile against newer versions.

This release is likely to lead to more build failures than 1.3.0 did. However, those failures should be straightforward to fix.

Example build failure

Foo.java:152: error: reference to assertThat is ambiguous
    assertThat(repo.findFileWithName("foo")).isNull();
    ^
  both method assertThat(@org.jspecify.nullness.Nullable Path) in Truth8 and method assertThat(@org.jspecify.nullness.Nullable Path) in Truth match

Simplest upgrade strategy (if you can update all your code atomically in the same commit as the Truth upgrade)

In the same commit:

  1. Upgrade Truth to 1.4.0.
  2. Replace import static com.google.common.truth.Truth8.assertThat; with import static com.google.common.truth.Truth.assertThat;.
    • If you use Kotlin, replace import com.google.common.truth.Truth8.assertThat with import com.google.common.truth.Truth.assertThat.
  3. Replace import com.google.common.truth.Truth8; with import com.google.common.truth.Truth;.
    • again, similarly for Kotlin if needed
  4. Replace remaining references to Truth8 with references to Truth.
    • For example, replace Truth8.assertThat(optional).isPresent() with Truth.assertThat(optional).isPresent().

If you're feeling lucky, you can try this one-liner for the code updates:

git grep -l Truth8 | xargs perl -pi -e 's/import static com.google.common.truth.Truth8.assertThat;/import static com.google.common.truth.Truth.assertThat;/g; s/import com.google.common.truth.Truth8.assertThat/import com.google.common.truth.Truth.assertThat/g; s/import com.google.common.truth.Truth8/import com.google.common.truth.Truth/g; s/\bTruth8[.]/Truth./g;'

After that process, it is possible that you'll still see build errors from ambiguous usages of assertThat static imports. If so, you can find a workaround in the section about overload ambiguity in the release notes for 1.3.0. Alternatively, you can wait to upgrade until after a future Truth release, which will eliminate the ambiguity by changing the signatures of some Truth.assertThat overloads.

Incremental upgrade strategy

If you have a very large repo or you have other reasons to prefer to upgrade incrementally, you can use the approach that we used inside Google. Roughly, that approach was:

  1. Make the optional changes discussed in the release notes for 1.3.0.
  2. For any remaining calls to Truth8.assertThat, change them to avoid static import.
    • That is, replace assertThat(optional).isPresent() with Truth8.assertThat(optional).isPresent().
  3. Upgrade Truth to 1.4.0.
  4. Optionally replace references to Truth8 with references to Truth (including restoring static imports if desired), as discussed in section about the simple upgrade strategy above.

Optional additional changes

  • If you use assertWithMessage(...).about(intStreams()).that(...), expect.about(optionalLongs()).that(...), or similar, you can remove your call to about. This change will never be necessary; it is just a simplification.
    • This is similar to a previous optional change from 1.3.0, except that 1.3.0 solved this problem for streams and optionals, whereas 1.4.0 solves it for the other Truth8 types.

For help

... (truncated)

Commits
  • 2e8e488 Set version number for truth-parent to 1.4.0.
  • 1f81827 Copy Truth8.assertThat overloads for Path and OptionalLong to the main ...
  • 9be8e77 Copy remaining Truth8.assertThat overloads to the main Truth class—except...
  • b02a658 Migrate most usages of Truth8.assertThat to equivalent usages of `Truth.ass...
  • 0999369 Automated Code Change
  • 7c65fc6 Make it possible to write expect.that(optionalInt).isPresent(), `assertWith...
  • 87b371d Bump styfle/cancel-workflow-action from 0.12.0 to 0.12.1
  • See full diff in compare view

Updates com.networknt:json-schema-validator from 1.3.0 to 1.3.1

Release notes

Sourced from com.networknt:json-schema-validator's releases.

1.3.1 - 2024-01-31

Added

Changed

  • fixes #942 Add annotation support refactor keywords to use annotations implement output formats. Thanks @​justin-tay
Changelog

Sourced from com.networknt:json-schema-validator's changelog.

1.3.1 - 2024-01-31

Added

Changed

  • fixes #942 Add annotation support refactor keywords to use annotations implement output formats. Thanks @​justin-tay
Commits
  • 49a44c9 ugrade to 1.3.1 and update changelog
  • 9c95c06 Add annotation support refactor keywords to use annotations implement output ...
  • See full diff in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the dependencies group in /core-java with 2 updates: [com.google.truth:truth](https://github.com/google/truth) and [com.networknt:json-schema-validator](https://github.com/networknt/json-schema-validator).


Updates `com.google.truth:truth` from 1.3.0 to 1.4.0
- [Release notes](https://github.com/google/truth/releases)
- [Commits](google/truth@v1.3.0...v1.4.0)

Updates `com.networknt:json-schema-validator` from 1.3.0 to 1.3.1
- [Release notes](https://github.com/networknt/json-schema-validator/releases)
- [Changelog](https://github.com/networknt/json-schema-validator/blob/master/CHANGELOG.md)
- [Commits](networknt/json-schema-validator@1.3.0...1.3.1)

---
updated-dependencies:
- dependency-name: com.google.truth:truth
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: com.networknt:json-schema-validator
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot requested a review from a team as a code owner February 4, 2024 23:48
@dependabot dependabot bot added 🏠 pr: internal PR which adds internal framework changes java Pull requests that update Java code labels Feb 4, 2024
@ghost
Copy link

ghost commented Feb 4, 2024

👇 Click on the image for a new way to code review

Review these changes using an interactive CodeSee Map

Legend

CodeSee Map legend

@WasiqB WasiqB merged commit db340c0 into main Feb 5, 2024
22 checks passed
@dependabot dependabot bot deleted the dependabot/maven/core-java/main/dependencies-f699a0a411 branch February 5, 2024 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏠 pr: internal PR which adds internal framework changes java Pull requests that update Java code
Projects
Development

Successfully merging this pull request may close these issues.

1 participant