Commit Graph

12 Commits (77b70702d2193d78bf6fbd07f0fc7335e34957f8)

Author SHA1 Message Date
Chocobozzz 3a4992633e
Migrate server to ESM
Sorry for the very big commit that may lead to git log issues and merge
conflicts, but it's a major step forward:

 * Server can be faster at startup because imports() are async and we can
   easily lazy import big modules
 * Angular doesn't seem to support ES import (with .js extension), so we
   had to correctly organize peertube into a monorepo:
    * Use yarn workspace feature
    * Use typescript reference projects for dependencies
    * Shared projects have been moved into "packages", each one is now a
      node module (with a dedicated package.json/tsconfig.json)
    * server/tools have been moved into apps/ and is now a dedicated app
      bundled and published on NPM so users don't have to build peertube
      cli tools manually
    * server/tests have been moved into packages/ so we don't compile
      them every time we want to run the server
 * Use isolatedModule option:
   * Had to move from const enum to const
     (https://www.typescriptlang.org/docs/handbook/enums.html#objects-vs-enums)
   * Had to explictely specify "type" imports when used in decorators
 * Prefer tsx (that uses esbuild under the hood) instead of ts-node to
   load typescript files (tests with mocha or scripts):
     * To reduce test complexity as esbuild doesn't support decorator
       metadata, we only test server files that do not import server
       models
     * We still build tests files into js files for a faster CI
 * Remove unmaintained peertube CLI import script
 * Removed some barrels to speed up execution (less imports)
2023-08-11 15:02:33 +02:00
Chocobozzz c6867725fb
Add p2p info to metrics 2023-07-21 11:42:52 +02:00
Chocobozzz 8a9d247105
Fix "undefined" in stats card 2023-07-20 11:18:47 +02:00
Chocobozzz a1bd2b77d9
Remove webtorrent support from client 2023-07-10 16:08:28 +02:00
Chocobozzz d97d36b486
More robust player stats card 2022-12-29 08:38:33 +01:00
Ewout van Mansom 192edf169c Translate more strings in player stats 2022-09-16 10:19:30 +02:00
Chocobozzz 7804e577de
Increase test timeout 2022-08-16 15:41:21 +02:00
Chocobozzz 37229de26e
Fix "undefined" resolution in player stats 2022-08-16 14:48:11 +02:00
Chocobozzz fd3c2e8705
Add playback metric endpoint sent to OTEL 2022-08-16 10:33:27 +02:00
Chocobozzz 42b4063699
Add ability for client to create server logs 2022-07-18 11:37:18 +02:00
Chocobozzz 68e72ba90c
Optimize improve stat card rendering in player 2022-03-18 16:01:09 +01:00
Chocobozzz 57d6503286
Reorganize player files 2022-03-14 14:36:35 +01:00