Commit Graph

66 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
76824f522a
Reword runner registration 2023-07-11 10:10:51 +02:00
Chocobozzz
784e2ad5c3
Prefer web videos in favour of webtorrent 2023-07-11 09:21:13 +02:00
Chocobozzz
83b42f5a32
Add note for peertube runner dependencies 2023-07-06 16:59:20 +02:00
Chocobozzz
9c5cc50133
Add script to generate storyboards 2023-06-29 10:16:57 +02:00
Chocobozzz
ca91a74b87
Improve responsive on medium destkop screens 2023-05-26 11:18:02 +02:00
Chocobozzz
f474a519dc
Specify runner name when unregistering the runner 2023-05-26 09:04:22 +02:00
Chocobozzz
def4ea4f38
More robust chunk handler 2023-05-19 13:52:38 +02:00
Chocobozzz
0d6a8289fb
Better runner error UX when server is not run 2023-05-16 09:27:49 +02:00
Chocobozzz
76ad705ecb
Add peertube-runner CLI doc 2023-05-09 11:20:08 +02:00
Chocobozzz
b708c9e464 Update tools doc 2023-05-09 08:57:34 +02:00
Chocobozzz
00ee545c24
Remove $ for bash commands
It prevents easy copy
2023-04-04 09:18:06 +02:00
Chocobozzz
1ab94472d5
Prefer absolute links in doc 2023-02-22 10:46:12 +01:00
Thomas Kuntz
927d14bd26 Escape % signs in crontab example (CLI tools docs)
% is a special character for crontab. From man 5 crontab: A "%" character in the command, unless escaped with a backslash (\), will be changed into newline characters, and all data after the first % will be sent to the command as standard input.
2022-09-16 10:19:41 +02:00
Chocobozzz
221ee1adc9 Add transcoding fail message in client 2021-11-09 15:00:21 +01:00
Chocobozzz
9c39161203
Add version note for create-move-video-storage-job 2021-11-09 14:41:18 +01:00
kontrollanten
e1ab52d7ec
Add migrate-to-object-storage script (#4481)
* add migrate-to-object-storage-script

closes #4467

* add migrate-to-unique-playlist-filenames script

* fix(migrate-to-unique-playlist-filenames): update master/segments256

run updateMasterHLSPlaylist and updateSha256VODSegments after
file rename.

* Improve move to object storage scripts

* PR remarks

Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-11-09 11:05:35 +01:00
Chocobozzz
624e42fdf9
Remove peertube watch and peertube repl
I don't have time to maintain these scripts that cause some install
issues/maintenance difficulties
2021-09-10 15:06:57 +02:00
Chocobozzz
66a7fc9473
Remove optimize old videos script
It is not compatible with HLS and I don't have time to maintain it
2021-08-17 10:33:36 +02:00
Chocobozzz
cb6a78c291
Improve docker tools doc 2021-04-13 08:29:03 +02:00
Chocobozzz
c2bd7a6fcf
Add regenrate thumbnails scripts 2021-03-24 18:18:41 +01:00
Chocobozzz
7992c9e1cb
Update yarn lock 2021-03-24 18:18:41 +01:00
Chocobozzz
c83af8f94a
Update tools doc 2021-02-11 15:56:54 +01:00
Chocobozzz
9162476fe9
Support NodeJS 14 and 15, deprecate Node 10 2021-02-04 14:31:18 +01:00
kontrollanten
fffc7c0864
add info about hostname change (#3434)
Co-authored-by: Rigel Kent <par@rigelk.eu>
2020-12-11 23:48:48 +01:00
Chocobozzz
c977fd3ec9
Try to improve tools doc 2020-12-08 12:00:58 +01:00
Sumit Khanna
1c5c31a1ce Add type information for create-transcoding-job's -r 2020-08-19 17:28:32 +02:00
Chocobozzz
e669ff5873
Add redundancy CLI doc 2020-01-28 13:57:49 +01:00
Chocobozzz
8b7bd16673
Update changelog, 2.1.0-rc.1 -> end of January 2020-01-07 11:44:28 +01:00
Pablo Joubert
8a08bc1ed5 Change cli parameter from -t to good --target-url 2019-09-17 10:01:10 +02:00
Chocobozzz
e9bdf8b4b5
Fix plugin CLI tools doc 2019-09-02 08:25:20 +02:00
Chocobozzz
8dd2d05058
Improve plugin management documentation 2019-08-22 09:17:41 +02:00
Chocobozzz
13126d9961
Add plugin in CLI tools table of contents 2019-08-22 09:10:00 +02:00
Chocobozzz
51c3544718
Deprecate Node 8
The support ends on December 2019: https://github.com/nodejs/Release#release-schedule
2019-08-07 12:07:59 +02:00
Florent F
1f8ac02436 Document how to synchronize YT channel to PeerTube 2019-08-01 11:27:00 +02:00
Chocobozzz
9b474844e8 Add CLI plugins tests 2019-07-24 10:58:16 +02:00
Chocobozzz
4c3dbb7acd
PeerTube only supports nodejs 8 2019-06-11 09:12:42 +02:00
Chocobozzz
7e9d3f259d Move CLI dependencies in their own package.json 2019-05-27 14:56:06 +02:00
Chocobozzz
e8a739e880
Fix video import CLI script
Password is an optional argument
2019-04-24 16:51:25 +02:00
Chocobozzz
31b48aad47
Add change user password from CLI documentation 2019-04-15 09:57:24 +02:00
Chocobozzz
bb8f7872f5
Fix peertube CLI documentation 2019-01-14 11:01:40 +01:00
Chocobozzz
7089e7b4e5
Improve information regarding prune storage script 2018-12-05 17:44:36 +01:00
Chocobozzz
5b036b8ef2
Better tools.md doc 2018-12-04 17:19:44 +01:00
Nathanaël J
9024bece9a Use ' instead of ' for passwords in the documentation (see #1453) 2018-12-04 17:16:59 +01:00
Chocobozzz
d639c3bf14
Improve tools doc 2018-12-04 10:08:45 +01:00
Rigel Kent
402b634b03
(doc) fix path to peertube-repl 2018-10-19 15:47:31 +02:00
Rigel Kent
c141f68be1
add repl to the cli wrapper, remove extraneous TOC in tools.md 2018-10-19 14:24:35 +02:00
Rigel Kent
12b119c05a
(doc) update architecture, tools and readme 2018-10-14 21:08:52 +02:00
BRAINS YUM
1e59ca3bac add REPL in server/tools/repl.ts (#1248) 2018-10-14 19:48:08 +02:00
Felix Ableitner
edb4ffc7e0 Set bitrate limits for transcoding (fixes #638) (#1135)
* Set bitrate limits for transcoding (fixes #638)

* added optimization script and test, changed stuff

* fix test, improve docs

* re-add optimize-old-videos script

* added documentation

* Don't optimize videos without valid UUID, or redundancy videos

* move getUUIDFromFilename

* fix tests?

* update torrent and file size, some more fixes/improvements

* use higher bitrate for high fps video, adjust bitrates

* add test video

* don't throw error if resolution is undefined

* generate test fixture on the fly

* use random noise video for bitrate test, add promise

* shorten test video to avoid timeout

* use existing function to optimize video

* various fixes

* increase test timeout

* limit test fixture size, add link

* test fixes

* add await

* more test fixes, add -b:v parameter

* replace ffmpeg wiki link

* fix ffmpeg params

* fix unit test

* add test fixture to .gitgnore

* add video transcoding fps model

* add missing file
2018-10-08 16:26:04 +02:00