diff --git a/0001-Fixed-compilation-using-Qt-5.15.0.patch b/0001-Fixed-compilation-using-Qt-5.15.0.patch deleted file mode 100644 index 6cb290c..0000000 --- a/0001-Fixed-compilation-using-Qt-5.15.0.patch +++ /dev/null @@ -1,27 +0,0 @@ -From: Karel Slany -Date: Fri, 5 Jun 2020 08:55:23 +0200 -Subject: Fixed compilation using Qt-5.15.0. -Patch-mainline: yes -Git-commit: d98edca9cf17ae087b743c17e9922cbbd08f94fa -References: qt 5.15 - -Addresses #462. ---- - src/delegates/tag_item.cpp | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/delegates/tag_item.cpp b/src/delegates/tag_item.cpp -index 39aa32e60e42..c0b43d9d5166 100644 ---- a/src/delegates/tag_item.cpp -+++ b/src/delegates/tag_item.cpp -@@ -23,6 +23,7 @@ - - #include /* std::sort */ - #include -+#include - - #include "src/datovka_shared/localisation/localisation.h" - #include "src/datovka_shared/log/log.h" --- -2.27.0 - diff --git a/0001-avoid-using-deprecated-qs-rand.patch b/0001-avoid-using-deprecated-qs-rand.patch deleted file mode 100644 index 9b95817..0000000 --- a/0001-avoid-using-deprecated-qs-rand.patch +++ /dev/null @@ -1,148 +0,0 @@ -From: Jiri Slaby -Date: Fri, 5 Jun 2020 09:06:29 +0200 -Subject: avoid using deprecated qs?rand -Patch-mainline: no -References: qs?rand - -Signed-off-by: Jiri Slaby ---- - src/datovka_shared/crypto/crypto_wrapped.cpp | 13 +++++++++++++ - src/datovka_shared/utility/strings.cpp | 11 +++++++++++ - src/main.cpp | 2 ++ - src/main_cli.cpp | 2 ++ - .../gui/dialogue_stored_files.cpp | 13 ++++++++++++- - 5 files changed, 40 insertions(+), 1 deletion(-) - -diff --git a/src/datovka_shared/crypto/crypto_wrapped.cpp b/src/datovka_shared/crypto/crypto_wrapped.cpp -index b875e00f9174..a5ff23a32c7d 100644 ---- a/src/datovka_shared/crypto/crypto_wrapped.cpp -+++ b/src/datovka_shared/crypto/crypto_wrapped.cpp -@@ -25,15 +25,28 @@ - #include "src/datovka_shared/crypto/crypto_pwd.h" - #include "src/datovka_shared/crypto/crypto_wrapped.h" - -+#include -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ #include -+#endif -+ - QByteArray randomSalt(unsigned int len) - { - QByteArray salt; - -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ salt.resize(len); -+ -+ Q_ASSERT((len % sizeof(quint32)) == 0); -+ -+ QRandomGenerator::global()->fillRange((quint32 *)salt.data(), len / sizeof(quint32)); -+#else - /* Make sure that random generator is initialised. */ - - for (unsigned int i = 0; i < len; ++i) { - salt.append(qrand() % 256); - } -+#endif - - return salt; - } -diff --git a/src/datovka_shared/utility/strings.cpp b/src/datovka_shared/utility/strings.cpp -index 8b6f25d4be18..01c40c1595c0 100644 ---- a/src/datovka_shared/utility/strings.cpp -+++ b/src/datovka_shared/utility/strings.cpp -@@ -23,6 +23,10 @@ - - #include /* qrand() */ - -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ #include -+#endif -+ - #include "src/datovka_shared/utility/strings.h" - - QString Utility::generateRandomString(int length) -@@ -34,9 +38,16 @@ QString Utility::generateRandomString(int length) - "!#$%&()*+,-.:=?@[]_{|}~"); - - QString randomString; -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ QRandomGenerator *rnd = QRandomGenerator::global(); -+#endif - - for (int i = 0; i < length; ++i) { -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ int index = rnd->bounded(possibleCharacters.length()); -+#else - int index = qrand() % possibleCharacters.length(); -+#endif - QChar nextChar = possibleCharacters.at(index); - randomString.append(nextChar); - } -diff --git a/src/main.cpp b/src/main.cpp -index 0d3fee1b0320..810d85ddb264 100644 ---- a/src/main.cpp -+++ b/src/main.cpp -@@ -96,8 +96,10 @@ int main(int argc, char *argv[]) - return EXIT_FAILURE; - } - -+#if (QT_VERSION < QT_VERSION_CHECK(5, 10, 0)) - /* Set random generator. */ - qsrand(QDateTime::currentDateTime().toTime_t()); -+#endif - - /* Log warnings. */ - GlobInstcs::logPtr->setLogLevelBits(LogDevice::LF_STDERR, LOGSRC_ANY, -diff --git a/src/main_cli.cpp b/src/main_cli.cpp -index d46d93a51880..4bdf36ea8cc3 100644 ---- a/src/main_cli.cpp -+++ b/src/main_cli.cpp -@@ -61,8 +61,10 @@ int main(int argc, char *argv[]) - return EXIT_FAILURE; - } - -+#if (QT_VERSION < QT_VERSION_CHECK(5, 10, 0)) - /* Set random generator. */ - qsrand(QDateTime::currentDateTime().toTime_t()); -+#endif - - /* Log warnings. */ - GlobInstcs::logPtr->setLogLevelBits(LogDevice::LF_STDERR, LOGSRC_ANY, -diff --git a/tests/records_management_app/gui/dialogue_stored_files.cpp b/tests/records_management_app/gui/dialogue_stored_files.cpp -index b030ff3481a2..78a752bdb7cd 100644 ---- a/tests/records_management_app/gui/dialogue_stored_files.cpp -+++ b/tests/records_management_app/gui/dialogue_stored_files.cpp -@@ -27,6 +27,10 @@ - #include // qrand - #include - -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ #include -+#endif -+ - #include "src/datovka_shared/records_management/conversion.h" - #include "tests/records_management_app/gui/dialogue_stored_files.h" - #include "ui_dialogue_stored_files.h" -@@ -143,11 +147,18 @@ void generateIdentifiers(QWidget *parent, QLineEdit &lineEdit) - return; - } - -- qsrand((uint)QTime::currentTime().msec()); - QStringList strIds; -+#if (QT_VERSION >= QT_VERSION_CHECK(5, 10, 0)) -+ auto rnd = QRandomGenerator::global(); -+ for (int i = 0; i < num; ++i) { -+ strIds.append(QString::number(rnd->generate())); -+ } -+#else -+ qsrand((uint)QTime::currentTime().msec()); - for (int i = 0; i < num; ++i) { - strIds.append(QString::number(qrand())); - } -+#endif - - lineEdit.setText(strIds.join(SEPARATOR)); - } --- -2.27.0 - diff --git a/0001-gui-datovka-annotate-fall-through-cases.patch b/0001-gui-datovka-annotate-fall-through-cases.patch deleted file mode 100644 index 2fc591a..0000000 --- a/0001-gui-datovka-annotate-fall-through-cases.patch +++ /dev/null @@ -1,37 +0,0 @@ -From: Jiri Slaby -Date: Fri, 5 Jun 2020 09:22:07 +0200 -Subject: gui/datovka: annotate fall through cases -Patch-mainline: no -References: qs?rand - -So that compiler won't complain: -warning: this statement may fall through - -Signed-off-by: Jiri Slaby ---- - src/gui/datovka.cpp | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/gui/datovka.cpp b/src/gui/datovka.cpp -index b55b31acf8e7..ee28080e3ad9 100644 ---- a/src/gui/datovka.cpp -+++ b/src/gui/datovka.cpp -@@ -5843,6 +5843,7 @@ void MainWindow::showImportZFOActionDialog(void) - switch (locationType) { - case DlgImportZFO::IMPORT_FROM_SUBDIR: - includeSubdir = true; -+ /* fallthrough */ - case DlgImportZFO::IMPORT_FROM_DIR: - importDir = QFileDialog::getExistingDirectory(this, - tr("Select directory"), m_import_zfo_path, -@@ -7140,6 +7141,7 @@ void MainWindow::prepareMsgTmstmpExpir(enum DlgTimestampExpir::Action action) - - case DlgTimestampExpir::CHECK_DIR_SUB: - includeSubdir = true; -+ /* fallthrough */ - case DlgTimestampExpir::CHECK_DIR: - importDir = QFileDialog::getExistingDirectory(this, - tr("Select directory"), m_import_zfo_path, --- -2.27.0 - diff --git a/datovka-4.15.0.tar.xz b/datovka-4.15.0.tar.xz deleted file mode 100644 index 983136d..0000000 --- a/datovka-4.15.0.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2123ad7ef3b645868d6bcb5a2213f2d5107f45229dcc787124c3abe82d0e61b8 -size 2816380 diff --git a/datovka-4.15.0.tar.xz.sha256 b/datovka-4.15.0.tar.xz.sha256 deleted file mode 100644 index a51893b..0000000 --- a/datovka-4.15.0.tar.xz.sha256 +++ /dev/null @@ -1 +0,0 @@ -2123ad7ef3b645868d6bcb5a2213f2d5107f45229dcc787124c3abe82d0e61b8 diff --git a/datovka-4.16.0.tar.xz b/datovka-4.16.0.tar.xz new file mode 100644 index 0000000..146685e --- /dev/null +++ b/datovka-4.16.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1d2ddeb3f517744108b4a89f6d184e72030e03d118fa926b6bdf1b3a489c1bb +size 2873852 diff --git a/datovka-4.16.0.tar.xz.sha256 b/datovka-4.16.0.tar.xz.sha256 new file mode 100644 index 0000000..c48dabe --- /dev/null +++ b/datovka-4.16.0.tar.xz.sha256 @@ -0,0 +1 @@ +a1d2ddeb3f517744108b4a89f6d184e72030e03d118fa926b6bdf1b3a489c1bb diff --git a/datovka.changes b/datovka.changes index f8a517a..5b3be91 100644 --- a/datovka.changes +++ b/datovka.changes @@ -1,3 +1,54 @@ +------------------------------------------------------------------- +Mon Mar 1 10:25:01 UTC 2021 - Jiri Slaby + +- Update to 4.16.0 + * Using libdatovka instead of libisds. Libdatovka is a fork of libisds and + contains functionality which libisds still does not implement and which is + needed by the application. + * Added the possibility to manage data-box users which is similar to the + functionality offered by the ISDS web interface. + * Fixed sorting of Czech strings in table views when using Czech + localisation. + * Fixed application crashes on repeated full-text data-box searches. + * Fixed navigation in table views in backup and restoration dialogue. + * Added support for the EV6 event. + * Improved tab order in send message window. + * Added PostSignum Qualified CA 4 certificate. + * Fixed a problem with shadow synchronisation after which a blank account name + was sent in the records management report. + * The notification dialogue informing the user about sending a postal data + message can be disabled. + * Added a short timeout before the immediate download of a freshly sent + message. + * Fixed error in ISDS type conversion code - invalid type string values have + been fixed. Database-related incompatible code has been removed from code + shared with mobile application. + * Able to add contacts without name or address into recipient list when + creating a message. + * Fixed an error in remembering directory path when opening and viewing ZFO + files from file system immediately after application start. + * Replaced the 'Mark All as Read' action with 'Mark All Received as' sub-menu + in the 'Data Box' menu of the top menu bar. + * Renamed 'Authenticate Message' to 'Verify Message' in the 'Message' menu + because it reflects better the performed operation. + * Account and message selection status is kept in a separate structure. It is + used to simplify the code for various actions in the main window. + * Code responsible for enabling actions in the main window has been gathered + into one method. + * Improved GUI responsiveness when downloading message lists with complete + new messages. + * Suspending the worker pool does not affect tasks run via runSingle(). + * Added user_account_name field into upload_account_status structure. Sending + account name in order to make account identification in the records + management service a bit easier. + * Fixed compilation with Qt-5.15.0. Replaced most of deprecated code with + available modern alternatives. + * Replaced datovka.appdata.xml with datovka.metainfo.xml. +- remove (fixed upstream) + 0001-Fixed-compilation-using-Qt-5.15.0.patch + 0001-avoid-using-deprecated-qs-rand.patch + 0001-gui-datovka-annotate-fall-through-cases.patch + ------------------------------------------------------------------- Fri Jun 5 07:25:55 UTC 2020 - Jiri Slaby diff --git a/datovka.spec b/datovka.spec index ca8aaad..44a2997 100644 --- a/datovka.spec +++ b/datovka.spec @@ -17,7 +17,7 @@ Name: datovka -Version: 4.15.0 +Version: 4.16.0 Release: 0 Summary: Library to access Czech eGov system "Datove schranky" License: GPL-3.0-or-later @@ -27,9 +27,6 @@ Source0: https://secure.nic.cz/files/datove_schranky/%{version}/%{name}-% Source1: https://secure.nic.cz/files/datove_schranky/%{version}/%{name}-%{version}.tar.xz.sha256 # PATCH-FIX-UPSTREAM: remove some issues with current .pro file Patch0: datovka-fix-pro.patch -Patch1: 0001-Fixed-compilation-using-Qt-5.15.0.patch -Patch2: 0001-avoid-using-deprecated-qs-rand.patch -Patch3: 0001-gui-datovka-annotate-fall-through-cases.patch BuildRequires: libqt5-linguist BuildRequires: openssl-devel BuildRequires: pkgconfig @@ -40,7 +37,7 @@ BuildRequires: pkgconfig(Qt5PrintSupport) >= 5.2.0 BuildRequires: pkgconfig(Qt5Sql) >= 5.2.0 BuildRequires: pkgconfig(Qt5Svg) >= 5.2.0 BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.0 -BuildRequires: pkgconfig(libisds) >= 0.10.8 +BuildRequires: pkgconfig(libdatovka) >= 0.1.1 Requires: libqt5_sql_backend Recommends: %{name}-lang # Included inside with different approach @@ -96,8 +93,8 @@ rm -rf %{buildroot}%{_datadir}/datovka/doc %doc AUTHORS ChangeLog %{_bindir}/datovka %{_datadir}/applications/datovka.desktop -%dir %{_datadir}/appdata -%{_datadir}/appdata/datovka.appdata.xml +%dir %{_datadir}/metainfo +%{_datadir}/metainfo/datovka.metainfo.xml %dir %{_datadir}/datovka %dir %{_datadir}/datovka/localisations/ %{_datadir}/datovka/localisations/datovka_cs.qm