From 76884efeedd22f4bdce0dc85b12791f2d8bde183 Mon Sep 17 00:00:00 2001 From: Ivan Anfimov Date: Sun, 25 May 2025 22:59:23 +0000 Subject: [PATCH 1/4] Remove unicode prefix from code All strings are considered as unicode string from Python 3. This patch drops the explicit unicode literal (u'...') appearances from the unicode strings. Change-Id: I6d58ff205118ba60c94f88625d82f976079a6020 --- cloudkittydashboard/api/cloudkitty.py | 1 - .../dashboards/admin/hashmap/tables.py | 48 +++++++++---------- .../dashboards/admin/modules/tables.py | 16 +++---- .../dashboards/admin/pyscripts/tables.py | 8 ++-- cloudkittydashboard/tests/base.py | 2 - .../tests/test_cloudkittydashboard.py | 3 +- cloudkittydashboard/utils.py | 1 - doc/source/conf.py | 1 - doc/source/installation.rst | 2 +- releasenotes/source/conf.py | 2 - 10 files changed, 38 insertions(+), 46 deletions(-) diff --git a/cloudkittydashboard/api/cloudkitty.py b/cloudkittydashboard/api/cloudkitty.py index a980f9a..ef99873 100644 --- a/cloudkittydashboard/api/cloudkitty.py +++ b/cloudkittydashboard/api/cloudkitty.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2015 Objectif Libre # # Licensed under the Apache License, Version 2.0 (the "License"); you may diff --git a/cloudkittydashboard/dashboards/admin/hashmap/tables.py b/cloudkittydashboard/dashboards/admin/hashmap/tables.py index 84805de..0be6a6a 100644 --- a/cloudkittydashboard/dashboards/admin/hashmap/tables.py +++ b/cloudkittydashboard/dashboards/admin/hashmap/tables.py @@ -41,16 +41,16 @@ class DeleteService(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete Service", - u"Delete Services", + "Delete Service", + "Delete Services", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted Service", - u"Deleted Services", + "Deleted Service", + "Deleted Services", count ) @@ -103,16 +103,16 @@ class DeleteGroup(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete Group", - u"Delete Groups", + "Delete Group", + "Delete Groups", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted Group", - u"Deleted Groups", + "Deleted Group", + "Deleted Groups", count ) @@ -190,16 +190,16 @@ class DeleteServiceThreshold(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete Service Threshold", - u"Delete Service Thresholds", + "Delete Service Threshold", + "Delete Service Thresholds", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted Service Threshold", - u"Deleted Service Thresholds", + "Deleted Service Threshold", + "Deleted Service Thresholds", count ) @@ -217,16 +217,16 @@ class DeleteFieldThreshold(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete Field Threshold", - u"Delete Field Thresholds", + "Delete Field Threshold", + "Delete Field Thresholds", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted Field Threshold", - u"Deleted Field Thresholds", + "Deleted Field Threshold", + "Deleted Field Thresholds", count ) @@ -357,16 +357,16 @@ class DeleteField(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete Field", - u"Delete Fields", + "Delete Field", + "Delete Fields", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted Field", - u"Deleted Fields", + "Deleted Field", + "Deleted Fields", count ) @@ -429,16 +429,16 @@ class DeleteMapping(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete Mapping", - u"Delete Mappings", + "Delete Mapping", + "Delete Mappings", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted Mapping", - u"Deleted Mappings", + "Deleted Mapping", + "Deleted Mappings", count ) diff --git a/cloudkittydashboard/dashboards/admin/modules/tables.py b/cloudkittydashboard/dashboards/admin/modules/tables.py index ee194b3..5c9ab75 100644 --- a/cloudkittydashboard/dashboards/admin/modules/tables.py +++ b/cloudkittydashboard/dashboards/admin/modules/tables.py @@ -47,13 +47,13 @@ class ToggleEnabledModule(tables.BatchAction): def action_present(count): return ( ngettext_lazy( - u"Enable Module", - u"Enable Modules", + "Enable Module", + "Enable Modules", count ), ngettext_lazy( - u"Disable Module", - u"Disable Modules", + "Disable Module", + "Disable Modules", count ), ) @@ -62,13 +62,13 @@ def action_present(count): def action_past(count): return ( ngettext_lazy( - u"Enabled Module", - u"Enabled Modules", + "Enabled Module", + "Enabled Modules", count ), ngettext_lazy( - u"Disabled Module", - u"Disabled Modules", + "Disabled Module", + "Disabled Modules", count ), ) diff --git a/cloudkittydashboard/dashboards/admin/pyscripts/tables.py b/cloudkittydashboard/dashboards/admin/pyscripts/tables.py index 76a9331..bede7e3 100644 --- a/cloudkittydashboard/dashboards/admin/pyscripts/tables.py +++ b/cloudkittydashboard/dashboards/admin/pyscripts/tables.py @@ -56,16 +56,16 @@ class DeletePyScript(tables.DeleteAction): @staticmethod def action_present(count): return ngettext_lazy( - u"Delete PyScript", - u"Delete PyScripts", + "Delete PyScript", + "Delete PyScripts", count ) @staticmethod def action_past(count): return ngettext_lazy( - u"Deleted PyScript", - u"Deleted PyScripts", + "Deleted PyScript", + "Deleted PyScripts", count ) diff --git a/cloudkittydashboard/tests/base.py b/cloudkittydashboard/tests/base.py index 1c30cdb..2159808 100644 --- a/cloudkittydashboard/tests/base.py +++ b/cloudkittydashboard/tests/base.py @@ -1,5 +1,3 @@ -# -*- coding: utf-8 -*- - # Copyright 2010-2011 OpenStack Foundation # Copyright (c) 2013 Hewlett-Packard Development Company, L.P. # diff --git a/cloudkittydashboard/tests/test_cloudkittydashboard.py b/cloudkittydashboard/tests/test_cloudkittydashboard.py index 3e066ed..4a97355 100644 --- a/cloudkittydashboard/tests/test_cloudkittydashboard.py +++ b/cloudkittydashboard/tests/test_cloudkittydashboard.py @@ -1,6 +1,5 @@ -# -*- coding: utf-8 -*- # Copyright 2015 Objectif Libre - +# # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at diff --git a/cloudkittydashboard/utils.py b/cloudkittydashboard/utils.py index 95fd3d4..d39eac7 100644 --- a/cloudkittydashboard/utils.py +++ b/cloudkittydashboard/utils.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2018 Objectif Libre # # Licensed under the Apache License, Version 2.0 (the "License"); you may diff --git a/doc/source/conf.py b/doc/source/conf.py index 3285d2e..420ec14 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at diff --git a/doc/source/installation.rst b/doc/source/installation.rst index cde4505..1cd37c9 100644 --- a/doc/source/installation.rst +++ b/doc/source/installation.rst @@ -72,5 +72,5 @@ Some symbols (Such as Non-ASCII) might require to use unicode value directly. .. code-block:: python # British Pound - OPENSTACK_CLOUDKITTY_RATE_PREFIX = u'\xA3' + OPENSTACK_CLOUDKITTY_RATE_PREFIX = '\xA3' OPENSTACK_CLOUDKITTY_RATE_POSTFIX = 'GBP' diff --git a/releasenotes/source/conf.py b/releasenotes/source/conf.py index aef7bea..c4ecdc1 100644 --- a/releasenotes/source/conf.py +++ b/releasenotes/source/conf.py @@ -1,5 +1,3 @@ -# -*- coding: utf-8 -*- -# # Cloudkitty Release Notes documentation build configuration file. # # This file is execfile()d with the current directory set to its From 19b634dbde53452368cfdf0268912b72610a4cdf Mon Sep 17 00:00:00 2001 From: Ivan Anfimov Date: Wed, 6 Aug 2025 18:06:33 +0000 Subject: [PATCH 2/4] Fix small mistake in text tenant replaced to project Change-Id: I2ad51b872b272b8c30187cb77ff4d6afecbb49c4 Signed-off-by: Ivan Anfimov --- cloudkittydashboard/dashboards/admin/summary/tables.py | 2 +- .../admin/summary/templates/rating_summary/details.html | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cloudkittydashboard/dashboards/admin/summary/tables.py b/cloudkittydashboard/dashboards/admin/summary/tables.py index 3dd1e6d..3a1aca0 100644 --- a/cloudkittydashboard/dashboards/admin/summary/tables.py +++ b/cloudkittydashboard/dashboards/admin/summary/tables.py @@ -42,4 +42,4 @@ class TenantSummaryTable(tables.DataTable): class Meta(object): name = "tenant_summary" - verbose_name = _("Tenant Summary") + verbose_name = _("Project Summary") diff --git a/cloudkittydashboard/dashboards/admin/summary/templates/rating_summary/details.html b/cloudkittydashboard/dashboards/admin/summary/templates/rating_summary/details.html index 083ffce..d9bfa71 100644 --- a/cloudkittydashboard/dashboards/admin/summary/templates/rating_summary/details.html +++ b/cloudkittydashboard/dashboards/admin/summary/templates/rating_summary/details.html @@ -1,9 +1,9 @@ {% extends 'base.html' %} {% load i18n %} -{% block title %}{% trans "Tenant Details" %}{% endblock %} +{% block title %}{% trans "Project Details" %}{% endblock %} {% block page_header %} - {% include "horizon/common/_page_header.html" with title=_("Tenant Details") %} + {% include "horizon/common/_page_header.html" with title=_("Project Details") %} {% endblock page_header %} {% block main %} From 23e9212d47384409c6a0b8b7901687b04373b6a8 Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Fri, 8 Aug 2025 04:20:34 +0000 Subject: [PATCH 3/4] Imported Translations from Zanata For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I2e750bd294ffcd7e8e1c198e2f8d1557ce1c2c68 Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/openstack-zuul-jobs:roles/prepare-zanata-client/files/common_translation_update.sh --- .../locale/en_GB/LC_MESSAGES/django.po | 8 +- .../locale/en_GB/LC_MESSAGES/releasenotes.po | 10 +- .../locale/ru/LC_MESSAGES/releasenotes.po | 133 ++++++++++++++++++ 3 files changed, 136 insertions(+), 15 deletions(-) create mode 100644 releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po diff --git a/cloudkittydashboard/locale/en_GB/LC_MESSAGES/django.po b/cloudkittydashboard/locale/en_GB/LC_MESSAGES/django.po index 8e5d4a9..ea67355 100644 --- a/cloudkittydashboard/locale/en_GB/LC_MESSAGES/django.po +++ b/cloudkittydashboard/locale/en_GB/LC_MESSAGES/django.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: cloudkitty-dashboard VERSION\n" "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n" -"POT-Creation-Date: 2022-08-08 15:59+0000\n" +"POT-Creation-Date: 2025-08-07 10:33+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -454,12 +454,6 @@ msgstr "Successfully updated script" msgid "Summary" msgstr "Summary" -msgid "Tenant Details" -msgstr "Tenant Details" - -msgid "Tenant Summary" -msgstr "Tenant Summary" - #, python-format msgid "There was a problem parsing the %(prefix)s: %(error)s" msgstr "There was a problem parsing the %(prefix)s: %(error)s" diff --git a/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po b/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po index 70fb67a..01ac7ba 100644 --- a/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po +++ b/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po @@ -9,11 +9,11 @@ msgid "" msgstr "" "Project-Id-Version: Cloudkitty Dashboard Release Notes\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-05-25 13:48+0000\n" +"POT-Creation-Date: 2025-08-07 10:32+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"PO-Revision-Date: 2024-07-01 11:17+0000\n" +"PO-Revision-Date: 2024-04-18 12:35+0000\n" "Last-Translator: Andi Chandler \n" "Language-Team: English (United Kingdom)\n" "Language: en_GB\n" @@ -29,9 +29,6 @@ msgstr "11.0.1" msgid "12.0.0" msgstr "12.0.0" -msgid "12.0.0-3" -msgstr "12.0.0-3" - msgid "13.0.0" msgstr "13.0.0" @@ -41,9 +38,6 @@ msgstr "14.0.1" msgid "15.0.0" msgstr "15.0.0" -msgid "18.0.0-8" -msgstr "18.0.0-8" - msgid "2023.1 Series Release Notes" msgstr "2023.1 Series Release Notes" diff --git a/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po b/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po new file mode 100644 index 0000000..b30e10d --- /dev/null +++ b/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po @@ -0,0 +1,133 @@ +# Ivan Anfimov , 2025. #zanata +msgid "" +msgstr "" +"Project-Id-Version: Cloudkitty Dashboard Release Notes\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-08-07 10:32+0000\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"PO-Revision-Date: 2025-08-06 06:03+0000\n" +"Last-Translator: Ivan Anfimov \n" +"Language-Team: Russian\n" +"Language: ru\n" +"X-Generator: Zanata 4.3.3\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n" + +msgid "10.0.0" +msgstr "10.0.0" + +msgid "11.0.1" +msgstr "11.0.1" + +msgid "12.0.0" +msgstr "12.0.0" + +msgid "12.0.0-4" +msgstr "12.0.0-4" + +msgid "13.0.0" +msgstr "13.0.0" + +msgid "14.0.1" +msgstr "14.0.1" + +msgid "15.0.0" +msgstr "15.0.0" + +msgid "19.0.0" +msgstr "19.0.0" + +msgid "2023.1 Series Release Notes" +msgstr "Примечания к выпуску 2023.1" + +msgid "2023.2 Series Release Notes" +msgstr "Примечания к выпуску 2023.2" + +msgid "2024.1 Series Release Notes" +msgstr "Примечания к выпуску 2024.1" + +msgid "2024.2 Series Release Notes" +msgstr "Примечания к выпуску 2024.2" + +msgid "2025.1 Series Release Notes" +msgstr "Примечания к выпуску 2025.1" + +msgid "8.1.0" +msgstr "8.1.0" + +msgid ":ref:`genindex`" +msgstr ":ref:`genindex`" + +msgid ":ref:`search`" +msgstr ":ref:`search`" + +msgid "Bug Fixes" +msgstr "Исправления ошибок" + +msgid "CloudKitty Dashboard Release Notes" +msgstr "Примечания к выпуску панели управления CloudKitty" + +msgid "Contents" +msgstr "Содержание" + +msgid "Current Series Release Notes" +msgstr "Примечания к текущему выпуску" + +msgid "New Features" +msgstr "Новые возможности" + +msgid "Ocata Series Release Notes" +msgstr "Примечания к выпуску Ocata" + +msgid "Other Notes" +msgstr "Другие примечания" + +msgid "Pike Series Release Notes" +msgstr "Примечания к выпуску Pike" + +msgid "" +"Python 2.7 support has been dropped. Last release of cloudkitty-dashboard to " +"support py2.7 is OpenStack Train. The minimum version of Python now " +"supported by cloudkitty-dashboard is Python 3.6." +msgstr "" +"Поддержка Python 2.7 была прекращена. Последний релиз cloudkitty-dashboard, " +"поддерживающий py2.7 — OpenStack Train. Минимальная версия Python, " +"поддерживаемая cloudkitty-dashboard — Python 3.6." + +msgid "Queens Series Release Notes" +msgstr "Примечания к выпуску Queens" + +msgid "Rocky Series Release Notes" +msgstr "Примечания к выпуску Rocky" + +msgid "Stein Series Release Notes" +msgstr "Примечания к выпуску Stein" + +msgid "Support for Python 3.8 and 3.9 has been dropped." +msgstr "Поддержка Python 3.8 и 3.9 была прекращена." + +msgid "Train Series Release Notes" +msgstr "Примечания к выпуску Train" + +msgid "Upgrade Notes" +msgstr "Примечания к обновлению" + +msgid "Ussuri Series Release Notes" +msgstr "Примечания к выпуску Ussuri" + +msgid "Victoria Series Release Notes" +msgstr "Примечания к выпуску Victoria" + +msgid "Wallaby Series Release Notes" +msgstr "Примечания к выпуску Wallaby" + +msgid "Xena Series Release Notes" +msgstr "Примечания к выпуску Xena" + +msgid "Yoga Series Release Notes" +msgstr "Примечания к выпуску Yoga" + +msgid "Zed Series Release Notes" +msgstr "Примечания к выпуску Zed" From 7b67328890880974daa344a7fff2cf5107389051 Mon Sep 17 00:00:00 2001 From: OpenStack Proposal Bot Date: Sun, 10 Aug 2025 03:56:22 +0000 Subject: [PATCH 4/4] Imported Translations from Zanata For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I6f6e7143e753be0c3709d5882ea24cf226b7be1d Signed-off-by: OpenStack Proposal Bot Generated-By: openstack/openstack-zuul-jobs:roles/prepare-zanata-client/files/common_translation_update.sh --- releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po b/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po index b30e10d..a6a9060 100644 --- a/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po +++ b/releasenotes/source/locale/ru/LC_MESSAGES/releasenotes.po @@ -3,11 +3,11 @@ msgid "" msgstr "" "Project-Id-Version: Cloudkitty Dashboard Release Notes\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-08-07 10:32+0000\n" +"POT-Creation-Date: 2025-08-08 11:16+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"PO-Revision-Date: 2025-08-06 06:03+0000\n" +"PO-Revision-Date: 2025-08-09 11:50+0000\n" "Last-Translator: Ivan Anfimov \n" "Language-Team: Russian\n" "Language: ru\n" @@ -92,7 +92,7 @@ msgid "" "support py2.7 is OpenStack Train. The minimum version of Python now " "supported by cloudkitty-dashboard is Python 3.6." msgstr "" -"Поддержка Python 2.7 была прекращена. Последний релиз cloudkitty-dashboard, " +"Поддержка Python 2.7 была прекращена. Последний выпуск cloudkitty-dashboard, " "поддерживающий py2.7 — OpenStack Train. Минимальная версия Python, " "поддерживаемая cloudkitty-dashboard — Python 3.6."