Commit Graph

317 Commits

Author SHA1 Message Date
Chocobozzz c6c0fa6cd8 Live streaming implementation first step 2020-11-09 15:33:04 +01:00
Chocobozzz b0ce7c39dc
Add ssl support to postgresql 2020-08-24 11:38:57 +02:00
Rigel Kent fccbbc1a77 add and document new additional video extensions supported at upload 2020-08-10 09:46:59 +02:00
Kim caf2aaf4f9
Add ability to override client assets : logo - favicon - PWA icons - PWA manifest name and description (#2897)
* Add client-overrides storage to config

* Add static-serve for client overrides

* Move backgroun-image logo from bundle to css tag for runtime content hash

* Add dynamic JSON manifest

* Add content hash for manifest, favicon and logo

Co-authored-by: kimsible <kimsible@users.noreply.github.com>
2020-07-10 10:20:11 +02:00
Chocobozzz 1e904cde34
Fix users tests 2020-07-02 14:23:50 +02:00
Girish Ramakrishnan 6ee7221117 Add database.name config option
If database.name is set, we use it as the complete database name.
If unset, we use the "peertube"+database.suffix as the complete database
name.

Fixes #1620
2020-06-25 08:48:44 +02:00
Chocobozzz faa9d434b4
Update server dependencies 2020-06-17 11:42:50 +02:00
Chocobozzz 3b0bd70aa0 Add search target check params 2020-06-10 14:02:41 +02:00
Chocobozzz 5fb2e2888c First implem global search 2020-06-10 14:02:41 +02:00
Levi Bard 3092e9bbb0
Make federation of unlisted videos an instance-level server preference (#2802)
* Add preference for federating unlisted videos

* Connect unlisted video federation with new preference

* Apply pull request feedback

* Fix lint issues

* Remove preference for federating unlisted videos from web admin interface
2020-06-03 09:42:07 +02:00
Chocobozzz 72c33e716f Support broadcast messages 2020-05-29 09:32:12 +02:00
Chocobozzz 95cd31f1fe
Allow to auto follow a specific URL 2020-05-11 10:53:06 +02:00
Chocobozzz 0502e3d0b6
Increase API rate limit 2020-04-17 14:18:24 +02:00
Ismaël Bouya ed3f089cc7 Add sendmail 2020-04-10 10:20:06 +02:00
Chocobozzz 8c9e787526
Add ability to accept or not remote redundancies 2020-04-07 15:32:20 +02:00
Rigel Kent 482fa503e5 Use grid to organise settings in admin, my-account 2020-03-10 16:23:40 +01:00
Chocobozzz b764380ac2 Add ability to list redundancies 2020-01-28 11:35:26 +01:00
Chocobozzz 6848b9f4b2
Use a filtered proxy without variables 2020-01-22 09:36:03 +01:00
Chocobozzz be7ca0c6b9
Use a proxy for youtube-dl to avoid travis errors 2020-01-21 16:46:59 +01:00
Rigel Kent 96a4a7c332
Add description for sensitive configuration options, reword others 2020-01-15 12:15:31 +01:00
Chocobozzz 04cda1d7a5
Add warning if admin disables webtorrent 2020-01-06 17:10:02 +01:00
Chocobozzz 2f6b5e2d6e
Add max file size, max files and ip anonymize log options 2019-12-12 17:15:38 +01:00
Chocobozzz 3a149e9f8b
Add audio only transcoding tests 2019-11-25 10:59:49 +01:00
frankdelange 6ad88df896
Comment changed, mostly to kick Travis into rectifying its last silliness 2019-11-25 10:59:49 +01:00
frankdelange 5c7d650827
Add audio-only option to transcoders and player
This patch adds an audio-only option to PeerTube by means of a new transcoding configuration which creates mp4 files which only contain an audio stream. This new transcoder has a resolution of '0' and is presented in the preferences and in the player resolution menu as 'Audio-only' (localised). When playing such streams the player shows the file thumbnail as background and disables controls autohide.

Audio-only files can be shared and streamed just like any other file. They can be downloaded as well, the resulting file will be an mp4 container with a single audio stream.

This patch is a proof of concept to show the feasibility of 'true' audio-only support. There are better ways of doing this which also enable multiple audio streams for a given video stream (e.g. DASH) but as this would entail a fundamental change in the way PeerTube works it is a bridge too far for a simple proof of concept.
2019-11-25 10:59:47 +01:00
Chocobozzz d7a25329f9
Add ability to disable webtorrent
In favour of HLS
2019-11-25 10:59:43 +01:00
Chocobozzz 5d9e4eaabe
Add ability to enabled HLS in the admin panel 2019-11-05 10:13:37 +01:00
Chocobozzz be04c6fdab Add hardware information in instance config 2019-09-05 10:17:02 +02:00
Chocobozzz 8ae03c3718 Add creation reason 2019-09-05 10:17:02 +02:00
Chocobozzz ccc00cb2aa Add more attributes to about page 2019-09-05 10:17:02 +02:00
Chocobozzz 8424c4026a Add auto follow back support for instances 2019-09-04 16:24:58 +02:00
Chocobozzz aafbc63aae
Consistency between default.yaml and production.yaml 2019-08-29 16:21:19 +02:00
Chocobozzz 916937d7da
email object -> email subject 2019-08-22 10:33:58 +02:00
Chocobozzz df9a1a1365
Add margin to plugin blocks in admin 2019-07-30 10:18:23 +02:00
Chocobozzz 2284f20207
Add gitlab ci support 2019-07-29 13:40:39 +02:00
Chocobozzz 41b15c8921
Update client dependencies 2019-07-25 11:00:45 +02:00
Chocobozzz 09071200c7 Add plugin API tests 2019-07-24 10:58:16 +02:00
Chocobozzz d133f38582 Check latest plugins version with config interval 2019-07-24 10:58:16 +02:00
Chocobozzz 6702a1b2cc Add ability to search available plugins 2019-07-24 10:58:16 +02:00
Chocobozzz 7cd4d2ba10 WIP plugins: add theme support 2019-07-24 10:58:16 +02:00
Chocobozzz 345da516fa WIP plugins: add ability to register plugins 2019-07-24 10:58:16 +02:00
Chocobozzz 8ed86e76b3
Fix travis tests 2019-07-04 17:22:24 +02:00
Chocobozzz c1340a6ac3
Add rate limit to registration and API endpoints 2019-07-04 16:42:40 +02:00
Nassim Bounouas fcf4569f2d Feature/logrotation (#1881)
* #1775 Configure the activation or deactivation of winston log rotation

* Winston log rotation enabled by default #1775

* #1775 tslint correction

* #1775 FileTransportOptions typed and configuration files

* #1775 tslint correction

* #1775 log.rotation.enabled configuration binding
2019-06-11 14:30:44 +02:00
Chocobozzz dd2c2a52cc
Fix email object/body configurations 2019-06-11 10:50:16 +02:00
Chocobozzz ad3405d087
Improve 4K video quality after transcoding 2019-06-06 14:45:57 +02:00
Chocobozzz 73b3aa6429
Merge branch 'feature/audio-upload' into develop 2019-05-21 10:05:12 +02:00
Yohan Boniface b5bfadf0b5 Allow to control emails prefix and signature with config (#1789)
* Allow to control emails prefix and signature with config

* Adapt email config according to @Chocobozzz review
2019-05-17 14:10:19 +02:00
Chocobozzz b345a8047b
Add audio upload tests 2019-05-17 14:04:54 +02:00
Chocobozzz 536598cfaf
Add audio support in upload 2019-05-16 17:16:47 +02:00
Chocobozzz 2ed67a7dd2
Prepare 1.3 RC1 changelog 2019-05-13 17:33:48 +02:00
Yohan Boniface c342726ad4 Allow to control RATES_LIMIT from configuration (#1787)
* Allow to control RATES_LIMIT from configuration

* @Chocobozzz review (squash me)
2019-04-26 13:48:55 +02:00
Chocobozzz cda03765fe
Add ability to delete old remote views 2019-04-12 08:31:06 +02:00
Chocobozzz 8f0bc73d7d
Add ability to limit videos history size 2019-04-11 15:38:53 +02:00
Chocobozzz 31b6ddf866
Add ability to disable tracker 2019-04-10 09:23:18 +02:00
Chocobozzz 14893eb71c
Add ability to manually approves instance followers in REST API 2019-04-08 15:18:04 +02:00
Chocobozzz 5b9c965d5a
Add ability to forbid followers 2019-04-08 14:06:23 +02:00
Josh Morel 7ccddd7b52 add quarantine videos feature (#1637)
* add quarantine videos feature

* increase Notification settings test timeout

to 20000ms. was completing 7000 locally but timing out
after 10000 on travis

* fix quarantine video test issues

-propagate misspelling
-remove skip from server/tests/client.ts

* WIP use blacklist for moderator video approval

instead of video.quarantine boolean

* finish auto-blacklist feature
2019-04-02 11:26:47 +02:00
Chocobozzz 0b16f5f220 Add videos playlist exist tests 2019-03-18 11:17:59 +01:00
Chocobozzz 9c6ca37fc1 Rename streaming playlists routes/directories 2019-03-18 11:17:59 +01:00
Chocobozzz 539d3f4faa
BREAKING: update CSP configuration
Disable it by default and add ability to specify a custom report uri
2019-02-21 16:28:53 +01:00
Chocobozzz f8802489bb
Add isNSFW instance configuration key 2019-02-20 15:36:43 +01:00
Chocobozzz 7f8f8bdb4a
HLS is only supported by ffmpeg 4
Because of c8f625f529
2019-02-12 11:14:36 +01:00
Chocobozzz 9b712a2017
Add ffmpeg version in config for hls transcoding 2019-02-11 11:46:08 +01:00
Chocobozzz 0920929696 Add hls support on server 2019-02-11 09:13:02 +01:00
Chocobozzz a4101923e6
Implement contact form on server side 2019-01-10 11:32:37 +01:00
Rigel Kent 5e755fff9d add Content Security Policy (#1252)
* add Content Security Policy

* remove reflect-metadata on production builds to get rid of unsafe-eval

* fix baseCSP usage

* add SRI to CSP

* add blob: to media-src

* remove SRI

* CSP set to reportOnly

* adding data: to connect-src CSP

* remove block-all-mixed-content

* add report-uri support
2018-12-13 09:49:45 +01:00
Chocobozzz 14e2014acc Support additional video extensions 2018-12-11 15:11:09 +01:00
Chocobozzz 6040f87d14
Add tmp and redundancy directories 2018-12-04 16:04:15 +01:00
Chocobozzz 8d4273463f
Check follow constraints when getting a video 2018-11-16 15:49:16 +01:00
Chocobozzz 87bc58e159
Fix test configuration 2018-10-08 10:56:05 +02:00
Chocobozzz e5565833f6
Improve redundancy: add 'min_lifetime' configuration 2018-09-24 13:38:39 +02:00
Chocobozzz f9f899b9f8
Add redundancy check interval in config 2018-09-19 16:21:30 +02:00
Chocobozzz d9bdd007d7
Put config redundancy strategies in "strategies" subkey 2018-09-19 16:12:07 +02:00
Chocobozzz 098eb37797
Reduce video.ts file size by moving some methods in other files 2018-09-19 09:54:35 +02:00
Rigel Kent df182b373f
normalize robot.txt and specify test servers as scope of security audits 2018-09-18 11:18:51 +02:00
Chocobozzz c07b604111
Fix checker if we don't have redundancy strategies 2018-09-17 11:28:33 +02:00
Chocobozzz 3f6b6a565d
Add recently added redundancy strategy 2018-09-14 11:05:38 +02:00
Chocobozzz b36f41ca09
Add trending videos strategy 2018-09-14 09:57:21 +02:00
Chocobozzz c48e82b5e0 Basic video redundancy implementation 2018-09-13 14:05:49 +02:00
Rigel Kent 1f4f151019
add vulnerability disclosure policy 2018-09-06 14:25:27 +02:00
Austin Heap 5447516b9a draft "security.txt" spec integration (#1020) 2018-09-06 14:23:46 +02:00
Chocobozzz 9a629c6efb
Trending by interval 2018-08-31 17:22:01 +02:00
Josh Morel d9eaee3939 add user account email verificiation (#977)
* add user account email verificiation

includes server and client code to:

* enable verificationRequired via custom config
* send verification email with registration
* ask for verification email
* verify via email
* prevent login if not verified and required
* conditional client links to ask for new verification email

* allow login for verified=null

these are users created when verification not required
should still be able to login when verification is enabled

* refactor email verifcation pr

* change naming from verified to emailVerified
* change naming from askVerifyEmail to askSendVerifyEmail
* undo unrelated automatic prettier formatting on api/config
* use redirectService for home
* remove redundant success notification on email verified

* revert test.yaml smpt host
2018-08-31 09:18:19 +02:00
Felix Ableitner bee0abffff Implement daily upload limit (#956)
* Implement daily upload limit (ref #652)

* remove duplicate code

* review fixes

* fix tests?

* whitespace fixes, finish leftover todo

* fix tests

* added some new tests

* use different config value for tests

* remove todo
2018-08-28 09:01:35 +02:00
Chocobozzz f37dc0dd14 Add ability to search video channels 2018-08-27 09:41:54 +02:00
Chocobozzz 1297eb5db6 Add refresh video on search 2018-08-27 09:41:54 +02:00
Chocobozzz a84b8fa5cf Add import.video.torrent configuration 2018-08-08 09:30:31 +02:00
Chocobozzz 5d08a6a74e Add import http enabled configuration 2018-08-06 11:19:16 +02:00
Chocobozzz fbad87b047 Add ability to import video with youtube-dl 2018-08-06 11:19:16 +02:00
Rigel Kent 1c3386e87f adding ORM pool configuration 2018-07-31 15:38:08 +02:00
Chocobozzz f842e810b4
Update default config cache 2018-07-25 15:11:06 +02:00
Chocobozzz 40e87e9ecc Implement captions/subtitles 2018-07-16 11:50:08 +02:00
Rigel Kent 19f7b248d8 adding redis unix connection 2018-07-14 15:00:56 +02:00
Chocobozzz 09f35e2a6f
Add warning regarding transcoding 2018-06-07 16:44:22 +02:00
Chocobozzz 351d5225d6
Improve Twitter config help 2018-05-31 11:04:34 +02:00
Chocobozzz 6401417d6c
Add help in conf file regarding SMTP 2018-05-29 10:28:08 +02:00
Rigel Kent ff2c1fe813 feature: IP filtering on signup page
disable registration form on IP not in range
checking the CIDR list before filtering with it
placing the cidr filters as an attribute object in the config
2018-05-22 19:44:34 +02:00
Chocobozzz 78881bc4fa
Allow crawling by default 2018-05-22 11:02:10 +02:00
Chocobozzz cd4d7a2ca8
Fix peertube with google bot 2018-05-22 09:17:20 +02:00
Rigel Kent 30c82f0d2e feature: db selection in redis
resolves #579
2018-05-21 17:49:56 +02:00
Rigel Kent ac235c37e2 robots.txt config and route 2018-05-16 10:50:55 +02:00
Chocobozzz 8be1afa12b
Add ability to embed a video in Twitter
The instance should be whitelisted first
2018-05-11 08:48:20 +02:00
Chocobozzz 0883b3245b
Add ability to choose what policy we have for NSFW videos
There is a global instance setting and a per user setting
2018-04-19 11:01:34 +02:00
Pierre-Alain TORET cff8b272b1 Support hostname binding in config
* Add basic support for hostname binding

Signed-off-by: Pierre-Alain TORET <pierre-alain.toret@protonmail.com>

* Make production example a bit more secure

Signed-off-by: Pierre-Alain TORET <pierre-alain.toret@protonmail.com>

* Make example config files compatible with hostname binding modification

Signed-off-by: Pierre-Alain TORET <pierre-alain.toret@protonmail.com>

* Fix typo

Signed-off-by: Pierre-Alain TORET <pierre-alain.toret@protonmail.com>

* Bind on 127.0.0.1 by default

Signed-off-by: Pierre-Alain TORET <pierre-alain.toret@protonmail.com>

* Update Docker configuration with hostname binding

Signed-off-by: Pierre-Alain TORET <pierre-alain.toret@protonmail.com>
2018-04-17 11:14:32 +02:00
luz.paz f209b32afa Misc. typos
Found via `codespell -q 3`
2018-03-30 18:51:57 +02:00
Chocobozzz 490b595a01
Prevent brute force login attack 2018-03-29 11:03:30 +02:00
Chocobozzz 95540ed23a
Prepare building docker files on docker hub 2018-03-23 11:22:26 +01:00
Chocobozzz bebf2d89d3
Add option to disable starttls 2018-03-22 16:12:52 +01:00
Chocobozzz 2e3a0215d0
Add short description in config 2018-03-15 14:34:47 +01:00
Chocobozzz 901637bb87
Add ability to change the homepage 2018-03-01 13:57:29 +01:00
Chocobozzz c90f0614e6
Fix typo 2018-02-27 17:24:27 +01:00
Chocobozzz 509cd56aca
Add warning in production.yaml
To avoid confusion with the local-production.json file
2018-02-27 17:19:22 +01:00
Chocobozzz 98f535a508
Only use 1 thread for transcoding by default 2018-02-26 12:12:49 +01:00
Chocobozzz 1125c40a32
Change transcoding default conf options 2018-02-26 10:49:27 +01:00
Chocobozzz 00b5556c18
Add ability to add custom css/javascript 2018-02-22 10:22:53 +01:00
Chocobozzz a0922eb9b3
Change default logging 2018-02-14 16:03:09 +01:00
Chocobozzz bf874e33da
Add default description and default terms 2018-02-09 09:44:38 +01:00
Chocobozzz 66b16cafb3
Add new name/terms/description config options 2018-01-31 16:42:40 +01:00
Chocobozzz 31b5a25591
Fix email tests 2018-01-30 15:35:15 +01:00
Chocobozzz f076daa76a
Add tests for emails 2018-01-30 15:16:24 +01:00
Chocobozzz ecb4e35f4e
Add ability to reset our password 2018-01-30 13:27:07 +01:00
Chocobozzz 94a5ff8a4a
Move job queue to redis
We'll use it as cache in the future.

/!\ You'll loose your old jobs (pending jobs too) so upgrade only when
you don't have pending job anymore.
2018-01-25 18:41:17 +01:00
Chocobozzz 59c48d49c5
Peertube home in /var/www instead of /home 2018-01-23 09:00:23 +01:00
Chocobozzz 23e27dd535
Add ability to configure log level 2018-01-19 13:58:13 +01:00
Chocobozzz 48be26e1fc
Remove unused keys in configuration 2018-01-15 18:07:08 +01:00
Chocobozzz 1e5c707b08
Add github release to release script 2018-01-15 16:43:37 +01:00
Chocobozzz 6b2ef589ed
Prepare production workflow 2018-01-15 11:28:41 +01:00
Chocobozzz a22bfc3ebc
Refractor peertube videojs plugin 2018-01-09 15:29:05 +01:00
Chocobozzz 2890b615f3
Handle HTML is comments 2018-01-04 17:50:30 +01:00
Chocobozzz 2295ce6c4e
Add account avatar 2017-12-04 10:34:40 +01:00
Chocobozzz d478d83da9
Update production configuration file example 2017-10-17 11:13:01 +02:00
Chocobozzz 14d3270f36
Change how we handle resolution
It was an enum before, now we just use video height
2017-10-09 11:17:36 +02:00
Chocobozzz aa8b6df4a5
Client: handle multiple file resolutions 2017-10-06 11:03:09 +02:00
Chocobozzz 40298b0254 Implement video transcoding on server side 2017-10-03 15:31:26 +02:00
Chocobozzz 77a5501f64 Fix tests and user quota 2017-09-06 17:28:20 +02:00
Chocobozzz 5c98d3bf07 Begin tests for user quota 2017-09-05 22:09:16 +02:00
Chocobozzz b0f9f39ed7 Begin user quota 2017-09-04 20:07:54 +02:00
Chocobozzz 62ccb24e24 Update production example configuration 2017-08-26 09:19:58 +02:00
Chocobozzz 291e8d3eed Add ability to limit user registrations 2017-07-25 20:17:28 +02:00
Chocobozzz f981dae861 Add previews cache system between pods 2017-07-12 11:56:02 +02:00
Chocobozzz fce897f326 Server: add tests to video transcoder 2017-05-04 21:51:00 +02:00
Chocobozzz 227d02fead Server: add job scheduler to transcode video files 2017-05-04 21:12:32 +02:00
Chocobozzz 2c2e909216 Server: add ability to register new user 2017-04-09 12:08:36 +02:00
Chocobozzz e22528aca6 Server: add config endpoint 2017-03-10 11:32:39 +01:00
Chocobozzz 4793c343fd Add email to pods 2017-02-16 19:19:56 +01:00
Luc Didry 98dffd102e Add hint about database name in config files 2017-01-16 09:53:05 +01:00
Chocobozzz 6c05c149d2 Add quotes to config prod example 2017-01-12 15:42:40 +01:00
Chocobozzz 55fa55a9be Server: add video abuse support 2017-01-04 21:05:13 +01:00
Chocobozzz 552cc9d646 Copy all keys in production example so if we chagne the default one
production servers won't break
2016-12-27 18:35:56 +01:00
Chocobozzz b769007f73 Update migrations code 2016-12-25 09:44:57 +01:00
Chocobozzz feb4bdfd9b First version with PostgreSQL 2016-12-19 21:22:28 +01:00
Chocobozzz 6a94a109b4 Server: add video preview 2016-11-16 20:29:26 +01:00
Chocobozzz 3737bbafb1 Server: host -> hostname (host = hostname + port) 2016-10-26 20:28:34 +02:00
Chocobozzz b3d9251015 Server: Uploads -> Videos 2016-10-21 11:33:31 +02:00
Chocobozzz 5683534893 Remove references to Electron 2016-10-13 21:48:55 +02:00
Chocobozzz a6375e6966 Merge branch 'master' into webseed-merged 2016-10-02 15:39:09 +02:00
Chocobozzz 825a5d9c5e Add database suffix to the production configuration example 2016-10-01 12:40:02 +02:00
Chocobozzz 21511bbafc Add a comment to the webserver part in the yaml configuration 2016-10-01 12:24:18 +02:00
Chocobozzz 1e2564d392 Server: make friends urls come from the request instead of the
configuration file
2016-08-20 17:11:38 +02:00
Chocobozzz 052937db8a First draft using only webseed for server 2016-07-27 21:21:57 +02:00
Chocobozzz f1f4732f8e Add production example file 2016-05-20 15:29:25 +02:00
Chocobozzz 09bc69df7a Add debug electron setting 2016-05-13 14:23:11 +02:00
Chocobozzz cbe2f7c348 Refractoring and add thumbnails support (without tests) 2016-05-10 21:19:24 +02:00
Chocobozzz 9353449515 Use scripty instead of writing shell commands in package.json 2016-04-30 12:56:36 +02:00
Chocobozzz 3bcb78b3af Make the network auto sufficient (eject bad pods with scores) 2015-11-24 08:33:59 +01:00
Chocobozzz 8c308c2bf7 Spawn 2015-10-29 23:14:54 +01:00