Weblate yazılımını güncellemek#

Docker kalıbı güncellemeleri#

Resmi Docker kalıbına (ayrıntılı bilgi almak için: Docker ile kurmak) tüm Weblate yükseltme adımları bütünleştirilmiştir. Genellikle güncel sürümü çekmenin dışında el ile yapılması gereken bir adım bulunmaz.

Genel yükseltme yönergeleri#

Yükseltmeden önce, lütfen değişmiş olabilecekleri için güncel Yazılım gereksinimleri değerini denetleyin. Tüm gereksinimler kurulduktan ya da güncellendikten sonra, lütfen settings.py dosyasını yapılandırmadaki değişikliklere uygun şekilde ayarlayın (doğru değerler için settings_example.py bölümüne bakabilirsiniz).

Yükseltmeden önce her zaman Sürüme özel yönergeler bölümünü denetleyin. Bazı sürümleri atlamanız durumunda, lütfen yükseltmede atladığınız tüm sürümlerin yönergelerini izleyin. Bazen sorunsuz bir aktarım yapmak için önce bazı ara sürümlere yükseltmek daha iyidir. Bir kerede birkaç sürüm yukarı yükseltilebilir, ancak tek sürüm yükseltmelerindeki kadar iyi denenmemiştir.

Not

Yükseltmenin yapılamaması durumunda veri tabanını önceki sürüme döndürebilmeniz için yükseltmeden önce veri tabanının tam yedeğini almanız önerilir. Ayrıntılı bilgi almak için: Weblate yedeğini alma ve taşıma.

  1. wsgi ve Celery işlemlerini durdurun. Yükseltme işlemi, veri tabanında uyumsuz değişiklikler yapabilir. Bu nedenle yükseltme sırasında eski işlemlerin çalışmasını önlemek her zaman daha güvenli olur.

  2. Weblate kodunu yükseltin.

    Pip kurulumları için şöyle yapılabilir:

    pip install -U "Weblate[all]==version"
    

    Ya da yalnızca güncel sürümü edinmek istiyorsanız:

    pip install -U "Weblate[all]"
    

    İsteğe bağlı bağımlılıkların tümünü kurmak istemiyorsanız şunu yapın:

    pip install -U Weblate
    

    Git checkout ile yeni kaynak kodunu almanız ve kurulumunuzu güncellemeniz gerekir:

    cd weblate-src
    git pull
    # Update Weblate inside your virtualenv
    . ~/weblate-env/bin/pip install -e '.[all]'
    # Install dependencies directly when not using virtualenv
    pip install --upgrade -e .
    # Install optional dependencies directly when not using virtualenv
    pip install --upgrade -e '.[all]'
    
  3. Yeni Weblate sürümünde yeni Python bağımlılıkları bulunabilir. Lütfen istediğiniz özellikleri kapsayıp kapsamadığını denetleyin.

  4. Yapılandırma dosyasını yükseltin. Gerekli adımlar için settings_example.py ya da Sürüme özel yönergeler dosyalarına bakabilirsiniz.

  5. Veri tabanı yapısını yükseltin:

    weblate migrate --noinput
    
  6. Güncellenmiş durağan dosyaları derleyin (ayrıntılı bilgi almak için: Sunucuyu çalıştırmak ve Durağan dosyalar sunmak):

    weblate collectstatic --noinput --clear
    
  7. JavaScript ve CSS dosyalarını sıkıştırın (isteğe bağlı, ayrıntılı bilgi almak için: İstemci varlıklarının sıkıştırılması):

    weblate compress
    
  8. Git üzerindeki sürümü çalıştırıyorsanız, her yükseltme yaptığınızda yerel ayar dosyalarını da yeniden oluşturmanız gerekir. Bu işlemi şu şekilde yapabilirsiniz:

    weblate compilemessages
    
  9. Kurulumunuzun doğru olduğunu doğrulayın (ayrıntılı bilgi almak için: :ref:`production’):

    weblate check --deploy
    
  10. Celery işlemini yeniden başlatın (ayrıntılı bilgi almak için: Celery ile arka plan görevlerini kullanmak).

Sürüme özel yönergeler#

5.0 sürümünde değişti: Sürüme özel yönergeler sürüm notlarına eklendi. Ayrıntılı bilgi almak için: Weblate 5.5.

Eski bir büyük sürümden yükseltme#

Yükseltmelerde büyük sürümler atlanamaz. Her zaman ilk işlem olarak büyük sürümün son yama düzeyine yükseltin. Bu adımı atlayan yükseltme işlemleri desteklenmez ve bozulur.

  • 2.x sürümünden yükseltiyorsanız, her zaman ilk olarak 3.0.1 sürümüne yükseltin.

  • 3.x sürümünden yükseltme yapıyorsanız, her zaman ilk olarak 4.0.4 sürümüne yükseltin.

  • 4.x sürümünden yükseltme yapıyorsanız, her zaman ilk olarak 5.0.2 sürümüne yükseltin.

Diğer veri tabanlarından PostgreSQL üzerine aktarmak#

Weblate için PostgreSQL dışında başka bir veri tabanı kullanıyorsanız, Weblate ile en iyi başarımı gösteren PostgreSQL kullanmaya geçmeyi düşünmelisiniz. Aşağıdaki adımlar, verilerinizi veri tabanları arasında aktarmakta size yol gösterir. Lütfen aktarımdan önce hem site hem de Celery sunucularını durdurmayı unutmayın, yoksa tutarsız verilerle karşılaşabilirsiniz.

PostgreSQL üzerinde bir veri tabanı oluşturmak#

Weblate için ayrı bir kullanıcı hesabı ile ayrı bir veri tabanı kullanmak genellikle iyi bir fikirdir:

# If PostgreSQL was not installed before, set the main password
sudo -u postgres psql postgres -c "\password postgres"

# Create a database user called "weblate"
sudo -u postgres createuser -D -P weblate

# Create the database "weblate" owned by "weblate"
sudo -u postgres createdb -E UTF8 -O weblate weblate

Pgloader ile PostgreSQL üzerine aktarmak#

pgloader, verileri PostgreSQL üzerine taşımak için kullanılan bir genel aktarım aracıdır. Weblate veri tabanını aktarmak için kullanabilirsiniz.

  1. Veri tabanı olarak PostgreSQL kullanmak için settings.py ayarınızı yapın.

  2. Şemayı PostgreSQL veri tabanına aktarın:

    weblate migrate
    weblate sqlflush | weblate dbshell
    
  3. Verileri aktarmak için pgloader uygulamasını çalıştırın. Veri tabanını aktarmak için aşağıdaki betik kullanılabilir, ancak ne yaptığını anlamak ve kurulumunuza uyacak şekilde küçük ayar değişikleri yapmak için pgloader ile ilgili ayrıntılı bilgi almak isteyebilirsiniz:

    LOAD DATABASE
         FROM      mysql://weblate:password@localhost/weblate
         INTO postgresql://weblate:password@localhost/weblate
    
    WITH include no drop, truncate, create no tables, create no indexes, no foreign keys, disable triggers, reset sequences, data only
    
    ALTER SCHEMA 'weblate' RENAME TO 'public'
    ;
    

Pootle üzerinden aktarmak#

Weblate başlangıçta Pootle yerine yazıldığından, kullanıcı hesapları Pootle üzerinden aktarılabilir. Kullanıcıları Pootle üzerinden indirip ve importusers ile içe aktarabilirsiniz.