Commit Graph

23 Commits (7113f32a87bd6b2868154fed20bde1a1633c190e)

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 a1bd2b77d9
Remove webtorrent support from client 2023-07-10 16:08:28 +02:00
Chocobozzz d299afeb2c
Fix lint 2023-06-29 10:18:20 +02:00
Chocobozzz 638a295021
Support storyboards in embed 2023-06-29 10:17:59 +02:00
Wicklow 40346ead2b
Feature/password protected videos (#5836)
* Add server endpoints

* Refactoring test suites

* Update server and add openapi documentation

* fix compliation and tests

* upload/import password protected video on client

* add server error code

* Add video password to update resolver

* add custom message when sharing pw protected video

* improve confirm component

* Add new alert in component

* Add ability to watch protected video on client

* Cannot have password protected replay privacy

* Add migration

* Add tests

* update after review

* Update check params tests

* Add live videos test

* Add more filter test

* Update static file privacy test

* Update object storage tests

* Add test on feeds

* Add missing word

* Fix tests

* Fix tests on live videos

* add embed support on password protected videos

* fix style

* Correcting data leaks

* Unable to add password protected privacy on replay

* Updated code based on review comments

* fix validator and command

* Updated code based on review comments
2023-06-29 09:48:55 +02:00
Chocobozzz 6de076222a
Avoid always resuming the end of the video 2023-02-25 16:18:28 +01:00
Chocobozzz 4fe7cde283
Fix build 2022-12-29 10:14:43 +01:00
Chocobozzz 7dcd45a9a2
Don't not autoplay live without autoplay setting 2022-12-14 14:06:12 +01:00
Chocobozzz 7dcd7d8140
Fix client lint 2022-11-15 15:16:41 +01:00
Chocobozzz 59a643aa5c
Force autoplay when live starts
Using the mute
2022-11-15 11:57:49 +01:00
Chocobozzz c241947630
Correctly terminate an ended live 2022-11-15 10:50:57 +01:00
Chocobozzz 49e7e4d9ff
Fix token injection if unlogged user 2022-10-27 09:13:10 +02:00
Chocobozzz 3545e72c68 Put private videos under a specific subdirectory 2022-10-24 14:48:24 +02:00
Chocobozzz 91a4893063
Merge branch 'release/4.3.0' into develop 2022-10-24 10:44:25 +02:00
Chocobozzz b1934b7e9c
Fix broken player on live reload 2022-10-24 10:32:35 +02:00
Chocobozzz 41c26d154a
Fix reloading new live session in embed 2022-10-24 10:08:17 +02:00
Chocobozzz 9d4c60dccc
Add ability for plugins to register ws routes 2022-10-11 11:11:04 +02:00
Chocobozzz fd3c2e8705
Add playback metric endpoint sent to OTEL 2022-08-16 10:33:27 +02:00
Chocobozzz aeb112edbe
Don't autoplay in embed with waiting/ended live 2022-08-11 10:57:58 +02:00
Chocobozzz 42b4063699
Add ability for client to create server logs 2022-07-18 11:37:18 +02:00
Chocobozzz bd2b51be4b
Put instance name in embed button 2022-06-28 14:11:10 +02:00
Chocobozzz d3f4689bde
Add live autostart/messages in embed 2022-05-31 14:24:07 +02:00
Chocobozzz f1a0f3b701
Refactor embed 2022-05-31 10:39:56 +02:00