Commit Graph

498 Commits (57cfff78858b2360d9e038e2a504b761cb51da47)

Author SHA1 Message Date
Chocobozzz 030177d246
Don't forward view, send updates instead
To avoid inconsistencies in the federation, now the origin server will
tell other instances what is the correct number of views
2018-11-15 16:38:37 +01:00
Chocobozzz 742ddee1f1
Fix server redundancy tests 2018-11-15 10:15:34 +01:00
Chocobozzz 5c6d985fae
Check activities host 2018-11-14 16:32:27 +01:00
Chocobozzz df66d81583
Add compatibility with other Linked Signature algorithms 2018-11-14 16:32:27 +01:00
Chocobozzz fb651cf2d4
Revert change og video type 2018-11-14 08:18:50 +01:00
BO41 891bc4f8bf change video type 2018-11-13 15:28:50 +01:00
Chocobozzz 41f2ebae4f
Add HTTP signature check before linked signature
It's faster, and will allow us to use RSA signature 2018 (with upstream
jsonld-signature module) without too much incompatibilities in the
peertube federation
2018-10-19 12:26:37 +02:00
Chocobozzz e27ff5da6e
AP mimeType -> mediaType 2018-10-18 10:44:15 +02:00
Chocobozzz af5767ffae Add user/instance block by users in the client 2018-10-16 16:41:36 +02:00
Chocobozzz 7ad9b9846c Add ability for users to block an account/instance on server side 2018-10-16 16:41:36 +02:00
Chocobozzz 71e318b4fe
Merge branch 'release/v1.0.0' into develop 2018-10-11 09:52:16 +02:00
Chocobozzz 729bb18481
Add more headers to broadcast/unicast 2018-10-10 08:51:58 +02:00
Chocobozzz 9f1ddd2496
Change a little bit optimize-old-videos logic 2018-10-08 16:50:56 +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
Lucas Declercq 7f2cfe3a79 Rename downloadingEnabled property to downloadEnabled 2018-10-08 14:45:22 +02:00
Chocobozzz ecf3f060ef
Fix avatar update 2018-10-08 10:37:43 +02:00
Chocobozzz 505319061e
Fix avatar update 2018-10-08 10:37:08 +02:00
Lucas Declercq 156c50af30 Add downloadingEnabled property to video model 2018-10-06 19:17:39 +02:00
Chocobozzz 6e46de095d
Add user history and resume videos 2018-10-05 11:22:38 +02:00
Chocobozzz be691a57c5
Check video exists before extending its expiration 2018-10-03 15:52:39 +02:00
Chocobozzz b88a459664
Upsert cache file on create activity 2018-10-02 14:40:03 +02:00
Chocobozzz 659edaa62c
Correctly forward comment deletion 2018-10-02 11:33:18 +02:00
Chocobozzz 792e5b8e5b
Try to improve redundancy tests 2018-10-02 09:04:19 +02:00
Chocobozzz d05be4d944
Don't build redundancy urls with "-1" as fps 2018-10-01 18:40:17 +02:00
Chocobozzz 99cc653f47
Fix redundancy with specific videos 2018-10-01 16:33:53 +02:00
Chocobozzz a3737cbf2b
Fix video fps validator 2018-10-01 16:27:47 +02:00
Chocobozzz d382f4e917
Fix refreshing external video attributes 2018-10-01 15:34:31 +02:00
Chocobozzz 601527d795
Check video channel name is unique on our instance 2018-10-01 15:20:14 +02:00
Chocobozzz cf9166cf2f
Add timeout on youtube dl to cleaup files 2018-10-01 12:00:05 +02:00
Chocobozzz e95e0463d8
Correctly delete files on failed import 2018-10-01 10:44:16 +02:00
Chocobozzz 26649b4215
Ensure video existence before duplicating it 2018-10-01 10:31:42 +02:00
Chocobozzz 46f8d69b4e
Fix redundancy with videos already duplicated with another instance 2018-10-01 09:41:48 +02:00
Chocobozzz 161b061d4e
Remove duplicated videos on unfollow/delete redundancy 2018-09-28 10:07:05 +02:00
Chocobozzz 8578e3b5e6
Fix federation with a comment reply 2018-09-27 11:05:50 +02:00
Chocobozzz 2e7cf5ae0c
Fix video files duplicated when fps is null
Null values are not considered equal in a UNIQUE index
2018-09-26 14:08:35 +02:00
Chocobozzz 4a534352ad
Fix avatar transaction retry 2018-09-26 10:15:50 +02:00
Chocobozzz cfaf819c38
Reduce video import TTL 2018-09-25 17:49:49 +02:00
Chocobozzz ebdb612458
Fix redundancy totalVideos stats 2018-09-25 17:49:48 +02:00
Chocobozzz 47d0b3ee61
Fix comment deletion with mastodon
Will only act with new comments
2018-09-24 16:24:42 +02:00
Chocobozzz e5565833f6
Improve redundancy: add 'min_lifetime' configuration 2018-09-24 13:38:39 +02:00
Chocobozzz 1cfa8d6809
Remove unnecessary actor existance check
We already checked it in the signature checker
2018-09-21 09:51:24 +02:00
Chocobozzz f201a74992
Cache user token 2018-09-20 11:45:59 +02:00
Chocobozzz 91411dba92
Limit associations fetch when loading token 2018-09-20 11:45:59 +02:00
Chocobozzz 606c946e74
Move youtubeDL upgrader in helpers/ 2018-09-19 16:24:24 +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 12ba460e9e
Improve AP actor checks 2018-09-19 15:47:55 +02:00
Chocobozzz e587e0ecee
Optimize activity actor load in AP processors 2018-09-19 15:22:55 +02:00
Chocobozzz d4defe07d2
Optimize video view AP processing 2018-09-19 11:41:30 +02:00
Chocobozzz 4157cdb137
Refractor videos AP functions 2018-09-19 11:16:23 +02:00
Chocobozzz 96f29c0f6d
Optimize SQL requests of videos AP endpoints 2018-09-19 10:20:38 +02:00
Chocobozzz 627621c1e8
Optimize SQL requests of watch page API endpoints 2018-09-19 09:54:37 +02:00
Chocobozzz 098eb37797
Reduce video.ts file size by moving some methods in other files 2018-09-19 09:54:35 +02:00
Chocobozzz a2377d15ee
Refractor activities sending 2018-09-14 16:51:35 +02:00
Chocobozzz 7348b1fd84
Speed up overviews route 2018-09-14 11:52:23 +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 6f0c46be8c
Process last hour views instead of current hour 2018-09-13 14:14:15 +02:00
Chocobozzz c48e82b5e0 Basic video redundancy implementation 2018-09-13 14:05:49 +02:00
Chocobozzz 9431cabf8a
Fix video views increment 2018-09-13 10:13:25 +02:00
Chocobozzz 5cf84858d4
Add federation to ownership change 2018-09-04 10:49:53 +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
Chocobozzz 6b6168606b
Bufferize videos views in redis 2018-08-30 15:03:18 +02:00
Chocobozzz 9ee92651f6
Fix tests 2018-08-28 11:32:03 +02:00
Chocobozzz bfcef50db9
Fix oauth server module 2018-08-28 10:56:09 +02:00
Chocobozzz 62689b942b
Correctly migrate to fs-extra 2018-08-27 16:23:34 +02:00
Rigel Kent c9d5c64f98 replace fs by fs-extra to prevent EMFILE error 2018-08-27 16:03:57 +02:00
Chocobozzz 687d638c2b Fetch outbox when searching an actor 2018-08-27 09:41:54 +02:00
Chocobozzz f5b0af50c8 Search video channel handle/uri 2018-08-27 09:41:54 +02:00
Chocobozzz f37dc0dd14 Add ability to search video channels 2018-08-27 09:41:54 +02:00
Chocobozzz 240085d005 Fix tests 2018-08-27 09:41:54 +02:00
Chocobozzz 83e6519ba4 Refractor comment creation from federation 2018-08-27 09:41:54 +02:00
Chocobozzz 1297eb5db6 Add refresh video on search 2018-08-27 09:41:54 +02:00
Chocobozzz f6eebcb336 Add ability to search a video with an URL 2018-08-27 09:41:54 +02:00
Chocobozzz 22a16e36f6 Add local user subscriptions 2018-08-27 09:41:54 +02:00
Chocobozzz 8a19bee1a1 Add ability to set a name to a channel 2018-08-27 09:41:54 +02:00
Chocobozzz 965c4b22d0 Use height instead of width to represent the video resolution 2018-08-27 09:41:54 +02:00
Chocobozzz 06a05d5f47 Add subscriptions endpoints to REST API 2018-08-27 09:41:54 +02:00
Chocobozzz 4f1f6f0383
Ensure youtubedl binary exists in ydl helper 2018-08-16 09:45:51 +02:00
Chocobozzz 06215f15e0
Cleanup utils helper 2018-08-14 15:28:30 +02:00
Chocobozzz e5e7f7fe99
Add tests when getting a blacklisted video 2018-08-14 09:27:19 +02:00
Chocobozzz 26b7305a23
Add blacklist reason field 2018-08-14 09:27:18 +02:00
Chocobozzz 268eebed92
Add state and moderationComment for abuses on server side 2018-08-10 16:54:01 +02:00
Chocobozzz 141b177db0
Add ability to ban/unban users 2018-08-09 17:55:05 +02:00
Chocobozzz eacb25c436
Add reason when banning a user 2018-08-08 17:44:22 +02:00
Chocobozzz e69219184b
Implement user blocking on server side 2018-08-08 15:22:58 +02:00
Chocobozzz 541006e355 Correct webtorrent download cleanup 2018-08-08 09:30:31 +02:00
Chocobozzz 3e17515e29 Add torrent tests 2018-08-08 09:30:31 +02:00
Chocobozzz a84b8fa5cf Add import.video.torrent configuration 2018-08-08 09:30:31 +02:00
Chocobozzz 990b6a0b0c Import torrents with webtorrent 2018-08-08 09:30:31 +02:00
Chocobozzz ce33919c24 Import magnets with webtorrent 2018-08-08 09:30:31 +02:00
Chocobozzz b2977eecb8 Fix fps federation 2018-08-06 11:19:16 +02:00
Chocobozzz 590fb50690 Add tests regarding video import 2018-08-06 11:19:16 +02:00
Chocobozzz 2b86fe7274 Add job ttl 2018-08-06 11:19:16 +02:00
Chocobozzz 516df59b3b Remove ability to delete video imports
Users should remove the linked video instead
2018-08-06 11:19:16 +02:00
Chocobozzz d7f83948a1 Correctly handle video import errors 2018-08-06 11:19:16 +02:00
Chocobozzz ed31c05985 Add ability to list video imports 2018-08-06 11:19:16 +02:00
Chocobozzz 299474e827 Add ability to remove a video import 2018-08-06 11:19:16 +02:00
Chocobozzz ce32426be9 Auto update youtube-dl 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
Aurélien Bertron 80e36cd9fa Add audit logs in various modules
- Videos
- Videos comments
- Users
- Videos channels
- Videos abuses
- Custom config
2018-07-31 15:40:29 +02:00
Chocobozzz 6104adc3e9
Don't send follow request if the follow is already accepted 2018-07-31 11:15:59 +02:00
Chocobozzz 25e4d6ee97
Refresh orphan actors 2018-07-31 11:04:33 +02:00
Chocobozzz 4a9e71c2b1
Increase max stalled count in job queue 2018-07-30 19:18:01 +02:00
Chocobozzz 14f2b3ad11
Graceful job queue shutdown 2018-07-30 18:49:54 +02:00
Chocobozzz 8e0fd45e14
Add more info logging 2018-07-30 17:02:40 +02:00
Chocobozzz 3ac046e2a4
Fix peertube on chrome 2018-07-26 16:46:36 +02:00
Chocobozzz 2cebd79701
Fix last commit 2018-07-26 11:02:04 +02:00
Rigel Kent c1e791bad0
expliciting type checks and predicates (server only) 2018-07-25 22:01:25 +02:00
Chocobozzz 77de223a5f
Fix publishedAt after a scheduled update 2018-07-24 15:11:28 +02:00
Chocobozzz e032aec9b9
Render CSS/title/description tags on server side 2018-07-18 10:00:37 +02:00
Chocobozzz f4001cf408
Handle .srt subtitles 2018-07-16 14:31:40 +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 94831479f5 Migrate to bull 2018-07-11 14:00:17 +02:00
Chocobozzz 4bbfc6c606
API: Add ability to update video channel avatar 2018-06-29 11:29:23 +02:00
Chocobozzz 1b952dd426
Reset published date on publish 2018-06-28 16:58:15 +02:00
Chocobozzz b7f1747dc7
Create webtorrent client on player load
So we don't run Angular change detection every 250ms on webtorrent
import, when https://github.com/mafintosh/speedometer/pull/7 will be
merged
2018-06-18 10:26:18 +02:00
Chocobozzz bbe0f0645c
Add ability to schedule video publication 2018-06-15 18:20:56 +02:00
Chocobozzz 2baea0c77c
Add ability for uploaders to schedule video update 2018-06-14 18:06:56 +02:00
Chocobozzz bcec136ee6
Fix lint 2018-06-13 14:55:18 +02:00
Chocobozzz 90d4bb8125
Refractor retry transaction function 2018-06-13 14:27:40 +02:00
Chocobozzz 3cd0734fd9
Improve tests when waiting pending jobs 2018-06-13 10:22:53 +02:00
Chocobozzz 2186386cca
Add concept of video state, and add ability to wait transcoding before
publishing a video
2018-06-12 20:37:51 +02:00
Chocobozzz 8eb8bc201e
Pick average video file insead of max quality 2018-06-07 17:57:11 +02:00
Chocobozzz 28be89161a
Improve create import file job
Fix federation of .ogv videos
2018-06-07 09:43:18 +02:00
Florent Fayolle 0138af9237 Add create-import-video-file-job command 2018-06-07 08:57:48 +02:00
Chocobozzz 9588d4f49b
Correctly forward video related activities 2018-05-31 10:23:56 +02:00
Chocobozzz 0c948c1659
Add ability to manually run transcoding job 2018-05-30 10:49:56 +02:00
Chocobozzz 53a613171e
Fix publishedAt value after following a new instance 2018-05-28 18:50:44 +02:00
Chocobozzz e3d5ea4f82
Fix actor outbox 2018-05-28 12:13:00 +02:00
Chocobozzz 8fffe21a7b
Refractor and optimize AP collections
Only display urls in general object, and paginate video comments, shares, likes and
dislikes
2018-05-25 16:21:16 +02:00
Chocobozzz e251f170b0
Split files in activitypub server 2018-05-25 11:33:04 +02:00
Chocobozzz 16f29007dc
Fix cc field in classic audience 2018-05-25 11:17:41 +02:00
Chocobozzz b40f057594
Handle concurrent requests in cache middleware 2018-05-23 10:03:26 +02:00
Rigel Kent 30c82f0d2e feature: db selection in redis
resolves #579
2018-05-21 17:49:56 +02:00
Chocobozzz 938d3fa0ff
Move normalize functions in helpers 2018-05-11 15:55:39 +02:00
Chocobozzz 5cf1350011
Improve AP validation for Notes 2018-05-11 15:41:54 +02:00
Chocobozzz 0f320037e6
Add ability to update a video channel 2018-05-11 15:25:51 +02:00
Chocobozzz fd4484f19e
Cache AP video route for 5 seconds 2018-05-11 15:24:17 +02:00
Chocobozzz 1d6e5dfc37
Improve video torrent AP object validator 2018-05-11 08:48:20 +02:00
Chocobozzz 71e3dfda4e
Add timeout and TTL to request jobs 2018-05-09 09:08:22 +02:00
Chocobozzz 08c1efbe32
Add video channel management 2018-04-26 16:18:01 +02:00
Chocobozzz 6b738c7a31
Video channel API routes refractor 2018-04-25 13:50:48 +02:00
Chocobozzz 9d3ef9fe05
Use ISO 639 for languages 2018-04-23 14:39:52 +02:00
Chocobozzz f55e5a7bf8
Process broadcast requests in parallel 2018-04-18 16:04:49 +02:00
Chocobozzz 5350fd8e5b
Move server follow in the job queue
It helps to track follow errors
2018-04-18 15:32:40 +02:00
Chocobozzz 4195cd2bc5
Add redis cache to feed route 2018-04-17 14:04:34 +02:00
Chocobozzz 37ddeba57f
Don't add a dot after the url in forgot password email 2018-04-15 09:29:53 +02:00
Chocobozzz 3d3441d6c7
Don't start application until all components were initialized 2018-04-04 11:04:14 +02:00