Commit Graph

3809 Commits

Author SHA1 Message Date
Seth Falco
2055962c84 fix: handle git installation of ffmpeg 2023-08-18 10:17:16 +02:00
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
3229fcf704
More robust logs tests 2023-07-31 09:35:48 +02:00
Chocobozzz
5e1ced7067
Fix live tests 2023-07-31 09:31:28 +02:00
Chocobozzz
257df4cb56
Remove deprecated "views" from live video event 2023-07-28 16:35:57 +02:00
Chocobozzz
982edf32ae
Remove deprecated video query filter 2023-07-28 16:33:12 +02:00
Chocobozzz
ce8d0b5aae
Remove deprecated scheduler 2023-07-28 16:22:27 +02:00
Chocobozzz
b203a25e1f
Keep s3 commands simple
As s3 implementation between s3 providers can be different
2023-07-28 16:21:15 +02:00
Chocobozzz
eeb838faf2
currentTime is now required 2023-07-28 16:17:37 +02:00
Chocobozzz
74c8d5bf2d
Refactor enableTranscoding command helpers 2023-07-28 16:06:49 +02:00
Chocobozzz
f932957b2e
Remove banner/avatar fields from channel/account
Deprecated since 4.2
2023-07-28 11:41:14 +02:00
Chocobozzz
89aa333110
Add ability to force transcoding 2023-07-28 11:09:03 +02:00
mira.bat
f862be2749
Add an option to sign federated fetches for mastodon compatibility (#5898)
* Fix player error modal

Not hidden when we change the video

* Correctly dispose player components

* Sign cross-server fetch requests for mastodon AUTHORIZED_FETCH compatibilty

* Add a remote fetch sign configuration knob

* Federated fetches refactoring

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
Co-authored-by: ira <ira@foxgirl.space>
2023-07-27 17:01:15 +02:00
Chocobozzz
787d822cd4
Rephrase emailer conflict error messages 2023-07-27 16:41:35 +02:00
Chocobozzz
f18003d0ac
Improve runner management
* Add ability to remove runner jobs
 * Add runner job state quick filter
 * Merge registration tokens and runners tables in the same page
 * Add copy button to copy registration token
2023-07-27 14:17:12 +02:00
Chocobozzz
17522af1e0
Use typed pick 2023-07-26 10:49:32 +02:00
Chocobozzz
69e3f2049f
Fix invalid short uuid conversion
Avoid "TypeError: Expected a string but received a null" error
2023-07-26 10:48:30 +02:00
Chocobozzz
3ffff82e87
Truncate html/og/card HTML description tags 2023-07-26 10:19:51 +02:00
Chocobozzz
d7c3670945
Fix lint 2023-07-26 10:08:24 +02:00
Chocobozzz
22e7ffc781
Fix check params tests 2023-07-26 09:42:44 +02:00
Chocobozzz
93fd6f3b18
Fix fk error when generating storyboard 2023-07-26 09:25:21 +02:00
Chocobozzz
89b9eab5a7
Add more logs to debug oauth-client error 2023-07-26 09:25:10 +02:00
Chocobozzz
97583d0023
Add more rate limits 2023-07-26 08:37:50 +02:00
Chocobozzz
9901c8d690
Add video file update hook tests 2023-07-25 15:17:58 +02:00
Chocobozzz
3b46eec8ae
Remove unused param 2023-07-25 14:26:12 +02:00
Chocobozzz
f42dd5524b
Add more context to request error 2023-07-25 14:21:01 +02:00
Chocobozzz
f42fcb4b58
Implement video file replacement in client 2023-07-25 11:53:08 +02:00
Chocobozzz
12dc3a942a
Implement replace file in server side 2023-07-21 17:38:13 +02:00
Chocobozzz
c6867725fb
Add p2p info to metrics 2023-07-21 11:42:52 +02:00
Chocobozzz
305facdfab
Add peers number and p2p enabled label to metrics 2023-07-20 12:06:39 +02:00
Chocobozzz
15c2303489
More robust runner socket test 2023-07-19 10:43:12 +02:00
Chocobozzz
6b745df087
Try to fix CI test 2023-07-17 14:34:44 +02:00
Chocobozzz
28dd2f14f5
Some player fixes on Android, Safari and iOS 2023-07-17 11:31:46 +02:00
Chocobozzz
5c34189aa9
Fix prune storage test 2023-07-12 11:32:12 +02:00
Chocobozzz
d874522774
Avoid update remote runner error 2023-07-12 11:14:59 +02:00
Chocobozzz
d959b763f0
Avoid duplicate runner names 2023-07-12 10:56:07 +02:00
Chocobozzz
88cde4392a
Merge branch 'release/5.2.0' into develop 2023-07-12 10:37:59 +02:00
Chocobozzz
d98909f690
Fix fps transcoding on remote runners 2023-07-12 10:07:21 +02:00
Chocobozzz
34555bebf8
Migrate from webseed to web-videos 2023-07-11 11:39:59 +02:00
Chocobozzz
d732ec7b46
Rename "videos" config to "web-videos" 2023-07-11 11:23:51 +02:00
Chocobozzz
c57ad141a9
Rename webtorrent config to web_videos 2023-07-11 09:52:14 +02:00
Chocobozzz
784e2ad5c3
Prefer web videos in favour of webtorrent 2023-07-11 09:21:13 +02:00
Chocobozzz
a1bd2b77d9
Remove webtorrent support from client 2023-07-10 16:08:28 +02:00
Chocobozzz
9cd06903f4
Fix HLS playlist generation with 0 duration length 2023-06-29 14:20:03 +02:00
Chocobozzz
a287136427
Fix migration conflict 2023-06-29 13:52:24 +02:00
Chocobozzz
6bd160a68d
Fix 400 error on resumable re-upload 2023-06-29 11:35:25 +02:00
q_h
926c3f2b37
Fix the cleanup after a failed upload (#5840)
* Fix the cleanup after a failed upload

* Update tests

* Update tests
2023-06-29 10:38:37 +02:00
Chocobozzz
d961735d5d
Fix prune storage tests 2023-06-29 10:19:55 +02:00
Chocobozzz
17ad0e8428
Fix regenerate thumbnail test 2023-06-29 10:19:55 +02:00
Chocobozzz
cf069671f4
Use promise cache to load remote thumbnails 2023-06-29 10:19:55 +02:00
Chocobozzz
2b5dfa2fe0
Fix adding element in playlists 2023-06-29 10:19:55 +02:00
Chocobozzz
7a30349748
Fix migration conflict 2023-06-29 10:19:55 +02:00
Chocobozzz
53d4db2a8a
Fix playlist thumbnail generation 2023-06-29 10:19:54 +02:00
Chocobozzz
109d4a7f01
Add thumbnail disk database migration 2023-06-29 10:19:33 +02:00
Chocobozzz
bafaba0bcd
Support lazy download of remote video miniatures 2023-06-29 10:19:33 +02:00
Chocobozzz
f162d32da0
Support lazy download thumbnails 2023-06-29 10:19:33 +02:00
Chocobozzz
ff75ba7160
Also replace base url of pre signed s3 url 2023-06-29 10:19:07 +02:00
Chocobozzz
c37e305342
Fix CI tests 2023-06-29 10:19:05 +02:00
Chocobozzz
881958d179
Correctly download files from S3
Use pre signed URLs to inject content disposition header
2023-06-29 10:18:21 +02:00
Chocobozzz
1c9dc98c27
Lock video files when generating storyboard 2023-06-29 10:18:21 +02:00
Chocobozzz
7f7e9d4e90
Handle correctly formatted AP attributedTo 2023-06-29 10:18:00 +02:00
Chocobozzz
cefe22cf7c
Fetch remote AP objects if only id is specified 2023-06-29 10:18:00 +02:00
Chocobozzz
f987425bd1
Fix thumbnails tests 2023-06-29 10:18:00 +02:00
Chocobozzz
d896fef7e2
Refactor video formatter 2023-06-29 10:18:00 +02:00
Chocobozzz
b7f946892b
Simpler thumbnail generation 2023-06-29 10:16:57 +02:00
Chocobozzz
318aa9c422
Delete storyboard file on video deletion 2023-06-29 10:16:57 +02:00
Chocobozzz
9c5cc50133
Add script to generate storyboards 2023-06-29 10:16:57 +02:00
Chocobozzz
d8f39b126d
Add storyboard support 2023-06-29 10:16:55 +02:00
Chocobozzz
1fb7d09422
Don't cache upload after video deletion 2023-06-29 09:49:06 +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
ae22c59f14
Fix broken replay with long live video name 2023-06-29 09:08:13 +02:00
Chocobozzz
ba278fa51d
Fix build 2023-06-21 10:54:48 +02:00
Chocobozzz
2c16f5ad5e
Fix undefined actor image 2023-06-21 10:44:40 +02:00
Chocobozzz
e915cde30e
Fix runner api rate limit bypass 2023-06-20 14:17:34 +02:00
Chocobozzz
31b9518a86
Fix log 2023-06-19 14:29:50 +02:00
Chocobozzz
7aacaa76ec
Fix registration notification error in client 2023-06-19 10:52:40 +02:00
Chocobozzz
07880c3642
Correctly unload plugin paths 2023-06-06 11:59:27 +02:00
Chocobozzz
ed14d1ebd7
Invalidate cache feed even after server restart 2023-06-05 10:05:49 +02:00
Chocobozzz
8715c76356
More specific message when signup is not allowed 2023-06-05 09:00:47 +02:00
Alecks Gates
1ed1994fff
Use largest avatar in RSS feeds, unique guid for liveItems (#5817)
* Attempt to get largest avatar size

* WIP live guid changes

* Use largest avatar version in feeds

* Misc variable names/import changes

* Update podcast feed tests for guid changes

* More <guid> testing

* Lint fix

* Styling

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
2023-06-05 09:00:30 +02:00
Chocobozzz
29c7319c8a
Fix transcoding error
When transcoding.always_transcode_original_resolution is false
2023-05-30 09:35:21 +02:00
Chocobozzz
89eda2aab0
Fix runner vod transcoding error test 2023-05-26 16:09:28 +02:00
Chocobozzz
c56dd2807f
Fix peertube subtitles import 2023-05-26 16:05:08 +02:00
Chocobozzz
64aa66c4a6
Don't fail remote transcoding on retry 2023-05-26 09:28:44 +02:00
Chocobozzz
f474a519dc
Specify runner name when unregistering the runner 2023-05-26 09:04:22 +02:00
Chocobozzz
a60b100601
Add more logs when storing master playlist in s3 2023-05-25 09:58:08 +02:00
Chocobozzz
d0fbc9fd0a
Fix lint 2023-05-24 15:27:15 +02:00
Chocobozzz
cffef25313
Fix s3 mock cleanup 2023-05-23 11:27:27 +02:00
Chocobozzz
f89189907b
Prevent object storage mock conflicts
When running tests in parallel
2023-05-23 10:49:45 +02:00
Chocobozzz
d8fe90dde2
Wait for segments generation 2023-05-23 08:28:25 +02:00
Chocobozzz
83002a8234
Update server dependencies 2023-05-22 17:11:31 +02:00
Chocobozzz
57c318653e
Fix live quota tests 2023-05-22 16:23:28 +02:00
Alecks Gates
cb0eda5602
Add Podcast RSS feeds (#5487)
* Initial test implementation of Podcast RSS

This is a pretty simple implementation to add support for The Podcast Namespace in RSS -- instead of affecting the existing RSS implementation, this adds a new UI option.

I attempted to retain compatibility with the rest of the RSS feed implementation as much as possible and have created a temporary fork of the "pfeed" library to support this effort.

* Update to pfeed-podcast 1.2.2

* Initial test implementation of Podcast RSS

This is a pretty simple implementation to add support for The Podcast Namespace in RSS -- instead of affecting the existing RSS implementation, this adds a new UI option.

I attempted to retain compatibility with the rest of the RSS feed implementation as much as possible and have created a temporary fork of the "pfeed" library to support this effort.

* Update to pfeed-podcast 1.2.2

* Initial test implementation of Podcast RSS

This is a pretty simple implementation to add support for The Podcast Namespace in RSS -- instead of affecting the existing RSS implementation, this adds a new UI option.

I attempted to retain compatibility with the rest of the RSS feed implementation as much as possible and have created a temporary fork of the "pfeed" library to support this effort.

* Update to pfeed-podcast 1.2.2

* Add correct feed image to RSS channel

* Prefer HLS videos for podcast RSS

Remove video/stream titles, add optional height attribute to podcast RSS

* Prefix podcast RSS images with root server URL

* Add optional video query support to include captions

* Add transcripts & person images to podcast RSS feed

* Prefer webseed/webtorrent files over HLS fragmented mp4s

* Experimentally adding podcast fields to basic config page

* Add validation for new basic config fields

* Don't include "content" in podcast feed, use full description for "description"

* Initial test implementation of Podcast RSS

This is a pretty simple implementation to add support for The Podcast Namespace in RSS -- instead of affecting the existing RSS implementation, this adds a new UI option.

I attempted to retain compatibility with the rest of the RSS feed implementation as much as possible and have created a temporary fork of the "pfeed" library to support this effort.

* Update to pfeed-podcast 1.2.2

* Add correct feed image to RSS channel

* Prefer HLS videos for podcast RSS

Remove video/stream titles, add optional height attribute to podcast RSS

* Prefix podcast RSS images with root server URL

* Add optional video query support to include captions

* Add transcripts & person images to podcast RSS feed

* Prefer webseed/webtorrent files over HLS fragmented mp4s

* Experimentally adding podcast fields to basic config page

* Add validation for new basic config fields

* Don't include "content" in podcast feed, use full description for "description"

* Add medium/socialInteract to podcast RSS feeds. Use HTML for description

* Change base production image to bullseye, install prosody in image

* Add liveItem and trackers to Podcast RSS feeds

Remove height from alternateEnclosure, replaced with title.

* Clear Podcast RSS feed cache when live streams start/end

* Upgrade to Node 16

* Refactor clearCacheRoute to use ApiCache

* Remove unnecessary type hint

* Update dockerfile to node 16, install python-is-python2

* Use new file paths for captions/playlists

* Fix legacy videos in RSS after migration to object storage

* Improve method of identifying non-fragmented mp4s in podcast RSS feeds

* Don't include fragmented MP4s in podcast RSS feeds

* Add experimental support for podcast:categories on the podcast RSS item

* Fix undefined category when no videos exist

Allows for empty feeds to exist (important for feeds that might only go live)

* Add support for podcast:locked -- user has to opt in to show their email

* Use comma for podcast:categories delimiter

* Make cache clearing async

* Fix merge, temporarily test with pfeed-podcast

* Syntax changes

* Add EXT_MIMETYPE constants for captions

* Update & fix tests, fix enclosure mimetypes, remove admin email

* Add test for podacst:socialInteract

* Add filters hooks for podcast customTags

* Remove showdown, updated to pfeed-podcast 6.1.2

* Add 'action:api.live-video.state.updated' hook

* Avoid assigning undefined category to podcast feeds

* Remove nvmrc

* Remove comment

* Remove unused podcast config

* Remove more unused podcast config

* Fix MChannelAccountDefault type hint missed in merge

* Remove extra line

* Re-add newline in config

* Fix lint errors for isEmailPublic

* Fix thumbnails in podcast feeds

* Requested changes based on review

* Provide podcast rss 2.0 only on video channels

* Misc cleanup for a less messy PR

* Lint fixes

* Remove pfeed-podcast

* Add peertube version to new hooks

* Don't use query include, remove TODO

* Remove film medium hack

* Clear podcast rss cache before video/channel update hooks

* Clear podcast rss cache before video uploaded/deleted hooks

* Refactor podcast feed cache clearing

* Set correct person name from video channel

* Styling

* Fix tests

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
2023-05-22 16:00:05 +02:00
Chocobozzz
3f0ceab06e
More robust quota check
Avoid concurrency issues with permanent lives
2023-05-22 15:52:59 +02:00
Chocobozzz
6a9b315182
Fix tests 2023-05-22 15:03:14 +02:00
Chocobozzz
8762b1c7ff
Include err type in res 2023-05-22 14:10:59 +02:00
Chocobozzz
17ecdf61ce
Force stop remote live transcoding 2023-05-22 13:54:46 +02:00
Chocobozzz
b9393464a8
Lock when removing video files 2023-05-22 11:06:04 +02:00
Chocobozzz
33b91e53d2
Remove low timeouts
Default timeout is 30s
2023-05-22 09:22:08 +02:00
Chocobozzz
8527f4b163
Fix menu dropdowns
Better responsive
Avoid menu scrollbar displayed in notification popove
2023-05-22 08:22:57 +02:00
Chocobozzz
9ba1faa2ee
Fix lowest email port 2023-05-19 15:33:26 +02:00
Chocobozzz
c0b5a5eb4b
Use saveInTransactionWithRetries helper 2023-05-19 15:20:12 +02:00
Chocobozzz
d1c64fd970
Fix missing wait jobs 2023-05-19 15:05:32 +02:00
Chocobozzz
26818a73ba
Add expect message to ease debug 2023-05-19 14:49:00 +02:00
Chocobozzz
3733175b6b
Remove wait before publishing master playlist
It doesn't seem necessary
2023-05-19 14:44:57 +02:00
Chocobozzz
ec720affe9
Correctly fix s3 live sync 2023-05-19 14:44:25 +02:00
Chocobozzz
cfa6176381
Fix runner cleanup test 2023-05-19 14:35:03 +02:00
Chocobozzz
01283e2066
Improve remote runner config UX 2023-05-19 14:11:22 +02:00
Chocobozzz
def4ea4f38
More robust chunk handler 2023-05-19 13:52:38 +02:00
Chocobozzz
6403a6bd01
peertube runner tests in parallel 2023-05-19 13:33:27 +02:00
Chocobozzz
30453cb5ba
Wait master playlist generation 2023-05-19 12:01:36 +02:00
Chocobozzz
72d606dc07
Avoid uploading empty master file 2023-05-19 11:03:47 +02:00
Chocobozzz
472170b4f9
Avoid aborting completing jobs 2023-05-19 10:10:41 +02:00
Chocobozzz
a5cf9c9867
Don't run ffmpeg twice for lives 2023-05-19 09:40:30 +02:00
Chocobozzz
fe7019b232
Fix peertube runner concurrency 2023-05-19 09:23:20 +02:00
Chocobozzz
ef2e6aabf7
Force ffmpeg to exit on abort 2023-05-17 16:52:56 +02:00
Chocobozzz
e901579b00
Fix tests 2023-05-17 16:43:05 +02:00
Chocobozzz
f86ff3a026
Prevent uninstall error on install error 2023-05-17 16:19:30 +02:00
Chocobozzz
d3fcf1c57a
Fix pending subscription deletion 2023-05-17 15:08:40 +02:00
Chocobozzz
f530dde244
Prevent notification from pending subscriptions 2023-05-17 15:02:23 +02:00
Chocobozzz
f383c7c881
Increase last runner contact update 2023-05-17 14:50:12 +02:00
Chocobozzz
d38541fd59
More robust accept job controller 2023-05-17 14:47:17 +02:00
Chocobozzz
cc518fdbcb
Fix test 2023-05-16 10:10:58 +02:00
Chocobozzz
49b80bd9e1
Use atomic rename 2023-05-16 10:06:07 +02:00
Chocobozzz
2870570505
Provide public RTMP URL to runners 2023-05-16 09:12:50 +02:00
Chocobozzz
aa54733149
Add retries to all webtorrent tests 2023-05-15 16:16:41 +02:00
Chocobozzz
261dac403a
More robust test 2023-05-15 15:42:16 +02:00
Chocobozzz
5a05c14573
Force live stream termination 2023-05-15 15:06:14 +02:00
Chocobozzz
8eb6a9eb2b
Fix test 2023-05-15 13:56:08 +02:00
Chocobozzz
c08a7f16e7
Don't save the session twice 2023-05-15 13:56:00 +02:00
Chocobozzz
339d3fba83
Allow to retry some tests that may fail 2023-05-15 11:41:55 +02:00
Chocobozzz
be3ec61a66
Atomic live segment file write 2023-05-15 11:09:16 +02:00
Chocobozzz
65b2ec673d
Fix SQL query 2023-05-12 09:06:16 +02:00
Chocobozzz
5752683ea5
Increase test timeouts 2023-05-11 16:33:30 +02:00
Chocobozzz
85c20aaeb9
Set actor preferred name case insensitive 2023-05-11 16:16:27 +02:00
Chocobozzz
823c34c07f
Fix reset sequelize instance 2023-05-11 15:03:47 +02:00
Chocobozzz
81f14b9112
Correctly wait for live segment generation 2023-05-11 11:41:43 +02:00
Chocobozzz
c106db1413
Fix tests 2023-05-10 16:23:55 +02:00
Chocobozzz
7815dc450e
Prevent invalid end watch section warnings 2023-05-10 14:23:59 +02:00
Chocobozzz
644391bee6
Fix test cleanup 2023-05-10 13:57:06 +02:00
Chocobozzz
7590f7a868
Add more tests on registration request conflict 2023-05-10 11:53:04 +02:00
Chocobozzz
34023e1253
Fix S3 live sync
Ensure TS chunks referenced in M3U8 playlist are already uploaded on S3
2023-05-10 11:16:05 +02:00
John Livingston
f9eee54f2a
Fix #5744: Missing plugins-global.css + missing async (#5746)
* Fix #5744: Missing plugins-global.css + missing async

* Modifications required by Chocobozzz.

* Styling

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
2023-05-10 09:54:44 +02:00
kontrollanten
674f8ddd41
feat(server): add redis sentinel support (#5593)
* feat(server): add redis sentinel support

closes #5141

* Styling

---------

Co-authored-by: Chocobozzz <me@florianbigard.com>
2023-05-10 09:52:50 +02:00
Chocobozzz
5170f492b9
Try to have more robust live tests 2023-05-10 09:30:33 +02:00
Chocobozzz
9d1e41e8bb
Increase timeouts 2023-05-10 09:02:42 +02:00
Chocobozzz
ce1b5ba78c
Correctly cleanup sql command 2023-05-10 08:43:16 +02:00
Chocobozzz
2f63f629ad
Fix subscribe button responsive 2023-05-09 13:53:33 +02:00
Chocobozzz
1c7fbce4fa
Increase timeout 2023-05-09 08:58:15 +02:00
Chocobozzz
21609258de Increase timeouts 2023-05-09 08:57:34 +02:00
Chocobozzz
a687879e94 Reload the video after waiting for the files lock 2023-05-09 08:57:34 +02:00
Chocobozzz
e7d8e2b245 Fix audio transcoding copy 2023-05-09 08:57:34 +02:00
Chocobozzz
dd3f99434c Fix studio tests 2023-05-09 08:57:34 +02:00
Chocobozzz
ab14f0e0dc Prefer video studio instead of video edition
Clearer and easier to find in the project
2023-05-09 08:57:34 +02:00
Chocobozzz
5e47f6ab98 Support studio transcoding in peertube runner 2023-05-09 08:57:34 +02:00
Chocobozzz
6a49056026 Add TMP persistent directory
To store files that must be preserved between peertube restarts
2023-05-09 08:57:34 +02:00
Chocobozzz
3a0c2a77b1 Enable external plugins to test the PR 2023-05-09 08:57:34 +02:00
Chocobozzz
9a3db678f5 Fix import video file lock 2023-05-09 08:57:34 +02:00
Chocobozzz
cc2abbc320 Fix next video state after optimize/audio merge 2023-05-09 08:57:34 +02:00
Chocobozzz
d102de1b38 Add runner server tests 2023-05-09 08:57:34 +02:00
Chocobozzz
0c9668f779 Implement remote runner jobs in server
Move ffmpeg functions to @shared
2023-05-09 08:57:34 +02:00
Chocobozzz
6bcb854cde
Fix unregister default value 2023-05-05 14:47:24 +02:00
Chocobozzz
841ddf8886
Don't call plugin register/unregister methods 2023-05-05 14:24:27 +02:00
Chocobozzz
82d1653d79
Prevent crash on plugin ws error 2023-04-17 09:51:18 +02:00
Chocobozzz
e7c89cc3f3
Allow to update a live with untouched privacy 2023-04-14 10:14:40 +02:00
Chocobozzz
848347f193
Prevent exception when headers are already sent 2023-04-14 09:34:53 +02:00
Wicklow
2a4c0d8bbe
Feature/filter already watched videos (#5739)
* filter already watched videos

* Updated code based on review comments
2023-04-12 09:32:20 +02:00
Chocobozzz
0cda019c1d
Remove invalid jsonld property 2023-04-11 14:06:46 +02:00
Wicklow
b302c80dc0
feature/ability to disable video history by default (#5728)
* draft: ability to disable video history by default

* Update configuration and add tests

* Updated code based on review comments

* Add tests on registration and video quota

* Remove required video quotas in query

* Fix tests
2023-04-07 10:09:54 +02:00
Chocobozzz
bb7e5605d1
Use hook inside the transaction
To prevent serialization issue
2023-03-31 13:28:41 +02:00
Wicklow
05a60d8599
Feature/Add replay privacy (#5692)
* Add replay settings feature

* Fix replay settings behaviour

* Fix tests

* Fix tests

* Fix tests

* Update openapi doc and fix tests

* Add tests and fix code

* Models correction

* Add migration and update controller and middleware

* Add check params tests

* Fix video live middleware

* Updated code based on review comments
2023-03-31 09:12:21 +02:00
Chocobozzz
1e3e64a679
Fix tests 2023-03-27 08:43:50 +02:00
Chocobozzz
d91ce83d39
Add filter:html.client.json-ld.result hook 2023-03-24 18:37:55 +01:00
Chocobozzz
b926a23c62
Stop testing broken youtube-dl 2023-03-22 11:25:30 +01:00
kontrollanten
6f640ccb48 fix(object-storage-proxy): set content-range 2023-03-22 07:35:36 +01:00
Chocobozzz
951414fc62
Merge branch 'release/5.1.0' into develop 2023-03-21 09:17:25 +01:00
Chocobozzz
1c41b5c1ac
Add infohash test for VOD 2023-03-20 08:57:01 +01:00
Chocobozzz
8b197aca90
Fix flaky tests 2023-03-17 10:05:40 +01:00
Chocobozzz
47d883de2e
Merge branch 'release/5.1.0' into develop 2023-03-16 14:24:50 +01:00
Chocobozzz
c3441b0320
Add video AP hooks 2023-03-16 10:36:33 +01:00
kontrollanten
e72ace5a50
Handle redis disconnection gracefully (#5599)
* feat(server/api/contact): handle redis disconnection

* feat(server/api/metrics): handle metrics disabled
2023-03-14 08:50:44 +01:00
Chocobozzz
2b02a9b98c
Fix tests 2023-03-10 15:45:52 +01:00
Chocobozzz
58e735dd77
Add test on AP hooks 2023-03-10 15:45:52 +01:00
Chocobozzz
3b504f6ed4
Add ability for plugins to alter video jsonld 2023-03-10 15:45:52 +01:00
Chocobozzz
2dbcc3741b
Fix tests 2023-03-10 15:45:31 +01:00
Chocobozzz
96d00a997b
Add test on AP hooks 2023-03-10 15:19:33 +01:00
Chocobozzz
866b5d3f52
Add ability for plugins to alter video jsonld 2023-03-10 14:42:18 +01:00
Chocobozzz
09f3d81e0c
Merge branch 'release/5.1.0' into develop 2023-03-07 11:17:12 +01:00
Wicklow
73fb3dc535 Fix file token reinjection on fragments 2023-03-07 11:16:56 +01:00
Chocobozzz
d9dbf27a7d
Merge branch 'release/5.1.0' into develop 2023-03-07 10:42:31 +01:00
Chocobozzz
b52f504848
Add test to ensure files are deleted 2023-03-07 10:18:32 +01:00
Chocobozzz
f2dbbf6a96
Don't take db lives into account for video quota 2023-03-07 10:18:32 +01:00
Wicklow
692ae8c31c
Hotfix/filter subscription videos (#5665)
* Fix filters on subscription videos

* Add tests to common video filters

* Improve reliability when skipping subscrition path

* Better parameters for skipping subscription videos
2023-03-02 14:50:55 +01:00
Chocobozzz
c0a4982ebe
Fix 404 when having ;threadId param 2023-03-02 10:35:59 +01:00
Chocobozzz
8d1f78044c
Add ability to disable http duration OTEL metrics 2023-02-27 13:53:54 +01:00
Chocobozzz
5b94394a1a
Fix E2E with firefox 2023-02-27 11:58:35 +01:00
Chocobozzz
d7ce9dca61
Add additional check for playlistName 2023-02-27 09:44:03 +01:00
Chocobozzz
4765348107
Add x-powered-by header 2023-02-27 09:22:59 +01:00
Wicklow
c0687c91b9 Add server hooks for listing subscription 2023-02-25 15:47:48 +01:00
Chocobozzz
d41f4a6dc6
Improve image test comparison 2023-02-24 15:10:13 +01:00
Wicklow
16ccb43767 Fix filters on playlists 2023-02-23 16:07:44 +01:00
Chocobozzz
f44cd95c01
Update doc anchor links 2023-02-23 09:46:43 +01:00
Chocobozzz
c6ae14ee3f
Fix typo 2023-02-23 08:25:03 +01:00
Chocobozzz
c5c95361e6
Move to new documentation links 2023-02-22 16:15:14 +01:00
John Livingston
5471449f99 Fix #5614: do not log bearerToken. 2023-02-17 15:10:47 +01:00
Chocobozzz
efaf379789
Fix dev instance following test instances 2023-02-17 10:28:33 +01:00
Chocobozzz
82e3ae1523
Fix CI 2023-02-17 09:21:11 +01:00
Chocobozzz
182082f52d
Update bullmq
Requires redis >= 6.2
2023-02-16 14:10:11 +01:00
Chocobozzz
e65ef81cf5
Update server dependencies 2023-02-16 11:56:58 +01:00
Chocobozzz
5bfe684e76
Move webfinger controller in well known router 2023-02-15 16:36:04 +01:00
Chocobozzz
1a73a7dcd0
Move cli.ts in a private shared directory
It's only used by cli scripts of this directory
2023-02-15 16:30:33 +01:00
Chocobozzz
fd7581b036
Fix "unique viewers" inconsistency with countries 2023-02-15 09:02:34 +01:00
Chocobozzz
20321f2049
Reencode the video on cut
Unfortunately copying audio/video is not precise enough and could lead
to inconsistencies
2023-02-14 14:06:34 +01:00
Chocobozzz
4ea827076d
Fix audio out of synced on studio cut 2023-02-14 11:00:24 +01:00
Chocobozzz
9625be3857
Fix CI timeout 2023-02-14 09:04:49 +01:00
Chocobozzz
4565774669
Fix retrying update on sql serialization conflict 2023-02-14 09:03:22 +01:00
Chocobozzz
afb371d940
Refactor playlist creation for lives 2023-01-27 09:04:02 +01:00
Chocobozzz
a2be43f570
Merge branch 'release/5.0.0' into develop 2023-01-27 08:34:16 +01:00
Chocobozzz
8059e050ef
Fix live with base url object storage 2023-01-27 08:30:56 +01:00
Chocobozzz
2a720a0fac
Try to debug test timeout 2023-01-24 11:57:37 +01:00
Chocobozzz
ff71e06ad1
Add user registration policy info 2023-01-23 14:49:29 +01:00
Chocobozzz
4115f20084
Add ability to not send an email for registration 2023-01-20 15:34:01 +01:00
Chocobozzz
9436936cf6
Add more signup limit tests 2023-01-19 15:27:04 +01:00
Chocobozzz
4e4c23c5b8
Merge branch 'release/5.0.0' into develop 2023-01-19 15:25:52 +01:00
Chocobozzz
823e411fa6
Fix signup limit 2023-01-19 15:23:06 +01:00
Chocobozzz
a68ccaead6
(breaking): Always list nsfw videos in playlists
Keep the same behaviour as unlisted videos
The frontend is in charge to blur the video element if the nsfw setting
is "hide" or "blur"
2023-01-19 15:04:10 +01:00
Chocobozzz
32fde390f4
Use unknown when category is not set
Unstead of Misc, that could be a real category
2023-01-19 14:09:57 +01:00
Chocobozzz
1f6dd00844
Warn on too big max upload part 2023-01-19 14:08:05 +01:00
Chocobozzz
f959b51824
Fix broken merge 2023-01-19 14:00:37 +01:00
Chocobozzz
6e06694fd6
Fix semver comparison 2023-01-19 13:54:53 +01:00
Chocobozzz
f008e9f3f3
Add missing url unique index in local video viewer 2023-01-19 13:54:52 +01:00
Chocobozzz
b379759f55 Add signup approval API tests 2023-01-19 13:53:40 +01:00
Chocobozzz
e364e31e25 Implement signup approval in server 2023-01-19 13:53:40 +01:00
Chocobozzz
eba2a7a834
Don't need a special comment sort function 2023-01-12 11:19:42 +01:00
Chocobozzz
0b96a0fb77
Optimize again comments list sql query 2023-01-12 11:11:41 +01:00
Chocobozzz
3f3530c3db
Merge branch 'release/5.0.0' into develop 2023-01-12 08:54:13 +01:00
Chocobozzz
8180f60477
Fix ACL incompatibility with some s3 providers
We'll move to another method in the future

See https://github.com/Chocobozzz/PeerTube/issues/5497
2023-01-12 08:41:16 +01:00
Chocobozzz
9ec435c85d
Increase tests timeout 2023-01-11 08:44:06 +01:00
Chocobozzz
8c4bbd946d
Refactor model utils 2023-01-10 11:56:08 +01:00
Chocobozzz
a8749f7c3b
Fix comments SQL pagination 2023-01-10 09:17:23 +01:00
Chocobozzz
1c30b112b9
Fix lint 2023-01-09 14:42:52 +01:00
Chocobozzz
f99a3f7dce
Correctly fix build 2023-01-09 14:22:36 +01:00
Chocobozzz
eb66ee8835
Refactor table attributes 2023-01-09 10:29:23 +01:00
Chocobozzz
0a8a79552c
Merge branch 'feature/SO035' into develop 2023-01-09 09:44:00 +01:00
Chocobozzz
cde3d90ded
Use raw sql for comments 2023-01-09 09:29:02 +01:00
Chocobozzz
5847724474
Add tracker opentelemtry metrics 2023-01-05 10:19:51 +01:00
Chocobozzz
60bab7b540
Implement getServerListeningConfig plugin helper 2023-01-04 11:52:54 +01:00
Chocobozzz
60b880acdf
External auth can update user on login 2023-01-04 11:41:29 +01:00
Chocobozzz
7e0c26066a
External auth can set more user fields
videoQuota, videoQuotaDaily, adminFlags
2023-01-04 11:41:29 +01:00
Chocobozzz
b65f5367ba
Add ability to customize token lifetime 2023-01-04 11:41:29 +01:00