pubnub 5.3.4 → 5.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/commands-handler.yml +7 -6
- data/.github/workflows/release.yml +9 -8
- data/.github/workflows/run-tests.yml +18 -13
- data/.github/workflows/run-validations.yml +11 -9
- data/.pubnub.yml +24 -4
- data/CHANGELOG.md +96 -79
- data/Gemfile +1 -0
- data/Gemfile.lock +90 -70
- data/VERSION +1 -1
- data/lib/pubnub/client/events.rb +10 -8
- data/lib/pubnub/client.rb +97 -96
- data/lib/pubnub/constants.rb +4 -1
- data/lib/pubnub/event.rb +28 -23
- data/lib/pubnub/events/fetch_messages.rb +128 -0
- data/lib/pubnub/events/publish.rb +1 -0
- data/lib/pubnub/events/signal.rb +4 -0
- data/lib/pubnub/subscribe_event/formatter.rb +29 -16
- data/lib/pubnub/validators/fetch_messages.rb +41 -0
- data/lib/pubnub/version.rb +1 -1
- data/pubnub.gemspec +2 -2
- metadata +8 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29d9b1bf2b58050bd99d049ea2416ff1cfe3cd92ee813e335a54b3ca2e9ee7ac
|
4
|
+
data.tar.gz: 274b127f964ad0059b3edbf152397e761c4437206b08f98a8b61b95081e96a16
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 043f1102de6fa623327a91ba08a4d69a794b5e192970ee8607651f17c20cd0526d6e3dec0aa6cf299c3c6742c3af576e3e89e2664ca0461e8c60cb8d0e79f0cb
|
7
|
+
data.tar.gz: d8ad79fedee8ff7dc4bdeac2a044dafa91f8d5c6e67d35827e0e8657b1082cb4996c271feb4e4663497c8b408ade109674034956c522c7ac6663d8837f58ab29
|
@@ -11,11 +11,12 @@ jobs:
|
|
11
11
|
process:
|
12
12
|
name: Process command
|
13
13
|
if: github.event.issue.pull_request && endsWith(github.repository, '-private') != true
|
14
|
-
runs-on:
|
14
|
+
runs-on:
|
15
|
+
group: organization/Default
|
15
16
|
steps:
|
16
17
|
- name: Check referred user
|
17
18
|
id: user-check
|
18
|
-
env:
|
19
|
+
env:
|
19
20
|
CLEN_BOT: ${{ secrets.CLEN_BOT }}
|
20
21
|
run: echo "expected-user=${{ startsWith(github.event.comment.body, format('@{0} ', env.CLEN_BOT)) }}" >> $GITHUB_OUTPUT
|
21
22
|
- name: Regular comment
|
@@ -23,12 +24,12 @@ jobs:
|
|
23
24
|
run: echo -e "\033[38;2;19;181;255mThis is regular commit which should be ignored.\033[0m"
|
24
25
|
- name: Checkout repository
|
25
26
|
if: steps.user-check.outputs.expected-user == 'true'
|
26
|
-
uses: actions/checkout@
|
27
|
+
uses: actions/checkout@v4
|
27
28
|
with:
|
28
|
-
|
29
|
+
token: ${{ secrets.GH_TOKEN }}
|
29
30
|
- name: Checkout release actions
|
30
31
|
if: steps.user-check.outputs.expected-user == 'true'
|
31
|
-
uses: actions/checkout@
|
32
|
+
uses: actions/checkout@v4
|
32
33
|
with:
|
33
34
|
repository: pubnub/client-engineering-deployment-tools
|
34
35
|
ref: v1
|
@@ -40,4 +41,4 @@ jobs:
|
|
40
41
|
with:
|
41
42
|
token: ${{ secrets.GH_TOKEN }}
|
42
43
|
listener: ${{ secrets.CLEN_BOT }}
|
43
|
-
jira-api-key: ${{ secrets.JIRA_API_KEY }}
|
44
|
+
jira-api-key: ${{ secrets.JIRA_API_KEY }}
|
@@ -2,20 +2,20 @@ name: Automated product release
|
|
2
2
|
|
3
3
|
on:
|
4
4
|
pull_request:
|
5
|
-
branches: [
|
6
|
-
types: [
|
7
|
-
|
5
|
+
branches: [master]
|
6
|
+
types: [closed]
|
8
7
|
|
9
8
|
jobs:
|
10
9
|
check-release:
|
11
10
|
name: Check release required
|
12
|
-
runs-on: ubuntu-latest
|
13
11
|
if: ${{ github.event.pull_request.merged && endsWith(github.repository, '-private') != true }}
|
12
|
+
runs-on:
|
13
|
+
group: organization/Default
|
14
14
|
outputs:
|
15
15
|
release: ${{ steps.check.outputs.ready }}
|
16
16
|
steps:
|
17
17
|
- name: Checkout actions
|
18
|
-
uses: actions/checkout@
|
18
|
+
uses: actions/checkout@v4
|
19
19
|
with:
|
20
20
|
repository: pubnub/client-engineering-deployment-tools
|
21
21
|
ref: v1
|
@@ -28,17 +28,18 @@ jobs:
|
|
28
28
|
token: ${{ secrets.GH_TOKEN }}
|
29
29
|
publish:
|
30
30
|
name: Publish package
|
31
|
-
runs-on: ubuntu-latest
|
32
31
|
needs: check-release
|
33
32
|
if: ${{ needs.check-release.outputs.release == 'true' }}
|
33
|
+
runs-on:
|
34
|
+
group: organization/Default
|
34
35
|
steps:
|
35
36
|
- name: Checkout repository
|
36
|
-
uses: actions/checkout@
|
37
|
+
uses: actions/checkout@v4
|
37
38
|
with:
|
38
39
|
# This should be the same as the one specified for on.pull_request.branches
|
39
40
|
ref: master
|
40
41
|
- name: Checkout actions
|
41
|
-
uses: actions/checkout@
|
42
|
+
uses: actions/checkout@v4
|
42
43
|
with:
|
43
44
|
repository: pubnub/client-engineering-deployment-tools
|
44
45
|
ref: v1
|
@@ -16,12 +16,11 @@ env:
|
|
16
16
|
SDK_SUB_KEY: ${{ secrets.SDK_SUB_KEY }}
|
17
17
|
SDK_PUB_KEY: ${{ secrets.SDK_PUB_KEY }}
|
18
18
|
|
19
|
-
|
20
|
-
|
21
19
|
jobs:
|
22
20
|
tests:
|
23
21
|
name: Integration and Unit tests
|
24
|
-
runs-on:
|
22
|
+
runs-on:
|
23
|
+
group: organization/Default
|
25
24
|
env:
|
26
25
|
NO_COVERAGE: true
|
27
26
|
strategy:
|
@@ -30,11 +29,11 @@ jobs:
|
|
30
29
|
ruby: [ 3.0.6, 3.1.4, 3.2.3 ]
|
31
30
|
steps:
|
32
31
|
- name: Checkout repository
|
33
|
-
uses: actions/checkout@
|
32
|
+
uses: actions/checkout@v4
|
34
33
|
with:
|
35
34
|
token: ${{ secrets.GH_TOKEN }}
|
36
35
|
- name: Checkout actions
|
37
|
-
uses: actions/checkout@
|
36
|
+
uses: actions/checkout@v4
|
38
37
|
with:
|
39
38
|
repository: pubnub/client-engineering-deployment-tools
|
40
39
|
ref: v1
|
@@ -52,12 +51,13 @@ jobs:
|
|
52
51
|
uses: ./.github/.release/actions/actions/utils/fast-jobs-failure
|
53
52
|
acceptance-tests:
|
54
53
|
name: Acceptance tests
|
55
|
-
runs-on:
|
54
|
+
runs-on:
|
55
|
+
group: organization/Default
|
56
56
|
steps:
|
57
57
|
- name: Checkout project
|
58
|
-
uses: actions/checkout@
|
58
|
+
uses: actions/checkout@v4
|
59
59
|
- name: Checkout mock-server action
|
60
|
-
uses: actions/checkout@
|
60
|
+
uses: actions/checkout@v4
|
61
61
|
with:
|
62
62
|
repository: pubnub/client-engineering-deployment-tools
|
63
63
|
ref: v1
|
@@ -67,11 +67,15 @@ jobs:
|
|
67
67
|
uses: ./.github/.release/actions/actions/mock-server
|
68
68
|
with:
|
69
69
|
token: ${{ secrets.GH_TOKEN }}
|
70
|
-
- name: Setup Ruby 3.
|
70
|
+
- name: Setup Ruby 3.2.2
|
71
71
|
uses: ruby/setup-ruby@v1
|
72
72
|
with:
|
73
|
-
ruby-version: 3.
|
73
|
+
ruby-version: 3.2.2
|
74
74
|
bundler-cache: true
|
75
|
+
- name: Verify Ruby Version
|
76
|
+
run: ruby -v
|
77
|
+
- name: Check Ruby Version for Bundler
|
78
|
+
run: bundle exec ruby -v
|
75
79
|
- name: Run acceptance tests (optional)
|
76
80
|
run: bundle exec cucumber sdk-specifications/features/ -p mock -p run_beta -p report_beta -f pretty
|
77
81
|
continue-on-error: true
|
@@ -84,7 +88,7 @@ jobs:
|
|
84
88
|
jrm ./main.xml "./main/**/*.xml" &&
|
85
89
|
jrm ./beta.xml "./beta/**/*.xml"
|
86
90
|
- name: Expose acceptance tests reports
|
87
|
-
uses: actions/upload-artifact@
|
91
|
+
uses: actions/upload-artifact@v4
|
88
92
|
if: always()
|
89
93
|
with:
|
90
94
|
name: acceptance-test-reports
|
@@ -97,8 +101,9 @@ jobs:
|
|
97
101
|
uses: ./.github/.release/actions/actions/utils/fast-jobs-failure
|
98
102
|
all-tests:
|
99
103
|
name: Tests
|
100
|
-
runs-on: ubuntu-latest
|
101
104
|
needs: [ tests, acceptance-tests ]
|
105
|
+
runs-on:
|
106
|
+
group: organization/Default
|
102
107
|
steps:
|
103
108
|
- name: Tests summary
|
104
|
-
run: echo -e "\033[38;2;95;215;0m\033[1mAll tests successfully passed"
|
109
|
+
run: echo -e "\033[38;2;95;215;0m\033[1mAll tests successfully passed"
|
@@ -5,12 +5,13 @@ on: [push]
|
|
5
5
|
jobs:
|
6
6
|
pubnub-yml:
|
7
7
|
name: "Validate .pubnub.yml"
|
8
|
-
runs-on:
|
8
|
+
runs-on:
|
9
|
+
group: organization/Default
|
9
10
|
steps:
|
10
11
|
- name: Checkout project
|
11
|
-
uses: actions/checkout@
|
12
|
+
uses: actions/checkout@v4
|
12
13
|
- name: Checkout validator action
|
13
|
-
uses: actions/checkout@
|
14
|
+
uses: actions/checkout@v4
|
14
15
|
with:
|
15
16
|
repository: pubnub/client-engineering-deployment-tools
|
16
17
|
ref: v1
|
@@ -24,9 +25,10 @@ jobs:
|
|
24
25
|
if: failure()
|
25
26
|
uses: ./.github/.release/actions/actions/utils/fast-jobs-failure
|
26
27
|
all-validations:
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
28
|
+
name: Validations
|
29
|
+
needs: [pubnub-yml]
|
30
|
+
runs-on:
|
31
|
+
group: organization/Default
|
32
|
+
steps:
|
33
|
+
- name: Validations summary
|
34
|
+
run: echo -e "\033[38;2;95;215;0m\033[1mAll validations passed"
|
data/.pubnub.yml
CHANGED
@@ -1,6 +1,26 @@
|
|
1
1
|
---
|
2
|
-
version: "5.
|
2
|
+
version: "5.4.0"
|
3
3
|
changelog:
|
4
|
+
- date: 2025-01-07
|
5
|
+
version: v5.4.0
|
6
|
+
changes:
|
7
|
+
- type: feature
|
8
|
+
text: "Add batch history support."
|
9
|
+
- type: feature
|
10
|
+
text: "Add fetch messages with message reactions."
|
11
|
+
- type: feature
|
12
|
+
text: "Add fetch messages (batch history) endpoint support to fetch history for multiple channels."
|
13
|
+
- type: feature
|
14
|
+
text: "Add fetch messages with reactions support."
|
15
|
+
- type: feature
|
16
|
+
text: "Add `include_custom_message_type` support for fetch messages endpoint."
|
17
|
+
- type: feature
|
18
|
+
text: "Add `custom_message_type` support for `publish` / `signal` and `subscribe` endpoints."
|
19
|
+
- date: 2024-10-09
|
20
|
+
version: v5.3.5
|
21
|
+
changes:
|
22
|
+
- type: improvement
|
23
|
+
text: "Updated direct and transient dependency versions."
|
4
24
|
- date: 2024-04-29
|
5
25
|
version: v5.3.4
|
6
26
|
changes:
|
@@ -576,7 +596,7 @@ sdks:
|
|
576
596
|
- x86-64
|
577
597
|
- distribution-type: package
|
578
598
|
distribution-repository: RubyGems
|
579
|
-
package-name: pubnub-5.
|
599
|
+
package-name: pubnub-5.4.0.gem
|
580
600
|
location: https://rubygems.org/gems/pubnub
|
581
601
|
requires:
|
582
602
|
- name: addressable
|
@@ -681,8 +701,8 @@ sdks:
|
|
681
701
|
- x86-64
|
682
702
|
- distribution-type: library
|
683
703
|
distribution-repository: GitHub release
|
684
|
-
package-name: pubnub-5.
|
685
|
-
location: https://github.com/pubnub/ruby/releases/download/v5.
|
704
|
+
package-name: pubnub-5.4.0.gem
|
705
|
+
location: https://github.com/pubnub/ruby/releases/download/v5.4.0/pubnub-5.4.0.gem
|
686
706
|
requires:
|
687
707
|
- name: addressable
|
688
708
|
min-version: 2.0.0
|
data/CHANGELOG.md
CHANGED
@@ -1,82 +1,99 @@
|
|
1
|
-
## v5.
|
2
|
-
|
3
|
-
|
4
|
-
####
|
5
|
-
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
1
|
+
## v5.4.0
|
2
|
+
January 07 2025
|
3
|
+
|
4
|
+
#### Added
|
5
|
+
- Add batch history support.
|
6
|
+
- Add fetch messages with message reactions.
|
7
|
+
- Add fetch messages (batch history) endpoint support to fetch history for multiple channels.
|
8
|
+
- Add fetch messages with reactions support.
|
9
|
+
- Add `include_custom_message_type` support for fetch messages endpoint.
|
10
|
+
- Add `custom_message_type` support for `publish` / `signal` and `subscribe` endpoints.
|
11
|
+
|
12
|
+
## v5.3.5
|
13
|
+
October 09 2024
|
14
|
+
|
15
|
+
#### Modified
|
16
|
+
- Updated direct and transient dependency versions. Fixed the following issues reported by [@pboling](https://github.com/pboling): [#158](https://github.com/pubnub/ruby/issues/158).
|
17
|
+
|
18
|
+
## v5.3.4
|
19
|
+
April 29 2024
|
20
|
+
|
21
|
+
#### Fixed
|
22
|
+
- Fix issue because of which client didn't encode App Context get all event `filter` query value.
|
23
|
+
|
24
|
+
## v5.3.3
|
25
|
+
January 29 2024
|
26
|
+
|
27
|
+
#### Modified
|
28
|
+
- Bump required version to the minimum officially supported Ruby version.
|
29
|
+
|
30
|
+
## v5.3.2
|
31
|
+
November 23 2023
|
32
|
+
|
33
|
+
#### Modified
|
34
|
+
- Return source event data when a client configured with crypto is unable to decrypt it (can be not encrypted data or encrypted with different options).
|
35
|
+
|
36
|
+
## v5.3.1
|
37
|
+
November 03 2023
|
38
|
+
|
39
|
+
#### Modified
|
40
|
+
- Update license information.
|
41
|
+
|
42
|
+
## v5.3.0
|
43
|
+
October 16 2023
|
44
|
+
|
45
|
+
#### Added
|
46
|
+
- Add crypto module that allows to configure SDK to encrypt and decrypt messages.
|
47
|
+
|
48
|
+
#### Fixed
|
49
|
+
- Improved security of crypto implementation by adding enhanced AES-CBC cryptor.
|
50
|
+
|
51
|
+
## v5.2.2
|
52
|
+
March 14 2023
|
53
|
+
|
54
|
+
#### Fixed
|
55
|
+
- Fix issue which raised an exception when PubNub client has been configured with a secret key.
|
56
|
+
|
57
|
+
## v5.2.1
|
58
|
+
December 13 2022
|
59
|
+
|
60
|
+
#### Fixed
|
61
|
+
- Fix format which is used to return server data from `get_message_actions` method call.
|
62
|
+
|
63
|
+
## v5.2.0
|
64
|
+
December 12 2022
|
65
|
+
|
66
|
+
#### Added
|
67
|
+
- Add api which allow to work with message actions endpoints.
|
68
|
+
|
69
|
+
#### Modified
|
70
|
+
- Migrate test suite run from Travis to GitHub Actions.
|
71
|
+
|
72
|
+
## v5.1.2
|
73
|
+
November 23 2022
|
74
|
+
|
75
|
+
#### Fixed
|
76
|
+
- Fix issue because of which channel hasn't been encoded properly with endpoint call.
|
77
|
+
|
78
|
+
## v5.1.1
|
79
|
+
October 26 2022
|
80
|
+
|
81
|
+
#### Fixed
|
82
|
+
- Fix issue because of which `callback` and `http_sync` provided during client configuration not used when missing in method call.
|
83
|
+
|
84
|
+
## v5.1.0
|
85
|
+
July 26 2022
|
86
|
+
|
87
|
+
#### Added
|
88
|
+
- Add support for spaces and users permissions in grant_token.
|
89
|
+
- Add user_id and deprecate uuid when creating new pubnub instance.
|
90
|
+
|
91
|
+
## v5.0.0
|
92
|
+
January 13 2022
|
93
|
+
|
94
|
+
#### Modified
|
95
|
+
- BREAKING CHANGES: uuid is required parameter to create PubNub instance.
|
96
|
+
|
80
97
|
## v4.8.0
|
81
98
|
December 16 2021
|
82
99
|
|