funkwhale/docs/locales/gettext/contributing.pot

1149 wiersze
34 KiB
Plaintext
Czysty Zwykły widok Historia

2022-04-26 12:04:02 +00:00
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2022, The Funkwhale Collective
# This file is distributed under the same license as the funkwhale package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
2022-07-01 09:02:29 +00:00
"Project-Id-Version: funkwhale 1.2.5\n"
2022-04-26 12:04:02 +00:00
"Report-Msgid-Bugs-To: \n"
2022-07-03 20:30:09 +00:00
"POT-Creation-Date: 2022-07-03 22:14+0200\n"
2022-04-26 12:04:02 +00:00
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: ../../../CONTRIBUTING.rst:2
msgid "Contribute to Funkwhale development"
msgstr ""
#: ../../../CONTRIBUTING.rst:4
msgid "First of all, thank you for your interest in the project! We really appreciate the fact that you're about to take some time to read this and hack on the project."
msgstr ""
#: ../../../CONTRIBUTING.rst:8
msgid "This document will guide you through common operations such as:"
msgstr ""
#: ../../../CONTRIBUTING.rst:10
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:141
2022-04-26 12:04:02 +00:00
msgid "Setup your development environment"
msgstr ""
#: ../../../CONTRIBUTING.rst:11
msgid "Working on your first issue"
msgstr ""
#: ../../../CONTRIBUTING.rst:12
msgid "Writing unit tests to validate your work"
msgstr ""
#: ../../../CONTRIBUTING.rst:13
msgid "Submit your work"
msgstr ""
#: ../../../CONTRIBUTING.rst:16
2022-07-01 09:02:29 +00:00
msgid "The quickest way to contribute to the project is through Gitpod!"
msgstr ""
#: ../../../CONTRIBUTING.rst:None
msgid "Open in Gitpod"
msgstr ""
#: ../../../CONTRIBUTING.rst:22
msgid "When you click the button above, you will be redirected to the gitpod.io site. Here you can sign in with your Gitlab or GitHub account and a new workspace will be automatically created for you."
msgstr ""
#: ../../../CONTRIBUTING.rst:26
msgid "The workspace will checkout current ``development`` branch and run a Funkwhale instance with both frontend and backend started so you can jump straight into development."
msgstr ""
#: ../../../CONTRIBUTING.rst:29
msgid "The provided backend instance has a default admin user ``gitpod`` authenticated with password ``gitpod``."
msgstr ""
#: ../../../CONTRIBUTING.rst:32
msgid "In case you want to develop only frontend, you can go to ``File > Open Folder`` and navigate to ``/workspace/funkwhale/front``. This will start a new vite server on port 4000. This server integrates well with the extension provided by Gitpod but is disconnected from any instance by default."
msgstr ""
#: ../../../CONTRIBUTING.rst:37
msgid "Usage with Gitlab"
msgstr ""
#: ../../../CONTRIBUTING.rst:39
msgid "We understand that having to go to the contribution guide and clicking the ``Open in Gitpod`` is not an optimal way to create new branches or test existing ones. That's why we've enabled the Gitpod integration on our Gitlab server."
msgstr ""
#: ../../../CONTRIBUTING.rst:43
msgid "You can now simply choose to use Gitpod instead of Gitlab Web IDE on any of branch, commit or merge request:"
msgstr ""
#: ../../../CONTRIBUTING.rst:None
msgid "Select Gitpod as the default Web IDE."
msgstr ""
#: ../../../CONTRIBUTING.rst:49
msgid "Gitlab Workflow extension"
msgstr ""
#: ../../../CONTRIBUTING.rst:51
msgid "Gitpod offers a `Gitlab Workflow` extension that can help with managing Gitlab issues, merge requests and pipelines. To use it you need to create a personal access token with ``api`` and ``read_user`` scopes. You can create it by visiting `your Gitlab profile settings <https://dev.funkwhale.audio/-/profile/personal_access_tokens>`_."
msgstr ""
#: ../../../CONTRIBUTING.rst:55
msgid "Setting the token through the extension is not an optimal approach as you'd need to do this every single time you start a new workspace. However you can work around this by creating user environment variables in `your Gitpod settings <https://gitpod.io/variables>`_."
msgstr ""
#: ../../../CONTRIBUTING.rst:59
msgid "When you configure your environment variables as follows, you will be signed in to the extension automatically in old and new workspaces."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:62
msgid "Environment variables"
msgstr ""
#: ../../../CONTRIBUTING.rst:65
#: ../../../CONTRIBUTING.rst:88
2022-07-01 09:02:29 +00:00
msgid "Name"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:66
#: ../../../CONTRIBUTING.rst:89
2022-07-01 09:02:29 +00:00
msgid "Value"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:67
#: ../../../CONTRIBUTING.rst:90
2022-07-01 09:02:29 +00:00
msgid "Scope"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:68
2022-07-01 09:02:29 +00:00
msgid "``GITLAB_WORKFLOW_INSTANCE_URL``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:69
2022-07-01 09:02:29 +00:00
msgid "``https://dev.funkwhale.audio``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:70
#: ../../../CONTRIBUTING.rst:73
2022-07-01 09:02:29 +00:00
msgid "``funkwhale/*``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:71
2022-07-01 09:02:29 +00:00
msgid "``GITLAB_WORKFLOW_TOKEN``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:72
2022-07-01 09:02:29 +00:00
msgid "``TOKEN``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:75
2022-07-01 09:02:29 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../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 <https://gitpod.io/variables>`_."
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
2022-04-26 12:04:02 +00:00
msgid "A quick path to contribute on the front-end"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:100
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:104
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:107
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:112
2022-04-26 12:04:02 +00:00
msgid "Setup front-end only development environment"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:114
2022-04-26 12:04:02 +00:00
msgid "Clone the repository::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:120
2022-04-26 12:04:02 +00:00
msgid "Install `nodejs <https://nodejs.org/en/download/package-manager/>`_ and `yarn <https://yarnpkg.com/lang/en/docs/install/#debian-stable>`_"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:122
2022-04-26 12:04:02 +00:00
msgid "Install the dependencies::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:126
2022-04-26 12:04:02 +00:00
msgid "Compile the translations::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:130
2022-04-26 12:04:02 +00:00
msgid "Launch the development server::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:135
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:138
2022-04-26 12:04:02 +00:00
msgid "Start hacking!"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:143
2022-04-26 12:04:02 +00:00
msgid "If you want to fix a bug or implement a feature, you'll need to run a local, development copy of funkwhale."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:146
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:150
2022-04-26 12:04:02 +00:00
msgid "Instructions for bare-metal setup will come in the future (Merge requests are welcome)."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:154
2022-04-26 12:04:02 +00:00
msgid "Installing docker and docker-compose"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:156
2022-04-26 12:04:02 +00:00
msgid "This is already cover in the relevant documentations:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:158
2022-04-26 12:04:02 +00:00
msgid "https://docs.docker.com/install/"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:159
2022-04-26 12:04:02 +00:00
msgid "https://docs.docker.com/compose/install/"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:163
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:167
2022-04-26 12:04:02 +00:00
msgid "Cloning the project"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:169
2022-04-26 12:04:02 +00:00
msgid "Visit https://dev.funkwhale.audio/funkwhale/funkwhale and clone the repository using SSH or HTTPS. Example using SSH::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:176
2022-04-26 12:04:02 +00:00
msgid "As of January 2020, the SSH fingerprints of our Gitlab server are the following::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:188
2022-04-26 12:04:02 +00:00
msgid "A note about branches"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:190
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:194
2022-04-26 12:04:02 +00:00
msgid "Working with docker"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:196
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:200
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:206
2022-04-26 12:04:02 +00:00
msgid "Creating your env file"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:208
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:213
2022-04-26 12:04:02 +00:00
msgid "Create it like this::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:217
2022-07-01 09:02:29 +00:00
msgid "These two environment variables must be included for the images to load in front-end and django admin pages::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:224
2022-04-26 12:04:02 +00:00
msgid "Create docker network"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:226
2022-04-26 12:04:02 +00:00
msgid "Create the federation network::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:232
2022-04-26 12:04:02 +00:00
msgid "Building the containers"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:234
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:242
2022-04-26 12:04:02 +00:00
msgid "Database management"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:244
2022-04-26 12:04:02 +00:00
msgid "To setup funkwhale's database schema, run this::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:248
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:252
2022-04-26 12:04:02 +00:00
msgid "It is safe to run this command multiple times, so you can run it whenever you fetch develop."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:257
2022-04-26 12:04:02 +00:00
msgid "Development data"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:259
2022-04-26 12:04:02 +00:00
msgid "You'll need at least an admin user and some artists/tracks/albums to work locally."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:262
2022-04-26 12:04:02 +00:00
msgid "Create an admin user with the following command::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:266
2022-04-26 12:04:02 +00:00
msgid "Injecting fake data is done by running the following script::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:272
2022-04-26 12:04:02 +00:00
msgid "The previous command will create 25 artists with random albums, tracks and metadata."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:277
2022-04-26 12:04:02 +00:00
msgid "Launch all services"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:279
2022-04-26 12:04:02 +00:00
msgid "Before the first Funkwhale launch, it is required to run this::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:283
2022-04-26 12:04:02 +00:00
msgid "Then you can run everything with::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:287
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:290
2022-04-26 12:04:02 +00:00
msgid "Once everything is up, you can access the various funkwhale's components:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:292
2022-04-26 12:04:02 +00:00
msgid "The Vue webapp, on http://localhost:8000"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:293
2022-04-26 12:04:02 +00:00
msgid "The API, on http://localhost:8000/api/v1/"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:294
2022-04-26 12:04:02 +00:00
msgid "The django admin, on http://localhost:8000/api/admin/"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:297
2022-04-26 12:04:02 +00:00
msgid "Stopping everything"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:299
2022-04-26 12:04:02 +00:00
msgid "Once you're down with your work, you can stop running containers, if any, with::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:305
2022-04-26 12:04:02 +00:00
msgid "Removing everything"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:307
2022-04-26 12:04:02 +00:00
msgid "If you want to wipe your development environment completely (e.g. if you want to start over from scratch), just run::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:311
2022-04-26 12:04:02 +00:00
msgid "This will wipe your containers and data, so please be careful before running it."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:313
2022-04-26 12:04:02 +00:00
msgid "You can keep your data by removing the ``-v`` flag."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:317
2022-04-26 12:04:02 +00:00
msgid "Working with federation locally"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:319
2022-04-26 12:04:02 +00:00
msgid "This is not needed unless you need to work on federation-related features."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:321
2022-04-26 12:04:02 +00:00
msgid "To achieve that, you'll need:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:323
2022-04-26 12:04:02 +00:00
msgid "to update your dns resolver to resolve all your .dev hostnames locally"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:324
2022-04-26 12:04:02 +00:00
msgid "a reverse proxy (such as traefik) to catch those .dev requests and and with https certificate"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:326
2022-04-26 12:04:02 +00:00
msgid "two instances (or more) running locally, following the regular dev setup"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:329
2022-04-26 12:04:02 +00:00
msgid "Resolve .dev names locally"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:331
2022-04-26 12:04:02 +00:00
msgid "If you use dnsmasq, this is as simple as doing::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:336
2022-04-26 12:04:02 +00:00
msgid "If you use NetworkManager with dnsmasq integration, use this instead::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:342
2022-04-26 12:04:02 +00:00
msgid "Add wildcard certificate to the trusted certificates"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:344
2022-04-26 12:04:02 +00:00
msgid "Simply copy bundled certificates::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:349
2022-04-26 12:04:02 +00:00
msgid "This certificate is a wildcard for ``*.funkwhale.test``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:352
2022-04-26 12:04:02 +00:00
msgid "Run a reverse proxy for your instances"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:356
2022-04-26 12:04:02 +00:00
msgid "Launch everything"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:358
2022-04-26 12:04:02 +00:00
msgid "Launch the traefik proxy::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:362
2022-04-26 12:04:02 +00:00
msgid "Then, in separate terminals, you can setup as many different instances as you need::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:371
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:374
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:378
2022-04-26 12:04:02 +00:00
msgid "When working on federation with traefik, ensure you have this in your ``env``::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:391
2022-04-26 12:04:02 +00:00
msgid "Typical workflow for a contribution"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:393
2022-04-26 12:04:02 +00:00
msgid "Fork the project if you did not already or if you do not have access to the main repository"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:394
2022-04-26 12:04:02 +00:00
msgid "Checkout the development branch and pull most recent changes: ``git checkout develop && git pull``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:395
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:396
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:397
2022-04-26 12:04:02 +00:00
msgid "Work on your stuff"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:398
2022-04-26 12:04:02 +00:00
msgid "[Optional] Consider running ``yarn lint`` in ``front`` if you changed something there. Consider fixing some linting errors in the files you touched."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:400
2022-04-26 12:04:02 +00:00
msgid "Commit small, atomic changes to make it easier to review your contribution"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:401
2022-04-26 12:04:02 +00:00
msgid "Add a changelog fragment to summarize your changes: ``echo \"Implemented awesome stuff (#42)\" > changes/changelog.d/42.feature``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:402
2022-04-26 12:04:02 +00:00
msgid "Push your branch"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:403
2022-04-26 12:04:02 +00:00
msgid "Create your merge request"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:404
2022-04-26 12:04:02 +00:00
msgid "Take a step back and enjoy, we're really grateful you did all of this and took the time to contribute!"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:407
2022-04-26 12:04:02 +00:00
msgid "Changelog management"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:409
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:415
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:420
2022-04-26 12:04:02 +00:00
msgid "Content"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:422
2022-04-26 12:04:02 +00:00
msgid "A typical fragment looks like that:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:424
2022-04-26 12:04:02 +00:00
msgid "Fixed broken audio player on Chrome 42 for ogg files (#567)"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:426
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:429
2022-04-26 12:04:02 +00:00
msgid "If your work is not related to a specific issue, use the merge request identifier instead, like this:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:432
2022-04-26 12:04:02 +00:00
msgid "Fixed a typo in landing page copy (!342)"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:435
2022-04-26 12:04:02 +00:00
msgid "Naming"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:437
2022-04-26 12:04:02 +00:00
msgid "Fragment files should respect the following naming pattern: ``changes/changelog.d/<name>.<category>``. Name can be anything describing your work, or simply the identifier of the issue number you are fixing. Category can be one of:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:441
2022-04-26 12:04:02 +00:00
msgid "``feature``: for new features"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:442
2022-04-26 12:04:02 +00:00
msgid "``enhancement``: for enhancements on existing features"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:443
2022-04-26 12:04:02 +00:00
msgid "``bugfix``: for bugfixes"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:444
2022-04-26 12:04:02 +00:00
msgid "``doc``: for documentation"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:445
2022-04-26 12:04:02 +00:00
msgid "``i18n``: for internationalization-related work"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:446
2022-04-26 12:04:02 +00:00
msgid "``misc``: for anything else"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:449
2022-04-26 12:04:02 +00:00
msgid "Shortcuts"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:451
2022-04-26 12:04:02 +00:00
msgid "Here is a shortcut you can use/adapt to easily create new fragments from command-line:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:460
2022-04-26 12:04:02 +00:00
msgid "You can of course create fragments by hand in your text editor, or from Gitlab's interface as well."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:464
2022-04-26 12:04:02 +00:00
msgid "Internationalization"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:466
2022-04-26 12:04:02 +00:00
msgid "We're using https://github.com/Polyconseil/vue-gettext to manage i18n in the project."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:468
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:472
2022-04-26 12:04:02 +00:00
msgid "Translations in HTML"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:474
2022-04-26 12:04:02 +00:00
msgid "Translations in HTML use the ``<translate>`` tag::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:498
2022-04-26 12:04:02 +00:00
msgid "Anything between the `<translate>` and `</translate>` 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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:502
2022-04-26 12:04:02 +00:00
msgid "For pluralization, you need to use ``translate-params`` in conjunction with ``translate-plural`` and ``translate-n``:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:504
2022-04-26 12:04:02 +00:00
msgid "``translate-params`` should contain the variable you're using for pluralization (which is usually shown to the user)"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:505
2022-04-26 12:04:02 +00:00
msgid "``translate-n`` should match the same variable"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:506
2022-04-26 12:04:02 +00:00
msgid "The ``<translate>`` delimiters contain the non-pluralized version of your string"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:507
2022-04-26 12:04:02 +00:00
msgid "The ``translate-plural`` directive contains the pluralized version of your string"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:511
2022-04-26 12:04:02 +00:00
msgid "Translations in javascript"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:513
2022-04-26 12:04:02 +00:00
msgid "Translations in javascript work by calling the ``this.$*gettext`` functions::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:528
2022-04-26 12:04:02 +00:00
msgid "The first argument of the ``$pgettext`` and ``$npgettext`` functions is the string context."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:531
2022-04-26 12:04:02 +00:00
msgid "Contextualization"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:533
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:537
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:541
2022-04-26 12:04:02 +00:00
msgid "This hierarchical structure is made of several parts:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:550
2022-04-26 12:04:02 +00:00
msgid "The location part, which is required and refers to the big blocks found in Funkwhale UI where the translated string is displayed:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:544
2022-04-26 12:04:02 +00:00
msgid "``Content``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:545
2022-04-26 12:04:02 +00:00
msgid "``Footer``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:546
2022-04-26 12:04:02 +00:00
msgid "``Head``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:547
#: ../../../CONTRIBUTING.rst:591
2022-04-26 12:04:02 +00:00
msgid "``Menu``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:548
2022-04-26 12:04:02 +00:00
msgid "``Popup``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:549
2022-04-26 12:04:02 +00:00
msgid "``Sidebar``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:550
2022-04-26 12:04:02 +00:00
msgid "``*`` for strings that are not tied to a specific location"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:573
2022-04-26 12:04:02 +00:00
msgid "The feature part, which is required, and refers to the feature associated with the translated string:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:553
2022-04-26 12:04:02 +00:00
msgid "``About``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:554
2022-04-26 12:04:02 +00:00
msgid "``Admin``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:555
2022-04-26 12:04:02 +00:00
msgid "``Album``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:556
2022-04-26 12:04:02 +00:00
msgid "``Artist``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:557
2022-04-26 12:04:02 +00:00
msgid "``Embed``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:558
2022-04-26 12:04:02 +00:00
msgid "``Home``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:559
2022-04-26 12:04:02 +00:00
msgid "``Login``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:560
2022-04-26 12:04:02 +00:00
msgid "``Library``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:561
2022-04-26 12:04:02 +00:00
msgid "``Moderation``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:562
2022-04-26 12:04:02 +00:00
msgid "``Player``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:563
2022-04-26 12:04:02 +00:00
msgid "``Playlist``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:564
2022-04-26 12:04:02 +00:00
msgid "``Profile``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:565
2022-04-26 12:04:02 +00:00
msgid "``Favorites``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:566
2022-04-26 12:04:02 +00:00
msgid "``Notifications``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:567
2022-04-26 12:04:02 +00:00
msgid "``Radio``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:568
2022-04-26 12:04:02 +00:00
msgid "``Search``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:569
2022-04-26 12:04:02 +00:00
msgid "``Settings``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:570
2022-04-26 12:04:02 +00:00
msgid "``Signup``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:571
2022-04-26 12:04:02 +00:00
msgid "``Track``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:572
2022-04-26 12:04:02 +00:00
msgid "``Queue``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:573
2022-04-26 12:04:02 +00:00
msgid "``*`` for strings that are not tied to a specific feature"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:599
2022-04-26 12:04:02 +00:00
msgid "The component part, which is required and refers to the type of element that contain the string:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:576
2022-04-26 12:04:02 +00:00
msgid "``Button``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:577
2022-04-26 12:04:02 +00:00
msgid "``Card``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:578
2022-04-26 12:04:02 +00:00
msgid "``Checkbox``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:579
2022-04-26 12:04:02 +00:00
msgid "``Dropdown``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:580
2022-04-26 12:04:02 +00:00
msgid "``Error message``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:581
2022-04-26 12:04:02 +00:00
msgid "``Form``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:582
2022-04-26 12:04:02 +00:00
msgid "``Header``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:583
2022-04-26 12:04:02 +00:00
msgid "``Help text``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:584
2022-04-26 12:04:02 +00:00
msgid "``Hidden text``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:585
2022-04-26 12:04:02 +00:00
msgid "``Icon``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:586
2022-04-26 12:04:02 +00:00
msgid "``Input``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:587
2022-04-26 12:04:02 +00:00
msgid "``Image``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:588
2022-04-26 12:04:02 +00:00
msgid "``Label``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:589
2022-04-26 12:04:02 +00:00
msgid "``Link``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:590
2022-04-26 12:04:02 +00:00
msgid "``List item``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:592
2022-04-26 12:04:02 +00:00
msgid "``Message``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:593
2022-04-26 12:04:02 +00:00
msgid "``Paragraph``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:594
2022-04-26 12:04:02 +00:00
msgid "``Placeholder``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:595
2022-04-26 12:04:02 +00:00
msgid "``Tab``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:596
2022-04-26 12:04:02 +00:00
msgid "``Table``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:597
2022-04-26 12:04:02 +00:00
msgid "``Title``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:598
2022-04-26 12:04:02 +00:00
msgid "``Tooltip``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:599
2022-04-26 12:04:02 +00:00
msgid "``*`` for strings that are not tied to a specific component"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:607
2022-04-26 12:04:02 +00:00
msgid "The detail part, which is optional and refers to the contents of the string itself, such as:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:602
2022-04-26 12:04:02 +00:00
msgid "``Adjective``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:603
2022-04-26 12:04:02 +00:00
msgid "``Call to action``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:604
2022-04-26 12:04:02 +00:00
msgid "``Noun``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:605
2022-04-26 12:04:02 +00:00
msgid "``Short``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:606
2022-04-26 12:04:02 +00:00
msgid "``Unit``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:607
2022-04-26 12:04:02 +00:00
msgid "``Verb``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:609
2022-04-26 12:04:02 +00:00
msgid "Here are a few examples of valid context hierarchies:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:611
2022-04-26 12:04:02 +00:00
msgid "``Sidebar/Player/Button``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:612
2022-04-26 12:04:02 +00:00
msgid "``Content/Home/Button/Call to action``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:613
2022-04-26 12:04:02 +00:00
msgid "``Footer/*/Help text``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:614
2022-04-26 12:04:02 +00:00
msgid "``*/*/*/Verb, Short``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:615
2022-04-26 12:04:02 +00:00
msgid "``Popup/Playlist/Button``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:616
2022-04-26 12:04:02 +00:00
msgid "``Content/Admin/Table.Label/Short, Noun (Value is a date)``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:618
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:620
2022-04-26 12:04:02 +00:00
msgid "``Sidebar/Queue/Tab.Title``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:621
2022-04-26 12:04:02 +00:00
msgid "``Content/*/Button.Title``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:622
2022-04-26 12:04:02 +00:00
msgid "``Content/*/Table.Header``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:623
2022-04-26 12:04:02 +00:00
msgid "``Footer/*/List item.Link``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:624
2022-04-26 12:04:02 +00:00
msgid "``Content/*/Form.Help text``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:627
2022-04-26 12:04:02 +00:00
msgid "Collecting translatable strings"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:629
2022-04-26 12:04:02 +00:00
msgid "If you want to ensure your translatable strings are correctly marked for translation, you can try to extract them."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:632
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:635
2022-04-26 12:04:02 +00:00
msgid "You can then inspect the PO files to ensure everything is fine (but don't commit them, it's not needed)."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:638
2022-04-26 12:04:02 +00:00
msgid "Contributing to the API"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:641
2022-04-26 12:04:02 +00:00
msgid "Project structure"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:655
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:659
#: ../../../CONTRIBUTING.rst:817
2022-04-26 12:04:02 +00:00
msgid "Running tests"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:661
2022-04-26 12:04:02 +00:00
msgid "To run the pytest test suite, use the following command::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:665
2022-04-26 12:04:02 +00:00
msgid "This is regular pytest, so you can use any arguments/options that pytest usually accept::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:675
2022-04-26 12:04:02 +00:00
msgid "Writing tests"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:677
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:681
2022-04-26 12:04:02 +00:00
msgid "Useful links:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:683
2022-04-26 12:04:02 +00:00
msgid "`A quick introduction to unit test writing with pytest <https://semaphoreci.com/community/tutorials/testing-python-applications-with-pytest>`_"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:684
2022-04-26 12:04:02 +00:00
msgid "`A complete guide to Test-Driven Development (although not using Pytest) <https://www.obeythetestinggoat.com/>`_"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:685
2022-04-26 12:04:02 +00:00
msgid "`pytest <https://docs.pytest.org/en/latest/>`_: documentation of our testing engine and runner"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:686
2022-04-26 12:04:02 +00:00
msgid "`pytest-mock <https://pypi.org/project/pytest-mock/>`_: project page of our mocking engine"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:687
2022-04-26 12:04:02 +00:00
msgid "`factory-boy <http://factoryboy.readthedocs.io/>`_: documentation of factory-boy, which we use to easily generate fake objects and data"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:689
2022-04-26 12:04:02 +00:00
msgid "Recommendations:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:691
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:692
2022-04-26 12:04:02 +00:00
msgid "Tests should be small and test one thing. If you need to test multiple things, write multiple tests."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:694
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:697
2022-04-26 12:04:02 +00:00
msgid "Use factories to create arbitrary objects:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:732
2022-04-26 12:04:02 +00:00
msgid "We offer factories for almost if not all models. Factories are located in a ``factories.py`` file inside each app."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:735
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:790
2022-04-26 12:04:02 +00:00
msgid "Views: you can find some readable views tests in file: ``api/tests/users/test_views.py``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:794
2022-04-26 12:04:02 +00:00
msgid "A complete list of available-fixtures is available by running ``docker-compose -f dev.yml run --rm api pytest --fixtures``"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:799
2022-04-26 12:04:02 +00:00
msgid "Contributing to the front-end"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:802
2022-04-26 12:04:02 +00:00
msgid "Styles and themes"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:804
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:807
2022-04-26 12:04:02 +00:00
msgid "We're applying several changes on top of the Fomantic CSS files, before they are imported:"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:809
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:810
2022-04-26 12:04:02 +00:00
msgid "Unused components variations and icons are stripped from the source files, in order to reduce the final size of our CSS files"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:812
2022-04-26 12:04:02 +00:00
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 ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:819
2022-04-26 12:04:02 +00:00
msgid "To run the front-end test suite, use the following command::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:823
2022-04-26 12:04:02 +00:00
msgid "We also support a \"watch and test\" mode were we continually relaunch tests when changes are recorded on the file system::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:828
2022-04-26 12:04:02 +00:00
msgid "The latter is especially useful when you are debugging failing tests."
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:832
2022-04-26 12:04:02 +00:00
msgid "The front-end test suite coverage is still pretty low"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:836
2022-04-26 12:04:02 +00:00
msgid "Making a release"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:838
2022-04-26 12:04:02 +00:00
msgid "To make a new 3.4 release::"
msgstr ""
2022-07-03 20:30:09 +00:00
#: ../../../CONTRIBUTING.rst:877
2022-04-26 12:04:02 +00:00
msgid "Then, visit https://dev.funkwhale.audio/funkwhale/funkwhale/-/tags, copy-paste the changelog on the corresponding tag, and announce the good news ;)"
msgstr ""