Commit Graph

89 Commits

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
c6a3445360
Fix lint 2023-07-17 14:17:18 +02:00
Chocobozzz
d0b7d66f58
Fix password E2E tests 2023-07-17 11:46:24 +02:00
Chocobozzz
e29221f855
Fix e2e tests 2023-07-17 11:31:46 +02:00
Chocobozzz
28dd2f14f5
Some player fixes on Android, Safari and iOS 2023-07-17 11:31:46 +02:00
Wicklow
cbe06f779f
Add e2e tests for password protected videos (#5860) 2023-07-17 11:31:42 +02:00
Chocobozzz
288e1d37e9
Fix lint 2023-07-12 13:39:37 +02:00
Chocobozzz
784e2ad5c3
Prefer web videos in favour of webtorrent 2023-07-11 09:21:13 +02:00
Chocobozzz
a41b944398
Fix local e2e tests 2023-05-25 11:41:29 +02:00
Chocobozzz
51afea5411
Update client dependencies 2023-05-25 09:24:55 +02:00
Chocobozzz
d0fbc9fd0a
Fix lint 2023-05-24 15:27:15 +02:00
Chocobozzz
7815dc450e
Prevent invalid end watch section warnings 2023-05-10 14:23:59 +02:00
Chocobozzz
748c6e4ef6
Breaking: drop firefox 68 support
Only support firefox >= 78
2023-02-28 10:06:52 +01:00
Chocobozzz
a9536a4be9
Update E2E 2023-02-28 09:29:17 +01:00
Chocobozzz
92a6e85fe7
Breaking: remove ios 11, safari 11 support
Angular doesn't support these web browsers anymore
Safari 11 and iOS 11 are not supported anymore by Apple
2023-02-27 15:28:57 +01:00
Chocobozzz
5b94394a1a
Fix E2E with firefox 2023-02-27 11:58:35 +01:00
Chocobozzz
e65ef81cf5
Update server dependencies 2023-02-16 11:56:58 +01:00
Chocobozzz
1ec4835dca
Create screenshots directory when needed 2023-02-15 16:26:21 +01:00
Wicklow
6053e6f53c Fix signup e2e test 2023-02-10 11:01:21 +01:00
Chocobozzz
5bdfa604f1 Add E2E client tests for signup approval 2023-01-19 13:53:40 +01:00
Chocobozzz
71e3e879c0
Support reinjecting token in private m3u8 playlist 2022-12-02 15:25:20 +01:00
Chocobozzz
27744d8e56
Upgrade chromedriver 2022-11-15 15:56:10 +01:00
Chocobozzz
ca4bd9667d
Start E2E videos at 00:00:00 2022-11-02 14:09:54 +01:00
Chocobozzz
eaa5dc3161
Reapply playsinline on player fallback 2022-10-31 13:47:55 +01:00
Chocobozzz
b9b3d18dd9
Improve login test reliability for ios 2022-10-31 09:57:17 +01:00
Chocobozzz
57702d2537
Remove browserstack.err 2022-10-31 09:56:40 +01:00
Chocobozzz
814e9e07ba
Improve E2E tests
Add tests for private video static endpoints
Fix tests for local firefox
2022-10-28 15:22:40 +02:00
Chocobozzz
d800ec5f36
Use android 7 for browser stack 2022-09-08 11:10:22 +02:00
Chocobozzz
ace01da348
Fix z-index with custom homepage 2022-07-18 15:01:47 +02:00
Chocobozzz
85f6202a81
Add live play tests 2022-06-24 14:52:54 +02:00
Chocobozzz
1db86422eb
Add E2E tests for signup 2022-06-21 10:49:54 +02:00
Chocobozzz
a6241926d2
Fix local E2E tests 2022-05-20 14:18:20 +02:00
Chocobozzz
2024a3b933
Fix e2e tests 2022-04-20 10:53:45 +02:00
Chocobozzz
948f734761
Fix lint 2022-01-03 14:49:57 +01:00
Chocobozzz
cc4bf76c13
Handle async validators 2022-01-03 14:20:52 +01:00
Chocobozzz
3c065fe3b3
Enhance plugin video fields
Add video form tab selection
Add ability to display an error
2021-12-29 10:10:01 +01:00
Chocobozzz
b65de1be4d
Use different p2p policy for embeds and webapp 2021-12-16 10:08:55 +01:00
Chocobozzz
a9bfa85d2c
Add ability for admins to set default p2p policy 2021-12-16 10:08:55 +01:00
Chocobozzz
3cf68b869d
Ability for admins to set default upload values 2021-12-14 17:17:01 +01:00
Chocobozzz
450de91e22
Fix E2E tests 2021-11-24 10:49:12 +01:00
Chocobozzz
afb7d2d5c6
Remove protractor workaround
We don't use it anymore
2021-10-14 11:50:22 +02:00
Chocobozzz
6d210220be
Fix NSFW filter and add tests 2021-09-03 16:35:18 +02:00
Chocobozzz
12d6b873cd
Improve e2e workflow and add doc 2021-09-02 09:07:42 +02:00
Chocobozzz
3419e0e1fe
Migrate to webdriverio 2021-09-01 15:06:46 +02:00
Chocobozzz
18305950c3
Fix E2E tests 2021-08-26 10:01:42 +02:00
Chocobozzz
9df52d660f
Migrate client to eslint 2021-08-18 08:35:06 +02:00
Chocobozzz
1d4591fd9c
Remove solution style ts config 2021-08-17 14:06:56 +02:00
Chocobozzz
a1eda903a4
Support '/w/' and '/w/p/' for watch page
And use them as default in client
2021-05-28 11:38:08 +02:00
Chocobozzz
3ec535f72b
Fix E2E tests 2021-05-10 13:58:09 +02:00
Chocobozzz
494e60804d
Fix E2E tests 2021-05-05 09:05:46 +02:00