From f1444a4fd3e46e129becd9cd31047dcd54f61ad9 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Apr 24 2020 15:59:42 +0000 Subject: [PATCH 1/2] Port to wtfowm 2.3 and add requirement on email_validator From wtform 2.3 email validation is done via the email_validator library, and since we do email validation, we need to add it as a dependency. Signed-off-by: Pierre-Yves Chibon --- diff --git a/requirements.txt b/requirements.txt index 5d88237..bca9f27 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,6 +11,7 @@ chardet cryptography docutils enum34;python_version<"3.4" +email_validator flask flask-wtf kitchen diff --git a/tests/test_pagure_flask_api_project.py b/tests/test_pagure_flask_api_project.py index 60b0ed7..f2c9f6b 100644 --- a/tests/test_pagure_flask_api_project.py +++ b/tests/test_pagure_flask_api_project.py @@ -2859,6 +2859,8 @@ class PagureFlaskApiProjectFlagtests(tests.Modeltests): "error_code": "EINVALIDREQ", "errors": {"status": ["Not a valid choice"]}, } + if self.get_wtforms_version() >= (2, 3): + expected_output["errors"]["status"] = ["This field is required."] self.assertEqual(data, expected_output) def test_flag_commit_missing_username(self): @@ -3421,6 +3423,10 @@ class PagureFlaskApiProjectModifyAclTests(tests.Modeltests): "user_type": ["Not a valid choice"], }, } + if self.get_wtforms_version() >= (2, 3): + expected_output["errors"]["user_type"] = [ + "This field is required." + ] self.assertEqual(data, expected_output) def test_api_modify_acls_invalid_acl(self): From 8329a0463c540f0ddb2a3ed172066c0a547fb7b6 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Apr 24 2020 15:59:42 +0000 Subject: [PATCH 2/2] Fix sorting users by their username when using python3 Signed-off-by: Pierre-Yves Chibon --- diff --git a/pagure/lib/model.py b/pagure/lib/model.py index ea6413e..c661642 100644 --- a/pagure/lib/model.py +++ b/pagure/lib/model.py @@ -969,13 +969,16 @@ class Project(BASE): """ return { "admin": sorted( - self.get_project_users(access="admin", combine=False) + self.get_project_users(access="admin", combine=False), + key=lambda u: u.user, ), "commit": sorted( - self.get_project_users(access="commit", combine=False) + self.get_project_users(access="commit", combine=False), + key=lambda u: u.user, ), "ticket": sorted( - self.get_project_users(access="ticket", combine=False) + self.get_project_users(access="ticket", combine=False), + key=lambda u: u.user, ), }