Move UWS into separate plugin with proper case usage. (#5556)

Move UWS into separate plugin with proper case usage.

Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
Andrey Sobolev 2024-05-09 14:40:50 +07:00 committed by GitHub
parent 1075751fda
commit b4aceb7af3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 69 additions and 20 deletions

View File

@ -737,6 +737,9 @@ dependencies:
'@rush-temp/ui':
specifier: file:./projects/ui.tgz
version: file:projects/ui.tgz(@types/node@20.11.19)(esbuild@0.20.1)(postcss-load-config@4.0.2)(postcss@8.4.35)(ts-node@10.9.2)
'@rush-temp/uws':
specifier: file:./projects/uws.tgz
version: file:projects/uws.tgz
'@rush-temp/view':
specifier: file:./projects/view.tgz
version: file:projects/view.tgz(@types/node@20.11.19)(esbuild@0.20.1)(ts-node@10.9.2)
@ -19465,7 +19468,7 @@ packages:
dev: false
file:projects/login.tgz(@types/node@20.11.19)(esbuild@0.20.1)(ts-node@10.9.2):
resolution: {integrity: sha512-VYCM0fD7QjZglX1kp/CDjquuZvGDTwBFz9PmLsl3E347XTb465TANzyociaT619A6rTUQgFKPI7/rJ3575oOdA==, tarball: file:projects/login.tgz}
resolution: {integrity: sha512-D15IjHxENijzWEb3vfDRwT4UnLvNQ6OLXS1A4zDz7sESx1VTNqVugngYaiXlyiB39jvL6vgitbRerNdS5ZY+SQ==, tarball: file:projects/login.tgz}
id: file:projects/login.tgz
name: '@rush-temp/login'
version: 0.0.0
@ -20177,7 +20180,7 @@ packages:
dev: false
file:projects/model-server-lead.tgz:
resolution: {integrity: sha512-r6wm+ThuCo9qEUPFBf1+CUG9G6iFmSl3Azg0aRsBcudp3pGdPyih44ryGqZFKNMmlEr6Sp8k2vYq6Wzdmase5g==, tarball: file:projects/model-server-lead.tgz}
resolution: {integrity: sha512-kPDXfo9EMJDBdqL40UtgGuedn7iA3EFo4pAQGNBG2EPmhzl0khM432uTGS0qbkS42Pw+0+GtGWLN8Dmk0+LQFA==, tarball: file:projects/model-server-lead.tgz}
name: '@rush-temp/model-server-lead'
version: 0.0.0
dependencies:
@ -20386,7 +20389,7 @@ packages:
dev: false
file:projects/model-server-tracker.tgz:
resolution: {integrity: sha512-SqOOZxqJ6t5V35LVpzcQsMUnWB8seuLLHGy68XN8zBq/kE49oQ8+uPAw7UdMvP1gmw2jb1X0LdzE8iW1/T4vDQ==, tarball: file:projects/model-server-tracker.tgz}
resolution: {integrity: sha512-ARsXatu1A+oFcNAHxBHdmE0SknrsVKUVR0E/p+vPSZq10fgqBY4eX94GFb21IbZXcgXRpFte4YXrJstgb/fJUA==, tarball: file:projects/model-server-tracker.tgz}
name: '@rush-temp/model-server-tracker'
version: 0.0.0
dependencies:
@ -20500,7 +20503,7 @@ packages:
dev: false
file:projects/model-task.tgz:
resolution: {integrity: sha512-YZocNhXSv45yA2GYjG059U3vgSqE1U/8p0GmMxbCNVi+E/NYLib9tj+fCHNpqLkhw73iBYBgvYgx50SqqGSXBQ==, tarball: file:projects/model-task.tgz}
resolution: {integrity: sha512-E5o2lmz2SDx6psN2nz1FqyWiSN1Awe2adNfF1D+jJH4HMZ9Mg2Zbz6rlXOzh8nf30/X1MRXO6qRagpRet7WHBw==, tarball: file:projects/model-task.tgz}
name: '@rush-temp/model-task'
version: 0.0.0
dependencies:
@ -20595,7 +20598,7 @@ packages:
dev: false
file:projects/model-tracker.tgz:
resolution: {integrity: sha512-1yO1l+P72MnyqoZOk7ZdlC6piZLHTDHvdSzFniVsPrxQ7nbIVOCp0hmw+cjbYDQrhzJl8LMwUikfYPXP+auR7Q==, tarball: file:projects/model-tracker.tgz}
resolution: {integrity: sha512-7d48XWwnPlmsdBRqlswmRAIPegoB6Rh7t0Yqmx44gXMCYiexPkc0Tr38CecKGysMonJGP9453X+IP4SxUnQV/A==, tarball: file:projects/model-tracker.tgz}
name: '@rush-temp/model-tracker'
version: 0.0.0
dependencies:
@ -23254,7 +23257,7 @@ packages:
dev: false
file:projects/server-ws.tgz(esbuild@0.20.1)(ts-node@10.9.2):
resolution: {integrity: sha512-H+LX8du8Fflohly6Uv20gI7fhm+T6RRerOESTho9L1Dxgn0E8zXqD3XGrjEblNm94HR9/09uHrs2a7CWPaRAig==, tarball: file:projects/server-ws.tgz}
resolution: {integrity: sha512-TnxxDdcG9/0ee0e84vQ7EQuB/xcR5Pvn+Kduf40XlG7ruHsgB/swombYUMlcr+hruvZ0zAYXxeQKFby3v69RnQ==, tarball: file:projects/server-ws.tgz}
id: file:projects/server-ws.tgz
name: '@rush-temp/server-ws'
version: 0.0.0
@ -24357,7 +24360,7 @@ packages:
dev: false
file:projects/tool.tgz(bufferutil@4.0.8)(utf-8-validate@6.0.3):
resolution: {integrity: sha512-FapBriQDbhOPHpCCh3hiJAY68tHjzbF6r94xISTJxwsOsJNijAV9v7RFhTUnLiLcCuBSj9eovI7Mljd3CDZrAw==, tarball: file:projects/tool.tgz}
resolution: {integrity: sha512-aCu871KUBezC10ng0g9MwVF4UdeqlKVlMvLH4r0eBFvZx/XkEPiP++bL5dDuYo9o4cU2bhj+7uTzLCePUQVDZQ==, tarball: file:projects/tool.tgz}
id: file:projects/tool.tgz
name: '@rush-temp/tool'
version: 0.0.0
@ -24604,6 +24607,12 @@ packages:
- ts-node
dev: false
file:projects/uws.tgz:
resolution: {integrity: sha512-cJKrvv/9a935gnsLADANzT1ZcSe9j47NxbDaYX93htNBgTZRhke5VQ9zJ+hViufzd4u0aZNHRkdtnES7cPEHGw==, tarball: file:projects/uws.tgz}
name: '@rush-temp/uws'
version: 0.0.0
dev: false
file:projects/view-assets.tgz(esbuild@0.20.1)(ts-node@10.9.2):
resolution: {integrity: sha512-n1MVIlCSAY1sPPwfXhbGJLW2flWKXbbxAS3zne4t4ZsyqITQf4X+i7GUS4HZT7q8bIKzbTsV1VmPRPcUZBukdQ==, tarball: file:projects/view-assets.tgz}
id: file:projects/view-assets.tgz

View File

@ -476,6 +476,11 @@
"projectFolder": "server/ws",
"shouldPublish": false
},
{
"packageName": "@hcengineering/uws",
"projectFolder": "server/uws",
"shouldPublish": false
},
{
"packageName": "@hcengineering/dev-storage",
"projectFolder": "dev/storage",

View File

@ -0,0 +1,5 @@
{
"$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json",
"rigPackageName": "@hcengineering/platform-rig",
"rigProfile": "node"
}

29
server/uws/package.json Normal file
View File

@ -0,0 +1,29 @@
{
"name": "@hcengineering/uws",
"version": "0.6.0",
"main": "lib/uws.js",
"types": "lib/index.d.ts",
"author": "Anticrm Platform Contributors",
"template": "@hcengineering/node-package-uws",
"license": "EPL-2.0",
"exports": {
"import": "./lib/ESM_wrapper.mjs",
"require": "./lib/uws.js",
"types": "./lib/index.d.ts"
},
"scripts": {
"build": "./uws.sh",
"build:watch": "./uws.sh",
"test": "echo 'test'",
"format": "echo 'format'",
"_phase:build": "rushx build",
"_phase:test": "echo 'test'",
"_phase:format": "echo 'format'",
"_phase:validate": "./uws.sh"
},
"devDependencies": {
"@hcengineering/platform-rig": "^0.6.0"
},
"dependencies": {
}
}

8
server/uws/uws.sh Executable file
View File

@ -0,0 +1,8 @@
mkdir -p ./.build
cd ./.build
if ! test -f ./v20.43.0.zip; then
wget --quiet https://github.com/uNetworking/uWebSockets.js/archive/refs/tags/v20.43.0.zip
fi
if ! test -f ../lib/uws.js; then
unzip -qq -j -o ./v20.43.0.zip -d ../lib
fi

View File

@ -8,14 +8,14 @@
"template": "@hcengineering/node-package-ws",
"license": "EPL-2.0",
"scripts": {
"build": "./uws.sh && compile && cp ./src/uws/*.node ./lib/uws",
"build:watch": "./uws.sh && compile && cp ./src/uws/*.node ./lib/uws",
"build": "compile",
"build:watch": "compile",
"test": "jest --passWithNoTests --silent --forceExit",
"format": "format src",
"_phase:build": "./uws.sh && compile transpile src && cp ./src/uws/*.node ./lib/uws",
"_phase:build": "compile transpile src",
"_phase:test": "jest --passWithNoTests --silent --forceExit",
"_phase:format": "format src",
"_phase:validate": "./uws.sh && compile validate"
"_phase:validate": "compile validate"
},
"devDependencies": {
"@hcengineering/platform-rig": "^0.6.0",
@ -38,6 +38,7 @@
"typescript": "^5.3.3"
},
"dependencies": {
"@hcengineering/uws": "^0.6.0",
"@hcengineering/analytics": "^0.6.0",
"@hcengineering/core": "^0.6.28",
"@hcengineering/platform": "^0.6.9",

View File

@ -31,7 +31,7 @@ import {
} from './types'
import { doSessionOp, processRequest, type WebsocketData } from './utils'
import uWebSockets, { DISABLED, SHARED_COMPRESSOR, type HttpResponse, type WebSocket } from './uws'
import uWebSockets, { DISABLED, SHARED_COMPRESSOR, type HttpResponse, type WebSocket } from '@hcengineering/uws'
interface WebsocketUserData extends WebsocketData {
backPressure?: Promise<void>

View File

@ -1,8 +0,0 @@
if test -f ./src/server_u.ts; then
if ! test -f ./v20.43.0.zip; then
wget --quiet https://github.com/uNetworking/uWebSockets.js/archive/refs/tags/v20.43.0.zip
fi
if ! test -f ./src/uws/uws.js; then
unzip -qq -j ./v20.43.0.zip -d ./src/uws/
fi
fi