From 559eb38de17a4a4045a56f1da6c642dfb7e53abe Mon Sep 17 00:00:00 2001 From: nkzawa Date: Fri, 14 Jul 2017 14:50:44 +0900 Subject: [PATCH 1/7] [maven-release-plugin] prepare for next development iteration --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index e04ce098..e722fc2f 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 io.socket engine.io-client - 1.0.0 + 1.0.1-SNAPSHOT jar engine.io-client Engine.IO Client Library for Java @@ -30,7 +30,7 @@ https://github.com/socketio/engine.io-client-java scm:git:https://github.com/socketio/engine.io-client-java.git scm:git:https://github.com/socketio/engine.io-client-java.git - engine.io-client-1.0.0 + HEAD From 9a7176bae6b9c7e1300545c94bf6b421d8a27a2a Mon Sep 17 00:00:00 2001 From: Damien Arrachequesne Date: Tue, 8 Dec 2020 09:52:30 +0100 Subject: [PATCH 2/7] ci: migrate to GitHub Actions Due to the recent changes to the Travis CI platform (see [1]), we will now use GitHub Actions to run the tests. Note: the certificate was updated because it failed with newer Node.js versions ``` _tls_common.js:129 c.context.setCert(cert); ^ Error: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small at Object.createSecureContext (_tls_common.js:129:17) at Server.setSecureContext (_tls_wrap.js:1328:27) ``` Reference: https://docs.github.com/en/free-pro-team@latest/actions/guides/building-and-testing-java-with-maven [1]: https://blog.travis-ci.com/2020-11-02-travis-ci-new-billing --- .github/workflows/ci.yml | 34 ++++++++++++++++ .travis.yml | 7 ---- README.md | 3 +- .../engineio/client/SSLConnectionTest.java | 2 +- src/test/resources/cert.pem | 27 +++++++++---- src/test/resources/key.pem | 37 +++++++++++++----- src/test/resources/keystore.jks | Bin 859 -> 941 bytes 7 files changed, 84 insertions(+), 26 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..2d3e1343 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,34 @@ +name: CI + +on: + push: + pull_request: + schedule: + - cron: '0 0 * * 0' + +jobs: + verify: + runs-on: ubuntu-latest + + strategy: + matrix: + java: [8, 11] + + steps: + - uses: actions/checkout@v2 + - name: Setup java + uses: actions/setup-java@v1 + with: + java-version: ${{ matrix.java }} + - name: Cache Maven packages + uses: actions/cache@v2 + with: + path: ~/.m2 + key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} + restore-keys: ${{ runner.os }}-m2 + - name: Setup Node.js + uses: actions/setup-node@v1 + with: + node-version: 14.x + - name: Run the Maven verify phase + run: mvn verify -Dgpg.skip=true diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 84c2bc29..00000000 --- a/.travis.yml +++ /dev/null @@ -1,7 +0,0 @@ -language: java -sudo: false -install: mvn install -DskipTests=true -Dgpg.skip=true -jdk: - - openjdk7 - - oraclejdk8 -dist: trusty diff --git a/README.md b/README.md index 8abe70ae..587c387f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # Engine.IO-client Java -[![Build Status](https://travis-ci.org/socketio/engine.io-client-java.png?branch=master)](https://travis-ci.org/socketio/engine.io-client-java) + +[![Build Status](https://github.com/socketio/engine.io-client-java/workflows/CI/badge.svg)](https://github.com/socketio/engine.io-client-java/actions) This is the Engine.IO Client Library for Java, which is simply ported from the [JavaScript client](https://github.com/socketio/engine.io-client). diff --git a/src/test/java/io/socket/engineio/client/SSLConnectionTest.java b/src/test/java/io/socket/engineio/client/SSLConnectionTest.java index 2e6a128f..1405e4df 100644 --- a/src/test/java/io/socket/engineio/client/SSLConnectionTest.java +++ b/src/test/java/io/socket/engineio/client/SSLConnectionTest.java @@ -52,7 +52,7 @@ private static void prepareOkHttpClient() throws GeneralSecurityException, IOExc TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509"); tmf.init(ks); - SSLContext sslContext = SSLContext.getInstance("TLSv1"); + SSLContext sslContext = SSLContext.getInstance("TLS"); sslContext.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null); sOkHttpClient = new OkHttpClient.Builder() diff --git a/src/test/resources/cert.pem b/src/test/resources/cert.pem index bea755ce..00d8bffe 100644 --- a/src/test/resources/cert.pem +++ b/src/test/resources/cert.pem @@ -1,10 +1,21 @@ -----BEGIN CERTIFICATE----- -MIIBfDCCASYCCQDTnGd/oOyF1DANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJB -VTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lkZ2l0 -cyBQdHkgTHRkMB4XDTE0MDcwNzEzMTUzN1oXDTQxMTEyMTEzMTUzN1owRTELMAkG -A1UEBhMCQVUxEzARBgNVBAgTClNvbWUtU3RhdGUxITAfBgNVBAoTGEludGVybmV0 -IFdpZGdpdHMgUHR5IEx0ZDBcMA0GCSqGSIb3DQEBAQUAA0sAMEgCQQC6sdeFPlqk -5Pap9woFx1RO05gLidw4MNcL+ZRSxy/sNeE4PhT/RLFcEvnXiHc92wT8YB5Z+WCM -k/jRQ0q19PNPAgMBAAEwDQYJKoZIhvcNAQEFBQADQQCnmm1N/yZiMBZw2JDfbsx3 -ecc0BGQ2BwWQuGHzP07TMi1AuOyNZSczl907OphYb9iRC8shZ4O+oXjQAuGTQ1Hp +MIIDazCCAlOgAwIBAgIUL0sTZnQmQ4K4o4NqeA1VAsKrn20wDQYJKoZIhvcNAQEL +BQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoM +GEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDAeFw0yMDEyMDgwOTE3NDlaFw0zMDEy +MDYwOTE3NDlaMEUxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEw +HwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDKCTIWvz8s+SjqjxOSmQSF3hvQVjfuIxAwCqKYKdiO +4ix72gkM2WRtzb6icOpDF9zVmcN2QIUXC+hvmVLVMGISZBA4qnGpRwGfVsJlxkO/ +yIOQ4OVn8tJHT+qv9sE656CV+yMbhcoR4E6n03hXcyRz44f14rz1yHz1cjrsDCqa +HfjQkMjXEi/oiOYvGOr7EqAlf0fHyne/FdRg3sfqjy9GXxD4djEzBt6ug11cIjvw +21lP3jC2Te9gng+9cxGlmBYZ6l2OxDZQYjVfOlhTEGOc/J1fP1cVXt/P1fJ5byR8 +ltN6KCcorPwxa6rtCEVy3PXdnKTj1eX5UocIRYVj3e57AgMBAAGjUzBRMB0GA1Ud +DgQWBBRJPJeTbeYMbtebcMKinxhVgr8x/TAfBgNVHSMEGDAWgBRJPJeTbeYMbteb +cMKinxhVgr8x/TAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQC1 +VLs5pldkzYoXI+3ry6TTTDxG/AJ1g/GKC4AXp9V+v44FA/dzD8dWVAGKLE/C1IYj +tm3VDeKBGTIgk5EFm0SI0bfgvJwOkSg0WJiX5rrvaXDB2J1tZX50XKZq68BYCiq9 +Qm41bSVV7xccRr7XG2bpKzHqbfjCDIDRdG8WnuTtysVGXMmjObPnrR8SoFVmrGcR +nrkGgp//QWNlGVRYL6cHbkt6eLjDTWJxeKUIN0SlSKOP52Olh1GWBxTeQtnP9VUY +yoj8Fj4lHaCAOlS5W9/kAJSTiLNnmi7v3eKYi+5wuHMFKxr/yRyaUloq78uaBJxa +Y2xdMyPo+uzo0rAXGoUT -----END CERTIFICATE----- diff --git a/src/test/resources/key.pem b/src/test/resources/key.pem index 4a78a226..0c2ddfc3 100644 --- a/src/test/resources/key.pem +++ b/src/test/resources/key.pem @@ -1,9 +1,28 @@ ------BEGIN RSA PRIVATE KEY----- -MIIBOwIBAAJBALqx14U+WqTk9qn3CgXHVE7TmAuJ3Dgw1wv5lFLHL+w14Tg+FP9E -sVwS+deIdz3bBPxgHln5YIyT+NFDSrX0808CAwEAAQJAIdwLSIEsk2drTRwe1zl1 -ku5RTxZruE0zU1qqifDSQjab1StAK1tapxBVRlRlyLCfD704UClsU8sjGtq0Nh6n -kQIhAO2YJM1g0w9bWYet3zC2UdEASPzaQ7llpZmc51NRBx2NAiEAyShICAaclEuy -wwuD4hibV+b6I8CLYoyPBo32EaceN0sCIQCUed6NxfM/houlgV+Xtmfcnzv9X3yx -EDdzjpz08Q7sRQIgZFv1fBOYYSBXQppnJRFzx2pUmCvDHtrTrMh84RfIqnsCIQCf -JjNXXxOaHn1PNZpi6EHReiFQmy1Swt+AxpTsKixsfA== ------END RSA PRIVATE KEY----- +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDKCTIWvz8s+Sjq +jxOSmQSF3hvQVjfuIxAwCqKYKdiO4ix72gkM2WRtzb6icOpDF9zVmcN2QIUXC+hv +mVLVMGISZBA4qnGpRwGfVsJlxkO/yIOQ4OVn8tJHT+qv9sE656CV+yMbhcoR4E6n +03hXcyRz44f14rz1yHz1cjrsDCqaHfjQkMjXEi/oiOYvGOr7EqAlf0fHyne/FdRg +3sfqjy9GXxD4djEzBt6ug11cIjvw21lP3jC2Te9gng+9cxGlmBYZ6l2OxDZQYjVf +OlhTEGOc/J1fP1cVXt/P1fJ5byR8ltN6KCcorPwxa6rtCEVy3PXdnKTj1eX5UocI +RYVj3e57AgMBAAECggEAMuJiBSyhwrf2QC1M5q03YGfyZWRxrb6TAyaKkPxpGIOK +ZJ8jjGLsUmNxUgRSXBeUfQ+/FPdnDcjn/8OEA0GuUad2Fm+HNPU3SWRWjb+DrLfZ +uxGJdcbIg0FzgGILhMR1w5B+5R2rKRlvdgFi29OaKL3zrlAu+1BFeKQOhwkBadMT +9Z7lFi4dUPCpgtm7F0lM5jMQvHslGtPu/VQTyrAvdyJjDtXfqDYFXMFgxyUuy0wh +dtMCxfnzePXDbS1D9wgzw1Dmmx/4gWoE80IHOUs7nzM1hPHQs8Qyr5ZFQ0iHq6DC +qcixIwRxZwunNyZ7M+JEPsSM20d0TF5FLFkw44Y9AQKBgQDvKCFbJTqD8yxTlD3H +sPKQCd4s08hR4E+sXnr3fF4ExyX1VwEPzev9fK4ez8pbQVFeuv0o89QhDQBJEGIu +HG0f2fYYcfil3+b3NYBTTEt+IIvhEE2LLCV1zkFe0uoG+qbZjksaHeXZ77TnKnGd +nTWHhoKZ7xMbKJzROUoMJ7GwuwKBgQDYQ8varcqW6UO4LS87OHA2lEs66OfJxnBk +Oox+Z34HXOsXlEqArx8S5/cX4/EM8UECobaqIQKzkvgRA5krL2Vroh588kJXf3yK +O5wESuE7zimg+m2RYnazXpdyxvgWhp1WSZzrm6ybJVCtUiY0x4SAaIWnU102JNMX +oge093K9QQKBgQCaJTKCrdcubxEV+clsKWfeYQ3btNE7vKl9vxPg6j8rMzULEf30 +MtS1eKQ95c5WzR3mQf2kZKxIdTnG3hF6CQZo7jKJhQQv3cXfdpN0nQtXiyC9eqWQ +W271pHBL7wO6ZdofBXDwr26T7sWZ7ah3X3m+FXuePhMBgUa6MAPDG96SuwKBgQDE +H096hArqKqaQGuHvWbJhvMAwr1Csqnn4WyRX6bDgKoLEgmXCJ44NjjGGB9/tdcgY +A+Fsjb0ubsTqYRIBmNzn7ECr3OMPCH0/uuk091ck7kTQSOseYmX1Kn47x3bqrq92 +thFJlYbFt+RfGdWuHZXrAV7brH0mgeSxVO6aTaFPQQKBgQDfkqfxQRmLEwIJygfk +Y1XwEvZqIf0gCZEHWPsGiYExClHc21RZSTbhc+XZ8DTgxYe375uMV6z5aolwjjrI +9bTMejqAC4l58rxdkE1NbxvQVbPwTdM/H4HyYJk9IPKSF0A11YLbalvGo0liWHKo +jfrYDnesTOn3+RLPe6G0K7jFgQ== +-----END PRIVATE KEY----- diff --git a/src/test/resources/keystore.jks b/src/test/resources/keystore.jks index 24c507bacc738aa6c51ef2948f26ec1d8d8fe416..3884f8a689b4c42ebc35f4e8f0631f8d69e9df6b 100644 GIT binary patch literal 941 zcmezO_TO6u1_mY|W(3o$xs}zsAwP$66E5M@XRYoEy_zRQ3%gWNzW`PRtPAmRPZTD zF_07IH8LE~X|%MutNzb$)8R>KC3glcn{Z^o20eqLR7x+Me(B(Vee%=PY@A_36)` zb`ICpxnV1!yosnT{$ZpGJ;VEak#FgK^KE33!kB!?O zrqbq*UEB@g%dgh$?_*{DUd(?yEQGO3$N$ikHsx)(S9u>bN*XClp2#}erQ_oE2Ycr5 zP1G=nm@)m?uJ@S*2XD;HO|2`5S(f$sKm?c8UZ*_MT-DI`;xcagu1lxA)HZyT`{NK# z!^M((v3XD4o;vClb8@le=I3kWg%*UStw|T0x09`D{(r~hRLPJC{pIX=-c=Pl4*Mn* zRxIT(cUkJOxc_>~G^Zl3=dDsiggkC>gR?1BcXke$)@pD;|B+_5=*mfrij zk7jhgE7(!Ysx9^Zq|B_KD6RLWXR*wQO3sNjR(|p8&5KJL#HCt=1&>X8ajJ(mf&1i= N@*1CXL-nJsvjJnCYz6=T literal 859 zcmezO_TO6u1_mY|W&~qKLmm2`#U#kc$jZRd#MsER zPD-`O=1F|QBTwE*IeWyGDm-B0JohKljs5zEP30#xyfir2@#5EIe)cNQDo54_4vmk} zGM6oKP*EcK!UrX3z9@ zZ>t}PU7YsyoU)c;eaF><#m?V$1^BKq{g{_iccLjdP!zUQserSMz@P_Qzsu zu^r~!te^XTg#7Yd^kD%j=Vnf8rM{XA%sW|sM!2i3b#4$AWxZ8>>eju(^Iy4cIDMYC zeZlfc>*kdC3oZVbYO8ghbzNq|)|2!9Ee~0^t^IqNO{IpG;7YM=JI}1UR6Zm9jF{R) z!|(s<*slNS{lDK;c1?oX&GXk?{%!D{-MCIU<@e#;eOCj&pO##1297J%2t88+OJF=T z0OP3!h}D=l87|LBuV3({^@;&68>d#AN85K^V5G4!7`Pg88*s8QhqABsr2J#?5E@27Jypq(Sywnnf@XVC-%#vb-fRaiDpOO> Date: Tue, 8 Dec 2020 11:13:18 +0100 Subject: [PATCH 3/7] chore: bump engine.io server version --- src/test/resources/package-lock.json | 143 +++++++++++---------------- src/test/resources/package.json | 2 +- 2 files changed, 61 insertions(+), 84 deletions(-) diff --git a/src/test/resources/package-lock.json b/src/test/resources/package-lock.json index 1cea6912..72697128 100644 --- a/src/test/resources/package-lock.json +++ b/src/test/resources/package-lock.json @@ -3,12 +3,12 @@ "lockfileVersion": 1, "dependencies": { "accepts": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz", - "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=", + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "requires": { - "mime-types": "2.1.15", - "negotiator": "0.6.1" + "mime-types": "~2.1.24", + "negotiator": "0.6.2" } }, "after": { @@ -17,22 +17,24 @@ "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=" }, "arraybuffer.slice": { - "version": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz", - "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=" + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==" }, "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=" + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", + "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=" }, "base64id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", - "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==" }, "blob": { - "version": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=" + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==" }, "cookie": { "version": "0.3.1", @@ -40,103 +42,78 @@ "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=" }, "debug": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", - "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "engine.io": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.0.tgz", - "integrity": "sha1-XKQ4486f28kVxKIcjdnhJmcG5X4=", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.4.2.tgz", + "integrity": "sha512-b4Q85dFkGw+TqgytGPrGgACRUhsdKc9S9ErRAXpPGy/CXKs4tYoHDkvIRdsseAF7NjfVwjRFIn6KTnbw7LwJZg==", "requires": { - "accepts": "1.3.3", - "base64id": "1.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", "cookie": "0.3.1", - "debug": "2.6.8", - "engine.io-parser": "2.1.1", - "uws": "0.14.5", - "ws": "2.3.1" + "debug": "~4.1.0", + "engine.io-parser": "~2.2.0", + "ws": "^7.1.2" } }, "engine.io-parser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.1.tgz", - "integrity": "sha1-4Ps/DgRi9/WLt3waUun1p+JuRmg=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", + "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", "requires": { "after": "0.8.2", - "arraybuffer.slice": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz", - "base64-arraybuffer": "0.1.5", - "blob": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "has-binary2": "1.0.2" + "arraybuffer.slice": "~0.0.7", + "base64-arraybuffer": "0.1.4", + "blob": "0.0.5", + "has-binary2": "~1.0.2" } }, "has-binary2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.2.tgz", - "integrity": "sha1-6D26SfC5vk0CbSc2U1DZ8D9Uvpg=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", + "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", "requires": { "isarray": "2.0.1" - }, - "dependencies": { - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=" - } } }, + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=" + }, "mime-db": { - "version": "1.27.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.27.0.tgz", - "integrity": "sha1-gg9XIpa70g7CXtVeW13oaeVDbrE=" + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { - "version": "2.1.15", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.15.tgz", - "integrity": "sha1-pOv1BkCUVpI3uM9wBGd20J/JKu0=", + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "requires": { - "mime-db": "1.27.0" + "mime-db": "1.44.0" } }, "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" - }, - "safe-buffer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", - "integrity": "sha1-0mPKVGls2KMGtcplUekt5XkY++c=" - }, - "uws": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/uws/-/uws-0.14.5.tgz", - "integrity": "sha1-Z6rzPEaypYel9mZtAPdpEyjxSdw=", - "optional": true + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, "ws": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-2.3.1.tgz", - "integrity": "sha1-a5Sz5EfLajY/eF6vlK9jWejoHIA=", - "requires": { - "safe-buffer": "5.0.1", - "ultron": "1.1.0" - }, - "dependencies": { - "ultron": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.0.tgz", - "integrity": "sha1-sHoualQagV/Go0zNRTO67DB8qGQ=" - } - } + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.1.tgz", + "integrity": "sha512-pTsP8UAfhy3sk1lSk/O/s4tjD0CRwvMnzvwr4OKGX7ZvqZtUyx4KIJB5JWbkykPoc55tixMGgTNoh3k4FkNGFQ==" } } } diff --git a/src/test/resources/package.json b/src/test/resources/package.json index f7c59176..d60498e5 100644 --- a/src/test/resources/package.json +++ b/src/test/resources/package.json @@ -1,6 +1,6 @@ { "private": true, "dependencies": { - "engine.io": "3.1.0" + "engine.io": "^3.4.2" } } From 6f065b7a62603730979d43cec71af0046ca4ab7c Mon Sep 17 00:00:00 2001 From: Jacek Mleczek Date: Fri, 15 Mar 2019 11:21:43 +0100 Subject: [PATCH 4/7] fix: handle responses without content type (#101) This fixes NullPointerException when response doesn't have content type. Exception stack trace: ``` java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String okhttp3.MediaType.toString()' on a null object reference at io.socket.engineio.client.transports.PollingXHR$Request.onLoad(PollingXHR.java:271) at io.socket.engineio.client.transports.PollingXHR$Request.access$700(PollingXHR.java:148) at io.socket.engineio.client.transports.PollingXHR$Request$1.onResponse(PollingXHR.java:232) at okhttp3.RealCall$AsyncCall.execute(RealCall.java:141) at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764) ``` --- .../java/io/socket/engineio/client/transports/PollingXHR.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/io/socket/engineio/client/transports/PollingXHR.java b/src/main/java/io/socket/engineio/client/transports/PollingXHR.java index ed118eb3..827c24f6 100644 --- a/src/main/java/io/socket/engineio/client/transports/PollingXHR.java +++ b/src/main/java/io/socket/engineio/client/transports/PollingXHR.java @@ -268,10 +268,10 @@ private void onResponseHeaders(Map> headers) { private void onLoad() { ResponseBody body = response.body(); - String contentType = body.contentType().toString(); + MediaType mediaType = body.contentType(); try { - if (BINARY_CONTENT_TYPE.equalsIgnoreCase(contentType)) { + if (mediaType != null && BINARY_CONTENT_TYPE.equalsIgnoreCase(mediaType.toString())) { this.onData(body.bytes()); } else { this.onData(body.string()); From 180db9516f830dd172f783070b54eea7d2781a94 Mon Sep 17 00:00:00 2001 From: Damien Arrachequesne Date: Tue, 8 Dec 2020 23:36:49 +0100 Subject: [PATCH 5/7] ci: add java 7 in the test matrix It was already present in the Travis test matrix. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2d3e1343..439755f9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,7 +12,7 @@ jobs: strategy: matrix: - java: [8, 11] + java: [7, 8, 11] steps: - uses: actions/checkout@v2 From 8016a5d7462f9379b4ad0f5660188c8626319ca6 Mon Sep 17 00:00:00 2001 From: Damien Arrachequesne Date: Thu, 10 Dec 2020 12:32:39 +0100 Subject: [PATCH 6/7] chore: bump OkHttp client version Versions above 3.12.x have dropped support for Java 7. Related: https://square.github.io/okhttp/changelog_3x/#version-3130 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e722fc2f..eb3d1491 100644 --- a/pom.xml +++ b/pom.xml @@ -49,7 +49,7 @@ com.squareup.okhttp3 okhttp - 3.8.1 + 3.12.12 org.json From 7b3cc94af99d90d439fd1e984c786ab112e75678 Mon Sep 17 00:00:00 2001 From: Damien Arrachequesne Date: Thu, 10 Dec 2020 14:07:39 +0100 Subject: [PATCH 7/7] chore(release): prepare release engine.io-client-1.0.1 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index eb3d1491..7560fefb 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 io.socket engine.io-client - 1.0.1-SNAPSHOT + 1.0.1 jar engine.io-client Engine.IO Client Library for Java @@ -30,7 +30,7 @@ https://github.com/socketio/engine.io-client-java scm:git:https://github.com/socketio/engine.io-client-java.git scm:git:https://github.com/socketio/engine.io-client-java.git - HEAD + engine.io-client-1.0.1