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