chore: release v1.5.2

Release 1.5.2 with the addition of the compression middleware and updated package dependencies. Key changes include:
- Added 'compression' package to improve response compression in the application.
- Updated version in package.json to 1.5.2.
- Enhanced start message to clarify internal ports used.
This commit is contained in:
kastov 2025-05-21 20:06:19 +03:00
parent f519ddab03
commit a6b7e38ea7
No known key found for this signature in database
GPG key ID: 1B27BE29057F4C90
5 changed files with 85 additions and 2 deletions

67
package-lock.json generated
View file

@ -19,6 +19,7 @@
"@remnawave/supervisord-nestjs": "0.1.1",
"@remnawave/xtls-sdk": "0.3.0",
"@remnawave/xtls-sdk-nestjs": "0.2.2",
"compression": "^1.8.0",
"enhanced-ms": "^4.1.0",
"helmet": "^8.1.0",
"husky": "9.1.7",
@ -46,6 +47,7 @@
"devDependencies": {
"@nestjs/cli": "11.0.5",
"@nestjs/schematics": "11.0.2",
"@types/compression": "^1.8.0",
"@types/express": "^5.0.1",
"@types/js-yaml": "^4.0.9",
"@types/jsonwebtoken": "^9.0.9",
@ -1754,6 +1756,17 @@
"@types/node": "*"
}
},
"node_modules/@types/compression": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/@types/compression/-/compression-1.8.0.tgz",
"integrity": "sha512-g4vmPIwbTii9dX1HVioHbOolubEaf4re4vDxuzpKrzz9uI7uarBExi9begX0cXyIB85jXZ5X2A/v8rsHZxSAPw==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/express": "*",
"@types/node": "*"
}
},
"node_modules/@types/connect": {
"version": "3.4.38",
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz",
@ -3165,6 +3178,60 @@
"node": ">= 6"
}
},
"node_modules/compressible": {
"version": "2.0.18",
"resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
"integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
"license": "MIT",
"dependencies": {
"mime-db": ">= 1.43.0 < 2"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/compression": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/compression/-/compression-1.8.0.tgz",
"integrity": "sha512-k6WLKfunuqCYD3t6AsuPGvQWaKwuLLh2/xHNcX4qE+vIfDNXpSqnrhwA7O53R7WVQUnt8dVAIW+YHr7xTgOgGA==",
"license": "MIT",
"dependencies": {
"bytes": "3.1.2",
"compressible": "~2.0.18",
"debug": "2.6.9",
"negotiator": "~0.6.4",
"on-headers": "~1.0.2",
"safe-buffer": "5.2.1",
"vary": "~1.1.2"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/compression/node_modules/debug": {
"version": "2.6.9",
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"license": "MIT",
"dependencies": {
"ms": "2.0.0"
}
},
"node_modules/compression/node_modules/ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
"license": "MIT"
},
"node_modules/compression/node_modules/negotiator": {
"version": "0.6.4",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz",
"integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==",
"license": "MIT",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",

View file

@ -1,6 +1,6 @@
{
"name": "@remnawave/node",
"version": "1.5.1",
"version": "1.5.2",
"description": "Remnawave Node",
"private": false,
"type": "commonjs",
@ -37,6 +37,7 @@
"@remnawave/supervisord-nestjs": "0.1.1",
"@remnawave/xtls-sdk": "0.3.0",
"@remnawave/xtls-sdk-nestjs": "0.2.2",
"compression": "^1.8.0",
"enhanced-ms": "^4.1.0",
"helmet": "^8.1.0",
"husky": "9.1.7",
@ -64,6 +65,7 @@
"devDependencies": {
"@nestjs/cli": "11.0.5",
"@nestjs/schematics": "11.0.2",
"@types/compression": "^1.8.0",
"@types/express": "^5.0.1",
"@types/js-yaml": "^4.0.9",
"@types/jsonwebtoken": "^9.0.9",

View file

@ -19,7 +19,7 @@ export async function getStartMessage(
return table(
[
['Docs → https://remna.st\nCommunity → https://t.me/remnawave'],
[`API Port: ${appPort}\nInternal Port: ${internalPort}`],
[`API Port: ${appPort}\nInternal Ports: 61000, ${internalPort}, 61002`],
[`XRay Core: v${xrayInfo.version || 'N/A'}\nXRay Path: ${xrayInfo.path}`],
[
`SI: ${xrayInfo.systemInfo?.cpuCores}C, ${xrayInfo.systemInfo?.cpuModel}, ${xrayInfo.systemInfo?.memoryTotal}`,

View file

@ -2,6 +2,7 @@ import { utilities as nestWinstonModuleUtilities, WinstonModule } from 'nest-win
import { ZodValidationPipe } from 'nestjs-zod';
import express, { json } from 'express';
import { createLogger } from 'winston';
import compression from 'compression';
import * as winston from 'winston';
import helmet from 'helmet';
import morgan from 'morgan';
@ -56,6 +57,8 @@ async function bootstrap(): Promise<void> {
app.use(json({ limit: '1000mb' }));
app.use(compression());
const config = app.get(ConfigService);
app.use(helmet());

View file

@ -92,6 +92,17 @@ export class StatsService {
response.data.users.filter((user) => user.uplink !== 0 || user.downlink !== 0),
),
};
// const demoRes = Array.from({ length: 160_000 }, (_, i) => ({
// username: String(i + 1),
// uplink: Math.floor(Math.random() * (107374182400 - 10485760) + 10485760), // Random between 10MB and 100GB
// downlink: Math.floor(Math.random() * (107374182400 - 10485760) + 10485760), // Random between 10MB and 100GB
// }));
// return {
// isOk: true,
// response: new GetUsersStatsResponseModel(demoRes),
// };
} catch (error) {
this.logger.error(error);
return {