From b1f269a4ee7934bc5aa3db0987064abdb1b5ea52 Mon Sep 17 00:00:00 2001 From: Benoit Lavenier <benoit.lavenier@e-is.pro> Date: Wed, 7 Jun 2023 13:36:33 +0200 Subject: [PATCH] wip(ts) Add compatibility to NodeJS 18 (e.g. Promise<void>) --- app/lib/common-libs/array-prune.ts | 2 +- app/modules/ws2p/lib/WS2PCluster.ts | 46 +++++++++---------- test/dal/triming-dal.ts | 6 ++- test/integration/misc/server-import-export.ts | 2 +- test/integration/network/peer-outdated.ts | 2 +- 5 files changed, 30 insertions(+), 28 deletions(-) diff --git a/app/lib/common-libs/array-prune.ts b/app/lib/common-libs/array-prune.ts index 42884cbb2..8e9c64a70 100644 --- a/app/lib/common-libs/array-prune.ts +++ b/app/lib/common-libs/array-prune.ts @@ -12,7 +12,7 @@ export function arrayPruneAll<T>(array: T[], value: T) { } /** - * Returs a copy of given array WITHOUT any record of `value`. + * Return a copy of given array WITHOUT any record of `value`. * @param original The array we want records, with `value` being excluded. * @param value The value we don't want to see in our copy array. */ diff --git a/app/modules/ws2p/lib/WS2PCluster.ts b/app/modules/ws2p/lib/WS2PCluster.ts index 9ebd0903d..f5a7fcb28 100644 --- a/app/modules/ws2p/lib/WS2PCluster.ts +++ b/app/modules/ws2p/lib/WS2PCluster.ts @@ -11,33 +11,31 @@ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. -import { DEFAULT_ENCODING } from "crypto"; -import { WS2PServer } from "./WS2PServer"; -import { Server } from "../../../../server"; -import { WS2PClient } from "./WS2PClient"; -import { WS2PConnection } from "./WS2PConnection"; -import { randomPick } from "../../../lib/common-libs/randomPick"; -import { CrawlerConstants } from "../../crawler/lib/constants"; -import { WS2PBlockPuller } from "./WS2PBlockPuller"; -import { WS2PDocpoolPuller } from "./WS2PDocpoolPuller"; -import { WS2PConstants } from "./constants"; -import { PeerDTO, WS2PEndpoint } from "../../../lib/dto/PeerDTO"; -import { GlobalFifoPromise } from "../../../service/GlobalFifoPromise"; -import { OtherConstants } from "../../../lib/other_constants"; -import { Key } from "../../../lib/common-libs/crypto/keyring"; -import { verify } from "../../../../neon/lib"; -import { WS2PServerMessageHandler } from "./interface/WS2PServerMessageHandler"; -import { WS2PMessageHandler } from "./impl/WS2PMessageHandler"; -import { CommonConstants } from "../../../lib/common-libs/constants"; -import { Package } from "../../../lib/common/package"; -import { ProverConstants } from "../../prover/lib/constants"; -import { ProxiesConf } from "../../../lib/proxy"; -import { Underscore } from "../../../lib/common-libs/underscore"; -import { NewLogger } from "../../../lib/logger"; +import {WS2PServer} from "./WS2PServer"; +import {Server} from "../../../../server"; +import {WS2PClient} from "./WS2PClient"; +import {WS2PConnection} from "./WS2PConnection"; +import {randomPick} from "../../../lib/common-libs/randomPick"; +import {CrawlerConstants} from "../../crawler/lib/constants"; +import {WS2PBlockPuller} from "./WS2PBlockPuller"; +import {WS2PDocpoolPuller} from "./WS2PDocpoolPuller"; +import {WS2PConstants} from "./constants"; +import {PeerDTO, WS2PEndpoint} from "../../../lib/dto/PeerDTO"; +import {GlobalFifoPromise} from "../../../service/GlobalFifoPromise"; +import {OtherConstants} from "../../../lib/other_constants"; +import {Key} from "../../../lib/common-libs/crypto/keyring"; +import {verify} from "../../../../neon/lib"; +import {WS2PServerMessageHandler} from "./interface/WS2PServerMessageHandler"; +import {WS2PMessageHandler} from "./impl/WS2PMessageHandler"; +import {CommonConstants} from "../../../lib/common-libs/constants"; +import {Package} from "../../../lib/common/package"; +import {ProverConstants} from "../../prover/lib/constants"; +import {ProxiesConf} from "../../../lib/proxy"; +import {Underscore} from "../../../lib/common-libs/underscore"; +import {NewLogger} from "../../../lib/logger"; const es = require("event-stream"); const nuuid = require("node-uuid"); -const logger = NewLogger(); export interface WS2PHead { message: string; diff --git a/test/dal/triming-dal.ts b/test/dal/triming-dal.ts index 65315a330..be921161c 100644 --- a/test/dal/triming-dal.ts +++ b/test/dal/triming-dal.ts @@ -120,9 +120,11 @@ describe("Triming", function(){ { op: 'CREATE', identifier: 'SOURCE_1', pos: 4, written_on: '126-H', writtenOn: 126, written_time: 2000, consumed: false, conditions: 'COND(SOURCE_1)'}, { op: 'UPDATE', identifier: 'SOURCE_1', pos: 4, written_on: '139-H', writtenOn: 139, written_time: 4500, consumed: true, conditions: 'COND(SOURCE_1)'}, { op: 'CREATE', identifier: 'SOURCE_2', pos: 4, written_on: '126-H', writtenOn: 126, written_time: 2000, consumed: false, conditions: 'COND(SOURCE_2)'}, - { op: 'CREATE', identifier: 'SOURCE_3', pos: 4, written_on: '126-H', writtenOn: 126, written_time: 2000, consumed: false, conditions: 'COND(SOURCE_3)'} + { op: 'CREATE', identifier: 'SOURCE_3', pos: 4, written_on: '126-H', writtenOn: 126, written_time: 2000, consumed: false, conditions: 'SIG(PUB_1)'} ] as any); (await dal.sindexDAL.findByIdentifier('SOURCE_1')).should.have.length(2); + (await dal.sindexDAL.getAvailableForConditions('COND(SOURCE_2)')).should.have.length(1); + (await dal.sindexDAL.getAvailableForPubkey('PUB_1')).should.have.length(1); (await dal.sindexDAL.findByPos(4)).should.have.length(4); }) @@ -130,6 +132,8 @@ describe("Triming", function(){ // Triming await dal.trimIndexes(140); (await dal.sindexDAL.findByIdentifier('SOURCE_1')).should.have.length(0); + (await dal.sindexDAL.getAvailableForConditions('COND(SOURCE_1)')).should.have.length(0); + (await dal.sindexDAL.getAvailableForPubkey('PUB_1')).should.have.length(1); (await dal.sindexDAL.findByPos(4)).should.have.length(2); }) diff --git a/test/integration/misc/server-import-export.ts b/test/integration/misc/server-import-export.ts index 2f2e7bd54..6e0ca63da 100644 --- a/test/integration/misc/server-import-export.ts +++ b/test/integration/misc/server-import-export.ts @@ -59,7 +59,7 @@ describe('Import/Export', () => { const archive = await s1.exportAllDataAsZIP(); const output = require('fs').createWriteStream(s1.home + '/export.zip'); archive.pipe(output); - return new Promise((resolve, reject) => { + return new Promise<void>((resolve, reject) => { archive.on('error', reject); output.on('close', function() { resolve(); diff --git a/test/integration/network/peer-outdated.ts b/test/integration/network/peer-outdated.ts index 406ca5a54..b34718254 100644 --- a/test/integration/network/peer-outdated.ts +++ b/test/integration/network/peer-outdated.ts @@ -90,7 +90,7 @@ describe("Peer document expiry", function() { it('routing V1 peer document should raise an "outdated" event', async () => { const caster = new Multicaster(); - return new Promise((resolve) => { + return new Promise<void>((resolve) => { caster .pipe(es.mapSync((obj:any) => { obj.should.have.property("outdated").equal(true); -- GitLab