diff options
33 files changed, 166 insertions, 166 deletions
diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index e635969ad..4b62a7a30 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md | |||
@@ -138,7 +138,7 @@ You can get a complete PeerTube development setup with Gitpod, a free one-click | |||
138 | 138 | ||
139 | ### Server side | 139 | ### Server side |
140 | 140 | ||
141 | You can find a documentation of the server code/architecture [here](https://docs.joinpeertube.org/contribute-architecture?id=server-code). | 141 | You can find a documentation of the server code/architecture [here](https://docs.joinpeertube.org/contribute/architecture#server). |
142 | 142 | ||
143 | To develop on the server-side: | 143 | To develop on the server-side: |
144 | 144 | ||
@@ -153,7 +153,7 @@ restart. | |||
153 | ### Client side | 153 | ### Client side |
154 | 154 | ||
155 | You can find a documentation of the client code/architecture | 155 | You can find a documentation of the client code/architecture |
156 | [here](https://docs.joinpeertube.org/contribute-architecture?id=client-code). | 156 | [here](https://docs.joinpeertube.org/contribute/architecture#client). |
157 | 157 | ||
158 | 158 | ||
159 | To develop on the client side: | 159 | To develop on the client side: |
@@ -242,7 +242,7 @@ To test emails with PeerTube: | |||
242 | 242 | ||
243 | ### OpenAPI documentation | 243 | ### OpenAPI documentation |
244 | 244 | ||
245 | The [REST API documentation](https://docs.joinpeertube.org/api-rest-reference.html) is generated from `support/doc/api/openapi.yaml` file. | 245 | The [REST API documentation](https://docs.joinpeertube.org/api/rest-reference.html) is generated from `support/doc/api/openapi.yaml` file. |
246 | To quickly get a preview of your changes, you can generate the documentation *on the fly* using the following command: | 246 | To quickly get a preview of your changes, you can generate the documentation *on the fly* using the following command: |
247 | 247 | ||
248 | ``` | 248 | ``` |
@@ -252,7 +252,7 @@ npx @redocly/cli preview-docs ./support/doc/api/openapi.yaml | |||
252 | ### Environment variables | 252 | ### Environment variables |
253 | 253 | ||
254 | PeerTube can be configured using environment variables. | 254 | PeerTube can be configured using environment variables. |
255 | See the list on https://docs.joinpeertube.org/maintain-configuration?id=environment-variables | 255 | See the list on https://docs.joinpeertube.org/maintain/configuration#environment-variables |
256 | 256 | ||
257 | Additionally to these ones, we provide some environment for dev/test purpose: | 257 | Additionally to these ones, we provide some environment for dev/test purpose: |
258 | 258 | ||
@@ -298,4 +298,4 @@ ffmpeg -stream_loop -1 -re -i any-video.mp4 -c copy -f flv rtmp://{RTMP URL}/liv | |||
298 | 298 | ||
299 | ## Plugins & Themes | 299 | ## Plugins & Themes |
300 | 300 | ||
301 | See the dedicated documentation: https://docs.joinpeertube.org/contribute-plugins | 301 | See the dedicated documentation: https://docs.joinpeertube.org/contribute/plugins |
diff --git a/.github/ISSUE_TEMPLATE/10-installation-issue.yml b/.github/ISSUE_TEMPLATE/10-installation-issue.yml index 7bc55b2bd..059135eff 100644 --- a/.github/ISSUE_TEMPLATE/10-installation-issue.yml +++ b/.github/ISSUE_TEMPLATE/10-installation-issue.yml | |||
@@ -5,8 +5,8 @@ body: | |||
5 | attributes: | 5 | attributes: |
6 | value: | | 6 | value: | |
7 | Please check the official documentation first: | 7 | Please check the official documentation first: |
8 | - Classic installation: https://docs.joinpeertube.org/install-any-os | 8 | - Classic installation: https://docs.joinpeertube.org/install/any-os |
9 | - Docker installation: https://docs.joinpeertube.org/install-docker | 9 | - Docker installation: https://docs.joinpeertube.org/install/docker |
10 | 10 | ||
11 | - type: markdown | 11 | - type: markdown |
12 | attributes: | 12 | attributes: |
diff --git a/.github/ISSUE_TEMPLATE/20-documentation-issue.yml b/.github/ISSUE_TEMPLATE/20-documentation-issue.yml index 354749ad5..fc0cc6b4a 100644 --- a/.github/ISSUE_TEMPLATE/20-documentation-issue.yml +++ b/.github/ISSUE_TEMPLATE/20-documentation-issue.yml | |||
@@ -15,4 +15,4 @@ body: | |||
15 | description: | | 15 | description: | |
16 | Are you up to submit a pull request? Chances are, only a small edit is required, so give it a try: | 16 | Are you up to submit a pull request? Chances are, only a small edit is required, so give it a try: |
17 | * Click "Edit this page" if on https://docs.joinpeertube.org | 17 | * Click "Edit this page" if on https://docs.joinpeertube.org |
18 | * Edit https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/api/openapi.yaml if on https://docs.joinpeertube.org/api-rest-reference.html | 18 | * Edit https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/api/openapi.yaml if on https://docs.joinpeertube.org/api/rest-reference.html |
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index abc25477f..e9621ff89 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md | |||
@@ -10,7 +10,7 @@ | |||
10 | ## Has this been tested? | 10 | ## Has this been tested? |
11 | 11 | ||
12 | <!-- Put an `x` in the box that applies: --> | 12 | <!-- Put an `x` in the box that applies: --> |
13 | <!-- Check the unit test guide: https://docs.joinpeertube.org/contribute-getting-started?id=unit-tests --> | 13 | <!-- Check the unit test guide: https://docs.joinpeertube.org/contribute/getting-started#unit-integration-tests --> |
14 | 14 | ||
15 | - [ ] 👍 yes, I added tests to the test suite | 15 | - [ ] 👍 yes, I added tests to the test suite |
16 | - [ ] 💭 no, because this PR is a draft and still needs work | 16 | - [ ] 💭 no, because this PR is a draft and still needs work |
diff --git a/CHANGELOG.md b/CHANGELOG.md index 0513356e3..53f17a587 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md | |||
@@ -41,7 +41,7 @@ | |||
41 | 41 | ||
42 | ### Documentation | 42 | ### Documentation |
43 | 43 | ||
44 | * Add [Monitoring/Observability documentation](https://docs.joinpeertube.org/maintain-observability) using PeerTube OpenTelemetry feature | 44 | * Add [Monitoring/Observability documentation](https://docs.joinpeertube.org/maintain/observability) using PeerTube OpenTelemetry feature |
45 | 45 | ||
46 | ### Maintenance | 46 | ### Maintenance |
47 | 47 | ||
@@ -55,12 +55,12 @@ | |||
55 | 55 | ||
56 | ### Plugins/Themes/Embed API | 56 | ### Plugins/Themes/Embed API |
57 | 57 | ||
58 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 58 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
59 | * `filter:activity-pub.remote-video-comment.create.accept.result` | 59 | * `filter:activity-pub.remote-video-comment.create.accept.result` |
60 | * Add server plugin helpers | 60 | * Add server plugin helpers |
61 | * `socket.sendNotification` and `socket.sendVideoLiveNewState` [#5239](https://github.com/Chocobozzz/PeerTube/pull/5239) | 61 | * `socket.sendNotification` and `socket.sendVideoLiveNewState` [#5239](https://github.com/Chocobozzz/PeerTube/pull/5239) |
62 | * Add ability for plugins to register a websocket route using `registerWebSocketRoute` | 62 | * Add ability for plugins to register a websocket route using `registerWebSocketRoute` |
63 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | 63 | * Add client plugin hooks (https://docs.joinpeertube.org/api/plugins): |
64 | * `filter:internal.player.p2p-media-loader.options.result` [#5318](https://github.com/Chocobozzz/PeerTube/pull/5318) | 64 | * `filter:internal.player.p2p-media-loader.options.result` [#5318](https://github.com/Chocobozzz/PeerTube/pull/5318) |
65 | 65 | ||
66 | ### CLI tools | 66 | ### CLI tools |
@@ -166,7 +166,7 @@ | |||
166 | 166 | ||
167 | * Theme: | 167 | * Theme: |
168 | * Removed unused `--secondaryColor` CSS variable | 168 | * Removed unused `--secondaryColor` CSS variable |
169 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | 169 | * Add client plugin hooks (https://docs.joinpeertube.org/api/plugins): |
170 | * `filter:api.my-library.video-playlist-elements.list.params` & `filter:api.my-library.video-playlist-elements.list.result` [#5098](https://github.com/Chocobozzz/PeerTube/pull/5098) | 170 | * `filter:api.my-library.video-playlist-elements.list.params` & `filter:api.my-library.video-playlist-elements.list.result` [#5098](https://github.com/Chocobozzz/PeerTube/pull/5098) |
171 | * `action:video-channel-create.init` | 171 | * `action:video-channel-create.init` |
172 | * `action:video-channel-update.init` & `action:video-channel-update.video-channel.loaded` | 172 | * `action:video-channel-update.init` & `action:video-channel-update.video-channel.loaded` |
@@ -176,12 +176,12 @@ | |||
176 | * `filter:share.video-embed-url.build.params` & `filter:share.video-embed-url.build.result` & `filter:share.video-playlist-embed-url.build.params` & `filter:share.video-playlist-embed-url.build.result` | 176 | * `filter:share.video-embed-url.build.params` & `filter:share.video-embed-url.build.result` & `filter:share.video-playlist-embed-url.build.params` & `filter:share.video-playlist-embed-url.build.result` |
177 | * `filter:share.video-url.build.params` & `filter:share.video-url.build.result` & `filter:share.video-playlist-url.build.params` & `filter:share.video-playlist-url.build.result` | 177 | * `filter:share.video-url.build.params` & `filter:share.video-url.build.result` & `filter:share.video-playlist-url.build.params` & `filter:share.video-playlist-url.build.result` |
178 | * `action:modal.share.shown` | 178 | * `action:modal.share.shown` |
179 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 179 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
180 | * `filter:job-queue.process.params` & `filter:job-queue.process.result` | 180 | * `filter:job-queue.process.params` & `filter:job-queue.process.result` |
181 | * `filter:transcoding.manual.resolutions-to-transcode.result` & `filter:transcoding.auto.resolutions-to-transcode.result` | 181 | * `filter:transcoding.manual.resolutions-to-transcode.result` & `filter:transcoding.auto.resolutions-to-transcode.result` |
182 | * `action:api.video-channel.created` & `action:api.video-channel.updated` & `action:api.video-channel.deleted` | 182 | * `action:api.video-channel.created` & `action:api.video-channel.updated` & `action:api.video-channel.deleted` |
183 | * `action:notifier.notification.created` | 183 | * `action:notifier.notification.created` |
184 | * Add HTML placeholder (https://docs.joinpeertube.org/contribute-plugins?id=html-placeholder-elements): | 184 | * Add HTML placeholder (https://docs.joinpeertube.org/contribute/plugins#html-placeholder-elements): |
185 | * `share-modal-playlist-settings` & `share-modal-video-settings` | 185 | * `share-modal-playlist-settings` & `share-modal-video-settings` |
186 | 186 | ||
187 | ### Features | 187 | ### Features |
@@ -324,9 +324,9 @@ | |||
324 | * Classic installation: `cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-4.2.js` | 324 | * Classic installation: `cd /var/www/peertube/peertube-latest && sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production node dist/scripts/migrations/peertube-4.2.js` |
325 | * Docker installation: `cd /var/www/peertube-docker && docker-compose exec -u peertube peertube node dist/scripts/migrations/peertube-4.2.js` | 325 | * Docker installation: `cd /var/www/peertube-docker && docker-compose exec -u peertube peertube node dist/scripts/migrations/peertube-4.2.js` |
326 | * **Important** SQL migrations (in particular `0685-multiple-actor-images`) can take several minutes to complete | 326 | * **Important** SQL migrations (in particular `0685-multiple-actor-images`) can take several minutes to complete |
327 | * **Important** You must update your nginx configuration to support video web editor: https://docs.joinpeertube.org/install-any-os?id=nginx | 327 | * **Important** You must update your nginx configuration to support video web editor: https://docs.joinpeertube.org/install/any-os#nginx |
328 | * REST API: | 328 | * REST API: |
329 | * `PUT /api/v1/videos/{id}/watching` is deprecated, use `POST /api/v1/videos/videos/{id}/views` instead: https://docs.joinpeertube.org/api-rest-reference.html#operation/addView | 329 | * `PUT /api/v1/videos/{id}/watching` is deprecated, use `POST /api/v1/videos/videos/{id}/views` instead: https://docs.joinpeertube.org/api/rest-reference.html#operation/addView |
330 | 330 | ||
331 | ### Maintenance | 331 | ### Maintenance |
332 | 332 | ||
@@ -348,7 +348,7 @@ | |||
348 | * `filter:api.video-playlist.videos.list.params` and `filter:api.video-playlist.videos.list.result` | 348 | * `filter:api.video-playlist.videos.list.params` and `filter:api.video-playlist.videos.list.result` |
349 | * Support `getSettings()`, `isLoggedIn()` and `getAuthHeader()` client plugin helpers in embed | 349 | * Support `getSettings()`, `isLoggedIn()` and `getAuthHeader()` client plugin helpers in embed |
350 | * Player URL query parameters: | 350 | * Player URL query parameters: |
351 | * Support `controlBar=0` to hide player control bar. See [the documentation](https://docs.joinpeertube.org/api-embed-player?id=url-parameters) for more information | 351 | * Support `controlBar=0` to hide player control bar. See [the documentation](https://docs.joinpeertube.org/api/embed-player#url-parameters) for more information |
352 | 352 | ||
353 | ### Features | 353 | ### Features |
354 | 354 | ||
@@ -429,8 +429,8 @@ | |||
429 | 429 | ||
430 | ### Plugins/Themes/Embed API | 430 | ### Plugins/Themes/Embed API |
431 | 431 | ||
432 | * Introduce ability for plugins to create client pages: https://docs.joinpeertube.org/contribute-plugins?id=create-client-page | 432 | * Introduce ability for plugins to create client pages: https://docs.joinpeertube.org/contribute/plugins#create-client-page |
433 | * Plugins that register custom video fields can choose in which tab they want to display them and can report errors: https://docs.joinpeertube.org/contribute-plugins?id=add-custom-fields-to-video-form | 433 | * Plugins that register custom video fields can choose in which tab they want to display them and can report errors: https://docs.joinpeertube.org/contribute/plugins#add-custom-fields-to-video-form |
434 | * Add new client plugin id selectors | 434 | * Add new client plugin id selectors |
435 | * Add `#plugin-selector-about-instance-moderation`, `#plugin-selector-about-instance-other-information`, `#plugin-selector-about-instance-features`, `#plugin-selector-about-instance-statistics`, `#plugin-selector-about-menu-instance`, `#plugin-selector-about-menu-peertube`, `#plugin-selector-about-menu-network` in about page [#4597](https://github.com/Chocobozzz/PeerTube/pull/4597) | 435 | * Add `#plugin-selector-about-instance-moderation`, `#plugin-selector-about-instance-other-information`, `#plugin-selector-about-instance-features`, `#plugin-selector-about-instance-statistics`, `#plugin-selector-about-menu-instance`, `#plugin-selector-about-menu-peertube`, `#plugin-selector-about-menu-network` in about page [#4597](https://github.com/Chocobozzz/PeerTube/pull/4597) |
436 | * Add `#plugin-selector-menu-user-dropdown-language-item` in menu [#4597](https://github.com/Chocobozzz/PeerTube/pull/4597) | 436 | * Add `#plugin-selector-menu-user-dropdown-language-item` in menu [#4597](https://github.com/Chocobozzz/PeerTube/pull/4597) |
@@ -560,11 +560,11 @@ | |||
560 | 560 | ||
561 | ### Plugins/Themes/Embed API | 561 | ### Plugins/Themes/Embed API |
562 | 562 | ||
563 | *Documentation: https://docs.joinpeertube.org/api-plugins* | 563 | *Documentation: https://docs.joinpeertube.org/api/plugins* |
564 | 564 | ||
565 | * Add client plugin hooks: | 565 | * Add client plugin hooks: |
566 | * `filter:api.video-watch.video-playlist-elements.get.params` and `filter:api.video-watch.video-playlist-elements.get.result` [#4387](https://github.com/Chocobozzz/PeerTube/pull/4387) | 566 | * `filter:api.video-watch.video-playlist-elements.get.params` and `filter:api.video-watch.video-playlist-elements.get.result` [#4387](https://github.com/Chocobozzz/PeerTube/pull/4387) |
567 | * Introduce plugin id selectors: https://docs.joinpeertube.org/contribute-plugins?id=plugin-selector-on-html-elements | 567 | * Introduce plugin id selectors: https://docs.joinpeertube.org/contribute/plugins#plugin-selector-on-html-elements |
568 | * Add `#plugin-selector-login-form` to login form | 568 | * Add `#plugin-selector-login-form` to login form |
569 | 569 | ||
570 | ### Docker | 570 | ### Docker |
@@ -576,7 +576,7 @@ | |||
576 | 576 | ||
577 | ### CLI tools | 577 | ### CLI tools |
578 | 578 | ||
579 | * Add [create-move-video-storage-jobs](https://docs.joinpeertube.org/maintain-tools?id=create-move-video-storage-jobjs) script to move local video files in object storage [#4481](https://github.com/Chocobozzz/PeerTube/pull/4481) | 579 | * Add [create-move-video-storage-jobs](https://docs.joinpeertube.org/maintain/tools#create-move-video-storage-jobjs) script to move local video files in object storage [#4481](https://github.com/Chocobozzz/PeerTube/pull/4481) |
580 | * Removed `peertube-repl` and `peertube-watch` scripts | 580 | * Removed `peertube-repl` and `peertube-watch` scripts |
581 | * Apply import interval only when reasonable [#4552](https://github.com/Chocobozzz/PeerTube/pull/4552) | 581 | * Apply import interval only when reasonable [#4552](https://github.com/Chocobozzz/PeerTube/pull/4552) |
582 | 582 | ||
@@ -684,7 +684,7 @@ | |||
684 | 684 | ||
685 | ### Plugins/Themes/Embed API | 685 | ### Plugins/Themes/Embed API |
686 | 686 | ||
687 | *Documentation: https://docs.joinpeertube.org/api-plugins* | 687 | *Documentation: https://docs.joinpeertube.org/api/plugins* |
688 | 688 | ||
689 | * Server helpers | 689 | * Server helpers |
690 | * **Deprecate** `videoLanguageManager.addLanguage` and `videoLanguageManager.deleteLanguage`: use `videoLanguageManager.addConstant` and `videoLanguageManager.deleteConstant` instead | 690 | * **Deprecate** `videoLanguageManager.addLanguage` and `videoLanguageManager.deleteLanguage`: use `videoLanguageManager.addConstant` and `videoLanguageManager.deleteConstant` instead |
@@ -698,7 +698,7 @@ | |||
698 | 698 | ||
699 | ### Custom markup API | 699 | ### Custom markup API |
700 | 700 | ||
701 | *Documentation: https://docs.joinpeertube.org/api-custom-client-markup* | 701 | *Documentation: https://docs.joinpeertube.org/api/custom-client-markup* |
702 | 702 | ||
703 | * Add ability to only display VOD or live videos in `<peertube-videos-list>` element | 703 | * Add ability to only display VOD or live videos in `<peertube-videos-list>` element |
704 | * `<peertube-container>` fills all available width. Can be changed using `data-justify-content` attribute | 704 | * `<peertube-container>` fills all available width. Can be changed using `data-justify-content` attribute |
@@ -723,7 +723,7 @@ | |||
723 | * Hide or display sensitive content | 723 | * Hide or display sensitive content |
724 | * Choose to display all videos or only local videos | 724 | * Choose to display all videos or only local videos |
725 | * :tada: **Beta:** Add support for saving video files in object storage [#4290](https://github.com/Chocobozzz/PeerTube/pull/4290) | 725 | * :tada: **Beta:** Add support for saving video files in object storage [#4290](https://github.com/Chocobozzz/PeerTube/pull/4290) |
726 | * Check the documentation: https://docs.joinpeertube.org/admin-remote-storage | 726 | * Check the documentation: https://docs.joinpeertube.org/admin/remote-storage |
727 | * :tada: Add ability for instances to follow any actor (so specific accounts and channels) | 727 | * :tada: Add ability for instances to follow any actor (so specific accounts and channels) |
728 | * Updated HLS.js (library to play HLS playlists in PeerTube player) to V1: | 728 | * Updated HLS.js (library to play HLS playlists in PeerTube player) to V1: |
729 | * Remember last bandwidth to prevent resolution change at the beginning of the video | 729 | * Remember last bandwidth to prevent resolution change at the beginning of the video |
@@ -776,7 +776,7 @@ | |||
776 | ### IMPORTANT NOTES | 776 | ### IMPORTANT NOTES |
777 | 777 | ||
778 | * **Important:** v3.2.0 introduced a `pg_dump` export bug in the auto upgrade script. v3.2.1 fixed this bug. To upgrade from v3.2.**0**: | 778 | * **Important:** v3.2.0 introduced a `pg_dump` export bug in the auto upgrade script. v3.2.1 fixed this bug. To upgrade from v3.2.**0**: |
779 | * You can upgrade manually https://docs.joinpeertube.org/install-any-os?id=manually | 779 | * You can upgrade manually https://docs.joinpeertube.org/install/any-os#manually |
780 | * Or you can apply the changes introduced in this commit: https://github.com/Chocobozzz/PeerTube/commit/86dc0b9cc9374cba7548bb613ff43d92f90570a8 and then use the auto upgrade script | 780 | * Or you can apply the changes introduced in this commit: https://github.com/Chocobozzz/PeerTube/commit/86dc0b9cc9374cba7548bb613ff43d92f90570a8 and then use the auto upgrade script |
781 | * **Important:** Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See https://github.com/Chocobozzz/PeerTube/issues/3990 | 781 | * **Important:** Due to a bug in ffmpeg, PeerTube is not compatible with ffmpeg 4.4. See https://github.com/Chocobozzz/PeerTube/issues/3990 |
782 | 782 | ||
@@ -794,16 +794,16 @@ | |||
794 | 794 | ||
795 | * Add client helpers: | 795 | * Add client helpers: |
796 | * `getBaseRouterRoute()` [#4153](https://github.com/Chocobozzz/PeerTube/pull/4153) | 796 | * `getBaseRouterRoute()` [#4153](https://github.com/Chocobozzz/PeerTube/pull/4153) |
797 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | 797 | * Add client plugin hooks (https://docs.joinpeertube.org/api/plugins): |
798 | * `filter:left-menu.links.create.result` to add/remove left menu links | 798 | * `filter:left-menu.links.create.result` to add/remove left menu links |
799 | * `filter:internal.player.videojs.options.result` to filter options sent to videojs player [#4126](https://github.com/Chocobozzz/PeerTube/pull/4126) | 799 | * `filter:internal.player.videojs.options.result` to filter options sent to videojs player [#4126](https://github.com/Chocobozzz/PeerTube/pull/4126) |
800 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 800 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
801 | * `action:api.video-playlist-element.created` | 801 | * `action:api.video-playlist-element.created` |
802 | 802 | ||
803 | 803 | ||
804 | ### Features | 804 | ### Features |
805 | 805 | ||
806 | * :tada: Add ability to create a custom homepage using HTML, markdown and [custom HTML tags](https://docs.joinpeertube.org/api-custom-client-markup) [#4007](https://github.com/Chocobozzz/PeerTube/pull/4007) | 806 | * :tada: Add ability to create a custom homepage using HTML, markdown and [custom HTML tags](https://docs.joinpeertube.org/api/custom-client-markup) [#4007](https://github.com/Chocobozzz/PeerTube/pull/4007) |
807 | * :tada: Add ability to search playlists in PeerTube instance and [SepiaSearch](https://sepiasearch.org/) | 807 | * :tada: Add ability to search playlists in PeerTube instance and [SepiaSearch](https://sepiasearch.org/) |
808 | * :tada: Shorter public URLs (old URLs are still supported): | 808 | * :tada: Shorter public URLs (old URLs are still supported): |
809 | * Handle short UUID (`8r4jooaQpHp8tw1E1qpSeYq` instead of `3caf7bea-5ceb-4959-81a0-b44d184e897c`) for playlists and videos | 809 | * Handle short UUID (`8r4jooaQpHp8tw1E1qpSeYq` instead of `3caf7bea-5ceb-4959-81a0-b44d184e897c`) for playlists and videos |
@@ -811,7 +811,7 @@ | |||
811 | * Use `/a/:accountName` instead of `/accounts/:accountName` and `/c/:channelName` instead of `/video-channels/:channelName` [#4009](https://github.com/Chocobozzz/PeerTube/pull/4009) | 811 | * Use `/a/:accountName` instead of `/accounts/:accountName` and `/c/:channelName` instead of `/video-channels/:channelName` [#4009](https://github.com/Chocobozzz/PeerTube/pull/4009) |
812 | * Provide `/@:username` page that automatically redirect to the account or channel page [#4009](https://github.com/Chocobozzz/PeerTube/pull/4009) | 812 | * Provide `/@:username` page that automatically redirect to the account or channel page [#4009](https://github.com/Chocobozzz/PeerTube/pull/4009) |
813 | * :tada: Add RTL layout support | 813 | * :tada: Add RTL layout support |
814 | * Add ability to use HTML, markdown and [custom HTML tags](https://docs.joinpeertube.org/api-custom-client-markup) in instance description | 814 | * Add ability to use HTML, markdown and [custom HTML tags](https://docs.joinpeertube.org/api/custom-client-markup) in instance description |
815 | * Default to dark theme (if available) if requested by the web browser | 815 | * Default to dark theme (if available) if requested by the web browser |
816 | * Add ability for admins to configure minimum age required in signup page [#4010](https://github.com/Chocobozzz/PeerTube/pull/4010) | 816 | * Add ability for admins to configure minimum age required in signup page [#4010](https://github.com/Chocobozzz/PeerTube/pull/4010) |
817 | * Use a dedicated URL for each tab in publish page | 817 | * Use a dedicated URL for each tab in publish page |
@@ -861,7 +861,7 @@ | |||
861 | ### IMPORTANT NOTES | 861 | ### IMPORTANT NOTES |
862 | 862 | ||
863 | * **Important:** v3.2.0 introduced a `pg_dump` export bug in the auto upgrade script. To upgrade from v3.2.0: | 863 | * **Important:** v3.2.0 introduced a `pg_dump` export bug in the auto upgrade script. To upgrade from v3.2.0: |
864 | * You can upgrade manually https://docs.joinpeertube.org/install-any-os?id=manually | 864 | * You can upgrade manually https://docs.joinpeertube.org/install/any-os#manually |
865 | * Or you can apply the changes introduced in this commit: https://github.com/Chocobozzz/PeerTube/commit/86dc0b9cc9374cba7548bb613ff43d92f90570a8 and then use the auto upgrade script | 865 | * Or you can apply the changes introduced in this commit: https://github.com/Chocobozzz/PeerTube/commit/86dc0b9cc9374cba7548bb613ff43d92f90570a8 and then use the auto upgrade script |
866 | 866 | ||
867 | ### Bug fixes | 867 | ### Bug fixes |
@@ -880,9 +880,9 @@ | |||
880 | * **Important:** Drop NodeJS 10 support | 880 | * **Important:** Drop NodeJS 10 support |
881 | * PeerTube is not compatible with NodeJS 16 yet | 881 | * PeerTube is not compatible with NodeJS 16 yet |
882 | * By default, HLS transcoding is now enabled and webtorrent is disabled. We suggest you to reflect this change. | 882 | * By default, HLS transcoding is now enabled and webtorrent is disabled. We suggest you to reflect this change. |
883 | See [the documentation](https://docs.joinpeertube.org/admin-configuration?id=webtorrent-transcoding-or-hls-transcoding) for more information | 883 | See [the documentation](https://docs.joinpeertube.org/admin/configuration#webtorrent-transcoding-or-hls-transcoding) for more information |
884 | * PeerTube client now displays bigger video thumbnails. | 884 | * PeerTube client now displays bigger video thumbnails. |
885 | To fix old thumbnails quality, run `regenerate-thumbnails` script after your PeerTube upgrade: https://docs.joinpeertube.org/maintain-tools?id=regenerate-thumbnailsjs | 885 | To fix old thumbnails quality, run `regenerate-thumbnails` script after your PeerTube upgrade: https://docs.joinpeertube.org/maintain/tools#regenerate-thumbnailsjs |
886 | 886 | ||
887 | ### Docker | 887 | ### Docker |
888 | 888 | ||
@@ -903,9 +903,9 @@ | |||
903 | 903 | ||
904 | * Theme: | 904 | * Theme: |
905 | * `--submenuColor` becomes `--submenuBackgroundColor` | 905 | * `--submenuColor` becomes `--submenuBackgroundColor` |
906 | * Support HTML placeholders for plugins. See [the documentation](https://docs.joinpeertube.org/contribute-plugins?id=html-placeholder-elements) for more information | 906 | * Support HTML placeholders for plugins. See [the documentation](https://docs.joinpeertube.org/contribute/plugins#html-placeholder-elements) for more information |
907 | * `player-next` next to the PeerTube player | 907 | * `player-next` next to the PeerTube player |
908 | * Support storing files for plugins in a dedicated directory. See [the documentation](https://docs.joinpeertube.org/contribute-plugins?id=storage) for more information | 908 | * Support storing files for plugins in a dedicated directory. See [the documentation](https://docs.joinpeertube.org/contribute/plugins#storage) for more information |
909 | * Transcoding: | 909 | * Transcoding: |
910 | * Add `inputOptions` option support for transcoding profile [#3917](https://github.com/Chocobozzz/PeerTube/pull/3917) | 910 | * Add `inputOptions` option support for transcoding profile [#3917](https://github.com/Chocobozzz/PeerTube/pull/3917) |
911 | * Add `scaleFilter.name` option support for transcoding profile [#3917](https://github.com/Chocobozzz/PeerTube/pull/3917) | 911 | * Add `scaleFilter.name` option support for transcoding profile [#3917](https://github.com/Chocobozzz/PeerTube/pull/3917) |
@@ -923,7 +923,7 @@ | |||
923 | * `plugin.getBaseRouterRoute()` | 923 | * `plugin.getBaseRouterRoute()` |
924 | * `plugin.getDataDirectoryPath()` | 924 | * `plugin.getDataDirectoryPath()` |
925 | * `user.getAuthUser()` | 925 | * `user.getAuthUser()` |
926 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | 926 | * Add client plugin hooks (https://docs.joinpeertube.org/api/plugins): |
927 | * `action:modal.video-download.shown` | 927 | * `action:modal.video-download.shown` |
928 | * `action:video-upload.init` | 928 | * `action:video-upload.init` |
929 | * `action:video-url-import.init` | 929 | * `action:video-url-import.init` |
@@ -932,7 +932,7 @@ | |||
932 | * `action:auth-user.logged-in` & `action:auth-user.logged-out` | 932 | * `action:auth-user.logged-in` & `action:auth-user.logged-out` |
933 | * `action:auth-user.information-loaded` | 933 | * `action:auth-user.information-loaded` |
934 | * `action:admin-plugin-settings.init` | 934 | * `action:admin-plugin-settings.init` |
935 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 935 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
936 | * `filter:api.download.video.allowed.result` & `filter:api.download.torrent.allowed.result` to forbid download | 936 | * `filter:api.download.video.allowed.result` & `filter:api.download.torrent.allowed.result` to forbid download |
937 | * `filter:html.embed.video-playlist.allowed.result` & `filter:html.embed.video.allowed.result` to forbid embed | 937 | * `filter:html.embed.video-playlist.allowed.result` & `filter:html.embed.video.allowed.result` to forbid embed |
938 | * `filter:api.search.videos.local.list.params` & `filter:api.search.videos.local.list.result` | 938 | * `filter:api.search.videos.local.list.params` & `filter:api.search.videos.local.list.result` |
@@ -1042,11 +1042,11 @@ | |||
1042 | 1042 | ||
1043 | ### Plugins/Themes/Embed API | 1043 | ### Plugins/Themes/Embed API |
1044 | 1044 | ||
1045 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 1045 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
1046 | * `filter:api.user.me.videos.list.params` and `filter:api.user.me.videos.list.result` | 1046 | * `filter:api.user.me.videos.list.params` and `filter:api.user.me.videos.list.result` |
1047 | * Add server helpers: | 1047 | * Add server helpers: |
1048 | * `videos.loadByIdOrUUID` | 1048 | * `videos.loadByIdOrUUID` |
1049 | * Add server transcoding helpers (https://docs.joinpeertube.org/contribute-plugins?id=add-new-transcoding-profiles): | 1049 | * Add server transcoding helpers (https://docs.joinpeertube.org/contribute/plugins#add-new-transcoding-profiles): |
1050 | * `transcodingManager.addVODProfile` | 1050 | * `transcodingManager.addVODProfile` |
1051 | * `transcodingManager.addVODEncoderPriority` | 1051 | * `transcodingManager.addVODEncoderPriority` |
1052 | * `transcodingManager.addLiveProfile` | 1052 | * `transcodingManager.addLiveProfile` |
@@ -1161,7 +1161,7 @@ | |||
1161 | 1161 | ||
1162 | ### Docker | 1162 | ### Docker |
1163 | 1163 | ||
1164 | * Fix [upgrade documentation](https://docs.joinpeertube.org/install-docker?id=upgrade) | 1164 | * Fix [upgrade documentation](https://docs.joinpeertube.org/install/docker#upgrade) |
1165 | * Add live RTMP port in docker compose | 1165 | * Add live RTMP port in docker compose |
1166 | 1166 | ||
1167 | ### Bug fixes | 1167 | ### Bug fixes |
@@ -1195,13 +1195,13 @@ | |||
1195 | * Replace traefik by nginx in our docker-compose template: | 1195 | * Replace traefik by nginx in our docker-compose template: |
1196 | * Better consistency with our default setup (we now use the same stack) | 1196 | * Better consistency with our default setup (we now use the same stack) |
1197 | * Use our default nginx template enabling many optimizations | 1197 | * Use our default nginx template enabling many optimizations |
1198 | * Update the documentation to take into account this change: https://docs.joinpeertube.org/install-docker | 1198 | * Update the documentation to take into account this change: https://docs.joinpeertube.org/install/docker |
1199 | 1199 | ||
1200 | ### Plugins/Themes/Embed API | 1200 | ### Plugins/Themes/Embed API |
1201 | 1201 | ||
1202 | * Add ability for auth plugins to redirect user on logout [#32](https://framagit.org/framasoft/peertube/PeerTube/-/merge_requests/32) & [#33](https://framagit.org/framasoft/peertube/PeerTube/-/merge_requests/33) | 1202 | * Add ability for auth plugins to redirect user on logout [#32](https://framagit.org/framasoft/peertube/PeerTube/-/merge_requests/32) & [#33](https://framagit.org/framasoft/peertube/PeerTube/-/merge_requests/33) |
1203 | * Add `input-password` setting to plugins [#3375](https://github.com/Chocobozzz/PeerTube/issues/3375) | 1203 | * Add `input-password` setting to plugins [#3375](https://github.com/Chocobozzz/PeerTube/issues/3375) |
1204 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 1204 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
1205 | * `filter:api.accounts.videos.list.params` | 1205 | * `filter:api.accounts.videos.list.params` |
1206 | * `filter:api.accounts.videos.list.result` | 1206 | * `filter:api.accounts.videos.list.result` |
1207 | * `filter:api.video-channels.videos.list.params` | 1207 | * `filter:api.video-channels.videos.list.params` |
@@ -1352,16 +1352,16 @@ | |||
1352 | 1352 | ||
1353 | ### Plugins/Themes/Embed API | 1353 | ### Plugins/Themes/Embed API |
1354 | 1354 | ||
1355 | * Add embed API (https://docs.joinpeertube.org/api-embed-player): | 1355 | * Add embed API (https://docs.joinpeertube.org/api/embed-player): |
1356 | * `playNextVideo` method | 1356 | * `playNextVideo` method |
1357 | * `playPreviousVideo` method | 1357 | * `playPreviousVideo` method |
1358 | * `getCurrentPosition` method | 1358 | * `getCurrentPosition` method |
1359 | * Embed URL parameters | 1359 | * Embed URL parameters |
1360 | * Add ability to disable PeerTube link in embed using an URL param (`peertubeLink=0`) | 1360 | * Add ability to disable PeerTube link in embed using an URL param (`peertubeLink=0`) |
1361 | * Add plugins support in embed | 1361 | * Add plugins support in embed |
1362 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | 1362 | * Add client plugin hooks (https://docs.joinpeertube.org/api/plugins): |
1363 | * `action:embed.player.loaded` (for embed) | 1363 | * `action:embed.player.loaded` (for embed) |
1364 | * Add custom fields in video update/upload form using `registerVideoField` (https://docs.joinpeertube.org/contribute-plugins?id=add-custom-fields-to-video-form) | 1364 | * Add custom fields in video update/upload form using `registerVideoField` (https://docs.joinpeertube.org/contribute/plugins#add-custom-fields-to-video-form) |
1365 | 1365 | ||
1366 | ### Features | 1366 | ### Features |
1367 | 1367 | ||
@@ -1571,7 +1571,7 @@ A new endpoint to report videos will be created in PeerTube 2.4 and will also al | |||
1571 | 1571 | ||
1572 | ### CLI tools | 1572 | ### CLI tools |
1573 | 1573 | ||
1574 | * Add redundancy CLI: https://docs.joinpeertube.org/maintain-tools?id=peertube-redundancyjs | 1574 | * Add redundancy CLI: https://docs.joinpeertube.org/maintain/tools#peertube-redundancyjs |
1575 | * Add ability to pass remaining options to youtube-dl binary in peertube-import script ([@drzraf](https://github.com/drzraf)) | 1575 | * Add ability to pass remaining options to youtube-dl binary in peertube-import script ([@drzraf](https://github.com/drzraf)) |
1576 | 1576 | ||
1577 | ### Docker | 1577 | ### Docker |
@@ -1581,19 +1581,19 @@ A new endpoint to report videos will be created in PeerTube 2.4 and will also al | |||
1581 | 1581 | ||
1582 | ### Maintenance | 1582 | ### Maintenance |
1583 | 1583 | ||
1584 | * Add nginx configuration to redirect videos to an S3 bucket ([@rigelk](https://github.com/rigelk)) and update of the [corresponding documentation](https://docs.joinpeertube.org/admin-remote-storage). | 1584 | * Add nginx configuration to redirect videos to an S3 bucket ([@rigelk](https://github.com/rigelk)) and update of the [corresponding documentation](https://docs.joinpeertube.org/admin/remote-storage). |
1585 | 1585 | ||
1586 | ### Plugins/Themes/Embed API | 1586 | ### Plugins/Themes/Embed API |
1587 | 1587 | ||
1588 | * Add embed API (https://docs.joinpeertube.org/api-embed-player): | 1588 | * Add embed API (https://docs.joinpeertube.org/api/embed-player): |
1589 | * `playbackState` can be `ended` | 1589 | * `playbackState` can be `ended` |
1590 | * `playbackStatusUpdate` has a `duration` field | 1590 | * `playbackStatusUpdate` has a `duration` field |
1591 | * `setCaption` and `getCaptions` methods | 1591 | * `setCaption` and `getCaptions` methods |
1592 | * Add client plugin hooks (https://docs.joinpeertube.org/api-plugins): | 1592 | * Add client plugin hooks (https://docs.joinpeertube.org/api/plugins): |
1593 | * `action:login.init` | 1593 | * `action:login.init` |
1594 | * `action:video-watch.video-threads.loaded` | 1594 | * `action:video-watch.video-threads.loaded` |
1595 | * `action:video-watch.video-thread-replies.loaded` ([@ipbc-dev](https://github.com/ipbc-dev)) | 1595 | * `action:video-watch.video-thread-replies.loaded` ([@ipbc-dev](https://github.com/ipbc-dev)) |
1596 | * Add server plugin hooks (https://docs.joinpeertube.org/api-plugins): | 1596 | * Add server plugin hooks (https://docs.joinpeertube.org/api/plugins): |
1597 | * `filter:api.video.pre-import-url.accept.result` | 1597 | * `filter:api.video.pre-import-url.accept.result` |
1598 | * `filter:api.video.pre-import-torrent.accept.result` | 1598 | * `filter:api.video.pre-import-torrent.accept.result` |
1599 | * `filter:api.video.post-import-url.accept.result` | 1599 | * `filter:api.video.post-import-url.accept.result` |
@@ -1785,13 +1785,13 @@ A new endpoint to report videos will be created in PeerTube 2.4 and will also al | |||
1785 | 1785 | ||
1786 | We added some sections in the documentation website: | 1786 | We added some sections in the documentation website: |
1787 | 1787 | ||
1788 | * S3 remote storage: https://docs.joinpeertube.org/admin-remote-storage | 1788 | * S3 remote storage: https://docs.joinpeertube.org/admin/remote-storage |
1789 | * Instances redundancy: https://docs.joinpeertube.org/admin-following-instances | 1789 | * Instances redundancy: https://docs.joinpeertube.org/admin/following-instances |
1790 | * Moderate your instance: https://docs.joinpeertube.org/admin-moderation | 1790 | * Moderate your instance: https://docs.joinpeertube.org/admin/moderation |
1791 | * Customize your instance (install plugins & themes): https://docs.joinpeertube.org/admin-customize-instance | 1791 | * Customize your instance (install plugins & themes): https://docs.joinpeertube.org/admin/customize-instance |
1792 | * PeerTube logs (standard log/audit log): https://docs.joinpeertube.org/admin-logs | 1792 | * PeerTube logs (standard log/audit log): https://docs.joinpeertube.org/admin/logs |
1793 | * Mute accounts/instances: https://docs.joinpeertube.org/use-mute | 1793 | * Mute accounts/instances: https://docs.joinpeertube.org/use/mute |
1794 | * Controlled player embed API: https://docs.joinpeertube.org/api-embed-player | 1794 | * Controlled player embed API: https://docs.joinpeertube.org/api/embed-player |
1795 | 1795 | ||
1796 | ### Docker | 1796 | ### Docker |
1797 | 1797 | ||
@@ -1826,7 +1826,7 @@ We added some sections in the documentation website: | |||
1826 | 1826 | ||
1827 | * PeerTube moved translations from Zanata to Weblate. Here is the new translations website URL: https://weblate.framasoft.org/projects/peertube/ | 1827 | * PeerTube moved translations from Zanata to Weblate. Here is the new translations website URL: https://weblate.framasoft.org/projects/peertube/ |
1828 | * We now provide a JavaScript library to control a PeerTube embed: https://www.npmjs.com/package/@peertube/embed-api | 1828 | * We now provide a JavaScript library to control a PeerTube embed: https://www.npmjs.com/package/@peertube/embed-api |
1829 | * Add ability to generate HLS videos using `create-transcoding-job` script (see [the documentation](https://docs.joinpeertube.org/maintain-tools?id=create-transcoding-jobjs)) | 1829 | * Add ability to generate HLS videos using `create-transcoding-job` script (see [the documentation](https://docs.joinpeertube.org/maintain/tools#create-transcoding-jobjs)) |
1830 | * Update nginx template: (you need to [update manually](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md#nginx)) | 1830 | * Update nginx template: (you need to [update manually](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md#nginx)) |
1831 | * Add streaming playlists endpoint | 1831 | * Add streaming playlists endpoint |
1832 | * Add `client_body_temp_path` hint | 1832 | * Add `client_body_temp_path` hint |
@@ -2095,7 +2095,7 @@ We added some sections in the documentation website: | |||
2095 | ### Features | 2095 | ### Features |
2096 | 2096 | ||
2097 | * :tada: Support Finnish, Greek and Scottish Gaelic languages | 2097 | * :tada: Support Finnish, Greek and Scottish Gaelic languages |
2098 | * :tada: Add basic plugins and themes support (**beta**): https://docs.joinpeertube.org/contribute-plugins | 2098 | * :tada: Add basic plugins and themes support (**beta**): https://docs.joinpeertube.org/contribute/plugins |
2099 | * Install plugins or themes from the administration panel | 2099 | * Install plugins or themes from the administration panel |
2100 | * Choose a default theme for your instance | 2100 | * Choose a default theme for your instance |
2101 | * Users can choose the theme they want among the list of themes their administrator installed | 2101 | * Users can choose the theme they want among the list of themes their administrator installed |
@@ -116,7 +116,7 @@ Be it as a user or an instance administrator, you can decide what your experienc | |||
116 | 116 | ||
117 | <h3 align="right">Communities that help each other</h3> | 117 | <h3 align="right">Communities that help each other</h3> |
118 | <p align="right"> | 118 | <p align="right"> |
119 | In addition to visitors using WebTorrent to share the load among them, instances can help each other by caching one another's videos. This way even small instances have a way to show content to a wider audience, as they will be shouldered by friend instances (more about that in our <a href="https://docs.joinpeertube.org/contribute-architecture?id=redundancy-between-instances">redundancy guide</a>). | 119 | In addition to visitors using WebTorrent to share the load among them, instances can help each other by caching one another's videos. This way even small instances have a way to show content to a wider audience, as they will be shouldered by friend instances (more about that in our <a href="https://docs.joinpeertube.org/contribute/architecture#redundancy-between-instances">redundancy guide</a>). |
120 | </p> | 120 | </p> |
121 | <p align="right"> | 121 | <p align="right"> |
122 | Content creators can get help from their viewers in the simplest way possible: a support button showing a message linking to their donation accounts or really anything else. No more pay-per-view and advertisements that hurt visitors and alter creativity (more about that in our <a href="https://github.com/Chocobozzz/PeerTube/blob/develop/FAQ.md">FAQ</a>). | 122 | Content creators can get help from their viewers in the simplest way possible: a support button showing a message linking to their donation accounts or really anything else. No more pay-per-view and advertisements that hurt visitors and alter creativity (more about that in our <a href="https://github.com/Chocobozzz/PeerTube/blob/develop/FAQ.md">FAQ</a>). |
@@ -147,7 +147,7 @@ Feel free to reach out if you have any questions or ideas! :speech_balloon: | |||
147 | 147 | ||
148 | See the [production guide](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md), which is the recommended way to install or upgrade PeerTube. For hardware requirements, see [Should I have a big server to run PeerTube?](https://joinpeertube.org/faq#should-i-have-a-big-server-to-run-peertube) in the FAQ. | 148 | See the [production guide](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md), which is the recommended way to install or upgrade PeerTube. For hardware requirements, see [Should I have a big server to run PeerTube?](https://joinpeertube.org/faq#should-i-have-a-big-server-to-run-peertube) in the FAQ. |
149 | 149 | ||
150 | See the [community packages](https://docs.joinpeertube.org/install-unofficial), which cover various platforms (including [YunoHost](https://install-app.yunohost.org/?app=peertube) and [Docker](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/docker.md)). | 150 | See the [community packages](https://docs.joinpeertube.org/install/unofficial), which cover various platforms (including [YunoHost](https://install-app.yunohost.org/?app=peertube) and [Docker](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/docker.md)). |
151 | 151 | ||
152 | :book: Documentation | 152 | :book: Documentation |
153 | ---------------------------------------------------------------- | 153 | ---------------------------------------------------------------- |
@@ -156,27 +156,27 @@ If you have a question, please try to find the answer in the [FAQ](https://joinp | |||
156 | 156 | ||
157 | ### User documentation | 157 | ### User documentation |
158 | 158 | ||
159 | See the [user documentation](https://docs.joinpeertube.org/use-setup-account). | 159 | See the [user documentation](https://docs.joinpeertube.org/use/setup-account). |
160 | 160 | ||
161 | ### Admin documentation | 161 | ### Admin documentation |
162 | 162 | ||
163 | See [how to create your own instance](https://github.com/Chocobozzz/PeerTube/blob/develop/README.md#package-create-your-own-instance). | 163 | See [how to create your own instance](https://github.com/Chocobozzz/PeerTube/blob/develop/README.md#package-create-your-own-instance). |
164 | 164 | ||
165 | See the more general [admin documentation](https://docs.joinpeertube.org/admin-following-instances). | 165 | See the more general [admin documentation](https://docs.joinpeertube.org/admin/following-instances). |
166 | 166 | ||
167 | ### Tools documentation | 167 | ### Tools documentation |
168 | 168 | ||
169 | Learn how to import/upload videos from CLI or admin your PeerTube instance with the [tools documentation](https://docs.joinpeertube.org/maintain-tools). | 169 | Learn how to import/upload videos from CLI or admin your PeerTube instance with the [tools documentation](https://docs.joinpeertube.org/maintain/tools). |
170 | 170 | ||
171 | ### Technical documentation | 171 | ### Technical documentation |
172 | 172 | ||
173 | See the [architecture blueprint](https://docs.joinpeertube.org/contribute-architecture) for a more detailed explanation of the architectural choices. | 173 | See the [architecture blueprint](https://docs.joinpeertube.org/contribute/architecture) for a more detailed explanation of the architectural choices. |
174 | 174 | ||
175 | See our REST API documentation: | 175 | See our REST API documentation: |
176 | * OpenAPI 3.0.0 schema: [/support/doc/api/openapi.yaml](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/api/openapi.yaml) | 176 | * OpenAPI 3.0.0 schema: [/support/doc/api/openapi.yaml](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/api/openapi.yaml) |
177 | * Spec explorer: [docs.joinpeertube.org/api-rest-reference.html](https://docs.joinpeertube.org/api-rest-reference.html) | 177 | * Spec explorer: [docs.joinpeertube.org/api-rest-reference.html](https://docs.joinpeertube.org/api/rest-reference.html) |
178 | 178 | ||
179 | See our [ActivityPub documentation](https://docs.joinpeertube.org/api-activitypub). | 179 | See our [ActivityPub documentation](https://docs.joinpeertube.org/api/activitypub). |
180 | 180 | ||
181 | ## License | 181 | ## License |
182 | 182 | ||
diff --git a/client/src/app/+about/about-peertube/about-peertube.component.html b/client/src/app/+about/about-peertube/about-peertube.component.html index c0177fe6c..d1c3c678a 100644 --- a/client/src/app/+about/about-peertube/about-peertube.component.html +++ b/client/src/app/+about/about-peertube/about-peertube.component.html | |||
@@ -25,7 +25,7 @@ | |||
25 | <div class="card"> | 25 | <div class="card"> |
26 | <div class="card-body"> | 26 | <div class="card-body"> |
27 | <div class="card-title"> | 27 | <div class="card-title"> |
28 | <a i18n class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/use-setup-account">Use PeerTube documentation</a> | 28 | <a i18n class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/use/setup-account">Use PeerTube documentation</a> |
29 | </div> | 29 | </div> |
30 | 30 | ||
31 | <div i18n class="card-text"> | 31 | <div i18n class="card-text"> |
@@ -37,7 +37,7 @@ | |||
37 | <div class="card"> | 37 | <div class="card"> |
38 | <div class="card-body"> | 38 | <div class="card-body"> |
39 | <div class="card-title"> | 39 | <div class="card-title"> |
40 | <a i18n class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/use-third-party-application">PeerTube Applications</a> | 40 | <a i18n class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/use/third-party-application">PeerTube Applications</a> |
41 | </div> | 41 | </div> |
42 | 42 | ||
43 | <div i18n class="card-text"> | 43 | <div i18n class="card-text"> |
@@ -49,7 +49,7 @@ | |||
49 | <div class="card"> | 49 | <div class="card"> |
50 | <div class="card-body"> | 50 | <div class="card-body"> |
51 | <div class="card-title"> | 51 | <div class="card-title"> |
52 | <a i18n class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/contribute-getting-started">Contribute on PeerTube</a> | 52 | <a i18n class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/contribute/getting-started">Contribute on PeerTube</a> |
53 | </div> | 53 | </div> |
54 | 54 | ||
55 | <div i18n class="card-text"> | 55 | <div i18n class="card-text"> |
diff --git a/client/src/app/+admin/config/edit-custom-config/edit-basic-configuration.component.html b/client/src/app/+admin/config/edit-custom-config/edit-basic-configuration.component.html index 2a9f9d69d..8399b5d56 100644 --- a/client/src/app/+admin/config/edit-custom-config/edit-basic-configuration.component.html +++ b/client/src/app/+admin/config/edit-custom-config/edit-basic-configuration.component.html | |||
@@ -280,7 +280,7 @@ | |||
280 | i18n-labelText labelText="Allow import with HTTP URL (e.g. YouTube)" | 280 | i18n-labelText labelText="Allow import with HTTP URL (e.g. YouTube)" |
281 | > | 281 | > |
282 | <ng-container ngProjectAs="description"> | 282 | <ng-container ngProjectAs="description"> |
283 | <span i18n>⚠️ If enabled, we recommend to use <a class="link-orange" href="https://docs.joinpeertube.org/maintain-configuration?id=security">a HTTP proxy</a> to prevent private URL access from your PeerTube server</span> | 283 | <span i18n>⚠️ If enabled, we recommend to use <a class="link-orange" href="https://docs.joinpeertube.org/maintain/configuration#security">a HTTP proxy</a> to prevent private URL access from your PeerTube server</span> |
284 | </ng-container> | 284 | </ng-container> |
285 | </my-peertube-checkbox> | 285 | </my-peertube-checkbox> |
286 | </div> | 286 | </div> |
@@ -503,7 +503,7 @@ | |||
503 | <div i18n>⚠️ This functionality requires a lot of attention and extra moderation.</div> | 503 | <div i18n>⚠️ This functionality requires a lot of attention and extra moderation.</div> |
504 | 504 | ||
505 | <span i18n> | 505 | <span i18n> |
506 | See <a class="link-orange" href="https://docs.joinpeertube.org/admin-following-instances?id=automatically-follow-other-instances" rel="noopener noreferrer" target="_blank">the documentation</a> for more information about the expected URL | 506 | See <a class="link-orange" href="https://docs.joinpeertube.org/admin/following-instances#automatically-follow-other-instances" rel="noopener noreferrer" target="_blank">the documentation</a> for more information about the expected URL |
507 | </span> | 507 | </span> |
508 | </ng-container> | 508 | </ng-container> |
509 | 509 | ||
diff --git a/client/src/app/+admin/config/edit-custom-config/edit-vod-transcoding.component.html b/client/src/app/+admin/config/edit-custom-config/edit-vod-transcoding.component.html index 1e7691f9e..de9e7253e 100644 --- a/client/src/app/+admin/config/edit-custom-config/edit-vod-transcoding.component.html +++ b/client/src/app/+admin/config/edit-custom-config/edit-vod-transcoding.component.html | |||
@@ -10,7 +10,7 @@ | |||
10 | </span> | 10 | </span> |
11 | 11 | ||
12 | <span i18n> | 12 | <span i18n> |
13 | However, you may want to read <a class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/admin-configuration?id=transcoding">our guidelines</a> before tweaking the following values. | 13 | However, you may want to read <a class="link-orange" target="_blank" rel="noopener noreferrer" href="https://docs.joinpeertube.org/admin/configuration#vod-transcoding">our guidelines</a> before tweaking the following values. |
14 | </span> | 14 | </span> |
15 | </div> | 15 | </div> |
16 | </div> | 16 | </div> |
diff --git a/client/src/app/+my-library/my-video-playlists/my-video-playlist-elements.component.html b/client/src/app/+my-library/my-video-playlists/my-video-playlist-elements.component.html index 806dd6f48..df4687ce9 100644 --- a/client/src/app/+my-library/my-video-playlists/my-video-playlist-elements.component.html +++ b/client/src/app/+my-library/my-video-playlists/my-video-playlist-elements.component.html | |||
@@ -29,7 +29,7 @@ | |||
29 | </div> | 29 | </div> |
30 | 30 | ||
31 | <div i18n> | 31 | <div i18n> |
32 | See the <a target="_blank" href="https://docs.joinpeertube.org/use-library?id=playlist">documentation</a> for more information. | 32 | See the <a target="_blank" href="https://docs.joinpeertube.org/use/library#playlist">documentation</a> for more information. |
33 | </div> | 33 | </div> |
34 | </div> | 34 | </div> |
35 | 35 | ||
diff --git a/client/src/app/+signup/shared/signup-success-after-email.component.html b/client/src/app/+signup/shared/signup-success-after-email.component.html index 1c3536ada..683e55525 100644 --- a/client/src/app/+signup/shared/signup-success-after-email.component.html +++ b/client/src/app/+signup/shared/signup-success-after-email.component.html | |||
@@ -15,7 +15,7 @@ | |||
15 | <p i18n>Your email has been verified and your account has been created!</p> | 15 | <p i18n>Your email has been verified and your account has been created!</p> |
16 | 16 | ||
17 | <p i18n> | 17 | <p i18n> |
18 | If you need help to use PeerTube, you can have a look at the <a class="link-orange" href="https://docs.joinpeertube.org/use-setup-account" target="_blank" rel="noopener noreferrer">documentation</a>. | 18 | If you need help to use PeerTube, you can have a look at the <a class="link-orange" href="https://docs.joinpeertube.org/use/setup-account" target="_blank" rel="noopener noreferrer">documentation</a>. |
19 | </p> | 19 | </p> |
20 | </ng-container> | 20 | </ng-container> |
21 | </div> | 21 | </div> |
diff --git a/client/src/app/+signup/shared/signup-success-before-email.component.html b/client/src/app/+signup/shared/signup-success-before-email.component.html index b9668ee82..8e2494b65 100644 --- a/client/src/app/+signup/shared/signup-success-before-email.component.html +++ b/client/src/app/+signup/shared/signup-success-before-email.component.html | |||
@@ -29,7 +29,7 @@ | |||
29 | </p> | 29 | </p> |
30 | 30 | ||
31 | <p *ngIf="!requiresApproval" i18n> | 31 | <p *ngIf="!requiresApproval" i18n> |
32 | If you need help to use PeerTube, you can have a look at the <a class="link-orange" href="https://docs.joinpeertube.org/use-setup-account" target="_blank" rel="noopener noreferrer">documentation</a>. | 32 | If you need help to use PeerTube, you can have a look at the <a class="link-orange" href="https://docs.joinpeertube.org/use/setup-account" target="_blank" rel="noopener noreferrer">documentation</a>. |
33 | </p> | 33 | </p> |
34 | </ng-container> | 34 | </ng-container> |
35 | </div> | 35 | </div> |
diff --git a/client/src/app/menu/menu.component.html b/client/src/app/menu/menu.component.html index 0fb9897b9..6c5258010 100644 --- a/client/src/app/menu/menu.component.html +++ b/client/src/app/menu/menu.component.html | |||
@@ -142,7 +142,7 @@ | |||
142 | <a i18n href="https://joinpeertube.org/help" i18n-title title="Get help using PeerTube" target="_blank" rel="noopener noreferrer">Help</a> | 142 | <a i18n href="https://joinpeertube.org/help" i18n-title title="Get help using PeerTube" target="_blank" rel="noopener noreferrer">Help</a> |
143 | <a i18n href="https://joinpeertube.org/faq" i18n-title title="Frequently asked questions about PeerTube" target="_blank" rel="noopener noreferrer">FAQ</a> | 143 | <a i18n href="https://joinpeertube.org/faq" i18n-title title="Frequently asked questions about PeerTube" target="_blank" rel="noopener noreferrer">FAQ</a> |
144 | <a i18n routerLink="/about/instance" fragment="statistics">Stats</a> | 144 | <a i18n routerLink="/about/instance" fragment="statistics">Stats</a> |
145 | <a i18n href="https://docs.joinpeertube.org/api-rest-reference.html" i18n-title title="API documentation" target="_blank" rel="noopener noreferrer">API</a> | 145 | <a i18n href="https://docs.joinpeertube.org/api/rest-reference.html" i18n-title title="API documentation" target="_blank" rel="noopener noreferrer">API</a> |
146 | <a role="button" (click)="openHotkeysCheatSheet()" class="c-hand" i18n>Keyboard shortcuts</a> | 146 | <a role="button" (click)="openHotkeysCheatSheet()" class="c-hand" i18n>Keyboard shortcuts</a> |
147 | </div> | 147 | </div> |
148 | </div> | 148 | </div> |
diff --git a/client/src/app/modal/admin-welcome-modal.component.html b/client/src/app/modal/admin-welcome-modal.component.html index b74d73185..826b547c3 100644 --- a/client/src/app/modal/admin-welcome-modal.component.html +++ b/client/src/app/modal/admin-welcome-modal.component.html | |||
@@ -8,22 +8,22 @@ | |||
8 | 8 | ||
9 | <div class="block-documentation"> | 9 | <div class="block-documentation"> |
10 | <div class="columns"> | 10 | <div class="columns"> |
11 | <a class="link-block" href="https://docs.joinpeertube.org/maintain-tools" target="_blank" rel="noopener noreferrer"> | 11 | <a class="link-block" href="https://docs.joinpeertube.org/maintain/tools" target="_blank" rel="noopener noreferrer"> |
12 | <a i18n class="link-title" href="https://docs.joinpeertube.org/maintain-tools" target="_blank" rel="noopener noreferrer">CLI | 12 | <a i18n class="link-title" href="https://docs.joinpeertube.org/maintain/tools" target="_blank" rel="noopener noreferrer">CLI |
13 | documentation</a> | 13 | documentation</a> |
14 | 14 | ||
15 | <div i18n>Upload or import videos, parse logs, prune storage directories, reset user password...</div> | 15 | <div i18n>Upload or import videos, parse logs, prune storage directories, reset user password...</div> |
16 | </a> | 16 | </a> |
17 | 17 | ||
18 | <a class="link-block" href="https://docs.joinpeertube.org/admin-following-instances" target="_blank" rel="noopener noreferrer"> | 18 | <a class="link-block" href="https://docs.joinpeertube.org/admin/following-instances" target="_blank" rel="noopener noreferrer"> |
19 | <a i18n class="link-title" href="https://docs.joinpeertube.org/admin-following-instances" target="_blank" rel="noopener noreferrer">Administer | 19 | <a i18n class="link-title" href="https://docs.joinpeertube.org/admin/following-instances" target="_blank" rel="noopener noreferrer">Administer |
20 | documentation</a> | 20 | documentation</a> |
21 | 21 | ||
22 | <div i18n>Managing users, following other instances, dealing with spammers...</div> | 22 | <div i18n>Managing users, following other instances, dealing with spammers...</div> |
23 | </a> | 23 | </a> |
24 | 24 | ||
25 | <a class="link-block" href="https://docs.joinpeertube.org/use-setup-account" target="_blank" rel="noopener noreferrer"> | 25 | <a class="link-block" href="https://docs.joinpeertube.org/use/setup-account" target="_blank" rel="noopener noreferrer"> |
26 | <a i18n class="link-title" href="https://docs.joinpeertube.org/use-setup-account" target="_blank" rel="noopener noreferrer">Use | 26 | <a i18n class="link-title" href="https://docs.joinpeertube.org/use/setup-account" target="_blank" rel="noopener noreferrer">Use |
27 | documentation</a> | 27 | documentation</a> |
28 | 28 | ||
29 | <div i18n>Setup your account, managing video playlists, discover third-party applications...</div> | 29 | <div i18n>Setup your account, managing video playlists, discover third-party applications...</div> |
diff --git a/client/src/app/shared/shared-custom-markup/custom-markup-help.component.html b/client/src/app/shared/shared-custom-markup/custom-markup-help.component.html index 0ca84ff78..73a2b4058 100644 --- a/client/src/app/shared/shared-custom-markup/custom-markup-help.component.html +++ b/client/src/app/shared/shared-custom-markup/custom-markup-help.component.html | |||
@@ -1,3 +1,3 @@ | |||
1 | <ng-container i18n> | 1 | <ng-container i18n> |
2 | <a href="https://en.wikipedia.org/wiki/Markdown#Example" target="_blank" rel="noreferrer noopener">Markdown compatible</a> that also supports <a href="https://docs.joinpeertube.org/api-custom-client-markup" target="_blank" rel="noreferrer noopener">custom PeerTube HTML tags</a> | 2 | <a href="https://en.wikipedia.org/wiki/Markdown#Example" target="_blank" rel="noreferrer noopener">Markdown compatible</a> that also supports <a href="https://docs.joinpeertube.org/api/custom-client-markup" target="_blank" rel="noreferrer noopener">custom PeerTube HTML tags</a> |
3 | </ng-container> | 3 | </ng-container> |
diff --git a/client/src/app/shared/shared-video-live/live-documentation-link.component.html b/client/src/app/shared/shared-video-live/live-documentation-link.component.html index 27248645f..9e5195e74 100644 --- a/client/src/app/shared/shared-video-live/live-documentation-link.component.html +++ b/client/src/app/shared/shared-video-live/live-documentation-link.component.html | |||
@@ -1,4 +1,4 @@ | |||
1 | <p i18n> | 1 | <p i18n> |
2 | See <a class="link-orange" href="https://docs.joinpeertube.org/use-create-upload-video?id=publish-a-live-in-peertube-gt-v3" target="_blank" rel="noopener noreferrer">the documentation</a> | 2 | See <a class="link-orange" href="https://docs.joinpeertube.org/use/create-upload-video#publish-a-live" target="_blank" rel="noopener noreferrer">the documentation</a> |
3 | to learn how to use the PeerTube live streaming feature. | 3 | to learn how to use the PeerTube live streaming feature. |
4 | </p> | 4 | </p> |
diff --git a/client/src/standalone/player/README.md b/client/src/standalone/player/README.md index 0639b4650..7b47e8f02 100644 --- a/client/src/standalone/player/README.md +++ b/client/src/standalone/player/README.md | |||
@@ -1,3 +1,3 @@ | |||
1 | # @peertube/embed-api | 1 | # @peertube/embed-api |
2 | 2 | ||
3 | See https://docs.joinpeertube.org/api-embed-player | 3 | See https://docs.joinpeertube.org/api/embed-player |
diff --git a/config/default.yaml b/config/default.yaml index bb4a823fa..d2bfae2aa 100644 --- a/config/default.yaml +++ b/config/default.yaml | |||
@@ -217,7 +217,7 @@ log: | |||
217 | accept_client_log: true | 217 | accept_client_log: true |
218 | 218 | ||
219 | # Support of Open Telemetry metrics and tracing | 219 | # Support of Open Telemetry metrics and tracing |
220 | # For more information: https://docs.joinpeertube.org/maintain-observability | 220 | # For more information: https://docs.joinpeertube.org/maintain/observability |
221 | open_telemetry: | 221 | open_telemetry: |
222 | metrics: | 222 | metrics: |
223 | enabled: false | 223 | enabled: false |
@@ -557,7 +557,7 @@ import: | |||
557 | # Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html | 557 | # Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html |
558 | http: | 558 | http: |
559 | # We recommend to use a HTTP proxy if you enable HTTP import to prevent private URL access from this server | 559 | # We recommend to use a HTTP proxy if you enable HTTP import to prevent private URL access from this server |
560 | # See https://docs.joinpeertube.org/maintain-configuration?id=security for more information | 560 | # See https://docs.joinpeertube.org/maintain/configuration#security for more information |
561 | enabled: false | 561 | enabled: false |
562 | 562 | ||
563 | youtube_dl_release: | 563 | youtube_dl_release: |
@@ -581,7 +581,7 @@ import: | |||
581 | # Magnet URI or torrent file (use classic TCP/UDP/WebSeed to download the file) | 581 | # Magnet URI or torrent file (use classic TCP/UDP/WebSeed to download the file) |
582 | torrent: | 582 | torrent: |
583 | # We recommend to only enable magnet URI/torrent import if you trust your users | 583 | # We recommend to only enable magnet URI/torrent import if you trust your users |
584 | # See https://docs.joinpeertube.org/maintain-configuration?id=security for more information | 584 | # See https://docs.joinpeertube.org/maintain/configuration#security for more information |
585 | enabled: false | 585 | enabled: false |
586 | 586 | ||
587 | # Add ability for your users to synchronize their channels with external channels, playlists, etc | 587 | # Add ability for your users to synchronize their channels with external channels, playlists, etc |
@@ -741,7 +741,7 @@ search: | |||
741 | search_index: | 741 | search_index: |
742 | enabled: false | 742 | enabled: false |
743 | # URL of the search index, that should use the same search API and routes | 743 | # URL of the search index, that should use the same search API and routes |
744 | # than PeerTube: https://docs.joinpeertube.org/api-rest-reference.html | 744 | # than PeerTube: https://docs.joinpeertube.org/api/rest-reference.html |
745 | # You should deploy your own with https://framagit.org/framasoft/peertube/search-index, | 745 | # You should deploy your own with https://framagit.org/framasoft/peertube/search-index, |
746 | # and can use https://search.joinpeertube.org/ for tests, but keep in mind the latter is an unmoderated search index | 746 | # and can use https://search.joinpeertube.org/ for tests, but keep in mind the latter is an unmoderated search index |
747 | url: '' | 747 | url: '' |
diff --git a/config/production.yaml.example b/config/production.yaml.example index f1ebf9095..0c942c5ec 100644 --- a/config/production.yaml.example +++ b/config/production.yaml.example | |||
@@ -215,7 +215,7 @@ log: | |||
215 | accept_client_log: true | 215 | accept_client_log: true |
216 | 216 | ||
217 | # Support of Open Telemetry metrics and tracing | 217 | # Support of Open Telemetry metrics and tracing |
218 | # For more information: https://docs.joinpeertube.org/maintain-observability | 218 | # For more information: https://docs.joinpeertube.org/maintain/observability |
219 | open_telemetry: | 219 | open_telemetry: |
220 | metrics: | 220 | metrics: |
221 | enabled: false | 221 | enabled: false |
@@ -567,7 +567,7 @@ import: | |||
567 | # Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html | 567 | # Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html |
568 | http: | 568 | http: |
569 | # We recommend to use a HTTP proxy if you enable HTTP import to prevent private URL access from this server | 569 | # We recommend to use a HTTP proxy if you enable HTTP import to prevent private URL access from this server |
570 | # See https://docs.joinpeertube.org/maintain-configuration?id=security for more information | 570 | # See https://docs.joinpeertube.org/maintain/configuration#security for more information |
571 | enabled: false | 571 | enabled: false |
572 | 572 | ||
573 | youtube_dl_release: | 573 | youtube_dl_release: |
@@ -591,7 +591,7 @@ import: | |||
591 | # Magnet URI or torrent file (use classic TCP/UDP/WebSeed to download the file) | 591 | # Magnet URI or torrent file (use classic TCP/UDP/WebSeed to download the file) |
592 | torrent: | 592 | torrent: |
593 | # We recommend to only enable magnet URI/torrent import if you trust your users | 593 | # We recommend to only enable magnet URI/torrent import if you trust your users |
594 | # See https://docs.joinpeertube.org/maintain-configuration?id=security for more information | 594 | # See https://docs.joinpeertube.org/maintain/configuration#security for more information |
595 | enabled: false | 595 | enabled: false |
596 | 596 | ||
597 | # Add ability for your users to synchronize their channels with external channels, playlists, etc. | 597 | # Add ability for your users to synchronize their channels with external channels, playlists, etc. |
@@ -751,7 +751,7 @@ search: | |||
751 | search_index: | 751 | search_index: |
752 | enabled: false | 752 | enabled: false |
753 | # URL of the search index, that should use the same search API and routes | 753 | # URL of the search index, that should use the same search API and routes |
754 | # than PeerTube: https://docs.joinpeertube.org/api-rest-reference.html | 754 | # than PeerTube: https://docs.joinpeertube.org/api/rest-reference.html |
755 | # You should deploy your own with https://framagit.org/framasoft/peertube/search-index, | 755 | # You should deploy your own with https://framagit.org/framasoft/peertube/search-index, |
756 | # and can use https://search.joinpeertube.org/ for tests, but keep in mind the latter is an unmoderated search index | 756 | # and can use https://search.joinpeertube.org/ for tests, but keep in mind the latter is an unmoderated search index |
757 | url: '' | 757 | url: '' |
diff --git a/packages/types/README.md b/packages/types/README.md index adeca48e5..3151be344 100644 --- a/packages/types/README.md +++ b/packages/types/README.md | |||
@@ -16,4 +16,4 @@ yarn add --dev @peertube/peertube-types | |||
16 | 16 | ||
17 | ## Usage | 17 | ## Usage |
18 | 18 | ||
19 | > See [contribute-plugins](https://docs.joinpeertube.org/contribute-plugins?id=typescript) **Typescript** section of the doc. | 19 | > See [contribute-plugins](https://docs.joinpeertube.org/contribute/plugins#typescript) **Typescript** section of the doc. |
diff --git a/server/initializers/checker-after-init.ts b/server/initializers/checker-after-init.ts index 0df7414be..14ed82cb4 100644 --- a/server/initializers/checker-after-init.ts +++ b/server/initializers/checker-after-init.ts | |||
@@ -251,7 +251,7 @@ function checkLiveConfig () { | |||
251 | 251 | ||
252 | if (CONFIG.LIVE.RTMPS.ENABLED) { | 252 | if (CONFIG.LIVE.RTMPS.ENABLED) { |
253 | if (!CONFIG.LIVE.RTMPS.KEY_FILE) { | 253 | if (!CONFIG.LIVE.RTMPS.KEY_FILE) { |
254 | throw new Error('You must specify a key file to enabled RTMPS') | 254 | throw new Error('You must specify a key file to enable RTMPS') |
255 | } | 255 | } |
256 | 256 | ||
257 | if (!CONFIG.LIVE.RTMPS.CERT_FILE) { | 257 | if (!CONFIG.LIVE.RTMPS.CERT_FILE) { |
diff --git a/server/middlewares/doc.ts b/server/middlewares/doc.ts index eef76acaa..c43f41977 100644 --- a/server/middlewares/doc.ts +++ b/server/middlewares/doc.ts | |||
@@ -5,7 +5,7 @@ function openapiOperationDoc (options: { | |||
5 | operationId?: string | 5 | operationId?: string |
6 | }) { | 6 | }) { |
7 | return (req: express.Request, res: express.Response, next: express.NextFunction) => { | 7 | return (req: express.Request, res: express.Response, next: express.NextFunction) => { |
8 | res.locals.docUrl = options.url || 'https://docs.joinpeertube.org/api-rest-reference.html#operation/' + options.operationId | 8 | res.locals.docUrl = options.url || 'https://docs.joinpeertube.org/api/rest-reference.html#operation/' + options.operationId |
9 | 9 | ||
10 | if (next) return next() | 10 | if (next) return next() |
11 | } | 11 | } |
diff --git a/server/middlewares/error.ts b/server/middlewares/error.ts index 96a85012a..7b116eb57 100644 --- a/server/middlewares/error.ts +++ b/server/middlewares/error.ts | |||
@@ -28,7 +28,7 @@ function apiFailMiddleware (req: express.Request, res: express.Response, next: e | |||
28 | detail: message, | 28 | detail: message, |
29 | 29 | ||
30 | type: type | 30 | type: type |
31 | ? `https://docs.joinpeertube.org/api-rest-reference.html#section/Errors/${type}` | 31 | ? `https://docs.joinpeertube.org/api/rest-reference.html#section/Errors/${type}` |
32 | : undefined | 32 | : undefined |
33 | }, extension) | 33 | }, extension) |
34 | 34 | ||
diff --git a/server/tests/api/check-params/videos.ts b/server/tests/api/check-params/videos.ts index 572ca8997..2a83143e2 100644 --- a/server/tests/api/check-params/videos.ts +++ b/server/tests/api/check-params/videos.ts | |||
@@ -421,9 +421,9 @@ describe('Test videos API validator', function () { | |||
421 | const error = body as unknown as PeerTubeProblemDocument | 421 | const error = body as unknown as PeerTubeProblemDocument |
422 | 422 | ||
423 | if (mode === 'legacy') { | 423 | if (mode === 'legacy') { |
424 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api-rest-reference.html#operation/uploadLegacy') | 424 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api/rest-reference.html#operation/uploadLegacy') |
425 | } else { | 425 | } else { |
426 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api-rest-reference.html#operation/uploadResumableInit') | 426 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api/rest-reference.html#operation/uploadResumableInit') |
427 | } | 427 | } |
428 | 428 | ||
429 | expect(error.type).to.equal('about:blank') | 429 | expect(error.type).to.equal('about:blank') |
@@ -680,7 +680,7 @@ describe('Test videos API validator', function () { | |||
680 | const res = await makePutBodyRequest({ url: server.url, path: path + video.shortUUID, token: server.accessToken, fields }) | 680 | const res = await makePutBodyRequest({ url: server.url, path: path + video.shortUUID, token: server.accessToken, fields }) |
681 | const error = res.body as PeerTubeProblemDocument | 681 | const error = res.body as PeerTubeProblemDocument |
682 | 682 | ||
683 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api-rest-reference.html#operation/putVideo') | 683 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api/rest-reference.html#operation/putVideo') |
684 | 684 | ||
685 | expect(error.type).to.equal('about:blank') | 685 | expect(error.type).to.equal('about:blank') |
686 | expect(error.title).to.equal('Bad Request') | 686 | expect(error.title).to.equal('Bad Request') |
@@ -729,7 +729,7 @@ describe('Test videos API validator', function () { | |||
729 | const body = await server.videos.get({ id: 'hi', expectedStatus: HttpStatusCode.BAD_REQUEST_400 }) | 729 | const body = await server.videos.get({ id: 'hi', expectedStatus: HttpStatusCode.BAD_REQUEST_400 }) |
730 | const error = body as unknown as PeerTubeProblemDocument | 730 | const error = body as unknown as PeerTubeProblemDocument |
731 | 731 | ||
732 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api-rest-reference.html#operation/getVideo') | 732 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api/rest-reference.html#operation/getVideo') |
733 | 733 | ||
734 | expect(error.type).to.equal('about:blank') | 734 | expect(error.type).to.equal('about:blank') |
735 | expect(error.title).to.equal('Bad Request') | 735 | expect(error.title).to.equal('Bad Request') |
@@ -835,7 +835,7 @@ describe('Test videos API validator', function () { | |||
835 | const body = await server.videos.remove({ id: 'hello', expectedStatus: HttpStatusCode.BAD_REQUEST_400 }) | 835 | const body = await server.videos.remove({ id: 'hello', expectedStatus: HttpStatusCode.BAD_REQUEST_400 }) |
836 | const error = body as PeerTubeProblemDocument | 836 | const error = body as PeerTubeProblemDocument |
837 | 837 | ||
838 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api-rest-reference.html#operation/delVideo') | 838 | expect(error.docs).to.equal('https://docs.joinpeertube.org/api/rest-reference.html#operation/delVideo') |
839 | 839 | ||
840 | expect(error.type).to.equal('about:blank') | 840 | expect(error.type).to.equal('about:blank') |
841 | expect(error.title).to.equal('Bad Request') | 841 | expect(error.title).to.equal('Bad Request') |
diff --git a/server/tests/api/server/follow-constraints.ts b/server/tests/api/server/follow-constraints.ts index ff5332858..704d6fc96 100644 --- a/server/tests/api/server/follow-constraints.ts +++ b/server/tests/api/server/follow-constraints.ts | |||
@@ -146,7 +146,7 @@ describe('Test follow constraints', function () { | |||
146 | const body = await servers[0].videos.get({ id: video2UUID, expectedStatus: HttpStatusCode.FORBIDDEN_403 }) | 146 | const body = await servers[0].videos.get({ id: video2UUID, expectedStatus: HttpStatusCode.FORBIDDEN_403 }) |
147 | const error = body as unknown as PeerTubeProblemDocument | 147 | const error = body as unknown as PeerTubeProblemDocument |
148 | 148 | ||
149 | const doc = 'https://docs.joinpeertube.org/api-rest-reference.html#section/Errors/does_not_respect_follow_constraints' | 149 | const doc = 'https://docs.joinpeertube.org/api/rest-reference.html#section/Errors/does_not_respect_follow_constraints' |
150 | expect(error.type).to.equal(doc) | 150 | expect(error.type).to.equal(doc) |
151 | expect(error.code).to.equal(ServerErrorCode.DOES_NOT_RESPECT_FOLLOW_CONSTRAINTS) | 151 | expect(error.code).to.equal(ServerErrorCode.DOES_NOT_RESPECT_FOLLOW_CONSTRAINTS) |
152 | 152 | ||
diff --git a/server/tools/README.md b/server/tools/README.md index 449c57ce1..d7ecd4004 100644 --- a/server/tools/README.md +++ b/server/tools/README.md | |||
@@ -1,3 +1,3 @@ | |||
1 | # PeerTube CLI | 1 | # PeerTube CLI |
2 | 2 | ||
3 | See https://docs.joinpeertube.org/maintain-tools?id=remote-tools | 3 | See https://docs.joinpeertube.org/maintain/tools#remote-tools |
diff --git a/support/doc/api/embeds.md b/support/doc/api/embeds.md index 069882bfe..1dd1443e7 100644 --- a/support/doc/api/embeds.md +++ b/support/doc/api/embeds.md | |||
@@ -49,131 +49,131 @@ player.seek(32) | |||
49 | player.pause() | 49 | player.pause() |
50 | ``` | 50 | ``` |
51 | 51 | ||
52 | # URL parameters | 52 | ## Embed URL parameters |
53 | 53 | ||
54 | You can customize PeerTube player by specifying URL query parameters. | 54 | You can customize PeerTube player by specifying URL query parameters. |
55 | For example `https://my-instance.example.com/videos/embed/52a10666-3a18-4e73-93da-e8d3c12c305a??start=1s&stop=18s&loop=1&autoplay=1&muted=1&warningTitle=0&controlBar=0&peertubeLink=0&p2p=0` | 55 | For example `https://my-instance.example.com/videos/embed/52a10666-3a18-4e73-93da-e8d3c12c305a??start=1s&stop=18s&loop=1&autoplay=1&muted=1&warningTitle=0&controlBar=0&peertubeLink=0&p2p=0` |
56 | 56 | ||
57 | ## start | 57 | ### start |
58 | 58 | ||
59 | Start the video at a specific time. | 59 | Start the video at a specific time. |
60 | Value must be raw seconds or a duration (`3m4s`) | 60 | Value must be raw seconds or a duration (`3m4s`) |
61 | 61 | ||
62 | ## stop | 62 | ### stop |
63 | 63 | ||
64 | Stop the video at a specific time. | 64 | Stop the video at a specific time. |
65 | Value must be raw seconds or a duration (`54s`) | 65 | Value must be raw seconds or a duration (`54s`) |
66 | 66 | ||
67 | ## controls | 67 | ### controls |
68 | 68 | ||
69 | Mimics video HTML element `controls` attribute, meaning that all controls (including big play button, control bar, etc.) will be removed. | 69 | Mimics video HTML element `controls` attribute, meaning that all controls (including big play button, control bar, etc.) will be removed. |
70 | It can be useful if you want to have a full control of the PeerTube player. | 70 | It can be useful if you want to have a full control of the PeerTube player. |
71 | 71 | ||
72 | Value must be `0` or `1`. | 72 | Value must be `0` or `1`. |
73 | 73 | ||
74 | ## controlBar | 74 | ### controlBar |
75 | 75 | ||
76 | Hide control bar when the video is played. | 76 | Hide control bar when the video is played. |
77 | 77 | ||
78 | Value must be `0` or `1`. | 78 | Value must be `0` or `1`. |
79 | 79 | ||
80 | ## peertubeLink | 80 | ### peertubeLink |
81 | 81 | ||
82 | Hide PeerTube instance link in control bar. | 82 | Hide PeerTube instance link in control bar. |
83 | 83 | ||
84 | Value must be `0` or `1`. | 84 | Value must be `0` or `1`. |
85 | 85 | ||
86 | ## muted | 86 | ### muted |
87 | 87 | ||
88 | Mute the video by default. | 88 | Mute the video by default. |
89 | 89 | ||
90 | Value must be `0` or `1`. | 90 | Value must be `0` or `1`. |
91 | 91 | ||
92 | ## loop | 92 | ### loop |
93 | 93 | ||
94 | Automatically start again the video when it ends. | 94 | Automatically start again the video when it ends. |
95 | 95 | ||
96 | Value must be `0` or `1`. | 96 | Value must be `0` or `1`. |
97 | 97 | ||
98 | ## subtitle | 98 | ### subtitle |
99 | 99 | ||
100 | Auto select a subtitle by default. | 100 | Auto select a subtitle by default. |
101 | 101 | ||
102 | Value must be a valid subtitle ISO code (`fr`, `en`, etc.). | 102 | Value must be a valid subtitle ISO code (`fr`, `en`, etc.). |
103 | 103 | ||
104 | ## autoplay | 104 | ### autoplay |
105 | 105 | ||
106 | Try to automatically play the video. | 106 | Try to automatically play the video. |
107 | Most web browsers disable video autoplay if the user did not interact with the video. You can try to bypass this limitation by muting the video | 107 | Most web browsers disable video autoplay if the user did not interact with the video. You can try to bypass this limitation by muting the video |
108 | 108 | ||
109 | Value must be `0` or `1`. | 109 | Value must be `0` or `1`. |
110 | 110 | ||
111 | ## title | 111 | ### title |
112 | 112 | ||
113 | Hide embed title. | 113 | Hide embed title. |
114 | 114 | ||
115 | Value must be `0` or `1`. | 115 | Value must be `0` or `1`. |
116 | 116 | ||
117 | ## warningTitle | 117 | ### warningTitle |
118 | 118 | ||
119 | Hide P2P warning title. | 119 | Hide P2P warning title. |
120 | 120 | ||
121 | Value must be `0` or `1`. | 121 | Value must be `0` or `1`. |
122 | 122 | ||
123 | ## p2p | 123 | ### p2p |
124 | 124 | ||
125 | Disable P2P. | 125 | Disable P2P. |
126 | 126 | ||
127 | Value must be `0` or `1`. | 127 | Value must be `0` or `1`. |
128 | 128 | ||
129 | ## bigPlayBackgroundColor | 129 | ### bigPlayBackgroundColor |
130 | 130 | ||
131 | Customize big play button background color. | 131 | Customize big play button background color. |
132 | 132 | ||
133 | Value must be a valid color (`red` or `rgba(100, 100, 100, 0.5)`). | 133 | Value must be a valid color (`red` or `rgba(100, 100, 100, 0.5)`). |
134 | 134 | ||
135 | ## foregroundColor | 135 | ### foregroundColor |
136 | 136 | ||
137 | Customize embed font color. | 137 | Customize embed font color. |
138 | 138 | ||
139 | Value must be a valid color (`red` or `rgba(100, 100, 100, 0.5)`). | 139 | Value must be a valid color (`red` or `rgba(100, 100, 100, 0.5)`). |
140 | 140 | ||
141 | ## mode | 141 | ### mode |
142 | 142 | ||
143 | Force a specific player engine. | 143 | Force a specific player engine. |
144 | 144 | ||
145 | Value must be a valid mode (`webtorrent` or `p2p-media-loader`). | 145 | Value must be a valid mode (`webtorrent` or `p2p-media-loader`). |
146 | 146 | ||
147 | ## api | 147 | ### api |
148 | 148 | ||
149 | Enable embed JavaScript API (see methods below). | 149 | Enable embed JavaScript API (see methods below). |
150 | 150 | ||
151 | Value must be `0` or `1`. | 151 | Value must be `0` or `1`. |
152 | 152 | ||
153 | 153 | ||
154 | # Methods | 154 | ## Embed methods |
155 | 155 | ||
156 | ## `play() : Promise<void>` | 156 | ### `play() : Promise<void>` |
157 | 157 | ||
158 | Starts playback, or resumes playback if it is paused. | 158 | Starts playback, or resumes playback if it is paused. |
159 | 159 | ||
160 | ## `pause() : Promise<void>` | 160 | ### `pause() : Promise<void>` |
161 | 161 | ||
162 | Pauses playback. | 162 | Pauses playback. |
163 | 163 | ||
164 | ## `seek(positionInSeconds : number)` | 164 | ### `seek(positionInSeconds : number)` |
165 | 165 | ||
166 | Seek to the given position, as specified in seconds into the video. | 166 | Seek to the given position, as specified in seconds into the video. |
167 | 167 | ||
168 | ## `addEventListener(eventName : string, handler : Function)` | 168 | ### `addEventListener(eventName : string, handler : Function)` |
169 | 169 | ||
170 | Add a listener for a specific event. See below for the available events. | 170 | Add a listener for a specific event. See below for the available events. |
171 | 171 | ||
172 | ## `removeEventListener(eventName : string, handler : Function)` | 172 | ### `removeEventListener(eventName : string, handler : Function)` |
173 | 173 | ||
174 | Remove a listener. | 174 | Remove a listener. |
175 | 175 | ||
176 | ## `getResolutions() : Promise<PeerTubeResolution[]>` | 176 | ### `getResolutions() : Promise<PeerTubeResolution[]>` |
177 | 177 | ||
178 | Get the available resolutions. A `PeerTubeResolution` looks like: | 178 | Get the available resolutions. A `PeerTubeResolution` looks like: |
179 | 179 | ||
@@ -188,56 +188,56 @@ Get the available resolutions. A `PeerTubeResolution` looks like: | |||
188 | 188 | ||
189 | `active` is true if the resolution is the currently selected resolution. | 189 | `active` is true if the resolution is the currently selected resolution. |
190 | 190 | ||
191 | ## `setResolution(resolutionId : number): Promise<void>` | 191 | ### `setResolution(resolutionId : number): Promise<void>` |
192 | 192 | ||
193 | Change the current resolution. Pass `-1` for automatic resolution (when available). | 193 | Change the current resolution. Pass `-1` for automatic resolution (when available). |
194 | Otherwise, `resolutionId` should be the ID of an object returned by `getResolutions()` | 194 | Otherwise, `resolutionId` should be the ID of an object returned by `getResolutions()` |
195 | 195 | ||
196 | ## `getPlaybackRates() : Promise<number[]>` | 196 | ### `getPlaybackRates() : Promise<number[]>` |
197 | 197 | ||
198 | Get the available playback rates, where `1` represents normal speed, `0.5` is half speed, `2` is double speed, etc. | 198 | Get the available playback rates, where `1` represents normal speed, `0.5` is half speed, `2` is double speed, etc. |
199 | 199 | ||
200 | ## `getPlaybackRates() : Promise<number>` | 200 | ### `getPlaybackRates() : Promise<number>` |
201 | 201 | ||
202 | Get the current playback rate. See `getPlaybackRates()` for more information. | 202 | Get the current playback rate. See `getPlaybackRates()` for more information. |
203 | 203 | ||
204 | ## `setPlaybackRate(rate: number) : Promise<void>` | 204 | ### `setPlaybackRate(rate: number) : Promise<void>` |
205 | 205 | ||
206 | Set the current playback rate. The passed rate should be a value as returned by `getPlaybackRates()`. | 206 | Set the current playback rate. The passed rate should be a value as returned by `getPlaybackRates()`. |
207 | 207 | ||
208 | ## `setVolume(factor: number) : Promise<void>` | 208 | ### `setVolume(factor: number) : Promise<void>` |
209 | 209 | ||
210 | Set the playback volume. Value should be between `0` and `1`. | 210 | Set the playback volume. Value should be between `0` and `1`. |
211 | 211 | ||
212 | ## `getVolume(): Promise<number>` | 212 | ### `getVolume(): Promise<number>` |
213 | 213 | ||
214 | Get the playback volume. Returns a value between `0` and `1`. | 214 | Get the playback volume. Returns a value between `0` and `1`. |
215 | 215 | ||
216 | ## `setCaption(id: string) : Promise<void>` | 216 | ### `setCaption(id: string) : Promise<void>` |
217 | 217 | ||
218 | Update current caption using the caption id. | 218 | Update current caption using the caption id. |
219 | 219 | ||
220 | ## `getCaptions(): Promise<{ id: string, label: string, src: string, mode: 'disabled' | 'showing' }>` | 220 | ### `getCaptions(): Promise<{ id: string, label: string, src: string, mode: 'disabled' | 'showing' }>` |
221 | 221 | ||
222 | Get video captions. | 222 | Get video captions. |
223 | 223 | ||
224 | ## `playNextVideo(): Promise<void>` | 224 | ### `playNextVideo(): Promise<void>` |
225 | 225 | ||
226 | Play next video in playlist. | 226 | Play next video in playlist. |
227 | 227 | ||
228 | ## `playPreviousVideo(): Promise<void>` | 228 | ### `playPreviousVideo(): Promise<void>` |
229 | 229 | ||
230 | Play previous video in playlist. | 230 | Play previous video in playlist. |
231 | 231 | ||
232 | ## `getCurrentPosition(): Promise<void>` | 232 | ### `getCurrentPosition(): Promise<void>` |
233 | 233 | ||
234 | Get current position in playlist (starts from 1). | 234 | Get current position in playlist (starts from 1). |
235 | 235 | ||
236 | # Events | 236 | ## Embed events |
237 | 237 | ||
238 | You can subscribe to events by using `addEventListener()`. See above for details. | 238 | You can subscribe to events by using `addEventListener()`. See above for details. |
239 | 239 | ||
240 | ## Event `playbackStatusUpdate` | 240 | ### Event `playbackStatusUpdate` |
241 | 241 | ||
242 | Fired every half second to provide the current status of playback. | 242 | Fired every half second to provide the current status of playback. |
243 | The parameter of the callback will resemble: | 243 | The parameter of the callback will resemble: |
@@ -256,14 +256,14 @@ The parameter of the callback will resemble: | |||
256 | The `volume` field contains the volume from `0` (silent) to `1` (full volume). | 256 | The `volume` field contains the volume from `0` (silent) to `1` (full volume). |
257 | The `playbackState` can be `unstarted`, `playing`, `paused` or `ended`. More states may be added later. | 257 | The `playbackState` can be `unstarted`, `playing`, `paused` or `ended`. More states may be added later. |
258 | 258 | ||
259 | ## Event `playbackStatusChange` | 259 | ### Event `playbackStatusChange` |
260 | 260 | ||
261 | Fired when playback transitions between states, such as `paused` and `playing`. More states may be added later. | 261 | Fired when playback transitions between states, such as `paused` and `playing`. More states may be added later. |
262 | 262 | ||
263 | ## Event `resolutionUpdate` | 263 | ### Event `resolutionUpdate` |
264 | 264 | ||
265 | Fired when the available resolutions have changed, or when the currently selected resolution has changed. Listener should call `getResolutions()` to get the updated information. | 265 | Fired when the available resolutions have changed, or when the currently selected resolution has changed. Listener should call `getResolutions()` to get the updated information. |
266 | 266 | ||
267 | ## Event `volumeChange` | 267 | ### Event `volumeChange` |
268 | 268 | ||
269 | Fired when the player volume changed. | 269 | Fired when the player volume changed. |
diff --git a/support/doc/api/openapi.yaml b/support/doc/api/openapi.yaml index 79417e34f..fa50e8f17 100644 --- a/support/doc/api/openapi.yaml +++ b/support/doc/api/openapi.yaml | |||
@@ -21,7 +21,7 @@ info: | |||
21 | - [Go](https://framagit.org/framasoft/peertube/clients/go) | 21 | - [Go](https://framagit.org/framasoft/peertube/clients/go) |
22 | - [Kotlin](https://framagit.org/framasoft/peertube/clients/kotlin) | 22 | - [Kotlin](https://framagit.org/framasoft/peertube/clients/kotlin) |
23 | 23 | ||
24 | See the [REST API quick start](https://docs.joinpeertube.org/api-rest-getting-started) for a few | 24 | See the [REST API quick start](https://docs.joinpeertube.org/api/rest-getting-started) for a few |
25 | examples of using the PeerTube API. | 25 | examples of using the PeerTube API. |
26 | 26 | ||
27 | # Authentication | 27 | # Authentication |
@@ -33,7 +33,7 @@ info: | |||
33 | ## Roles | 33 | ## Roles |
34 | 34 | ||
35 | Accounts are given permissions based on their role. There are three roles on | 35 | Accounts are given permissions based on their role. There are three roles on |
36 | PeerTube: Administrator, Moderator, and User. See the [roles guide](https://docs.joinpeertube.org/admin-managing-users?id=roles) for a detail of their permissions. | 36 | PeerTube: Administrator, Moderator, and User. See the [roles guide](https://docs.joinpeertube.org/admin/managing-users#roles) for a detail of their permissions. |
37 | 37 | ||
38 | # Errors | 38 | # Errors |
39 | 39 | ||
@@ -46,7 +46,7 @@ info: | |||
46 | 46 | ||
47 | { | 47 | { |
48 | "detail": "Video not found", | 48 | "detail": "Video not found", |
49 | "docs": "https://docs.joinpeertube.org/api-rest-reference.html#operation/getVideo", | 49 | "docs": "https://docs.joinpeertube.org/api/rest-reference.html#operation/getVideo", |
50 | "status": 404, | 50 | "status": 404, |
51 | "title": "Not Found", | 51 | "title": "Not Found", |
52 | "type": "about:blank" | 52 | "type": "about:blank" |
@@ -63,10 +63,10 @@ info: | |||
63 | 63 | ||
64 | { | 64 | { |
65 | "detail": "Cannot get this video regarding follow constraints", | 65 | "detail": "Cannot get this video regarding follow constraints", |
66 | "docs": "https://docs.joinpeertube.org/api-rest-reference.html#operation/getVideo", | 66 | "docs": "https://docs.joinpeertube.org/api/rest-reference.html#operation/getVideo", |
67 | "status": 403, | 67 | "status": 403, |
68 | "title": "Forbidden", | 68 | "title": "Forbidden", |
69 | "type": "https://docs.joinpeertube.org/api-rest-reference.html#section/Errors/does_not_respect_follow_constraints" | 69 | "type": "https://docs.joinpeertube.org/api/rest-reference.html#section/Errors/does_not_respect_follow_constraints" |
70 | } | 70 | } |
71 | ``` | 71 | ``` |
72 | 72 | ||
@@ -84,7 +84,7 @@ info: | |||
84 | 84 | ||
85 | { | 85 | { |
86 | "detail": "Incorrect request parameters: id", | 86 | "detail": "Incorrect request parameters: id", |
87 | "docs": "https://docs.joinpeertube.org/api-rest-reference.html#operation/getVideo", | 87 | "docs": "https://docs.joinpeertube.org/api/rest-reference.html#operation/getVideo", |
88 | "instance": "/api/v1/videos/9c9de5e8-0a1e-484a-b099-e80766180", | 88 | "instance": "/api/v1/videos/9c9de5e8-0a1e-484a-b099-e80766180", |
89 | "invalid-params": { | 89 | "invalid-params": { |
90 | "id": { | 90 | "id": { |
@@ -149,7 +149,7 @@ info: | |||
149 | 149 | ||
150 | In addition, all routes serving ActivityPub are CORS-enabled for all origins. | 150 | In addition, all routes serving ActivityPub are CORS-enabled for all origins. |
151 | externalDocs: | 151 | externalDocs: |
152 | url: https://docs.joinpeertube.org/api-rest-reference.html | 152 | url: https://docs.joinpeertube.org/api/rest-reference.html |
153 | tags: | 153 | tags: |
154 | - name: Register | 154 | - name: Register |
155 | description: | | 155 | description: | |
@@ -204,7 +204,7 @@ tags: | |||
204 | information across its social graph by posting activities to actors' inbox | 204 | information across its social graph by posting activities to actors' inbox |
205 | endpoints. | 205 | endpoints. |
206 | externalDocs: | 206 | externalDocs: |
207 | url: https://docs.joinpeertube.org/admin-following-instances?id=instances-follows | 207 | url: https://docs.joinpeertube.org/admin/following-instances#instances-follows |
208 | - name: Instance Redundancy | 208 | - name: Instance Redundancy |
209 | description: > | 209 | description: > |
210 | Redundancy is part of the inter-server solidarity that PeerTube fosters. | 210 | Redundancy is part of the inter-server solidarity that PeerTube fosters. |
@@ -212,12 +212,12 @@ tags: | |||
212 | to the policy of video selection of your choice. Note that you have a similar functionality | 212 | to the policy of video selection of your choice. Note that you have a similar functionality |
213 | to mirror individual videos, see [video mirroring](#tag/Video-Mirroring). | 213 | to mirror individual videos, see [video mirroring](#tag/Video-Mirroring). |
214 | externalDocs: | 214 | externalDocs: |
215 | url: https://docs.joinpeertube.org/admin-following-instances?id=instances-redundancy | 215 | url: https://docs.joinpeertube.org/admin/following-instances#instances-redundancy |
216 | - name: Plugins | 216 | - name: Plugins |
217 | description: > | 217 | description: > |
218 | Managing plugins installed from a local path or from NPM, or search for new ones. | 218 | Managing plugins installed from a local path or from NPM, or search for new ones. |
219 | externalDocs: | 219 | externalDocs: |
220 | url: https://docs.joinpeertube.org/api-plugins | 220 | url: https://docs.joinpeertube.org/api/plugins |
221 | - name: Abuses | 221 | - name: Abuses |
222 | description: | | 222 | description: | |
223 | Abuses deal with reports of local or remote videos/comments/accounts alike. | 223 | Abuses deal with reports of local or remote videos/comments/accounts alike. |
@@ -5933,7 +5933,7 @@ components: | |||
5933 | Note that the __access token is valid for 1 day__ and is given | 5933 | Note that the __access token is valid for 1 day__ and is given |
5934 | along with a __refresh token valid for 2 weeks__. | 5934 | along with a __refresh token valid for 2 weeks__. |
5935 | 5935 | ||
5936 | [Generate]: https://docs.joinpeertube.org/api-rest-getting-started | 5936 | [Generate]: https://docs.joinpeertube.org/api/rest-getting-started |
5937 | type: oauth2 | 5937 | type: oauth2 |
5938 | flows: | 5938 | flows: |
5939 | password: | 5939 | password: |
diff --git a/support/doc/docker.md b/support/doc/docker.md index 6fc443c8e..e3f9b5477 100644 --- a/support/doc/docker.md +++ b/support/doc/docker.md | |||
@@ -119,11 +119,11 @@ peertube._domainkey.mydomain.tld. IN TXT ( "v=DKIM1; h=sha256; k=rsa; " | |||
119 | 119 | ||
120 | #### Administrator password | 120 | #### Administrator password |
121 | 121 | ||
122 | See the production guide ["Administrator" section](https://docs.joinpeertube.org/install-any-os?id=technologist-administrator) | 122 | See the production guide ["Administrator" section](https://docs.joinpeertube.org/install/any-os#administrator) |
123 | 123 | ||
124 | #### What now? | 124 | #### What now? |
125 | 125 | ||
126 | See the production guide ["What now" section](https://docs.joinpeertube.org/install-any-os?id=tada-what-now). | 126 | See the production guide ["What now" section](https://docs.joinpeertube.org/install/any-os#what-now). |
127 | 127 | ||
128 | ## Upgrade | 128 | ## Upgrade |
129 | 129 | ||
diff --git a/support/doc/plugins/guide.md b/support/doc/plugins/guide.md index f82dbd15b..2cc544f1c 100644 --- a/support/doc/plugins/guide.md +++ b/support/doc/plugins/guide.md | |||
@@ -585,7 +585,7 @@ async function register ({ | |||
585 | } | 585 | } |
586 | ``` | 586 | ``` |
587 | 587 | ||
588 | See the [plugin API reference](https://docs.joinpeertube.org/api-plugins) to see the complete helpers list. | 588 | See the [plugin API reference](https://docs.joinpeertube.org/api/plugins) to see the complete helpers list. |
589 | 589 | ||
590 | ### Client API (themes & plugins) | 590 | ### Client API (themes & plugins) |
591 | 591 | ||
@@ -839,7 +839,7 @@ PeerTube provides some selectors (using `id` HTML attribute) on important blocks | |||
839 | 839 | ||
840 | For example `#plugin-selector-login-form` could be used to hide the login form. | 840 | For example `#plugin-selector-login-form` could be used to hide the login form. |
841 | 841 | ||
842 | See the complete list on https://docs.joinpeertube.org/api-plugins | 842 | See the complete list on https://docs.joinpeertube.org/api/plugins |
843 | 843 | ||
844 | #### HTML placeholder elements | 844 | #### HTML placeholder elements |
845 | 845 | ||
@@ -855,7 +855,7 @@ async function register (...) { | |||
855 | } | 855 | } |
856 | ``` | 856 | ``` |
857 | 857 | ||
858 | See the complete list on https://docs.joinpeertube.org/api-plugins | 858 | See the complete list on https://docs.joinpeertube.org/api/plugins |
859 | 859 | ||
860 | #### Add/remove left menu links | 860 | #### Add/remove left menu links |
861 | 861 | ||
@@ -1140,7 +1140,7 @@ $ npm deprecate peertube-plugin-xxx@"> 0.0.0" "explain here why you deprecate yo | |||
1140 | 1140 | ||
1141 | ## Plugin & Theme hooks/helpers API | 1141 | ## Plugin & Theme hooks/helpers API |
1142 | 1142 | ||
1143 | See the dedicated documentation: https://docs.joinpeertube.org/api-plugins | 1143 | See the dedicated documentation: https://docs.joinpeertube.org/api/plugins |
1144 | 1144 | ||
1145 | 1145 | ||
1146 | ## Tips | 1146 | ## Tips |
diff --git a/support/doc/production.md b/support/doc/production.md index 3a71a1a80..74bd3a673 100644 --- a/support/doc/production.md +++ b/support/doc/production.md | |||
@@ -125,7 +125,7 @@ Then edit the `config/production.yaml` file according to your webserver and data | |||
125 | 125 | ||
126 | Keys defined in `config/production.yaml` will override keys defined in `config/default.yaml`. | 126 | Keys defined in `config/production.yaml` will override keys defined in `config/default.yaml`. |
127 | 127 | ||
128 | **PeerTube does not support webserver host change**. Even though [PeerTube CLI can help you to switch hostname](https://docs.joinpeertube.org/maintain-tools?id=update-hostjs) there's no official support for that since it is a risky operation that might result in unforeseen errors. | 128 | **PeerTube does not support webserver host change**. Even though [PeerTube CLI can help you to switch hostname](https://docs.joinpeertube.org/maintain/tools#update-host-js) there's no official support for that since it is a risky operation that might result in unforeseen errors. |
129 | 129 | ||
130 | ### :truck: Webserver | 130 | ### :truck: Webserver |
131 | 131 | ||
diff --git a/support/openapi/go/README.mustache b/support/openapi/go/README.mustache index d0fc0fa33..d58657b5b 100644 --- a/support/openapi/go/README.mustache +++ b/support/openapi/go/README.mustache | |||
@@ -1,6 +1,6 @@ | |||
1 | # Go API client for {{appName}} | 1 | # Go API client for {{appName}} |
2 | 2 | ||
3 | This Python package is automatically generated from [PeerTube's REST API](https://docs.joinpeertube.org/api-rest-reference.html), | 3 | This Python package is automatically generated from [PeerTube's REST API](https://docs.joinpeertube.org/api/rest-reference.html), |
4 | using the [OpenAPI Generator](https://openapi-generator.tech) project: | 4 | using the [OpenAPI Generator](https://openapi-generator.tech) project: |
5 | 5 | ||
6 | - API version: {{appVersion}} | 6 | - API version: {{appVersion}} |
diff --git a/support/openapi/python/README.mustache b/support/openapi/python/README.mustache index 93dcd5ab6..de41970e8 100644 --- a/support/openapi/python/README.mustache +++ b/support/openapi/python/README.mustache | |||
@@ -1,6 +1,6 @@ | |||
1 | # Python API client for {{appName}} | 1 | # Python API client for {{appName}} |
2 | 2 | ||
3 | This Python package is automatically generated from [PeerTube's REST API](https://docs.joinpeertube.org/api-rest-reference.html), | 3 | This Python package is automatically generated from [PeerTube's REST API](https://docs.joinpeertube.org/api/rest-reference.html), |
4 | using the [OpenAPI Generator](https://openapi-generator.tech) project: | 4 | using the [OpenAPI Generator](https://openapi-generator.tech) project: |
5 | 5 | ||
6 | - API version: {{appVersion}} | 6 | - API version: {{appVersion}} |