[extensions-web/wip/api/v1: 28/28] Merge branch 'master' into wip/api/v1




commit d8bdddeb72b2f4c2133debcb33a1c13142542f37
Merge: 97b2688 737fb02
Author: Yuri Konotopov <ykonotopov gnome org>
Date:   Sun Sep 25 22:23:25 2022 +0400

    Merge branch 'master' into wip/api/v1

 po/de.po                                           |  77 +++++++---
 po/es.po                                           |  75 +++++++---
 po/eu.po                                           |  68 ++++++---
 po/fa.po                                           | 126 +++++++++-------
 po/fi.po                                           |  99 ++++++++-----
 po/fr.po                                           |  74 +++++++---
 po/hr.po                                           | 149 +++++++++++--------
 po/hu.po                                           |  75 +++++++---
 po/id.po                                           |  74 +++++++---
 po/ka.po                                           |  66 ++++++---
 po/ko.po                                           |  82 +++++++----
 po/pl.po                                           |  74 +++++++---
 po/pt.po                                           |  91 +++++++-----
 po/pt_BR.po                                        |  85 +++++++----
 po/ru.po                                           |  70 ++++++---
 po/sl.po                                           | 163 ++++++++++++---------
 po/sr.po                                           |  70 ++++++---
 po/sv.po                                           |  93 +++++++-----
 po/tr.po                                           | 137 +++++++++--------
 po/uk.po                                           |  81 ++++++----
 po/zh_CN.po                                        |  78 ++++++----
 ...12_extensionversion_extension_id__status_idx.py |  17 +++
 ...20200511_1019.py => 0013_auto_20200511_1019.py} |   2 +-
 ...20200523_1243.py => 0014_auto_20200523_1243.py} |   2 +-
 ...ecommended.py => 0015_extension_recommended.py} |   2 +-
 ...xtension_rating.py => 0016_extension_rating.py} |   2 +-
 ...license.py => 0017_extensionversion_license.py} |   2 +-
 sweettooth/extensions/models.py                    |   4 +
 sweettooth/settings.py                             |   3 +-
 29 files changed, 1249 insertions(+), 692 deletions(-)
---
diff --cc sweettooth/extensions/migrations/0013_auto_20200511_1019.py
index 33554ea,0000000..43f5c88
mode 100644,000000..100644
--- a/sweettooth/extensions/migrations/0013_auto_20200511_1019.py
+++ b/sweettooth/extensions/migrations/0013_auto_20200511_1019.py
@@@ -1,20 -1,0 +1,20 @@@
 +# Generated by Django 2.2.12 on 2020-05-11 10:19
 +
 +from django.conf import settings
 +from django.db import migrations, models
 +import django.db.models.deletion
 +
 +
 +class Migration(migrations.Migration):
 +
 +    dependencies = [
-         ('extensions', '0011_extension_allow_comments'),
++        ('extensions', '0012_extensionversion_extension_id__status_idx'),
 +    ]
 +
 +    operations = [
 +        migrations.AlterField(
 +            model_name='extension',
 +            name='creator',
 +            field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='extensions', 
to=settings.AUTH_USER_MODEL),
 +        ),
 +    ]
diff --cc sweettooth/extensions/migrations/0014_auto_20200523_1243.py
index 25a3d5a,0000000..0356d08
mode 100644,000000..100644
--- a/sweettooth/extensions/migrations/0014_auto_20200523_1243.py
+++ b/sweettooth/extensions/migrations/0014_auto_20200523_1243.py
@@@ -1,52 -1,0 +1,52 @@@
 +# Generated by Django 2.2.12 on 2020-05-23 12:43
 +
 +import os
 +
 +from datetime import datetime
 +
 +from django.db import migrations, models
 +
 +def populate_data(apps, schema_editor):
 +    Extension = apps.get_model("extensions", "Extension")
 +    ExtensionVersion = apps.get_model("extensions", "ExtensionVersion")
 +
 +    Extension.objects.all().update(updated=models.F('created'))
 +
 +    for version in ExtensionVersion.objects.all():
 +        # We don't have better choise than mtime now
 +        try:
 +            version.created = datetime.fromtimestamp(
 +                os.path.getmtime(
 +                    version.source.storage.path(version.source.name)
 +                )
 +            )
 +            version.save()
 +        except FileNotFoundError:
 +            pass
 +
 +        if version.created and version.extension.updated < version.created:
 +            version.extension.updated = version.created
 +            version.extension.save()
 +
 +def revert_data(apps, schema_editor):
 +    pass
 +
 +class Migration(migrations.Migration):
 +
 +    dependencies = [
-         ('extensions', '0012_auto_20200511_1019'),
++        ('extensions', '0013_auto_20200511_1019'),
 +    ]
 +
 +    operations = [
 +        migrations.AddField(
 +            model_name='extension',
 +            name='updated',
 +            field=models.DateTimeField(default=None, null=True),
 +        ),
 +        migrations.AddField(
 +            model_name='extensionversion',
 +            name='created',
 +            field=models.DateTimeField(auto_now_add=True, null=True),
 +        ),
 +        migrations.RunPython(populate_data, revert_data),
 +    ]
diff --cc sweettooth/extensions/migrations/0015_extension_recommended.py
index 04fbd62,0000000..462100c
mode 100644,000000..100644
--- a/sweettooth/extensions/migrations/0015_extension_recommended.py
+++ b/sweettooth/extensions/migrations/0015_extension_recommended.py
@@@ -1,18 -1,0 +1,18 @@@
 +# Generated by Django 2.2.12 on 2020-05-26 21:26
 +
 +from django.db import migrations, models
 +
 +
 +class Migration(migrations.Migration):
 +
 +    dependencies = [
-         ('extensions', '0013_auto_20200523_1243'),
++        ('extensions', '0014_auto_20200523_1243'),
 +    ]
 +
 +    operations = [
 +        migrations.AddField(
 +            model_name='extension',
 +            name='recommended',
 +            field=models.BooleanField(default=False),
 +        ),
 +    ]
diff --cc sweettooth/extensions/migrations/0016_extension_rating.py
index 706f0ce,0000000..52c9b98
mode 100644,000000..100644
--- a/sweettooth/extensions/migrations/0016_extension_rating.py
+++ b/sweettooth/extensions/migrations/0016_extension_rating.py
@@@ -1,60 -1,0 +1,60 @@@
 +"""
 +    GNOME Shell extensions repository
 +    Copyright (C) 2021  Yuri Konotopov <ykonotopov gnome org>
 +
 +    This program is free software: you can redistribute it and/or modify
 +    it under the terms of the GNU Affero General Public License as published by
 +    the Free Software Foundation, either version 3 of the License, or
 +    (at your option) any later version.
 +"""
 +
 +from django.db import migrations, models
 +
 +
 +def populate_data(apps, schema_editor):
 +    Extension = apps.get_model("extensions", "Extension")
 +    RatingComment = apps.get_model("ratings", "RatingComment")
 +    comments = (RatingComment.objects
 +                             .filter(rating__gt=0)
 +                             .values('object_pk')
 +                             .annotate(
 +                                rating_sum=models.Sum('rating'),
 +                                rated=models.Count('object_pk'))
 +                             .order_by('object_pk'))  # https://code.djangoproject.com/ticket/32546
 +
 +    for comment in comments:
 +        if comment.get('rated') and comment.get('rating_sum'):
 +            try:
 +                extension = Extension.objects.get(pk=comment.get('object_pk'))
 +            except Extension.DoesNotExist:
 +                continue
 +
 +            extension.rated = comment.get('rated')
 +            extension.rating = comment.get('rating_sum') / extension.rated
 +
 +        extension.save()
 +
 +
 +def revert_data(apps, schema_editor):
 +    pass
 +
 +
 +class Migration(migrations.Migration):
 +    dependencies = [
-         ('extensions', '0014_extension_recommended'),
++        ('extensions', '0015_extension_recommended'),
 +        ('ratings', '0001_initial'),
 +    ]
 +
 +    operations = [
 +        migrations.AddField(
 +            model_name='extension',
 +            name='rated',
 +            field=models.IntegerField(default=0),
 +        ),
 +        migrations.AddField(
 +            model_name='extension',
 +            name='rating',
 +            field=models.FloatField(default=0),
 +        ),
 +        migrations.RunPython(populate_data, revert_data),
 +    ]
diff --cc sweettooth/extensions/migrations/0017_extensionversion_license.py
index 968b5da,0000000..a905423
mode 100644,000000..100644
--- a/sweettooth/extensions/migrations/0017_extensionversion_license.py
+++ b/sweettooth/extensions/migrations/0017_extensionversion_license.py
@@@ -1,18 -1,0 +1,18 @@@
 +# Generated by Django 3.2.15 on 2022-09-12 16:12
 +
 +from django.db import migrations, models
 +
 +
 +class Migration(migrations.Migration):
 +
 +    dependencies = [
-         ('extensions', '0015_extension_rating'),
++        ('extensions', '0016_extension_rating'),
 +    ]
 +
 +    operations = [
 +        migrations.AddField(
 +            model_name='extensionversion',
 +            name='license',
 +            field=models.CharField(choices=[('Apache-2.0', 'Apache 2.0'), ('BSD-2-Clause', '2-Clause BSD'), 
('BSD-3-Clause', '3-Clause BSD'), ('EPL-2.0', 'EPL 2.0'), ('GPL-2.0', 'GPL 2.0'), ('GPL-2.0 or later', 
'Gpl20Orlater'), ('GPL-3.0', 'GPL 2.0 or later'), ('GPL-3.0-or-later', 'GPL 3.0 or later'), ('MIT', 'MIT'), 
('MPL-2.0', 'MPL 2.0')], default='GPL-2.0', max_length=24),
 +        ),
 +    ]


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]