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 all dependencies #1775

Merged
merged 2 commits into from
Jan 6, 2025
Merged

Update all dependencies #1775

merged 2 commits into from
Jan 6, 2025

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 21, 2024

This PR contains the following updates:

Package Type Update Change Age Adoption Passing Confidence
gradle (source) minor 8.11.1 -> 8.12 age adoption passing confidence
io.github.takahirom.roborazzi plugin minor 1.37.0 -> 1.39.0 age adoption passing confidence
io.github.takahirom.roborazzi:roborazzi-accessibility-check dependencies minor 1.37.0 -> 1.39.0 age adoption passing confidence
io.github.takahirom.roborazzi:roborazzi dependencies minor 1.37.0 -> 1.39.0 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-serialization-json dependencies minor 1.7.3 -> 1.8.0 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-coroutines-test dependencies patch 1.10.0 -> 1.10.1 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-coroutines-guava dependencies patch 1.10.0 -> 1.10.1 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-coroutines-android dependencies patch 1.10.0 -> 1.10.1 age adoption passing confidence
org.jetbrains.kotlinx:kotlinx-coroutines-core dependencies patch 1.10.0 -> 1.10.1 age adoption passing confidence
com.google.dagger.hilt.android plugin minor 2.53.1 -> 2.54 age adoption passing confidence
com.google.dagger:hilt-core dependencies minor 2.53.1 -> 2.54 age adoption passing confidence
com.google.dagger:hilt-compiler dependencies minor 2.53.1 -> 2.54 age adoption passing confidence
com.google.dagger:hilt-android-testing dependencies minor 2.53.1 -> 2.54 age adoption passing confidence
com.google.dagger:hilt-android dependencies minor 2.53.1 -> 2.54 age adoption passing confidence
com.android.tools:desugar_jdk_libs dependencies patch 2.1.3 -> 2.1.4 age adoption passing confidence

Release Notes

gradle/gradle (gradle)

v8.12

Compare Source

takahirom/roborazzi (io.github.takahirom.roborazzi)

v1.39.0

Compare Source

Bug Fixes
Diff screenshots are now as large as the largest of the two compared screenshots

Previously, when the size of a screenshot changed (e.g., became smaller), the image diff would not appear because it was based on the minimum size of each screenshot. This has been fixed so that the diff is now based on the largest of the two compared screenshots. Thank you for reporting this issue, @​outadoc!

Report HTML's image order is now deterministic

The image order in the HTML report used to be random. Thanks to @​mannodermaus, it is now sorted by name.

OpenAiAiAssertionModel is now Gemini compatible

Gemini has a compatibility mode with the OpenAI API (https://ai.google.dev/gemini-api/docs/openai). By using https://generativelanguage.googleapis.com/v1beta/openai/ as the base URL, we can essentially use Gemini. However, some properties are different, so we had to modify the OpenAiAiAssertionModel to be compatible with Gemini.

I'm currently developing another library called Arbigent, an AI agent testing framework. I'm planning to add an AI image assertion feature using Roborazzi's AI-Powered Image Assertion, and I needed this compatibility for that. This isn't directly related to this project, but if you're interested in testing, check it out: https://github.com/takahirom/arbigent

What's Changed

Full Changelog: takahirom/roborazzi@1.38.0...1.39.0

v1.38.0

Compare Source

Bugfix
Fix: Bug preventing the revival of deleted screenshot images

Thanks to @​pedromfmachado's contribution, we've addressed a bug where deleted screenshot test images would be erroneously revived. Previously, when screenshot tests were removed and their corresponding images deleted from the output directory, running the record task again would cause the Roborazzi Gradle task to recreate the removed images. While this could be temporarily resolved with roborazzi.cleanupOldScreenshots=true, that approach was undesirable as it would also remove images when test filters were used. This was a complex issue to solve, and we extend our gratitude to @​pedromfmachado for the fix.

Fix: Made screenshot dump deterministic

We have a dump feature that allows us to check the properties or hierarchy of views or composables in an image. We sorted the properties to ensure a deterministic output. Thanks to @​siarhei-luskanau for this contribution.

New Feature
Feature: Added RoborazziComposeActivityThemeOption

Previously, changing the theme of RoborazziTransparentActivity was not possible. We have now deprecated RoborazziTransparentActivity and renamed it to RoborazziActivity. Additionally, we added RoborazziComposeActivityThemeOption to enable changing the Activity's theme. Thank you again, @​pedromfmachado, for this feature.

You can now change the Activity theme like this:

 @​OptIn(ExperimentalRoborazziApi::class)
 @​Test
 fun whenNonTransparentThemeItShouldHaveNonTransparentBackground() {
   captureRoboImage(
     roborazziComposeOptions = RoborazziComposeOptions {
       activityTheme(android.R.style.Theme_Material_Light)
     }
   ) {
     Text("This composable function should NOT have transparent background!")
   }
 }
What's Changed
New Contributors

Full Changelog: takahirom/roborazzi@1.37.0...1.38.0

Kotlin/kotlinx.serialization (org.jetbrains.kotlinx:kotlinx-serialization-json)

v1.8.0

==================

This is a release candidate for the next version. It is based on Kotlin 2.1.0 and includes a few new features, as well
as bugfixes and improvements:

@JsonIgnoreUnknownKeys annotation

Previously, only global setting JsonBuilder.ignoreUnknownKeys controlled whether Json parser would throw exception if
input contained a property that was not declared in a @Serializable class.
There were a lot of complaints that this setting is not
flexible enough.
To address them, we added new @JsonIgnoreUnknownKeys annotation that can be applied on a per-class basis.
With this annotation, it is possible to allow unknown properties for annotated classes, while
general decoding methods (such as Json.decodeFromString and others) would still reject them for everything else.
See details in the corresponding PR.

Stabilization of SerialDescriptor API and @SealedSerializationApi annotation

SerialDescriptor, SerialKind, and related API has been around for a long time and has proven itself useful.
The main reason @ExperimentalSerializationApi was on SerialDescriptor's properties is that we wanted to discourage
people from subclassing it.
Fortunately, Kotlin 2.1 provides a special mechanism for such a
case — SubclassOptInRequired.
New kotlinx.serialization.SealedSerializationApi annotation designates APIs
as public for use, but closed for implementation — the case for SerialDescriptor, which is a non-sealed interface for
technical reasons.
Now you can use most of SerialDescriptor and its builders API without the need to opt-in into experimental
serialization API.
See the PR for more details.

Note: All SerialKinds are stable API now, except PolymorphicKind — we may want to expand it in the future.

Generate Java 8's default method implementations in interfaces

TL;DR This change ensures better binary compatibility in the future for library. You should not experience any
difference from it.

kotlinx.serialization library contains a lot of interfaces with default method implementations. Historically, Kotlin
compiled a synthetic DefaultImpls class for them.
Starting from Kotlin 1.4,
it was possible to compile them using as Java 8's default methods to ensure
that new methods can still be added to interfaces without the need for implementors to recompile.
To preserve binary compatibility with existing clients, a special all-compatbility mode is supported in compiler
to generate both default methods and synthetic DefaultImpls class.

Now, kotlinx.serialization finally makes use of this all-compatibility mode,
which potentially allows us to add new methods to interfaces such as SerialDescriptor, Encoder, Decoder, etc.,
without breaking existing clients. This change is expected to have no effect on existing clients, and no action from
your side is required.
Note that Kotlin 2.2 plans to enable all-compatibility
mode by default.

Other bugfixes and improvements

  • Correctly skip structures with Cbor.ignoreUnknownKeys setting (#​2873)
  • Handle missing system property without NPE (#​2867)
  • Fixed keeping INSTANCE field and serializer function for serializable objects in R8 full mode (#​2865)
  • Correctly parse invalid numbers in JsonLiteral.long and other extensions (#​2852)
  • Correctly handle serial name conflict for different classes in SerializersModule.overwriteWith (#​2856)
  • Add inline reified version of encodeToString as a Json member to streamline the experience for newcomers. (#​2853)
  • Do not check kind or discriminator collisions for subclasses' polymorphic serializers if Json.classDiscriminatorMode
    is set to NONE (#​2833)
Kotlin/kotlinx.coroutines (org.jetbrains.kotlinx:kotlinx-coroutines-test)

v1.10.1

Compare Source

  • Fixed binary incompatibility introduced for non-JVM targets in #​4261 (#​4309).
google/desugar_jdk_libs (com.android.tools:desugar_jdk_libs)

v2.1.4

  • Fix Narrow non Standalone Week Names on some locales. SIMPLIFIED_CHINESE and
    TRADITIONAL_CHINESE is on the last code point convention for narrow format.
    This is a follow up to 2.1.3 using the same values as Standalone Week Names.

Configuration

📅 Schedule: Branch creation - "* 0-3 * * *" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/all branch 12 times, most recently from 7adf34d to d1c1952 Compare December 22, 2024 12:42
@SimonMarquis
Copy link
Contributor

@dturner not sure why @renovate-bot keeps rebasing the PR (multiple times each day) 🤔
It is currently configured to rebase only when behind base branch, which is not the case. Any idea why does it do that?

@renovate renovate bot force-pushed the renovate/all branch 17 times, most recently from 8a807d8 to 6dd3288 Compare December 24, 2024 15:49
@renovate renovate bot force-pushed the renovate/all branch 20 times, most recently from 5c84895 to 9d7cbe9 Compare December 28, 2024 10:15
@renovate renovate bot force-pushed the renovate/all branch 4 times, most recently from 33076c9 to 018ff43 Compare January 6, 2025 16:50
@dturner dturner merged commit b89e331 into main Jan 6, 2025
2 checks passed
@dturner dturner deleted the renovate/all branch January 6, 2025 18:39
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.

2 participants