Skip to content

Conversation

@jkuester
Copy link
Contributor

No description provided.

@jkuester jkuester marked this pull request as ready for review November 14, 2025 02:39
@jonathanbataire
Copy link
Contributor

mmmh nice! will have a look


import io.reactivex.rxjava3.core.Single;

@OptIn(markerClass = kotlinx.coroutines.ExperimentalCoroutinesApi.class)
Copy link
Contributor

@jonathanbataire jonathanbataire Nov 18, 2025

Choose a reason for hiding this comment

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

This is the problem i had as well
not sure we should be deploying experimental api in production as its not recommended (they are unstable / still in dev mode)
Not sure if its as bad as it sounds though but i steered away

Copy link
Contributor

@jonathanbataire jonathanbataire Nov 18, 2025

Choose a reason for hiding this comment

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

crazy part is that this java implementation is in googles official docs thats what confuses me

Copy link
Contributor

Choose a reason for hiding this comment

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

oh i cant find java documentation anymore 🤔

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Like I mentioned in your PR, I think the "experimental" part is not the really the datastore-preferences-rxjava3 library, itself, but that under the hood it is using Kotlin Coroutines which (at one point) were experimental). From Kotlin 1.3+, Coroutines are no longer experimental. I have not found any information as to why datastore-preferences-rxjava3 has not removed the annotation requirement, but everything I have read about coroutines suggests they are def "production ready".

Additionally, since your current approach also uses Kotlin coroutines (and calls them from Java), I cannot understand how they would not be tecnically makeing the same core operations that datastore-preferences-rxjava3 still has marked as "experimental".

At the end of the day, I am more comfortable with having this annotation than with trying to introduce Kotlin directly to the codebase.

return new MutablePreferences();
});
dataStore = new RxPreferenceDataStoreBuilder(context, DATASTORE_NAME)
.setCorruptionHandler(corruptionHandler)
Copy link
Contributor

Choose a reason for hiding this comment

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

nice
was getting errors for this couldn't get it to work :)

@jkuester jkuester merged commit a4a55a0 into 93-task-notifications Nov 20, 2025
8 checks passed
@jkuester jkuester deleted the jkuester-93-task-notifications branch November 20, 2025 16:53
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.

3 participants