Chocobozzz
8484599294
Fix subscriptions
2021-12-17 15:21:24 +01:00
Chocobozzz
9e2789aa4b
Fix internal user subscription
2021-12-17 14:42:31 +01:00
Chocobozzz
f304a1580b
Fix build
2021-12-17 13:58:07 +01:00
Chocobozzz
c55e3d7227
Move test functions outside extra-utils
2021-12-17 12:24:03 +01:00
Chocobozzz
6b5f72beda
Move typescript utils in its own directory
2021-12-16 18:04:16 +01:00
lutangar
ced38c0ffe
fix plugin storage return value when storing a Json array
2021-12-16 10:17:39 +01:00
Chocobozzz
a9bfa85d2c
Add ability for admins to set default p2p policy
2021-12-16 10:08:55 +01:00
lutangar
06aad80165
chore(refactor): remove shared folder dependencies to the server
...
Many files from the `shared` folder were importing files from the `server` folder.
When attempting to use Typescript project references to describe dependencies,
it highlighted a circular dependency beetween `shared` <-> `server`.
The Typescript project forbid such usages.
Using project references greatly improve performance by rebuilding only
the updated project and not all source files.
> see https://www.typescriptlang.org/docs/handbook/project-references.html
2021-12-16 10:08:43 +01:00
Chocobozzz
90701ec1d8
Add hls to prune storage script
2021-12-10 10:28:46 +01:00
Chocobozzz
6ba93fa639
Fix torrent metadata update for hls
2021-12-09 11:23:02 +01:00
Chocobozzz
9b293cd6a2
Update torrent metadata on video update
2021-12-08 11:07:19 +01:00
Chocobozzz
80badf493a
Add mute status in account and channel pages
2021-12-07 09:46:01 +01:00
Chocobozzz
025d858e79
Fix pending transcoding with failed job
2021-12-03 14:40:29 +01:00
Chocobozzz
98846837eb
Stop killing peertube in ci script
2021-11-18 15:32:06 +01:00
Chocobozzz
ad5db1044c
Add ability to run transcoding jobs
2021-11-18 15:20:57 +01:00
Chocobozzz
b46cf4b920
Add ability to remove hls/webtorrent files
2021-11-18 09:04:30 +01:00
Chocobozzz
11a554cfcf
Fix unused parameter
2021-11-16 09:29:54 +01:00
Chocobozzz
527a52ac42
Add ability to filter out public videos from admin
2021-11-12 14:23:22 +01:00
Chocobozzz
597f771f3f
Fix video update transaction
2021-11-10 15:52:22 +01:00
Chocobozzz
17ddba4950
Fix thumbnail update
2021-11-10 15:13:56 +01:00
Chocobozzz
51353d9a03
Refactor video views
...
Introduce viewers attribute for live videos
Count views for live videos
Reduce delay to see the viewer update for lives
Add ability to configure video views buffer interval and view ip
expiration
2021-11-09 15:00:31 +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
df1db951c5
Support RTMPS
2021-11-05 11:38:17 +01:00
Chocobozzz
d324756edb
Add ability to filter by file type
2021-11-03 11:32:41 +01:00
Chocobozzz
7e7d8e4853
Some fixes for admin videos list
2021-11-02 11:13:13 +01:00
Chocobozzz
3c10840fa9
Add video file size info in admin videos list
2021-10-29 11:48:21 +02:00
Chocobozzz
2760b454a7
Deprecate filter video query
...
Introduce include and isLocal instead
2021-10-29 11:48:21 +02:00
Florian CUNY
754b6f5f41
Made the video channels limit (per user) server-wide configurable ( #4491 )
...
* Made the video channels limit (per user) server-wide configurable
Implements https://github.com/Chocobozzz/PeerTube/issues/3092
Also added a "quota bar" in the account's settings page
* Fixed lint errors
* Another pass at fixing lint errors
* Applied code suggestions
* Removed 'video channels quota'
2021-10-26 16:42:10 +02:00
Chocobozzz
0c691a182c
Fix sequelize order typings
2021-10-22 16:40:48 +02:00
Chocobozzz
ab4001aade
Provide origin URL to client and fix remote share
2021-10-22 14:11:58 +02:00
Chocobozzz
c4c0c31144
Fix my live videos filter
2021-10-20 10:04:06 +02:00
Chocobozzz
978c87e7f5
Add channel filters for my videos/followers
2021-10-20 09:25:44 +02:00
Chocobozzz
906f46d084
Split check user params tests
2021-10-20 09:25:44 +02:00
Chocobozzz
4beda9e12a
Add ability to view my followers
2021-10-20 09:25:44 +02:00
Chocobozzz
f0ab2aed3d
Fix lint
2021-10-14 14:14:57 +02:00
Chocobozzz
e1a570abff
Fix user subscription follows count
2021-10-14 10:52:15 +02:00
Chocobozzz
1cf0df024e
Fix actor follow counts calculation
2021-10-13 16:18:42 +02:00
Chocobozzz
1db57e6f96
Fix useless condition
2021-10-11 14:16:31 +02:00
Chocobozzz
9db2330e4a
Fix notification on create transcoding job
2021-10-11 09:37:27 +02:00
Chocobozzz
93a1e67f86
Fix channel search with complete handle
2021-10-11 09:37:26 +02:00
Chocobozzz
02b286f890
More robust webtorrent redundancy download
...
Avoid issues with inconsistencies between magnet infohash and torrent
infohash, blocking webtorrent upload that will timeout
2021-09-06 16:19:49 +02:00
Chocobozzz
3419e0e1fe
Migrate to webdriverio
2021-09-01 15:06:46 +02:00
Chocobozzz
41fb13c330
esModuleInterop to true
2021-08-27 15:12:22 +02:00
Chocobozzz
8f58172565
Allow accounts to skip account setup modal
2021-08-27 10:15:55 +02:00
Chocobozzz
52b1fd15fa
Better logs for redundancy
2021-08-26 11:02:41 +02:00
Chocobozzz
7b6cf83e33
Fix redundancy remove on host redundancy update
2021-08-26 10:01:42 +02:00
Ms Kimsible
4e1592daa4
Alert user for low quota and video auto-block on upload page ( #4336 )
...
* Replace wording of instance contact
* Add contact-us button to no-quota alert on upload page
* Add alert for accounts with auto-blocked videos on upload page
* Add alert for accounts without enough quota + refacto on upload page
* Using ng-container and ng-template
* Add alert for daily quota
* Add hook filter for upload page alert messages
* Add instance name as subtitle in contact modal
* Fix eslint max-len on string
* Fix missing word in quota left daily message - upload page
Co-authored-by: Kimsible <kimsible@users.noreply.github.com>
2021-08-25 11:38:10 +02:00
Jelle Besseling
0305db28c9
Add support for saving video files to object storage ( #4290 )
...
* Add support for saving video files to object storage
* Add support for custom url generation on s3 stored files
Uses two config keys to support url generation that doesn't directly go
to (compatible s3). Can be used to generate urls to any cache server or
CDN.
* Upload files to s3 concurrently and delete originals afterwards
* Only publish after move to object storage is complete
* Use base url instead of url template
* Fix mistyped config field
* Add rudenmentary way to download before transcode
* Implement Chocobozzz suggestions
https://github.com/Chocobozzz/PeerTube/pull/4290#issuecomment-891670478
The remarks in question:
Try to use objectStorage prefix instead of s3 prefix for your function/variables/config names
Prefer to use a tree for the config: s3.streaming_playlists_bucket -> object_storage.streaming_playlists.bucket
Use uppercase for config: S3.STREAMING_PLAYLISTS_BUCKETINFO.bucket -> OBJECT_STORAGE.STREAMING_PLAYLISTS.BUCKET (maybe BUCKET_NAME instead of BUCKET)
I suggest to rename moveJobsRunning to pendingMovingJobs (or better, create a dedicated videoJobInfo table with a pendingMove & videoId columns so we could also use this table to track pending transcoding jobs)
https://github.com/Chocobozzz/PeerTube/pull/4290/files#diff-3e26d41ca4bda1de8e1747af70ca2af642abcc1e9e0bfb94239ff2165acfbde5R19 uses a string instead of an integer
I think we should store the origin object storage URL in fileUrl, without base_url injection. Instead, inject the base_url at "runtime" so admins can easily change this configuration without running a script to update DB URLs
* Import correct function
* Support multipart upload
* Remove import of node 15.0 module stream/promises
* Extend maximum upload job length
Using the same value as for redundancy downloading seems logical
* Use dynamic part size for really large uploads
Also adds very small part size for local testing
* Fix decreasePendingMove query
* Resolve various PR comments
* Move to object storage after optimize
* Make upload size configurable and increase default
* Prune webtorrent files that are stored in object storage
* Move files after transcoding jobs
* Fix federation
* Add video path manager
* Support move to external storage job in client
* Fix live object storage tests
Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-08-17 08:26:20 +02:00
Chocobozzz
27db78400c
Fix backend channel name validator consistency
2021-08-05 13:54:35 +02:00
Chocobozzz
9e87894973
Merge branch 'release/3.3.0' into develop
2021-07-29 17:18:28 +02:00
Chocobozzz
cd162f25d2
Fix video format utils
2021-07-29 17:18:09 +02:00
Chocobozzz
9c9a236b54
Refactor options in models
2021-07-29 14:17:03 +02:00
Chocobozzz
d688602710
Refactor search query options
2021-07-29 11:54:38 +02:00
Chocobozzz
b033851fb5
Search channels against handles and not names
2021-07-29 10:27:24 +02:00
Chocobozzz
fbd67e7f38
Add ability to search by uuids/actor names
2021-07-28 16:40:21 +02:00
Chocobozzz
fa47956ecf
Filter host for channels and playlists search
2021-07-28 10:32:40 +02:00
Chocobozzz
29837f8885
Add ability to search by host in server
2021-07-27 17:10:52 +02:00
Chocobozzz
15a7eafb89
Refactor video links builders
2021-07-26 15:04:37 +02:00
Chocobozzz
764b1a14fc
Use random names for VOD HLS playlists
2021-07-26 11:29:31 +02:00
Chocobozzz
4d029ef8ec
Add ability for instances to follow any actor
2021-07-21 13:35:31 +02:00
kontrollanten
2a408c40a9
change audio label, 0p > Audio
...
Changes the audio label in the Download modal.
2021-07-12 15:34:32 +02:00
Chocobozzz
06c2759338
Fix hooks definition
2021-07-01 16:47:14 +02:00
Chocobozzz
693c6586cb
Fix missing delete cascade video -> channel
2021-07-01 14:53:37 +02:00
Chocobozzz
c17ee0903e
Don't check enum for video model
...
Licence, language and category could be extended by a remote plugin
2021-06-29 16:21:32 +02:00
Chocobozzz
d4a8e7a65f
Support short uuid for GET video/playlist
2021-06-29 14:56:35 +02:00
Chocobozzz
37a44fc915
Add ability to search playlists
2021-06-25 14:44:01 +02:00
Chocobozzz
8ebf2a5d5d
Refactor live manager
2021-06-17 08:47:03 +02:00
Chocobozzz
eae0365b5c
Fix missing transactions
2021-06-15 10:40:06 +02:00
Chocobozzz
79db409a41
More robust actor image lazy load
2021-06-14 16:14:45 +02:00
Chocobozzz
520bf885c5
Remove unnecessary log
2021-06-11 16:44:33 +02:00
Chocobozzz
31d5d916c3
Fix redundancy row grabbing
2021-06-11 16:31:41 +02:00
Chocobozzz
9f7657b6b6
Include transaction in video hooks
2021-06-11 16:22:54 +02:00
Chocobozzz
adddb12b04
Fix video with all files query
2021-06-11 16:05:32 +02:00
Chocobozzz
668f864f5a
Fix live files include
2021-06-11 16:02:26 +02:00
Chocobozzz
b8afe6f0cd
Fix video rights fetching
2021-06-11 15:53:52 +02:00
Chocobozzz
69322042c4
Cleanup video model scopes
2021-06-11 14:45:58 +02:00
Chocobozzz
7c3a6636fd
Move get* video methods to formatter
2021-06-11 14:36:07 +02:00
Chocobozzz
fd6a74a835
Refactor schedule update
2021-06-11 14:33:34 +02:00
Chocobozzz
20a206c3d1
Refactor include checks
2021-06-11 14:26:37 +02:00
Chocobozzz
71d4af1efc
Use raw SQL for most of video queries
2021-06-11 14:09:52 +02:00
Chocobozzz
3c79c2ce86
Optimize join build
2021-06-11 11:27:45 +02:00
Chocobozzz
17bb45388e
Optimize rows parsing
2021-06-11 11:15:44 +02:00
Chocobozzz
ca4b4b2e55
Fetch directly all video attributes for get API
2021-06-11 09:57:19 +02:00
Chocobozzz
1d43c3a613
Use separate queries for video files
2021-06-11 09:31:59 +02:00
Chocobozzz
d9bf974f5d
Use raw SQL for video get request
2021-06-10 15:26:18 +02:00
Chocobozzz
e5dbd5084e
Refactor video query builder
2021-06-10 09:22:58 +02:00
Chocobozzz
ff0ea0cd8e
Transaction is optional
2021-06-09 17:06:56 +02:00
Chocobozzz
57a0a9cde4
Optimize AP video captions update
2021-06-09 16:22:01 +02:00
Chocobozzz
28dfb44b14
Try to speed up AP update transaction
2021-06-08 17:41:48 +02:00
Chocobozzz
99cb53fd5a
Don't count deleted comment for replies
2021-06-08 13:48:58 +02:00
Chocobozzz
ea54cd04c1
Fix video upload with a capitalized ext
2021-06-08 10:01:50 +02:00
Chocobozzz
49af5ac8c2
Refactor AP playlists
2021-06-03 16:40:32 +02:00
Chocobozzz
304a84d59c
Refactor getOrCreateAPVideo
2021-06-02 16:57:53 +02:00
Chocobozzz
a7944e89bc
Add expiresOn index
2021-06-01 11:03:52 +02:00
Chocobozzz
9e2e51dc0b
Add tags to live logger
2021-05-28 13:05:59 +02:00
Chocobozzz
a1eda903a4
Support '/w/' and '/w/p/' for watch page
...
And use them as default in client
2021-05-28 11:38:08 +02:00
Chocobozzz
2539932e16
Instance homepage support ( #4007 )
...
* Prepare homepage parsers
* Add ability to update instance hompage
* Add ability to set homepage as landing page
* Add homepage preview in admin
* Dynamically update left menu for homepage
* Inject home content in homepage
* Add videos list and channel miniature custom markup
* Remove unused elements in markup service
2021-05-27 15:59:55 +02:00
Chocobozzz
5ec3cbdf22
Merge branch 'release/3.2.0' into develop
2021-05-26 15:38:44 +02:00
Chocobozzz
6c8a99d12a
Fix lint
2021-05-26 15:38:09 +02:00
Chocobozzz
8ee37c5f38
Merge branch 'release/3.2.0' into develop
2021-05-26 13:41:15 +02:00
Chocobozzz
f49b3231d0
Fix broken lives handling
2021-05-26 12:03:44 +02:00
Chocobozzz
53e7f82fe3
Fix redundancy max size
2021-05-26 09:44:16 +02:00
Chocobozzz
c4d125527a
Avoid error when file has no torrent file
2021-05-25 11:35:29 +02:00
John Livingston
fa263eeff7
Fix 4106: default boolean plugin setting for frontend
2021-05-25 11:35:29 +02:00
Chocobozzz
be89e66895
Avoid error when file has no torrent file
2021-05-25 11:34:43 +02:00
John Livingston
8bb6e70be3
Fix 4106: default boolean plugin setting for frontend
2021-05-25 11:34:22 +02:00
Chocobozzz
aea0b0e7cd
Inject server config in HTML
2021-05-14 13:37:23 +02:00
Chocobozzz
c158a5faab
Refactor a little bit controllers
2021-05-12 16:57:31 +02:00
Chocobozzz
16c016e8b1
Stricter models typing
2021-05-12 14:12:14 +02:00
Chocobozzz
428ccb8b7a
Reorganize plugin models
2021-05-11 13:33:11 +02:00
Chocobozzz
2b02c520e6
Cleanup shared models
2021-05-11 11:32:31 +02:00
Chocobozzz
7d9ba5c089
Cleanup models directory organization
2021-05-11 11:32:31 +02:00
Chocobozzz
e024fd6a74
Update channel updatedAt when uploading a video
2021-05-10 09:38:11 +02:00
Chocobozzz
a66c2e3252
Fix remote actor creation date
2021-05-07 09:00:09 +02:00
Chocobozzz
b31d72625d
Plugin user.getAuthUser is now async
...
So we can load the full user
2021-05-05 15:26:28 +02:00
Chocobozzz
1fd61899ea
Add ability to filter my videos by live
2021-05-03 16:42:15 +02:00
Chocobozzz
9172345484
Fix banner error in actor json
2021-04-13 09:40:20 +02:00
Chocobozzz
c24822a8fd
Don't save other attributes when set as refreshed
2021-04-12 13:44:58 +02:00
Rigel Kent
fe19f600da
add channel and playlist stats to server stats endpoint ( #3747 )
...
* add channel and playlist stats to nodeinfo
* add tests for active video channels stats
* fix tests for active channel stats
2021-04-12 11:19:07 +02:00
Chocobozzz
dc48fdbe68
Merge branch 'release/3.1.0' into develop
2021-04-08 15:16:01 +02:00
Chocobozzz
1afb3c474a
Fix outbox fetch with subtitled videos
2021-04-08 15:04:14 +02:00
Chocobozzz
84531547bc
Add size info in db for actor images
2021-04-08 13:38:04 +02:00
Chocobozzz
a0eeb45f14
Update data in DB when regenerate thumbnails
2021-04-08 13:38:04 +02:00
Chocobozzz
cdeddff142
Add ability to update the banner
2021-04-08 10:07:53 +02:00
Chocobozzz
213e30ef90
Add banner tests
2021-04-08 10:07:53 +02:00
Chocobozzz
2cb03dc1f4
Add banners support
2021-04-08 10:07:53 +02:00
Chocobozzz
f479685678
Agnostic actor image storage
2021-04-08 10:07:53 +02:00
Chocobozzz
93544419d2
Fix tests
2021-04-08 08:10:13 +02:00
Rigel Kent
8e286cdca4
add sort select to my videos, change default sort to -publishedAt
...
fixes #3779
2021-04-06 10:03:19 +02:00
Chocobozzz
f43db2f46e
Refactor auth flow
...
Reimplement some node-oauth2-server methods to remove hacky code needed by our external
login workflow
2021-03-24 18:18:41 +01:00
Chocobozzz
32a18cbf33
Add new plugin/peertube version notifs
2021-03-24 18:18:41 +01:00
Chocobozzz
42ec411bf8
Fix abuse tests
2021-03-09 16:10:52 +01:00
Chocobozzz
5a22296bdb
Fix broken hot algorithm
2021-03-03 13:52:58 +01:00
Chocobozzz
534556052e
Optimize views sort sql query
2021-03-03 11:24:16 +01:00
Chocobozzz
74d249bc13
Add ability to cleanup remote AP interactions
2021-03-03 10:08:08 +01:00
Chocobozzz
494df94036
Fix abuse crash on deleted video
2021-02-26 09:28:50 +01:00
Chocobozzz
031ea8efed
Use named chunk for embed on analyze
2021-02-25 15:01:29 +01:00
Chocobozzz
d61893f723
Async torrent creation
2021-02-25 15:01:07 +01:00
Chocobozzz
d7df188f23
Fix separate SQL query for video get
2021-02-25 11:18:11 +01:00
Chocobozzz
2a021e6cb6
Fix thread replies API response
2021-02-19 10:52:31 +01:00
Chocobozzz
9d6b9d10ef
Fix video comments display with deleted comments
2021-02-19 10:06:52 +01:00
Chocobozzz
8efc27bf14
Cleanup
2021-02-18 13:38:09 +01:00
Chocobozzz
f66db4d5c8
Fix feeds
2021-02-18 13:38:09 +01:00
Chocobozzz
b3d5cb92b1
Add ability to update torrents cache in client
2021-02-18 13:38:09 +01:00
Chocobozzz
d9a2a03196
Don't guess remote tracker URL
2021-02-18 13:38:09 +01:00
Chocobozzz
90a8bd305d
Dissociate video file names and video uuid
2021-02-18 13:38:09 +01:00
Chocobozzz
374b725df5
Optimize remote thumbnail processing
2021-02-16 10:36:44 +01:00
Chocobozzz
a35a22797c
Remove previous thumbnail if needed
2021-02-16 10:36:44 +01:00
Chocobozzz
6302d599cd
Generate a name for caption files
2021-02-16 10:36:44 +01:00
Chocobozzz
a8b1b40485
Generate a name for thumbnails
...
Allows aggressive caching
2021-02-16 10:36:44 +01:00