Kódhozzájárulás kezdése a Weblate-hez

Ismerkedjen meg a Weblate forráskódjával a következő dokumentációs részeken keresztül: Weblate forráskód, Weblate felhasználói felület és A Weblate belső működése.

Ismerkedés a kódbázissal

Kezdésként próbálja ki a good first issue címkével ellátott hibákat, hogy megismerje a Weblate kódbázisát.

Nyugodtan elkezdhet dolgozni ezeken a hibajegyeken anélkül, hogy engedélyt kérne. Az adott hibajegynél jelezze, hogy foglalkozik vele, így egyértelmű lesz, hogy már dolgozik rajta.

Weblate futtatása helyileg

The most comfortable approach to get started with Weblate development is to follow Telepítés forráskódból. It will get you a Python environment with editable Weblate sources.

  1. Klónozza a Weblate forráskódját:

    git clone https://github.com/WeblateOrg/weblate.git
    cd weblate
    
  2. Install Weblate and all dependencies useful for development:

    uv sync --all-extras --dev
    
  3. Indítsa el a fejlesztői szervert:

    uv run weblate runserver
    
  4. A beállításától függően el kell indítani a Celery munkafolyamatokat is:

    uv run ./weblate/examples/celery start
    
  5. To run tests (see Weblate helyi tesztelése for more details):

    . scripts/test-database.sh
    uv run pytest
    

Weblate futtatása helyileg Dockerben

Ha a Docker és a docker-compose-plugin telepítve van, szüksége lesz egy további eszközre, a jq-ra is, amelyet a kedvenc csomagkezelőjén keresztül telepíthet. Ezután egyszerűen elindíthatja a fejlesztői környezetet a következő paranccsal:

./rundev.sh

Ez létrehoz egy fejlesztői Docker-képet, és elindítja azt. A Weblate a <http://127.0.0.1:8080/> címen érhető el, a bejelentkezéshez használja a admin felhasználónevet és a admin jelszót. Az új telepítés üres, így érdemes folytatni a Fordítási projektek és összetevők hozzáadása rész alapján.

A Weblate úgy van beállítva, hogy a maildev konténert használja e-mail szerverként. A kézbesített e-mailek a <http://127.0.0.1:1080/> címen tekinthetők meg.

A hozzá tartozó Dockerfile és docker-compose.yml fájlok a dev-docker könyvtárban találhatók. A fejlesztés megkönnyítése érdekében a PostgreSQL-t futtató konténer a 5433-as porton elérhető.

A szkript néhány paramétert is elfogad: tesztek futtatásához indítsa el test paraméterrel, majd adja meg a kívánt test paramétereket. Például, ha csak a weblate.machine modul tesztjeit szeretné futtatni:

./rundev.sh test --exitfirst weblate/machine

Megjegyzés

Figyeljen arra, hogy a Docker-konténerek elindultak-e a tesztek futtatása előtt. Ezt a docker ps paranccsal ellenőrizheti.

Naplók megtekintéséhez:

./rundev.sh logs

Háttérkonténerek leállítása:

./rundev.sh stop

Ha a szkriptet argumentum nélkül futtatja, újra létrehozza és újraindítja a Docker-konténert.

Figyelem

This container is not suitable for production use. Security is sacrificed to make the development easier.

Fejlesztői példány inicializálása

Érdemes lehet a import_demo parancsot használni demó fordítások létrehozásához, illetve a createadmin parancsot egy admin felhasználó létrehozásához.

If you have Számlázás installed as well, you can use billing_demo to create a demo billing project.

Weblate fejlesztése PyCharm használatával

A PyCharm egy ismert IDE (integrált fejlesztőkörnyezet) Python fejlesztéshez – az alábbi útmutató segít a Weblate projekt beállításában.

Miután a GitHub tárolót egy mappába klónozta, egyszerűen nyissa meg azt a PyCharmban. Amint megnyílik az IDE, az első lépés a használandó értelmező (interpreter) megadása:

../_images/pycharm-1.png

Select the .venv environment created by uv sync --all-extras --dev to match the command-line development setup. You can also let PyCharm create a Python environment for you, but the uv-managed environment is preferred:

../_images/pycharm-2.png

Don’t forget to install the dependencies once the interpreter is set. When using the preferred uv-managed environment, run uv sync --all-extras --dev from the console.

A második lépés a szükséges Django beállítások megadása, hogy az IDE natívan támogassa azt – így közvetlenül elindíthatja az egységteszteket. Ehhez meg kell adnia a Django projekt gyökérútvonalát és a beállításfájl elérési útját:

../_images/pycharm-3.png

Figyelem: a Django projekt gyökérkönyvtára maga a tároló gyökere, nem a Weblate almappája. A beállításokhoz használhatja a tárolóban található weblate/settings_test.py fájlt, de akár létre is hozhat saját konfigurációt.

Az utolsó lépés a szerver futtatása és töréspontok (breakpointok) elhelyezése a kódban, hogy hibakeresésre is alkalmas legyen. Ehhez hozzon létre egy új Django Server konfigurációt:

../_images/pycharm-4.png ../_images/pycharm-5.png

Tipp

Figyeljen a No reload tulajdonságra: ez megakadályozza, hogy a szerver automatikusan újratöltődjön fájlmódosítás után, így a meglévő töréspontok aktívak maradnak, és nem vesznek el újratöltéskor.