aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/tools
diff options
context:
space:
mode:
authorlutangar <johan.dufour@gmail.com>2021-11-02 19:11:20 +0100
committerChocobozzz <chocobozzz@cpy.re>2021-12-16 10:08:43 +0100
commit06aad80165d09a8863ab8103149a8ff518b10641 (patch)
treea97fa31f3ade29ff807ca1b77704eb47085ab99d /server/tools
parent854f533c12bd2b88c70f9d5aeab770059e9a6861 (diff)
downloadPeerTube-06aad80165d09a8863ab8103149a8ff518b10641.tar.gz
PeerTube-06aad80165d09a8863ab8103149a8ff518b10641.tar.zst
PeerTube-06aad80165d09a8863ab8103149a8ff518b10641.zip
chore(refactor): remove shared folder dependencies to the server
Many files from the `shared` folder were importing files from the `server` folder. When attempting to use Typescript project references to describe dependencies, it highlighted a circular dependency beetween `shared` <-> `server`. The Typescript project forbid such usages. Using project references greatly improve performance by rebuilding only the updated project and not all source files. > see https://www.typescriptlang.org/docs/handbook/project-references.html
Diffstat (limited to 'server/tools')
-rw-r--r--server/tools/cli.ts5
-rw-r--r--server/tools/peertube-import-videos.ts2
-rw-r--r--server/tools/tsconfig.json6
3 files changed, 11 insertions, 2 deletions
diff --git a/server/tools/cli.ts b/server/tools/cli.ts
index 52e6ea593..7c763734f 100644
--- a/server/tools/cli.ts
+++ b/server/tools/cli.ts
@@ -5,7 +5,9 @@ import { createLogger, format, transports } from 'winston'
5import { PeerTubeServer } from '@shared/extra-utils' 5import { PeerTubeServer } from '@shared/extra-utils'
6import { UserRole } from '@shared/models' 6import { UserRole } from '@shared/models'
7import { VideoPrivacy } from '../../shared/models/videos' 7import { VideoPrivacy } from '../../shared/models/videos'
8import { getAppNumber, isTestInstance, root } from '../helpers/core-utils' 8import { getAppNumber, isTestInstance } from '../helpers/core-utils'
9import { root } from '@shared/core-utils'
10import { loadLanguages } from '@server/initializers/constants'
9 11
10let configName = 'PeerTube/CLI' 12let configName = 'PeerTube/CLI'
11if (isTestInstance()) configName += `-${getAppNumber()}` 13if (isTestInstance()) configName += `-${getAppNumber()}`
@@ -180,6 +182,7 @@ function getServerCredentials (program: Command) {
180} 182}
181 183
182function buildServer (url: string) { 184function buildServer (url: string) {
185 loadLanguages()
183 return new PeerTubeServer({ url }) 186 return new PeerTubeServer({ url })
184} 187}
185 188
diff --git a/server/tools/peertube-import-videos.ts b/server/tools/peertube-import-videos.ts
index a758beef9..223bf7f1b 100644
--- a/server/tools/peertube-import-videos.ts
+++ b/server/tools/peertube-import-videos.ts
@@ -5,7 +5,7 @@ import { program } from 'commander'
5import { accessSync, constants } from 'fs' 5import { accessSync, constants } from 'fs'
6import { remove } from 'fs-extra' 6import { remove } from 'fs-extra'
7import { join } from 'path' 7import { join } from 'path'
8import { sha256 } from '../helpers/core-utils' 8import { sha256 } from '@shared/core-utils/crypto'
9import { doRequestAndSaveToFile } from '../helpers/requests' 9import { doRequestAndSaveToFile } from '../helpers/requests'
10import { 10import {
11 assignToken, 11 assignToken,
diff --git a/server/tools/tsconfig.json b/server/tools/tsconfig.json
index 156a8ed22..575133ec8 100644
--- a/server/tools/tsconfig.json
+++ b/server/tools/tsconfig.json
@@ -1,5 +1,11 @@
1{ 1{
2 "extends": "../../tsconfig.json", 2 "extends": "../../tsconfig.json",
3 "compilerOptions": {
4 "outDir": "../../dist/server/tools"
5 },
3 "include": [ ".", "../typings" ], 6 "include": [ ".", "../typings" ],
7 "references": [
8 { "path": "../" },
9 ],
4 "exclude": [ ] // Overwrite exclude property 10 "exclude": [ ] // Overwrite exclude property
5} 11}