Skip to content

Commit 4f5c588

Browse files
Etag support for users and channels (#328)
* Etag support for users and channels A new optional parameter `ifMatchesEtag` is added to `setUUIDMetadata` and `setChannelMetadata`. When provided, the server checks the argument value with the ETag on the server and if they don't match a HTTP 412 error is returned. * PubNub SDK v10.4.0 release. --------- Co-authored-by: PubNub Release Bot <[email protected]>
1 parent 11f1678 commit 4f5c588

File tree

30 files changed

+248
-45
lines changed

30 files changed

+248
-45
lines changed

.github/workflows/commands-handler.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ jobs:
3535
ref: v1
3636
token: ${{ secrets.GH_TOKEN }}
3737
path: .github/.release/actions
38+
- name: Update CocoaPods trunk
39+
run: |
40+
pod repo update
3841
- name: Process changelog entries
3942
if: steps.user-check.outputs.expected-user == 'true'
4043
uses: ./.github/.release/actions/actions/commands

.github/workflows/release.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@ jobs:
5555
ref: v1
5656
token: ${{ secrets.GH_TOKEN }}
5757
path: .github/.release/actions
58+
- name: Update CocoaPods trunk
59+
run: |
60+
pod repo update
5861
- name: Publish to Maven
5962
uses: ./.github/.release/actions/actions/services/maven
6063
with:

.github/workflows/run-tests.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ jobs:
3333
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
3434
restore-keys: |
3535
${{ runner.os }}-gradle-
36+
- name: Update CocoaPods trunk
37+
run: |
38+
pod repo update
3639
- name: Build and run tests
3740
run: |
3841
./gradlew check

.github/workflows/run-validations.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ jobs:
5353
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
5454
restore-keys: |
5555
${{ runner.os }}-gradle-
56+
- name: Update CocoaPods trunk
57+
run: |
58+
pod repo update
5659
- name: Validate clean build
5760
run: ./gradlew ktlintFormat publishAllPublicationsToRepoRepository -PRELEASE_SIGNING_ENABLED=false
5861
- name: Cancel workflow runs for commit on error

.pubnub.yml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
name: kotlin
2-
version: 10.3.4
2+
version: 10.4.0
33
schema: 1
44
scm: github.com/pubnub/kotlin
55
files:
6-
- build/libs/pubnub-kotlin-10.3.4-all.jar
6+
- build/libs/pubnub-kotlin-10.4.0-all.jar
77
sdks:
88
-
99
type: library
@@ -23,8 +23,8 @@ sdks:
2323
-
2424
distribution-type: library
2525
distribution-repository: maven
26-
package-name: pubnub-kotlin-10.3.4
27-
location: https://repo.maven.apache.org/maven2/com/pubnub/pubnub-kotlin/10.3.4/pubnub-kotlin-10.3.4.jar
26+
package-name: pubnub-kotlin-10.4.0
27+
location: https://repo.maven.apache.org/maven2/com/pubnub/pubnub-kotlin/10.4.0/pubnub-kotlin-10.4.0.jar
2828
supported-platforms:
2929
supported-operating-systems:
3030
Android:
@@ -121,6 +121,11 @@ sdks:
121121
license-url: https://www.apache.org/licenses/LICENSE-2.0.txt
122122
is-required: Required
123123
changelog:
124+
- date: 2025-01-21
125+
version: v10.4.0
126+
changes:
127+
- type: feature
128+
text: "A new optional parameter `ifMatchesEtag` is added to `setUUIDMetadata` and `setChannelMetadata`. When provided, the server compares the argument value with the ETag on the server and if they don't match a HTTP 412 error is returned."
124129
- date: 2025-01-13
125130
version: v10.3.4
126131
changes:

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
## v10.4.0
2+
January 21 2025
3+
4+
#### Added
5+
- A new optional parameter `ifMatchesEtag` is added to `setUUIDMetadata` and `setChannelMetadata`. When provided, the server compares the argument value with the ETag on the server and if they don't match a HTTP 412 error is returned.
6+
17
## v10.3.4
28
January 13 2025
39

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ You will need the publish and subscribe keys to authenticate your app. Get your
2020
<dependency>
2121
<groupId>com.pubnub</groupId>
2222
<artifactId>pubnub-kotlin</artifactId>
23-
<version>10.3.4</version>
23+
<version>10.4.0</version>
2424
</dependency>
2525
```
2626

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ RELEASE_SIGNING_ENABLED=true
1818
SONATYPE_HOST=DEFAULT
1919
SONATYPE_AUTOMATIC_RELEASE=false
2020
GROUP=com.pubnub
21-
VERSION_NAME=10.3.4
21+
VERSION_NAME=10.4.0
2222
POM_PACKAGING=jar
2323

2424
POM_NAME=PubNub SDK

gradle/libs.versions.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ ktlint = "12.1.0"
1212
dokka = "1.9.20"
1313
kotlinx_datetime = "0.6.1"
1414
kotlinx_coroutines = "1.9.0"
15-
pubnub_js = "8.4.1"
16-
pubnub_swift = "8.2.4"
15+
pubnub_js = "8.6.0"
16+
pubnub_swift = "8.3.0"
1717

1818
[libraries]
1919
retrofit2 = { module = "com.squareup.retrofit2:retrofit", version.ref = "retrofit2" }

kotlin-js-store/yarn.lock

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -659,10 +659,26 @@ proxy-from-env@^1.1.0:
659659
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
660660
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
661661

662-
663-
version "8.4.0"
664-
resolved "https://registry.yarnpkg.com/pubnub/-/pubnub-8.4.0.tgz#8a5fdd3af9783abb1de44ea4145107e296c8394d"
665-
integrity sha512-HvkFhn4XcfR1wdJv4paX94I0TT4UBHW/vIuYnS+6XuoSx0AunJMCk5wbKnSesmdbzYUZa8Ag3H1mJQZKuyRy8Q==
662+
663+
version "8.4.1"
664+
resolved "https://registry.yarnpkg.com/pubnub/-/pubnub-8.4.1.tgz#5f6f19e84d3187dc8aee0a458bd6b05e90d43e6a"
665+
integrity sha512-mPlwVoHJDWPasZx52UfSMiPX5TATm5A+ficSogyqDqTQ4w5EQnwxH+PJdsWc0mPnlT051jM1vIISMeM0fQ30CQ==
666+
dependencies:
667+
agentkeepalive "^3.5.2"
668+
buffer "^6.0.3"
669+
cbor-js "^0.1.0"
670+
cbor-sync "^1.0.4"
671+
form-data "^4.0.0"
672+
lil-uuid "^0.1.1"
673+
node-fetch "^2.7.0"
674+
proxy-agent "^6.3.0"
675+
react-native-url-polyfill "^2.0.0"
676+
text-encoding "^0.7.0"
677+
678+
679+
version "8.6.0"
680+
resolved "https://registry.yarnpkg.com/pubnub/-/pubnub-8.6.0.tgz#75524e7ed3653090652d160ce83ac089362a0379"
681+
integrity sha512-LBCglooxiLkNT3ArUOvSJnLKK6/QdeshWY60IWlSQ+SkXlzEjt74wAnX5XriEXKsmza2yw9mFGG6+B5SlczRzA==
666682
dependencies:
667683
agentkeepalive "^3.5.2"
668684
buffer "^6.0.3"

0 commit comments

Comments
 (0)