pusher-js 8.4.2 → 8.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/release.yml +5 -5
- package/.github/workflows/release_pr.yml +4 -4
- package/.github/workflows/run-tests.yml +13 -8
- package/CHANGELOG.md +12 -0
- package/dist/node/pusher.js +5715 -5673
- package/dist/node/pusher.js.map +1 -1
- package/dist/react-native/pusher.js +2 -8
- package/dist/react-native/pusher.js.LICENSE.txt +7 -0
- package/dist/react-native/pusher.js.map +1 -1
- package/dist/web/pusher-with-encryption.js +353 -363
- package/dist/web/pusher-with-encryption.js.map +1 -1
- package/dist/web/pusher-with-encryption.min.js +2 -8
- package/dist/web/pusher-with-encryption.min.js.LICENSE.txt +7 -0
- package/dist/web/pusher-with-encryption.min.js.map +1 -1
- package/dist/web/pusher.js +340 -348
- package/dist/web/pusher.js.map +1 -1
- package/dist/web/pusher.min.js +2 -8
- package/dist/web/pusher.min.js.LICENSE.txt +7 -0
- package/dist/web/pusher.min.js.map +1 -1
- package/dist/worker/pusher-with-encryption.worker.js +327 -337
- package/dist/worker/pusher-with-encryption.worker.js.map +1 -1
- package/dist/worker/pusher-with-encryption.worker.min.js +2 -8
- package/dist/worker/pusher-with-encryption.worker.min.js.LICENSE.txt +7 -0
- package/dist/worker/pusher-with-encryption.worker.min.js.map +1 -1
- package/dist/worker/pusher.worker.js +314 -322
- package/dist/worker/pusher.worker.js.map +1 -1
- package/dist/worker/pusher.worker.min.js +2 -8
- package/dist/worker/pusher.worker.min.js.LICENSE.txt +7 -0
- package/dist/worker/pusher.worker.min.js.map +1 -1
- package/integration_tests_server/package-lock.json +565 -245
- package/integration_tests_server/package.json +2 -1
- package/package.json +21 -8
- package/spec/config/jasmine/webpack.integration.js +1 -1
- package/spec/config/jasmine/webpack.unit.js +1 -1
- package/spec/config/karma/config.ci.js +18 -18
- package/spec/javascripts/helpers/mocks.js +1 -0
- package/spec/javascripts/integration/index.web.js +14 -0
- package/spec/javascripts/unit/core/connection/connection_manager_spec.js +43 -0
- package/spec/javascripts/unit/core/pusher_spec.js +58 -0
- package/src/core/auth/options.ts +9 -11
- package/src/core/config.ts +23 -14
- package/src/core/connection/connection_manager.ts +9 -0
- package/src/core/options.ts +5 -0
- package/src/core/pusher.ts +17 -6
- package/types/src/core/auth/options.d.ts +5 -10
- package/types/src/core/connection/connection_manager.d.ts +1 -0
- package/types/src/core/options.d.ts +4 -0
- package/types/src/core/pusher.d.ts +3 -1
- package/webpack/config.node.js +1 -2
- package/webpack/config.react-native.js +1 -2
- package/webpack/config.shared.js +6 -6
- package/webpack/config.web.js +1 -2
- package/webpack/config.worker.js +1 -2
- package/webpack/dev.server.js +2 -9
|
@@ -7,7 +7,7 @@ jobs:
|
|
|
7
7
|
runs-on: ubuntu-latest
|
|
8
8
|
steps:
|
|
9
9
|
- name: Checkout code
|
|
10
|
-
uses: actions/checkout@
|
|
10
|
+
uses: actions/checkout@v6
|
|
11
11
|
with:
|
|
12
12
|
fetch-depth: 0
|
|
13
13
|
- name: Prepare tag
|
|
@@ -34,7 +34,7 @@ jobs:
|
|
|
34
34
|
needs: check-release-tag
|
|
35
35
|
if: ${{ needs.check-release-tag.outputs.tag }}
|
|
36
36
|
steps:
|
|
37
|
-
- uses: actions/checkout@
|
|
37
|
+
- uses: actions/checkout@v6
|
|
38
38
|
- name: Prepare tag
|
|
39
39
|
run: |
|
|
40
40
|
TAG=v$(jq -r '.version' package.json)
|
|
@@ -55,8 +55,8 @@ jobs:
|
|
|
55
55
|
runs-on: ubuntu-latest
|
|
56
56
|
needs: create-github-release
|
|
57
57
|
steps:
|
|
58
|
-
- uses: actions/checkout@
|
|
59
|
-
- uses: actions/setup-node@
|
|
58
|
+
- uses: actions/checkout@v6
|
|
59
|
+
- uses: actions/setup-node@v6
|
|
60
60
|
with:
|
|
61
61
|
node-version: '20'
|
|
62
62
|
registry-url: https://registry.npmjs.org/
|
|
@@ -77,7 +77,7 @@ jobs:
|
|
|
77
77
|
runs-on: ubuntu-latest
|
|
78
78
|
needs: create-github-release
|
|
79
79
|
steps:
|
|
80
|
-
- uses: actions/checkout@
|
|
80
|
+
- uses: actions/checkout@v6
|
|
81
81
|
- name: Upload to S3
|
|
82
82
|
run: |
|
|
83
83
|
VERSION=$(jq -r '.version' package.json | cut -d'.' -f1,2,3)
|
|
@@ -11,13 +11,13 @@ jobs:
|
|
|
11
11
|
name: Prepare release
|
|
12
12
|
runs-on: ubuntu-latest
|
|
13
13
|
steps:
|
|
14
|
-
- uses: actions/checkout@
|
|
14
|
+
- uses: actions/checkout@v6
|
|
15
15
|
- name: Get current version
|
|
16
16
|
shell: bash
|
|
17
17
|
run: |
|
|
18
18
|
CURRENT_VERSION=$(jq -r '.version' package.json)
|
|
19
19
|
echo "CURRENT_VERSION=$CURRENT_VERSION" >> $GITHUB_ENV
|
|
20
|
-
- uses: actions/checkout@
|
|
20
|
+
- uses: actions/checkout@v6
|
|
21
21
|
with:
|
|
22
22
|
repository: pusher/public_actions
|
|
23
23
|
path: .github/actions
|
|
@@ -25,9 +25,9 @@ jobs:
|
|
|
25
25
|
id: bump
|
|
26
26
|
with:
|
|
27
27
|
current_version: ${{ env.CURRENT_VERSION }}
|
|
28
|
-
- uses: actions/setup-node@
|
|
28
|
+
- uses: actions/setup-node@v6
|
|
29
29
|
with:
|
|
30
|
-
node-version: '
|
|
30
|
+
node-version: '20'
|
|
31
31
|
- run: npm install
|
|
32
32
|
- name: Push
|
|
33
33
|
shell: bash
|
|
@@ -12,11 +12,14 @@ jobs:
|
|
|
12
12
|
env:
|
|
13
13
|
CI: ${{ github.event_name == 'push' && 'basic' || 'full' }}
|
|
14
14
|
MINIMAL_INTEGRATION_TESTS: ${{ github.event_name == 'push' && 'true' || '' }}
|
|
15
|
+
# webpack 4 uses MD4 hashing which is unsupported in OpenSSL 3 (Node 17+).
|
|
16
|
+
# Remove once webpack is upgraded to v5.
|
|
17
|
+
NODE_OPTIONS: --openssl-legacy-provider
|
|
15
18
|
steps:
|
|
16
|
-
- uses: actions/checkout@
|
|
17
|
-
- uses: actions/setup-node@
|
|
19
|
+
- uses: actions/checkout@v6
|
|
20
|
+
- uses: actions/setup-node@v6
|
|
18
21
|
with:
|
|
19
|
-
node-version: '
|
|
22
|
+
node-version: '20'
|
|
20
23
|
- run: npm install
|
|
21
24
|
- run: npm run check-format
|
|
22
25
|
- run: make web_unit
|
|
@@ -34,15 +37,17 @@ jobs:
|
|
|
34
37
|
INTEGRATION_TESTS_APP_EU_APP_ID: ${{ secrets.INTEGRATION_TESTS_APP_EU_APP_ID }}
|
|
35
38
|
INTEGRATION_TESTS_APP_EU_KEY: ${{ secrets.INTEGRATION_TESTS_APP_EU_KEY }}
|
|
36
39
|
INTEGRATION_TESTS_APP_EU_SECRET: ${{ secrets.INTEGRATION_TESTS_APP_EU_SECRET }}
|
|
37
|
-
BROWSER_STACK_ACCESS_KEY: ${{ secrets.BROWSER_STACK_ACCESS_KEY }}
|
|
38
|
-
BROWSER_STACK_USERNAME: ${{ secrets.BROWSER_STACK_USERNAME }}
|
|
39
40
|
run-node-tests:
|
|
40
41
|
runs-on: ubuntu-latest
|
|
42
|
+
env:
|
|
43
|
+
# webpack 4 uses MD4 hashing which is unsupported in OpenSSL 3 (Node 17+).
|
|
44
|
+
# Remove once webpack is upgraded to v5.
|
|
45
|
+
NODE_OPTIONS: --openssl-legacy-provider
|
|
41
46
|
steps:
|
|
42
|
-
- uses: actions/checkout@
|
|
43
|
-
- uses: actions/setup-node@
|
|
47
|
+
- uses: actions/checkout@v6
|
|
48
|
+
- uses: actions/setup-node@v6
|
|
44
49
|
with:
|
|
45
|
-
node-version: '
|
|
50
|
+
node-version: '20'
|
|
46
51
|
- run: npm install
|
|
47
52
|
- run: npm run check-format
|
|
48
53
|
- run: make node_unit
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 8.5.0
|
|
4
|
+
|
|
5
|
+
- [ADDED] New `switchCluster` method on Pusher instances to switch cluster/app without losing channel subscriptions (PR #773)
|
|
6
|
+
- [FIXED] Persist previous options when switching cluster so custom handlers and other settings are retained (PR #783)
|
|
7
|
+
- [FIXED] Refactored `AuthOptionsT` to a discriminated union (`InternalAuthOptions | CustomAuthOptions`) for improved type safety
|
|
8
|
+
- [FIXED] Integration tests now run HTTP tests before HTTPS to avoid browser Strict-Transport-Security downgrade issues
|
|
9
|
+
|
|
10
|
+
## 8.4.3
|
|
11
|
+
|
|
12
|
+
- [FIXED] Pin additional transitive dependencies to patched versions to resolve known vulnerabilities (express, qs, body-parser, lodash, minimatch, browserstack-local)
|
|
13
|
+
- [FIXED] Bump integration_tests_server express dependency to resolve CVEs
|
|
14
|
+
|
|
3
15
|
## 8.4.2
|
|
4
16
|
|
|
5
17
|
- [CHANGED] Modernise release workflow: update action versions, replace deprecated flood-io/is-published-on-npm action with inline npm registry check
|