From a48d6e8a4aec77971525a6047fd4f143c3f103da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ciar=C3=A1n=20Ainsworth?= Date: Sun, 3 Jul 2022 20:30:09 +0000 Subject: [PATCH] Migrate to simpler tables NOCHANGELOG --- CONTRIBUTING.rst | 33 +- .../configuration_docs/frontend.md | 27 +- .../configuration_docs/rate-limiting.md | 138 ++++- .../troubleshooting/frontend.md | 27 +- docs/developers/authentication.rst | 58 +- .../configuration_docs/env_file.po | 451 +++++++------- .../configuration_docs/frontend.po | 80 ++- .../locales/en_GB/LC_MESSAGES/contributing.po | 547 ++++++++-------- .../LC_MESSAGES/developers/authentication.po | 67 +- .../user_documentation/libraries/tag_music.po | 243 +++++++- .../configuration_docs/frontend.po | 80 ++- .../locales/en_US/LC_MESSAGES/contributing.po | 547 ++++++++-------- .../LC_MESSAGES/developers/authentication.po | 67 +- .../user_documentation/libraries/tag_music.po | 243 +++++++- .../configuration_docs/frontend.po | 80 ++- docs/locales/fr/LC_MESSAGES/contributing.po | 547 ++++++++-------- .../LC_MESSAGES/developers/authentication.po | 67 +- .../user_documentation/libraries/tag_music.po | 243 +++++++- .../configuration_docs/frontend.pot | 78 ++- .../configuration_docs/rate-limiting.pot | 186 +++--- .../troubleshooting/frontend.pot | 70 +-- docs/locales/gettext/contributing.pot | 583 ++++++++++-------- .../gettext/developers/authentication.pot | 58 +- .../libraries/tag_music.pot | 240 ++++++- .../user_documentation/libraries/tag_music.md | 76 ++- 25 files changed, 3073 insertions(+), 1763 deletions(-) diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index ed8700c29..e8a98b2a2 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -59,13 +59,18 @@ user environment variables in `your Gitpod settings `_. -+--------- ----------------+-----------------------------------+-------------------------+ -| Name | Value | Scope | -+==========================+===================================+=========================+ -| ``VUE_APP_INSTANCE_URL`` | ``https://funkwhale.example.com`` | ``funkwhale/funkwhale`` | -+--------------------------+-----------------------------------+-------------------------+ +.. list-table:: Environment variable + :header-rows: 1 + + * - Name + - Value + - Scope + * - ``VUE_APP_INSTANCE_URL`` + - ``https://funkwhale.example.com`` + - ``funkwhale/funkwhale`` The scope ``funkwhale/funkwhale`` ensures that this variable only works on Funkwhale. diff --git a/docs/administrator_documentation/configuration_docs/frontend.md b/docs/administrator_documentation/configuration_docs/frontend.md index f37b08c7e..5100ac2c3 100644 --- a/docs/administrator_documentation/configuration_docs/frontend.md +++ b/docs/administrator_documentation/configuration_docs/frontend.md @@ -32,14 +32,29 @@ To customize your Funkwhale pod, you need to serve a {file}`settings.json` file EOF ``` -```{dropdown} Supported parameters + ````{dropdown} Supported parameters -| Parameter | Data type | Description | Example | -|-------------------------|------------|-----------------------------------------------------------------------------------------------|--------------------------------| -| `additionalStylesheets` | Array | A list of URLs (relative or absolute) pointing to stylesheets. | `["https://test/theme.css"]` | -| `defaultServerUrl` | URL | The URL of the API server you want to connect the frontend to. Defaults to the current domain | `"https://api.yourdomain.com"` | + ```{list-table} + :header-rows: 1 -``` + * - Parameter + - Data type + - Description + - Example + + * - `additionalStylesheets` + - Array + - A list of URLs (relative or absolute) pointing to stylesheets. + - `["https://test/theme.css"]` + + * - `defaultServerUrl` + - URL + - The URL of the API server you want to connect the frontend to. Defaults to the current domain. + - `"https://api.yourdomain.com"` + + ``` + + ```` ### Configure your reverse proxy diff --git a/docs/administrator_documentation/configuration_docs/rate-limiting.md b/docs/administrator_documentation/configuration_docs/rate-limiting.md index 76e1cc679..1fa3c928a 100644 --- a/docs/administrator_documentation/configuration_docs/rate-limiting.md +++ b/docs/administrator_documentation/configuration_docs/rate-limiting.md @@ -4,42 +4,114 @@ This article contains a summary of the endpoints you can control using rate-limi ## Standard endpoints -| Endpoint name | Description | Default rate (per user) | -|---------------------------|----------------------------------------------------------|-------------------------| -| `anonymous-wildcard` | Anonymous requests not covered by other limits | 1000 per hour | -| `authenticated-wildcard` | Authenticated requests not covered by other limits | 2000 per hour | -| `authenticated-create` | Authenticated POST requests | 1000 per hour | -| `anonymous-create` | Anonymous POST requests | 1000 per day | -| `authenticated-list` | Authenticated GET requests | 10000 per hour | -| `anonymous-list` | Anonymous GET requests | 10000 per day | -| `authenticated-retrieve` | Authenticated GET requests on resource details | 10000 per hour | -| `anonymous-retrieve` | Anonymous GET requests on resource details | 10000 per day | -| `authenticated-destroy` | Authenticated DELETE requests on resource details | 500 per hour | -| `anonymous-destroy` | Anonymous DELETE requests on resource details | 1000 per day | -| `authenticated-update` | Authenticated PATCH and PUT requests on resource details | 1000 per hour | -| `anonymous-update` | Anonymous PATCH and PUT requests on resource details | 1000 per day | -| `subsonic` | All Subsonic API requests | 2000 per hour | +```{list-table} +:header-rows: 1 + +* - Endpoint name + - Description + - Default rate (per user) +* - `anonymous-wildcard` + - Anonymous requests not covered by other limits + - 1000 per hour +* - `authenticated-wildcard` + - Authenticated requests not covered by other limits + - 2000 per hour +* - `authenticated-create` + - Authenticated POST requests + - 1000 per hour +* - `anonymous-create` + - Anonymous POST requests + - 1000 per day +* - `authenticated-list` + - Authenticated GET requests + - 10000 per hour +* - `anonymous-list` + - Anonymous GET requests + - 10000 per day +* - `authenticated-retrieve` + - Authenticated GET requests on resource details + - 10000 per hour +* - `anonymous-retrieve` + - Anonymous GET requests on resource details + - 10000 per day +* - `authenticated-destroy` + - Authenticated DELETE requests on resource details + - 500 per hour +* - `anonymous-destroy` + - Anonymous DELETE requests on resource details + - 1000 per day +* - `authenticated-update` + - Authenticated PATCH and PUT requests on resource details + - 1000 per hour +* - `anonymous-update` + - Anonymous PATCH and PUT requests on resource details + - 1000 per day +* - `subsonic` + - All Subsonic API requests + - 2000 per hour + +``` ## User action endpoints -| Endpoint name | Description | Default rate (per user) | -|---------------------------|----------------------------------------------------------|-------------------------| -| `login` | User login | 30 per hour | -| `signup` | User signup | 10 per day | -| `verify-email` | Email address confirmation | 20 per hour | -| `password-change` | Password change (when authenticated) | 20 per hour | -| `password-reset` | Password reset request | 20 per hour | -| `password-reset-confirm` | Password reset confirmation | 20 per hour | -| `fetch` | Fetch remote objects | 200 per day | +```{list-table} +:header-rows: 1 + +* - Endpoint name + - Description + - Default rate (per user) +* - `login` + - User login + - 30 per hour +* - `signup` + - User signup + - 10 per day +* - `verify-email` + - Email address confirmation + - 20 per hour +* - `password-change` + - Password change (when authenticated) + - 20 per hour +* - `password-reset` + - Password reset request + - 20 per hour +* - `password-reset-confirm` + - Password reset confirmation + - 20 per hour +* - `fetch` + - Fetch remote objects + - 200 per day + +``` ## Dangerous endpoints -| Endpoint name | Description | Default rate (per user) | -|---------------------------|----------------------------------------------------------|-------------------------| -| `authenticated-reports` | Authenticated report submissions | 100 per day | -| `anonymous-reports` | Anonymous report submissions | 10 per day | -| `authenticated-oauth-app` | Authenticated OAuth app creation | 10 per hour | -| `anonymous-oauth-app` | Anonymous OAuth app creation | 10 per day | -| `oauth-authorize` | OAuth app authorization | 100 per hour | -| `oauth-token` | OAuth token creation | 100 per hour | -| `oauth-revoke-token` | OAuth token deletion | 100 per hour | +```{list-table} +:header-rows: 1 + +* - Endpoint name + - Description + - Default rate (per user) +* - `authenticated-reports` + - Authenticated report submissions + - 100 per day +* - `anonymous-reports` + - Anonymous report submissions + - 10 per day +* - `authenticated-oauth-app` + - Authenticated OAuth app creation + - 10 per hour +* - `anonymous-oauth-app` + - Anonymous OAuth app creation + - 10 per day +* - `oauth-authorize` + - OAuth app authorization + - 100 per hour +* - `oauth-token` + - OAuth token creation + - 100 per hour +* - `oauth-revoke-token` + - OAuth token deletion + - 100 per hour + +``` diff --git a/docs/administrator_documentation/troubleshooting/frontend.md b/docs/administrator_documentation/troubleshooting/frontend.md index 95da98024..a969e08a8 100644 --- a/docs/administrator_documentation/troubleshooting/frontend.md +++ b/docs/administrator_documentation/troubleshooting/frontend.md @@ -6,14 +6,25 @@ The Funkwhale frontend is a {abbr}`SPA (Single Page Application)` written in [Vu The most useful tools for troubleshooting issues with the Funkwhale frontend are your web browser's developer tools. The `Console` and `Network` tabs are particularly useful for tracking down issues in the Javascript code and API responses respectively. Use the following shortcut to open the developer tools for your browser: -| Browser | Shortcut | -| -------- | --------- | -| Google Chrome/Chromium | {kbd}`F12` | -| Microsoft Edge | {kbd}`F12` | -| Opera | {kbd}`F12` | -| Vivaldi | {kbd}`F12` | -| Firefox | {kbd}`F12` | -| Safari | {kbd}`Command+Option+U` | +```{list-table} +:header-rows: 1 + +* - Browser + - Shortcut +* - Google Chrome/Chromium + - {kbd}`F12` +* - Microsoft Edge + - {kbd}`F12` +* - Opera + - {kbd}`F12` +* - Vivaldi + - {kbd}`F12` +* - Firefox + - {kbd}`F12` +* - Safari + - {kbd}`Command+Option+U` + +``` ## Troubleshoot the issue diff --git a/docs/developers/authentication.rst b/docs/developers/authentication.rst index 409e25124..6c8f7d6de 100644 --- a/docs/developers/authentication.rst +++ b/docs/developers/authentication.rst @@ -64,34 +64,32 @@ Having the generic ``read`` or ``write`` scope give you the corresponding access This is the list of OAuth scopes that third-party applications can request: +.. list-table:: Oauth scopes + :header-rows: 1 -+-------------------------------------------+------------------------------------------------------------+ -| Scope | Description | -+===========================================+============================================================+ -| ``read`` | Read-only access to all data | -| | (equivalent to all ``read:*`` scopes) | -+-------------------------------------------+------------------------------------------------------------+ -| ``write`` | Write-only access to all data | -| | (equivalent to all ``write:*`` scopes) | -+-------------------------------------------+------------------------------------------------------------+ -| ``:profile`` | Access to profile data (e-mail address, username, etc.) | -+-------------------------------------------+------------------------------------------------------------+ -| ``:libraries`` | Access to library data (uploads, libraries | -| | tracks, albums, artists...) | -+-------------------------------------------+------------------------------------------------------------+ -| ``:favorites`` | Access to favorites | -+-------------------------------------------+------------------------------------------------------------+ -| ``:listenings`` | Access to history | -+-------------------------------------------+------------------------------------------------------------+ -| ``:follows`` | Access to followers | -+-------------------------------------------+------------------------------------------------------------+ -| ``:playlists`` | Access to playlists | -+-------------------------------------------+------------------------------------------------------------+ -| ``:radios`` | Access to radios | -+-------------------------------------------+------------------------------------------------------------+ -| ``:filters`` | Access to content filters | -+-------------------------------------------+------------------------------------------------------------+ -| ``:notifications`` | Access to notifications | -+-------------------------------------------+------------------------------------------------------------+ -| ``:edits`` | Access to metadata edits | -+-------------------------------------------+------------------------------------------------------------+ + * - Scope + - Description + * - ``read`` + - Read-only access to all data (equivalent to all ``read:*`` scopes). + * - ``write`` + - Read-only access to all data (equivalent to all ``write:*`` scopes). + * - ``:profile`` + - Access to profile data (e-mail address, username, etc.) + * - ``:libraries`` + - Access to library data (uploads, libraries, tracks, albums, artists…) + * - ``:favorites`` + - Access to favorites + * - ``:listenings`` + - Access to history + * - ``:follows`` + - Access to followers + * - ``:playlists`` + - Access to playlists + * - ``:radios`` + - Access to radios + * - ``:filters`` + - Access to content filters + * - ``:notifications`` + - Access to notifications + * - ``:edits`` + - Access to metadata edits diff --git a/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/env_file.po b/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/env_file.po index 64bd9c000..a30f47f09 100644 --- a/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/env_file.po +++ b/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/env_file.po @@ -11,9 +11,9 @@ msgstr "" "PO-Revision-Date: 2022-07-02 21:07+0000\n" "Last-Translator: Ciarán Ainsworth \n" "Language: en_GB\n" -"Language-Team: English (United Kingdom) \n" +"Language-Team: English (United Kingdom) " +"\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" @@ -27,18 +27,20 @@ msgstr "Customise your environment file" #: ../../administrator_documentation/configuration_docs/env_file.md:3 msgid "" "Your `.env` (environment) file contains variables you can change to " -"customize your pod. You can change these variables at any time to alter how " -"your pod runs." +"customize your pod. You can change these variables at any time to alter " +"how your pod runs." msgstr "" "Your `.env` (environment) file contains variables you can change to " -"customise your pod. You can change these variables at any time to alter how " -"your pod runs." +"customise your pod. You can change these variables at any time to alter " +"how your pod runs." #: ../../administrator_documentation/configuration_docs/env_file.md:5 msgid "" -"You need to restart your Funkwhale services after changing your `.env` file." +"You need to restart your Funkwhale services after changing your `.env` " +"file." msgstr "" -"You need to restart your Funkwhale services after changing your `.env` file." +"You need to restart your Funkwhale services after changing your `.env` " +"file." #: ../../administrator_documentation/configuration_docs/env_file.md msgid "Debian" @@ -54,19 +56,21 @@ msgstr "Variables" #: ../../administrator_documentation/configuration_docs/env_file.md:27 msgid "" -"Some environment variables accept a URL as a value. To encode URLs and avoid " -"problems with special characters, use `urllib.parse` on your URL value." +"Some environment variables accept a URL as a value. To encode URLs and " +"avoid problems with special characters, use `urllib.parse` on your URL " +"value." msgstr "" -"Some environment variables accept a URL as a value. To encode URLs and avoid " -"problems with special characters, use `urllib.parse` on your URL value." +"Some environment variables accept a URL as a value. To encode URLs and " +"avoid problems with special characters, use `urllib.parse` on your URL " +"value." #: ../../administrator_documentation/configuration_docs/env_file.md:34 msgid "" -"The [django-environ documentation](https://github.com/joke2k/django-environ/" -"blob/main/docs/tips.rst#using-unsafe-characters-in-urls)." +"The [django-environ documentation](https://github.com/joke2k/django-" +"environ/blob/main/docs/tips.rst#using-unsafe-characters-in-urls)." msgstr "" -"The [django-environ documentation](https://github.com/joke2k/django-environ/" -"blob/main/docs/tips.rst#using-unsafe-characters-in-urls)." +"The [django-environ documentation](https://github.com/joke2k/django-" +"environ/blob/main/docs/tips.rst#using-unsafe-characters-in-urls)." #: ../../administrator_documentation/configuration_docs/env_file.md:39 msgid "Pod configuration" @@ -78,9 +82,11 @@ msgstr "Hostname of your Funkwhale pod, e.g. ``mypod.audio``." #: ../../docstring config.settings.common.FUNKWHALE_PROTOCOL:1 of msgid "" -"Protocol end users will use to access your pod, either ``http`` or ``https``." +"Protocol end users will use to access your pod, either ``http`` or " +"``https``." msgstr "" -"Protocol end users will use to access your pod, either ``http`` or ``https``." +"Protocol end users will use to access your pod, either ``http`` or " +"``https``." #: ../../administrator_documentation/configuration_docs/env_file.md:48 msgid "Database and redis configuration" @@ -125,29 +131,29 @@ msgstr "``redis://:password@localhost:6379/0``" #: ../../docstring config.settings.common.CACHE_URL:7 of msgid "" -"If you're using password auth (the extra slash is important) - ``redis:///" -"run/redis/redis.sock?db=0`` over unix sockets" +"If you're using password auth (the extra slash is important) - " +"``redis:///run/redis/redis.sock?db=0`` over unix sockets" msgstr "" -"If you're using password auth (the extra slash is important) - ``redis:///" -"run/redis/redis.sock?db=0`` over unix sockets" +"If you're using password auth (the extra slash is important) - " +"``redis:///run/redis/redis.sock?db=0`` over unix sockets" #: ../../docstring config.settings.common.CACHE_URL:12 of msgid "" -"If you want to use Redis over unix sockets, you also need to update :attr:" -"`CELERY_BROKER_URL`" +"If you want to use Redis over unix sockets, you also need to update " +":attr:`CELERY_BROKER_URL`" msgstr "" -"If you want to use Redis over unix sockets, you also need to update :attr:" -"`CELERY_BROKER_URL`" +"If you want to use Redis over unix sockets, you also need to update " +":attr:`CELERY_BROKER_URL`" #: ../../docstring config.settings.common.CELERY_BROKER_URL:1 of msgid "" -"The celery task broker URL. Defaults to :attr:`CACHE_URL`. You don't need to " -"tweak this unless you want to use a different server or use Redis sockets to " -"connect." +"The celery task broker URL. Defaults to :attr:`CACHE_URL`. You don't need" +" to tweak this unless you want to use a different server or use Redis " +"sockets to connect." msgstr "" -"The celery task broker URL. Defaults to :attr:`CACHE_URL`. You don't need to " -"tweak this unless you want to use a different server or use Redis sockets to " -"connect." +"The celery task broker URL. Defaults to :attr:`CACHE_URL`. You don't need" +" to tweak this unless you want to use a different server or use Redis " +"sockets to connect." #: ../../docstring config.settings.common.AWS_S3_REGION_NAME:4 #: config.settings.common.CELERY_BROKER_URL:5 @@ -166,24 +172,24 @@ msgstr "Accounts and registration" #: ../../docstring config.settings.common.ACCOUNT_EMAIL_VERIFICATION_ENFORCE:1 #: of msgid "" -"Set whether users need to verify their email address before using your pod. " -"Enabling this setting is useful for reducing spam and bot accounts. To use " -"this setting you need to configure a mail server to send verification " -"emails. See :attr:`EMAIL_CONFIG`." +"Set whether users need to verify their email address before using your " +"pod. Enabling this setting is useful for reducing spam and bot accounts. " +"To use this setting you need to configure a mail server to send " +"verification emails. See :attr:`EMAIL_CONFIG`." msgstr "" -"Set whether users need to verify their email address before using your pod. " -"Enabling this setting is useful for reducing spam and bot accounts. To use " -"this setting you need to configure a mail server to send verification " -"emails. See :attr:`EMAIL_CONFIG`." +"Set whether users need to verify their email address before using your " +"pod. Enabling this setting is useful for reducing spam and bot accounts. " +"To use this setting you need to configure a mail server to send " +"verification emails. See :attr:`EMAIL_CONFIG`." #: ../../docstring config.settings.common.ACCOUNT_EMAIL_VERIFICATION_ENFORCE:6 #: of msgid "" -"Superusers created through the command line never need to verify their email " -"address." +"Superusers created through the command line never need to verify their " +"email address." msgstr "" -"Superusers created through the command line never need to verify their email " -"address." +"Superusers created through the command line never need to verify their " +"email address." #: ../../docstring config.settings.common.USERS_INVITATION_EXPIRATION_DAYS:1 of msgid "The number of days before a user invite expires." @@ -191,19 +197,21 @@ msgstr "The number of days before a user invite expires." #: ../../docstring config.settings.common.DISABLE_PASSWORD_VALIDATORS:1 of msgid "" -"Whether to disable password validation rules during registration. Validators " -"include password length, common words, similarity with username." +"Whether to disable password validation rules during registration. " +"Validators include password length, common words, similarity with " +"username." msgstr "" -"Whether to disable password validation rules during registration. Validators " -"include password length, common words, similarity with username." +"Whether to disable password validation rules during registration. " +"Validators include password length, common words, similarity with " +"username." #: ../../docstring config.settings.common.ACCOUNT_USERNAME_BLACKLIST:1 of msgid "" -"List of usernames that can't be used for registration. Given as a list of " -"strings." +"List of usernames that can't be used for registration. Given as a list of" +" strings." msgstr "" -"List of usernames that can't be used for registration. Given as a list of " -"strings." +"List of usernames that can't be used for registration. Given as a list of" +" strings." #: ../../administrator_documentation/configuration_docs/env_file.md:80 msgid "Whether to enable LDAP authentication." @@ -224,43 +232,43 @@ msgstr "Media storage and serving configuration" #: ../../docstring config.settings.common.MEDIA_URL:1 of msgid "" "The URL from which your pod serves media files. Change this if you're " -"hosting media files on a separate domain, or if you host Funkwhale on a non-" -"standard port." +"hosting media files on a separate domain, or if you host Funkwhale on a " +"non-standard port." msgstr "" "The URL from which your pod serves media files. Change this if you're " -"hosting media files on a separate domain, or if you host Funkwhale on a non-" -"standard port." +"hosting media files on a separate domain, or if you host Funkwhale on a " +"non-standard port." #: ../../docstring config.settings.common.MEDIA_ROOT:1 of msgid "" -"The path where you store media files (such as album covers or audio tracks) " -"on your system. Make sure this directory actually exists." +"The path where you store media files (such as album covers or audio " +"tracks) on your system. Make sure this directory actually exists." msgstr "" -"The path where you store media files (such as album covers or audio tracks) " -"on your system. Make sure this directory actually exists." +"The path where you store media files (such as album covers or audio " +"tracks) on your system. Make sure this directory actually exists." #: ../../docstring config.settings.common.PROXY_MEDIA:1 of msgid "" -"Whether to proxy audio files through your reverse proxy. We recommend you " -"leave this enabled to enforce access control." +"Whether to proxy audio files through your reverse proxy. We recommend you" +" leave this enabled to enforce access control." msgstr "" -"Whether to proxy audio files through your reverse proxy. We recommend you " -"leave this enabled to enforce access control." +"Whether to proxy audio files through your reverse proxy. We recommend you" +" leave this enabled to enforce access control." #: ../../docstring config.settings.common.PROXY_MEDIA:4 of msgid "" -"If you're using S3 storage with :attr:`AWS_QUERYSTRING_AUTH` enabled, it's " -"safe to disable this setting." +"If you're using S3 storage with :attr:`AWS_QUERYSTRING_AUTH` enabled, " +"it's safe to disable this setting." msgstr "" -"If you're using S3 storage with :attr:`AWS_QUERYSTRING_AUTH` enabled, it's " -"safe to disable this setting." +"If you're using S3 storage with :attr:`AWS_QUERYSTRING_AUTH` enabled, " +"it's safe to disable this setting." #: ../../docstring config.settings.common.EXTERNAL_MEDIA_PROXY_ENABLED:1 of msgid "" "Whether to proxy attachment files hosted on third party pods and and " -"servers. We recommend you leave this set to ``true``. This reduces the risk " -"of leaking user browsing information and reduces the bandwidth used on " -"remote pods." +"servers. We recommend you leave this set to ``true``. This reduces the " +"risk of leaking user browsing information and reduces the bandwidth used " +"on remote pods." msgstr "" #: ../../docstring config.settings.common.ATTACHMENTS_UNATTACHED_PRUNE_DELAY:1 @@ -274,11 +282,11 @@ msgstr "" #: ../../docstring config.settings.common.REVERSE_PROXY_TYPE:1 of msgid "" -"Set your reverse proxy type. This changes the headers the API uses to serve " -"audio files. Allowed values:" +"Set your reverse proxy type. This changes the headers the API uses to " +"serve audio files. Allowed values:" msgstr "" -"Set your reverse proxy type. This changes the headers the API uses to serve " -"audio files. Allowed values:" +"Set your reverse proxy type. This changes the headers the API uses to " +"serve audio files. Allowed values:" #: ../../docstring config.settings.common.REVERSE_PROXY_TYPE:4 of msgid "``nginx``" @@ -338,11 +346,11 @@ msgstr "Custom domain to use for your S3 storage." #: ../../docstring config.settings.common.AWS_S3_ENDPOINT_URL:1 of msgid "" -"If you use a S3-compatible storage such as minio, set the following variable " -"to the full URL to the storage server." +"If you use a S3-compatible storage such as minio, set the following " +"variable to the full URL to the storage server." msgstr "" -"If you use a S3-compatible storage such as minio, set the following variable " -"to the full URL to the storage server." +"If you use a S3-compatible storage such as minio, set the following " +"variable to the full URL to the storage server." #: ../../docstring config.settings.common.ADMIN_URL:3 #: config.settings.common.AWS_S3_ENDPOINT_URL:4 @@ -372,11 +380,11 @@ msgstr "``eu-west-2``" #: ../../docstring config.settings.common.AWS_LOCATION:1 of msgid "" -"A directory in your S3 bucket where you store files. Use this if you plan to " -"share the bucket between services." +"A directory in your S3 bucket where you store files. Use this if you plan" +" to share the bucket between services." msgstr "" -"A directory in your S3 bucket where you store files. Use this if you plan to " -"share the bucket between services." +"A directory in your S3 bucket where you store files. Use this if you plan" +" to share the bucket between services." #: ../../administrator_documentation/configuration_docs/env_file.md:125 msgid "In-place import configuration" @@ -384,13 +392,13 @@ msgstr "In-place import configuration" #: ../../docstring config.settings.common.MUSIC_DIRECTORY_PATH:1 of msgid "" -"The path on your server where Funkwhale places files from in-place imports. " -"This path needs to be readable by the webserver and ``api`` and ``worker`` " -"processes." +"The path on your server where Funkwhale places files from in-place " +"imports. This path needs to be readable by the webserver and ``api`` and " +"``worker`` processes." msgstr "" -"The path on your server where Funkwhale places files from in-place imports. " -"This path needs to be readable by the webserver and ``api`` and ``worker`` " -"processes." +"The path on your server where Funkwhale places files from in-place " +"imports. This path needs to be readable by the webserver and ``api`` and " +"``worker`` processes." #: ../../docstring config.settings.common.MUSIC_DIRECTORY_PATH:8 #: config.settings.common.MUSIC_DIRECTORY_SERVE_PATH:14 of @@ -399,13 +407,13 @@ msgstr "Don’t insert a slash at the end of this path." #: ../../docstring config.settings.common.MUSIC_DIRECTORY_PATH:10 of msgid "" -"On Docker installations, we recommend you use the default ``/music`` path. " -"On Debian installations you can use any absolute path. Defaults to ``/srv/" -"funkwhale/data/music``." +"On Docker installations, we recommend you use the default ``/music`` " +"path. On Debian installations you can use any absolute path. Defaults to " +"``/srv/funkwhale/data/music``." msgstr "" -"On Docker installations, we recommend you use the default ``/music`` path. " -"On Debian installations you can use any absolute path. Defaults to ``/srv/" -"funkwhale/data/music``." +"On Docker installations, we recommend you use the default ``/music`` " +"path. On Debian installations you can use any absolute path. Defaults to " +"``/srv/funkwhale/data/music``." #: ../../docstring config.settings.common.MUSIC_DIRECTORY_PATH:16 of msgid "" @@ -417,23 +425,23 @@ msgstr "" #: ../../docstring config.settings.common.MUSIC_DIRECTORY_SERVE_PATH:1 of msgid "" -"On Docker setups the value of :attr:`MUSIC_DIRECTORY_PATH` may be different " -"from the actual path on your server. You can specify this path in your :file:" -"`docker-compose.yml` file::" +"On Docker setups the value of :attr:`MUSIC_DIRECTORY_PATH` may be " +"different from the actual path on your server. You can specify this path " +"in your :file:`docker-compose.yml` file::" msgstr "" -"On Docker setups the value of :attr:`MUSIC_DIRECTORY_PATH` may be different " -"from the actual path on your server. You can specify this path in your :file:" -"`docker-compose.yml` file::" +"On Docker setups the value of :attr:`MUSIC_DIRECTORY_PATH` may be " +"different from the actual path on your server. You can specify this path " +"in your :file:`docker-compose.yml` file::" #: ../../docstring config.settings.common.MUSIC_DIRECTORY_SERVE_PATH:8 of msgid "" -"In this case, you need to set :attr:`MUSIC_DIRECTORY_SERVE_PATH` to ``/srv/" -"funkwhale/data/music``. The webserver needs to be able to read this " -"directory." +"In this case, you need to set :attr:`MUSIC_DIRECTORY_SERVE_PATH` to " +"``/srv/funkwhale/data/music``. The webserver needs to be able to read " +"this directory." msgstr "" -"In this case, you need to set :attr:`MUSIC_DIRECTORY_SERVE_PATH` to ``/srv/" -"funkwhale/data/music``. The webserver needs to be able to read this " -"directory." +"In this case, you need to set :attr:`MUSIC_DIRECTORY_SERVE_PATH` to " +"``/srv/funkwhale/data/music``. The webserver needs to be able to read " +"this directory." #: ../../administrator_documentation/configuration_docs/env_file.md:136 msgid "API configuration" @@ -441,23 +449,25 @@ msgstr "API configuration" #: ../../docstring config.settings.common.THROTTLING_ENABLED:1 of msgid "" -"Whether to enable throttling (also known as rate-limiting). We recommend you " -"leave this enabled to improve the quality of the service, especially on " -"public pods ." +"Whether to enable throttling (also known as rate-limiting). We recommend " +"you leave this enabled to improve the quality of the service, especially " +"on public pods ." msgstr "" -"Whether to enable throttling (also known as rate-limiting). We recommend you " -"leave this enabled to improve the quality of the service, especially on " -"public pods ." +"Whether to enable throttling (also known as rate-limiting). We recommend " +"you leave this enabled to improve the quality of the service, especially " +"on public pods ." #: ../../docstring config.settings.common.THROTTLING_RATES:1 of msgid "" "Throttling rates for specific endpoints and app features. Tweak this if " -"you're hitting rate limit issues or if you want to reduce the consumption of " -"specific endpoints. Takes the format ``=/``." +"you're hitting rate limit issues or if you want to reduce the consumption" +" of specific endpoints. Takes the format ``=/``." msgstr "" "Throttling rates for specific endpoints and app features. Tweak this if " -"you're hitting rate limit issues or if you want to reduce the consumption of " -"specific endpoints. Takes the format ``=/``." +"you're hitting rate limit issues or if you want to reduce the consumption" +" of specific endpoints. Takes the format ``=/``." #: ../../docstring config.settings.common.THROTTLING_RATES:8 of msgid "``signup=5/d,password-reset=2/d,anonymous-reports=5/d``" @@ -497,44 +507,42 @@ msgstr "" msgid "Default timeout for external requests." msgstr "Default timeout for external requests." -#: ../../administrator_documentation/configuration_docs/env_file.md:202 +#: ../../administrator_documentation/configuration_docs/env_file.md:156 msgid "Federation configuration" msgstr "Federation configuration" #: ../../docstring config.settings.common.FEDERATION_OBJECT_FETCH_DELAY:1 of msgid "" -"The delay in minutes before a remote object is automatically refetched when " -"accessed in the UI." +"The delay in minutes before a remote object is automatically refetched " +"when accessed in the UI." msgstr "" -"The delay in minutes before a remote object is automatically refetched when " -"accessed in the UI." +"The delay in minutes before a remote object is automatically refetched " +"when accessed in the UI." #: ../../docstring config.settings.common.FEDERATION_DUPLICATE_FETCH_DELAY:1 of -msgid "" -"The delay in seconds between two manual fetches of the same remote object." -msgstr "" -"The delay in seconds between two manual fetches of the same remote object." +msgid "The delay in seconds between two manual fetches of the same remote object." +msgstr "The delay in seconds between two manual fetches of the same remote object." -#: ../../administrator_documentation/configuration_docs/env_file.md:211 +#: ../../administrator_documentation/configuration_docs/env_file.md:165 msgid "Metadata configuration" msgstr "Metadata configuration" #: ../../docstring config.settings.common.TAGS_MAX_BY_OBJ:1 of msgid "" -"Maximum number of tags that can be associated with an object. Extra tags are " -"ignored." +"Maximum number of tags that can be associated with an object. Extra tags " +"are ignored." msgstr "" -"Maximum number of tags that can be associated with an object. Extra tags are " -"ignored." +"Maximum number of tags that can be associated with an object. Extra tags " +"are ignored." #: ../../docstring config.settings.common.MUSICBRAINZ_HOSTNAME:1 of msgid "" -"The hostname of your MusicBrainz instance. Change this setting if you run " -"your own server or use a mirror. You can include a port number in the " +"The hostname of your MusicBrainz instance. Change this setting if you run" +" your own server or use a mirror. You can include a port number in the " "hostname." msgstr "" -"The hostname of your MusicBrainz instance. Change this setting if you run " -"your own server or use a mirror. You can include a port number in the " +"The hostname of your MusicBrainz instance. Change this setting if you run" +" your own server or use a mirror. You can include a port number in the " "hostname." #: ../../docstring config.settings.common.MUSICBRAINZ_HOSTNAME:7 of @@ -549,7 +557,7 @@ msgstr "``localhost:5000``" msgid "Length of time in seconds to cache MusicBrainz results." msgstr "Length of time in seconds to cache MusicBrainz results." -#: ../../administrator_documentation/configuration_docs/env_file.md:221 +#: ../../administrator_documentation/configuration_docs/env_file.md:175 msgid "Channels and podcast configuration" msgstr "Channels and podcast configuration" @@ -571,8 +579,8 @@ msgstr "Maximum number of RSS items to load in each podcast feed." #: ../../docstring config.settings.common.PODCASTS_THIRD_PARTY_VISIBILITY:1 of msgid "" -"By default, only people who subscribe to a podcast RSS have access to its " -"episodes. Change to ``instance`` or ``everyone`` to change the default " +"By default, only people who subscribe to a podcast RSS have access to its" +" episodes. Change to ``instance`` or ``everyone`` to change the default " "visibility." msgstr "" @@ -580,18 +588,16 @@ msgstr "" msgid "Changing this value only affect new podcasts." msgstr "Changing this value only affect new podcasts." -#: ../../administrator_documentation/configuration_docs/env_file.md:231 +#: ../../administrator_documentation/configuration_docs/env_file.md:185 msgid "Subsonic configuration" msgstr "Subsonic configuration" #: ../../docstring config.settings.common.SUBSONIC_DEFAULT_TRANSCODING_FORMAT:1 #: of -msgid "" -"The default format files are transcoded into when using the Subsonic API." -msgstr "" -"The default format files are transcoded into when using the Subsonic API." +msgid "The default format files are transcoded into when using the Subsonic API." +msgstr "The default format files are transcoded into when using the Subsonic API." -#: ../../administrator_documentation/configuration_docs/env_file.md:239 +#: ../../administrator_documentation/configuration_docs/env_file.md:193 msgid "Email configuration" msgstr "Email configuration" @@ -601,8 +607,7 @@ msgstr "SMTP configuration for sending emails. Possible values:" #: ../../docstring config.settings.common.EMAIL_CONFIG:3 of msgid "``EMAIL_CONFIG=consolemail://``: output emails to console (the default)" -msgstr "" -"``EMAIL_CONFIG=consolemail://``: output emails to console (the default)" +msgstr "``EMAIL_CONFIG=consolemail://``: output emails to console (the default)" #: ../../docstring config.settings.common.EMAIL_CONFIG:4 of msgid "``EMAIL_CONFIG=dummymail://``: disable email sending completely" @@ -610,9 +615,11 @@ msgstr "``EMAIL_CONFIG=dummymail://``: disable email sending completely" #: ../../docstring config.settings.common.EMAIL_CONFIG:6 of msgid "" -"On a production instance, you'll usually want to use an external SMTP server:" +"On a production instance, you'll usually want to use an external SMTP " +"server:" msgstr "" -"On a production instance, you'll usually want to use an external SMTP server:" +"On a production instance, you'll usually want to use an external SMTP " +"server:" #: ../../docstring config.settings.common.EMAIL_CONFIG:8 of msgid "``EMAIL_CONFIG=smtp://user:password@youremail.host:25``" @@ -648,7 +655,7 @@ msgstr "" msgid "Subject prefix for system emails." msgstr "Subject prefix for system emails." -#: ../../administrator_documentation/configuration_docs/env_file.md:251 +#: ../../administrator_documentation/configuration_docs/env_file.md:205 msgid "Plugin configuration" msgstr "Plugin configuration" @@ -658,34 +665,34 @@ msgid "" "runtime." msgstr "" -#: ../../administrator_documentation/configuration_docs/env_file.md:264 +#: ../../administrator_documentation/configuration_docs/env_file.md:218 msgid "List of Funkwhale plugins to load." msgstr "List of Funkwhale plugins to load." -#: ../../administrator_documentation/configuration_docs/env_file.md:267 +#: ../../administrator_documentation/configuration_docs/env_file.md:221 msgid "Other settings" msgstr "Other settings" #: ../../docstring config.settings.common.INSTANCE_SUPPORT_MESSAGE_DELAY:1 of msgid "" -"The number of days before your pod shows the \"support your pod\" message. " -"The timer starts after the user signs up." +"The number of days before your pod shows the \"support your pod\" " +"message. The timer starts after the user signs up." msgstr "" #: ../../docstring config.settings.common.FUNKWHALE_SUPPORT_MESSAGE_DELAY:1 of msgid "" -"The number of days before your pod shows the \"support Funkwhale\" message. " -"The timer starts after the user signs up." +"The number of days before your pod shows the \"support Funkwhale\" " +"message. The timer starts after the user signs up." msgstr "" #: ../../docstring config.settings.common.MIN_DELAY_BETWEEN_DOWNLOADS_COUNT:1 #: of msgid "" -"The required number of seconds between downloads of a track by the same IP " -"or user to be counted separately in listen statistics." +"The required number of seconds between downloads of a track by the same " +"IP or user to be counted separately in listen statistics." msgstr "" -"The required number of seconds between downloads of a track by the same IP " -"or user to be counted separately in listen statistics." +"The required number of seconds between downloads of a track by the same " +"IP or user to be counted separately in listen statistics." #: ../../docstring config.settings.common.MARKDOWN_EXTENSIONS:1 of msgid "A list of markdown extensions to enable." @@ -699,68 +706,78 @@ msgstr "See ``_." msgid "Additional TLDs to support with our markdown linkifier." msgstr "Additional TLDs to support with our markdown linkifier." -#: ../../docstring config.settings.common.EXTERNAL_MEDIA_PROXY_ENABLED:1 of -msgid "" -"Whether to proxy attachment files hosted on third party pods and and " -"servers. Leaving this set to ``true`` is recommended. This reduces the risk " -"of leaking user browsing information and reduces the bandwidth used on " -"remote pods." -msgstr "" -"Whether to proxy attachment files hosted on third party pods and and " -"servers. Leaving this set to ``true`` is recommended. This reduces the risk " -"of leaking user browsing information and reduces the bandwidth used on " -"remote pods." +#~ msgid "" +#~ "Whether to proxy attachment files hosted" +#~ " on third party pods and and " +#~ "servers. Leaving this set to ``true``" +#~ " is recommended. This reduces the " +#~ "risk of leaking user browsing " +#~ "information and reduces the bandwidth " +#~ "used on remote pods." +#~ msgstr "" +#~ "Whether to proxy attachment files hosted" +#~ " on third party pods and and " +#~ "servers. Leaving this set to ``true``" +#~ " is recommended. This reduces the " +#~ "risk of leaking user browsing " +#~ "information and reduces the bandwidth " +#~ "used on remote pods." -#: ../../docstring config.settings.common.EXTERNAL_REQUESTS_VERIFY_SSL:4 of -msgid "Disabling this feature is not recommended." -msgstr "Disabling this feature is not recommended." +#~ msgid "Disabling this feature is not recommended." +#~ msgstr "Disabling this feature is not recommended." -#: ../../docstring config.settings.common.PODCASTS_THIRD_PARTY_VISIBILITY:1 of -msgid "" -"By default, only people who subscribe to a podcast RSS have access to its " -"episodes. Switch to \"instance\" or \"everyone\" to change the default " -"visibility." -msgstr "" -"By default, only people who subscribe to a podcast RSS have access to its " -"episodes. Switch to \"instance\" or \"everyone\" to change the default " -"visibility." +#~ msgid "" +#~ "By default, only people who subscribe" +#~ " to a podcast RSS have access " +#~ "to its episodes. Switch to \"instance\"" +#~ " or \"everyone\" to change the " +#~ "default visibility." +#~ msgstr "" +#~ "By default, only people who subscribe" +#~ " to a podcast RSS have access " +#~ "to its episodes. Switch to \"instance\"" +#~ " or \"everyone\" to change the " +#~ "default visibility." -#: ../../docstring config.settings.common.DEFAULT_FROM_EMAIL:1 of -msgid "Name and email address used to send system emails." -msgstr "Name and email address used to send system emails." +#~ msgid "Name and email address used to send system emails." +#~ msgstr "Name and email address used to send system emails." -#: ../../docstring config.settings.common.DEFAULT_FROM_EMAIL:3 of -msgid "Default: ``Funkwhale ``" -msgstr "Default: ``Funkwhale ``" +#~ msgid "Default: ``Funkwhale ``" +#~ msgstr "Default: ``Funkwhale ``" -#: ../../docstring config.settings.common.DEFAULT_FROM_EMAIL:7 of -msgid "" -"Both the forms ``Funkwhale `` and ``noreply@yourdomain`` " -"work." -msgstr "" -"Both the forms ``Funkwhale `` and ``noreply@yourdomain`` " -"work." +#~ msgid "" +#~ "Both the forms ``Funkwhale " +#~ "`` and ``noreply@yourdomain`` " +#~ "work." +#~ msgstr "" +#~ "Both the forms ``Funkwhale " +#~ "`` and ``noreply@yourdomain`` " +#~ "work." -#: ../../docstring config.settings.common.FUNKWHALE_PLUGINS_PATH:1 of -msgid "" -"Path to a directory containing Funkwhale plugins. These will be imported at " -"runtime." -msgstr "" -"Path to a directory containing Funkwhale plugins. These will be imported at " -"runtime." +#~ msgid "" +#~ "Path to a directory containing Funkwhale" +#~ " plugins. These will be imported at" +#~ " runtime." +#~ msgstr "" +#~ "Path to a directory containing Funkwhale" +#~ " plugins. These will be imported at" +#~ " runtime." -#: ../../docstring config.settings.common.INSTANCE_SUPPORT_MESSAGE_DELAY:1 of -msgid "" -"The number of days after signup before the \"support your pod\" message is " -"shown." -msgstr "" -"The number of days after signup before the \"support your pod\" message is " -"shown." +#~ msgid "" +#~ "The number of days after signup " +#~ "before the \"support your pod\" message" +#~ " is shown." +#~ msgstr "" +#~ "The number of days after signup " +#~ "before the \"support your pod\" message" +#~ " is shown." + +#~ msgid "" +#~ "The number of days after signup " +#~ "before the \"support Funkwhale\" message " +#~ "is shown." +#~ msgstr "" +#~ "The number of days after signup " +#~ "before the \"support Funkwhale\" message " +#~ "is shown." -#: ../../docstring config.settings.common.FUNKWHALE_SUPPORT_MESSAGE_DELAY:1 of -msgid "" -"The number of days after signup before the \"support Funkwhale\" message is " -"shown." -msgstr "" -"The number of days after signup before the \"support Funkwhale\" message is " -"shown." diff --git a/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po b/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po index 87ed6b382..f3f2d9594 100644 --- a/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po +++ b/docs/locales/en_GB/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-03 01:32+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: 2022-07-02 21:07+0000\n" "Last-Translator: Ciarán Ainsworth \n" "Language: en_GB\n" @@ -62,11 +62,61 @@ msgstr "" msgid "Create a new config file and populate it with placeholder settings." msgstr "" +#: ../../administrator_documentation/configuration_docs/frontend.md:41 +msgid "Parameter" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:42 +msgid "Data type" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:43 +msgid "Description" +msgstr "" + #: ../../administrator_documentation/configuration_docs/frontend.md:44 -msgid "Configure your reverse proxy" +msgid "Example" msgstr "" #: ../../administrator_documentation/configuration_docs/frontend.md:46 +msgid "`additionalStylesheets`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:47 +msgid "Array" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:48 +msgid "A list of URLs (relative or absolute) pointing to stylesheets." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:49 +msgid "`[\"https://test/theme.css\"]`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:51 +msgid "`defaultServerUrl`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:52 +msgid "URL" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:53 +msgid "" +"The URL of the API server you want to connect the frontend to. Defaults " +"to the current domain." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:54 +msgid "`\"https://api.yourdomain.com\"`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:59 +msgid "Configure your reverse proxy" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:61 msgid "" "Once you've created your {file}`settings.json` file you need to configure" " your reverse proxy to serve it." @@ -76,7 +126,7 @@ msgstr "" msgid "Nginx" msgstr "Nginx" -#: ../../administrator_documentation/configuration_docs/frontend.md:50 +#: ../../administrator_documentation/configuration_docs/frontend.md:65 msgid "" "Add the following snippet to your {file}`/etc/nginx/sites-" "available/funkwhale.conf` config file:" @@ -86,57 +136,57 @@ msgstr "" msgid "Apache" msgstr "Apache" -#: ../../administrator_documentation/configuration_docs/frontend.md:62 +#: ../../administrator_documentation/configuration_docs/frontend.md:77 msgid "Add the following snippet to your webserver configuration:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:70 +#: ../../administrator_documentation/configuration_docs/frontend.md:85 msgid "" "Reload your webserver. You should be able to see the contents of your " "configuration file at `https://yourinstanceurl/settings.json`." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:72 +#: ../../administrator_documentation/configuration_docs/frontend.md:87 msgid "Add a custom theme" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:74 +#: ../../administrator_documentation/configuration_docs/frontend.md:89 msgid "You can use a custom stylesheet to theme your Funkwhale pod. To do this:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:76 +#: ../../administrator_documentation/configuration_docs/frontend.md:91 msgid "Navigate to your {file}`/srv/funkwhale/custom` directory." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:82 +#: ../../administrator_documentation/configuration_docs/frontend.md:97 msgid "Copy your CSS file to this directory, or create a new one." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:94 +#: ../../administrator_documentation/configuration_docs/frontend.md:109 msgid "" "Add the location of your CSS file to the `additionalStylesheets` " "parameter in your {file}`settings.json` file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:107 +#: ../../administrator_documentation/configuration_docs/frontend.md:122 msgid "Add the whole {file}`custom` dir to your webserver configuration." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:111 +#: ../../administrator_documentation/configuration_docs/frontend.md:126 msgid "" "Add the following to your {file}`/etc/nginx/sites-" "available/funkwhale.conf` file:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:122 +#: ../../administrator_documentation/configuration_docs/frontend.md:137 msgid "Add the following to your webserver configuration file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:135 +#: ../../administrator_documentation/configuration_docs/frontend.md:150 msgid "Restart your webserver." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:137 +#: ../../administrator_documentation/configuration_docs/frontend.md:152 msgid "Refresh your Funkwhale app. The background should now be red." msgstr "" diff --git a/docs/locales/en_GB/LC_MESSAGES/contributing.po b/docs/locales/en_GB/LC_MESSAGES/contributing.po index 2b994cb55..152abd50e 100644 --- a/docs/locales/en_GB/LC_MESSAGES/contributing.po +++ b/docs/locales/en_GB/LC_MESSAGES/contributing.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -32,7 +32,7 @@ msgstr "" msgid "This document will guide you through common operations such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:10 ../../../CONTRIBUTING.rst:117 +#: ../../../CONTRIBUTING.rst:10 ../../../CONTRIBUTING.rst:141 msgid "Setup your development environment" msgstr "" @@ -132,49 +132,88 @@ msgid "" "signed in to the extension automatically in old and new workspaces." msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:62 +msgid "Environment variables" +msgstr "" + +#: ../../../CONTRIBUTING.rst:65 ../../../CONTRIBUTING.rst:88 msgid "Name" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:66 ../../../CONTRIBUTING.rst:89 msgid "Value" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:67 ../../../CONTRIBUTING.rst:90 msgid "Scope" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:68 msgid "``GITLAB_WORKFLOW_INSTANCE_URL``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:69 msgid "``https://dev.funkwhale.audio``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:70 ../../../CONTRIBUTING.rst:73 msgid "``funkwhale/*``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:71 msgid "``GITLAB_WORKFLOW_TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:72 msgid "``TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:70 +#: ../../../CONTRIBUTING.rst:75 msgid "" "The scope ``funkwhale/*`` will ensure that you will be signed into our " "instance on every project that we're hosting, not only Funkwhale itself." msgstr "" -#: ../../../CONTRIBUTING.rst:74 +#: ../../../CONTRIBUTING.rst:79 +msgid "Custom instance url" +msgstr "" + +#: ../../../CONTRIBUTING.rst:81 +msgid "" +"If you want to preview changes on your own Funkwhale server, you can add " +"your domain as an environment variable. This allows you to test your " +"frontend changes against your domain without setting this value each " +"time. To add your domain, set a user environment variable in `your Gitpod" +" settings `_." +msgstr "" + +#: ../../../CONTRIBUTING.rst:85 +msgid "Environment variable" +msgstr "" + +#: ../../../CONTRIBUTING.rst:91 +msgid "``VUE_APP_INSTANCE_URL``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:92 +msgid "``https://funkwhale.example.com``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:93 +msgid "``funkwhale/funkwhale``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:95 +msgid "" +"The scope ``funkwhale/funkwhale`` ensures that this variable only works " +"on Funkwhale." +msgstr "" + +#: ../../../CONTRIBUTING.rst:98 msgid "A quick path to contribute on the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:76 +#: ../../../CONTRIBUTING.rst:100 msgid "" "The next sections of this document include a full installation guide to " "help you setup a local, development version of Funkwhale. If you only " @@ -182,14 +221,14 @@ msgid "" "full development environment, there is another way." msgstr "" -#: ../../../CONTRIBUTING.rst:80 +#: ../../../CONTRIBUTING.rst:104 msgid "" "As the front-end can work with any Funkwhale server, you can work with " "the front-end only, and make it talk with an existing instance (like the " "demo one, or you own instance, if you have one)." msgstr "" -#: ../../../CONTRIBUTING.rst:83 +#: ../../../CONTRIBUTING.rst:107 msgid "" "If even that is too much for you, you can also make your changes without " "any development environment, and open a merge request. We will be able to" @@ -197,133 +236,133 @@ msgid "" " changes, thanks to Gitlab Review apps." msgstr "" -#: ../../../CONTRIBUTING.rst:88 +#: ../../../CONTRIBUTING.rst:112 msgid "Setup front-end only development environment" msgstr "" -#: ../../../CONTRIBUTING.rst:90 +#: ../../../CONTRIBUTING.rst:114 msgid "Clone the repository::" msgstr "" -#: ../../../CONTRIBUTING.rst:96 +#: ../../../CONTRIBUTING.rst:120 msgid "" "Install `nodejs `_ and " "`yarn `_" msgstr "" -#: ../../../CONTRIBUTING.rst:98 +#: ../../../CONTRIBUTING.rst:122 msgid "Install the dependencies::" msgstr "" -#: ../../../CONTRIBUTING.rst:102 +#: ../../../CONTRIBUTING.rst:126 msgid "Compile the translations::" msgstr "" -#: ../../../CONTRIBUTING.rst:106 +#: ../../../CONTRIBUTING.rst:130 msgid "Launch the development server::" msgstr "" -#: ../../../CONTRIBUTING.rst:111 +#: ../../../CONTRIBUTING.rst:135 msgid "" "Make the front-end talk with an existing server (like " "https://demo.funkwhale.audio or https://open.audio), by clicking on the " "corresponding link in the footer" msgstr "" -#: ../../../CONTRIBUTING.rst:114 +#: ../../../CONTRIBUTING.rst:138 msgid "Start hacking!" msgstr "" -#: ../../../CONTRIBUTING.rst:119 +#: ../../../CONTRIBUTING.rst:143 msgid "" "If you want to fix a bug or implement a feature, you'll need to run a " "local, development copy of funkwhale." msgstr "" -#: ../../../CONTRIBUTING.rst:122 +#: ../../../CONTRIBUTING.rst:146 msgid "" "We provide a docker based development environment, which should be both " "easy to setup and work similarly regardless of your development machine " "setup." msgstr "" -#: ../../../CONTRIBUTING.rst:126 +#: ../../../CONTRIBUTING.rst:150 msgid "" "Instructions for bare-metal setup will come in the future (Merge requests" " are welcome)." msgstr "" -#: ../../../CONTRIBUTING.rst:130 +#: ../../../CONTRIBUTING.rst:154 msgid "Installing docker and docker-compose" msgstr "" -#: ../../../CONTRIBUTING.rst:132 +#: ../../../CONTRIBUTING.rst:156 msgid "This is already cover in the relevant documentations:" msgstr "" -#: ../../../CONTRIBUTING.rst:134 +#: ../../../CONTRIBUTING.rst:158 msgid "https://docs.docker.com/install/" msgstr "" -#: ../../../CONTRIBUTING.rst:135 +#: ../../../CONTRIBUTING.rst:159 msgid "https://docs.docker.com/compose/install/" msgstr "" -#: ../../../CONTRIBUTING.rst:139 +#: ../../../CONTRIBUTING.rst:163 msgid "" "If you are on Fedora, know that you can't use `podman` or `moby-engine` " "to set up the development environment. Stick to `docker-ce` and you'll be" " fine." msgstr "" -#: ../../../CONTRIBUTING.rst:143 +#: ../../../CONTRIBUTING.rst:167 msgid "Cloning the project" msgstr "" -#: ../../../CONTRIBUTING.rst:145 +#: ../../../CONTRIBUTING.rst:169 msgid "" "Visit https://dev.funkwhale.audio/funkwhale/funkwhale and clone the " "repository using SSH or HTTPS. Example using SSH::" msgstr "" -#: ../../../CONTRIBUTING.rst:152 +#: ../../../CONTRIBUTING.rst:176 msgid "" "As of January 2020, the SSH fingerprints of our Gitlab server are the " "following::" msgstr "" -#: ../../../CONTRIBUTING.rst:164 +#: ../../../CONTRIBUTING.rst:188 msgid "A note about branches" msgstr "" -#: ../../../CONTRIBUTING.rst:166 +#: ../../../CONTRIBUTING.rst:190 msgid "" "Next release development occurs on the \"develop\" branch, and releases " "are made on the \"stable\" branch. Therefore, when submitting Merge " "Requests, ensure you are merging on the develop branch." msgstr "" -#: ../../../CONTRIBUTING.rst:170 +#: ../../../CONTRIBUTING.rst:194 msgid "Working with docker" msgstr "" -#: ../../../CONTRIBUTING.rst:172 +#: ../../../CONTRIBUTING.rst:196 msgid "" "In development, we use the docker-compose file named ``dev.yml``, and " "this is why all our docker-compose commands will look like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:176 +#: ../../../CONTRIBUTING.rst:200 msgid "" "If you do not want to add the ``-f dev.yml`` snippet every time, you can " "run this command before starting your work::" msgstr "" -#: ../../../CONTRIBUTING.rst:182 +#: ../../../CONTRIBUTING.rst:206 msgid "Creating your env file" msgstr "" -#: ../../../CONTRIBUTING.rst:184 +#: ../../../CONTRIBUTING.rst:208 msgid "" "We provide a working .env.dev configuration file that is suitable for " "development. However, to enable customization on your machine, you should" @@ -331,93 +370,93 @@ msgid "" "variables (those will not be commited to the project)." msgstr "" -#: ../../../CONTRIBUTING.rst:189 +#: ../../../CONTRIBUTING.rst:213 msgid "Create it like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:193 +#: ../../../CONTRIBUTING.rst:217 msgid "" "These two environment variables must be included for the images to load " "in front-end and django admin pages::" msgstr "" -#: ../../../CONTRIBUTING.rst:200 +#: ../../../CONTRIBUTING.rst:224 msgid "Create docker network" msgstr "" -#: ../../../CONTRIBUTING.rst:202 +#: ../../../CONTRIBUTING.rst:226 msgid "Create the federation network::" msgstr "" -#: ../../../CONTRIBUTING.rst:208 +#: ../../../CONTRIBUTING.rst:232 msgid "Building the containers" msgstr "" -#: ../../../CONTRIBUTING.rst:210 +#: ../../../CONTRIBUTING.rst:234 msgid "" "On your initial clone, or if there have been some changes in the app " "dependencies, you will have to rebuild your containers. This is done via " "the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:218 +#: ../../../CONTRIBUTING.rst:242 msgid "Database management" msgstr "" -#: ../../../CONTRIBUTING.rst:220 +#: ../../../CONTRIBUTING.rst:244 msgid "To setup funkwhale's database schema, run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:224 +#: ../../../CONTRIBUTING.rst:248 msgid "" "This will create all the tables needed for the API to run properly. You " "will also need to run this whenever changes are made on the database " "schema." msgstr "" -#: ../../../CONTRIBUTING.rst:228 +#: ../../../CONTRIBUTING.rst:252 msgid "" "It is safe to run this command multiple times, so you can run it whenever" " you fetch develop." msgstr "" -#: ../../../CONTRIBUTING.rst:233 +#: ../../../CONTRIBUTING.rst:257 msgid "Development data" msgstr "" -#: ../../../CONTRIBUTING.rst:235 +#: ../../../CONTRIBUTING.rst:259 msgid "" "You'll need at least an admin user and some artists/tracks/albums to work" " locally." msgstr "" -#: ../../../CONTRIBUTING.rst:238 +#: ../../../CONTRIBUTING.rst:262 msgid "Create an admin user with the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:242 +#: ../../../CONTRIBUTING.rst:266 msgid "Injecting fake data is done by running the following script::" msgstr "" -#: ../../../CONTRIBUTING.rst:248 +#: ../../../CONTRIBUTING.rst:272 msgid "" "The previous command will create 25 artists with random albums, tracks " "and metadata." msgstr "" -#: ../../../CONTRIBUTING.rst:253 +#: ../../../CONTRIBUTING.rst:277 msgid "Launch all services" msgstr "" -#: ../../../CONTRIBUTING.rst:255 +#: ../../../CONTRIBUTING.rst:279 msgid "Before the first Funkwhale launch, it is required to run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:259 +#: ../../../CONTRIBUTING.rst:283 msgid "Then you can run everything with::" msgstr "" -#: ../../../CONTRIBUTING.rst:263 +#: ../../../CONTRIBUTING.rst:287 msgid "" "This will launch all services, and output the logs in your current " "terminal window. If you prefer to launch them in the background instead, " @@ -425,209 +464,209 @@ msgid "" "compose -f dev.yml logs --tail=50 --follow``." msgstr "" -#: ../../../CONTRIBUTING.rst:266 +#: ../../../CONTRIBUTING.rst:290 msgid "Once everything is up, you can access the various funkwhale's components:" msgstr "" -#: ../../../CONTRIBUTING.rst:268 +#: ../../../CONTRIBUTING.rst:292 msgid "The Vue webapp, on http://localhost:8000" msgstr "" -#: ../../../CONTRIBUTING.rst:269 +#: ../../../CONTRIBUTING.rst:293 msgid "The API, on http://localhost:8000/api/v1/" msgstr "" -#: ../../../CONTRIBUTING.rst:270 +#: ../../../CONTRIBUTING.rst:294 msgid "The django admin, on http://localhost:8000/api/admin/" msgstr "" -#: ../../../CONTRIBUTING.rst:273 +#: ../../../CONTRIBUTING.rst:297 msgid "Stopping everything" msgstr "" -#: ../../../CONTRIBUTING.rst:275 +#: ../../../CONTRIBUTING.rst:299 msgid "" "Once you're down with your work, you can stop running containers, if any," " with::" msgstr "" -#: ../../../CONTRIBUTING.rst:281 +#: ../../../CONTRIBUTING.rst:305 msgid "Removing everything" msgstr "" -#: ../../../CONTRIBUTING.rst:283 +#: ../../../CONTRIBUTING.rst:307 msgid "" "If you want to wipe your development environment completely (e.g. if you " "want to start over from scratch), just run::" msgstr "" -#: ../../../CONTRIBUTING.rst:287 +#: ../../../CONTRIBUTING.rst:311 msgid "" "This will wipe your containers and data, so please be careful before " "running it." msgstr "" -#: ../../../CONTRIBUTING.rst:289 +#: ../../../CONTRIBUTING.rst:313 msgid "You can keep your data by removing the ``-v`` flag." msgstr "" -#: ../../../CONTRIBUTING.rst:293 +#: ../../../CONTRIBUTING.rst:317 msgid "Working with federation locally" msgstr "" -#: ../../../CONTRIBUTING.rst:295 +#: ../../../CONTRIBUTING.rst:319 msgid "This is not needed unless you need to work on federation-related features." msgstr "" -#: ../../../CONTRIBUTING.rst:297 +#: ../../../CONTRIBUTING.rst:321 msgid "To achieve that, you'll need:" msgstr "" -#: ../../../CONTRIBUTING.rst:299 +#: ../../../CONTRIBUTING.rst:323 msgid "to update your dns resolver to resolve all your .dev hostnames locally" msgstr "" -#: ../../../CONTRIBUTING.rst:300 +#: ../../../CONTRIBUTING.rst:324 msgid "" "a reverse proxy (such as traefik) to catch those .dev requests and and " "with https certificate" msgstr "" -#: ../../../CONTRIBUTING.rst:302 +#: ../../../CONTRIBUTING.rst:326 msgid "two instances (or more) running locally, following the regular dev setup" msgstr "" -#: ../../../CONTRIBUTING.rst:305 +#: ../../../CONTRIBUTING.rst:329 msgid "Resolve .dev names locally" msgstr "" -#: ../../../CONTRIBUTING.rst:307 +#: ../../../CONTRIBUTING.rst:331 msgid "If you use dnsmasq, this is as simple as doing::" msgstr "" -#: ../../../CONTRIBUTING.rst:312 +#: ../../../CONTRIBUTING.rst:336 msgid "If you use NetworkManager with dnsmasq integration, use this instead::" msgstr "" -#: ../../../CONTRIBUTING.rst:318 +#: ../../../CONTRIBUTING.rst:342 msgid "Add wildcard certificate to the trusted certificates" msgstr "" -#: ../../../CONTRIBUTING.rst:320 +#: ../../../CONTRIBUTING.rst:344 msgid "Simply copy bundled certificates::" msgstr "" -#: ../../../CONTRIBUTING.rst:325 +#: ../../../CONTRIBUTING.rst:349 msgid "This certificate is a wildcard for ``*.funkwhale.test``" msgstr "" -#: ../../../CONTRIBUTING.rst:328 +#: ../../../CONTRIBUTING.rst:352 msgid "Run a reverse proxy for your instances" msgstr "" -#: ../../../CONTRIBUTING.rst:332 +#: ../../../CONTRIBUTING.rst:356 msgid "Launch everything" msgstr "" -#: ../../../CONTRIBUTING.rst:334 +#: ../../../CONTRIBUTING.rst:358 msgid "Launch the traefik proxy::" msgstr "" -#: ../../../CONTRIBUTING.rst:338 +#: ../../../CONTRIBUTING.rst:362 msgid "" "Then, in separate terminals, you can setup as many different instances as" " you need::" msgstr "" -#: ../../../CONTRIBUTING.rst:347 +#: ../../../CONTRIBUTING.rst:371 msgid "" "Note that by default, if you don't export the COMPOSE_PROJECT_NAME, we " "will default to node1 as the name of your instance." msgstr "" -#: ../../../CONTRIBUTING.rst:350 +#: ../../../CONTRIBUTING.rst:374 msgid "" "Assuming your project name is ``node1``, your server will be reachable at" " ``https://node1.funkwhale.test/``. Not that you'll have to trust the SSL" " Certificate as it's self signed." msgstr "" -#: ../../../CONTRIBUTING.rst:354 +#: ../../../CONTRIBUTING.rst:378 msgid "" "When working on federation with traefik, ensure you have this in your " "``env``::" msgstr "" -#: ../../../CONTRIBUTING.rst:367 +#: ../../../CONTRIBUTING.rst:391 msgid "Typical workflow for a contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:369 +#: ../../../CONTRIBUTING.rst:393 msgid "" "Fork the project if you did not already or if you do not have access to " "the main repository" msgstr "" -#: ../../../CONTRIBUTING.rst:370 +#: ../../../CONTRIBUTING.rst:394 msgid "" "Checkout the development branch and pull most recent changes: ``git " "checkout develop && git pull``" msgstr "" -#: ../../../CONTRIBUTING.rst:371 +#: ../../../CONTRIBUTING.rst:395 msgid "" "If working on an issue, assign yourself to the issue. Otherwise, consider" " open an issue before starting to work on something, especially for new " "features." msgstr "" -#: ../../../CONTRIBUTING.rst:372 +#: ../../../CONTRIBUTING.rst:396 msgid "" "Create a dedicated branch for your work ``42-awesome-fix``. It is good " "practice to prefix your branch name with the ID of the issue you are " "solving." msgstr "" -#: ../../../CONTRIBUTING.rst:373 +#: ../../../CONTRIBUTING.rst:397 msgid "Work on your stuff" msgstr "" -#: ../../../CONTRIBUTING.rst:374 +#: ../../../CONTRIBUTING.rst:398 msgid "" "[Optional] Consider running ``yarn lint`` in ``front`` if you changed " "something there. Consider fixing some linting errors in the files you " "touched." msgstr "" -#: ../../../CONTRIBUTING.rst:376 +#: ../../../CONTRIBUTING.rst:400 msgid "Commit small, atomic changes to make it easier to review your contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:377 +#: ../../../CONTRIBUTING.rst:401 msgid "" "Add a changelog fragment to summarize your changes: ``echo \"Implemented " "awesome stuff (#42)\" > changes/changelog.d/42.feature``" msgstr "" -#: ../../../CONTRIBUTING.rst:378 +#: ../../../CONTRIBUTING.rst:402 msgid "Push your branch" msgstr "" -#: ../../../CONTRIBUTING.rst:379 +#: ../../../CONTRIBUTING.rst:403 msgid "Create your merge request" msgstr "" -#: ../../../CONTRIBUTING.rst:380 +#: ../../../CONTRIBUTING.rst:404 msgid "" "Take a step back and enjoy, we're really grateful you did all of this and" " took the time to contribute!" msgstr "" -#: ../../../CONTRIBUTING.rst:383 +#: ../../../CONTRIBUTING.rst:407 msgid "Changelog management" msgstr "" -#: ../../../CONTRIBUTING.rst:385 +#: ../../../CONTRIBUTING.rst:409 msgid "" "To ensure we have extensive and well-structured changelog, any " "significant work such as closing an issue must include a changelog " @@ -637,47 +676,47 @@ msgid "" "review ;)" msgstr "" -#: ../../../CONTRIBUTING.rst:391 +#: ../../../CONTRIBUTING.rst:415 msgid "" "Changelog fragments are text files that can contain one or multiple lines" " that describe the changes occurring in a bunch of commits. Those files " "reside in ``changes/changelog.d``." msgstr "" -#: ../../../CONTRIBUTING.rst:396 +#: ../../../CONTRIBUTING.rst:420 msgid "Content" msgstr "" -#: ../../../CONTRIBUTING.rst:398 +#: ../../../CONTRIBUTING.rst:422 msgid "A typical fragment looks like that:" msgstr "" -#: ../../../CONTRIBUTING.rst:400 +#: ../../../CONTRIBUTING.rst:424 msgid "Fixed broken audio player on Chrome 42 for ogg files (#567)" msgstr "" -#: ../../../CONTRIBUTING.rst:402 +#: ../../../CONTRIBUTING.rst:426 msgid "" "If the work fixes one or more issues, the issue number should be included" " at the end of the fragment (``(#567)`` is the issue number in the " "previous example)." msgstr "" -#: ../../../CONTRIBUTING.rst:405 +#: ../../../CONTRIBUTING.rst:429 msgid "" "If your work is not related to a specific issue, use the merge request " "identifier instead, like this:" msgstr "" -#: ../../../CONTRIBUTING.rst:408 +#: ../../../CONTRIBUTING.rst:432 msgid "Fixed a typo in landing page copy (!342)" msgstr "" -#: ../../../CONTRIBUTING.rst:411 +#: ../../../CONTRIBUTING.rst:435 msgid "Naming" msgstr "" -#: ../../../CONTRIBUTING.rst:413 +#: ../../../CONTRIBUTING.rst:437 msgid "" "Fragment files should respect the following naming pattern: " "``changes/changelog.d/.``. Name can be anything " @@ -685,71 +724,71 @@ msgid "" "are fixing. Category can be one of:" msgstr "" -#: ../../../CONTRIBUTING.rst:417 +#: ../../../CONTRIBUTING.rst:441 msgid "``feature``: for new features" msgstr "" -#: ../../../CONTRIBUTING.rst:418 +#: ../../../CONTRIBUTING.rst:442 msgid "``enhancement``: for enhancements on existing features" msgstr "" -#: ../../../CONTRIBUTING.rst:419 +#: ../../../CONTRIBUTING.rst:443 msgid "``bugfix``: for bugfixes" msgstr "" -#: ../../../CONTRIBUTING.rst:420 +#: ../../../CONTRIBUTING.rst:444 msgid "``doc``: for documentation" msgstr "" -#: ../../../CONTRIBUTING.rst:421 +#: ../../../CONTRIBUTING.rst:445 msgid "``i18n``: for internationalization-related work" msgstr "" -#: ../../../CONTRIBUTING.rst:422 +#: ../../../CONTRIBUTING.rst:446 msgid "``misc``: for anything else" msgstr "" -#: ../../../CONTRIBUTING.rst:425 +#: ../../../CONTRIBUTING.rst:449 msgid "Shortcuts" msgstr "" -#: ../../../CONTRIBUTING.rst:427 +#: ../../../CONTRIBUTING.rst:451 msgid "" "Here is a shortcut you can use/adapt to easily create new fragments from " "command-line:" msgstr "" -#: ../../../CONTRIBUTING.rst:436 +#: ../../../CONTRIBUTING.rst:460 msgid "" "You can of course create fragments by hand in your text editor, or from " "Gitlab's interface as well." msgstr "" -#: ../../../CONTRIBUTING.rst:440 +#: ../../../CONTRIBUTING.rst:464 msgid "Internationalization" msgstr "" -#: ../../../CONTRIBUTING.rst:442 +#: ../../../CONTRIBUTING.rst:466 msgid "" "We're using https://github.com/Polyconseil/vue-gettext to manage i18n in " "the project." msgstr "" -#: ../../../CONTRIBUTING.rst:444 +#: ../../../CONTRIBUTING.rst:468 msgid "" "When working on the front-end, any end-user string should be marked as a " "translatable string, with the proper context, as described below." msgstr "" -#: ../../../CONTRIBUTING.rst:448 +#: ../../../CONTRIBUTING.rst:472 msgid "Translations in HTML" msgstr "" -#: ../../../CONTRIBUTING.rst:450 +#: ../../../CONTRIBUTING.rst:474 msgid "Translations in HTML use the ```` tag::" msgstr "" -#: ../../../CONTRIBUTING.rst:474 +#: ../../../CONTRIBUTING.rst:498 msgid "" "Anything between the `` and `` delimiters will be " "considered as a translatable string. You can use variables in the " @@ -757,55 +796,55 @@ msgid "" "directive, and reference them like this: ``val value is %{ value }``." msgstr "" -#: ../../../CONTRIBUTING.rst:478 +#: ../../../CONTRIBUTING.rst:502 msgid "" "For pluralization, you need to use ``translate-params`` in conjunction " "with ``translate-plural`` and ``translate-n``:" msgstr "" -#: ../../../CONTRIBUTING.rst:480 +#: ../../../CONTRIBUTING.rst:504 msgid "" "``translate-params`` should contain the variable you're using for " "pluralization (which is usually shown to the user)" msgstr "" -#: ../../../CONTRIBUTING.rst:481 +#: ../../../CONTRIBUTING.rst:505 msgid "``translate-n`` should match the same variable" msgstr "" -#: ../../../CONTRIBUTING.rst:482 +#: ../../../CONTRIBUTING.rst:506 msgid "" "The ```` delimiters contain the non-pluralized version of your" " string" msgstr "" -#: ../../../CONTRIBUTING.rst:483 +#: ../../../CONTRIBUTING.rst:507 msgid "" "The ``translate-plural`` directive contains the pluralized version of " "your string" msgstr "" -#: ../../../CONTRIBUTING.rst:487 +#: ../../../CONTRIBUTING.rst:511 msgid "Translations in javascript" msgstr "" -#: ../../../CONTRIBUTING.rst:489 +#: ../../../CONTRIBUTING.rst:513 msgid "" "Translations in javascript work by calling the ``this.$*gettext`` " "functions::" msgstr "" -#: ../../../CONTRIBUTING.rst:504 +#: ../../../CONTRIBUTING.rst:528 msgid "" "The first argument of the ``$pgettext`` and ``$npgettext`` functions is " "the string context." msgstr "" -#: ../../../CONTRIBUTING.rst:507 +#: ../../../CONTRIBUTING.rst:531 msgid "Contextualization" msgstr "" -#: ../../../CONTRIBUTING.rst:509 +#: ../../../CONTRIBUTING.rst:533 msgid "" "Translation contexts provided via the ``translate-context`` directive and" " the ``$pgettext`` and ``$npgettext`` are never shown to end users but " @@ -814,7 +853,7 @@ msgid "" "``May``, which can refer a month or a verb." msgstr "" -#: ../../../CONTRIBUTING.rst:513 +#: ../../../CONTRIBUTING.rst:537 msgid "" "While we could in theory use free form context, like ``This string is " "inside a button, in the main page, and is a call to action``, Funkwhale " @@ -823,472 +862,472 @@ msgid "" "would be: ``Content/Home/Button/Call to action``." msgstr "" -#: ../../../CONTRIBUTING.rst:517 +#: ../../../CONTRIBUTING.rst:541 msgid "This hierarchical structure is made of several parts:" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "" "The location part, which is required and refers to the big blocks found " "in Funkwhale UI where the translated string is displayed:" msgstr "" -#: ../../../CONTRIBUTING.rst:520 +#: ../../../CONTRIBUTING.rst:544 msgid "``Content``" msgstr "" -#: ../../../CONTRIBUTING.rst:521 +#: ../../../CONTRIBUTING.rst:545 msgid "``Footer``" msgstr "" -#: ../../../CONTRIBUTING.rst:522 +#: ../../../CONTRIBUTING.rst:546 msgid "``Head``" msgstr "" -#: ../../../CONTRIBUTING.rst:523 ../../../CONTRIBUTING.rst:567 +#: ../../../CONTRIBUTING.rst:547 ../../../CONTRIBUTING.rst:591 msgid "``Menu``" msgstr "" -#: ../../../CONTRIBUTING.rst:524 +#: ../../../CONTRIBUTING.rst:548 msgid "``Popup``" msgstr "" -#: ../../../CONTRIBUTING.rst:525 +#: ../../../CONTRIBUTING.rst:549 msgid "``Sidebar``" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "``*`` for strings that are not tied to a specific location" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "" "The feature part, which is required, and refers to the feature associated" " with the translated string:" msgstr "" -#: ../../../CONTRIBUTING.rst:529 +#: ../../../CONTRIBUTING.rst:553 msgid "``About``" msgstr "" -#: ../../../CONTRIBUTING.rst:530 +#: ../../../CONTRIBUTING.rst:554 msgid "``Admin``" msgstr "" -#: ../../../CONTRIBUTING.rst:531 +#: ../../../CONTRIBUTING.rst:555 msgid "``Album``" msgstr "" -#: ../../../CONTRIBUTING.rst:532 +#: ../../../CONTRIBUTING.rst:556 msgid "``Artist``" msgstr "" -#: ../../../CONTRIBUTING.rst:533 +#: ../../../CONTRIBUTING.rst:557 msgid "``Embed``" msgstr "" -#: ../../../CONTRIBUTING.rst:534 +#: ../../../CONTRIBUTING.rst:558 msgid "``Home``" msgstr "" -#: ../../../CONTRIBUTING.rst:535 +#: ../../../CONTRIBUTING.rst:559 msgid "``Login``" msgstr "" -#: ../../../CONTRIBUTING.rst:536 +#: ../../../CONTRIBUTING.rst:560 msgid "``Library``" msgstr "" -#: ../../../CONTRIBUTING.rst:537 +#: ../../../CONTRIBUTING.rst:561 msgid "``Moderation``" msgstr "" -#: ../../../CONTRIBUTING.rst:538 +#: ../../../CONTRIBUTING.rst:562 msgid "``Player``" msgstr "" -#: ../../../CONTRIBUTING.rst:539 +#: ../../../CONTRIBUTING.rst:563 msgid "``Playlist``" msgstr "" -#: ../../../CONTRIBUTING.rst:540 +#: ../../../CONTRIBUTING.rst:564 msgid "``Profile``" msgstr "" -#: ../../../CONTRIBUTING.rst:541 +#: ../../../CONTRIBUTING.rst:565 msgid "``Favorites``" msgstr "" -#: ../../../CONTRIBUTING.rst:542 +#: ../../../CONTRIBUTING.rst:566 msgid "``Notifications``" msgstr "" -#: ../../../CONTRIBUTING.rst:543 +#: ../../../CONTRIBUTING.rst:567 msgid "``Radio``" msgstr "" -#: ../../../CONTRIBUTING.rst:544 +#: ../../../CONTRIBUTING.rst:568 msgid "``Search``" msgstr "" -#: ../../../CONTRIBUTING.rst:545 +#: ../../../CONTRIBUTING.rst:569 msgid "``Settings``" msgstr "" -#: ../../../CONTRIBUTING.rst:546 +#: ../../../CONTRIBUTING.rst:570 msgid "``Signup``" msgstr "" -#: ../../../CONTRIBUTING.rst:547 +#: ../../../CONTRIBUTING.rst:571 msgid "``Track``" msgstr "" -#: ../../../CONTRIBUTING.rst:548 +#: ../../../CONTRIBUTING.rst:572 msgid "``Queue``" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "``*`` for strings that are not tied to a specific feature" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "" "The component part, which is required and refers to the type of element " "that contain the string:" msgstr "" -#: ../../../CONTRIBUTING.rst:552 +#: ../../../CONTRIBUTING.rst:576 msgid "``Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:553 +#: ../../../CONTRIBUTING.rst:577 msgid "``Card``" msgstr "" -#: ../../../CONTRIBUTING.rst:554 +#: ../../../CONTRIBUTING.rst:578 msgid "``Checkbox``" msgstr "" -#: ../../../CONTRIBUTING.rst:555 +#: ../../../CONTRIBUTING.rst:579 msgid "``Dropdown``" msgstr "" -#: ../../../CONTRIBUTING.rst:556 +#: ../../../CONTRIBUTING.rst:580 msgid "``Error message``" msgstr "" -#: ../../../CONTRIBUTING.rst:557 +#: ../../../CONTRIBUTING.rst:581 msgid "``Form``" msgstr "" -#: ../../../CONTRIBUTING.rst:558 +#: ../../../CONTRIBUTING.rst:582 msgid "``Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:559 +#: ../../../CONTRIBUTING.rst:583 msgid "``Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:560 +#: ../../../CONTRIBUTING.rst:584 msgid "``Hidden text``" msgstr "" -#: ../../../CONTRIBUTING.rst:561 +#: ../../../CONTRIBUTING.rst:585 msgid "``Icon``" msgstr "" -#: ../../../CONTRIBUTING.rst:562 +#: ../../../CONTRIBUTING.rst:586 msgid "``Input``" msgstr "" -#: ../../../CONTRIBUTING.rst:563 +#: ../../../CONTRIBUTING.rst:587 msgid "``Image``" msgstr "" -#: ../../../CONTRIBUTING.rst:564 +#: ../../../CONTRIBUTING.rst:588 msgid "``Label``" msgstr "" -#: ../../../CONTRIBUTING.rst:565 +#: ../../../CONTRIBUTING.rst:589 msgid "``Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:566 +#: ../../../CONTRIBUTING.rst:590 msgid "``List item``" msgstr "" -#: ../../../CONTRIBUTING.rst:568 +#: ../../../CONTRIBUTING.rst:592 msgid "``Message``" msgstr "" -#: ../../../CONTRIBUTING.rst:569 +#: ../../../CONTRIBUTING.rst:593 msgid "``Paragraph``" msgstr "" -#: ../../../CONTRIBUTING.rst:570 +#: ../../../CONTRIBUTING.rst:594 msgid "``Placeholder``" msgstr "" -#: ../../../CONTRIBUTING.rst:571 +#: ../../../CONTRIBUTING.rst:595 msgid "``Tab``" msgstr "" -#: ../../../CONTRIBUTING.rst:572 +#: ../../../CONTRIBUTING.rst:596 msgid "``Table``" msgstr "" -#: ../../../CONTRIBUTING.rst:573 +#: ../../../CONTRIBUTING.rst:597 msgid "``Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:574 +#: ../../../CONTRIBUTING.rst:598 msgid "``Tooltip``" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "``*`` for strings that are not tied to a specific component" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "" "The detail part, which is optional and refers to the contents of the " "string itself, such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:578 +#: ../../../CONTRIBUTING.rst:602 msgid "``Adjective``" msgstr "" -#: ../../../CONTRIBUTING.rst:579 +#: ../../../CONTRIBUTING.rst:603 msgid "``Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:580 +#: ../../../CONTRIBUTING.rst:604 msgid "``Noun``" msgstr "" -#: ../../../CONTRIBUTING.rst:581 +#: ../../../CONTRIBUTING.rst:605 msgid "``Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:582 +#: ../../../CONTRIBUTING.rst:606 msgid "``Unit``" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "``Verb``" msgstr "" -#: ../../../CONTRIBUTING.rst:585 +#: ../../../CONTRIBUTING.rst:609 msgid "Here are a few examples of valid context hierarchies:" msgstr "" -#: ../../../CONTRIBUTING.rst:587 +#: ../../../CONTRIBUTING.rst:611 msgid "``Sidebar/Player/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:588 +#: ../../../CONTRIBUTING.rst:612 msgid "``Content/Home/Button/Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:589 +#: ../../../CONTRIBUTING.rst:613 msgid "``Footer/*/Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:590 +#: ../../../CONTRIBUTING.rst:614 msgid "``*/*/*/Verb, Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:591 +#: ../../../CONTRIBUTING.rst:615 msgid "``Popup/Playlist/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:592 +#: ../../../CONTRIBUTING.rst:616 msgid "``Content/Admin/Table.Label/Short, Noun (Value is a date)``" msgstr "" -#: ../../../CONTRIBUTING.rst:594 +#: ../../../CONTRIBUTING.rst:618 msgid "" "It's possible to nest multiple component parts to reach a higher level of" " detail. The component parts are then separated by a dot:" msgstr "" -#: ../../../CONTRIBUTING.rst:596 +#: ../../../CONTRIBUTING.rst:620 msgid "``Sidebar/Queue/Tab.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:597 +#: ../../../CONTRIBUTING.rst:621 msgid "``Content/*/Button.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:598 +#: ../../../CONTRIBUTING.rst:622 msgid "``Content/*/Table.Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:599 +#: ../../../CONTRIBUTING.rst:623 msgid "``Footer/*/List item.Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:600 +#: ../../../CONTRIBUTING.rst:624 msgid "``Content/*/Form.Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:603 +#: ../../../CONTRIBUTING.rst:627 msgid "Collecting translatable strings" msgstr "" -#: ../../../CONTRIBUTING.rst:605 +#: ../../../CONTRIBUTING.rst:629 msgid "" "If you want to ensure your translatable strings are correctly marked for " "translation, you can try to extract them." msgstr "" -#: ../../../CONTRIBUTING.rst:608 +#: ../../../CONTRIBUTING.rst:632 msgid "" "Extraction is done by calling ``yarn run i18n-extract``, which will pull " "all the strings from source files and put them in a PO files." msgstr "" -#: ../../../CONTRIBUTING.rst:611 +#: ../../../CONTRIBUTING.rst:635 msgid "" "You can then inspect the PO files to ensure everything is fine (but don't" " commit them, it's not needed)." msgstr "" -#: ../../../CONTRIBUTING.rst:614 +#: ../../../CONTRIBUTING.rst:638 msgid "Contributing to the API" msgstr "" -#: ../../../CONTRIBUTING.rst:617 +#: ../../../CONTRIBUTING.rst:641 msgid "Project structure" msgstr "" -#: ../../../CONTRIBUTING.rst:631 +#: ../../../CONTRIBUTING.rst:655 msgid "" "Unless trivial, API contributions must include unittests to ensure your " "fix or feature is working as expected and won't break in the future" msgstr "" -#: ../../../CONTRIBUTING.rst:635 ../../../CONTRIBUTING.rst:793 +#: ../../../CONTRIBUTING.rst:659 ../../../CONTRIBUTING.rst:817 msgid "Running tests" msgstr "" -#: ../../../CONTRIBUTING.rst:637 +#: ../../../CONTRIBUTING.rst:661 msgid "To run the pytest test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:641 +#: ../../../CONTRIBUTING.rst:665 msgid "" "This is regular pytest, so you can use any arguments/options that pytest " "usually accept::" msgstr "" -#: ../../../CONTRIBUTING.rst:651 +#: ../../../CONTRIBUTING.rst:675 msgid "Writing tests" msgstr "" -#: ../../../CONTRIBUTING.rst:653 +#: ../../../CONTRIBUTING.rst:677 msgid "" "Although teaching you how to write unit tests is outside of the scope of " "this document, you'll find below a collection of tips, snippets and " "resources you can use if you want to learn on that subject." msgstr "" -#: ../../../CONTRIBUTING.rst:657 +#: ../../../CONTRIBUTING.rst:681 msgid "Useful links:" msgstr "" -#: ../../../CONTRIBUTING.rst:659 +#: ../../../CONTRIBUTING.rst:683 msgid "" "`A quick introduction to unit test writing with pytest " "`_" msgstr "" -#: ../../../CONTRIBUTING.rst:660 +#: ../../../CONTRIBUTING.rst:684 msgid "" "`A complete guide to Test-Driven Development (although not using Pytest) " "`_" msgstr "" -#: ../../../CONTRIBUTING.rst:661 +#: ../../../CONTRIBUTING.rst:685 msgid "" "`pytest `_: documentation of our " "testing engine and runner" msgstr "" -#: ../../../CONTRIBUTING.rst:662 +#: ../../../CONTRIBUTING.rst:686 msgid "" "`pytest-mock `_: project page of " "our mocking engine" msgstr "" -#: ../../../CONTRIBUTING.rst:663 +#: ../../../CONTRIBUTING.rst:687 msgid "" "`factory-boy `_: documentation of " "factory-boy, which we use to easily generate fake objects and data" msgstr "" -#: ../../../CONTRIBUTING.rst:665 +#: ../../../CONTRIBUTING.rst:689 msgid "Recommendations:" msgstr "" -#: ../../../CONTRIBUTING.rst:667 +#: ../../../CONTRIBUTING.rst:691 msgid "" "Test files must target a module and mimic ``funkwhale_api`` directory " "structure: if you're writing tests for ``funkwhale_api/myapp/views.py``, " "you should put thoses tests in ``tests/myapp/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:668 +#: ../../../CONTRIBUTING.rst:692 msgid "" "Tests should be small and test one thing. If you need to test multiple " "things, write multiple tests." msgstr "" -#: ../../../CONTRIBUTING.rst:670 +#: ../../../CONTRIBUTING.rst:694 msgid "" "We provide a lot of utils and fixtures to make the process of writing " "tests as painless as possible. You'll find some usage examples below." msgstr "" -#: ../../../CONTRIBUTING.rst:673 +#: ../../../CONTRIBUTING.rst:697 msgid "Use factories to create arbitrary objects:" msgstr "" -#: ../../../CONTRIBUTING.rst:708 +#: ../../../CONTRIBUTING.rst:732 msgid "" "We offer factories for almost if not all models. Factories are located in" " a ``factories.py`` file inside each app." msgstr "" -#: ../../../CONTRIBUTING.rst:711 +#: ../../../CONTRIBUTING.rst:735 msgid "" "Mocking: mocking is the process of faking some logic in our code. This is" " useful when testing components that depend on each other:" msgstr "" -#: ../../../CONTRIBUTING.rst:766 +#: ../../../CONTRIBUTING.rst:790 msgid "" "Views: you can find some readable views tests in file: " "``api/tests/users/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:770 +#: ../../../CONTRIBUTING.rst:794 msgid "" "A complete list of available-fixtures is available by running ``docker-" "compose -f dev.yml run --rm api pytest --fixtures``" msgstr "" -#: ../../../CONTRIBUTING.rst:775 +#: ../../../CONTRIBUTING.rst:799 msgid "Contributing to the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:778 +#: ../../../CONTRIBUTING.rst:802 msgid "Styles and themes" msgstr "" -#: ../../../CONTRIBUTING.rst:780 +#: ../../../CONTRIBUTING.rst:804 msgid "" "Our UI framework is Fomantic UI (https://fomantic-ui.com/), and " "Funkwhale's custom styles are written in SCSS. All the styles are " @@ -1296,26 +1335,26 @@ msgid "" "Fomantic UI styles and components." msgstr "" -#: ../../../CONTRIBUTING.rst:783 +#: ../../../CONTRIBUTING.rst:807 msgid "" "We're applying several changes on top of the Fomantic CSS files, before " "they are imported:" msgstr "" -#: ../../../CONTRIBUTING.rst:785 +#: ../../../CONTRIBUTING.rst:809 msgid "" "Many hardcoded color values are replaced by CSS vars: e.g ``color: " "orange`` is replaced by ``color: var(--vibrant-color)``. This makes " "theming way easier." msgstr "" -#: ../../../CONTRIBUTING.rst:786 +#: ../../../CONTRIBUTING.rst:810 msgid "" "Unused components variations and icons are stripped from the source " "files, in order to reduce the final size of our CSS files" msgstr "" -#: ../../../CONTRIBUTING.rst:788 +#: ../../../CONTRIBUTING.rst:812 msgid "" "This changes are applied automatically when running ``yarn install``, " "through a ``postinstall`` hook. Internally, ``front/scripts/fix-fomantic-" @@ -1324,33 +1363,33 @@ msgid "" " components variations that were stripped in order to use them." msgstr "" -#: ../../../CONTRIBUTING.rst:795 +#: ../../../CONTRIBUTING.rst:819 msgid "To run the front-end test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:799 +#: ../../../CONTRIBUTING.rst:823 msgid "" "We also support a \"watch and test\" mode were we continually relaunch " "tests when changes are recorded on the file system::" msgstr "" -#: ../../../CONTRIBUTING.rst:804 +#: ../../../CONTRIBUTING.rst:828 msgid "The latter is especially useful when you are debugging failing tests." msgstr "" -#: ../../../CONTRIBUTING.rst:808 +#: ../../../CONTRIBUTING.rst:832 msgid "The front-end test suite coverage is still pretty low" msgstr "" -#: ../../../CONTRIBUTING.rst:812 +#: ../../../CONTRIBUTING.rst:836 msgid "Making a release" msgstr "" -#: ../../../CONTRIBUTING.rst:814 +#: ../../../CONTRIBUTING.rst:838 msgid "To make a new 3.4 release::" msgstr "" -#: ../../../CONTRIBUTING.rst:853 +#: ../../../CONTRIBUTING.rst:877 msgid "" "Then, visit https://dev.funkwhale.audio/funkwhale/funkwhale/-/tags, copy-" "paste the changelog on the corresponding tag, and announce the good news " diff --git a/docs/locales/en_GB/LC_MESSAGES/developers/authentication.po b/docs/locales/en_GB/LC_MESSAGES/developers/authentication.po index 10e335ae2..0bc716592 100644 --- a/docs/locales/en_GB/LC_MESSAGES/developers/authentication.po +++ b/docs/locales/en_GB/LC_MESSAGES/developers/authentication.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -174,31 +174,35 @@ msgid "" "request:" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:67 +msgid "Oauth scopes" +msgstr "" + +#: ../../developers/authentication.rst:70 msgid "Scope" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:71 msgid "Description" msgstr "" -#: ../../developers/authentication.rst:71 +#: ../../developers/authentication.rst:72 msgid "``read``" msgstr "" -#: ../../developers/authentication.rst:71 -msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#: ../../developers/authentication.rst:73 +msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)." msgstr "" #: ../../developers/authentication.rst:74 msgid "``write``" msgstr "" -#: ../../developers/authentication.rst:74 -msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#: ../../developers/authentication.rst:75 +msgid "Read-only access to all data (equivalent to all ``write:*`` scopes)." msgstr "" -#: ../../developers/authentication.rst:77 +#: ../../developers/authentication.rst:76 msgid "``:profile``" msgstr "" @@ -206,75 +210,84 @@ msgstr "" msgid "Access to profile data (e-mail address, username, etc.)" msgstr "" -#: ../../developers/authentication.rst:79 +#: ../../developers/authentication.rst:78 msgid "``:libraries``" msgstr "" #: ../../developers/authentication.rst:79 -msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +msgid "Access to library data (uploads, libraries, tracks, albums, artists…)" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:80 msgid "``:favorites``" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:81 msgid "Access to favorites" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:82 msgid "``:listenings``" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:83 msgid "Access to history" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:84 msgid "``:follows``" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:85 msgid "Access to followers" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:86 msgid "``:playlists``" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:87 msgid "Access to playlists" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:88 msgid "``:radios``" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:89 msgid "Access to radios" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:90 msgid "``:filters``" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:91 msgid "Access to content filters" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:92 msgid "``:notifications``" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:93 msgid "Access to notifications" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:94 msgid "``:edits``" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:95 msgid "Access to metadata edits" msgstr "" +#~ msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#~ msgstr "" + +#~ msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#~ msgstr "" + +#~ msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +#~ msgstr "" + diff --git a/docs/locales/en_GB/LC_MESSAGES/user_documentation/libraries/tag_music.po b/docs/locales/en_GB/LC_MESSAGES/user_documentation/libraries/tag_music.po index c6373544d..be784e262 100644 --- a/docs/locales/en_GB/LC_MESSAGES/user_documentation/libraries/tag_music.po +++ b/docs/locales/en_GB/LC_MESSAGES/user_documentation/libraries/tag_music.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -40,118 +40,309 @@ msgstr "" msgid "This guide shows you how to tag your content with MusicBrainz Picard." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:34 -msgid "Tag content" +#: ../../user_documentation/libraries/tag_music.md:19 +msgid "Name" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:36 -msgid "To tag content using MusicBrainz Picard:" +#: ../../user_documentation/libraries/tag_music.md:20 +msgid "Description" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:21 +msgid "Example value" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:22 +msgid "`Title`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:23 +msgid "The track title." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:24 +msgid "`Letting you`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:25 +msgid "`Artist`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:26 +msgid "The artist name." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:27 +msgid "`Nine Inch Nails`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:28 +msgid "`Album`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:29 +msgid "" +"The album title. If none is provided, an `[Unknown Album]` entry is " +"created." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:30 +msgid "`The Slip`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:31 +msgid "`Album artist`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:32 +msgid "The album artist name (can be different than the track artist)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:33 +msgid "`Trent Reznor`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:34 +msgid "`Genre`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:35 +msgid "" +"A comma separated list of tags to associate with the track. Other " +"supported separators: `;` and `/`." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:37 +msgid "`Industrial, Metal`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:38 +msgid "`Track number`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:39 +msgid "The position of the track in the album/release." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:40 +msgid "`4`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:41 +msgid "`Disc number`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:42 +msgid "The disc number (in case of multi-disc albums)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:43 +msgid "`1`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:44 +msgid "`Date`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:45 +msgid "The release date of the track or album." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:46 +msgid "`2019`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:47 +msgid "`License`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:48 +msgid "" +"The license associated with this work. The first URL found is checked " +"against our list of supported licenses." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:50 +#: ../../user_documentation/libraries/tag_music.md:54 +msgid "`CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:51 +msgid "`Copyright`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:52 +msgid "" +"The license associated with this work. The first URL found is checked " +"against our list of supported licenses. Used if no license found in the" +" `License` tag." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:55 +msgid "`Pictures`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:56 +msgid "The first embeded picture found is used as the album cover." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:58 +msgid "`MusicBrainz Recording ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:59 +msgid "The MusicBrainz ID for the recording." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:60 +msgid "`99244237-850b-4a93-904d-57305bcadb4e`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:61 +msgid "`MusicBrainz Album ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:62 +msgid "The MusicBrainz ID for the album." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:63 +msgid "`bca982fd-ab73-3c9f-ad07-9104a4f53a32`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:64 +msgid "`MusicBrainz Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:65 +msgid "The MusicBrainz ID for the artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:66 +#: ../../user_documentation/libraries/tag_music.md:69 +msgid "`b7ffd2af-418f-4be2-bdd1-22f8b48613da`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:67 +msgid "`MusicBrainz Album Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:68 +msgid "The MusicBrainz ID for the album artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:74 +msgid "Tag content" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:76 +msgid "To tag content using MusicBrainz Picard:" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:78 msgid "" "Select {guilabel}`Add Files` to add individual files or {guilabel}`Add " "Folder` to add a directory of files." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:39 +#: ../../user_documentation/libraries/tag_music.md:79 msgid "Select the files or directory you want to tag." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:40 +#: ../../user_documentation/libraries/tag_music.md:80 msgid "" "Picard shows the files in the left panel. Picard moves files to the right" " panel as it tags them. If Picard doesn't tag a file automatically, " "select {guilabel}`Scan`." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:41 +#: ../../user_documentation/libraries/tag_music.md:81 msgid "" "Check a file's tags by highlighting it and looking at the details in the " "bottom panel. If Picard has applied the wrong tags, look for [alternative" " versions](#alternative-versions)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:42 -#: ../../user_documentation/libraries/tag_music.md:56 -#: ../../user_documentation/libraries/tag_music.md:65 +#: ../../user_documentation/libraries/tag_music.md:82 +#: ../../user_documentation/libraries/tag_music.md:96 +#: ../../user_documentation/libraries/tag_music.md:105 msgid "" "Select {guilabel}`Save` or hit {kbd}`ctrl+s` ({kbd}`cmd+s` on macOS) to " "save the tags to the files." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:44 +#: ../../user_documentation/libraries/tag_music.md:84 msgid "" "That's it! You've added ID3 tags to your files. You can now [add these to" " a library](upload_content.md)" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:46 +#: ../../user_documentation/libraries/tag_music.md:86 msgid "Alternative versions" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:48 +#: ../../user_documentation/libraries/tag_music.md:88 msgid "" "Picard will choose tags based on details included in your file. Sometimes" " it chooses a different version of a release than the one you want. You " "can choose an alternative version of your content to get the right tags." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:50 +#: ../../user_documentation/libraries/tag_music.md:90 msgid "Alternative albums" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:52 +#: ../../user_documentation/libraries/tag_music.md:92 msgid "If Picard has selected a different version of the album you are tagging:" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:54 +#: ../../user_documentation/libraries/tag_music.md:94 msgid "" "Right-click on the album and hover your mouse over {guilabel}`Other " "versions`. A dropdown list of alternative versions appears." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:55 +#: ../../user_documentation/libraries/tag_music.md:95 msgid "Select the correct release from the list." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:58 +#: ../../user_documentation/libraries/tag_music.md:98 msgid "Alternative tracks" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:60 +#: ../../user_documentation/libraries/tag_music.md:100 msgid "If Picard can't find a release for a track:" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:62 +#: ../../user_documentation/libraries/tag_music.md:102 msgid "" "Right-click on the track and select {guilabel}`Search for Similar " "Tracks…`. A search screen appears." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:63 +#: ../../user_documentation/libraries/tag_music.md:103 msgid "" "Search for your track. Use [MusicBrainz's search " "syntax](https://musicbrainz.org/doc/Indexed_Search_Syntax) for the best " "results." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:64 +#: ../../user_documentation/libraries/tag_music.md:104 msgid "Select the correct track and click on {guilabel}`Load into Picard`." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:67 +#: ../../user_documentation/libraries/tag_music.md:107 msgid "Add items to MusicBrainz" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:69 +#: ../../user_documentation/libraries/tag_music.md:109 msgid "" "If Picard can't find your content, you can add it to MusicBrainz " "yourself. To get started, check out [MusicBrainz's " "guide](https://musicbrainz.org/doc/How_to_Add_a_Release/)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:71 +#: ../../user_documentation/libraries/tag_music.md:111 msgid "Once you have added the content to MusicBrainz, Picard can tag your files." msgstr "" diff --git a/docs/locales/en_US/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po b/docs/locales/en_US/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po index d3ab493a3..d58e58a47 100644 --- a/docs/locales/en_US/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po +++ b/docs/locales/en_US/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-03 01:32+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -59,11 +59,61 @@ msgstr "" msgid "Create a new config file and populate it with placeholder settings." msgstr "" +#: ../../administrator_documentation/configuration_docs/frontend.md:41 +msgid "Parameter" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:42 +msgid "Data type" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:43 +msgid "Description" +msgstr "" + #: ../../administrator_documentation/configuration_docs/frontend.md:44 -msgid "Configure your reverse proxy" +msgid "Example" msgstr "" #: ../../administrator_documentation/configuration_docs/frontend.md:46 +msgid "`additionalStylesheets`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:47 +msgid "Array" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:48 +msgid "A list of URLs (relative or absolute) pointing to stylesheets." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:49 +msgid "`[\"https://test/theme.css\"]`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:51 +msgid "`defaultServerUrl`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:52 +msgid "URL" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:53 +msgid "" +"The URL of the API server you want to connect the frontend to. Defaults " +"to the current domain." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:54 +msgid "`\"https://api.yourdomain.com\"`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:59 +msgid "Configure your reverse proxy" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:61 msgid "" "Once you've created your {file}`settings.json` file you need to configure" " your reverse proxy to serve it." @@ -73,7 +123,7 @@ msgstr "" msgid "Nginx" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:50 +#: ../../administrator_documentation/configuration_docs/frontend.md:65 msgid "" "Add the following snippet to your {file}`/etc/nginx/sites-" "available/funkwhale.conf` config file:" @@ -83,57 +133,57 @@ msgstr "" msgid "Apache" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:62 +#: ../../administrator_documentation/configuration_docs/frontend.md:77 msgid "Add the following snippet to your webserver configuration:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:70 +#: ../../administrator_documentation/configuration_docs/frontend.md:85 msgid "" "Reload your webserver. You should be able to see the contents of your " "configuration file at `https://yourinstanceurl/settings.json`." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:72 +#: ../../administrator_documentation/configuration_docs/frontend.md:87 msgid "Add a custom theme" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:74 +#: ../../administrator_documentation/configuration_docs/frontend.md:89 msgid "You can use a custom stylesheet to theme your Funkwhale pod. To do this:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:76 +#: ../../administrator_documentation/configuration_docs/frontend.md:91 msgid "Navigate to your {file}`/srv/funkwhale/custom` directory." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:82 +#: ../../administrator_documentation/configuration_docs/frontend.md:97 msgid "Copy your CSS file to this directory, or create a new one." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:94 +#: ../../administrator_documentation/configuration_docs/frontend.md:109 msgid "" "Add the location of your CSS file to the `additionalStylesheets` " "parameter in your {file}`settings.json` file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:107 +#: ../../administrator_documentation/configuration_docs/frontend.md:122 msgid "Add the whole {file}`custom` dir to your webserver configuration." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:111 +#: ../../administrator_documentation/configuration_docs/frontend.md:126 msgid "" "Add the following to your {file}`/etc/nginx/sites-" "available/funkwhale.conf` file:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:122 +#: ../../administrator_documentation/configuration_docs/frontend.md:137 msgid "Add the following to your webserver configuration file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:135 +#: ../../administrator_documentation/configuration_docs/frontend.md:150 msgid "Restart your webserver." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:137 +#: ../../administrator_documentation/configuration_docs/frontend.md:152 msgid "Refresh your Funkwhale app. The background should now be red." msgstr "" diff --git a/docs/locales/en_US/LC_MESSAGES/contributing.po b/docs/locales/en_US/LC_MESSAGES/contributing.po index 2b994cb55..152abd50e 100644 --- a/docs/locales/en_US/LC_MESSAGES/contributing.po +++ b/docs/locales/en_US/LC_MESSAGES/contributing.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -32,7 +32,7 @@ msgstr "" msgid "This document will guide you through common operations such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:10 ../../../CONTRIBUTING.rst:117 +#: ../../../CONTRIBUTING.rst:10 ../../../CONTRIBUTING.rst:141 msgid "Setup your development environment" msgstr "" @@ -132,49 +132,88 @@ msgid "" "signed in to the extension automatically in old and new workspaces." msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:62 +msgid "Environment variables" +msgstr "" + +#: ../../../CONTRIBUTING.rst:65 ../../../CONTRIBUTING.rst:88 msgid "Name" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:66 ../../../CONTRIBUTING.rst:89 msgid "Value" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:67 ../../../CONTRIBUTING.rst:90 msgid "Scope" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:68 msgid "``GITLAB_WORKFLOW_INSTANCE_URL``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:69 msgid "``https://dev.funkwhale.audio``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:70 ../../../CONTRIBUTING.rst:73 msgid "``funkwhale/*``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:71 msgid "``GITLAB_WORKFLOW_TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:72 msgid "``TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:70 +#: ../../../CONTRIBUTING.rst:75 msgid "" "The scope ``funkwhale/*`` will ensure that you will be signed into our " "instance on every project that we're hosting, not only Funkwhale itself." msgstr "" -#: ../../../CONTRIBUTING.rst:74 +#: ../../../CONTRIBUTING.rst:79 +msgid "Custom instance url" +msgstr "" + +#: ../../../CONTRIBUTING.rst:81 +msgid "" +"If you want to preview changes on your own Funkwhale server, you can add " +"your domain as an environment variable. This allows you to test your " +"frontend changes against your domain without setting this value each " +"time. To add your domain, set a user environment variable in `your Gitpod" +" settings `_." +msgstr "" + +#: ../../../CONTRIBUTING.rst:85 +msgid "Environment variable" +msgstr "" + +#: ../../../CONTRIBUTING.rst:91 +msgid "``VUE_APP_INSTANCE_URL``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:92 +msgid "``https://funkwhale.example.com``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:93 +msgid "``funkwhale/funkwhale``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:95 +msgid "" +"The scope ``funkwhale/funkwhale`` ensures that this variable only works " +"on Funkwhale." +msgstr "" + +#: ../../../CONTRIBUTING.rst:98 msgid "A quick path to contribute on the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:76 +#: ../../../CONTRIBUTING.rst:100 msgid "" "The next sections of this document include a full installation guide to " "help you setup a local, development version of Funkwhale. If you only " @@ -182,14 +221,14 @@ msgid "" "full development environment, there is another way." msgstr "" -#: ../../../CONTRIBUTING.rst:80 +#: ../../../CONTRIBUTING.rst:104 msgid "" "As the front-end can work with any Funkwhale server, you can work with " "the front-end only, and make it talk with an existing instance (like the " "demo one, or you own instance, if you have one)." msgstr "" -#: ../../../CONTRIBUTING.rst:83 +#: ../../../CONTRIBUTING.rst:107 msgid "" "If even that is too much for you, you can also make your changes without " "any development environment, and open a merge request. We will be able to" @@ -197,133 +236,133 @@ msgid "" " changes, thanks to Gitlab Review apps." msgstr "" -#: ../../../CONTRIBUTING.rst:88 +#: ../../../CONTRIBUTING.rst:112 msgid "Setup front-end only development environment" msgstr "" -#: ../../../CONTRIBUTING.rst:90 +#: ../../../CONTRIBUTING.rst:114 msgid "Clone the repository::" msgstr "" -#: ../../../CONTRIBUTING.rst:96 +#: ../../../CONTRIBUTING.rst:120 msgid "" "Install `nodejs `_ and " "`yarn `_" msgstr "" -#: ../../../CONTRIBUTING.rst:98 +#: ../../../CONTRIBUTING.rst:122 msgid "Install the dependencies::" msgstr "" -#: ../../../CONTRIBUTING.rst:102 +#: ../../../CONTRIBUTING.rst:126 msgid "Compile the translations::" msgstr "" -#: ../../../CONTRIBUTING.rst:106 +#: ../../../CONTRIBUTING.rst:130 msgid "Launch the development server::" msgstr "" -#: ../../../CONTRIBUTING.rst:111 +#: ../../../CONTRIBUTING.rst:135 msgid "" "Make the front-end talk with an existing server (like " "https://demo.funkwhale.audio or https://open.audio), by clicking on the " "corresponding link in the footer" msgstr "" -#: ../../../CONTRIBUTING.rst:114 +#: ../../../CONTRIBUTING.rst:138 msgid "Start hacking!" msgstr "" -#: ../../../CONTRIBUTING.rst:119 +#: ../../../CONTRIBUTING.rst:143 msgid "" "If you want to fix a bug or implement a feature, you'll need to run a " "local, development copy of funkwhale." msgstr "" -#: ../../../CONTRIBUTING.rst:122 +#: ../../../CONTRIBUTING.rst:146 msgid "" "We provide a docker based development environment, which should be both " "easy to setup and work similarly regardless of your development machine " "setup." msgstr "" -#: ../../../CONTRIBUTING.rst:126 +#: ../../../CONTRIBUTING.rst:150 msgid "" "Instructions for bare-metal setup will come in the future (Merge requests" " are welcome)." msgstr "" -#: ../../../CONTRIBUTING.rst:130 +#: ../../../CONTRIBUTING.rst:154 msgid "Installing docker and docker-compose" msgstr "" -#: ../../../CONTRIBUTING.rst:132 +#: ../../../CONTRIBUTING.rst:156 msgid "This is already cover in the relevant documentations:" msgstr "" -#: ../../../CONTRIBUTING.rst:134 +#: ../../../CONTRIBUTING.rst:158 msgid "https://docs.docker.com/install/" msgstr "" -#: ../../../CONTRIBUTING.rst:135 +#: ../../../CONTRIBUTING.rst:159 msgid "https://docs.docker.com/compose/install/" msgstr "" -#: ../../../CONTRIBUTING.rst:139 +#: ../../../CONTRIBUTING.rst:163 msgid "" "If you are on Fedora, know that you can't use `podman` or `moby-engine` " "to set up the development environment. Stick to `docker-ce` and you'll be" " fine." msgstr "" -#: ../../../CONTRIBUTING.rst:143 +#: ../../../CONTRIBUTING.rst:167 msgid "Cloning the project" msgstr "" -#: ../../../CONTRIBUTING.rst:145 +#: ../../../CONTRIBUTING.rst:169 msgid "" "Visit https://dev.funkwhale.audio/funkwhale/funkwhale and clone the " "repository using SSH or HTTPS. Example using SSH::" msgstr "" -#: ../../../CONTRIBUTING.rst:152 +#: ../../../CONTRIBUTING.rst:176 msgid "" "As of January 2020, the SSH fingerprints of our Gitlab server are the " "following::" msgstr "" -#: ../../../CONTRIBUTING.rst:164 +#: ../../../CONTRIBUTING.rst:188 msgid "A note about branches" msgstr "" -#: ../../../CONTRIBUTING.rst:166 +#: ../../../CONTRIBUTING.rst:190 msgid "" "Next release development occurs on the \"develop\" branch, and releases " "are made on the \"stable\" branch. Therefore, when submitting Merge " "Requests, ensure you are merging on the develop branch." msgstr "" -#: ../../../CONTRIBUTING.rst:170 +#: ../../../CONTRIBUTING.rst:194 msgid "Working with docker" msgstr "" -#: ../../../CONTRIBUTING.rst:172 +#: ../../../CONTRIBUTING.rst:196 msgid "" "In development, we use the docker-compose file named ``dev.yml``, and " "this is why all our docker-compose commands will look like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:176 +#: ../../../CONTRIBUTING.rst:200 msgid "" "If you do not want to add the ``-f dev.yml`` snippet every time, you can " "run this command before starting your work::" msgstr "" -#: ../../../CONTRIBUTING.rst:182 +#: ../../../CONTRIBUTING.rst:206 msgid "Creating your env file" msgstr "" -#: ../../../CONTRIBUTING.rst:184 +#: ../../../CONTRIBUTING.rst:208 msgid "" "We provide a working .env.dev configuration file that is suitable for " "development. However, to enable customization on your machine, you should" @@ -331,93 +370,93 @@ msgid "" "variables (those will not be commited to the project)." msgstr "" -#: ../../../CONTRIBUTING.rst:189 +#: ../../../CONTRIBUTING.rst:213 msgid "Create it like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:193 +#: ../../../CONTRIBUTING.rst:217 msgid "" "These two environment variables must be included for the images to load " "in front-end and django admin pages::" msgstr "" -#: ../../../CONTRIBUTING.rst:200 +#: ../../../CONTRIBUTING.rst:224 msgid "Create docker network" msgstr "" -#: ../../../CONTRIBUTING.rst:202 +#: ../../../CONTRIBUTING.rst:226 msgid "Create the federation network::" msgstr "" -#: ../../../CONTRIBUTING.rst:208 +#: ../../../CONTRIBUTING.rst:232 msgid "Building the containers" msgstr "" -#: ../../../CONTRIBUTING.rst:210 +#: ../../../CONTRIBUTING.rst:234 msgid "" "On your initial clone, or if there have been some changes in the app " "dependencies, you will have to rebuild your containers. This is done via " "the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:218 +#: ../../../CONTRIBUTING.rst:242 msgid "Database management" msgstr "" -#: ../../../CONTRIBUTING.rst:220 +#: ../../../CONTRIBUTING.rst:244 msgid "To setup funkwhale's database schema, run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:224 +#: ../../../CONTRIBUTING.rst:248 msgid "" "This will create all the tables needed for the API to run properly. You " "will also need to run this whenever changes are made on the database " "schema." msgstr "" -#: ../../../CONTRIBUTING.rst:228 +#: ../../../CONTRIBUTING.rst:252 msgid "" "It is safe to run this command multiple times, so you can run it whenever" " you fetch develop." msgstr "" -#: ../../../CONTRIBUTING.rst:233 +#: ../../../CONTRIBUTING.rst:257 msgid "Development data" msgstr "" -#: ../../../CONTRIBUTING.rst:235 +#: ../../../CONTRIBUTING.rst:259 msgid "" "You'll need at least an admin user and some artists/tracks/albums to work" " locally." msgstr "" -#: ../../../CONTRIBUTING.rst:238 +#: ../../../CONTRIBUTING.rst:262 msgid "Create an admin user with the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:242 +#: ../../../CONTRIBUTING.rst:266 msgid "Injecting fake data is done by running the following script::" msgstr "" -#: ../../../CONTRIBUTING.rst:248 +#: ../../../CONTRIBUTING.rst:272 msgid "" "The previous command will create 25 artists with random albums, tracks " "and metadata." msgstr "" -#: ../../../CONTRIBUTING.rst:253 +#: ../../../CONTRIBUTING.rst:277 msgid "Launch all services" msgstr "" -#: ../../../CONTRIBUTING.rst:255 +#: ../../../CONTRIBUTING.rst:279 msgid "Before the first Funkwhale launch, it is required to run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:259 +#: ../../../CONTRIBUTING.rst:283 msgid "Then you can run everything with::" msgstr "" -#: ../../../CONTRIBUTING.rst:263 +#: ../../../CONTRIBUTING.rst:287 msgid "" "This will launch all services, and output the logs in your current " "terminal window. If you prefer to launch them in the background instead, " @@ -425,209 +464,209 @@ msgid "" "compose -f dev.yml logs --tail=50 --follow``." msgstr "" -#: ../../../CONTRIBUTING.rst:266 +#: ../../../CONTRIBUTING.rst:290 msgid "Once everything is up, you can access the various funkwhale's components:" msgstr "" -#: ../../../CONTRIBUTING.rst:268 +#: ../../../CONTRIBUTING.rst:292 msgid "The Vue webapp, on http://localhost:8000" msgstr "" -#: ../../../CONTRIBUTING.rst:269 +#: ../../../CONTRIBUTING.rst:293 msgid "The API, on http://localhost:8000/api/v1/" msgstr "" -#: ../../../CONTRIBUTING.rst:270 +#: ../../../CONTRIBUTING.rst:294 msgid "The django admin, on http://localhost:8000/api/admin/" msgstr "" -#: ../../../CONTRIBUTING.rst:273 +#: ../../../CONTRIBUTING.rst:297 msgid "Stopping everything" msgstr "" -#: ../../../CONTRIBUTING.rst:275 +#: ../../../CONTRIBUTING.rst:299 msgid "" "Once you're down with your work, you can stop running containers, if any," " with::" msgstr "" -#: ../../../CONTRIBUTING.rst:281 +#: ../../../CONTRIBUTING.rst:305 msgid "Removing everything" msgstr "" -#: ../../../CONTRIBUTING.rst:283 +#: ../../../CONTRIBUTING.rst:307 msgid "" "If you want to wipe your development environment completely (e.g. if you " "want to start over from scratch), just run::" msgstr "" -#: ../../../CONTRIBUTING.rst:287 +#: ../../../CONTRIBUTING.rst:311 msgid "" "This will wipe your containers and data, so please be careful before " "running it." msgstr "" -#: ../../../CONTRIBUTING.rst:289 +#: ../../../CONTRIBUTING.rst:313 msgid "You can keep your data by removing the ``-v`` flag." msgstr "" -#: ../../../CONTRIBUTING.rst:293 +#: ../../../CONTRIBUTING.rst:317 msgid "Working with federation locally" msgstr "" -#: ../../../CONTRIBUTING.rst:295 +#: ../../../CONTRIBUTING.rst:319 msgid "This is not needed unless you need to work on federation-related features." msgstr "" -#: ../../../CONTRIBUTING.rst:297 +#: ../../../CONTRIBUTING.rst:321 msgid "To achieve that, you'll need:" msgstr "" -#: ../../../CONTRIBUTING.rst:299 +#: ../../../CONTRIBUTING.rst:323 msgid "to update your dns resolver to resolve all your .dev hostnames locally" msgstr "" -#: ../../../CONTRIBUTING.rst:300 +#: ../../../CONTRIBUTING.rst:324 msgid "" "a reverse proxy (such as traefik) to catch those .dev requests and and " "with https certificate" msgstr "" -#: ../../../CONTRIBUTING.rst:302 +#: ../../../CONTRIBUTING.rst:326 msgid "two instances (or more) running locally, following the regular dev setup" msgstr "" -#: ../../../CONTRIBUTING.rst:305 +#: ../../../CONTRIBUTING.rst:329 msgid "Resolve .dev names locally" msgstr "" -#: ../../../CONTRIBUTING.rst:307 +#: ../../../CONTRIBUTING.rst:331 msgid "If you use dnsmasq, this is as simple as doing::" msgstr "" -#: ../../../CONTRIBUTING.rst:312 +#: ../../../CONTRIBUTING.rst:336 msgid "If you use NetworkManager with dnsmasq integration, use this instead::" msgstr "" -#: ../../../CONTRIBUTING.rst:318 +#: ../../../CONTRIBUTING.rst:342 msgid "Add wildcard certificate to the trusted certificates" msgstr "" -#: ../../../CONTRIBUTING.rst:320 +#: ../../../CONTRIBUTING.rst:344 msgid "Simply copy bundled certificates::" msgstr "" -#: ../../../CONTRIBUTING.rst:325 +#: ../../../CONTRIBUTING.rst:349 msgid "This certificate is a wildcard for ``*.funkwhale.test``" msgstr "" -#: ../../../CONTRIBUTING.rst:328 +#: ../../../CONTRIBUTING.rst:352 msgid "Run a reverse proxy for your instances" msgstr "" -#: ../../../CONTRIBUTING.rst:332 +#: ../../../CONTRIBUTING.rst:356 msgid "Launch everything" msgstr "" -#: ../../../CONTRIBUTING.rst:334 +#: ../../../CONTRIBUTING.rst:358 msgid "Launch the traefik proxy::" msgstr "" -#: ../../../CONTRIBUTING.rst:338 +#: ../../../CONTRIBUTING.rst:362 msgid "" "Then, in separate terminals, you can setup as many different instances as" " you need::" msgstr "" -#: ../../../CONTRIBUTING.rst:347 +#: ../../../CONTRIBUTING.rst:371 msgid "" "Note that by default, if you don't export the COMPOSE_PROJECT_NAME, we " "will default to node1 as the name of your instance." msgstr "" -#: ../../../CONTRIBUTING.rst:350 +#: ../../../CONTRIBUTING.rst:374 msgid "" "Assuming your project name is ``node1``, your server will be reachable at" " ``https://node1.funkwhale.test/``. Not that you'll have to trust the SSL" " Certificate as it's self signed." msgstr "" -#: ../../../CONTRIBUTING.rst:354 +#: ../../../CONTRIBUTING.rst:378 msgid "" "When working on federation with traefik, ensure you have this in your " "``env``::" msgstr "" -#: ../../../CONTRIBUTING.rst:367 +#: ../../../CONTRIBUTING.rst:391 msgid "Typical workflow for a contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:369 +#: ../../../CONTRIBUTING.rst:393 msgid "" "Fork the project if you did not already or if you do not have access to " "the main repository" msgstr "" -#: ../../../CONTRIBUTING.rst:370 +#: ../../../CONTRIBUTING.rst:394 msgid "" "Checkout the development branch and pull most recent changes: ``git " "checkout develop && git pull``" msgstr "" -#: ../../../CONTRIBUTING.rst:371 +#: ../../../CONTRIBUTING.rst:395 msgid "" "If working on an issue, assign yourself to the issue. Otherwise, consider" " open an issue before starting to work on something, especially for new " "features." msgstr "" -#: ../../../CONTRIBUTING.rst:372 +#: ../../../CONTRIBUTING.rst:396 msgid "" "Create a dedicated branch for your work ``42-awesome-fix``. It is good " "practice to prefix your branch name with the ID of the issue you are " "solving." msgstr "" -#: ../../../CONTRIBUTING.rst:373 +#: ../../../CONTRIBUTING.rst:397 msgid "Work on your stuff" msgstr "" -#: ../../../CONTRIBUTING.rst:374 +#: ../../../CONTRIBUTING.rst:398 msgid "" "[Optional] Consider running ``yarn lint`` in ``front`` if you changed " "something there. Consider fixing some linting errors in the files you " "touched." msgstr "" -#: ../../../CONTRIBUTING.rst:376 +#: ../../../CONTRIBUTING.rst:400 msgid "Commit small, atomic changes to make it easier to review your contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:377 +#: ../../../CONTRIBUTING.rst:401 msgid "" "Add a changelog fragment to summarize your changes: ``echo \"Implemented " "awesome stuff (#42)\" > changes/changelog.d/42.feature``" msgstr "" -#: ../../../CONTRIBUTING.rst:378 +#: ../../../CONTRIBUTING.rst:402 msgid "Push your branch" msgstr "" -#: ../../../CONTRIBUTING.rst:379 +#: ../../../CONTRIBUTING.rst:403 msgid "Create your merge request" msgstr "" -#: ../../../CONTRIBUTING.rst:380 +#: ../../../CONTRIBUTING.rst:404 msgid "" "Take a step back and enjoy, we're really grateful you did all of this and" " took the time to contribute!" msgstr "" -#: ../../../CONTRIBUTING.rst:383 +#: ../../../CONTRIBUTING.rst:407 msgid "Changelog management" msgstr "" -#: ../../../CONTRIBUTING.rst:385 +#: ../../../CONTRIBUTING.rst:409 msgid "" "To ensure we have extensive and well-structured changelog, any " "significant work such as closing an issue must include a changelog " @@ -637,47 +676,47 @@ msgid "" "review ;)" msgstr "" -#: ../../../CONTRIBUTING.rst:391 +#: ../../../CONTRIBUTING.rst:415 msgid "" "Changelog fragments are text files that can contain one or multiple lines" " that describe the changes occurring in a bunch of commits. Those files " "reside in ``changes/changelog.d``." msgstr "" -#: ../../../CONTRIBUTING.rst:396 +#: ../../../CONTRIBUTING.rst:420 msgid "Content" msgstr "" -#: ../../../CONTRIBUTING.rst:398 +#: ../../../CONTRIBUTING.rst:422 msgid "A typical fragment looks like that:" msgstr "" -#: ../../../CONTRIBUTING.rst:400 +#: ../../../CONTRIBUTING.rst:424 msgid "Fixed broken audio player on Chrome 42 for ogg files (#567)" msgstr "" -#: ../../../CONTRIBUTING.rst:402 +#: ../../../CONTRIBUTING.rst:426 msgid "" "If the work fixes one or more issues, the issue number should be included" " at the end of the fragment (``(#567)`` is the issue number in the " "previous example)." msgstr "" -#: ../../../CONTRIBUTING.rst:405 +#: ../../../CONTRIBUTING.rst:429 msgid "" "If your work is not related to a specific issue, use the merge request " "identifier instead, like this:" msgstr "" -#: ../../../CONTRIBUTING.rst:408 +#: ../../../CONTRIBUTING.rst:432 msgid "Fixed a typo in landing page copy (!342)" msgstr "" -#: ../../../CONTRIBUTING.rst:411 +#: ../../../CONTRIBUTING.rst:435 msgid "Naming" msgstr "" -#: ../../../CONTRIBUTING.rst:413 +#: ../../../CONTRIBUTING.rst:437 msgid "" "Fragment files should respect the following naming pattern: " "``changes/changelog.d/.``. Name can be anything " @@ -685,71 +724,71 @@ msgid "" "are fixing. Category can be one of:" msgstr "" -#: ../../../CONTRIBUTING.rst:417 +#: ../../../CONTRIBUTING.rst:441 msgid "``feature``: for new features" msgstr "" -#: ../../../CONTRIBUTING.rst:418 +#: ../../../CONTRIBUTING.rst:442 msgid "``enhancement``: for enhancements on existing features" msgstr "" -#: ../../../CONTRIBUTING.rst:419 +#: ../../../CONTRIBUTING.rst:443 msgid "``bugfix``: for bugfixes" msgstr "" -#: ../../../CONTRIBUTING.rst:420 +#: ../../../CONTRIBUTING.rst:444 msgid "``doc``: for documentation" msgstr "" -#: ../../../CONTRIBUTING.rst:421 +#: ../../../CONTRIBUTING.rst:445 msgid "``i18n``: for internationalization-related work" msgstr "" -#: ../../../CONTRIBUTING.rst:422 +#: ../../../CONTRIBUTING.rst:446 msgid "``misc``: for anything else" msgstr "" -#: ../../../CONTRIBUTING.rst:425 +#: ../../../CONTRIBUTING.rst:449 msgid "Shortcuts" msgstr "" -#: ../../../CONTRIBUTING.rst:427 +#: ../../../CONTRIBUTING.rst:451 msgid "" "Here is a shortcut you can use/adapt to easily create new fragments from " "command-line:" msgstr "" -#: ../../../CONTRIBUTING.rst:436 +#: ../../../CONTRIBUTING.rst:460 msgid "" "You can of course create fragments by hand in your text editor, or from " "Gitlab's interface as well." msgstr "" -#: ../../../CONTRIBUTING.rst:440 +#: ../../../CONTRIBUTING.rst:464 msgid "Internationalization" msgstr "" -#: ../../../CONTRIBUTING.rst:442 +#: ../../../CONTRIBUTING.rst:466 msgid "" "We're using https://github.com/Polyconseil/vue-gettext to manage i18n in " "the project." msgstr "" -#: ../../../CONTRIBUTING.rst:444 +#: ../../../CONTRIBUTING.rst:468 msgid "" "When working on the front-end, any end-user string should be marked as a " "translatable string, with the proper context, as described below." msgstr "" -#: ../../../CONTRIBUTING.rst:448 +#: ../../../CONTRIBUTING.rst:472 msgid "Translations in HTML" msgstr "" -#: ../../../CONTRIBUTING.rst:450 +#: ../../../CONTRIBUTING.rst:474 msgid "Translations in HTML use the ```` tag::" msgstr "" -#: ../../../CONTRIBUTING.rst:474 +#: ../../../CONTRIBUTING.rst:498 msgid "" "Anything between the `` and `` delimiters will be " "considered as a translatable string. You can use variables in the " @@ -757,55 +796,55 @@ msgid "" "directive, and reference them like this: ``val value is %{ value }``." msgstr "" -#: ../../../CONTRIBUTING.rst:478 +#: ../../../CONTRIBUTING.rst:502 msgid "" "For pluralization, you need to use ``translate-params`` in conjunction " "with ``translate-plural`` and ``translate-n``:" msgstr "" -#: ../../../CONTRIBUTING.rst:480 +#: ../../../CONTRIBUTING.rst:504 msgid "" "``translate-params`` should contain the variable you're using for " "pluralization (which is usually shown to the user)" msgstr "" -#: ../../../CONTRIBUTING.rst:481 +#: ../../../CONTRIBUTING.rst:505 msgid "``translate-n`` should match the same variable" msgstr "" -#: ../../../CONTRIBUTING.rst:482 +#: ../../../CONTRIBUTING.rst:506 msgid "" "The ```` delimiters contain the non-pluralized version of your" " string" msgstr "" -#: ../../../CONTRIBUTING.rst:483 +#: ../../../CONTRIBUTING.rst:507 msgid "" "The ``translate-plural`` directive contains the pluralized version of " "your string" msgstr "" -#: ../../../CONTRIBUTING.rst:487 +#: ../../../CONTRIBUTING.rst:511 msgid "Translations in javascript" msgstr "" -#: ../../../CONTRIBUTING.rst:489 +#: ../../../CONTRIBUTING.rst:513 msgid "" "Translations in javascript work by calling the ``this.$*gettext`` " "functions::" msgstr "" -#: ../../../CONTRIBUTING.rst:504 +#: ../../../CONTRIBUTING.rst:528 msgid "" "The first argument of the ``$pgettext`` and ``$npgettext`` functions is " "the string context." msgstr "" -#: ../../../CONTRIBUTING.rst:507 +#: ../../../CONTRIBUTING.rst:531 msgid "Contextualization" msgstr "" -#: ../../../CONTRIBUTING.rst:509 +#: ../../../CONTRIBUTING.rst:533 msgid "" "Translation contexts provided via the ``translate-context`` directive and" " the ``$pgettext`` and ``$npgettext`` are never shown to end users but " @@ -814,7 +853,7 @@ msgid "" "``May``, which can refer a month or a verb." msgstr "" -#: ../../../CONTRIBUTING.rst:513 +#: ../../../CONTRIBUTING.rst:537 msgid "" "While we could in theory use free form context, like ``This string is " "inside a button, in the main page, and is a call to action``, Funkwhale " @@ -823,472 +862,472 @@ msgid "" "would be: ``Content/Home/Button/Call to action``." msgstr "" -#: ../../../CONTRIBUTING.rst:517 +#: ../../../CONTRIBUTING.rst:541 msgid "This hierarchical structure is made of several parts:" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "" "The location part, which is required and refers to the big blocks found " "in Funkwhale UI where the translated string is displayed:" msgstr "" -#: ../../../CONTRIBUTING.rst:520 +#: ../../../CONTRIBUTING.rst:544 msgid "``Content``" msgstr "" -#: ../../../CONTRIBUTING.rst:521 +#: ../../../CONTRIBUTING.rst:545 msgid "``Footer``" msgstr "" -#: ../../../CONTRIBUTING.rst:522 +#: ../../../CONTRIBUTING.rst:546 msgid "``Head``" msgstr "" -#: ../../../CONTRIBUTING.rst:523 ../../../CONTRIBUTING.rst:567 +#: ../../../CONTRIBUTING.rst:547 ../../../CONTRIBUTING.rst:591 msgid "``Menu``" msgstr "" -#: ../../../CONTRIBUTING.rst:524 +#: ../../../CONTRIBUTING.rst:548 msgid "``Popup``" msgstr "" -#: ../../../CONTRIBUTING.rst:525 +#: ../../../CONTRIBUTING.rst:549 msgid "``Sidebar``" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "``*`` for strings that are not tied to a specific location" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "" "The feature part, which is required, and refers to the feature associated" " with the translated string:" msgstr "" -#: ../../../CONTRIBUTING.rst:529 +#: ../../../CONTRIBUTING.rst:553 msgid "``About``" msgstr "" -#: ../../../CONTRIBUTING.rst:530 +#: ../../../CONTRIBUTING.rst:554 msgid "``Admin``" msgstr "" -#: ../../../CONTRIBUTING.rst:531 +#: ../../../CONTRIBUTING.rst:555 msgid "``Album``" msgstr "" -#: ../../../CONTRIBUTING.rst:532 +#: ../../../CONTRIBUTING.rst:556 msgid "``Artist``" msgstr "" -#: ../../../CONTRIBUTING.rst:533 +#: ../../../CONTRIBUTING.rst:557 msgid "``Embed``" msgstr "" -#: ../../../CONTRIBUTING.rst:534 +#: ../../../CONTRIBUTING.rst:558 msgid "``Home``" msgstr "" -#: ../../../CONTRIBUTING.rst:535 +#: ../../../CONTRIBUTING.rst:559 msgid "``Login``" msgstr "" -#: ../../../CONTRIBUTING.rst:536 +#: ../../../CONTRIBUTING.rst:560 msgid "``Library``" msgstr "" -#: ../../../CONTRIBUTING.rst:537 +#: ../../../CONTRIBUTING.rst:561 msgid "``Moderation``" msgstr "" -#: ../../../CONTRIBUTING.rst:538 +#: ../../../CONTRIBUTING.rst:562 msgid "``Player``" msgstr "" -#: ../../../CONTRIBUTING.rst:539 +#: ../../../CONTRIBUTING.rst:563 msgid "``Playlist``" msgstr "" -#: ../../../CONTRIBUTING.rst:540 +#: ../../../CONTRIBUTING.rst:564 msgid "``Profile``" msgstr "" -#: ../../../CONTRIBUTING.rst:541 +#: ../../../CONTRIBUTING.rst:565 msgid "``Favorites``" msgstr "" -#: ../../../CONTRIBUTING.rst:542 +#: ../../../CONTRIBUTING.rst:566 msgid "``Notifications``" msgstr "" -#: ../../../CONTRIBUTING.rst:543 +#: ../../../CONTRIBUTING.rst:567 msgid "``Radio``" msgstr "" -#: ../../../CONTRIBUTING.rst:544 +#: ../../../CONTRIBUTING.rst:568 msgid "``Search``" msgstr "" -#: ../../../CONTRIBUTING.rst:545 +#: ../../../CONTRIBUTING.rst:569 msgid "``Settings``" msgstr "" -#: ../../../CONTRIBUTING.rst:546 +#: ../../../CONTRIBUTING.rst:570 msgid "``Signup``" msgstr "" -#: ../../../CONTRIBUTING.rst:547 +#: ../../../CONTRIBUTING.rst:571 msgid "``Track``" msgstr "" -#: ../../../CONTRIBUTING.rst:548 +#: ../../../CONTRIBUTING.rst:572 msgid "``Queue``" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "``*`` for strings that are not tied to a specific feature" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "" "The component part, which is required and refers to the type of element " "that contain the string:" msgstr "" -#: ../../../CONTRIBUTING.rst:552 +#: ../../../CONTRIBUTING.rst:576 msgid "``Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:553 +#: ../../../CONTRIBUTING.rst:577 msgid "``Card``" msgstr "" -#: ../../../CONTRIBUTING.rst:554 +#: ../../../CONTRIBUTING.rst:578 msgid "``Checkbox``" msgstr "" -#: ../../../CONTRIBUTING.rst:555 +#: ../../../CONTRIBUTING.rst:579 msgid "``Dropdown``" msgstr "" -#: ../../../CONTRIBUTING.rst:556 +#: ../../../CONTRIBUTING.rst:580 msgid "``Error message``" msgstr "" -#: ../../../CONTRIBUTING.rst:557 +#: ../../../CONTRIBUTING.rst:581 msgid "``Form``" msgstr "" -#: ../../../CONTRIBUTING.rst:558 +#: ../../../CONTRIBUTING.rst:582 msgid "``Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:559 +#: ../../../CONTRIBUTING.rst:583 msgid "``Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:560 +#: ../../../CONTRIBUTING.rst:584 msgid "``Hidden text``" msgstr "" -#: ../../../CONTRIBUTING.rst:561 +#: ../../../CONTRIBUTING.rst:585 msgid "``Icon``" msgstr "" -#: ../../../CONTRIBUTING.rst:562 +#: ../../../CONTRIBUTING.rst:586 msgid "``Input``" msgstr "" -#: ../../../CONTRIBUTING.rst:563 +#: ../../../CONTRIBUTING.rst:587 msgid "``Image``" msgstr "" -#: ../../../CONTRIBUTING.rst:564 +#: ../../../CONTRIBUTING.rst:588 msgid "``Label``" msgstr "" -#: ../../../CONTRIBUTING.rst:565 +#: ../../../CONTRIBUTING.rst:589 msgid "``Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:566 +#: ../../../CONTRIBUTING.rst:590 msgid "``List item``" msgstr "" -#: ../../../CONTRIBUTING.rst:568 +#: ../../../CONTRIBUTING.rst:592 msgid "``Message``" msgstr "" -#: ../../../CONTRIBUTING.rst:569 +#: ../../../CONTRIBUTING.rst:593 msgid "``Paragraph``" msgstr "" -#: ../../../CONTRIBUTING.rst:570 +#: ../../../CONTRIBUTING.rst:594 msgid "``Placeholder``" msgstr "" -#: ../../../CONTRIBUTING.rst:571 +#: ../../../CONTRIBUTING.rst:595 msgid "``Tab``" msgstr "" -#: ../../../CONTRIBUTING.rst:572 +#: ../../../CONTRIBUTING.rst:596 msgid "``Table``" msgstr "" -#: ../../../CONTRIBUTING.rst:573 +#: ../../../CONTRIBUTING.rst:597 msgid "``Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:574 +#: ../../../CONTRIBUTING.rst:598 msgid "``Tooltip``" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "``*`` for strings that are not tied to a specific component" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "" "The detail part, which is optional and refers to the contents of the " "string itself, such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:578 +#: ../../../CONTRIBUTING.rst:602 msgid "``Adjective``" msgstr "" -#: ../../../CONTRIBUTING.rst:579 +#: ../../../CONTRIBUTING.rst:603 msgid "``Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:580 +#: ../../../CONTRIBUTING.rst:604 msgid "``Noun``" msgstr "" -#: ../../../CONTRIBUTING.rst:581 +#: ../../../CONTRIBUTING.rst:605 msgid "``Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:582 +#: ../../../CONTRIBUTING.rst:606 msgid "``Unit``" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "``Verb``" msgstr "" -#: ../../../CONTRIBUTING.rst:585 +#: ../../../CONTRIBUTING.rst:609 msgid "Here are a few examples of valid context hierarchies:" msgstr "" -#: ../../../CONTRIBUTING.rst:587 +#: ../../../CONTRIBUTING.rst:611 msgid "``Sidebar/Player/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:588 +#: ../../../CONTRIBUTING.rst:612 msgid "``Content/Home/Button/Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:589 +#: ../../../CONTRIBUTING.rst:613 msgid "``Footer/*/Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:590 +#: ../../../CONTRIBUTING.rst:614 msgid "``*/*/*/Verb, Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:591 +#: ../../../CONTRIBUTING.rst:615 msgid "``Popup/Playlist/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:592 +#: ../../../CONTRIBUTING.rst:616 msgid "``Content/Admin/Table.Label/Short, Noun (Value is a date)``" msgstr "" -#: ../../../CONTRIBUTING.rst:594 +#: ../../../CONTRIBUTING.rst:618 msgid "" "It's possible to nest multiple component parts to reach a higher level of" " detail. The component parts are then separated by a dot:" msgstr "" -#: ../../../CONTRIBUTING.rst:596 +#: ../../../CONTRIBUTING.rst:620 msgid "``Sidebar/Queue/Tab.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:597 +#: ../../../CONTRIBUTING.rst:621 msgid "``Content/*/Button.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:598 +#: ../../../CONTRIBUTING.rst:622 msgid "``Content/*/Table.Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:599 +#: ../../../CONTRIBUTING.rst:623 msgid "``Footer/*/List item.Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:600 +#: ../../../CONTRIBUTING.rst:624 msgid "``Content/*/Form.Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:603 +#: ../../../CONTRIBUTING.rst:627 msgid "Collecting translatable strings" msgstr "" -#: ../../../CONTRIBUTING.rst:605 +#: ../../../CONTRIBUTING.rst:629 msgid "" "If you want to ensure your translatable strings are correctly marked for " "translation, you can try to extract them." msgstr "" -#: ../../../CONTRIBUTING.rst:608 +#: ../../../CONTRIBUTING.rst:632 msgid "" "Extraction is done by calling ``yarn run i18n-extract``, which will pull " "all the strings from source files and put them in a PO files." msgstr "" -#: ../../../CONTRIBUTING.rst:611 +#: ../../../CONTRIBUTING.rst:635 msgid "" "You can then inspect the PO files to ensure everything is fine (but don't" " commit them, it's not needed)." msgstr "" -#: ../../../CONTRIBUTING.rst:614 +#: ../../../CONTRIBUTING.rst:638 msgid "Contributing to the API" msgstr "" -#: ../../../CONTRIBUTING.rst:617 +#: ../../../CONTRIBUTING.rst:641 msgid "Project structure" msgstr "" -#: ../../../CONTRIBUTING.rst:631 +#: ../../../CONTRIBUTING.rst:655 msgid "" "Unless trivial, API contributions must include unittests to ensure your " "fix or feature is working as expected and won't break in the future" msgstr "" -#: ../../../CONTRIBUTING.rst:635 ../../../CONTRIBUTING.rst:793 +#: ../../../CONTRIBUTING.rst:659 ../../../CONTRIBUTING.rst:817 msgid "Running tests" msgstr "" -#: ../../../CONTRIBUTING.rst:637 +#: ../../../CONTRIBUTING.rst:661 msgid "To run the pytest test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:641 +#: ../../../CONTRIBUTING.rst:665 msgid "" "This is regular pytest, so you can use any arguments/options that pytest " "usually accept::" msgstr "" -#: ../../../CONTRIBUTING.rst:651 +#: ../../../CONTRIBUTING.rst:675 msgid "Writing tests" msgstr "" -#: ../../../CONTRIBUTING.rst:653 +#: ../../../CONTRIBUTING.rst:677 msgid "" "Although teaching you how to write unit tests is outside of the scope of " "this document, you'll find below a collection of tips, snippets and " "resources you can use if you want to learn on that subject." msgstr "" -#: ../../../CONTRIBUTING.rst:657 +#: ../../../CONTRIBUTING.rst:681 msgid "Useful links:" msgstr "" -#: ../../../CONTRIBUTING.rst:659 +#: ../../../CONTRIBUTING.rst:683 msgid "" "`A quick introduction to unit test writing with pytest " "`_" msgstr "" -#: ../../../CONTRIBUTING.rst:660 +#: ../../../CONTRIBUTING.rst:684 msgid "" "`A complete guide to Test-Driven Development (although not using Pytest) " "`_" msgstr "" -#: ../../../CONTRIBUTING.rst:661 +#: ../../../CONTRIBUTING.rst:685 msgid "" "`pytest `_: documentation of our " "testing engine and runner" msgstr "" -#: ../../../CONTRIBUTING.rst:662 +#: ../../../CONTRIBUTING.rst:686 msgid "" "`pytest-mock `_: project page of " "our mocking engine" msgstr "" -#: ../../../CONTRIBUTING.rst:663 +#: ../../../CONTRIBUTING.rst:687 msgid "" "`factory-boy `_: documentation of " "factory-boy, which we use to easily generate fake objects and data" msgstr "" -#: ../../../CONTRIBUTING.rst:665 +#: ../../../CONTRIBUTING.rst:689 msgid "Recommendations:" msgstr "" -#: ../../../CONTRIBUTING.rst:667 +#: ../../../CONTRIBUTING.rst:691 msgid "" "Test files must target a module and mimic ``funkwhale_api`` directory " "structure: if you're writing tests for ``funkwhale_api/myapp/views.py``, " "you should put thoses tests in ``tests/myapp/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:668 +#: ../../../CONTRIBUTING.rst:692 msgid "" "Tests should be small and test one thing. If you need to test multiple " "things, write multiple tests." msgstr "" -#: ../../../CONTRIBUTING.rst:670 +#: ../../../CONTRIBUTING.rst:694 msgid "" "We provide a lot of utils and fixtures to make the process of writing " "tests as painless as possible. You'll find some usage examples below." msgstr "" -#: ../../../CONTRIBUTING.rst:673 +#: ../../../CONTRIBUTING.rst:697 msgid "Use factories to create arbitrary objects:" msgstr "" -#: ../../../CONTRIBUTING.rst:708 +#: ../../../CONTRIBUTING.rst:732 msgid "" "We offer factories for almost if not all models. Factories are located in" " a ``factories.py`` file inside each app." msgstr "" -#: ../../../CONTRIBUTING.rst:711 +#: ../../../CONTRIBUTING.rst:735 msgid "" "Mocking: mocking is the process of faking some logic in our code. This is" " useful when testing components that depend on each other:" msgstr "" -#: ../../../CONTRIBUTING.rst:766 +#: ../../../CONTRIBUTING.rst:790 msgid "" "Views: you can find some readable views tests in file: " "``api/tests/users/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:770 +#: ../../../CONTRIBUTING.rst:794 msgid "" "A complete list of available-fixtures is available by running ``docker-" "compose -f dev.yml run --rm api pytest --fixtures``" msgstr "" -#: ../../../CONTRIBUTING.rst:775 +#: ../../../CONTRIBUTING.rst:799 msgid "Contributing to the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:778 +#: ../../../CONTRIBUTING.rst:802 msgid "Styles and themes" msgstr "" -#: ../../../CONTRIBUTING.rst:780 +#: ../../../CONTRIBUTING.rst:804 msgid "" "Our UI framework is Fomantic UI (https://fomantic-ui.com/), and " "Funkwhale's custom styles are written in SCSS. All the styles are " @@ -1296,26 +1335,26 @@ msgid "" "Fomantic UI styles and components." msgstr "" -#: ../../../CONTRIBUTING.rst:783 +#: ../../../CONTRIBUTING.rst:807 msgid "" "We're applying several changes on top of the Fomantic CSS files, before " "they are imported:" msgstr "" -#: ../../../CONTRIBUTING.rst:785 +#: ../../../CONTRIBUTING.rst:809 msgid "" "Many hardcoded color values are replaced by CSS vars: e.g ``color: " "orange`` is replaced by ``color: var(--vibrant-color)``. This makes " "theming way easier." msgstr "" -#: ../../../CONTRIBUTING.rst:786 +#: ../../../CONTRIBUTING.rst:810 msgid "" "Unused components variations and icons are stripped from the source " "files, in order to reduce the final size of our CSS files" msgstr "" -#: ../../../CONTRIBUTING.rst:788 +#: ../../../CONTRIBUTING.rst:812 msgid "" "This changes are applied automatically when running ``yarn install``, " "through a ``postinstall`` hook. Internally, ``front/scripts/fix-fomantic-" @@ -1324,33 +1363,33 @@ msgid "" " components variations that were stripped in order to use them." msgstr "" -#: ../../../CONTRIBUTING.rst:795 +#: ../../../CONTRIBUTING.rst:819 msgid "To run the front-end test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:799 +#: ../../../CONTRIBUTING.rst:823 msgid "" "We also support a \"watch and test\" mode were we continually relaunch " "tests when changes are recorded on the file system::" msgstr "" -#: ../../../CONTRIBUTING.rst:804 +#: ../../../CONTRIBUTING.rst:828 msgid "The latter is especially useful when you are debugging failing tests." msgstr "" -#: ../../../CONTRIBUTING.rst:808 +#: ../../../CONTRIBUTING.rst:832 msgid "The front-end test suite coverage is still pretty low" msgstr "" -#: ../../../CONTRIBUTING.rst:812 +#: ../../../CONTRIBUTING.rst:836 msgid "Making a release" msgstr "" -#: ../../../CONTRIBUTING.rst:814 +#: ../../../CONTRIBUTING.rst:838 msgid "To make a new 3.4 release::" msgstr "" -#: ../../../CONTRIBUTING.rst:853 +#: ../../../CONTRIBUTING.rst:877 msgid "" "Then, visit https://dev.funkwhale.audio/funkwhale/funkwhale/-/tags, copy-" "paste the changelog on the corresponding tag, and announce the good news " diff --git a/docs/locales/en_US/LC_MESSAGES/developers/authentication.po b/docs/locales/en_US/LC_MESSAGES/developers/authentication.po index 10e335ae2..0bc716592 100644 --- a/docs/locales/en_US/LC_MESSAGES/developers/authentication.po +++ b/docs/locales/en_US/LC_MESSAGES/developers/authentication.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -174,31 +174,35 @@ msgid "" "request:" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:67 +msgid "Oauth scopes" +msgstr "" + +#: ../../developers/authentication.rst:70 msgid "Scope" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:71 msgid "Description" msgstr "" -#: ../../developers/authentication.rst:71 +#: ../../developers/authentication.rst:72 msgid "``read``" msgstr "" -#: ../../developers/authentication.rst:71 -msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#: ../../developers/authentication.rst:73 +msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)." msgstr "" #: ../../developers/authentication.rst:74 msgid "``write``" msgstr "" -#: ../../developers/authentication.rst:74 -msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#: ../../developers/authentication.rst:75 +msgid "Read-only access to all data (equivalent to all ``write:*`` scopes)." msgstr "" -#: ../../developers/authentication.rst:77 +#: ../../developers/authentication.rst:76 msgid "``:profile``" msgstr "" @@ -206,75 +210,84 @@ msgstr "" msgid "Access to profile data (e-mail address, username, etc.)" msgstr "" -#: ../../developers/authentication.rst:79 +#: ../../developers/authentication.rst:78 msgid "``:libraries``" msgstr "" #: ../../developers/authentication.rst:79 -msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +msgid "Access to library data (uploads, libraries, tracks, albums, artists…)" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:80 msgid "``:favorites``" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:81 msgid "Access to favorites" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:82 msgid "``:listenings``" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:83 msgid "Access to history" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:84 msgid "``:follows``" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:85 msgid "Access to followers" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:86 msgid "``:playlists``" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:87 msgid "Access to playlists" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:88 msgid "``:radios``" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:89 msgid "Access to radios" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:90 msgid "``:filters``" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:91 msgid "Access to content filters" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:92 msgid "``:notifications``" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:93 msgid "Access to notifications" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:94 msgid "``:edits``" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:95 msgid "Access to metadata edits" msgstr "" +#~ msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#~ msgstr "" + +#~ msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#~ msgstr "" + +#~ msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +#~ msgstr "" + diff --git a/docs/locales/en_US/LC_MESSAGES/user_documentation/libraries/tag_music.po b/docs/locales/en_US/LC_MESSAGES/user_documentation/libraries/tag_music.po index c6373544d..be784e262 100644 --- a/docs/locales/en_US/LC_MESSAGES/user_documentation/libraries/tag_music.po +++ b/docs/locales/en_US/LC_MESSAGES/user_documentation/libraries/tag_music.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -40,118 +40,309 @@ msgstr "" msgid "This guide shows you how to tag your content with MusicBrainz Picard." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:34 -msgid "Tag content" +#: ../../user_documentation/libraries/tag_music.md:19 +msgid "Name" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:36 -msgid "To tag content using MusicBrainz Picard:" +#: ../../user_documentation/libraries/tag_music.md:20 +msgid "Description" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:21 +msgid "Example value" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:22 +msgid "`Title`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:23 +msgid "The track title." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:24 +msgid "`Letting you`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:25 +msgid "`Artist`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:26 +msgid "The artist name." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:27 +msgid "`Nine Inch Nails`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:28 +msgid "`Album`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:29 +msgid "" +"The album title. If none is provided, an `[Unknown Album]` entry is " +"created." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:30 +msgid "`The Slip`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:31 +msgid "`Album artist`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:32 +msgid "The album artist name (can be different than the track artist)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:33 +msgid "`Trent Reznor`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:34 +msgid "`Genre`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:35 +msgid "" +"A comma separated list of tags to associate with the track. Other " +"supported separators: `;` and `/`." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:37 +msgid "`Industrial, Metal`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:38 +msgid "`Track number`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:39 +msgid "The position of the track in the album/release." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:40 +msgid "`4`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:41 +msgid "`Disc number`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:42 +msgid "The disc number (in case of multi-disc albums)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:43 +msgid "`1`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:44 +msgid "`Date`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:45 +msgid "The release date of the track or album." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:46 +msgid "`2019`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:47 +msgid "`License`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:48 +msgid "" +"The license associated with this work. The first URL found is checked " +"against our list of supported licenses." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:50 +#: ../../user_documentation/libraries/tag_music.md:54 +msgid "`CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:51 +msgid "`Copyright`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:52 +msgid "" +"The license associated with this work. The first URL found is checked " +"against our list of supported licenses. Used if no license found in the" +" `License` tag." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:55 +msgid "`Pictures`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:56 +msgid "The first embeded picture found is used as the album cover." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:58 +msgid "`MusicBrainz Recording ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:59 +msgid "The MusicBrainz ID for the recording." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:60 +msgid "`99244237-850b-4a93-904d-57305bcadb4e`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:61 +msgid "`MusicBrainz Album ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:62 +msgid "The MusicBrainz ID for the album." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:63 +msgid "`bca982fd-ab73-3c9f-ad07-9104a4f53a32`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:64 +msgid "`MusicBrainz Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:65 +msgid "The MusicBrainz ID for the artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:66 +#: ../../user_documentation/libraries/tag_music.md:69 +msgid "`b7ffd2af-418f-4be2-bdd1-22f8b48613da`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:67 +msgid "`MusicBrainz Album Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:68 +msgid "The MusicBrainz ID for the album artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:74 +msgid "Tag content" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:76 +msgid "To tag content using MusicBrainz Picard:" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:78 msgid "" "Select {guilabel}`Add Files` to add individual files or {guilabel}`Add " "Folder` to add a directory of files." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:39 +#: ../../user_documentation/libraries/tag_music.md:79 msgid "Select the files or directory you want to tag." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:40 +#: ../../user_documentation/libraries/tag_music.md:80 msgid "" "Picard shows the files in the left panel. Picard moves files to the right" " panel as it tags them. If Picard doesn't tag a file automatically, " "select {guilabel}`Scan`." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:41 +#: ../../user_documentation/libraries/tag_music.md:81 msgid "" "Check a file's tags by highlighting it and looking at the details in the " "bottom panel. If Picard has applied the wrong tags, look for [alternative" " versions](#alternative-versions)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:42 -#: ../../user_documentation/libraries/tag_music.md:56 -#: ../../user_documentation/libraries/tag_music.md:65 +#: ../../user_documentation/libraries/tag_music.md:82 +#: ../../user_documentation/libraries/tag_music.md:96 +#: ../../user_documentation/libraries/tag_music.md:105 msgid "" "Select {guilabel}`Save` or hit {kbd}`ctrl+s` ({kbd}`cmd+s` on macOS) to " "save the tags to the files." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:44 +#: ../../user_documentation/libraries/tag_music.md:84 msgid "" "That's it! You've added ID3 tags to your files. You can now [add these to" " a library](upload_content.md)" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:46 +#: ../../user_documentation/libraries/tag_music.md:86 msgid "Alternative versions" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:48 +#: ../../user_documentation/libraries/tag_music.md:88 msgid "" "Picard will choose tags based on details included in your file. Sometimes" " it chooses a different version of a release than the one you want. You " "can choose an alternative version of your content to get the right tags." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:50 +#: ../../user_documentation/libraries/tag_music.md:90 msgid "Alternative albums" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:52 +#: ../../user_documentation/libraries/tag_music.md:92 msgid "If Picard has selected a different version of the album you are tagging:" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:54 +#: ../../user_documentation/libraries/tag_music.md:94 msgid "" "Right-click on the album and hover your mouse over {guilabel}`Other " "versions`. A dropdown list of alternative versions appears." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:55 +#: ../../user_documentation/libraries/tag_music.md:95 msgid "Select the correct release from the list." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:58 +#: ../../user_documentation/libraries/tag_music.md:98 msgid "Alternative tracks" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:60 +#: ../../user_documentation/libraries/tag_music.md:100 msgid "If Picard can't find a release for a track:" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:62 +#: ../../user_documentation/libraries/tag_music.md:102 msgid "" "Right-click on the track and select {guilabel}`Search for Similar " "Tracks…`. A search screen appears." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:63 +#: ../../user_documentation/libraries/tag_music.md:103 msgid "" "Search for your track. Use [MusicBrainz's search " "syntax](https://musicbrainz.org/doc/Indexed_Search_Syntax) for the best " "results." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:64 +#: ../../user_documentation/libraries/tag_music.md:104 msgid "Select the correct track and click on {guilabel}`Load into Picard`." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:67 +#: ../../user_documentation/libraries/tag_music.md:107 msgid "Add items to MusicBrainz" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:69 +#: ../../user_documentation/libraries/tag_music.md:109 msgid "" "If Picard can't find your content, you can add it to MusicBrainz " "yourself. To get started, check out [MusicBrainz's " "guide](https://musicbrainz.org/doc/How_to_Add_a_Release/)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:71 +#: ../../user_documentation/libraries/tag_music.md:111 msgid "Once you have added the content to MusicBrainz, Picard can tag your files." msgstr "" diff --git a/docs/locales/fr/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po b/docs/locales/fr/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po index d3ab493a3..d58e58a47 100644 --- a/docs/locales/fr/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po +++ b/docs/locales/fr/LC_MESSAGES/administrator_documentation/configuration_docs/frontend.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-03 01:32+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -59,11 +59,61 @@ msgstr "" msgid "Create a new config file and populate it with placeholder settings." msgstr "" +#: ../../administrator_documentation/configuration_docs/frontend.md:41 +msgid "Parameter" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:42 +msgid "Data type" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:43 +msgid "Description" +msgstr "" + #: ../../administrator_documentation/configuration_docs/frontend.md:44 -msgid "Configure your reverse proxy" +msgid "Example" msgstr "" #: ../../administrator_documentation/configuration_docs/frontend.md:46 +msgid "`additionalStylesheets`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:47 +msgid "Array" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:48 +msgid "A list of URLs (relative or absolute) pointing to stylesheets." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:49 +msgid "`[\"https://test/theme.css\"]`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:51 +msgid "`defaultServerUrl`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:52 +msgid "URL" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:53 +msgid "" +"The URL of the API server you want to connect the frontend to. Defaults " +"to the current domain." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:54 +msgid "`\"https://api.yourdomain.com\"`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:59 +msgid "Configure your reverse proxy" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:61 msgid "" "Once you've created your {file}`settings.json` file you need to configure" " your reverse proxy to serve it." @@ -73,7 +123,7 @@ msgstr "" msgid "Nginx" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:50 +#: ../../administrator_documentation/configuration_docs/frontend.md:65 msgid "" "Add the following snippet to your {file}`/etc/nginx/sites-" "available/funkwhale.conf` config file:" @@ -83,57 +133,57 @@ msgstr "" msgid "Apache" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:62 +#: ../../administrator_documentation/configuration_docs/frontend.md:77 msgid "Add the following snippet to your webserver configuration:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:70 +#: ../../administrator_documentation/configuration_docs/frontend.md:85 msgid "" "Reload your webserver. You should be able to see the contents of your " "configuration file at `https://yourinstanceurl/settings.json`." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:72 +#: ../../administrator_documentation/configuration_docs/frontend.md:87 msgid "Add a custom theme" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:74 +#: ../../administrator_documentation/configuration_docs/frontend.md:89 msgid "You can use a custom stylesheet to theme your Funkwhale pod. To do this:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:76 +#: ../../administrator_documentation/configuration_docs/frontend.md:91 msgid "Navigate to your {file}`/srv/funkwhale/custom` directory." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:82 +#: ../../administrator_documentation/configuration_docs/frontend.md:97 msgid "Copy your CSS file to this directory, or create a new one." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:94 +#: ../../administrator_documentation/configuration_docs/frontend.md:109 msgid "" "Add the location of your CSS file to the `additionalStylesheets` " "parameter in your {file}`settings.json` file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:107 +#: ../../administrator_documentation/configuration_docs/frontend.md:122 msgid "Add the whole {file}`custom` dir to your webserver configuration." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:111 +#: ../../administrator_documentation/configuration_docs/frontend.md:126 msgid "" "Add the following to your {file}`/etc/nginx/sites-" "available/funkwhale.conf` file:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:122 +#: ../../administrator_documentation/configuration_docs/frontend.md:137 msgid "Add the following to your webserver configuration file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:135 +#: ../../administrator_documentation/configuration_docs/frontend.md:150 msgid "Restart your webserver." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:137 +#: ../../administrator_documentation/configuration_docs/frontend.md:152 msgid "Refresh your Funkwhale app. The background should now be red." msgstr "" diff --git a/docs/locales/fr/LC_MESSAGES/contributing.po b/docs/locales/fr/LC_MESSAGES/contributing.po index 2b994cb55..152abd50e 100644 --- a/docs/locales/fr/LC_MESSAGES/contributing.po +++ b/docs/locales/fr/LC_MESSAGES/contributing.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -32,7 +32,7 @@ msgstr "" msgid "This document will guide you through common operations such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:10 ../../../CONTRIBUTING.rst:117 +#: ../../../CONTRIBUTING.rst:10 ../../../CONTRIBUTING.rst:141 msgid "Setup your development environment" msgstr "" @@ -132,49 +132,88 @@ msgid "" "signed in to the extension automatically in old and new workspaces." msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:62 +msgid "Environment variables" +msgstr "" + +#: ../../../CONTRIBUTING.rst:65 ../../../CONTRIBUTING.rst:88 msgid "Name" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:66 ../../../CONTRIBUTING.rst:89 msgid "Value" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:67 ../../../CONTRIBUTING.rst:90 msgid "Scope" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:68 msgid "``GITLAB_WORKFLOW_INSTANCE_URL``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:69 msgid "``https://dev.funkwhale.audio``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:70 ../../../CONTRIBUTING.rst:73 msgid "``funkwhale/*``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:71 msgid "``GITLAB_WORKFLOW_TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:72 msgid "``TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:70 +#: ../../../CONTRIBUTING.rst:75 msgid "" "The scope ``funkwhale/*`` will ensure that you will be signed into our " "instance on every project that we're hosting, not only Funkwhale itself." msgstr "" -#: ../../../CONTRIBUTING.rst:74 +#: ../../../CONTRIBUTING.rst:79 +msgid "Custom instance url" +msgstr "" + +#: ../../../CONTRIBUTING.rst:81 +msgid "" +"If you want to preview changes on your own Funkwhale server, you can add " +"your domain as an environment variable. This allows you to test your " +"frontend changes against your domain without setting this value each " +"time. To add your domain, set a user environment variable in `your Gitpod" +" settings `_." +msgstr "" + +#: ../../../CONTRIBUTING.rst:85 +msgid "Environment variable" +msgstr "" + +#: ../../../CONTRIBUTING.rst:91 +msgid "``VUE_APP_INSTANCE_URL``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:92 +msgid "``https://funkwhale.example.com``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:93 +msgid "``funkwhale/funkwhale``" +msgstr "" + +#: ../../../CONTRIBUTING.rst:95 +msgid "" +"The scope ``funkwhale/funkwhale`` ensures that this variable only works " +"on Funkwhale." +msgstr "" + +#: ../../../CONTRIBUTING.rst:98 msgid "A quick path to contribute on the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:76 +#: ../../../CONTRIBUTING.rst:100 msgid "" "The next sections of this document include a full installation guide to " "help you setup a local, development version of Funkwhale. If you only " @@ -182,14 +221,14 @@ msgid "" "full development environment, there is another way." msgstr "" -#: ../../../CONTRIBUTING.rst:80 +#: ../../../CONTRIBUTING.rst:104 msgid "" "As the front-end can work with any Funkwhale server, you can work with " "the front-end only, and make it talk with an existing instance (like the " "demo one, or you own instance, if you have one)." msgstr "" -#: ../../../CONTRIBUTING.rst:83 +#: ../../../CONTRIBUTING.rst:107 msgid "" "If even that is too much for you, you can also make your changes without " "any development environment, and open a merge request. We will be able to" @@ -197,133 +236,133 @@ msgid "" " changes, thanks to Gitlab Review apps." msgstr "" -#: ../../../CONTRIBUTING.rst:88 +#: ../../../CONTRIBUTING.rst:112 msgid "Setup front-end only development environment" msgstr "" -#: ../../../CONTRIBUTING.rst:90 +#: ../../../CONTRIBUTING.rst:114 msgid "Clone the repository::" msgstr "" -#: ../../../CONTRIBUTING.rst:96 +#: ../../../CONTRIBUTING.rst:120 msgid "" "Install `nodejs `_ and " "`yarn `_" msgstr "" -#: ../../../CONTRIBUTING.rst:98 +#: ../../../CONTRIBUTING.rst:122 msgid "Install the dependencies::" msgstr "" -#: ../../../CONTRIBUTING.rst:102 +#: ../../../CONTRIBUTING.rst:126 msgid "Compile the translations::" msgstr "" -#: ../../../CONTRIBUTING.rst:106 +#: ../../../CONTRIBUTING.rst:130 msgid "Launch the development server::" msgstr "" -#: ../../../CONTRIBUTING.rst:111 +#: ../../../CONTRIBUTING.rst:135 msgid "" "Make the front-end talk with an existing server (like " "https://demo.funkwhale.audio or https://open.audio), by clicking on the " "corresponding link in the footer" msgstr "" -#: ../../../CONTRIBUTING.rst:114 +#: ../../../CONTRIBUTING.rst:138 msgid "Start hacking!" msgstr "" -#: ../../../CONTRIBUTING.rst:119 +#: ../../../CONTRIBUTING.rst:143 msgid "" "If you want to fix a bug or implement a feature, you'll need to run a " "local, development copy of funkwhale." msgstr "" -#: ../../../CONTRIBUTING.rst:122 +#: ../../../CONTRIBUTING.rst:146 msgid "" "We provide a docker based development environment, which should be both " "easy to setup and work similarly regardless of your development machine " "setup." msgstr "" -#: ../../../CONTRIBUTING.rst:126 +#: ../../../CONTRIBUTING.rst:150 msgid "" "Instructions for bare-metal setup will come in the future (Merge requests" " are welcome)." msgstr "" -#: ../../../CONTRIBUTING.rst:130 +#: ../../../CONTRIBUTING.rst:154 msgid "Installing docker and docker-compose" msgstr "" -#: ../../../CONTRIBUTING.rst:132 +#: ../../../CONTRIBUTING.rst:156 msgid "This is already cover in the relevant documentations:" msgstr "" -#: ../../../CONTRIBUTING.rst:134 +#: ../../../CONTRIBUTING.rst:158 msgid "https://docs.docker.com/install/" msgstr "" -#: ../../../CONTRIBUTING.rst:135 +#: ../../../CONTRIBUTING.rst:159 msgid "https://docs.docker.com/compose/install/" msgstr "" -#: ../../../CONTRIBUTING.rst:139 +#: ../../../CONTRIBUTING.rst:163 msgid "" "If you are on Fedora, know that you can't use `podman` or `moby-engine` " "to set up the development environment. Stick to `docker-ce` and you'll be" " fine." msgstr "" -#: ../../../CONTRIBUTING.rst:143 +#: ../../../CONTRIBUTING.rst:167 msgid "Cloning the project" msgstr "" -#: ../../../CONTRIBUTING.rst:145 +#: ../../../CONTRIBUTING.rst:169 msgid "" "Visit https://dev.funkwhale.audio/funkwhale/funkwhale and clone the " "repository using SSH or HTTPS. Example using SSH::" msgstr "" -#: ../../../CONTRIBUTING.rst:152 +#: ../../../CONTRIBUTING.rst:176 msgid "" "As of January 2020, the SSH fingerprints of our Gitlab server are the " "following::" msgstr "" -#: ../../../CONTRIBUTING.rst:164 +#: ../../../CONTRIBUTING.rst:188 msgid "A note about branches" msgstr "" -#: ../../../CONTRIBUTING.rst:166 +#: ../../../CONTRIBUTING.rst:190 msgid "" "Next release development occurs on the \"develop\" branch, and releases " "are made on the \"stable\" branch. Therefore, when submitting Merge " "Requests, ensure you are merging on the develop branch." msgstr "" -#: ../../../CONTRIBUTING.rst:170 +#: ../../../CONTRIBUTING.rst:194 msgid "Working with docker" msgstr "" -#: ../../../CONTRIBUTING.rst:172 +#: ../../../CONTRIBUTING.rst:196 msgid "" "In development, we use the docker-compose file named ``dev.yml``, and " "this is why all our docker-compose commands will look like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:176 +#: ../../../CONTRIBUTING.rst:200 msgid "" "If you do not want to add the ``-f dev.yml`` snippet every time, you can " "run this command before starting your work::" msgstr "" -#: ../../../CONTRIBUTING.rst:182 +#: ../../../CONTRIBUTING.rst:206 msgid "Creating your env file" msgstr "" -#: ../../../CONTRIBUTING.rst:184 +#: ../../../CONTRIBUTING.rst:208 msgid "" "We provide a working .env.dev configuration file that is suitable for " "development. However, to enable customization on your machine, you should" @@ -331,93 +370,93 @@ msgid "" "variables (those will not be commited to the project)." msgstr "" -#: ../../../CONTRIBUTING.rst:189 +#: ../../../CONTRIBUTING.rst:213 msgid "Create it like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:193 +#: ../../../CONTRIBUTING.rst:217 msgid "" "These two environment variables must be included for the images to load " "in front-end and django admin pages::" msgstr "" -#: ../../../CONTRIBUTING.rst:200 +#: ../../../CONTRIBUTING.rst:224 msgid "Create docker network" msgstr "" -#: ../../../CONTRIBUTING.rst:202 +#: ../../../CONTRIBUTING.rst:226 msgid "Create the federation network::" msgstr "" -#: ../../../CONTRIBUTING.rst:208 +#: ../../../CONTRIBUTING.rst:232 msgid "Building the containers" msgstr "" -#: ../../../CONTRIBUTING.rst:210 +#: ../../../CONTRIBUTING.rst:234 msgid "" "On your initial clone, or if there have been some changes in the app " "dependencies, you will have to rebuild your containers. This is done via " "the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:218 +#: ../../../CONTRIBUTING.rst:242 msgid "Database management" msgstr "" -#: ../../../CONTRIBUTING.rst:220 +#: ../../../CONTRIBUTING.rst:244 msgid "To setup funkwhale's database schema, run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:224 +#: ../../../CONTRIBUTING.rst:248 msgid "" "This will create all the tables needed for the API to run properly. You " "will also need to run this whenever changes are made on the database " "schema." msgstr "" -#: ../../../CONTRIBUTING.rst:228 +#: ../../../CONTRIBUTING.rst:252 msgid "" "It is safe to run this command multiple times, so you can run it whenever" " you fetch develop." msgstr "" -#: ../../../CONTRIBUTING.rst:233 +#: ../../../CONTRIBUTING.rst:257 msgid "Development data" msgstr "" -#: ../../../CONTRIBUTING.rst:235 +#: ../../../CONTRIBUTING.rst:259 msgid "" "You'll need at least an admin user and some artists/tracks/albums to work" " locally." msgstr "" -#: ../../../CONTRIBUTING.rst:238 +#: ../../../CONTRIBUTING.rst:262 msgid "Create an admin user with the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:242 +#: ../../../CONTRIBUTING.rst:266 msgid "Injecting fake data is done by running the following script::" msgstr "" -#: ../../../CONTRIBUTING.rst:248 +#: ../../../CONTRIBUTING.rst:272 msgid "" "The previous command will create 25 artists with random albums, tracks " "and metadata." msgstr "" -#: ../../../CONTRIBUTING.rst:253 +#: ../../../CONTRIBUTING.rst:277 msgid "Launch all services" msgstr "" -#: ../../../CONTRIBUTING.rst:255 +#: ../../../CONTRIBUTING.rst:279 msgid "Before the first Funkwhale launch, it is required to run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:259 +#: ../../../CONTRIBUTING.rst:283 msgid "Then you can run everything with::" msgstr "" -#: ../../../CONTRIBUTING.rst:263 +#: ../../../CONTRIBUTING.rst:287 msgid "" "This will launch all services, and output the logs in your current " "terminal window. If you prefer to launch them in the background instead, " @@ -425,209 +464,209 @@ msgid "" "compose -f dev.yml logs --tail=50 --follow``." msgstr "" -#: ../../../CONTRIBUTING.rst:266 +#: ../../../CONTRIBUTING.rst:290 msgid "Once everything is up, you can access the various funkwhale's components:" msgstr "" -#: ../../../CONTRIBUTING.rst:268 +#: ../../../CONTRIBUTING.rst:292 msgid "The Vue webapp, on http://localhost:8000" msgstr "" -#: ../../../CONTRIBUTING.rst:269 +#: ../../../CONTRIBUTING.rst:293 msgid "The API, on http://localhost:8000/api/v1/" msgstr "" -#: ../../../CONTRIBUTING.rst:270 +#: ../../../CONTRIBUTING.rst:294 msgid "The django admin, on http://localhost:8000/api/admin/" msgstr "" -#: ../../../CONTRIBUTING.rst:273 +#: ../../../CONTRIBUTING.rst:297 msgid "Stopping everything" msgstr "" -#: ../../../CONTRIBUTING.rst:275 +#: ../../../CONTRIBUTING.rst:299 msgid "" "Once you're down with your work, you can stop running containers, if any," " with::" msgstr "" -#: ../../../CONTRIBUTING.rst:281 +#: ../../../CONTRIBUTING.rst:305 msgid "Removing everything" msgstr "" -#: ../../../CONTRIBUTING.rst:283 +#: ../../../CONTRIBUTING.rst:307 msgid "" "If you want to wipe your development environment completely (e.g. if you " "want to start over from scratch), just run::" msgstr "" -#: ../../../CONTRIBUTING.rst:287 +#: ../../../CONTRIBUTING.rst:311 msgid "" "This will wipe your containers and data, so please be careful before " "running it." msgstr "" -#: ../../../CONTRIBUTING.rst:289 +#: ../../../CONTRIBUTING.rst:313 msgid "You can keep your data by removing the ``-v`` flag." msgstr "" -#: ../../../CONTRIBUTING.rst:293 +#: ../../../CONTRIBUTING.rst:317 msgid "Working with federation locally" msgstr "" -#: ../../../CONTRIBUTING.rst:295 +#: ../../../CONTRIBUTING.rst:319 msgid "This is not needed unless you need to work on federation-related features." msgstr "" -#: ../../../CONTRIBUTING.rst:297 +#: ../../../CONTRIBUTING.rst:321 msgid "To achieve that, you'll need:" msgstr "" -#: ../../../CONTRIBUTING.rst:299 +#: ../../../CONTRIBUTING.rst:323 msgid "to update your dns resolver to resolve all your .dev hostnames locally" msgstr "" -#: ../../../CONTRIBUTING.rst:300 +#: ../../../CONTRIBUTING.rst:324 msgid "" "a reverse proxy (such as traefik) to catch those .dev requests and and " "with https certificate" msgstr "" -#: ../../../CONTRIBUTING.rst:302 +#: ../../../CONTRIBUTING.rst:326 msgid "two instances (or more) running locally, following the regular dev setup" msgstr "" -#: ../../../CONTRIBUTING.rst:305 +#: ../../../CONTRIBUTING.rst:329 msgid "Resolve .dev names locally" msgstr "" -#: ../../../CONTRIBUTING.rst:307 +#: ../../../CONTRIBUTING.rst:331 msgid "If you use dnsmasq, this is as simple as doing::" msgstr "" -#: ../../../CONTRIBUTING.rst:312 +#: ../../../CONTRIBUTING.rst:336 msgid "If you use NetworkManager with dnsmasq integration, use this instead::" msgstr "" -#: ../../../CONTRIBUTING.rst:318 +#: ../../../CONTRIBUTING.rst:342 msgid "Add wildcard certificate to the trusted certificates" msgstr "" -#: ../../../CONTRIBUTING.rst:320 +#: ../../../CONTRIBUTING.rst:344 msgid "Simply copy bundled certificates::" msgstr "" -#: ../../../CONTRIBUTING.rst:325 +#: ../../../CONTRIBUTING.rst:349 msgid "This certificate is a wildcard for ``*.funkwhale.test``" msgstr "" -#: ../../../CONTRIBUTING.rst:328 +#: ../../../CONTRIBUTING.rst:352 msgid "Run a reverse proxy for your instances" msgstr "" -#: ../../../CONTRIBUTING.rst:332 +#: ../../../CONTRIBUTING.rst:356 msgid "Launch everything" msgstr "" -#: ../../../CONTRIBUTING.rst:334 +#: ../../../CONTRIBUTING.rst:358 msgid "Launch the traefik proxy::" msgstr "" -#: ../../../CONTRIBUTING.rst:338 +#: ../../../CONTRIBUTING.rst:362 msgid "" "Then, in separate terminals, you can setup as many different instances as" " you need::" msgstr "" -#: ../../../CONTRIBUTING.rst:347 +#: ../../../CONTRIBUTING.rst:371 msgid "" "Note that by default, if you don't export the COMPOSE_PROJECT_NAME, we " "will default to node1 as the name of your instance." msgstr "" -#: ../../../CONTRIBUTING.rst:350 +#: ../../../CONTRIBUTING.rst:374 msgid "" "Assuming your project name is ``node1``, your server will be reachable at" " ``https://node1.funkwhale.test/``. Not that you'll have to trust the SSL" " Certificate as it's self signed." msgstr "" -#: ../../../CONTRIBUTING.rst:354 +#: ../../../CONTRIBUTING.rst:378 msgid "" "When working on federation with traefik, ensure you have this in your " "``env``::" msgstr "" -#: ../../../CONTRIBUTING.rst:367 +#: ../../../CONTRIBUTING.rst:391 msgid "Typical workflow for a contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:369 +#: ../../../CONTRIBUTING.rst:393 msgid "" "Fork the project if you did not already or if you do not have access to " "the main repository" msgstr "" -#: ../../../CONTRIBUTING.rst:370 +#: ../../../CONTRIBUTING.rst:394 msgid "" "Checkout the development branch and pull most recent changes: ``git " "checkout develop && git pull``" msgstr "" -#: ../../../CONTRIBUTING.rst:371 +#: ../../../CONTRIBUTING.rst:395 msgid "" "If working on an issue, assign yourself to the issue. Otherwise, consider" " open an issue before starting to work on something, especially for new " "features." msgstr "" -#: ../../../CONTRIBUTING.rst:372 +#: ../../../CONTRIBUTING.rst:396 msgid "" "Create a dedicated branch for your work ``42-awesome-fix``. It is good " "practice to prefix your branch name with the ID of the issue you are " "solving." msgstr "" -#: ../../../CONTRIBUTING.rst:373 +#: ../../../CONTRIBUTING.rst:397 msgid "Work on your stuff" msgstr "" -#: ../../../CONTRIBUTING.rst:374 +#: ../../../CONTRIBUTING.rst:398 msgid "" "[Optional] Consider running ``yarn lint`` in ``front`` if you changed " "something there. Consider fixing some linting errors in the files you " "touched." msgstr "" -#: ../../../CONTRIBUTING.rst:376 +#: ../../../CONTRIBUTING.rst:400 msgid "Commit small, atomic changes to make it easier to review your contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:377 +#: ../../../CONTRIBUTING.rst:401 msgid "" "Add a changelog fragment to summarize your changes: ``echo \"Implemented " "awesome stuff (#42)\" > changes/changelog.d/42.feature``" msgstr "" -#: ../../../CONTRIBUTING.rst:378 +#: ../../../CONTRIBUTING.rst:402 msgid "Push your branch" msgstr "" -#: ../../../CONTRIBUTING.rst:379 +#: ../../../CONTRIBUTING.rst:403 msgid "Create your merge request" msgstr "" -#: ../../../CONTRIBUTING.rst:380 +#: ../../../CONTRIBUTING.rst:404 msgid "" "Take a step back and enjoy, we're really grateful you did all of this and" " took the time to contribute!" msgstr "" -#: ../../../CONTRIBUTING.rst:383 +#: ../../../CONTRIBUTING.rst:407 msgid "Changelog management" msgstr "" -#: ../../../CONTRIBUTING.rst:385 +#: ../../../CONTRIBUTING.rst:409 msgid "" "To ensure we have extensive and well-structured changelog, any " "significant work such as closing an issue must include a changelog " @@ -637,47 +676,47 @@ msgid "" "review ;)" msgstr "" -#: ../../../CONTRIBUTING.rst:391 +#: ../../../CONTRIBUTING.rst:415 msgid "" "Changelog fragments are text files that can contain one or multiple lines" " that describe the changes occurring in a bunch of commits. Those files " "reside in ``changes/changelog.d``." msgstr "" -#: ../../../CONTRIBUTING.rst:396 +#: ../../../CONTRIBUTING.rst:420 msgid "Content" msgstr "" -#: ../../../CONTRIBUTING.rst:398 +#: ../../../CONTRIBUTING.rst:422 msgid "A typical fragment looks like that:" msgstr "" -#: ../../../CONTRIBUTING.rst:400 +#: ../../../CONTRIBUTING.rst:424 msgid "Fixed broken audio player on Chrome 42 for ogg files (#567)" msgstr "" -#: ../../../CONTRIBUTING.rst:402 +#: ../../../CONTRIBUTING.rst:426 msgid "" "If the work fixes one or more issues, the issue number should be included" " at the end of the fragment (``(#567)`` is the issue number in the " "previous example)." msgstr "" -#: ../../../CONTRIBUTING.rst:405 +#: ../../../CONTRIBUTING.rst:429 msgid "" "If your work is not related to a specific issue, use the merge request " "identifier instead, like this:" msgstr "" -#: ../../../CONTRIBUTING.rst:408 +#: ../../../CONTRIBUTING.rst:432 msgid "Fixed a typo in landing page copy (!342)" msgstr "" -#: ../../../CONTRIBUTING.rst:411 +#: ../../../CONTRIBUTING.rst:435 msgid "Naming" msgstr "" -#: ../../../CONTRIBUTING.rst:413 +#: ../../../CONTRIBUTING.rst:437 msgid "" "Fragment files should respect the following naming pattern: " "``changes/changelog.d/.``. Name can be anything " @@ -685,71 +724,71 @@ msgid "" "are fixing. Category can be one of:" msgstr "" -#: ../../../CONTRIBUTING.rst:417 +#: ../../../CONTRIBUTING.rst:441 msgid "``feature``: for new features" msgstr "" -#: ../../../CONTRIBUTING.rst:418 +#: ../../../CONTRIBUTING.rst:442 msgid "``enhancement``: for enhancements on existing features" msgstr "" -#: ../../../CONTRIBUTING.rst:419 +#: ../../../CONTRIBUTING.rst:443 msgid "``bugfix``: for bugfixes" msgstr "" -#: ../../../CONTRIBUTING.rst:420 +#: ../../../CONTRIBUTING.rst:444 msgid "``doc``: for documentation" msgstr "" -#: ../../../CONTRIBUTING.rst:421 +#: ../../../CONTRIBUTING.rst:445 msgid "``i18n``: for internationalization-related work" msgstr "" -#: ../../../CONTRIBUTING.rst:422 +#: ../../../CONTRIBUTING.rst:446 msgid "``misc``: for anything else" msgstr "" -#: ../../../CONTRIBUTING.rst:425 +#: ../../../CONTRIBUTING.rst:449 msgid "Shortcuts" msgstr "" -#: ../../../CONTRIBUTING.rst:427 +#: ../../../CONTRIBUTING.rst:451 msgid "" "Here is a shortcut you can use/adapt to easily create new fragments from " "command-line:" msgstr "" -#: ../../../CONTRIBUTING.rst:436 +#: ../../../CONTRIBUTING.rst:460 msgid "" "You can of course create fragments by hand in your text editor, or from " "Gitlab's interface as well." msgstr "" -#: ../../../CONTRIBUTING.rst:440 +#: ../../../CONTRIBUTING.rst:464 msgid "Internationalization" msgstr "" -#: ../../../CONTRIBUTING.rst:442 +#: ../../../CONTRIBUTING.rst:466 msgid "" "We're using https://github.com/Polyconseil/vue-gettext to manage i18n in " "the project." msgstr "" -#: ../../../CONTRIBUTING.rst:444 +#: ../../../CONTRIBUTING.rst:468 msgid "" "When working on the front-end, any end-user string should be marked as a " "translatable string, with the proper context, as described below." msgstr "" -#: ../../../CONTRIBUTING.rst:448 +#: ../../../CONTRIBUTING.rst:472 msgid "Translations in HTML" msgstr "" -#: ../../../CONTRIBUTING.rst:450 +#: ../../../CONTRIBUTING.rst:474 msgid "Translations in HTML use the ```` tag::" msgstr "" -#: ../../../CONTRIBUTING.rst:474 +#: ../../../CONTRIBUTING.rst:498 msgid "" "Anything between the `` and `` delimiters will be " "considered as a translatable string. You can use variables in the " @@ -757,55 +796,55 @@ msgid "" "directive, and reference them like this: ``val value is %{ value }``." msgstr "" -#: ../../../CONTRIBUTING.rst:478 +#: ../../../CONTRIBUTING.rst:502 msgid "" "For pluralization, you need to use ``translate-params`` in conjunction " "with ``translate-plural`` and ``translate-n``:" msgstr "" -#: ../../../CONTRIBUTING.rst:480 +#: ../../../CONTRIBUTING.rst:504 msgid "" "``translate-params`` should contain the variable you're using for " "pluralization (which is usually shown to the user)" msgstr "" -#: ../../../CONTRIBUTING.rst:481 +#: ../../../CONTRIBUTING.rst:505 msgid "``translate-n`` should match the same variable" msgstr "" -#: ../../../CONTRIBUTING.rst:482 +#: ../../../CONTRIBUTING.rst:506 msgid "" "The ```` delimiters contain the non-pluralized version of your" " string" msgstr "" -#: ../../../CONTRIBUTING.rst:483 +#: ../../../CONTRIBUTING.rst:507 msgid "" "The ``translate-plural`` directive contains the pluralized version of " "your string" msgstr "" -#: ../../../CONTRIBUTING.rst:487 +#: ../../../CONTRIBUTING.rst:511 msgid "Translations in javascript" msgstr "" -#: ../../../CONTRIBUTING.rst:489 +#: ../../../CONTRIBUTING.rst:513 msgid "" "Translations in javascript work by calling the ``this.$*gettext`` " "functions::" msgstr "" -#: ../../../CONTRIBUTING.rst:504 +#: ../../../CONTRIBUTING.rst:528 msgid "" "The first argument of the ``$pgettext`` and ``$npgettext`` functions is " "the string context." msgstr "" -#: ../../../CONTRIBUTING.rst:507 +#: ../../../CONTRIBUTING.rst:531 msgid "Contextualization" msgstr "" -#: ../../../CONTRIBUTING.rst:509 +#: ../../../CONTRIBUTING.rst:533 msgid "" "Translation contexts provided via the ``translate-context`` directive and" " the ``$pgettext`` and ``$npgettext`` are never shown to end users but " @@ -814,7 +853,7 @@ msgid "" "``May``, which can refer a month or a verb." msgstr "" -#: ../../../CONTRIBUTING.rst:513 +#: ../../../CONTRIBUTING.rst:537 msgid "" "While we could in theory use free form context, like ``This string is " "inside a button, in the main page, and is a call to action``, Funkwhale " @@ -823,472 +862,472 @@ msgid "" "would be: ``Content/Home/Button/Call to action``." msgstr "" -#: ../../../CONTRIBUTING.rst:517 +#: ../../../CONTRIBUTING.rst:541 msgid "This hierarchical structure is made of several parts:" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "" "The location part, which is required and refers to the big blocks found " "in Funkwhale UI where the translated string is displayed:" msgstr "" -#: ../../../CONTRIBUTING.rst:520 +#: ../../../CONTRIBUTING.rst:544 msgid "``Content``" msgstr "" -#: ../../../CONTRIBUTING.rst:521 +#: ../../../CONTRIBUTING.rst:545 msgid "``Footer``" msgstr "" -#: ../../../CONTRIBUTING.rst:522 +#: ../../../CONTRIBUTING.rst:546 msgid "``Head``" msgstr "" -#: ../../../CONTRIBUTING.rst:523 ../../../CONTRIBUTING.rst:567 +#: ../../../CONTRIBUTING.rst:547 ../../../CONTRIBUTING.rst:591 msgid "``Menu``" msgstr "" -#: ../../../CONTRIBUTING.rst:524 +#: ../../../CONTRIBUTING.rst:548 msgid "``Popup``" msgstr "" -#: ../../../CONTRIBUTING.rst:525 +#: ../../../CONTRIBUTING.rst:549 msgid "``Sidebar``" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "``*`` for strings that are not tied to a specific location" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "" "The feature part, which is required, and refers to the feature associated" " with the translated string:" msgstr "" -#: ../../../CONTRIBUTING.rst:529 +#: ../../../CONTRIBUTING.rst:553 msgid "``About``" msgstr "" -#: ../../../CONTRIBUTING.rst:530 +#: ../../../CONTRIBUTING.rst:554 msgid "``Admin``" msgstr "" -#: ../../../CONTRIBUTING.rst:531 +#: ../../../CONTRIBUTING.rst:555 msgid "``Album``" msgstr "" -#: ../../../CONTRIBUTING.rst:532 +#: ../../../CONTRIBUTING.rst:556 msgid "``Artist``" msgstr "" -#: ../../../CONTRIBUTING.rst:533 +#: ../../../CONTRIBUTING.rst:557 msgid "``Embed``" msgstr "" -#: ../../../CONTRIBUTING.rst:534 +#: ../../../CONTRIBUTING.rst:558 msgid "``Home``" msgstr "" -#: ../../../CONTRIBUTING.rst:535 +#: ../../../CONTRIBUTING.rst:559 msgid "``Login``" msgstr "" -#: ../../../CONTRIBUTING.rst:536 +#: ../../../CONTRIBUTING.rst:560 msgid "``Library``" msgstr "" -#: ../../../CONTRIBUTING.rst:537 +#: ../../../CONTRIBUTING.rst:561 msgid "``Moderation``" msgstr "" -#: ../../../CONTRIBUTING.rst:538 +#: ../../../CONTRIBUTING.rst:562 msgid "``Player``" msgstr "" -#: ../../../CONTRIBUTING.rst:539 +#: ../../../CONTRIBUTING.rst:563 msgid "``Playlist``" msgstr "" -#: ../../../CONTRIBUTING.rst:540 +#: ../../../CONTRIBUTING.rst:564 msgid "``Profile``" msgstr "" -#: ../../../CONTRIBUTING.rst:541 +#: ../../../CONTRIBUTING.rst:565 msgid "``Favorites``" msgstr "" -#: ../../../CONTRIBUTING.rst:542 +#: ../../../CONTRIBUTING.rst:566 msgid "``Notifications``" msgstr "" -#: ../../../CONTRIBUTING.rst:543 +#: ../../../CONTRIBUTING.rst:567 msgid "``Radio``" msgstr "" -#: ../../../CONTRIBUTING.rst:544 +#: ../../../CONTRIBUTING.rst:568 msgid "``Search``" msgstr "" -#: ../../../CONTRIBUTING.rst:545 +#: ../../../CONTRIBUTING.rst:569 msgid "``Settings``" msgstr "" -#: ../../../CONTRIBUTING.rst:546 +#: ../../../CONTRIBUTING.rst:570 msgid "``Signup``" msgstr "" -#: ../../../CONTRIBUTING.rst:547 +#: ../../../CONTRIBUTING.rst:571 msgid "``Track``" msgstr "" -#: ../../../CONTRIBUTING.rst:548 +#: ../../../CONTRIBUTING.rst:572 msgid "``Queue``" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "``*`` for strings that are not tied to a specific feature" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "" "The component part, which is required and refers to the type of element " "that contain the string:" msgstr "" -#: ../../../CONTRIBUTING.rst:552 +#: ../../../CONTRIBUTING.rst:576 msgid "``Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:553 +#: ../../../CONTRIBUTING.rst:577 msgid "``Card``" msgstr "" -#: ../../../CONTRIBUTING.rst:554 +#: ../../../CONTRIBUTING.rst:578 msgid "``Checkbox``" msgstr "" -#: ../../../CONTRIBUTING.rst:555 +#: ../../../CONTRIBUTING.rst:579 msgid "``Dropdown``" msgstr "" -#: ../../../CONTRIBUTING.rst:556 +#: ../../../CONTRIBUTING.rst:580 msgid "``Error message``" msgstr "" -#: ../../../CONTRIBUTING.rst:557 +#: ../../../CONTRIBUTING.rst:581 msgid "``Form``" msgstr "" -#: ../../../CONTRIBUTING.rst:558 +#: ../../../CONTRIBUTING.rst:582 msgid "``Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:559 +#: ../../../CONTRIBUTING.rst:583 msgid "``Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:560 +#: ../../../CONTRIBUTING.rst:584 msgid "``Hidden text``" msgstr "" -#: ../../../CONTRIBUTING.rst:561 +#: ../../../CONTRIBUTING.rst:585 msgid "``Icon``" msgstr "" -#: ../../../CONTRIBUTING.rst:562 +#: ../../../CONTRIBUTING.rst:586 msgid "``Input``" msgstr "" -#: ../../../CONTRIBUTING.rst:563 +#: ../../../CONTRIBUTING.rst:587 msgid "``Image``" msgstr "" -#: ../../../CONTRIBUTING.rst:564 +#: ../../../CONTRIBUTING.rst:588 msgid "``Label``" msgstr "" -#: ../../../CONTRIBUTING.rst:565 +#: ../../../CONTRIBUTING.rst:589 msgid "``Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:566 +#: ../../../CONTRIBUTING.rst:590 msgid "``List item``" msgstr "" -#: ../../../CONTRIBUTING.rst:568 +#: ../../../CONTRIBUTING.rst:592 msgid "``Message``" msgstr "" -#: ../../../CONTRIBUTING.rst:569 +#: ../../../CONTRIBUTING.rst:593 msgid "``Paragraph``" msgstr "" -#: ../../../CONTRIBUTING.rst:570 +#: ../../../CONTRIBUTING.rst:594 msgid "``Placeholder``" msgstr "" -#: ../../../CONTRIBUTING.rst:571 +#: ../../../CONTRIBUTING.rst:595 msgid "``Tab``" msgstr "" -#: ../../../CONTRIBUTING.rst:572 +#: ../../../CONTRIBUTING.rst:596 msgid "``Table``" msgstr "" -#: ../../../CONTRIBUTING.rst:573 +#: ../../../CONTRIBUTING.rst:597 msgid "``Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:574 +#: ../../../CONTRIBUTING.rst:598 msgid "``Tooltip``" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "``*`` for strings that are not tied to a specific component" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "" "The detail part, which is optional and refers to the contents of the " "string itself, such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:578 +#: ../../../CONTRIBUTING.rst:602 msgid "``Adjective``" msgstr "" -#: ../../../CONTRIBUTING.rst:579 +#: ../../../CONTRIBUTING.rst:603 msgid "``Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:580 +#: ../../../CONTRIBUTING.rst:604 msgid "``Noun``" msgstr "" -#: ../../../CONTRIBUTING.rst:581 +#: ../../../CONTRIBUTING.rst:605 msgid "``Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:582 +#: ../../../CONTRIBUTING.rst:606 msgid "``Unit``" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "``Verb``" msgstr "" -#: ../../../CONTRIBUTING.rst:585 +#: ../../../CONTRIBUTING.rst:609 msgid "Here are a few examples of valid context hierarchies:" msgstr "" -#: ../../../CONTRIBUTING.rst:587 +#: ../../../CONTRIBUTING.rst:611 msgid "``Sidebar/Player/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:588 +#: ../../../CONTRIBUTING.rst:612 msgid "``Content/Home/Button/Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:589 +#: ../../../CONTRIBUTING.rst:613 msgid "``Footer/*/Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:590 +#: ../../../CONTRIBUTING.rst:614 msgid "``*/*/*/Verb, Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:591 +#: ../../../CONTRIBUTING.rst:615 msgid "``Popup/Playlist/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:592 +#: ../../../CONTRIBUTING.rst:616 msgid "``Content/Admin/Table.Label/Short, Noun (Value is a date)``" msgstr "" -#: ../../../CONTRIBUTING.rst:594 +#: ../../../CONTRIBUTING.rst:618 msgid "" "It's possible to nest multiple component parts to reach a higher level of" " detail. The component parts are then separated by a dot:" msgstr "" -#: ../../../CONTRIBUTING.rst:596 +#: ../../../CONTRIBUTING.rst:620 msgid "``Sidebar/Queue/Tab.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:597 +#: ../../../CONTRIBUTING.rst:621 msgid "``Content/*/Button.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:598 +#: ../../../CONTRIBUTING.rst:622 msgid "``Content/*/Table.Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:599 +#: ../../../CONTRIBUTING.rst:623 msgid "``Footer/*/List item.Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:600 +#: ../../../CONTRIBUTING.rst:624 msgid "``Content/*/Form.Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:603 +#: ../../../CONTRIBUTING.rst:627 msgid "Collecting translatable strings" msgstr "" -#: ../../../CONTRIBUTING.rst:605 +#: ../../../CONTRIBUTING.rst:629 msgid "" "If you want to ensure your translatable strings are correctly marked for " "translation, you can try to extract them." msgstr "" -#: ../../../CONTRIBUTING.rst:608 +#: ../../../CONTRIBUTING.rst:632 msgid "" "Extraction is done by calling ``yarn run i18n-extract``, which will pull " "all the strings from source files and put them in a PO files." msgstr "" -#: ../../../CONTRIBUTING.rst:611 +#: ../../../CONTRIBUTING.rst:635 msgid "" "You can then inspect the PO files to ensure everything is fine (but don't" " commit them, it's not needed)." msgstr "" -#: ../../../CONTRIBUTING.rst:614 +#: ../../../CONTRIBUTING.rst:638 msgid "Contributing to the API" msgstr "" -#: ../../../CONTRIBUTING.rst:617 +#: ../../../CONTRIBUTING.rst:641 msgid "Project structure" msgstr "" -#: ../../../CONTRIBUTING.rst:631 +#: ../../../CONTRIBUTING.rst:655 msgid "" "Unless trivial, API contributions must include unittests to ensure your " "fix or feature is working as expected and won't break in the future" msgstr "" -#: ../../../CONTRIBUTING.rst:635 ../../../CONTRIBUTING.rst:793 +#: ../../../CONTRIBUTING.rst:659 ../../../CONTRIBUTING.rst:817 msgid "Running tests" msgstr "" -#: ../../../CONTRIBUTING.rst:637 +#: ../../../CONTRIBUTING.rst:661 msgid "To run the pytest test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:641 +#: ../../../CONTRIBUTING.rst:665 msgid "" "This is regular pytest, so you can use any arguments/options that pytest " "usually accept::" msgstr "" -#: ../../../CONTRIBUTING.rst:651 +#: ../../../CONTRIBUTING.rst:675 msgid "Writing tests" msgstr "" -#: ../../../CONTRIBUTING.rst:653 +#: ../../../CONTRIBUTING.rst:677 msgid "" "Although teaching you how to write unit tests is outside of the scope of " "this document, you'll find below a collection of tips, snippets and " "resources you can use if you want to learn on that subject." msgstr "" -#: ../../../CONTRIBUTING.rst:657 +#: ../../../CONTRIBUTING.rst:681 msgid "Useful links:" msgstr "" -#: ../../../CONTRIBUTING.rst:659 +#: ../../../CONTRIBUTING.rst:683 msgid "" "`A quick introduction to unit test writing with pytest " "`_" msgstr "" -#: ../../../CONTRIBUTING.rst:660 +#: ../../../CONTRIBUTING.rst:684 msgid "" "`A complete guide to Test-Driven Development (although not using Pytest) " "`_" msgstr "" -#: ../../../CONTRIBUTING.rst:661 +#: ../../../CONTRIBUTING.rst:685 msgid "" "`pytest `_: documentation of our " "testing engine and runner" msgstr "" -#: ../../../CONTRIBUTING.rst:662 +#: ../../../CONTRIBUTING.rst:686 msgid "" "`pytest-mock `_: project page of " "our mocking engine" msgstr "" -#: ../../../CONTRIBUTING.rst:663 +#: ../../../CONTRIBUTING.rst:687 msgid "" "`factory-boy `_: documentation of " "factory-boy, which we use to easily generate fake objects and data" msgstr "" -#: ../../../CONTRIBUTING.rst:665 +#: ../../../CONTRIBUTING.rst:689 msgid "Recommendations:" msgstr "" -#: ../../../CONTRIBUTING.rst:667 +#: ../../../CONTRIBUTING.rst:691 msgid "" "Test files must target a module and mimic ``funkwhale_api`` directory " "structure: if you're writing tests for ``funkwhale_api/myapp/views.py``, " "you should put thoses tests in ``tests/myapp/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:668 +#: ../../../CONTRIBUTING.rst:692 msgid "" "Tests should be small and test one thing. If you need to test multiple " "things, write multiple tests." msgstr "" -#: ../../../CONTRIBUTING.rst:670 +#: ../../../CONTRIBUTING.rst:694 msgid "" "We provide a lot of utils and fixtures to make the process of writing " "tests as painless as possible. You'll find some usage examples below." msgstr "" -#: ../../../CONTRIBUTING.rst:673 +#: ../../../CONTRIBUTING.rst:697 msgid "Use factories to create arbitrary objects:" msgstr "" -#: ../../../CONTRIBUTING.rst:708 +#: ../../../CONTRIBUTING.rst:732 msgid "" "We offer factories for almost if not all models. Factories are located in" " a ``factories.py`` file inside each app." msgstr "" -#: ../../../CONTRIBUTING.rst:711 +#: ../../../CONTRIBUTING.rst:735 msgid "" "Mocking: mocking is the process of faking some logic in our code. This is" " useful when testing components that depend on each other:" msgstr "" -#: ../../../CONTRIBUTING.rst:766 +#: ../../../CONTRIBUTING.rst:790 msgid "" "Views: you can find some readable views tests in file: " "``api/tests/users/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:770 +#: ../../../CONTRIBUTING.rst:794 msgid "" "A complete list of available-fixtures is available by running ``docker-" "compose -f dev.yml run --rm api pytest --fixtures``" msgstr "" -#: ../../../CONTRIBUTING.rst:775 +#: ../../../CONTRIBUTING.rst:799 msgid "Contributing to the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:778 +#: ../../../CONTRIBUTING.rst:802 msgid "Styles and themes" msgstr "" -#: ../../../CONTRIBUTING.rst:780 +#: ../../../CONTRIBUTING.rst:804 msgid "" "Our UI framework is Fomantic UI (https://fomantic-ui.com/), and " "Funkwhale's custom styles are written in SCSS. All the styles are " @@ -1296,26 +1335,26 @@ msgid "" "Fomantic UI styles and components." msgstr "" -#: ../../../CONTRIBUTING.rst:783 +#: ../../../CONTRIBUTING.rst:807 msgid "" "We're applying several changes on top of the Fomantic CSS files, before " "they are imported:" msgstr "" -#: ../../../CONTRIBUTING.rst:785 +#: ../../../CONTRIBUTING.rst:809 msgid "" "Many hardcoded color values are replaced by CSS vars: e.g ``color: " "orange`` is replaced by ``color: var(--vibrant-color)``. This makes " "theming way easier." msgstr "" -#: ../../../CONTRIBUTING.rst:786 +#: ../../../CONTRIBUTING.rst:810 msgid "" "Unused components variations and icons are stripped from the source " "files, in order to reduce the final size of our CSS files" msgstr "" -#: ../../../CONTRIBUTING.rst:788 +#: ../../../CONTRIBUTING.rst:812 msgid "" "This changes are applied automatically when running ``yarn install``, " "through a ``postinstall`` hook. Internally, ``front/scripts/fix-fomantic-" @@ -1324,33 +1363,33 @@ msgid "" " components variations that were stripped in order to use them." msgstr "" -#: ../../../CONTRIBUTING.rst:795 +#: ../../../CONTRIBUTING.rst:819 msgid "To run the front-end test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:799 +#: ../../../CONTRIBUTING.rst:823 msgid "" "We also support a \"watch and test\" mode were we continually relaunch " "tests when changes are recorded on the file system::" msgstr "" -#: ../../../CONTRIBUTING.rst:804 +#: ../../../CONTRIBUTING.rst:828 msgid "The latter is especially useful when you are debugging failing tests." msgstr "" -#: ../../../CONTRIBUTING.rst:808 +#: ../../../CONTRIBUTING.rst:832 msgid "The front-end test suite coverage is still pretty low" msgstr "" -#: ../../../CONTRIBUTING.rst:812 +#: ../../../CONTRIBUTING.rst:836 msgid "Making a release" msgstr "" -#: ../../../CONTRIBUTING.rst:814 +#: ../../../CONTRIBUTING.rst:838 msgid "To make a new 3.4 release::" msgstr "" -#: ../../../CONTRIBUTING.rst:853 +#: ../../../CONTRIBUTING.rst:877 msgid "" "Then, visit https://dev.funkwhale.audio/funkwhale/funkwhale/-/tags, copy-" "paste the changelog on the corresponding tag, and announce the good news " diff --git a/docs/locales/fr/LC_MESSAGES/developers/authentication.po b/docs/locales/fr/LC_MESSAGES/developers/authentication.po index 10e335ae2..0bc716592 100644 --- a/docs/locales/fr/LC_MESSAGES/developers/authentication.po +++ b/docs/locales/fr/LC_MESSAGES/developers/authentication.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -174,31 +174,35 @@ msgid "" "request:" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:67 +msgid "Oauth scopes" +msgstr "" + +#: ../../developers/authentication.rst:70 msgid "Scope" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:71 msgid "Description" msgstr "" -#: ../../developers/authentication.rst:71 +#: ../../developers/authentication.rst:72 msgid "``read``" msgstr "" -#: ../../developers/authentication.rst:71 -msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#: ../../developers/authentication.rst:73 +msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)." msgstr "" #: ../../developers/authentication.rst:74 msgid "``write``" msgstr "" -#: ../../developers/authentication.rst:74 -msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#: ../../developers/authentication.rst:75 +msgid "Read-only access to all data (equivalent to all ``write:*`` scopes)." msgstr "" -#: ../../developers/authentication.rst:77 +#: ../../developers/authentication.rst:76 msgid "``:profile``" msgstr "" @@ -206,75 +210,84 @@ msgstr "" msgid "Access to profile data (e-mail address, username, etc.)" msgstr "" -#: ../../developers/authentication.rst:79 +#: ../../developers/authentication.rst:78 msgid "``:libraries``" msgstr "" #: ../../developers/authentication.rst:79 -msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +msgid "Access to library data (uploads, libraries, tracks, albums, artists…)" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:80 msgid "``:favorites``" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:81 msgid "Access to favorites" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:82 msgid "``:listenings``" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:83 msgid "Access to history" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:84 msgid "``:follows``" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:85 msgid "Access to followers" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:86 msgid "``:playlists``" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:87 msgid "Access to playlists" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:88 msgid "``:radios``" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:89 msgid "Access to radios" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:90 msgid "``:filters``" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:91 msgid "Access to content filters" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:92 msgid "``:notifications``" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:93 msgid "Access to notifications" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:94 msgid "``:edits``" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:95 msgid "Access to metadata edits" msgstr "" +#~ msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#~ msgstr "" + +#~ msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#~ msgstr "" + +#~ msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +#~ msgstr "" + diff --git a/docs/locales/fr/LC_MESSAGES/user_documentation/libraries/tag_music.po b/docs/locales/fr/LC_MESSAGES/user_documentation/libraries/tag_music.po index c6373544d..be784e262 100644 --- a/docs/locales/fr/LC_MESSAGES/user_documentation/libraries/tag_music.po +++ b/docs/locales/fr/LC_MESSAGES/user_documentation/libraries/tag_music.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -40,118 +40,309 @@ msgstr "" msgid "This guide shows you how to tag your content with MusicBrainz Picard." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:34 -msgid "Tag content" +#: ../../user_documentation/libraries/tag_music.md:19 +msgid "Name" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:36 -msgid "To tag content using MusicBrainz Picard:" +#: ../../user_documentation/libraries/tag_music.md:20 +msgid "Description" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:21 +msgid "Example value" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:22 +msgid "`Title`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:23 +msgid "The track title." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:24 +msgid "`Letting you`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:25 +msgid "`Artist`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:26 +msgid "The artist name." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:27 +msgid "`Nine Inch Nails`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:28 +msgid "`Album`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:29 +msgid "" +"The album title. If none is provided, an `[Unknown Album]` entry is " +"created." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:30 +msgid "`The Slip`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:31 +msgid "`Album artist`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:32 +msgid "The album artist name (can be different than the track artist)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:33 +msgid "`Trent Reznor`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:34 +msgid "`Genre`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:35 +msgid "" +"A comma separated list of tags to associate with the track. Other " +"supported separators: `;` and `/`." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:37 +msgid "`Industrial, Metal`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:38 +msgid "`Track number`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:39 +msgid "The position of the track in the album/release." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:40 +msgid "`4`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:41 +msgid "`Disc number`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:42 +msgid "The disc number (in case of multi-disc albums)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:43 +msgid "`1`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:44 +msgid "`Date`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:45 +msgid "The release date of the track or album." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:46 +msgid "`2019`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:47 +msgid "`License`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:48 +msgid "" +"The license associated with this work. The first URL found is checked " +"against our list of supported licenses." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:50 +#: ../../user_documentation/libraries/tag_music.md:54 +msgid "`CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:51 +msgid "`Copyright`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:52 +msgid "" +"The license associated with this work. The first URL found is checked " +"against our list of supported licenses. Used if no license found in the" +" `License` tag." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:55 +msgid "`Pictures`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:56 +msgid "The first embeded picture found is used as the album cover." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:58 +msgid "`MusicBrainz Recording ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:59 +msgid "The MusicBrainz ID for the recording." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:60 +msgid "`99244237-850b-4a93-904d-57305bcadb4e`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:61 +msgid "`MusicBrainz Album ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:62 +msgid "The MusicBrainz ID for the album." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:63 +msgid "`bca982fd-ab73-3c9f-ad07-9104a4f53a32`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:64 +msgid "`MusicBrainz Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:65 +msgid "The MusicBrainz ID for the artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:66 +#: ../../user_documentation/libraries/tag_music.md:69 +msgid "`b7ffd2af-418f-4be2-bdd1-22f8b48613da`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:67 +msgid "`MusicBrainz Album Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:68 +msgid "The MusicBrainz ID for the album artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:74 +msgid "Tag content" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:76 +msgid "To tag content using MusicBrainz Picard:" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:78 msgid "" "Select {guilabel}`Add Files` to add individual files or {guilabel}`Add " "Folder` to add a directory of files." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:39 +#: ../../user_documentation/libraries/tag_music.md:79 msgid "Select the files or directory you want to tag." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:40 +#: ../../user_documentation/libraries/tag_music.md:80 msgid "" "Picard shows the files in the left panel. Picard moves files to the right" " panel as it tags them. If Picard doesn't tag a file automatically, " "select {guilabel}`Scan`." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:41 +#: ../../user_documentation/libraries/tag_music.md:81 msgid "" "Check a file's tags by highlighting it and looking at the details in the " "bottom panel. If Picard has applied the wrong tags, look for [alternative" " versions](#alternative-versions)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:42 -#: ../../user_documentation/libraries/tag_music.md:56 -#: ../../user_documentation/libraries/tag_music.md:65 +#: ../../user_documentation/libraries/tag_music.md:82 +#: ../../user_documentation/libraries/tag_music.md:96 +#: ../../user_documentation/libraries/tag_music.md:105 msgid "" "Select {guilabel}`Save` or hit {kbd}`ctrl+s` ({kbd}`cmd+s` on macOS) to " "save the tags to the files." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:44 +#: ../../user_documentation/libraries/tag_music.md:84 msgid "" "That's it! You've added ID3 tags to your files. You can now [add these to" " a library](upload_content.md)" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:46 +#: ../../user_documentation/libraries/tag_music.md:86 msgid "Alternative versions" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:48 +#: ../../user_documentation/libraries/tag_music.md:88 msgid "" "Picard will choose tags based on details included in your file. Sometimes" " it chooses a different version of a release than the one you want. You " "can choose an alternative version of your content to get the right tags." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:50 +#: ../../user_documentation/libraries/tag_music.md:90 msgid "Alternative albums" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:52 +#: ../../user_documentation/libraries/tag_music.md:92 msgid "If Picard has selected a different version of the album you are tagging:" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:54 +#: ../../user_documentation/libraries/tag_music.md:94 msgid "" "Right-click on the album and hover your mouse over {guilabel}`Other " "versions`. A dropdown list of alternative versions appears." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:55 +#: ../../user_documentation/libraries/tag_music.md:95 msgid "Select the correct release from the list." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:58 +#: ../../user_documentation/libraries/tag_music.md:98 msgid "Alternative tracks" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:60 +#: ../../user_documentation/libraries/tag_music.md:100 msgid "If Picard can't find a release for a track:" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:62 +#: ../../user_documentation/libraries/tag_music.md:102 msgid "" "Right-click on the track and select {guilabel}`Search for Similar " "Tracks…`. A search screen appears." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:63 +#: ../../user_documentation/libraries/tag_music.md:103 msgid "" "Search for your track. Use [MusicBrainz's search " "syntax](https://musicbrainz.org/doc/Indexed_Search_Syntax) for the best " "results." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:64 +#: ../../user_documentation/libraries/tag_music.md:104 msgid "Select the correct track and click on {guilabel}`Load into Picard`." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:67 +#: ../../user_documentation/libraries/tag_music.md:107 msgid "Add items to MusicBrainz" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:69 +#: ../../user_documentation/libraries/tag_music.md:109 msgid "" "If Picard can't find your content, you can add it to MusicBrainz " "yourself. To get started, check out [MusicBrainz's " "guide](https://musicbrainz.org/doc/How_to_Add_a_Release/)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:71 +#: ../../user_documentation/libraries/tag_music.md:111 msgid "Once you have added the content to MusicBrainz, Picard can tag your files." msgstr "" diff --git a/docs/locales/gettext/administrator_documentation/configuration_docs/frontend.pot b/docs/locales/gettext/administrator_documentation/configuration_docs/frontend.pot index ad54815ce..696dac02b 100644 --- a/docs/locales/gettext/administrator_documentation/configuration_docs/frontend.pot +++ b/docs/locales/gettext/administrator_documentation/configuration_docs/frontend.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-03 01:32+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -52,11 +52,59 @@ msgstr "" msgid "Create a new config file and populate it with placeholder settings." msgstr "" +#: ../../administrator_documentation/configuration_docs/frontend.md:41 +msgid "Parameter" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:42 +msgid "Data type" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:43 +msgid "Description" +msgstr "" + #: ../../administrator_documentation/configuration_docs/frontend.md:44 -msgid "Configure your reverse proxy" +msgid "Example" msgstr "" #: ../../administrator_documentation/configuration_docs/frontend.md:46 +msgid "`additionalStylesheets`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:47 +msgid "Array" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:48 +msgid "A list of URLs (relative or absolute) pointing to stylesheets." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:49 +msgid "`[\"https://test/theme.css\"]`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:51 +msgid "`defaultServerUrl`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:52 +msgid "URL" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:53 +msgid "The URL of the API server you want to connect the frontend to. Defaults to the current domain." +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:54 +msgid "`\"https://api.yourdomain.com\"`" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:59 +msgid "Configure your reverse proxy" +msgstr "" + +#: ../../administrator_documentation/configuration_docs/frontend.md:61 msgid "Once you've created your {file}`settings.json` file you need to configure your reverse proxy to serve it." msgstr "" @@ -65,7 +113,7 @@ msgstr "" msgid "Nginx" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:50 +#: ../../administrator_documentation/configuration_docs/frontend.md:65 msgid "Add the following snippet to your {file}`/etc/nginx/sites-available/funkwhale.conf` config file:" msgstr "" @@ -74,50 +122,50 @@ msgstr "" msgid "Apache" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:62 +#: ../../administrator_documentation/configuration_docs/frontend.md:77 msgid "Add the following snippet to your webserver configuration:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:70 +#: ../../administrator_documentation/configuration_docs/frontend.md:85 msgid "Reload your webserver. You should be able to see the contents of your configuration file at `https://yourinstanceurl/settings.json`." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:72 +#: ../../administrator_documentation/configuration_docs/frontend.md:87 msgid "Add a custom theme" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:74 +#: ../../administrator_documentation/configuration_docs/frontend.md:89 msgid "You can use a custom stylesheet to theme your Funkwhale pod. To do this:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:76 +#: ../../administrator_documentation/configuration_docs/frontend.md:91 msgid "Navigate to your {file}`/srv/funkwhale/custom` directory." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:82 +#: ../../administrator_documentation/configuration_docs/frontend.md:97 msgid "Copy your CSS file to this directory, or create a new one." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:94 +#: ../../administrator_documentation/configuration_docs/frontend.md:109 msgid "Add the location of your CSS file to the `additionalStylesheets` parameter in your {file}`settings.json` file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:107 +#: ../../administrator_documentation/configuration_docs/frontend.md:122 msgid "Add the whole {file}`custom` dir to your webserver configuration." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:111 +#: ../../administrator_documentation/configuration_docs/frontend.md:126 msgid "Add the following to your {file}`/etc/nginx/sites-available/funkwhale.conf` file:" msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:122 +#: ../../administrator_documentation/configuration_docs/frontend.md:137 msgid "Add the following to your webserver configuration file." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:135 +#: ../../administrator_documentation/configuration_docs/frontend.md:150 msgid "Restart your webserver." msgstr "" -#: ../../administrator_documentation/configuration_docs/frontend.md:137 +#: ../../administrator_documentation/configuration_docs/frontend.md:152 msgid "Refresh your Funkwhale app. The background should now be red." msgstr "" diff --git a/docs/locales/gettext/administrator_documentation/configuration_docs/rate-limiting.pot b/docs/locales/gettext/administrator_documentation/configuration_docs/rate-limiting.pot index 1a7c31b9c..f8d00e5c1 100644 --- a/docs/locales/gettext/administrator_documentation/configuration_docs/rate-limiting.pot +++ b/docs/locales/gettext/administrator_documentation/configuration_docs/rate-limiting.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-03 00:29+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -28,310 +28,310 @@ msgstr "" msgid "Standard endpoints" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:11 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:61 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:93 msgid "Endpoint name" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:12 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:62 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:94 msgid "Description" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:13 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:63 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:95 msgid "Default rate (per user)" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:14 msgid "`anonymous-wildcard`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:15 msgid "Anonymous requests not covered by other limits" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:16 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:22 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:46 msgid "1000 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:17 msgid "`authenticated-wildcard`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:18 msgid "Authenticated requests not covered by other limits" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:19 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:52 msgid "2000 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:20 msgid "`authenticated-create`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:21 msgid "Authenticated POST requests" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:23 msgid "`anonymous-create`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:24 msgid "Anonymous POST requests" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:25 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:43 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:49 msgid "1000 per day" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:26 msgid "`authenticated-list`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:27 msgid "Authenticated GET requests" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:28 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:34 msgid "10000 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:29 msgid "`anonymous-list`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:30 msgid "Anonymous GET requests" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:31 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:37 msgid "10000 per day" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:32 msgid "`authenticated-retrieve`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:33 msgid "Authenticated GET requests on resource details" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:35 msgid "`anonymous-retrieve`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:36 msgid "Anonymous GET requests on resource details" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:38 msgid "`authenticated-destroy`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:39 msgid "Authenticated DELETE requests on resource details" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:40 msgid "500 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:41 msgid "`anonymous-destroy`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:42 msgid "Anonymous DELETE requests on resource details" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:44 msgid "`authenticated-update`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:45 msgid "Authenticated PATCH and PUT requests on resource details" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:47 msgid "`anonymous-update`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:48 msgid "Anonymous PATCH and PUT requests on resource details" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:50 msgid "`subsonic`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:51 msgid "All Subsonic API requests" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:23 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:55 msgid "User action endpoints" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:64 msgid "`login`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:65 msgid "User login" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:66 msgid "30 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:67 msgid "`signup`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:68 msgid "User signup" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:69 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:101 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:107 msgid "10 per day" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:70 msgid "`verify-email`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:71 msgid "Email address confirmation" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:72 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:75 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:78 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:81 msgid "20 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:73 msgid "`password-change`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:74 msgid "Password change (when authenticated)" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:76 msgid "`password-reset`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:77 msgid "Password reset request" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:79 msgid "`password-reset-confirm`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:80 msgid "Password reset confirmation" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:82 msgid "`fetch`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:83 msgid "Fetch remote objects" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:84 msgid "200 per day" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:35 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:87 msgid "Dangerous endpoints" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:96 msgid "`authenticated-reports`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:97 msgid "Authenticated report submissions" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:98 msgid "100 per day" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:99 msgid "`anonymous-reports`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:100 msgid "Anonymous report submissions" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:102 msgid "`authenticated-oauth-app`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:103 msgid "Authenticated OAuth app creation" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:104 msgid "10 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:105 msgid "`anonymous-oauth-app`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:106 msgid "Anonymous OAuth app creation" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:108 msgid "`oauth-authorize`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:109 msgid "OAuth app authorization" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:110 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:113 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:116 msgid "100 per hour" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:111 msgid "`oauth-token`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:112 msgid "OAuth token creation" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:114 msgid "`oauth-revoke-token`" msgstr "" -#: ../../administrator_documentation/configuration_docs/rate-limiting.md:0 +#: ../../administrator_documentation/configuration_docs/rate-limiting.md:115 msgid "OAuth token deletion" msgstr "" diff --git a/docs/locales/gettext/administrator_documentation/troubleshooting/frontend.pot b/docs/locales/gettext/administrator_documentation/troubleshooting/frontend.pot index 3c50083e1..ab181f7ec 100644 --- a/docs/locales/gettext/administrator_documentation/troubleshooting/frontend.pot +++ b/docs/locales/gettext/administrator_documentation/troubleshooting/frontend.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -32,120 +32,120 @@ msgstr "" msgid "The most useful tools for troubleshooting issues with the Funkwhale frontend are your web browser's developer tools. The `Console` and `Network` tabs are particularly useful for tracking down issues in the Javascript code and API responses respectively. Use the following shortcut to open the developer tools for your browser:" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:13 msgid "Browser" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:14 msgid "Shortcut" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:15 msgid "Google Chrome/Chromium" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 -#: ../../administrator_documentation/troubleshooting/frontend.md:0 -#: ../../administrator_documentation/troubleshooting/frontend.md:0 -#: ../../administrator_documentation/troubleshooting/frontend.md:0 -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:16 +#: ../../administrator_documentation/troubleshooting/frontend.md:18 +#: ../../administrator_documentation/troubleshooting/frontend.md:20 +#: ../../administrator_documentation/troubleshooting/frontend.md:22 +#: ../../administrator_documentation/troubleshooting/frontend.md:24 msgid "{kbd}`F12`" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:17 msgid "Microsoft Edge" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:19 msgid "Opera" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:21 msgid "Vivaldi" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:23 msgid "Firefox" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:25 msgid "Safari" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:0 +#: ../../administrator_documentation/troubleshooting/frontend.md:26 msgid "{kbd}`Command+Option+U`" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:18 +#: ../../administrator_documentation/troubleshooting/frontend.md:29 msgid "Troubleshoot the issue" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:20 +#: ../../administrator_documentation/troubleshooting/frontend.md:31 msgid "Crashes or performance issues" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:22 +#: ../../administrator_documentation/troubleshooting/frontend.md:33 msgid "To start troubleshooting your issue, try the following:" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:24 -#: ../../administrator_documentation/troubleshooting/frontend.md:40 +#: ../../administrator_documentation/troubleshooting/frontend.md:35 +#: ../../administrator_documentation/troubleshooting/frontend.md:51 msgid "Open your browser's developer tools." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:25 +#: ../../administrator_documentation/troubleshooting/frontend.md:36 msgid "Select the `Console` tab." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:26 -#: ../../administrator_documentation/troubleshooting/frontend.md:42 +#: ../../administrator_documentation/troubleshooting/frontend.md:37 +#: ../../administrator_documentation/troubleshooting/frontend.md:53 msgid "Open Funkwhale and try to replicate the issue." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:27 +#: ../../administrator_documentation/troubleshooting/frontend.md:38 msgid "Take note of any errors or warnings that appear in the `Console` tab." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:29 +#: ../../administrator_documentation/troubleshooting/frontend.md:40 msgid "If applicable, try these steps while logged in and again while logged out to see if there is any difference." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:31 +#: ../../administrator_documentation/troubleshooting/frontend.md:42 msgid "Content not appearing" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:33 +#: ../../administrator_documentation/troubleshooting/frontend.md:44 msgid "If content isn't appearing, it is usually due to one of the following reasons:" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:35 +#: ../../administrator_documentation/troubleshooting/frontend.md:46 msgid "A conditional statement in the frontend code isn't working." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:36 +#: ../../administrator_documentation/troubleshooting/frontend.md:47 msgid "The API is not serving content." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:38 +#: ../../administrator_documentation/troubleshooting/frontend.md:49 msgid "You can confirm which of these is causing the issue by checking the `Network` tab in your browser's developer tools." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:41 +#: ../../administrator_documentation/troubleshooting/frontend.md:52 msgid "Select the `Network` tab." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:43 +#: ../../administrator_documentation/troubleshooting/frontend.md:54 msgid "Take not of any `4XX` or `5XX` responses in the API calls." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:45 +#: ../../administrator_documentation/troubleshooting/frontend.md:56 msgid "If you are receiving `4XX` or `5XX` responses, this means the API isn't serving your content properly. You can investigate further by following the [backend troubleshooting guide](backend.md)." msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:47 +#: ../../administrator_documentation/troubleshooting/frontend.md:58 msgid "Get help" msgstr "" -#: ../../administrator_documentation/troubleshooting/frontend.md:49 +#: ../../administrator_documentation/troubleshooting/frontend.md:60 msgid "If you can't solve the issue yourself, ask the community for help. Check out the [get help](get_help.md) guide for information about where to ask your question and what details to provide." msgstr "" diff --git a/docs/locales/gettext/contributing.pot b/docs/locales/gettext/contributing.pot index f03bd5e22..50afe8fb0 100644 --- a/docs/locales/gettext/contributing.pot +++ b/docs/locales/gettext/contributing.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -29,7 +29,7 @@ msgid "This document will guide you through common operations such as:" msgstr "" #: ../../../CONTRIBUTING.rst:10 -#: ../../../CONTRIBUTING.rst:117 +#: ../../../CONTRIBUTING.rst:141 msgid "Setup your development environment" msgstr "" @@ -101,1013 +101,1048 @@ msgstr "" msgid "When you configure your environment variables as follows, you will be signed in to the extension automatically in old and new workspaces." msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:62 +msgid "Environment variables" +msgstr "" + +#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:88 msgid "Name" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:66 +#: ../../../CONTRIBUTING.rst:89 msgid "Value" msgstr "" -#: ../../../CONTRIBUTING.rst:63 +#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:90 msgid "Scope" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:68 msgid "``GITLAB_WORKFLOW_INSTANCE_URL``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 +#: ../../../CONTRIBUTING.rst:69 msgid "``https://dev.funkwhale.audio``" msgstr "" -#: ../../../CONTRIBUTING.rst:65 -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:70 +#: ../../../CONTRIBUTING.rst:73 msgid "``funkwhale/*``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:71 msgid "``GITLAB_WORKFLOW_TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:67 +#: ../../../CONTRIBUTING.rst:72 msgid "``TOKEN``" msgstr "" -#: ../../../CONTRIBUTING.rst:70 +#: ../../../CONTRIBUTING.rst:75 msgid "The scope ``funkwhale/*`` will ensure that you will be signed into our instance on every project that we're hosting, not only Funkwhale itself." msgstr "" -#: ../../../CONTRIBUTING.rst:74 -msgid "A quick path to contribute on the front-end" +#: ../../../CONTRIBUTING.rst:79 +msgid "Custom instance url" msgstr "" -#: ../../../CONTRIBUTING.rst:76 -msgid "The next sections of this document include a full installation guide to help you setup a local, development version of Funkwhale. If you only want to fix small things on the front-end, and don't want to manage a full development environment, there is another way." +#: ../../../CONTRIBUTING.rst:81 +msgid "If you want to preview changes on your own Funkwhale server, you can add your domain as an environment variable. This allows you to test your frontend changes against your domain without setting this value each time. To add your domain, set a user environment variable in `your Gitpod settings `_." msgstr "" -#: ../../../CONTRIBUTING.rst:80 -msgid "As the front-end can work with any Funkwhale server, you can work with the front-end only, and make it talk with an existing instance (like the demo one, or you own instance, if you have one)." +#: ../../../CONTRIBUTING.rst:85 +msgid "Environment variable" msgstr "" -#: ../../../CONTRIBUTING.rst:83 -msgid "If even that is too much for you, you can also make your changes without any development environment, and open a merge request. We will be able to review your work easily by spawning automatically a live version of your changes, thanks to Gitlab Review apps." +#: ../../../CONTRIBUTING.rst:91 +msgid "``VUE_APP_INSTANCE_URL``" msgstr "" -#: ../../../CONTRIBUTING.rst:88 -msgid "Setup front-end only development environment" +#: ../../../CONTRIBUTING.rst:92 +msgid "``https://funkwhale.example.com``" msgstr "" -#: ../../../CONTRIBUTING.rst:90 -msgid "Clone the repository::" +#: ../../../CONTRIBUTING.rst:93 +msgid "``funkwhale/funkwhale``" msgstr "" -#: ../../../CONTRIBUTING.rst:96 -msgid "Install `nodejs `_ and `yarn `_" +#: ../../../CONTRIBUTING.rst:95 +msgid "The scope ``funkwhale/funkwhale`` ensures that this variable only works on Funkwhale." msgstr "" #: ../../../CONTRIBUTING.rst:98 -msgid "Install the dependencies::" +msgid "A quick path to contribute on the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:102 -msgid "Compile the translations::" +#: ../../../CONTRIBUTING.rst:100 +msgid "The next sections of this document include a full installation guide to help you setup a local, development version of Funkwhale. If you only want to fix small things on the front-end, and don't want to manage a full development environment, there is another way." msgstr "" -#: ../../../CONTRIBUTING.rst:106 -msgid "Launch the development server::" +#: ../../../CONTRIBUTING.rst:104 +msgid "As the front-end can work with any Funkwhale server, you can work with the front-end only, and make it talk with an existing instance (like the demo one, or you own instance, if you have one)." msgstr "" -#: ../../../CONTRIBUTING.rst:111 -msgid "Make the front-end talk with an existing server (like https://demo.funkwhale.audio or https://open.audio), by clicking on the corresponding link in the footer" +#: ../../../CONTRIBUTING.rst:107 +msgid "If even that is too much for you, you can also make your changes without any development environment, and open a merge request. We will be able to review your work easily by spawning automatically a live version of your changes, thanks to Gitlab Review apps." +msgstr "" + +#: ../../../CONTRIBUTING.rst:112 +msgid "Setup front-end only development environment" msgstr "" #: ../../../CONTRIBUTING.rst:114 -msgid "Start hacking!" +msgid "Clone the repository::" msgstr "" -#: ../../../CONTRIBUTING.rst:119 -msgid "If you want to fix a bug or implement a feature, you'll need to run a local, development copy of funkwhale." +#: ../../../CONTRIBUTING.rst:120 +msgid "Install `nodejs `_ and `yarn `_" msgstr "" #: ../../../CONTRIBUTING.rst:122 -msgid "We provide a docker based development environment, which should be both easy to setup and work similarly regardless of your development machine setup." +msgid "Install the dependencies::" msgstr "" #: ../../../CONTRIBUTING.rst:126 -msgid "Instructions for bare-metal setup will come in the future (Merge requests are welcome)." +msgid "Compile the translations::" msgstr "" #: ../../../CONTRIBUTING.rst:130 -msgid "Installing docker and docker-compose" -msgstr "" - -#: ../../../CONTRIBUTING.rst:132 -msgid "This is already cover in the relevant documentations:" -msgstr "" - -#: ../../../CONTRIBUTING.rst:134 -msgid "https://docs.docker.com/install/" +msgid "Launch the development server::" msgstr "" #: ../../../CONTRIBUTING.rst:135 -msgid "https://docs.docker.com/compose/install/" +msgid "Make the front-end talk with an existing server (like https://demo.funkwhale.audio or https://open.audio), by clicking on the corresponding link in the footer" msgstr "" -#: ../../../CONTRIBUTING.rst:139 -msgid "If you are on Fedora, know that you can't use `podman` or `moby-engine` to set up the development environment. Stick to `docker-ce` and you'll be fine." +#: ../../../CONTRIBUTING.rst:138 +msgid "Start hacking!" msgstr "" #: ../../../CONTRIBUTING.rst:143 +msgid "If you want to fix a bug or implement a feature, you'll need to run a local, development copy of funkwhale." +msgstr "" + +#: ../../../CONTRIBUTING.rst:146 +msgid "We provide a docker based development environment, which should be both easy to setup and work similarly regardless of your development machine setup." +msgstr "" + +#: ../../../CONTRIBUTING.rst:150 +msgid "Instructions for bare-metal setup will come in the future (Merge requests are welcome)." +msgstr "" + +#: ../../../CONTRIBUTING.rst:154 +msgid "Installing docker and docker-compose" +msgstr "" + +#: ../../../CONTRIBUTING.rst:156 +msgid "This is already cover in the relevant documentations:" +msgstr "" + +#: ../../../CONTRIBUTING.rst:158 +msgid "https://docs.docker.com/install/" +msgstr "" + +#: ../../../CONTRIBUTING.rst:159 +msgid "https://docs.docker.com/compose/install/" +msgstr "" + +#: ../../../CONTRIBUTING.rst:163 +msgid "If you are on Fedora, know that you can't use `podman` or `moby-engine` to set up the development environment. Stick to `docker-ce` and you'll be fine." +msgstr "" + +#: ../../../CONTRIBUTING.rst:167 msgid "Cloning the project" msgstr "" -#: ../../../CONTRIBUTING.rst:145 +#: ../../../CONTRIBUTING.rst:169 msgid "Visit https://dev.funkwhale.audio/funkwhale/funkwhale and clone the repository using SSH or HTTPS. Example using SSH::" msgstr "" -#: ../../../CONTRIBUTING.rst:152 +#: ../../../CONTRIBUTING.rst:176 msgid "As of January 2020, the SSH fingerprints of our Gitlab server are the following::" msgstr "" -#: ../../../CONTRIBUTING.rst:164 +#: ../../../CONTRIBUTING.rst:188 msgid "A note about branches" msgstr "" -#: ../../../CONTRIBUTING.rst:166 +#: ../../../CONTRIBUTING.rst:190 msgid "Next release development occurs on the \"develop\" branch, and releases are made on the \"stable\" branch. Therefore, when submitting Merge Requests, ensure you are merging on the develop branch." msgstr "" -#: ../../../CONTRIBUTING.rst:170 +#: ../../../CONTRIBUTING.rst:194 msgid "Working with docker" msgstr "" -#: ../../../CONTRIBUTING.rst:172 +#: ../../../CONTRIBUTING.rst:196 msgid "In development, we use the docker-compose file named ``dev.yml``, and this is why all our docker-compose commands will look like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:176 +#: ../../../CONTRIBUTING.rst:200 msgid "If you do not want to add the ``-f dev.yml`` snippet every time, you can run this command before starting your work::" msgstr "" -#: ../../../CONTRIBUTING.rst:182 +#: ../../../CONTRIBUTING.rst:206 msgid "Creating your env file" msgstr "" -#: ../../../CONTRIBUTING.rst:184 +#: ../../../CONTRIBUTING.rst:208 msgid "We provide a working .env.dev configuration file that is suitable for development. However, to enable customization on your machine, you should also create a .env file that will hold your personal environment variables (those will not be commited to the project)." msgstr "" -#: ../../../CONTRIBUTING.rst:189 +#: ../../../CONTRIBUTING.rst:213 msgid "Create it like this::" msgstr "" -#: ../../../CONTRIBUTING.rst:193 +#: ../../../CONTRIBUTING.rst:217 msgid "These two environment variables must be included for the images to load in front-end and django admin pages::" msgstr "" -#: ../../../CONTRIBUTING.rst:200 +#: ../../../CONTRIBUTING.rst:224 msgid "Create docker network" msgstr "" -#: ../../../CONTRIBUTING.rst:202 +#: ../../../CONTRIBUTING.rst:226 msgid "Create the federation network::" msgstr "" -#: ../../../CONTRIBUTING.rst:208 +#: ../../../CONTRIBUTING.rst:232 msgid "Building the containers" msgstr "" -#: ../../../CONTRIBUTING.rst:210 +#: ../../../CONTRIBUTING.rst:234 msgid "On your initial clone, or if there have been some changes in the app dependencies, you will have to rebuild your containers. This is done via the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:218 +#: ../../../CONTRIBUTING.rst:242 msgid "Database management" msgstr "" -#: ../../../CONTRIBUTING.rst:220 +#: ../../../CONTRIBUTING.rst:244 msgid "To setup funkwhale's database schema, run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:224 +#: ../../../CONTRIBUTING.rst:248 msgid "This will create all the tables needed for the API to run properly. You will also need to run this whenever changes are made on the database schema." msgstr "" -#: ../../../CONTRIBUTING.rst:228 +#: ../../../CONTRIBUTING.rst:252 msgid "It is safe to run this command multiple times, so you can run it whenever you fetch develop." msgstr "" -#: ../../../CONTRIBUTING.rst:233 +#: ../../../CONTRIBUTING.rst:257 msgid "Development data" msgstr "" -#: ../../../CONTRIBUTING.rst:235 +#: ../../../CONTRIBUTING.rst:259 msgid "You'll need at least an admin user and some artists/tracks/albums to work locally." msgstr "" -#: ../../../CONTRIBUTING.rst:238 +#: ../../../CONTRIBUTING.rst:262 msgid "Create an admin user with the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:242 +#: ../../../CONTRIBUTING.rst:266 msgid "Injecting fake data is done by running the following script::" msgstr "" -#: ../../../CONTRIBUTING.rst:248 +#: ../../../CONTRIBUTING.rst:272 msgid "The previous command will create 25 artists with random albums, tracks and metadata." msgstr "" -#: ../../../CONTRIBUTING.rst:253 +#: ../../../CONTRIBUTING.rst:277 msgid "Launch all services" msgstr "" -#: ../../../CONTRIBUTING.rst:255 +#: ../../../CONTRIBUTING.rst:279 msgid "Before the first Funkwhale launch, it is required to run this::" msgstr "" -#: ../../../CONTRIBUTING.rst:259 +#: ../../../CONTRIBUTING.rst:283 msgid "Then you can run everything with::" msgstr "" -#: ../../../CONTRIBUTING.rst:263 +#: ../../../CONTRIBUTING.rst:287 msgid "This will launch all services, and output the logs in your current terminal window. If you prefer to launch them in the background instead, use the ``-d`` flag, and access the logs when you need it via ``docker-compose -f dev.yml logs --tail=50 --follow``." msgstr "" -#: ../../../CONTRIBUTING.rst:266 +#: ../../../CONTRIBUTING.rst:290 msgid "Once everything is up, you can access the various funkwhale's components:" msgstr "" -#: ../../../CONTRIBUTING.rst:268 +#: ../../../CONTRIBUTING.rst:292 msgid "The Vue webapp, on http://localhost:8000" msgstr "" -#: ../../../CONTRIBUTING.rst:269 +#: ../../../CONTRIBUTING.rst:293 msgid "The API, on http://localhost:8000/api/v1/" msgstr "" -#: ../../../CONTRIBUTING.rst:270 +#: ../../../CONTRIBUTING.rst:294 msgid "The django admin, on http://localhost:8000/api/admin/" msgstr "" -#: ../../../CONTRIBUTING.rst:273 +#: ../../../CONTRIBUTING.rst:297 msgid "Stopping everything" msgstr "" -#: ../../../CONTRIBUTING.rst:275 +#: ../../../CONTRIBUTING.rst:299 msgid "Once you're down with your work, you can stop running containers, if any, with::" msgstr "" -#: ../../../CONTRIBUTING.rst:281 +#: ../../../CONTRIBUTING.rst:305 msgid "Removing everything" msgstr "" -#: ../../../CONTRIBUTING.rst:283 +#: ../../../CONTRIBUTING.rst:307 msgid "If you want to wipe your development environment completely (e.g. if you want to start over from scratch), just run::" msgstr "" -#: ../../../CONTRIBUTING.rst:287 +#: ../../../CONTRIBUTING.rst:311 msgid "This will wipe your containers and data, so please be careful before running it." msgstr "" -#: ../../../CONTRIBUTING.rst:289 +#: ../../../CONTRIBUTING.rst:313 msgid "You can keep your data by removing the ``-v`` flag." msgstr "" -#: ../../../CONTRIBUTING.rst:293 +#: ../../../CONTRIBUTING.rst:317 msgid "Working with federation locally" msgstr "" -#: ../../../CONTRIBUTING.rst:295 +#: ../../../CONTRIBUTING.rst:319 msgid "This is not needed unless you need to work on federation-related features." msgstr "" -#: ../../../CONTRIBUTING.rst:297 +#: ../../../CONTRIBUTING.rst:321 msgid "To achieve that, you'll need:" msgstr "" -#: ../../../CONTRIBUTING.rst:299 +#: ../../../CONTRIBUTING.rst:323 msgid "to update your dns resolver to resolve all your .dev hostnames locally" msgstr "" -#: ../../../CONTRIBUTING.rst:300 +#: ../../../CONTRIBUTING.rst:324 msgid "a reverse proxy (such as traefik) to catch those .dev requests and and with https certificate" msgstr "" -#: ../../../CONTRIBUTING.rst:302 +#: ../../../CONTRIBUTING.rst:326 msgid "two instances (or more) running locally, following the regular dev setup" msgstr "" -#: ../../../CONTRIBUTING.rst:305 +#: ../../../CONTRIBUTING.rst:329 msgid "Resolve .dev names locally" msgstr "" -#: ../../../CONTRIBUTING.rst:307 +#: ../../../CONTRIBUTING.rst:331 msgid "If you use dnsmasq, this is as simple as doing::" msgstr "" -#: ../../../CONTRIBUTING.rst:312 +#: ../../../CONTRIBUTING.rst:336 msgid "If you use NetworkManager with dnsmasq integration, use this instead::" msgstr "" -#: ../../../CONTRIBUTING.rst:318 +#: ../../../CONTRIBUTING.rst:342 msgid "Add wildcard certificate to the trusted certificates" msgstr "" -#: ../../../CONTRIBUTING.rst:320 +#: ../../../CONTRIBUTING.rst:344 msgid "Simply copy bundled certificates::" msgstr "" -#: ../../../CONTRIBUTING.rst:325 +#: ../../../CONTRIBUTING.rst:349 msgid "This certificate is a wildcard for ``*.funkwhale.test``" msgstr "" -#: ../../../CONTRIBUTING.rst:328 +#: ../../../CONTRIBUTING.rst:352 msgid "Run a reverse proxy for your instances" msgstr "" -#: ../../../CONTRIBUTING.rst:332 +#: ../../../CONTRIBUTING.rst:356 msgid "Launch everything" msgstr "" -#: ../../../CONTRIBUTING.rst:334 +#: ../../../CONTRIBUTING.rst:358 msgid "Launch the traefik proxy::" msgstr "" -#: ../../../CONTRIBUTING.rst:338 +#: ../../../CONTRIBUTING.rst:362 msgid "Then, in separate terminals, you can setup as many different instances as you need::" msgstr "" -#: ../../../CONTRIBUTING.rst:347 +#: ../../../CONTRIBUTING.rst:371 msgid "Note that by default, if you don't export the COMPOSE_PROJECT_NAME, we will default to node1 as the name of your instance." msgstr "" -#: ../../../CONTRIBUTING.rst:350 +#: ../../../CONTRIBUTING.rst:374 msgid "Assuming your project name is ``node1``, your server will be reachable at ``https://node1.funkwhale.test/``. Not that you'll have to trust the SSL Certificate as it's self signed." msgstr "" -#: ../../../CONTRIBUTING.rst:354 +#: ../../../CONTRIBUTING.rst:378 msgid "When working on federation with traefik, ensure you have this in your ``env``::" msgstr "" -#: ../../../CONTRIBUTING.rst:367 +#: ../../../CONTRIBUTING.rst:391 msgid "Typical workflow for a contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:369 +#: ../../../CONTRIBUTING.rst:393 msgid "Fork the project if you did not already or if you do not have access to the main repository" msgstr "" -#: ../../../CONTRIBUTING.rst:370 +#: ../../../CONTRIBUTING.rst:394 msgid "Checkout the development branch and pull most recent changes: ``git checkout develop && git pull``" msgstr "" -#: ../../../CONTRIBUTING.rst:371 +#: ../../../CONTRIBUTING.rst:395 msgid "If working on an issue, assign yourself to the issue. Otherwise, consider open an issue before starting to work on something, especially for new features." msgstr "" -#: ../../../CONTRIBUTING.rst:372 +#: ../../../CONTRIBUTING.rst:396 msgid "Create a dedicated branch for your work ``42-awesome-fix``. It is good practice to prefix your branch name with the ID of the issue you are solving." msgstr "" -#: ../../../CONTRIBUTING.rst:373 +#: ../../../CONTRIBUTING.rst:397 msgid "Work on your stuff" msgstr "" -#: ../../../CONTRIBUTING.rst:374 +#: ../../../CONTRIBUTING.rst:398 msgid "[Optional] Consider running ``yarn lint`` in ``front`` if you changed something there. Consider fixing some linting errors in the files you touched." msgstr "" -#: ../../../CONTRIBUTING.rst:376 +#: ../../../CONTRIBUTING.rst:400 msgid "Commit small, atomic changes to make it easier to review your contribution" msgstr "" -#: ../../../CONTRIBUTING.rst:377 +#: ../../../CONTRIBUTING.rst:401 msgid "Add a changelog fragment to summarize your changes: ``echo \"Implemented awesome stuff (#42)\" > changes/changelog.d/42.feature``" msgstr "" -#: ../../../CONTRIBUTING.rst:378 +#: ../../../CONTRIBUTING.rst:402 msgid "Push your branch" msgstr "" -#: ../../../CONTRIBUTING.rst:379 +#: ../../../CONTRIBUTING.rst:403 msgid "Create your merge request" msgstr "" -#: ../../../CONTRIBUTING.rst:380 +#: ../../../CONTRIBUTING.rst:404 msgid "Take a step back and enjoy, we're really grateful you did all of this and took the time to contribute!" msgstr "" -#: ../../../CONTRIBUTING.rst:383 +#: ../../../CONTRIBUTING.rst:407 msgid "Changelog management" msgstr "" -#: ../../../CONTRIBUTING.rst:385 +#: ../../../CONTRIBUTING.rst:409 msgid "To ensure we have extensive and well-structured changelog, any significant work such as closing an issue must include a changelog fragment. Small changes may include a changelog fragment as well but this is not mandatory. If you're not sure about what to do, do not panic, open your merge request normally and we'll figure everything during the review ;)" msgstr "" -#: ../../../CONTRIBUTING.rst:391 +#: ../../../CONTRIBUTING.rst:415 msgid "Changelog fragments are text files that can contain one or multiple lines that describe the changes occurring in a bunch of commits. Those files reside in ``changes/changelog.d``." msgstr "" -#: ../../../CONTRIBUTING.rst:396 +#: ../../../CONTRIBUTING.rst:420 msgid "Content" msgstr "" -#: ../../../CONTRIBUTING.rst:398 +#: ../../../CONTRIBUTING.rst:422 msgid "A typical fragment looks like that:" msgstr "" -#: ../../../CONTRIBUTING.rst:400 +#: ../../../CONTRIBUTING.rst:424 msgid "Fixed broken audio player on Chrome 42 for ogg files (#567)" msgstr "" -#: ../../../CONTRIBUTING.rst:402 +#: ../../../CONTRIBUTING.rst:426 msgid "If the work fixes one or more issues, the issue number should be included at the end of the fragment (``(#567)`` is the issue number in the previous example)." msgstr "" -#: ../../../CONTRIBUTING.rst:405 +#: ../../../CONTRIBUTING.rst:429 msgid "If your work is not related to a specific issue, use the merge request identifier instead, like this:" msgstr "" -#: ../../../CONTRIBUTING.rst:408 +#: ../../../CONTRIBUTING.rst:432 msgid "Fixed a typo in landing page copy (!342)" msgstr "" -#: ../../../CONTRIBUTING.rst:411 +#: ../../../CONTRIBUTING.rst:435 msgid "Naming" msgstr "" -#: ../../../CONTRIBUTING.rst:413 +#: ../../../CONTRIBUTING.rst:437 msgid "Fragment files should respect the following naming pattern: ``changes/changelog.d/.``. Name can be anything describing your work, or simply the identifier of the issue number you are fixing. Category can be one of:" msgstr "" -#: ../../../CONTRIBUTING.rst:417 +#: ../../../CONTRIBUTING.rst:441 msgid "``feature``: for new features" msgstr "" -#: ../../../CONTRIBUTING.rst:418 +#: ../../../CONTRIBUTING.rst:442 msgid "``enhancement``: for enhancements on existing features" msgstr "" -#: ../../../CONTRIBUTING.rst:419 +#: ../../../CONTRIBUTING.rst:443 msgid "``bugfix``: for bugfixes" msgstr "" -#: ../../../CONTRIBUTING.rst:420 +#: ../../../CONTRIBUTING.rst:444 msgid "``doc``: for documentation" msgstr "" -#: ../../../CONTRIBUTING.rst:421 +#: ../../../CONTRIBUTING.rst:445 msgid "``i18n``: for internationalization-related work" msgstr "" -#: ../../../CONTRIBUTING.rst:422 +#: ../../../CONTRIBUTING.rst:446 msgid "``misc``: for anything else" msgstr "" -#: ../../../CONTRIBUTING.rst:425 +#: ../../../CONTRIBUTING.rst:449 msgid "Shortcuts" msgstr "" -#: ../../../CONTRIBUTING.rst:427 +#: ../../../CONTRIBUTING.rst:451 msgid "Here is a shortcut you can use/adapt to easily create new fragments from command-line:" msgstr "" -#: ../../../CONTRIBUTING.rst:436 +#: ../../../CONTRIBUTING.rst:460 msgid "You can of course create fragments by hand in your text editor, or from Gitlab's interface as well." msgstr "" -#: ../../../CONTRIBUTING.rst:440 +#: ../../../CONTRIBUTING.rst:464 msgid "Internationalization" msgstr "" -#: ../../../CONTRIBUTING.rst:442 +#: ../../../CONTRIBUTING.rst:466 msgid "We're using https://github.com/Polyconseil/vue-gettext to manage i18n in the project." msgstr "" -#: ../../../CONTRIBUTING.rst:444 +#: ../../../CONTRIBUTING.rst:468 msgid "When working on the front-end, any end-user string should be marked as a translatable string, with the proper context, as described below." msgstr "" -#: ../../../CONTRIBUTING.rst:448 +#: ../../../CONTRIBUTING.rst:472 msgid "Translations in HTML" msgstr "" -#: ../../../CONTRIBUTING.rst:450 +#: ../../../CONTRIBUTING.rst:474 msgid "Translations in HTML use the ```` tag::" msgstr "" -#: ../../../CONTRIBUTING.rst:474 +#: ../../../CONTRIBUTING.rst:498 msgid "Anything between the `` and `` delimiters will be considered as a translatable string. You can use variables in the translated string via the ``:translate-params=\"{var: 'value'}\"`` directive, and reference them like this: ``val value is %{ value }``." msgstr "" -#: ../../../CONTRIBUTING.rst:478 +#: ../../../CONTRIBUTING.rst:502 msgid "For pluralization, you need to use ``translate-params`` in conjunction with ``translate-plural`` and ``translate-n``:" msgstr "" -#: ../../../CONTRIBUTING.rst:480 +#: ../../../CONTRIBUTING.rst:504 msgid "``translate-params`` should contain the variable you're using for pluralization (which is usually shown to the user)" msgstr "" -#: ../../../CONTRIBUTING.rst:481 +#: ../../../CONTRIBUTING.rst:505 msgid "``translate-n`` should match the same variable" msgstr "" -#: ../../../CONTRIBUTING.rst:482 +#: ../../../CONTRIBUTING.rst:506 msgid "The ```` delimiters contain the non-pluralized version of your string" msgstr "" -#: ../../../CONTRIBUTING.rst:483 +#: ../../../CONTRIBUTING.rst:507 msgid "The ``translate-plural`` directive contains the pluralized version of your string" msgstr "" -#: ../../../CONTRIBUTING.rst:487 +#: ../../../CONTRIBUTING.rst:511 msgid "Translations in javascript" msgstr "" -#: ../../../CONTRIBUTING.rst:489 +#: ../../../CONTRIBUTING.rst:513 msgid "Translations in javascript work by calling the ``this.$*gettext`` functions::" msgstr "" -#: ../../../CONTRIBUTING.rst:504 +#: ../../../CONTRIBUTING.rst:528 msgid "The first argument of the ``$pgettext`` and ``$npgettext`` functions is the string context." msgstr "" -#: ../../../CONTRIBUTING.rst:507 +#: ../../../CONTRIBUTING.rst:531 msgid "Contextualization" msgstr "" -#: ../../../CONTRIBUTING.rst:509 +#: ../../../CONTRIBUTING.rst:533 msgid "Translation contexts provided via the ``translate-context`` directive and the ``$pgettext`` and ``$npgettext`` are never shown to end users but visible by Funkwhale translators. They help translators where and how the strings are used, especially with short or ambiguous strings, like ``May``, which can refer a month or a verb." msgstr "" -#: ../../../CONTRIBUTING.rst:513 +#: ../../../CONTRIBUTING.rst:537 msgid "While we could in theory use free form context, like ``This string is inside a button, in the main page, and is a call to action``, Funkwhale use a hierarchical structure to write contexts and keep them short and consistents accross the app. The previous context, rewritten correctly would be: ``Content/Home/Button/Call to action``." msgstr "" -#: ../../../CONTRIBUTING.rst:517 +#: ../../../CONTRIBUTING.rst:541 msgid "This hierarchical structure is made of several parts:" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "The location part, which is required and refers to the big blocks found in Funkwhale UI where the translated string is displayed:" msgstr "" -#: ../../../CONTRIBUTING.rst:520 +#: ../../../CONTRIBUTING.rst:544 msgid "``Content``" msgstr "" -#: ../../../CONTRIBUTING.rst:521 +#: ../../../CONTRIBUTING.rst:545 msgid "``Footer``" msgstr "" -#: ../../../CONTRIBUTING.rst:522 +#: ../../../CONTRIBUTING.rst:546 msgid "``Head``" msgstr "" -#: ../../../CONTRIBUTING.rst:523 -#: ../../../CONTRIBUTING.rst:567 +#: ../../../CONTRIBUTING.rst:547 +#: ../../../CONTRIBUTING.rst:591 msgid "``Menu``" msgstr "" -#: ../../../CONTRIBUTING.rst:524 +#: ../../../CONTRIBUTING.rst:548 msgid "``Popup``" msgstr "" -#: ../../../CONTRIBUTING.rst:525 +#: ../../../CONTRIBUTING.rst:549 msgid "``Sidebar``" msgstr "" -#: ../../../CONTRIBUTING.rst:526 +#: ../../../CONTRIBUTING.rst:550 msgid "``*`` for strings that are not tied to a specific location" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "The feature part, which is required, and refers to the feature associated with the translated string:" msgstr "" -#: ../../../CONTRIBUTING.rst:529 +#: ../../../CONTRIBUTING.rst:553 msgid "``About``" msgstr "" -#: ../../../CONTRIBUTING.rst:530 +#: ../../../CONTRIBUTING.rst:554 msgid "``Admin``" msgstr "" -#: ../../../CONTRIBUTING.rst:531 +#: ../../../CONTRIBUTING.rst:555 msgid "``Album``" msgstr "" -#: ../../../CONTRIBUTING.rst:532 +#: ../../../CONTRIBUTING.rst:556 msgid "``Artist``" msgstr "" -#: ../../../CONTRIBUTING.rst:533 +#: ../../../CONTRIBUTING.rst:557 msgid "``Embed``" msgstr "" -#: ../../../CONTRIBUTING.rst:534 +#: ../../../CONTRIBUTING.rst:558 msgid "``Home``" msgstr "" -#: ../../../CONTRIBUTING.rst:535 +#: ../../../CONTRIBUTING.rst:559 msgid "``Login``" msgstr "" -#: ../../../CONTRIBUTING.rst:536 +#: ../../../CONTRIBUTING.rst:560 msgid "``Library``" msgstr "" -#: ../../../CONTRIBUTING.rst:537 +#: ../../../CONTRIBUTING.rst:561 msgid "``Moderation``" msgstr "" -#: ../../../CONTRIBUTING.rst:538 +#: ../../../CONTRIBUTING.rst:562 msgid "``Player``" msgstr "" -#: ../../../CONTRIBUTING.rst:539 +#: ../../../CONTRIBUTING.rst:563 msgid "``Playlist``" msgstr "" -#: ../../../CONTRIBUTING.rst:540 +#: ../../../CONTRIBUTING.rst:564 msgid "``Profile``" msgstr "" -#: ../../../CONTRIBUTING.rst:541 +#: ../../../CONTRIBUTING.rst:565 msgid "``Favorites``" msgstr "" -#: ../../../CONTRIBUTING.rst:542 +#: ../../../CONTRIBUTING.rst:566 msgid "``Notifications``" msgstr "" -#: ../../../CONTRIBUTING.rst:543 +#: ../../../CONTRIBUTING.rst:567 msgid "``Radio``" msgstr "" -#: ../../../CONTRIBUTING.rst:544 +#: ../../../CONTRIBUTING.rst:568 msgid "``Search``" msgstr "" -#: ../../../CONTRIBUTING.rst:545 +#: ../../../CONTRIBUTING.rst:569 msgid "``Settings``" msgstr "" -#: ../../../CONTRIBUTING.rst:546 +#: ../../../CONTRIBUTING.rst:570 msgid "``Signup``" msgstr "" -#: ../../../CONTRIBUTING.rst:547 +#: ../../../CONTRIBUTING.rst:571 msgid "``Track``" msgstr "" -#: ../../../CONTRIBUTING.rst:548 +#: ../../../CONTRIBUTING.rst:572 msgid "``Queue``" msgstr "" -#: ../../../CONTRIBUTING.rst:549 +#: ../../../CONTRIBUTING.rst:573 msgid "``*`` for strings that are not tied to a specific feature" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "The component part, which is required and refers to the type of element that contain the string:" msgstr "" -#: ../../../CONTRIBUTING.rst:552 +#: ../../../CONTRIBUTING.rst:576 msgid "``Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:553 +#: ../../../CONTRIBUTING.rst:577 msgid "``Card``" msgstr "" -#: ../../../CONTRIBUTING.rst:554 +#: ../../../CONTRIBUTING.rst:578 msgid "``Checkbox``" msgstr "" -#: ../../../CONTRIBUTING.rst:555 +#: ../../../CONTRIBUTING.rst:579 msgid "``Dropdown``" msgstr "" -#: ../../../CONTRIBUTING.rst:556 +#: ../../../CONTRIBUTING.rst:580 msgid "``Error message``" msgstr "" -#: ../../../CONTRIBUTING.rst:557 +#: ../../../CONTRIBUTING.rst:581 msgid "``Form``" msgstr "" -#: ../../../CONTRIBUTING.rst:558 +#: ../../../CONTRIBUTING.rst:582 msgid "``Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:559 +#: ../../../CONTRIBUTING.rst:583 msgid "``Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:560 +#: ../../../CONTRIBUTING.rst:584 msgid "``Hidden text``" msgstr "" -#: ../../../CONTRIBUTING.rst:561 +#: ../../../CONTRIBUTING.rst:585 msgid "``Icon``" msgstr "" -#: ../../../CONTRIBUTING.rst:562 +#: ../../../CONTRIBUTING.rst:586 msgid "``Input``" msgstr "" -#: ../../../CONTRIBUTING.rst:563 +#: ../../../CONTRIBUTING.rst:587 msgid "``Image``" msgstr "" -#: ../../../CONTRIBUTING.rst:564 +#: ../../../CONTRIBUTING.rst:588 msgid "``Label``" msgstr "" -#: ../../../CONTRIBUTING.rst:565 +#: ../../../CONTRIBUTING.rst:589 msgid "``Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:566 +#: ../../../CONTRIBUTING.rst:590 msgid "``List item``" msgstr "" -#: ../../../CONTRIBUTING.rst:568 +#: ../../../CONTRIBUTING.rst:592 msgid "``Message``" msgstr "" -#: ../../../CONTRIBUTING.rst:569 +#: ../../../CONTRIBUTING.rst:593 msgid "``Paragraph``" msgstr "" -#: ../../../CONTRIBUTING.rst:570 +#: ../../../CONTRIBUTING.rst:594 msgid "``Placeholder``" msgstr "" -#: ../../../CONTRIBUTING.rst:571 +#: ../../../CONTRIBUTING.rst:595 msgid "``Tab``" msgstr "" -#: ../../../CONTRIBUTING.rst:572 +#: ../../../CONTRIBUTING.rst:596 msgid "``Table``" msgstr "" -#: ../../../CONTRIBUTING.rst:573 +#: ../../../CONTRIBUTING.rst:597 msgid "``Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:574 +#: ../../../CONTRIBUTING.rst:598 msgid "``Tooltip``" msgstr "" -#: ../../../CONTRIBUTING.rst:575 +#: ../../../CONTRIBUTING.rst:599 msgid "``*`` for strings that are not tied to a specific component" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "The detail part, which is optional and refers to the contents of the string itself, such as:" msgstr "" -#: ../../../CONTRIBUTING.rst:578 +#: ../../../CONTRIBUTING.rst:602 msgid "``Adjective``" msgstr "" -#: ../../../CONTRIBUTING.rst:579 +#: ../../../CONTRIBUTING.rst:603 msgid "``Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:580 +#: ../../../CONTRIBUTING.rst:604 msgid "``Noun``" msgstr "" -#: ../../../CONTRIBUTING.rst:581 +#: ../../../CONTRIBUTING.rst:605 msgid "``Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:582 +#: ../../../CONTRIBUTING.rst:606 msgid "``Unit``" msgstr "" -#: ../../../CONTRIBUTING.rst:583 +#: ../../../CONTRIBUTING.rst:607 msgid "``Verb``" msgstr "" -#: ../../../CONTRIBUTING.rst:585 +#: ../../../CONTRIBUTING.rst:609 msgid "Here are a few examples of valid context hierarchies:" msgstr "" -#: ../../../CONTRIBUTING.rst:587 +#: ../../../CONTRIBUTING.rst:611 msgid "``Sidebar/Player/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:588 +#: ../../../CONTRIBUTING.rst:612 msgid "``Content/Home/Button/Call to action``" msgstr "" -#: ../../../CONTRIBUTING.rst:589 +#: ../../../CONTRIBUTING.rst:613 msgid "``Footer/*/Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:590 +#: ../../../CONTRIBUTING.rst:614 msgid "``*/*/*/Verb, Short``" msgstr "" -#: ../../../CONTRIBUTING.rst:591 +#: ../../../CONTRIBUTING.rst:615 msgid "``Popup/Playlist/Button``" msgstr "" -#: ../../../CONTRIBUTING.rst:592 +#: ../../../CONTRIBUTING.rst:616 msgid "``Content/Admin/Table.Label/Short, Noun (Value is a date)``" msgstr "" -#: ../../../CONTRIBUTING.rst:594 +#: ../../../CONTRIBUTING.rst:618 msgid "It's possible to nest multiple component parts to reach a higher level of detail. The component parts are then separated by a dot:" msgstr "" -#: ../../../CONTRIBUTING.rst:596 +#: ../../../CONTRIBUTING.rst:620 msgid "``Sidebar/Queue/Tab.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:597 +#: ../../../CONTRIBUTING.rst:621 msgid "``Content/*/Button.Title``" msgstr "" -#: ../../../CONTRIBUTING.rst:598 +#: ../../../CONTRIBUTING.rst:622 msgid "``Content/*/Table.Header``" msgstr "" -#: ../../../CONTRIBUTING.rst:599 +#: ../../../CONTRIBUTING.rst:623 msgid "``Footer/*/List item.Link``" msgstr "" -#: ../../../CONTRIBUTING.rst:600 +#: ../../../CONTRIBUTING.rst:624 msgid "``Content/*/Form.Help text``" msgstr "" -#: ../../../CONTRIBUTING.rst:603 +#: ../../../CONTRIBUTING.rst:627 msgid "Collecting translatable strings" msgstr "" -#: ../../../CONTRIBUTING.rst:605 +#: ../../../CONTRIBUTING.rst:629 msgid "If you want to ensure your translatable strings are correctly marked for translation, you can try to extract them." msgstr "" -#: ../../../CONTRIBUTING.rst:608 +#: ../../../CONTRIBUTING.rst:632 msgid "Extraction is done by calling ``yarn run i18n-extract``, which will pull all the strings from source files and put them in a PO files." msgstr "" -#: ../../../CONTRIBUTING.rst:611 +#: ../../../CONTRIBUTING.rst:635 msgid "You can then inspect the PO files to ensure everything is fine (but don't commit them, it's not needed)." msgstr "" -#: ../../../CONTRIBUTING.rst:614 +#: ../../../CONTRIBUTING.rst:638 msgid "Contributing to the API" msgstr "" -#: ../../../CONTRIBUTING.rst:617 +#: ../../../CONTRIBUTING.rst:641 msgid "Project structure" msgstr "" -#: ../../../CONTRIBUTING.rst:631 +#: ../../../CONTRIBUTING.rst:655 msgid "Unless trivial, API contributions must include unittests to ensure your fix or feature is working as expected and won't break in the future" msgstr "" -#: ../../../CONTRIBUTING.rst:635 -#: ../../../CONTRIBUTING.rst:793 +#: ../../../CONTRIBUTING.rst:659 +#: ../../../CONTRIBUTING.rst:817 msgid "Running tests" msgstr "" -#: ../../../CONTRIBUTING.rst:637 +#: ../../../CONTRIBUTING.rst:661 msgid "To run the pytest test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:641 +#: ../../../CONTRIBUTING.rst:665 msgid "This is regular pytest, so you can use any arguments/options that pytest usually accept::" msgstr "" -#: ../../../CONTRIBUTING.rst:651 +#: ../../../CONTRIBUTING.rst:675 msgid "Writing tests" msgstr "" -#: ../../../CONTRIBUTING.rst:653 +#: ../../../CONTRIBUTING.rst:677 msgid "Although teaching you how to write unit tests is outside of the scope of this document, you'll find below a collection of tips, snippets and resources you can use if you want to learn on that subject." msgstr "" -#: ../../../CONTRIBUTING.rst:657 +#: ../../../CONTRIBUTING.rst:681 msgid "Useful links:" msgstr "" -#: ../../../CONTRIBUTING.rst:659 +#: ../../../CONTRIBUTING.rst:683 msgid "`A quick introduction to unit test writing with pytest `_" msgstr "" -#: ../../../CONTRIBUTING.rst:660 +#: ../../../CONTRIBUTING.rst:684 msgid "`A complete guide to Test-Driven Development (although not using Pytest) `_" msgstr "" -#: ../../../CONTRIBUTING.rst:661 +#: ../../../CONTRIBUTING.rst:685 msgid "`pytest `_: documentation of our testing engine and runner" msgstr "" -#: ../../../CONTRIBUTING.rst:662 +#: ../../../CONTRIBUTING.rst:686 msgid "`pytest-mock `_: project page of our mocking engine" msgstr "" -#: ../../../CONTRIBUTING.rst:663 +#: ../../../CONTRIBUTING.rst:687 msgid "`factory-boy `_: documentation of factory-boy, which we use to easily generate fake objects and data" msgstr "" -#: ../../../CONTRIBUTING.rst:665 +#: ../../../CONTRIBUTING.rst:689 msgid "Recommendations:" msgstr "" -#: ../../../CONTRIBUTING.rst:667 +#: ../../../CONTRIBUTING.rst:691 msgid "Test files must target a module and mimic ``funkwhale_api`` directory structure: if you're writing tests for ``funkwhale_api/myapp/views.py``, you should put thoses tests in ``tests/myapp/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:668 +#: ../../../CONTRIBUTING.rst:692 msgid "Tests should be small and test one thing. If you need to test multiple things, write multiple tests." msgstr "" -#: ../../../CONTRIBUTING.rst:670 +#: ../../../CONTRIBUTING.rst:694 msgid "We provide a lot of utils and fixtures to make the process of writing tests as painless as possible. You'll find some usage examples below." msgstr "" -#: ../../../CONTRIBUTING.rst:673 +#: ../../../CONTRIBUTING.rst:697 msgid "Use factories to create arbitrary objects:" msgstr "" -#: ../../../CONTRIBUTING.rst:708 +#: ../../../CONTRIBUTING.rst:732 msgid "We offer factories for almost if not all models. Factories are located in a ``factories.py`` file inside each app." msgstr "" -#: ../../../CONTRIBUTING.rst:711 +#: ../../../CONTRIBUTING.rst:735 msgid "Mocking: mocking is the process of faking some logic in our code. This is useful when testing components that depend on each other:" msgstr "" -#: ../../../CONTRIBUTING.rst:766 +#: ../../../CONTRIBUTING.rst:790 msgid "Views: you can find some readable views tests in file: ``api/tests/users/test_views.py``" msgstr "" -#: ../../../CONTRIBUTING.rst:770 +#: ../../../CONTRIBUTING.rst:794 msgid "A complete list of available-fixtures is available by running ``docker-compose -f dev.yml run --rm api pytest --fixtures``" msgstr "" -#: ../../../CONTRIBUTING.rst:775 +#: ../../../CONTRIBUTING.rst:799 msgid "Contributing to the front-end" msgstr "" -#: ../../../CONTRIBUTING.rst:778 +#: ../../../CONTRIBUTING.rst:802 msgid "Styles and themes" msgstr "" -#: ../../../CONTRIBUTING.rst:780 +#: ../../../CONTRIBUTING.rst:804 msgid "Our UI framework is Fomantic UI (https://fomantic-ui.com/), and Funkwhale's custom styles are written in SCSS. All the styles are configured in ``front/src/styles/_main.scss``, including imporing of Fomantic UI styles and components." msgstr "" -#: ../../../CONTRIBUTING.rst:783 +#: ../../../CONTRIBUTING.rst:807 msgid "We're applying several changes on top of the Fomantic CSS files, before they are imported:" msgstr "" -#: ../../../CONTRIBUTING.rst:785 +#: ../../../CONTRIBUTING.rst:809 msgid "Many hardcoded color values are replaced by CSS vars: e.g ``color: orange`` is replaced by ``color: var(--vibrant-color)``. This makes theming way easier." msgstr "" -#: ../../../CONTRIBUTING.rst:786 +#: ../../../CONTRIBUTING.rst:810 msgid "Unused components variations and icons are stripped from the source files, in order to reduce the final size of our CSS files" msgstr "" -#: ../../../CONTRIBUTING.rst:788 +#: ../../../CONTRIBUTING.rst:812 msgid "This changes are applied automatically when running ``yarn install``, through a ``postinstall`` hook. Internally, ``front/scripts/fix-fomantic-css.py`` is called and handle both kind of modifications. Please refer to this script if you need to use new icons to the project, or restore some components variations that were stripped in order to use them." msgstr "" -#: ../../../CONTRIBUTING.rst:795 +#: ../../../CONTRIBUTING.rst:819 msgid "To run the front-end test suite, use the following command::" msgstr "" -#: ../../../CONTRIBUTING.rst:799 +#: ../../../CONTRIBUTING.rst:823 msgid "We also support a \"watch and test\" mode were we continually relaunch tests when changes are recorded on the file system::" msgstr "" -#: ../../../CONTRIBUTING.rst:804 +#: ../../../CONTRIBUTING.rst:828 msgid "The latter is especially useful when you are debugging failing tests." msgstr "" -#: ../../../CONTRIBUTING.rst:808 +#: ../../../CONTRIBUTING.rst:832 msgid "The front-end test suite coverage is still pretty low" msgstr "" -#: ../../../CONTRIBUTING.rst:812 +#: ../../../CONTRIBUTING.rst:836 msgid "Making a release" msgstr "" -#: ../../../CONTRIBUTING.rst:814 +#: ../../../CONTRIBUTING.rst:838 msgid "To make a new 3.4 release::" msgstr "" -#: ../../../CONTRIBUTING.rst:853 +#: ../../../CONTRIBUTING.rst:877 msgid "Then, visit https://dev.funkwhale.audio/funkwhale/funkwhale/-/tags, copy-paste the changelog on the corresponding tag, and announce the good news ;)" msgstr "" diff --git a/docs/locales/gettext/developers/authentication.pot b/docs/locales/gettext/developers/authentication.pot index 660ecb330..8b67c38c9 100644 --- a/docs/locales/gettext/developers/authentication.pot +++ b/docs/locales/gettext/developers/authentication.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -132,31 +132,35 @@ msgstr "" msgid "This is the list of OAuth scopes that third-party applications can request:" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:67 +msgid "Oauth scopes" +msgstr "" + +#: ../../developers/authentication.rst:70 msgid "Scope" msgstr "" -#: ../../developers/authentication.rst:69 +#: ../../developers/authentication.rst:71 msgid "Description" msgstr "" -#: ../../developers/authentication.rst:71 +#: ../../developers/authentication.rst:72 msgid "``read``" msgstr "" -#: ../../developers/authentication.rst:71 -msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)" +#: ../../developers/authentication.rst:73 +msgid "Read-only access to all data (equivalent to all ``read:*`` scopes)." msgstr "" #: ../../developers/authentication.rst:74 msgid "``write``" msgstr "" -#: ../../developers/authentication.rst:74 -msgid "Write-only access to all data (equivalent to all ``write:*`` scopes)" +#: ../../developers/authentication.rst:75 +msgid "Read-only access to all data (equivalent to all ``write:*`` scopes)." msgstr "" -#: ../../developers/authentication.rst:77 +#: ../../developers/authentication.rst:76 msgid "``:profile``" msgstr "" @@ -164,74 +168,74 @@ msgstr "" msgid "Access to profile data (e-mail address, username, etc.)" msgstr "" -#: ../../developers/authentication.rst:79 +#: ../../developers/authentication.rst:78 msgid "``:libraries``" msgstr "" #: ../../developers/authentication.rst:79 -msgid "Access to library data (uploads, libraries tracks, albums, artists...)" +msgid "Access to library data (uploads, libraries, tracks, albums, artists…)" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:80 msgid "``:favorites``" msgstr "" -#: ../../developers/authentication.rst:82 +#: ../../developers/authentication.rst:81 msgid "Access to favorites" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:82 msgid "``:listenings``" msgstr "" -#: ../../developers/authentication.rst:84 +#: ../../developers/authentication.rst:83 msgid "Access to history" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:84 msgid "``:follows``" msgstr "" -#: ../../developers/authentication.rst:86 +#: ../../developers/authentication.rst:85 msgid "Access to followers" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:86 msgid "``:playlists``" msgstr "" -#: ../../developers/authentication.rst:88 +#: ../../developers/authentication.rst:87 msgid "Access to playlists" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:88 msgid "``:radios``" msgstr "" -#: ../../developers/authentication.rst:90 +#: ../../developers/authentication.rst:89 msgid "Access to radios" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:90 msgid "``:filters``" msgstr "" -#: ../../developers/authentication.rst:92 +#: ../../developers/authentication.rst:91 msgid "Access to content filters" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:92 msgid "``:notifications``" msgstr "" -#: ../../developers/authentication.rst:94 +#: ../../developers/authentication.rst:93 msgid "Access to notifications" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:94 msgid "``:edits``" msgstr "" -#: ../../developers/authentication.rst:96 +#: ../../developers/authentication.rst:95 msgid "Access to metadata edits" msgstr "" diff --git a/docs/locales/gettext/user_documentation/libraries/tag_music.pot b/docs/locales/gettext/user_documentation/libraries/tag_music.pot index 92cb0bc59..d9ba0e65f 100644 --- a/docs/locales/gettext/user_documentation/libraries/tag_music.pot +++ b/docs/locales/gettext/user_documentation/libraries/tag_music.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: funkwhale 1.2.5\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-07-01 10:35+0200\n" +"POT-Creation-Date: 2022-07-03 22:14+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -32,92 +32,274 @@ msgstr "" msgid "This guide shows you how to tag your content with MusicBrainz Picard." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:34 -msgid "Tag content" +#: ../../user_documentation/libraries/tag_music.md:19 +msgid "Name" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:36 -msgid "To tag content using MusicBrainz Picard:" +#: ../../user_documentation/libraries/tag_music.md:20 +msgid "Description" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:21 +msgid "Example value" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:22 +msgid "`Title`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:23 +msgid "The track title." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:24 +msgid "`Letting you`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:25 +msgid "`Artist`*" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:26 +msgid "The artist name." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:27 +msgid "`Nine Inch Nails`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:28 +msgid "`Album`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:29 +msgid "The album title. If none is provided, an `[Unknown Album]` entry is created." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:30 +msgid "`The Slip`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:31 +msgid "`Album artist`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:32 +msgid "The album artist name (can be different than the track artist)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:33 +msgid "`Trent Reznor`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:34 +msgid "`Genre`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:35 +msgid "A comma separated list of tags to associate with the track. Other supported separators: `;` and `/`." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:37 +msgid "`Industrial, Metal`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:38 -msgid "Select {guilabel}`Add Files` to add individual files or {guilabel}`Add Folder` to add a directory of files." +msgid "`Track number`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:39 -msgid "Select the files or directory you want to tag." +msgid "The position of the track in the album/release." msgstr "" #: ../../user_documentation/libraries/tag_music.md:40 -msgid "Picard shows the files in the left panel. Picard moves files to the right panel as it tags them. If Picard doesn't tag a file automatically, select {guilabel}`Scan`." +msgid "`4`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:41 -msgid "Check a file's tags by highlighting it and looking at the details in the bottom panel. If Picard has applied the wrong tags, look for [alternative versions](#alternative-versions)." +msgid "`Disc number`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:42 -#: ../../user_documentation/libraries/tag_music.md:56 -#: ../../user_documentation/libraries/tag_music.md:65 -msgid "Select {guilabel}`Save` or hit {kbd}`ctrl+s` ({kbd}`cmd+s` on macOS) to save the tags to the files." +msgid "The disc number (in case of multi-disc albums)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:43 +msgid "`1`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:44 -msgid "That's it! You've added ID3 tags to your files. You can now [add these to a library](upload_content.md)" +msgid "`Date`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:45 +msgid "The release date of the track or album." msgstr "" #: ../../user_documentation/libraries/tag_music.md:46 -msgid "Alternative versions" +msgid "`2019`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:47 +msgid "`License`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:48 -msgid "Picard will choose tags based on details included in your file. Sometimes it chooses a different version of a release than the one you want. You can choose an alternative version of your content to get the right tags." +msgid "The license associated with this work. The first URL found is checked against our list of supported licenses." msgstr "" #: ../../user_documentation/libraries/tag_music.md:50 -msgid "Alternative albums" +#: ../../user_documentation/libraries/tag_music.md:54 +msgid "`CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:51 +msgid "`Copyright`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:52 -msgid "If Picard has selected a different version of the album you are tagging:" -msgstr "" - -#: ../../user_documentation/libraries/tag_music.md:54 -msgid "Right-click on the album and hover your mouse over {guilabel}`Other versions`. A dropdown list of alternative versions appears." +msgid "The license associated with this work. The first URL found is checked against our list of supported licenses. Used if no license found in the `License` tag." msgstr "" #: ../../user_documentation/libraries/tag_music.md:55 -msgid "Select the correct release from the list." +msgid "`Pictures`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:56 +msgid "The first embeded picture found is used as the album cover." msgstr "" #: ../../user_documentation/libraries/tag_music.md:58 -msgid "Alternative tracks" +msgid "`MusicBrainz Recording ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:59 +msgid "The MusicBrainz ID for the recording." msgstr "" #: ../../user_documentation/libraries/tag_music.md:60 -msgid "If Picard can't find a release for a track:" +msgid "`99244237-850b-4a93-904d-57305bcadb4e`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:61 +msgid "`MusicBrainz Album ID`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:62 -msgid "Right-click on the track and select {guilabel}`Search for Similar Tracks…`. A search screen appears." +msgid "The MusicBrainz ID for the album." msgstr "" #: ../../user_documentation/libraries/tag_music.md:63 -msgid "Search for your track. Use [MusicBrainz's search syntax](https://musicbrainz.org/doc/Indexed_Search_Syntax) for the best results." +msgid "`bca982fd-ab73-3c9f-ad07-9104a4f53a32`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:64 -msgid "Select the correct track and click on {guilabel}`Load into Picard`." +msgid "`MusicBrainz Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:65 +msgid "The MusicBrainz ID for the artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:66 +#: ../../user_documentation/libraries/tag_music.md:69 +msgid "`b7ffd2af-418f-4be2-bdd1-22f8b48613da`" msgstr "" #: ../../user_documentation/libraries/tag_music.md:67 +msgid "`MusicBrainz Album Artist ID`" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:68 +msgid "The MusicBrainz ID for the album artist." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:74 +msgid "Tag content" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:76 +msgid "To tag content using MusicBrainz Picard:" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:78 +msgid "Select {guilabel}`Add Files` to add individual files or {guilabel}`Add Folder` to add a directory of files." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:79 +msgid "Select the files or directory you want to tag." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:80 +msgid "Picard shows the files in the left panel. Picard moves files to the right panel as it tags them. If Picard doesn't tag a file automatically, select {guilabel}`Scan`." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:81 +msgid "Check a file's tags by highlighting it and looking at the details in the bottom panel. If Picard has applied the wrong tags, look for [alternative versions](#alternative-versions)." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:82 +#: ../../user_documentation/libraries/tag_music.md:96 +#: ../../user_documentation/libraries/tag_music.md:105 +msgid "Select {guilabel}`Save` or hit {kbd}`ctrl+s` ({kbd}`cmd+s` on macOS) to save the tags to the files." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:84 +msgid "That's it! You've added ID3 tags to your files. You can now [add these to a library](upload_content.md)" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:86 +msgid "Alternative versions" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:88 +msgid "Picard will choose tags based on details included in your file. Sometimes it chooses a different version of a release than the one you want. You can choose an alternative version of your content to get the right tags." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:90 +msgid "Alternative albums" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:92 +msgid "If Picard has selected a different version of the album you are tagging:" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:94 +msgid "Right-click on the album and hover your mouse over {guilabel}`Other versions`. A dropdown list of alternative versions appears." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:95 +msgid "Select the correct release from the list." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:98 +msgid "Alternative tracks" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:100 +msgid "If Picard can't find a release for a track:" +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:102 +msgid "Right-click on the track and select {guilabel}`Search for Similar Tracks…`. A search screen appears." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:103 +msgid "Search for your track. Use [MusicBrainz's search syntax](https://musicbrainz.org/doc/Indexed_Search_Syntax) for the best results." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:104 +msgid "Select the correct track and click on {guilabel}`Load into Picard`." +msgstr "" + +#: ../../user_documentation/libraries/tag_music.md:107 msgid "Add items to MusicBrainz" msgstr "" -#: ../../user_documentation/libraries/tag_music.md:69 +#: ../../user_documentation/libraries/tag_music.md:109 msgid "If Picard can't find your content, you can add it to MusicBrainz yourself. To get started, check out [MusicBrainz's guide](https://musicbrainz.org/doc/How_to_Add_a_Release/)." msgstr "" -#: ../../user_documentation/libraries/tag_music.md:71 +#: ../../user_documentation/libraries/tag_music.md:111 msgid "Once you have added the content to MusicBrainz, Picard can tag your files." msgstr "" diff --git a/docs/user_documentation/libraries/tag_music.md b/docs/user_documentation/libraries/tag_music.md index 56a0014df..fb192a62c 100644 --- a/docs/user_documentation/libraries/tag_music.md +++ b/docs/user_documentation/libraries/tag_music.md @@ -10,27 +10,67 @@ This guide shows you how to tag your content with MusicBrainz Picard. :local: ``` -```{dropdown} Supported tags +````{dropdown} Supported tags + +```{list-table} +:header-rows: 1 + +* - Name + - Description + - Example value +* - `Title`* + - The track title. + - `Letting you` +* - `Artist`* + - The artist name. + - `Nine Inch Nails` +* - `Album` + - The album title. If none is provided, an `[Unknown Album]` entry is created. + - `The Slip` +* - `Album artist` + - The album artist name (can be different than the track artist). + - `Trent Reznor` +* - `Genre` + - A comma separated list of tags to associate with the track. + Other supported separators: `;` and `/`. + - `Industrial, Metal` +* - `Track number` + - The position of the track in the album/release. + - `4` +* - `Disc number` + - The disc number (in case of multi-disc albums). + - `1` +* - `Date` + - The release date of the track or album. + - `2019` +* - `License` + - The license associated with this work. + The first URL found is checked against our list of supported licenses. + - `CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/` +* - `Copyright` + - The license associated with this work. The first URL found is checked against our list of supported licenses. + Used if no license found in the `License` tag. + - `CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/` +* - `Pictures` + - The first embeded picture found is used as the album cover. + - +* - `MusicBrainz Recording ID` + - The MusicBrainz ID for the recording. + - `99244237-850b-4a93-904d-57305bcadb4e` +* - `MusicBrainz Album ID` + - The MusicBrainz ID for the album. + - `bca982fd-ab73-3c9f-ad07-9104a4f53a32` +* - `MusicBrainz Artist ID` + - The MusicBrainz ID for the artist. + - `b7ffd2af-418f-4be2-bdd1-22f8b48613da` +* - `MusicBrainz Album Artist ID` + - The MusicBrainz ID for the album artist. + - `b7ffd2af-418f-4be2-bdd1-22f8b48613da` -| Name | Example value | Description | -|-------------------------------|-------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| `Title`* | `Letting you` | The track title. | -| `Artist`* | `Nine Inch Nails` | The artist name. | -| `Album` | `The Slip` | The album title. If none is provided, an `[Unknown Album]` entry is created. | -| `Album artist` | `Trent Reznor` | The album artist name (can be different than the track artist). | -| `Genre` | `Industrial, Metal` | A comma separated list of tags to associate with the track.

Other supported separators: `;` and `/` | -| `Track number` | `4` | The position of the track in the album/release. | -| `Disc number` | `1` | The disc number (in case of multi-disc albums). | -| `Date` | `2019` | The release date of the track or album. | -| `License` | `CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/` | The license associated with this work. The first URL found is checked against our list of supported licenses. | -| `Copyright` | `CC-BY 3.0: http://creativecommons.org/licenses/cc-by/3.0/` | The license associated with this work. The first URL found is checked against our list of supported licenses.

Used if no license found in the `License` tag. | -| `Pictures` | | The first embeded picture found is used as the album cover. | -| `MusicBrainz Recording ID` | `99244237-850b-4a93-904d-57305bcadb4e` | The MusicBrainz ID for the recording. | -| `MusicBrainz Album ID` | `bca982fd-ab73-3c9f-ad07-9104a4f53a32` | The MusicBrainz ID for the album | -| `MusicBrainz Artist ID` | `b7ffd2af-418f-4be2-bdd1-22f8b48613da` | The MusicBrainz ID for the artist | -| `MusicBrainz Album Artist ID` | `b7ffd2af-418f-4be2-bdd1-22f8b48613da` | The MusicBrainz ID for the album artist | ``` +```` + ## Tag content To tag content using MusicBrainz Picard: