From e4e121eec6d42250a761b77564cc6ef867308947 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Jul 11 2016 13:02:20 +0000 Subject: [PATCH 1/3] Check that the length of the array returned is greater than 1 --- diff --git a/pagure/internal/__init__.py b/pagure/internal/__init__.py index dfb5b54..5584a2a 100644 --- a/pagure/internal/__init__.py +++ b/pagure/internal/__init__.py @@ -473,7 +473,7 @@ def get_branches_of_commit(): for branchname in repo_obj.listall_branches(): branch = repo_obj.lookup_branch(branchname) - if not repo_obj.is_empty and repo_obj.listall_branches() > 1: + if not repo_obj.is_empty and len(repo_obj.listall_branches()) > 1: merge_commit = None From 1c9f01a265b3ed6fc8ecdb9e9e01d11ac375d7b3 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Jul 11 2016 13:02:20 +0000 Subject: [PATCH 2/3] Create the content as an unicode string before converting it to bytes when writing --- diff --git a/pagure/lib/__init__.py b/pagure/lib/__init__.py index 8f45036..4b35412 100644 --- a/pagure/lib/__init__.py +++ b/pagure/lib/__init__.py @@ -1036,8 +1036,9 @@ def new_project(session, user, name, blacklist, allowed_prefix, author = pygit2.Signature( userobj.fullname.encode('utf-8'), userobj.default_email.encode('utf-8')) - f = open(os.path.join(temp_gitrepo.workdir,"README.md"), 'w') - f.write("# %s\n\n%s" % (name.encode('utf-8'), description.encode('utf-8'))) + content = u"# %s\n\n%s" % (name, description) + f = open(os.path.join(temp_gitrepo.workdir,"README.md"), 'wb') + f.write(content.encode('utf-8')) f.close() temp_gitrepo.index.add_all() temp_gitrepo.index.write() From bbbc7152b3b58f5ed4dd2e826b5bae29f5447a0f Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Jul 11 2016 13:02:20 +0000 Subject: [PATCH 3/3] Encode the name and email but only on PY2 --- diff --git a/pagure/lib/__init__.py b/pagure/lib/__init__.py index 4b35412..a02e3a4 100644 --- a/pagure/lib/__init__.py +++ b/pagure/lib/__init__.py @@ -23,6 +23,7 @@ import uuid import bleach import redis +import six import sqlalchemy import sqlalchemy.schema from datetime import timedelta @@ -1034,8 +1035,9 @@ def new_project(session, user, name, blacklist, allowed_prefix, temp_gitrepo_path = tempfile.mkdtemp(prefix='pagure-') temp_gitrepo = pygit2.init_repository(temp_gitrepo_path, bare=False) author = pygit2.Signature( - userobj.fullname.encode('utf-8'), - userobj.default_email.encode('utf-8')) + userobj.fullname.encode('utf-8') if six.PY2 else userobj.fullname, + userobj.default_email.encode('utf-8') if six.PY2 else userobj.fullname + ) content = u"# %s\n\n%s" % (name, description) f = open(os.path.join(temp_gitrepo.workdir,"README.md"), 'wb') f.write(content.encode('utf-8'))