#5359 Make pagure use isort for sorting the imports in its files
Merged a year ago by ngompa. Opened a year ago by pingou.

@@ -14,6 +14,7 @@ 

      python3-docutils \

      python3-black \

      python3-flake8 \

+     python3-isort \

      python3-pytest-xdist \

      python3-flask-oidc \

      python3-cchardet \

file modified
+1 -2
@@ -8,8 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

- 

+ from __future__ import absolute_import, unicode_literals

  

  __api_version__ = "0.31"

  __version__ = "5.13.2"

file modified
+11 -11
@@ -14,15 +14,15 @@ 

  # pylint: disable=too-few-public-methods

  # pylint: disable=too-many-locals

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import codecs

+ import enum

  import functools

  import logging

  import os

  

  import docutils

- import enum

  import flask

  import markupsafe

  from six.moves.urllib_parse import urljoin
@@ -33,15 +33,14 @@ 

  import pagure.lib.query  # noqa: E402

  import pagure.lib.tasks  # noqa: E402

  from pagure.config import config as pagure_config  # noqa: E402

- from pagure.doc_utils import (  # noqa: E402

+ from pagure.doc_utils import (  # noqa: E402, I202

      load_doc_title_and_name,

-     modify_rst,

      modify_html,

- )  # noqa: E402

+     modify_rst,

+ )

  from pagure.exceptions import APIError  # noqa: E402

  from pagure.utils import authenticated, check_api_acls  # noqa: E402

  

- 

  _log = logging.getLogger(__name__)

  

  
@@ -335,11 +334,12 @@ 

  if pagure_config.get("ENABLE_TICKETS", True):

      from pagure.api import issue  # noqa: E402

      from pagure.api import boards  # noqa: E402, F401

- from pagure.api import fork  # noqa: E402

- from pagure.api import project  # noqa: E402

- from pagure.api import user  # noqa: E402

- from pagure.api import group  # noqa: E402

- from pagure.api import plugins  # noqa: E402

+ 

+ from pagure.api import fork  # noqa: E402, I202

+ from pagure.api import group  # noqa: E402, I202

+ from pagure.api import plugins  # noqa: E402, I202

+ from pagure.api import project  # noqa: E402, I202

+ from pagure.api import user  # noqa: E402, I202

  

  if pagure_config.get("PAGURE_CI_SERVICES", False):

      from pagure.api.ci import jenkins  # noqa: E402, F401

file modified
+6 -11
@@ -8,32 +8,27 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  

  import flask

- from sqlalchemy.exc import SQLAlchemyError

  import werkzeug.datastructures

+ from sqlalchemy.exc import SQLAlchemyError

  

  import pagure

  import pagure.exceptions

  import pagure.lib.query

  import pagure.lib.tasks

- from pagure.forms import TAGS_REGEX, TAGS_REGEX_RE

  from pagure.api import (

      API,

-     api_method,

-     api_login_required,

      APIERROR,

+     api_login_required,

+     api_method,

      get_request_data,

  )

- from pagure.api.utils import (

-     _get_repo,

-     _check_token,

-     _check_issue_tracker,

- )

- 

+ from pagure.api.utils import _check_issue_tracker, _check_token, _get_repo

+ from pagure.forms import TAGS_REGEX, TAGS_REGEX_RE

  

  _log = logging.getLogger(__name__)

  

file modified
+3 -5
@@ -8,23 +8,21 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  

  import flask

- 

  from cryptography.hazmat.primitives import constant_time

  from kitchen.text.converters import to_bytes

  

  import pagure

  import pagure.exceptions

- import pagure.lib.query

- import pagure.lib.plugins

  import pagure.lib.lib_ci as lib_ci

+ import pagure.lib.plugins

+ import pagure.lib.query

  from pagure.api import API, APIERROR, api_method

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+10 -11
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  
@@ -22,25 +22,24 @@ 

  import pagure.lib.tasks

  from pagure.api import (

      API,

-     api_method,

-     api_login_required,

      APIERROR,

+     api_login_required,

+     api_method,

      get_authorized_api_project,

-     get_request_data,

      get_page,

      get_per_page,

+     get_request_data,

  )

- from pagure.config import config as pagure_config

- from pagure.utils import is_repo_committer, is_true

  from pagure.api.utils import (

-     _get_repo,

-     _check_token,

-     _get_request,

+     _check_private_pull_request_access,

      _check_pull_request,

      _check_pull_request_access,

-     _check_private_pull_request_access,

+     _check_token,

+     _get_repo,

+     _get_request,

  )

- 

+ from pagure.config import config as pagure_config

+ from pagure.utils import is_repo_committer, is_true

  

  _log = logging.getLogger(__name__)

  

file modified
+2 -2
@@ -9,7 +9,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import flask

  
@@ -19,8 +19,8 @@ 

  from pagure.api import (

      API,

      APIERROR,

-     api_method,

      api_login_optional,

+     api_method,

      get_page,

      get_per_page,

  )

file modified
+15 -15
@@ -8,41 +8,41 @@ 

  

  """

  

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

- import flask

  import datetime

  import logging

  

  import arrow

+ import flask

  from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.exceptions

  import pagure.lib.query

  from pagure.api import (

      API,

-     api_method,

-     api_login_required,

-     api_login_optional,

      APIERROR,

-     get_request_data,

+     api_login_optional,

+     api_login_required,

+     api_method,

      get_page,

      get_per_page,

+     get_request_data,

+ )

+ from pagure.api.utils import (

+     _check_issue_tracker,

+     _check_private_issue_access,

+     _check_ticket_access,

+     _check_token,

+     _get_issue,

+     _get_repo,

  )

  from pagure.config import config as pagure_config

  from pagure.utils import (

      api_authenticated,

      is_repo_committer,

-     urlpattern,

      is_true,

- )

- from pagure.api.utils import (

-     _get_repo,

-     _check_token,

-     _get_issue,

-     _check_issue_tracker,

-     _check_ticket_access,

-     _check_private_issue_access,

+     urlpattern,

  )

  

  _log = logging.getLogger(__name__)

file modified
+7 -8
@@ -8,25 +8,24 @@ 

  

  """

  

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

- import flask

  import logging

  

+ import flask

  from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.exceptions

- import pagure.lib.query

- 

  import pagure.lib.plugins as plugins_lib

+ import pagure.lib.query

  from pagure.api import (

      API,

-     api_method,

-     api_login_required,

-     api_login_optional,

      APIERROR,

+     api_login_optional,

+     api_login_required,

+     api_method,

  )

- from pagure.api.utils import _get_repo, _check_token, _check_plugin

+ from pagure.api.utils import _check_plugin, _check_token, _get_repo

  

  _log = logging.getLogger(__name__)

  

file modified
+8 -10
@@ -8,15 +8,14 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import flask

  import logging

  

+ import flask

  import pygit2

- 

- from sqlalchemy.exc import SQLAlchemyError

  from six import string_types

+ from sqlalchemy.exc import SQLAlchemyError

  

  try:

      from pygit2 import AlreadyExistsError
@@ -25,26 +24,25 @@ 

      AlreadyExistsError = ValueError

  

  import pagure

- import pagure.forms

  import pagure.exceptions

+ import pagure.forms

  import pagure.lib.git

  import pagure.lib.query

  import pagure.utils

  from pagure.api import (

      API,

-     api_method,

      APIERROR,

+     api_login_optional,

      api_login_required,

+     api_method,

      get_authorized_api_project,

-     api_login_optional,

-     get_request_data,

      get_page,

      get_per_page,

+     get_request_data,

  )

- from pagure.api.utils import _get_repo, _check_token, _get_project_tag

+ from pagure.api.utils import _check_token, _get_project_tag, _get_repo

  from pagure.config import config as pagure_config

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+2 -2
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import collections

  import datetime
@@ -20,7 +20,7 @@ 

  import pagure

  import pagure.exceptions

  import pagure.lib.query

- from pagure.api import API, api_method, APIERROR, get_page, get_per_page

+ from pagure.api import API, APIERROR, api_method, get_page, get_per_page

  from pagure.utils import is_true, validate_date, validate_date_range

  

  

file modified
+4 -8
@@ -8,22 +8,18 @@ 

  

  """

  

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

- import flask

  import logging

  

+ import flask

  

  import pagure.exceptions

- 

- from pagure.lib import plugins

- 

- from pagure.config import config as pagure_config

  from pagure.api import APIERROR, get_authorized_api_project

- 

+ from pagure.config import config as pagure_config

+ from pagure.lib import plugins

  from pagure.utils import api_authenticated, is_repo_committer, is_repo_user

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+4 -5
@@ -8,18 +8,18 @@ 

  

  """

  

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

  import argparse

  import datetime

  import logging

  import os

- import requests

- from string import Template

  import sys

- import pygit2

+ from string import Template

  

  import arrow

+ import pygit2

+ import requests

  from six.moves import input

  

  if "PAGURE_CONFIG" not in os.environ and os.path.exists(
@@ -38,7 +38,6 @@ 

  from pagure.flask_app import generate_user_key_files  # noqa: E402

  from pagure.utils import get_repo_path  # noqa: E402

  

- 

  _config = pagure.config.reload_config()

  session = pagure.lib.model_base.create_session(_config["DB_URL"])

  _log = logging.getLogger(__name__)

file modified
+2 -1
@@ -8,9 +8,10 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import os  # noqa: E402

+ 

  import flask  # noqa: E402

  

  

file modified
+4 -2
@@ -9,11 +9,13 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

+ 

+ from functools import wraps

  

  import flask

+ 

  from pagure.flask_app import admin_session_timedout

- from functools import wraps

  

  

  def has_issue_tracker(function):

file modified
+2 -3
@@ -8,13 +8,12 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import os

  from datetime import timedelta

  

- from pagure.mail_logging import ContextInjector, MSG_FORMAT

- 

+ from pagure.mail_logging import MSG_FORMAT, ContextInjector  # noqa: I101

  

  # Set the time after which the admin session expires

  ADMIN_SESSION_LIFETIME = timedelta(minutes=20)

file modified
+5 -4
@@ -10,7 +10,9 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

+ 

+ import textwrap

  

  import docutils

  import docutils.core
@@ -18,11 +20,10 @@ 

  import jinja2

  import kitchen.text.converters as ktc

  import markupsafe

- import textwrap

  

- from pagure.config import config as pagure_config

- import pagure.lib.query

  import pagure.lib.encoding_utils

+ import pagure.lib.query

+ from pagure.config import config as pagure_config

  

  

  def modify_rst(rst, view_file_url=None):

file modified
+2 -3
@@ -8,24 +8,23 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  import os

  

  import flask

  import pygit2

- 

  from binaryornot.helpers import is_binary_string

  from whitenoise import WhiteNoise

  

  import pagure.config

  import pagure.doc_utils

  import pagure.exceptions

+ import pagure.forms

  import pagure.lib.mimetype

  import pagure.lib.model_base

  import pagure.lib.query

- import pagure.forms

  

  # Create the application.

  APP = flask.Flask(__name__)

file modified
+1 -1
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  

  class PagureException(Exception):

file modified
+5 -6
@@ -8,20 +8,19 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import gc

  import logging

+ import os

  import string

  import time

- import os

  import warnings

- from six.moves.urllib.parse import urljoin

  

  import flask

  import pygit2

- 

+ from six.moves.urllib.parse import urljoin

  from whitenoise import WhiteNoise

  

  import pagure.doc_utils
@@ -100,7 +99,7 @@ 

          FAS.init_app(app)

      elif auth == "oidc":

          # Only import and set flask_fas_openid if it is needed

-         from pagure.ui.oidc_login import oidc, fas_user_from_oidc

+         from pagure.ui.oidc_login import fas_user_from_oidc, oidc

  

          oidc.init_app(app)

          app.before_request(fas_user_from_oidc)
@@ -453,7 +452,7 @@ 

      auth = pagure_config.get("PAGURE_AUTH", None)

  

      if not authenticated and auth == "oidc":

-         from pagure.ui.oidc_login import oidc, fas_user_from_oidc, set_user

+         from pagure.ui.oidc_login import fas_user_from_oidc, oidc, set_user

  

          # If oidc is used and user hits this endpoint, it will redirect

          # to IdP with destination=<pagure>/login?next=<location>

file modified
+2 -2
@@ -12,7 +12,7 @@ 

  # pylint: disable=no-init

  # pylint: disable=super-on-old-class

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import re
@@ -31,7 +31,7 @@ 

  import pagure.lib.query

  import pagure.validators

  from pagure.config import config as pagure_config

- from pagure.utils import urlpattern, is_admin

+ from pagure.utils import is_admin, urlpattern

  

  STRICT_REGEX = "^[a-zA-Z0-9-_]+$"

  # This regex is used when creating tags, there we do not want to allow ','

file modified
+4 -4
@@ -8,20 +8,20 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

+ import os

  import subprocess

  import sys

  import traceback

- import os

  

  import six

  import wtforms

  

+ import pagure.lib.git

+ import pagure.lib.query

  from pagure.config import config as pagure_config

  from pagure.exceptions import FileNotFoundException

- import pagure.lib.query

- import pagure.lib.git

  from pagure.lib.git_auth import get_git_auth_helper

  from pagure.lib.plugins import get_enabled_plugins

  

file modified
+1 -2
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, print_function, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

  import logging

  
@@ -23,7 +23,6 @@ 

  import pagure.utils

  from pagure.hooks import BaseHook, BaseRunner

  

- 

  _config = pagure.config.reload_config()

  _log = logging.getLogger(__name__)

  

file modified
+3 -3
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy as sa

  import wtforms
@@ -17,8 +17,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  from pagure.hooks import BaseHook, BaseRunner

  from pagure.lib.model import BASE, Project

file modified
+4 -4
@@ -8,18 +8,18 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import sqlalchemy as sa

  import pygit2

+ import sqlalchemy as sa

  import wtforms

  

  try:

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  from pagure.hooks import BaseHook, RequiredIf

  from pagure.lib.model import BASE, Project

file modified
+6 -5
@@ -8,20 +8,21 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import sqlalchemy as sa

  import os

- import pygit2

  import subprocess

+ 

+ import pygit2

+ import sqlalchemy as sa

  import wtforms

  

  try:

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  from pagure.config import config as pagure_config

  from pagure.hooks import BaseHook, BaseRunner, RequiredIf

file modified
+3 -4
@@ -7,7 +7,7 @@ 

     Pierre-Yves Chibon <pingou@pingoured.fr>

  

  """

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy as sa

  import wtforms
@@ -16,8 +16,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure.config

  import pagure.lib.tasks_mirror
@@ -25,7 +25,6 @@ 

  from pagure.lib.model import BASE, Project

  from pagure.utils import get_repo_path, ssh_urlpattern

  

- 

  _config = pagure.config.reload_config()

  

  

file modified
+3 -3
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import flask

  import sqlalchemy as sa
@@ -18,8 +18,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure.lib.login

  from pagure.hooks import BaseHook, BaseRunner, RequiredIf

@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy as sa

  import wtforms
@@ -17,8 +17,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure.lib.git

  from pagure.hooks import BaseHook, BaseRunner, RequiredIf

file modified
+4 -5
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  
@@ -20,17 +20,16 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

+ 

  from sqlalchemy.exc import SQLAlchemyError

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ from sqlalchemy.orm import backref, relation

  

  import pagure.config

- import pagure.lib.query

  import pagure.lib.git

+ import pagure.lib.query

  from pagure.hooks import BaseHook, BaseRunner

  from pagure.lib.model import BASE, Project

  

- 

  _log = logging.getLogger(__name__)

  pagure_config = pagure.config.reload_config()

  

@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy as sa

  import wtforms
@@ -17,8 +17,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  from pagure.hooks import BaseHook, BaseRunner

  from pagure.lib.model import BASE, Project

@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy as sa

  import wtforms
@@ -17,8 +17,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure.lib.git

  import pagure.lib.tasks_services

@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import os

  
@@ -19,8 +19,8 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure.lib.git

  import pagure.lib.tasks_services

@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy as sa

  import wtforms
@@ -17,15 +17,14 @@ 

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure.config

  import pagure.lib.git

  from pagure.hooks import BaseHook, BaseRunner

  from pagure.lib.model import BASE, Project

  

- 

  _config = pagure.config.reload_config()

  

  

file modified
+4 -4
@@ -9,18 +9,18 @@ 

  """

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import sqlalchemy as sa

  import requests

+ import sqlalchemy as sa

  import wtforms

  

  try:

      from flask_wtf import FlaskForm

  except ImportError:

      from flask_wtf import Form as FlaskForm

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import backref

+ 

+ from sqlalchemy.orm import backref, relation

  

  import pagure

  from pagure.hooks import BaseHook, BaseRunner

file modified
+3 -5
@@ -10,17 +10,16 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import collections

  import logging

  import os

+ from functools import wraps

  

  import flask

  import pygit2

  import werkzeug.utils

- 

- from functools import wraps

  from sqlalchemy.exc import SQLAlchemyError

  

  PV = flask.Blueprint("internal_ns", __name__, url_prefix="/pv")
@@ -31,11 +30,10 @@ 

  import pagure.lib.git  # noqa: E402

  import pagure.lib.query  # noqa: E402

  import pagure.lib.tasks  # noqa: E402

- import pagure.utils  # noqa: E402

  import pagure.ui.fork  # noqa: E402

+ import pagure.utils  # noqa: E402

  from pagure.config import config as pagure_config  # noqa: E402

  

- 

  _log = logging.getLogger(__name__)

  _auth_log = logging.getLogger("pagure_auth")

  

file modified
+3 -3
@@ -11,9 +11,10 @@ 

  content to unicode is implemented here.

  """

  

- from __future__ import unicode_literals, division, absolute_import

- from collections import namedtuple

+ from __future__ import absolute_import, division, unicode_literals

+ 

  import logging

+ from collections import namedtuple

  

  try:

      import cchardet
@@ -24,7 +25,6 @@ 

  

  from pagure.exceptions import PagureEncodingException

  

- 

  _log = logging.getLogger(__name__)

  

  Guess = namedtuple("Guess", ["encoding", "confidence"])

file modified
+12 -15
@@ -7,13 +7,7 @@ 

     Pierre-Yves Chibon <pingou@pingoured.fr>

  

  """

- from __future__ import print_function, unicode_literals, absolute_import

- 

- # pylint: disable=too-many-branches

- # pylint: disable=too-many-arguments

- # pylint: disable=too-many-locals

- # pylint: disable=too-many-statements

- # pylint: disable=too-many-lines

+ from __future__ import absolute_import, print_function, unicode_literals

  

  import datetime

  import json
@@ -21,31 +15,34 @@ 

  import os

  import shutil

  import subprocess

- import requests

- import tempfile

  import tarfile

+ import tempfile

  import zipfile

  

  import arrow

  import pygit2

+ import requests

  import six

  

- from sqlalchemy.exc import SQLAlchemyError

- 

  # from sqlalchemy.orm.session import Session

  from pygit2.remote import RemoteCollection

+ from sqlalchemy.exc import SQLAlchemyError

  

- import pagure.utils

  import pagure.exceptions

- import pagure.lib.query

+ import pagure.hooks

  import pagure.lib.notify

+ import pagure.lib.query

  import pagure.lib.tasks

+ import pagure.utils

  from pagure.config import config as pagure_config

  from pagure.lib import model

  from pagure.lib.repo import PagureRepo

- import pagure.hooks

  

- # from pagure.hooks import run_project_hooks

+ # pylint: disable=too-many-branches

+ # pylint: disable=too-many-arguments

+ # pylint: disable=too-many-locals

+ # pylint: disable=too-many-statements

+ # pylint: disable=too-many-lines

  

  

  _log = logging.getLogger(__name__)

file modified
+2 -3
@@ -7,17 +7,17 @@ 

     Pierre-Yves Chibon <pingou@pingoured.fr>

  

  """

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

  import abc

  import json

  import logging

  import os

- import pkg_resources

  import subprocess

  import tempfile

  from io import open

  

+ import pkg_resources

  import werkzeug.utils

  from six import with_metaclass

  from six.moves import dbm_gnu
@@ -29,7 +29,6 @@ 

  from pagure.lib import model

  from pagure.utils import is_repo_collaborator, lookup_deploykey

  

- 

  # logging.config.dictConfig(pagure_config.get('LOGGING') or {'version': 1})

  _log = logging.getLogger(__name__)

  

file modified
+2 -2
@@ -10,14 +10,14 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  # pylint: disable=too-many-locals

  import logging

  import time

+ 

  import pagure.exceptions

  import pagure.lib.query

- 

  from pagure.config import config as pagure_config

  

  _log = logging.getLogger(__name__)

file modified
+3 -3
@@ -10,15 +10,15 @@ 

  

  # pylint: disable=too-many-arguments

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import re

- import pagure.lib.query

+ 

  import pagure.exceptions

+ import pagure.lib.query

  import pagure.utils

  from pagure.config import config as pagure_config

  

- 

  FIXES = [

      re.compile(r"(?:.*\s+)?{0}?[sd]?:?\s*?#(\d+)".format(kw), re.I)

      for kw in ["fix", "fixe", "merge", "close", "resolve"]

file modified
+4 -3
@@ -9,7 +9,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  try:

      # Provided in Python 3.6+
@@ -21,14 +21,15 @@ 

      random = random.SystemRandom()

      random_choice = random.choice

  

- import string

  import hashlib

+ import string

+ 

  import bcrypt

  import six

+ from cryptography.hazmat.primitives import constant_time

  

  import pagure.config

  from pagure.lib import model

- from cryptography.hazmat.primitives import constant_time

  

  

  def id_generator(size=15, chars=string.ascii_uppercase + string.digits):

file modified
+2 -2
@@ -1,15 +1,15 @@ 

  # -*- coding: utf-8 -*-

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  import mimetypes

+ 

  import kitchen.text.converters as ktc

  import six

  

  import pagure.lib.encoding_utils

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+14 -14
@@ -8,29 +8,30 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import arrow

- import datetime

  import collections

- import logging

+ import datetime

  import json

+ import logging

  import operator

- import re

- import pygit2

  import os

+ import re

  from operator import attrgetter

  

+ import arrow

+ import pygit2

  import six

  import sqlalchemy as sa

- 

  from sqlalchemy import create_engine

  from sqlalchemy.exc import SQLAlchemyError

- from sqlalchemy.orm import backref

- from sqlalchemy.orm import sessionmaker

- from sqlalchemy.orm import scoped_session

- from sqlalchemy.orm import relation

- from sqlalchemy.orm import validates

+ from sqlalchemy.orm import (

+     backref,

+     relation,

+     scoped_session,

+     sessionmaker,

+     validates,

+ )

  

  import pagure.exceptions

  from pagure.config import config as pagure_config
@@ -38,7 +39,6 @@ 

  from pagure.lib.plugins import get_plugin_tables

  from pagure.utils import is_true

  

- 

  _log = logging.getLogger(__name__)

  

  # hit w/ all the id field we use
@@ -86,8 +86,8 @@ 

  

          # Ignore the warning missing alembic

          # pylint: disable=import-error

-         from alembic.config import Config

          from alembic import command

+         from alembic.config import Config

  

          alembic_cfg = Config(alembic_ini)

          command.stamp(alembic_cfg, "head")

file modified
+2 -4
@@ -8,13 +8,11 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import sqlalchemy

  from sqlalchemy.ext.declarative import declarative_base

- from sqlalchemy.orm import sessionmaker

- from sqlalchemy.orm import scoped_session

- 

+ from sqlalchemy.orm import scoped_session, sessionmaker

  

  CONVENTION = {

      "ix": "ix_%(table_name)s_%(column_0_label)s",

file modified
+9 -10
@@ -8,12 +8,7 @@ 

  

  pagure notifications.

  """

- from __future__ import print_function, unicode_literals, absolute_import

- 

- 

- # pylint: disable=too-many-branches

- # pylint: disable=too-many-arguments

- 

+ from __future__ import absolute_import, print_function, unicode_literals

  

  import datetime

  import hashlib
@@ -22,20 +17,24 @@ 

  import os

  import re

  import smtplib

- import time

- import six

  import ssl

+ import time

  from email.header import Header

  from email.mime.text import MIMEText

- from six.moves.urllib_parse import urljoin

  

  import blinker

  import flask

+ import six

+ from markdown.extensions.fenced_code import FencedBlockPreprocessor

+ from six.moves.urllib_parse import urljoin

+ 

  import pagure.lib.query

  import pagure.lib.tasks_services

  from pagure.config import config as pagure_config

  from pagure.pfmarkdown import MENTION_RE

- from markdown.extensions.fenced_code import FencedBlockPreprocessor

+ 

+ # pylint: disable=too-many-branches

+ # pylint: disable=too-many-arguments

  

  

  _log = logging.getLogger(__name__)

file modified
+1 -1
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  from straight.plugin import load

  

file modified
+4 -7
@@ -9,7 +9,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  # pylint: disable=too-many-branches

  # pylint: disable=too-many-arguments
@@ -34,7 +34,6 @@ 

  import subprocess

  import tempfile

  import uuid

- 

  from collections import Counter

  from math import ceil

  
@@ -45,11 +44,10 @@ 

  import sqlalchemy

  import sqlalchemy.schema

  import werkzeug.utils

- 

- from six.moves.urllib_parse import urlparse, urlencode, parse_qsl

- from sqlalchemy import asc, desc, func, cast, Text

- from sqlalchemy.orm import aliased

  from flask import url_for

+ from six.moves.urllib_parse import parse_qsl, urlencode, urlparse

+ from sqlalchemy import Text, asc, cast, desc, func

+ from sqlalchemy.orm import aliased

  

  import pagure.exceptions

  import pagure.lib.git
@@ -68,7 +66,6 @@ 

  # For backward compatibility since this function used to be in this file

  from pagure.lib.model_base import create_session  # noqa

  

- 

  REDIS = None

  PAGURE_CI = None

  _log = logging.getLogger(__name__)

file modified
+1 -2
@@ -7,7 +7,7 @@ 

     Pierre-Yves Chibon <pingou@pingoured.fr>

  

  """

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

  import logging

  import subprocess
@@ -17,7 +17,6 @@ 

  import pagure

  import pagure.exceptions

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+3 -4
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import collections

  import datetime
@@ -22,7 +22,6 @@ 

  import arrow

  import pygit2

  import six

- 

  from celery import Celery

  from celery.result import AsyncResult

  from celery.signals import after_setup_task_logger
@@ -32,12 +31,12 @@ 

  import pagure.lib.git

  import pagure.lib.git_auth

  import pagure.lib.link

- import pagure.lib.query

  import pagure.lib.model

+ import pagure.lib.query

  import pagure.lib.repo

  import pagure.utils

- from pagure.lib.tasks_utils import pagure_task

  from pagure.config import config as pagure_config

+ from pagure.lib.tasks_utils import pagure_task

  from pagure.utils import get_parent_repo_path

  

  # logging.config.dictConfig(pagure_config.get('LOGGING') or {'version': 1})

file modified
+2 -3
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import base64

  import datetime
@@ -19,12 +19,11 @@ 

  

  import six

  import werkzeug.utils

- 

  from celery import Celery

  from cryptography import utils

  from cryptography.hazmat.backends import default_backend

- from cryptography.hazmat.primitives.asymmetric import rsa

  from cryptography.hazmat.primitives import serialization

+ from cryptography.hazmat.primitives.asymmetric import rsa

  

  import pagure.lib.query

  from pagure.config import config as pagure_config

file modified
+3 -4
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import hashlib
@@ -21,7 +21,6 @@ 

  

  import requests

  import six

- 

  from celery import Celery

  from celery.signals import after_setup_task_logger

  from celery.utils.log import get_task_logger
@@ -30,10 +29,10 @@ 

  

  import pagure.lib.query

  from pagure.config import config as pagure_config

+ from pagure.lib.lib_ci import trigger_jenkins_build

  from pagure.lib.tasks_utils import pagure_task

  from pagure.mail_logging import format_callstack

- from pagure.lib.lib_ci import trigger_jenkins_build

- from pagure.utils import split_project_fullname, set_up_logging

+ from pagure.utils import set_up_logging, split_project_fullname

  

  # logging.config.dictConfig(pagure_config.get('LOGGING') or {'version': 1})

  _log = get_task_logger(__name__)

file modified
+1 -1
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import gc

  from functools import wraps

file modified
+1 -1
@@ -20,7 +20,7 @@ 

  # pylint: disable=no-init

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import wtforms

  

file modified
+2 -3
@@ -23,12 +23,11 @@ 

  Mail handler for logging.

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

+ import inspect

  import logging

  import logging.handlers

- 

- import inspect

  import socket

  import traceback

  

file modified
+3 -4
@@ -9,16 +9,15 @@ 

  

  """

  

- from __future__ import print_function, unicode_literals, absolute_import

+ from __future__ import absolute_import, print_function, unicode_literals

  

- 

- import pprint

  import os

+ import pprint

  import traceback

  import types

  

- import six

  import pygit2

+ import six

  

  try:

      import _pygit2

file modified
+3 -5
@@ -19,24 +19,22 @@ 

          Pierre-Yves Chibon <pingou@pingoured.fr>

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

+ import re

  

  import flask

- 

  import markdown.inlinepatterns

- import markdown.preprocessors

  import markdown.postprocessors

+ import markdown.preprocessors

  import markdown.util

  import pygit2

- import re

  import six

  

  import pagure.lib.query

  from pagure.config import config as pagure_config

  

- 

  try:

      from markdown.inlinepatterns import ImagePattern as ImagePattern

  

file modified
+1 -1
@@ -26,7 +26,7 @@ 

  Source: http://flask.pocoo.org/snippets/35/ by Peter Hansen

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  

  class ReverseProxied(object):  # pragma: no cover

file modified
+5 -4
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import flask

  
@@ -17,15 +17,16 @@ 

  # Import the different controllers in the UI namespace/blueprint

  import pagure.config  # noqa: E402

  import pagure.ui.app  # noqa: E402

- from pagure.ui.clone import add_clone_proxy_cmds  # noqa: E402

  import pagure.ui.fork  # noqa: E402

  import pagure.ui.groups  # noqa: E402

+ from pagure.ui.clone import add_clone_proxy_cmds  # noqa: E402

  

  if pagure.config.config.get("ENABLE_TICKETS", True):

      import pagure.ui.issues  # noqa: E402

      import pagure.ui.boards  # noqa: E402

- import pagure.ui.plugins  # noqa: E402

- import pagure.ui.repo  # noqa: E402

+ 

+ import pagure.ui.plugins  # noqa: E402, I202

+ import pagure.ui.repo  # noqa: E402, I202

  

  if pagure.config.config["PAGURE_AUTH"] == "local":

      import pagure.ui.login  # noqa: E402

file modified
+4 -5
@@ -9,7 +9,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import logging
@@ -19,23 +19,22 @@ 

  from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.exceptions

+ import pagure.forms

  import pagure.lib.git

  import pagure.lib.query

  import pagure.lib.tasks

- import pagure.forms

  import pagure.ui.filters

  from pagure.config import config as pagure_config

  from pagure.flask_app import _get_user, admin_session_timedout

  from pagure.ui import UI_NS

  from pagure.utils import (

      authenticated,

-     is_safe_url,

-     login_required,

      get_task_redirect_url,

+     is_safe_url,

      is_true,

+     login_required,

  )

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+5 -9
@@ -14,23 +14,19 @@ 

  # pylint: disable=too-many-statements

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  

  import flask

  

- from pagure.ui import UI_NS

- from pagure.utils import (

-     authenticated,

-     login_required,

- )

  from pagure.decorators import (

-     is_repo_admin,

-     is_admin_sess_timedout,

      has_issue_tracker,

+     is_admin_sess_timedout,

+     is_repo_admin,

  )

- 

+ from pagure.ui import UI_NS

+ from pagure.utils import authenticated, login_required

  

  _log = logging.getLogger(__name__)

  

file modified
+3 -3
@@ -8,25 +8,25 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import base64

  import logging

+ import os

  import subprocess

  import tempfile

- import os

  

  import flask

  import requests

  import werkzeug.wsgi

  

  import pagure.exceptions

+ import pagure.forms

  import pagure.lib.git

  import pagure.lib.mimetype

  import pagure.lib.plugins

  import pagure.lib.query

  import pagure.lib.tasks

- import pagure.forms

  import pagure.ui.plugins

  from pagure.config import config as pagure_config

  from pagure.ui import UI_NS

file modified
+3 -4
@@ -8,21 +8,20 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  from base64 import b64decode

  

  import flask

+ import flask_fas_openid

  from flask import Markup

- 

  from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.lib.query

  import pagure.utils

- from pagure.flask_app import logout

  from pagure.config import config as pagure_config

- import flask_fas_openid

+ from pagure.flask_app import logout

  

  FAS = flask_fas_openid.FAS()

  

file modified
+5 -7
@@ -13,30 +13,28 @@ 

  # pylint: disable=too-many-locals

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import textwrap

  import logging

  import os

+ import textwrap

  from os.path import splitext

  

  import arrow

  import bleach

  import flask

- import six

  import pygit2

- 

- from six.moves.urllib.parse import urlparse, parse_qsl

+ import six

  from jinja2 import escape

+ from six.moves.urllib.parse import parse_qsl, urlparse

  

  import pagure.exceptions

- import pagure.lib.query

  import pagure.forms

+ import pagure.lib.query

  from pagure.config import config as pagure_config

  from pagure.ui import UI_NS

  from pagure.utils import authenticated, is_repo_committer, is_true

  

- 

  _log = logging.getLogger(__name__)

  # Jinja filters

  

file modified
+4 -5
@@ -16,10 +16,10 @@ 

  # pylint: disable=too-many-lines

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

- import logging

  import json

+ import logging

  import os

  from math import ceil

  
@@ -30,21 +30,20 @@ 

  import pagure

  import pagure.doc_utils

  import pagure.exceptions

+ import pagure.forms

  import pagure.lib.git

  import pagure.lib.plugins

  import pagure.lib.query

  import pagure.lib.tasks

- import pagure.forms

  from pagure.config import config as pagure_config

  from pagure.ui import UI_NS

  from pagure.utils import (

-     login_required,

      __get_file_in_tree,

      get_parent_repo_path,

      is_true,

+     login_required,

  )

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+1 -2
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  
@@ -22,7 +22,6 @@ 

  from pagure.ui import UI_NS

  from pagure.utils import login_required

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+7 -9
@@ -14,39 +14,37 @@ 

  # pylint: disable=too-many-statements

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import logging

  import os

- from collections import defaultdict, OrderedDict

+ from collections import OrderedDict, defaultdict

  from math import ceil

  

  import flask

  import pygit2

  import werkzeug.datastructures

- from sqlalchemy.exc import SQLAlchemyError

  from binaryornot.helpers import is_binary_string

  from six.moves.urllib.parse import urljoin

+ from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.doc_utils

  import pagure.exceptions

- import pagure.lib.query

- import pagure.lib.mimetype

- from pagure.decorators import has_issue_tracker, is_repo_admin

- 

  import pagure.forms

+ import pagure.lib.mimetype

+ import pagure.lib.query

  from pagure.config import config as pagure_config

+ from pagure.decorators import has_issue_tracker, is_repo_admin

  from pagure.ui import UI_NS

  from pagure.utils import (

      __get_file_in_tree,

      authenticated,

+     is_true,

      login_required,

      urlpattern,

-     is_true,

  )

  

- 

  _log = logging.getLogger(__name__)

  

  

file modified
+5 -6
@@ -9,26 +9,25 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import logging

  

  import flask

- from sqlalchemy.exc import SQLAlchemyError

  from six.moves.urllib.parse import urljoin

+ from sqlalchemy.exc import SQLAlchemyError

  

- import pagure.login_forms as forms

  import pagure.config

  import pagure.lib.login

  import pagure.lib.model as model

  import pagure.lib.model_base

  import pagure.lib.notify

  import pagure.lib.query

- from pagure.utils import login_required

- from pagure.lib.login import generate_hashed_value, check_password

+ import pagure.login_forms as forms

+ from pagure.lib.login import check_password, generate_hashed_value

  from pagure.ui import UI_NS

- 

+ from pagure.utils import login_required

  

  _log = logging.getLogger(__name__)

  

file modified
+3 -4
@@ -8,14 +8,15 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  from base64 import b64decode

  

  import flask

- from flask import Markup

  import munch

+ from flask import Markup

+ from flask_oidc import OpenIDConnect

  from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.lib.query
@@ -23,8 +24,6 @@ 

  from pagure.flask_app import logout

  from pagure.utils import is_admin

  

- from flask_oidc import OpenIDConnect

- 

  oidc = OpenIDConnect()

  

  

file modified
+2 -4
@@ -11,23 +11,21 @@ 

  

  # pylint: disable=too-many-branches

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import logging

  

  import flask

  from flask import Markup

- 

  from sqlalchemy.exc import SQLAlchemyError

  

  import pagure.exceptions

  import pagure.forms

  import pagure.lib.plugins

+ from pagure.decorators import is_repo_admin

  from pagure.exceptions import FileNotFoundException

  from pagure.ui import UI_NS

  from pagure.utils import login_required

- from pagure.decorators import is_repo_admin

- 

  

  _log = logging.getLogger(__name__)

  

file modified
+14 -16
@@ -17,7 +17,7 @@ 

  # pylint: disable=broad-except

  

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import json
@@ -25,45 +25,43 @@ 

  import os

  import re

  from math import ceil

- from six.moves.urllib.parse import urljoin

  

  import flask

- import pygit2

  import kitchen.text.converters as ktc

+ import pygit2

  import six

  import werkzeug.utils

- 

- from six import BytesIO

+ from binaryornot.helpers import is_binary_string

  from PIL import Image

+ from six import BytesIO

+ from six.moves.urllib.parse import urljoin

  from sqlalchemy.exc import SQLAlchemyError

  

- from binaryornot.helpers import is_binary_string

- 

  import pagure.exceptions

+ import pagure.forms

  import pagure.lib.git

  import pagure.lib.mimetype

  import pagure.lib.plugins

  import pagure.lib.query

  import pagure.lib.tasks

- import pagure.forms

  import pagure.ui.plugins

  from pagure.config import config as pagure_config

+ from pagure.decorators import (

+     has_issue_or_pr_enabled,

+     has_issue_tracker,

+     has_pr_enabled,

+     is_admin_sess_timedout,

+     is_repo_admin,

+ )

  from pagure.flask_app import _get_user

  from pagure.lib import encoding_utils

  from pagure.ui import UI_NS

  from pagure.utils import (

      __get_file_in_tree,

-     login_required,

      is_true,

+     login_required,

      stream_template,

  )

- from pagure.decorators import (

-     is_repo_admin,

-     is_admin_sess_timedout,

-     has_issue_tracker,

-     has_issue_or_pr_enabled,

-     has_pr_enabled,

- )

  

  _log = logging.getLogger(__name__)

  

file modified
+5 -6
@@ -8,7 +8,7 @@ 

  

  """

  

- from __future__ import unicode_literals, absolute_import

+ from __future__ import absolute_import, unicode_literals

  

  import datetime

  import fnmatch
@@ -16,21 +16,20 @@ 

  import logging.config

  import os

  import re

- from six.moves.urllib.parse import urlparse, urljoin

  from functools import wraps

  

  import flask

  import pygit2

  import six

  import werkzeug.utils

+ from six.moves.urllib.parse import urljoin, urlparse

  

+ from pagure.config import config as pagure_config

  from pagure.exceptions import (

-     PagureException,

-     InvalidTimestampException,

      InvalidDateformatException,

+     InvalidTimestampException,

+     PagureException,

  )

- from pagure.config import config as pagure_config

- 

  

  _log = logging.getLogger(__name__)

  LOGGER_SETUP = False

file modified
+44 -1
@@ -48,7 +48,7 @@ 

              sys.executable,

              "-m",

              "flake8",

-             "--ignore=E712,W503,E203,E902",

+             "--ignore=E712,W503,E203,E902,I201,I100",

              "--max-line-length=80",

              REPO_PATH,

          ]
@@ -119,6 +119,49 @@ 

  

          self.assertEqual(proc.returncode, 0)

  

+     def test_code_with_isort(self):

+         """Enforce isort compliance on the codebase.

+ 

+         This test runs isort on the code, and will fail if it returns a

+         non-zero exit code.

+         If isort is not installed, this test auto-skips.

+         """

+         try:

+             import isort

+         except ImportError as e:

+             raise unittest.SkipTest(

+                 "isort is not installed, skipping isort style check..."

+             )

+         # We ignore the hooks files that have a bunch of symlink

+         isort_command = [

+             sys.executable,

+             "-m",

+             "isort",

+             "-v",

+             "--profile",

+             "black",

+             "-s",

+             os.path.join(REPO_PATH, "hooks/files"),

+             "-l",

+             "79",

+             REPO_PATH,

+         ]

+ 

+         # check if we have an old isort or not

+         import isort

+ 

+         print(" ".join(isort_command))

+         proc = subprocess.Popen(

+             isort_command, stdout=subprocess.PIPE, cwd=REPO_PATH

+         )

+         stdout, stderr = proc.communicate()

+         print("stdout: ")

+         print(stdout.decode("utf-8")) if stdout else ""

+         print("stderr: ")

+         print(stderr.decode("utf-8")) if stderr else ""

+ 

+         self.assertEqual(proc.returncode, 0)

+ 

  

  if __name__ == "__main__":

      unittest.main(verbosity=2)

no initial comment

4 new commits added

  • Install isort in the container environments
  • Make style check happy once and for all
  • Make isort part of the test suite
  • Run isort on the pagure code
a year ago
06:46:05  ________________________ TestStyle.test_code_with_isort ________________________
06:46:05  [gw3] linux -- Python 3.6.8 /usr/libexec/platform-python
06:46:05  
06:46:05  self = <tests.test_style.TestStyle testMethod=test_code_with_isort>
06:46:05  
06:46:05      def test_code_with_isort(self):
06:46:05          """Enforce isort compliance on the codebase.
06:46:05      
06:46:05              This test runs isort on the code, and will fail if it returns a
06:46:05              non-zero exit code.
06:46:05              If isort is not installed, this test auto-skips.
06:46:05              """
06:46:05          try:
06:46:05              import isort
06:46:05          except ImportError as e:
06:46:05              raise unittest.SkipTest(
06:46:05                  "isort is not installed, skipping isort style check..."
06:46:05              )
06:46:05          # We ignore the hooks files that have a bunch of symlink
06:46:05          isort_command = [
06:46:05              sys.executable,
06:46:05              "-m",
06:46:05              "isort",
06:46:05              "-v",
06:46:05              "--profile",
06:46:05              "black",
06:46:05              "-s",
06:46:05              os.path.join(REPO_PATH, "hooks/files"),
06:46:05              "-l",
06:46:05              "79",
06:46:05              REPO_PATH,
06:46:05          ]
06:46:05      
06:46:05          # check if we have an old isort or not
06:46:05          import isort
06:46:05      
06:46:05          print(" ".join(isort_command))
06:46:05          proc = subprocess.Popen(
06:46:05              isort_command, stdout=subprocess.PIPE, cwd=REPO_PATH
06:46:05          )
06:46:05          stdout, stderr = proc.communicate()
06:46:05          print("stdout: ")
06:46:05          print(stdout.decode("utf-8")) if stdout else ""
06:46:05          print("stderr: ")
06:46:05          print(stderr.decode("utf-8")) if stderr else ""
06:46:05      
06:46:05  >       self.assertEqual(proc.returncode, 0)
06:46:05  E       AssertionError: 2 != 0
06:46:05  
06:46:05  tests/test_style.py:163: AssertionError
06:46:05  ----------------------------- Captured stdout call -----------------------------
06:46:05  /usr/libexec/platform-python -m isort -v --profile black -s /pagure/pagure/hooks/files -l 79 /pagure/pagure
06:46:05  stdout: 
06:46:05  stderr: 

rebased onto fbe023dd76e529469b296fcbdcae21d533b69c18

a year ago

rebased onto db5b769184f081d4320851e1507306f281e0aff2

a year ago

rebased onto dd8c24f

a year ago

Looks like the version of isort present on CentOS 8 is too old, so I'm dropping the isort test in that environment

Looks like the version of isort present on CentOS 8 is too old, so I'm dropping the isort test in that environment

Once the test environment stops being completely broken, we can add CentOS Stream 9 to the matrix. :100:

pretty please pagure-ci rebuild

a year ago

Pull-Request has been merged by ngompa

a year ago
Metadata
Changes Summary 73
+1 -0
file changed
dev/containers/fedora-rpms-py3
+1 -2
file changed
pagure/__init__.py
+11 -11
file changed
pagure/api/__init__.py
+6 -11
file changed
pagure/api/boards.py
+3 -5
file changed
pagure/api/ci/jenkins.py
+10 -11
file changed
pagure/api/fork.py
+2 -2
file changed
pagure/api/group.py
+15 -15
file changed
pagure/api/issue.py
+7 -8
file changed
pagure/api/plugins.py
+8 -10
file changed
pagure/api/project.py
+2 -2
file changed
pagure/api/user.py
+4 -8
file changed
pagure/api/utils.py
+4 -5
file changed
pagure/cli/admin.py
+2 -1
file changed
pagure/config.py
+4 -2
file changed
pagure/decorators.py
+2 -3
file changed
pagure/default_config.py
+5 -4
file changed
pagure/doc_utils.py
+2 -3
file changed
pagure/docs_server.py
+1 -1
file changed
pagure/exceptions.py
+5 -6
file changed
pagure/flask_app.py
+2 -2
file changed
pagure/forms.py
+4 -4
file changed
pagure/hooks/__init__.py
+1 -2
file changed
pagure/hooks/default.py
+3 -3
file changed
pagure/hooks/fedmsg_hook.py
+4 -4
file changed
pagure/hooks/irc.py
+6 -5
file changed
pagure/hooks/mail.py
+3 -4
file changed
pagure/hooks/mirror_hook.py
+3 -3
file changed
pagure/hooks/pagure_ci.py
+3 -3
file changed
pagure/hooks/pagure_force_commit.py
+4 -5
file changed
pagure/hooks/pagure_hook.py
+3 -3
file changed
pagure/hooks/pagure_no_new_branches.py
+3 -3
file changed
pagure/hooks/pagure_request_hook.py
+3 -3
file changed
pagure/hooks/pagure_ticket_hook.py
+3 -4
file changed
pagure/hooks/pagure_unsigned_commits.py
+4 -4
file changed
pagure/hooks/rtd.py
+3 -5
file changed
pagure/internal/__init__.py
+3 -3
file changed
pagure/lib/encoding_utils.py
+12 -15
file changed
pagure/lib/git.py
+2 -3
file changed
pagure/lib/git_auth.py
+2 -2
file changed
pagure/lib/lib_ci.py
+3 -3
file changed
pagure/lib/link.py
+4 -3
file changed
pagure/lib/login.py
+2 -2
file changed
pagure/lib/mimetype.py
+14 -14
file changed
pagure/lib/model.py
+2 -4
file changed
pagure/lib/model_base.py
+9 -10
file changed
pagure/lib/notify.py
+1 -1
file changed
pagure/lib/plugins.py
+4 -7
file changed
pagure/lib/query.py
+1 -2
file changed
pagure/lib/repo.py
+3 -4
file changed
pagure/lib/tasks.py
+2 -3
file changed
pagure/lib/tasks_mirror.py
+3 -4
file changed
pagure/lib/tasks_services.py
+1 -1
file changed
pagure/lib/tasks_utils.py
+1 -1
file changed
pagure/login_forms.py
+2 -3
file changed
pagure/mail_logging.py
+3 -4
file changed
pagure/perfrepo.py
+3 -5
file changed
pagure/pfmarkdown.py
+1 -1
file changed
pagure/proxy.py
+5 -4
file changed
pagure/ui/__init__.py
+4 -5
file changed
pagure/ui/app.py
+5 -9
file changed
pagure/ui/boards.py
+3 -3
file changed
pagure/ui/clone.py
+3 -4
file changed
pagure/ui/fas_login.py
+5 -7
file changed
pagure/ui/filters.py
+4 -5
file changed
pagure/ui/fork.py
+1 -2
file changed
pagure/ui/groups.py
+7 -9
file changed
pagure/ui/issues.py
+5 -6
file changed
pagure/ui/login.py
+3 -4
file changed
pagure/ui/oidc_login.py
+2 -4
file changed
pagure/ui/plugins.py
+14 -16
file changed
pagure/ui/repo.py
+5 -6
file changed
pagure/utils.py
+44 -1
file changed
tests/test_style.py