Loading
+10 −15
Original line number Diff line number Diff line
@@ -15,9 +15,7 @@
let
  python = python3.override {
    packageOverrides = final: prev: {
      django = prev.django_5.overridePythonAttrs (old: {
        dependencies = old.dependencies ++ prev.django_5.optional-dependencies.argon2;
      });
      django = prev.django_5;
      sentry-sdk = prev.sentry-sdk_2;
      djangorestframework = prev.djangorestframework.overridePythonAttrs (old: {
        # https://github.com/encode/django-rest-framework/discussions/9342
@@ -28,10 +26,12 @@ let
in
python.pkgs.buildPythonApplication rec {
  pname = "weblate";
  version = "5.7.2";
  version = "5.8.3";

  pyproject = true;

  disabled = python.pythonOlder "3.11";

  outputs = [
    "out"
    "static"
@@ -41,18 +41,9 @@ python.pkgs.buildPythonApplication rec {
    owner = "WeblateOrg";
    repo = "weblate";
    rev = "refs/tags/weblate-${version}";
    hash = "sha256-cIwCNYXbg7l6z9OAkMAGJ783QI/nCOyrhLPURDcDv+Y=";
    hash = "sha256-Kmna23jhhFRJ0ExplYNPFEaIAJxmwHU2azivfKHHnjs=";
  };

  pythonRelaxDeps = [
    # https://github.com/WeblateOrg/weblate/commit/9695f912b0d24ae999d9442bb49719b4bb552696
    "qrcode"
    # https://github.com/WeblateOrg/weblate/commit/1cf2a423b20fcd2dde18a43277311334e38208e7
    "rapidfuzz"
    # https://github.com/WeblateOrg/weblate/commit/3e34566fd7c151e1983586586bd7651cefe79585
    "redis"
  ];

  patches = [
    # FIXME This shouldn't be necessary and probably has to do with some dependency mismatch.
    ./cache.lock.patch
@@ -93,6 +84,7 @@ python.pkgs.buildPythonApplication rec {
      cssselect
      cython
      cyrtranslit
      dateparser
      diff-match-patch
      django-appconf
      django-celery-beat
@@ -105,6 +97,7 @@ python.pkgs.buildPythonApplication rec {
      django-otp-webauthn
      django
      djangorestframework
      drf-spectacular
      filelock
      fluent-syntax
      gitpython
@@ -142,8 +135,10 @@ python.pkgs.buildPythonApplication rec {
      weblate-language-data
      weblate-schemas
    ]
    ++ django.optional-dependencies.argon2
    ++ python-redis-lock.optional-dependencies.django
    ++ celery.optional-dependencies.redis;
    ++ celery.optional-dependencies.redis
    ++ drf-spectacular.optional-dependencies.sidecar;

  optional-dependencies = {
    postgres = with python.pkgs; [ psycopg ];