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

New method for computing User updates that uses ETag #163

Merged
merged 2 commits into from
Jan 23, 2025

Conversation

wkal-pubnub
Copy link
Contributor

@wkal-pubnub wkal-pubnub commented Jan 20, 2025

feat: Added a new version of User.update that can be used to update data on the server without losing intermediate updates that might have happened in the time between when the object was last received and updated.
feat: Added the ability to mute and unmute users through Chat.mutedUsers.muteUser() / unmuteUser()
feat: Added the option to automatically sync the mute list using App Context by enabling ChatConfiguration.syncMutedUsers
feat: Added missing function to parse quoted message text into parts.
fix: Fixes the problem of overwriting custom data at regular intervals when storeUserActivityInterval is enabled.

settings.gradle.kts Outdated Show resolved Hide resolved
email = previousUser.email + "1"
custom = createCustomObject(previousUser.custom!! + ("abc" to 1))
type = previousUser.type + "1"
status = previousUser.status + "1"
Copy link
Contributor

Choose a reason for hiding this comment

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

What will happen when on server status is null and here we don't specify it? Will it be set to null on server?

Copy link
Contributor Author

@wkal-pubnub wkal-pubnub Jan 22, 2025

Choose a reason for hiding this comment

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

setting null to any field here means "no change", which is unrelated to changes in this PR and consistent with how setUUIDMetadata always worked in our SDKs

that's because our SDKs (Kotlin, Swift, JS) don't currently actually support setting a field to null. We'd need to change the SDKs to start supporting something like PatchValue (that we have for reading data) for setting data. And then there'd be a difference between PatchValue.of(null) and just null (no change).

Fixes the problem of overwriting custom data at regular intervals
when `storeUserActivityInterval` is enabled.
@wkal-pubnub
Copy link
Contributor Author

@pubnub-release-bot release kotlin as 0.11.0

@wkal-pubnub wkal-pubnub merged commit d59ff18 into master Jan 23, 2025
2 checks passed
@wkal-pubnub wkal-pubnub deleted the wkal/use_etag_user branch January 23, 2025 09:16
@pubnub-release-bot
Copy link
Contributor

🚀 Release successfully completed 🚀

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