Weblate kodlarına katkıda bulunmak

Weblate kaynak kodlarını anlamak için lütfen önce Weblate kaynak kodları, Weblate ön yüzü ve Weblate iç yapısı bölümlerine bakın.

Kod tabanı ile başlamak

Weblate kod tabanına alışmak için bazı hatalar arıyorsanız, good first issue olarak etiketlenmiş olanlara bakın.

Bu sorunlar üzerinde sormadan çalışmaya başlayabilirsiniz. Yalnızca çalışmaya başladığınızı duyurun. Böylece herkes birisinin bu sorun üzerinde çalıştığını bilir.

Weblate platformunu yerel olarak çalıştırma

Weblate geliştirmeye başlamanın en kolay yolu Kaynaklardan kurulum bölümündeki yönergeyi izlemektir. Böylece, düzenlenebilir Weblate kaynaklarını içeren bir Python ortamı oluşturabilirsiniz.

  1. Weblate kaynak kodlarını kopyalayın:

    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. Bir geliştirme sunucusu başlatın:

    uv run weblate runserver
    
  4. Yapılandırmanıza bağlı olarak, Celery işlemlerini de başlatmak isteyebilirsiniz:

    uv run ./weblate/examples/celery start
    
  5. To run tests (see Weblate kurulumunu yerel olarak sınamak for more details):

    . scripts/test-database.sh
    uv run pytest
    

Ayrıca bakınız

Kaynaklardan kurulum

Weblate platformunu Docker üzerinde yerel olarak çalıştırma

Docker ve docker-compose-plugin kuruluysa, kullanmayı yeğlediğiniz paket yöneticisi ile kurabileceğiniz jq adında bir ek araca gerek duyacaksınız. Ardından yalnızca şu komutu yürüterek geliştirme ortamını çalıştırabilirsiniz:

./rundev.sh

Geliştirme için bir Docker kalıbı oluşturur ve başlatır. Weblate ile <http://127.0.0.1:8080/> adresinden admin kullanıcı adı ve admin parolası ile oturum açabilirsiniz. Yeni kurulum boştur, bu nedenle Çeviri projelerini ve bileşenleri eklemek ile ilerlemek isteyebilirsiniz.

Weblate, e-posta sunucusu olarak maildev kapsayıcısını kullanmak üzere yapılandırılmıştır. Teslim edilen e-postalar <http://127.0.0.1:1080/> adresinden görülebilir.

Bunun için Dockerfile ve docker-compose.yml, dev-docker klasöründe bulunur. Geliştirme sırasında veri tabanına daha kolay erişmek için PostgreSQL çalıştıran kapsayıcı 5433 bağlantı noktasına açılmıştır.

Betik ayrıca sınamaları yürütmek için bazı parametreleri kabul eder. test parametresiyle çalıştırılır ve ardından herhangi bir test parametresi belirtilir. Örneğin sınamaları yalnızca weblate.machine modülünde çalıştırır:

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

Not

Sınamaları çalıştırmadan önce Docker kapsayıcılarınızın çalışır durumda olduğundan emin olun. Bunu docker ps komutunu çalıştırarak denetleyebilirsiniz.

Günlükleri görüntülemek için:

./rundev.sh logs

Arka plan kapsayıcılarını durdurmak için şunu çalıştırın:

./rundev.sh stop

Betiği bağımsız değişkenler olmadan çalıştırmak, Docker kapsayıcısını yeniden oluşturur ve yeniden başlatır.

Uyarı

Bu kapsayıcı üretim için uygun değildir. Geliştirmeyi kolaylaştırmak için güvenlikten ödün verilmiştir.

Devel kopyanızı ön yüklemek

Deneme çevirileri oluşturmak için import_demo ve yönetici kullanıcı oluşturmak için createadmin komutlarını kullanmak isteyebilirsiniz.

Faturalama kuruluysa, örnek bir faturalama projesi oluşturmak için billing_demo kullanabilirsiniz.

PyCharm ile Weblate kodlamak

PyCharm, Python için bilinen bir IDE uygulamasıdır. Weblate projenizi PyCharm içine kurmanıza yardımcı olacak bazı kuralları burada bulabilirsiniz.

GitHub deposunu bir klasöre kopyaladığınızı düşünürsek, PyCharm ile açmanız yeterlidir. IDE açıldıktan sonra, ilk adım kullanmak istediğiniz yorumlayıcıyı belirtmektir:

../_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.

İkinci adım, PyCharm içinde yerel olarak Django kullanmak için doğru bilgiyi ayarlamaktır: Buradaki fikir, IDE üzerindeki birim sınamalarını hemen tetikleyebilmektir. Bunun için Django projesinin kök yolunu ve ayarlarına giden yolu belirtmeniz gerekir:

../_images/pycharm-3.png

Dikkatli olun, Django proje kökü deponun gerçek kök klasörüdür, Weblate alt klasörü değildir. Ayarlar ile ilgili olarak, depodaki weblate/settings_test.py dosyasını kullanabilirsiniz. Bununla birlikte kendi ayarınızı da oluşturarak oradan da ayarlayabilirsiniz.

Son adım, sunucuyu çalıştırmak ve hata ayıklayabilmek için koda kesme noktaları koymaktır. Bunun için, yeni bir Django Server yapılandırması oluşturulur:

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

İpucu

No reload özelliğine dikkat edin: Dosyaları değiştirirseniz sunucunun canlı olarak yeniden yüklenmesini engeller. Bu durum, var olan hata ayıklayıcı kesme noktalarının, normalde sunucu yeniden yüklendikten sonra yok sayılacakları zaman kalıcı olmasına yol açar.