This is an automated email from the ASF dual-hosted git repository. brondsem pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/allura.git
commit 8475df60918ea5cf560584000a692bf87906ad34 Author: Dave Brondsema <[email protected]> AuthorDate: Wed Oct 30 12:59:17 2024 -0400 clean up unused imports, mark helpers.py lines that we need to keep --- Allura/allura/command/base.py | 1 - Allura/allura/command/create_trove_categories.py | 1 - Allura/allura/command/reclone_repo.py | 1 - Allura/allura/command/script.py | 1 - Allura/allura/command/show_models.py | 2 -- Allura/allura/command/taskd.py | 1 - Allura/allura/config/app_cfg.py | 2 +- Allura/allura/config/middleware.py | 3 --- Allura/allura/controllers/auth.py | 1 - Allura/allura/controllers/basetest_project_root.py | 2 -- Allura/allura/controllers/discuss.py | 6 ++---- Allura/allura/controllers/newforge.py | 2 +- Allura/allura/controllers/project.py | 2 -- Allura/allura/controllers/repository.py | 4 +--- Allura/allura/controllers/rest.py | 3 +-- Allura/allura/controllers/root.py | 2 +- Allura/allura/controllers/site_admin.py | 2 +- Allura/allura/controllers/trovecategories.py | 1 - Allura/allura/ext/admin/admin_main.py | 6 ++---- Allura/allura/ext/admin/widgets.py | 2 -- Allura/allura/ext/user_profile/user_main.py | 3 +-- Allura/allura/lib/app_globals.py | 3 --- Allura/allura/lib/custom_middleware.py | 2 +- Allura/allura/lib/decorators.py | 3 --- Allura/allura/lib/diff.py | 2 +- Allura/allura/lib/helpers.py | 15 ++++++--------- Allura/allura/lib/macro.py | 1 - Allura/allura/lib/markdown_extensions.py | 2 -- Allura/allura/lib/multifactor.py | 1 - Allura/allura/lib/patches.py | 4 ---- Allura/allura/lib/phone/nexmo.py | 1 - Allura/allura/lib/plugin.py | 4 +--- Allura/allura/lib/project_create_helpers.py | 2 -- Allura/allura/lib/repository.py | 1 - Allura/allura/lib/search.py | 3 --- Allura/allura/lib/solr.py | 1 - Allura/allura/lib/spam/stopforumspamfilter.py | 1 - Allura/allura/lib/utils.py | 4 +--- Allura/allura/lib/validators.py | 1 - Allura/allura/lib/widgets/auth_widgets.py | 2 -- Allura/allura/lib/widgets/form_fields.py | 2 -- Allura/allura/lib/widgets/forms.py | 1 - Allura/allura/lib/widgets/oauth_widgets.py | 1 - Allura/allura/lib/widgets/project_list.py | 1 - Allura/allura/model/artifact.py | 1 - Allura/allura/model/auth.py | 4 ---- Allura/allura/model/discuss.py | 2 -- Allura/allura/model/index.py | 1 - Allura/allura/model/monq_model.py | 2 +- Allura/allura/model/neighborhood.py | 2 +- Allura/allura/model/notification.py | 2 -- Allura/allura/model/repo_refresh.py | 4 ++-- Allura/allura/model/repository.py | 2 +- Allura/allura/model/session.py | 2 -- Allura/allura/model/webhook.py | 1 - Allura/allura/scripts/reindex_projects.py | 2 +- Allura/allura/tasks/event_tasks.py | 1 - Allura/allura/tasks/export_tasks.py | 1 - Allura/allura/tasks/index_tasks.py | 1 - Allura/allura/tasks/repo_tasks.py | 1 - Allura/allura/tests/functional/test_auth.py | 4 ++-- Allura/allura/tests/functional/test_discuss.py | 2 -- Allura/allura/tests/functional/test_rest.py | 1 - Allura/allura/tests/functional/test_root.py | 1 - Allura/allura/tests/functional/test_site_admin.py | 1 - Allura/allura/tests/model/test_auth.py | 2 +- Allura/allura/tests/model/test_notification.py | 1 - Allura/allura/tests/model/test_repo.py | 1 - Allura/allura/tests/test_decorators.py | 2 +- Allura/allura/tests/test_diff.py | 1 - Allura/allura/tests/test_globals.py | 3 --- Allura/allura/tests/test_helpers.py | 1 - Allura/allura/tests/test_mail_util.py | 1 - Allura/allura/tests/test_markdown.py | 1 - Allura/allura/tests/test_scripttask.py | 1 - Allura/allura/tests/test_security.py | 2 +- Allura/allura/tests/test_tasks.py | 1 - Allura/allura/tests/test_utils.py | 2 -- Allura/allura/tests/test_webhooks.py | 1 - Allura/allura/tests/unit/spam/test_spam_filter.py | 1 - Allura/allura/tests/unit/test_artifact.py | 1 - Allura/allura/tests/unit/test_project.py | 1 - Allura/allura/tests/unit/test_repo.py | 2 -- Allura/allura/tests/unit/test_sitemapentry.py | 1 - Allura/allura/tests/unit/test_solr.py | 1 - Allura/allura/webhooks.py | 1 - Allura/allura/websetup/bootstrap.py | 4 ---- Allura/allura/websetup/schema.py | 1 - AlluraTest/alluratest/controller.py | 5 +---- AlluraTest/alluratest/tools.py | 2 -- AlluraTest/alluratest/validation.py | 5 ----- ForgeActivity/forgeactivity/main.py | 2 +- ForgeBlog/forgeblog/model/blog.py | 1 - ForgeBlog/forgeblog/tests/test_commands.py | 3 --- ForgeDiscussion/forgediscussion/controllers/forum.py | 1 - ForgeDiscussion/forgediscussion/controllers/root.py | 2 +- ForgeDiscussion/forgediscussion/forum_main.py | 1 - ForgeDiscussion/forgediscussion/import_support.py | 1 - ForgeDiscussion/forgediscussion/model/forum.py | 2 -- .../forgediscussion/tests/functional/test_forum.py | 1 - ForgeDiscussion/forgediscussion/widgets/forum_widgets.py | 2 -- ForgeFeedback/forgefeedback/feedback_main.py | 5 ++--- ForgeFeedback/forgefeedback/model/feedback.py | 5 ----- ForgeFeedback/forgefeedback/tests/functional/test_root.py | 4 ---- ForgeFiles/forgefiles/files_main.py | 2 +- ForgeGit/forgegit/controllers.py | 2 +- ForgeGit/forgegit/tests/model/test_repository.py | 1 - ForgeGit/forgegit/tests/test_git_app.py | 1 - ForgeGit/forgegit/tests/test_tasks.py | 1 - ForgeImporters/forgeimporters/github/tracker.py | 1 - ForgeImporters/forgeimporters/github/wiki.py | 1 - ForgeImporters/forgeimporters/trac/tests/test_tickets.py | 2 +- ForgeSVN/forgesvn/controllers.py | 2 +- ForgeSVN/forgesvn/model/svn.py | 3 +-- ForgeSVN/forgesvn/svn_main.py | 1 - ForgeSVN/forgesvn/tests/model/test_repository.py | 1 - ForgeSVN/forgesvn/tests/test_svn_app.py | 1 - ForgeSVN/forgesvn/tests/test_tasks.py | 1 - ForgeShortUrl/forgeshorturl/model/shorturl.py | 2 +- ForgeTracker/forgetracker/import_support.py | 1 - ForgeTracker/forgetracker/model/ticket.py | 1 - ForgeTracker/forgetracker/plugins.py | 2 -- ForgeTracker/forgetracker/search.py | 1 - ForgeTracker/forgetracker/tests/functional/test_root.py | 4 ---- .../forgetracker/tests/unit/test_root_controller.py | 1 - ForgeTracker/forgetracker/tests/unit/test_ticket_model.py | 1 - ForgeTracker/forgetracker/widgets/ticket_form.py | 1 - ForgeTracker/forgetracker/widgets/ticket_search.py | 1 - ForgeUserStats/forgeuserstats/controllers/userstats.py | 1 - ForgeUserStats/forgeuserstats/tests/test_model.py | 1 - ForgeUserStats/forgeuserstats/tests/test_stats.py | 1 - ForgeWiki/forgewiki/converters.py | 1 - ForgeWiki/forgewiki/model/wiki.py | 1 - run_tests | 1 - .../migrations/032-subscribe-merge-request-submitters.py | 2 +- scripts/migrations/033-change-comment-anon-permissions.py | 5 ++--- .../034-update_subscriptions_ticket_and_mr_titles.py | 1 - scripts/perf/generate-projects.py | 1 - scripts/perf/load-up-forum.py | 7 +++---- scripts/trac_import.py | 1 - 140 files changed, 49 insertions(+), 228 deletions(-) diff --git a/Allura/allura/command/base.py b/Allura/allura/command/base.py index de09018c9..cf495fbf4 100644 --- a/Allura/allura/command/base.py +++ b/Allura/allura/command/base.py @@ -18,7 +18,6 @@ import os import logging -import six import tg from paste.script import command from paste.deploy import appconfig diff --git a/Allura/allura/command/create_trove_categories.py b/Allura/allura/command/create_trove_categories.py index bdb9815b9..d17304047 100644 --- a/Allura/allura/command/create_trove_categories.py +++ b/Allura/allura/command/create_trove_categories.py @@ -25,7 +25,6 @@ from mock import patch, Mock from . import base from allura import model as M -import six log = logging.getLogger(__name__) diff --git a/Allura/allura/command/reclone_repo.py b/Allura/allura/command/reclone_repo.py index a25e8ca68..ff99336bc 100644 --- a/Allura/allura/command/reclone_repo.py +++ b/Allura/allura/command/reclone_repo.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import warnings from tg import tmpl_context as c diff --git a/Allura/allura/command/script.py b/Allura/allura/command/script.py index a004d41fa..27b841de0 100644 --- a/Allura/allura/command/script.py +++ b/Allura/allura/command/script.py @@ -18,7 +18,6 @@ import sys import os.path import cProfile -import warnings from tg import tmpl_context as c import tg diff --git a/Allura/allura/command/show_models.py b/Allura/allura/command/show_models.py index b5d9d4300..6702ba990 100644 --- a/Allura/allura/command/show_models.py +++ b/Allura/allura/command/show_models.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import sys from collections import defaultdict from contextlib import contextmanager from itertools import groupby @@ -32,7 +31,6 @@ from allura.lib.exceptions import CompoundError from allura.lib import helpers as h from allura.lib import utils from . import base -import six class ShowModelsCommand(base.Command): diff --git a/Allura/allura/command/taskd.py b/Allura/allura/command/taskd.py index 2268d0426..01d4b710d 100644 --- a/Allura/allura/command/taskd.py +++ b/Allura/allura/command/taskd.py @@ -20,7 +20,6 @@ import re import logging import os import time -import six.moves.queue from contextlib import contextmanager from datetime import datetime, timedelta import signal diff --git a/Allura/allura/config/app_cfg.py b/Allura/allura/config/app_cfg.py index dd4b975ef..bf33f6ab0 100644 --- a/Allura/allura/config/app_cfg.py +++ b/Allura/allura/config/app_cfg.py @@ -50,7 +50,7 @@ from tg.support.converters import asint import allura # needed for tg.configuration to work -from allura.lib import app_globals, helpers +from allura.lib import helpers from allura.lib.package_path_loader import PackagePathLoader log = logging.getLogger(__name__) diff --git a/Allura/allura/config/middleware.py b/Allura/allura/config/middleware.py index ec3547274..19c8e3e3b 100644 --- a/Allura/allura/config/middleware.py +++ b/Allura/allura/config/middleware.py @@ -24,8 +24,6 @@ import pickle import re import warnings -import six -import tg import pkg_resources from tg import config from paste.deploy.converters import asbool, aslist, asint @@ -38,7 +36,6 @@ from werkzeug.debug import DebuggedApplication import activitystream import ew import formencode -import ming from ming.odm.middleware import MingMiddleware from beaker_session_jwt import JWTCookieSession diff --git a/Allura/allura/controllers/auth.py b/Allura/allura/controllers/auth.py index bcfa181e3..770281005 100644 --- a/Allura/allura/controllers/auth.py +++ b/Allura/allura/controllers/auth.py @@ -22,7 +22,6 @@ import os from base64 import b32encode from datetime import datetime import re -import warnings from urllib.parse import urlparse, urljoin import bson diff --git a/Allura/allura/controllers/basetest_project_root.py b/Allura/allura/controllers/basetest_project_root.py index a110a962f..805c80a8e 100644 --- a/Allura/allura/controllers/basetest_project_root.py +++ b/Allura/allura/controllers/basetest_project_root.py @@ -27,12 +27,10 @@ from tg import TGController from paste.deploy.converters import asbool from allura.lib.security import require, require_authenticated, require_access, has_access -from allura.lib import helpers as h from allura.lib import plugin from allura import model as M from .root import RootController from .project import ProjectController -from .rest import RestController __all__ = ['RootController'] diff --git a/Allura/allura/controllers/discuss.py b/Allura/allura/controllers/discuss.py index 0d732f43c..e5ed81f87 100644 --- a/Allura/allura/controllers/discuss.py +++ b/Allura/allura/controllers/discuss.py @@ -15,14 +15,13 @@ # specific language governing permissions and limitations # under the License. -from urllib.parse import unquote, urlsplit, parse_qs +from urllib.parse import unquote from datetime import datetime import logging import pymongo from tg import expose, redirect, validate, request, flash, response -from tg.decorators import with_trailing_slash, without_trailing_slash, before_render, before_validate -from decorator import decorator +from tg.decorators import with_trailing_slash, without_trailing_slash from tg import tmpl_context as c, app_globals as g from webob import exc @@ -44,7 +43,6 @@ from allura.lib.widgets import discuss as DW from allura.lib.widgets import form_fields as ffw from allura.model.auth import User -from allura.model.artifact import ArtifactReference from .attachments import AttachmentsController, AttachmentController from .feed import FeedArgs, FeedController import six diff --git a/Allura/allura/controllers/newforge.py b/Allura/allura/controllers/newforge.py index bd0f389ce..68351fd3f 100644 --- a/Allura/allura/controllers/newforge.py +++ b/Allura/allura/controllers/newforge.py @@ -19,7 +19,7 @@ from io import BytesIO import six from tg import expose -from tg.decorators import without_trailing_slash, with_trailing_slash +from tg.decorators import without_trailing_slash from webob import exc from tg import app_globals as g diff --git a/Allura/allura/controllers/project.py b/Allura/allura/controllers/project.py index 9f5868dc7..86ba0a7b4 100644 --- a/Allura/allura/controllers/project.py +++ b/Allura/allura/controllers/project.py @@ -28,7 +28,6 @@ from tg.decorators import with_trailing_slash, without_trailing_slash from tg import tmpl_context as c, app_globals as g from paste.deploy.converters import asbool from webob import exc -import jinja2 import markupsafe import pymongo @@ -49,7 +48,6 @@ from allura.lib.widgets import form_fields as ffw from allura.lib.widgets import project_list as plw from allura.lib import plugin, exceptions from .search import ProjectBrowseController -from allura.ext.user_profile.user_main import UserProfileApp log = logging.getLogger(__name__) diff --git a/Allura/allura/controllers/repository.py b/Allura/allura/controllers/repository.py index 8138fd57b..111ba510a 100644 --- a/Allura/allura/controllers/repository.py +++ b/Allura/allura/controllers/repository.py @@ -15,13 +15,11 @@ # specific language governing permissions and limitations # under the License. -import os import logging import difflib from allura.lib.utils import permanent_redirect -from datetime import datetime -from urllib.parse import quote, unquote +from urllib.parse import unquote from collections import defaultdict, OrderedDict diff --git a/Allura/allura/controllers/rest.py b/Allura/allura/controllers/rest.py index e0b54fd16..82a39e1f4 100644 --- a/Allura/allura/controllers/rest.py +++ b/Allura/allura/controllers/rest.py @@ -20,7 +20,7 @@ from __future__ import annotations import json import logging from datetime import datetime, timedelta -from urllib.parse import unquote, urlparse, parse_qs, parse_qsl +from urllib.parse import unquote, parse_qs import oauthlib.oauth1 import oauthlib.oauth2 @@ -31,7 +31,6 @@ import tg from tg import expose, flash, redirect, config from tg import tmpl_context as c, app_globals as g from tg import request, response -from tg.decorators import without_trailing_slash import colander from ming.odm import session diff --git a/Allura/allura/controllers/root.py b/Allura/allura/controllers/root.py index c626ddf4e..fd0337538 100644 --- a/Allura/allura/controllers/root.py +++ b/Allura/allura/controllers/root.py @@ -19,7 +19,7 @@ import logging from string import Template -from tg import expose, request, config, session, redirect, flash +from tg import expose, request, redirect, flash from tg.decorators import with_trailing_slash from tg import tmpl_context as c from tg import response diff --git a/Allura/allura/controllers/site_admin.py b/Allura/allura/controllers/site_admin.py index 19ed71e4a..ca1e845b2 100644 --- a/Allura/allura/controllers/site_admin.py +++ b/Allura/allura/controllers/site_admin.py @@ -20,7 +20,7 @@ import logging from datetime import datetime, timedelta import shlex -from tg import expose, validate, flash, config, redirect +from tg import expose, validate, flash, redirect from tg.decorators import with_trailing_slash, without_trailing_slash import bson import tg diff --git a/Allura/allura/controllers/trovecategories.py b/Allura/allura/controllers/trovecategories.py index d94d60e42..971da330c 100644 --- a/Allura/allura/controllers/trovecategories.py +++ b/Allura/allura/controllers/trovecategories.py @@ -31,7 +31,6 @@ from allura.lib.security import require_authenticated, require_site_admin from allura.lib.widgets import forms from allura.lib.plugin import SiteAdminExtension from allura.app import SitemapEntry -import six class F: diff --git a/Allura/allura/ext/admin/admin_main.py b/Allura/allura/ext/admin/admin_main.py index 6feecd038..e5620aafb 100644 --- a/Allura/allura/ext/admin/admin_main.py +++ b/Allura/allura/ext/admin/admin_main.py @@ -18,7 +18,6 @@ import logging import re import os -from random import randint from collections import OrderedDict from datetime import datetime from urllib.parse import urlparse @@ -26,7 +25,7 @@ import json from operator import itemgetter, attrgetter import pkg_resources -from tg import tmpl_context as c, app_globals as g, response +from tg import tmpl_context as c, app_globals as g from tg import request from paste.deploy.converters import asbool, aslist from tg import expose, redirect, flash, validate, config, jsonify @@ -35,13 +34,12 @@ from webob import exc from bson import ObjectId from ming.odm.odmsession import ThreadLocalODMSession from ming.odm import session -import PIL from allura.app import Application, DefaultAdminController, SitemapEntry from allura.lib import helpers as h from allura import version from allura import model as M -from allura.lib.security import has_access, require_access, is_site_admin +from allura.lib.security import has_access, require_access from allura.lib.widgets import form_fields as ffw from allura.lib import exceptions as forge_exc from allura.lib import plugin diff --git a/Allura/allura/ext/admin/widgets.py b/Allura/allura/ext/admin/widgets.py index e5537f467..2e1dfba23 100644 --- a/Allura/allura/ext/admin/widgets.py +++ b/Allura/allura/ext/admin/widgets.py @@ -14,7 +14,6 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -import tg from tg import tmpl_context as c import ew as ew_core @@ -28,7 +27,6 @@ from allura.lib.widgets import forms as ff from allura.lib.widgets import form_fields as ffw from bson import ObjectId -from paste.deploy.converters import aslist class CardField(ew._Jinja2Widget): diff --git a/Allura/allura/ext/user_profile/user_main.py b/Allura/allura/ext/user_profile/user_main.py index cf7840523..635693e8d 100644 --- a/Allura/allura/ext/user_profile/user_main.py +++ b/Allura/allura/ext/user_profile/user_main.py @@ -27,7 +27,6 @@ from tg import tmpl_context as c, app_globals as g from pytz import timezone from tg import expose, redirect, validate, flash from tg.decorators import without_trailing_slash -from decorator import decorator from webob import exc from allura import version @@ -40,7 +39,7 @@ from allura.lib.decorators import require_post from allura.lib.plugin import AuthenticationProvider from allura.lib.security import require_access from allura.lib.widgets.user_profile import SendMessageForm, SectionsUtil, SectionBase, ProjectsSectionBase -from allura.model import User, ACE, ProjectRole +from allura.model import ACE, ProjectRole log = logging.getLogger(__name__) diff --git a/Allura/allura/lib/app_globals.py b/Allura/allura/lib/app_globals.py index fc6bfbba9..0870579f8 100644 --- a/Allura/allura/lib/app_globals.py +++ b/Allura/allura/lib/app_globals.py @@ -18,11 +18,9 @@ from __future__ import annotations import re import logging -import html import hashlib import json import datetime -from urllib.parse import urlencode from subprocess import Popen, PIPE import os import time @@ -63,7 +61,6 @@ from allura.lib.macro import uncacheable_macros_names from allura.lib.widgets import analytics from allura.lib.security import Credentials from allura.lib.solr import MockSOLR, make_solr_from_config -from allura.model.session import artifact_orm_session import six """The application's Globals object""" diff --git a/Allura/allura/lib/custom_middleware.py b/Allura/allura/lib/custom_middleware.py index f73036d16..0e8c0392a 100644 --- a/Allura/allura/lib/custom_middleware.py +++ b/Allura/allura/lib/custom_middleware.py @@ -34,7 +34,7 @@ from allura.lib import helpers as h from allura.lib.utils import is_ajax from allura import model as M import allura.model.repository -from tg import tmpl_context as c, app_globals as g +from tg import tmpl_context as c log = logging.getLogger(__name__) diff --git a/Allura/allura/lib/decorators.py b/Allura/allura/lib/decorators.py index a0fecc1f4..cd27647b4 100644 --- a/Allura/allura/lib/decorators.py +++ b/Allura/allura/lib/decorators.py @@ -16,10 +16,8 @@ # under the License. import inspect -import sys import json import logging -import six from http.cookies import SimpleCookie as Cookie from collections import defaultdict from urllib.parse import unquote @@ -38,7 +36,6 @@ from tg import response from webob.exc import HTTPFound, WSGIHTTPException from allura.lib import helpers as h -from allura.lib import utils log = logging.getLogger(__name__) diff --git a/Allura/allura/lib/diff.py b/Allura/allura/lib/diff.py index ee9087253..e9f7b60e8 100644 --- a/Allura/allura/lib/diff.py +++ b/Allura/allura/lib/diff.py @@ -19,7 +19,7 @@ from __future__ import annotations import html import contextlib import logging -from collections.abc import Iterable, Generator +from collections.abc import Iterable import sxsdiff from diff_match_patch import diff_match_patch diff --git a/Allura/allura/lib/helpers.py b/Allura/allura/lib/helpers.py index 4ac03e2ae..8631f09ca 100644 --- a/Allura/allura/lib/helpers.py +++ b/Allura/allura/lib/helpers.py @@ -21,7 +21,6 @@ import sys import os import os.path import difflib -import jinja2 import urllib.request import urllib.parse @@ -32,13 +31,11 @@ import json import logging import string import random -import pickle from hashlib import sha1 from datetime import datetime, timedelta -from collections import defaultdict, OrderedDict +from collections import defaultdict import shlex import socket -from functools import partial from io import BytesIO import html import http.client @@ -60,10 +57,12 @@ from tg.decorators import before_validate from formencode.variabledecode import variable_decode import formencode from markupsafe import Markup -from jinja2.filters import escape, do_filesizeformat +from jinja2.filters import escape +from jinja2.filters import do_filesizeformat # noqa: F401 RUF100 from jinja2.utils import pass_context, htmlsafe_json_dumps from paste.deploy.converters import asbool, aslist, asint -from webhelpers2 import date, text +from webhelpers2 import date +from webhelpers2 import text # noqa: F401 RUF100 from webob.exc import HTTPUnauthorized from allura.lib import exceptions as exc @@ -72,10 +71,9 @@ from allura.lib import validators import urllib.parse as urlparse from urllib.parse import urlencode import math -from webob.multidict import MultiDict # import to make available to templates, don't delete: -from .security import has_access, is_allowed_by_role, is_site_admin +from .security import has_access, is_allowed_by_role, is_site_admin # noqa: F401 RUF100 log = logging.getLogger(__name__) @@ -955,7 +953,6 @@ def ming_config(**conf): :param \*\*conf: keyword arguments defining the new ming configuration """ - import ming from ming.session import Session datastores = Session._datastores try: diff --git a/Allura/allura/lib/macro.py b/Allura/allura/lib/macro.py index f0e32e150..711bd3de4 100644 --- a/Allura/allura/lib/macro.py +++ b/Allura/allura/lib/macro.py @@ -29,7 +29,6 @@ import six.moves.urllib.request import six.moves.urllib.error import oembed -import jinja2 import markupsafe from operator import attrgetter from urllib.parse import urlparse, urlunparse diff --git a/Allura/allura/lib/markdown_extensions.py b/Allura/allura/lib/markdown_extensions.py index a942e8ba4..28ffd13aa 100644 --- a/Allura/allura/lib/markdown_extensions.py +++ b/Allura/allura/lib/markdown_extensions.py @@ -19,7 +19,6 @@ from __future__ import annotations import re import logging import warnings -from typing import List import xml.etree.ElementTree as etree from urllib.parse import urljoin @@ -37,7 +36,6 @@ from . import macro from . import helpers as h from allura import model as M from allura.lib.utils import ForgeHTMLSanitizerFilter, is_nofollow_url -import six log = logging.getLogger(__name__) diff --git a/Allura/allura/lib/multifactor.py b/Allura/allura/lib/multifactor.py index c80465501..8368497b6 100644 --- a/Allura/allura/lib/multifactor.py +++ b/Allura/allura/lib/multifactor.py @@ -24,7 +24,6 @@ from collections import OrderedDict from base64 import b32decode, b32encode from time import time import errno -import warnings import bson from allura.lib.exceptions import InvalidRecoveryCode, MultifactorRateLimitError diff --git a/Allura/allura/lib/patches.py b/Allura/allura/lib/patches.py index 964624d0b..d8d642394 100644 --- a/Allura/allura/lib/patches.py +++ b/Allura/allura/lib/patches.py @@ -15,17 +15,13 @@ # specific language governing permissions and limitations # under the License. -import re import webob import tg.decorators from decorator import decorator from tg import request -import mock -import json from allura.lib import helpers as h -import six _patched = False def apply(): diff --git a/Allura/allura/lib/phone/nexmo.py b/Allura/allura/lib/phone/nexmo.py index fa1443eb7..9ac4829f7 100644 --- a/Allura/allura/lib/phone/nexmo.py +++ b/Allura/allura/lib/phone/nexmo.py @@ -21,7 +21,6 @@ import html import json import requests -import jinja2 import markupsafe from allura.lib.phone import PhoneService diff --git a/Allura/allura/lib/plugin.py b/Allura/allura/lib/plugin.py index c836378a6..fa059bd38 100644 --- a/Allura/allura/lib/plugin.py +++ b/Allura/allura/lib/plugin.py @@ -24,8 +24,6 @@ import os import logging import subprocess import string -import random -import sys import warnings from contextlib import contextmanager from urllib.parse import urlparse @@ -49,7 +47,7 @@ except ImportError: ldap = modlist = None import pkg_resources import tg -from tg import config, request, redirect, response, flash +from tg import config, request, redirect, response from tg import tmpl_context as c, app_globals as g from webob import exc, Request from paste.deploy.converters import asbool, asint, aslist diff --git a/Allura/allura/lib/project_create_helpers.py b/Allura/allura/lib/project_create_helpers.py index 387eb0f68..2ec2cb3f7 100644 --- a/Allura/allura/lib/project_create_helpers.py +++ b/Allura/allura/lib/project_create_helpers.py @@ -29,11 +29,9 @@ import colander as col import bson import requests import formencode -import six from urllib.parse import urlparse from allura.lib.helpers import slugify -from allura.model import Neighborhood from ming.base import Object from ming.odm import ThreadLocalODMSession from tg import tmpl_context as c, app_globals as g diff --git a/Allura/allura/lib/repository.py b/Allura/allura/lib/repository.py index d4d21ff9f..f76374bc9 100644 --- a/Allura/allura/lib/repository.py +++ b/Allura/allura/lib/repository.py @@ -18,7 +18,6 @@ import logging import six -from urllib.parse import quote from tg import tmpl_context as c, app_globals as g from tg import request diff --git a/Allura/allura/lib/search.py b/Allura/allura/lib/search.py index 0489f1ac2..69531f5e9 100644 --- a/Allura/allura/lib/search.py +++ b/Allura/allura/lib/search.py @@ -18,13 +18,11 @@ import ast import re -import socket from logging import getLogger import bson import markdown -import jinja2 import markupsafe from tg import redirect, url from tg import tmpl_context as c, app_globals as g @@ -34,7 +32,6 @@ from pysolr import SolrError from allura.lib import helpers as h from allura.lib.solr import escape_solr_arg from allura.lib.utils import urlencode -import six log = getLogger(__name__) diff --git a/Allura/allura/lib/solr.py b/Allura/allura/lib/solr.py index 012fb728a..49511d8aa 100644 --- a/Allura/allura/lib/solr.py +++ b/Allura/allura/lib/solr.py @@ -26,7 +26,6 @@ from webob.exc import HTTPRequestEntityTooLarge from paste.deploy.converters import asbool import pysolr from pysolr import SolrError -import six from allura.lib.helpers import shlex_split diff --git a/Allura/allura/lib/spam/stopforumspamfilter.py b/Allura/allura/lib/spam/stopforumspamfilter.py index 80d234c9e..dc240ce34 100644 --- a/Allura/allura/lib/spam/stopforumspamfilter.py +++ b/Allura/allura/lib/spam/stopforumspamfilter.py @@ -24,7 +24,6 @@ from tg import request from allura.lib import utils from allura.lib.spam import SpamFilter -import six log = logging.getLogger(__name__) diff --git a/Allura/allura/lib/utils.py b/Allura/allura/lib/utils.py index d025f4f67..d3b27fd6b 100644 --- a/Allura/allura/lib/utils.py +++ b/Allura/allura/lib/utils.py @@ -20,7 +20,6 @@ import base64 from collections.abc import Iterable, Mapping, MutableMapping from contextlib import contextmanager import time -import string import hashlib import binascii import logging.handlers @@ -29,11 +28,10 @@ import datetime import random import mimetypes import re -from typing import Type, TypeVar +from typing import TypeVar import magic from itertools import groupby import operator as op -import collections import ming from urllib.parse import urlparse import six.moves.urllib.request diff --git a/Allura/allura/lib/validators.py b/Allura/allura/lib/validators.py index 9bce7b396..1a949d7e0 100644 --- a/Allura/allura/lib/validators.py +++ b/Allura/allura/lib/validators.py @@ -23,7 +23,6 @@ from formencode import validators as fev from tg import tmpl_context as c from . import helpers as h from datetime import datetime -import six from urllib.parse import urlsplit from ipaddress import ip_address import socket diff --git a/Allura/allura/lib/widgets/auth_widgets.py b/Allura/allura/lib/widgets/auth_widgets.py index 52a849fc9..1382545cb 100644 --- a/Allura/allura/lib/widgets/auth_widgets.py +++ b/Allura/allura/lib/widgets/auth_widgets.py @@ -21,14 +21,12 @@ from ew.core import validator from tg import request, tmpl_context as c from formencode import Invalid -from formencode import validators as fev from webob import exc from .forms import ForgeForm from tg import tmpl_context as c, app_globals as g from allura.lib import plugin -from allura import model as M class LoginForm(ForgeForm): diff --git a/Allura/allura/lib/widgets/form_fields.py b/Allura/allura/lib/widgets/form_fields.py index d2347daca..646c98180 100644 --- a/Allura/allura/lib/widgets/form_fields.py +++ b/Allura/allura/lib/widgets/form_fields.py @@ -23,12 +23,10 @@ from tg import request, url import json import logging -from formencode import validators as fev import paginate import ew as ew_core import ew.jinja2_ew as ew -import six from allura.lib import validators as v diff --git a/Allura/allura/lib/widgets/forms.py b/Allura/allura/lib/widgets/forms.py index d3c8ddff8..cc3744feb 100644 --- a/Allura/allura/lib/widgets/forms.py +++ b/Allura/allura/lib/widgets/forms.py @@ -16,7 +16,6 @@ # under the License. import logging -from html import escape as html_escape import html from tg import app_globals as g, tmpl_context as c diff --git a/Allura/allura/lib/widgets/oauth_widgets.py b/Allura/allura/lib/widgets/oauth_widgets.py index ba314c3d0..7fe33b75e 100644 --- a/Allura/allura/lib/widgets/oauth_widgets.py +++ b/Allura/allura/lib/widgets/oauth_widgets.py @@ -17,7 +17,6 @@ import ew as ew_core import ew.jinja2_ew as ew -from formencode import validators as fev from allura.lib import validators as V diff --git a/Allura/allura/lib/widgets/project_list.py b/Allura/allura/lib/widgets/project_list.py index 01bc4e2f3..b91d2dd84 100644 --- a/Allura/allura/lib/widgets/project_list.py +++ b/Allura/allura/lib/widgets/project_list.py @@ -23,7 +23,6 @@ from paste.deploy.converters import asbool from allura import model as M from allura.lib.security import Credentials -import six class ProjectSummary(ew_core.Widget): diff --git a/Allura/allura/model/artifact.py b/Allura/allura/model/artifact.py index 0758a9569..32c126daa 100644 --- a/Allura/allura/model/artifact.py +++ b/Allura/allura/model/artifact.py @@ -47,7 +47,6 @@ from .project import AppConfig from .notification import MailFooter from .filesystem import File -import six if typing.TYPE_CHECKING: from ming.odm.mapper import Query diff --git a/Allura/allura/model/auth.py b/Allura/allura/model/auth.py index 607a4b5cb..51dc98617 100644 --- a/Allura/allura/model/auth.py +++ b/Allura/allura/model/auth.py @@ -18,10 +18,8 @@ from __future__ import annotations import logging -import calendar import typing -import six from markupsafe import Markup from urllib.parse import urlparse from email import header @@ -38,7 +36,6 @@ from tg import config from tg import tmpl_context as c, app_globals as g from tg import request from ming import schema as S -from ming import Field from ming.odm import session, state from ming.odm import FieldProperty, RelationProperty, ForeignIdProperty from ming.odm.declarative import MappedClass @@ -52,7 +49,6 @@ from allura.lib import utils from allura.lib.decorators import memoize from allura.lib.search import SearchIndexable from .session import main_orm_session, main_explicitflush_orm_session -from .session import project_orm_session from .timeline import ActivityNode, ActivityObject diff --git a/Allura/allura/model/discuss.py b/Allura/allura/model/discuss.py index 2199ecdd4..6cb0b6ef3 100644 --- a/Allura/allura/model/discuss.py +++ b/Allura/allura/model/discuss.py @@ -20,12 +20,10 @@ import logging from datetime import datetime import typing -import jinja2 import markupsafe import pymongo from pymongo.errors import DuplicateKeyError from tg import tmpl_context as c, app_globals as g -import tg from ming import schema from ming.odm.base import session diff --git a/Allura/allura/model/index.py b/Allura/allura/model/index.py index c778db3b3..50b33999f 100644 --- a/Allura/allura/model/index.py +++ b/Allura/allura/model/index.py @@ -39,7 +39,6 @@ from allura.lib import helpers as h from .session import main_orm_session from .project import Project -import six if typing.TYPE_CHECKING: from ming.odm.mapper import Query diff --git a/Allura/allura/model/monq_model.py b/Allura/allura/model/monq_model.py index 4dbc532dc..2e2bc9466 100644 --- a/Allura/allura/model/monq_model.py +++ b/Allura/allura/model/monq_model.py @@ -23,7 +23,7 @@ from datetime import datetime, timedelta import typing import pymongo -from tg import tmpl_context as c, app_globals as g +from tg import tmpl_context as c from tg import config from paste.deploy.converters import asbool diff --git a/Allura/allura/model/neighborhood.py b/Allura/allura/model/neighborhood.py index 9487518a3..60b38ea31 100644 --- a/Allura/allura/model/neighborhood.py +++ b/Allura/allura/model/neighborhood.py @@ -27,7 +27,7 @@ from ming.odm.declarative import MappedClass from ming.utils import LazyProperty from tg import request -from tg import tmpl_context as c, app_globals as g +from tg import tmpl_context as c from allura.lib import plugin diff --git a/Allura/allura/model/notification.py b/Allura/allura/model/notification.py index 5b08cf1e8..a8b5a7625 100644 --- a/Allura/allura/model/notification.py +++ b/Allura/allura/model/notification.py @@ -35,7 +35,6 @@ Periodically: ''' import logging -from allura.lib.decorators import memoize from bson import ObjectId from datetime import datetime, timedelta from collections import defaultdict @@ -58,7 +57,6 @@ import allura.tasks.mail_tasks from .session import main_orm_session from .auth import User, AlluraUserProperty -import six if typing.TYPE_CHECKING: from ming.odm.mapper import Query diff --git a/Allura/allura/model/repo_refresh.py b/Allura/allura/model/repo_refresh.py index 91b724568..e5dbbbea2 100644 --- a/Allura/allura/model/repo_refresh.py +++ b/Allura/allura/model/repo_refresh.py @@ -22,9 +22,9 @@ import bson import tg import jinja2 from paste.deploy.converters import asint -from tg import tmpl_context as c, app_globals as g +from tg import app_globals as g -from ming.odm import mapper, session, ThreadLocalODMSession +from ming.odm import session from ming.odm.base import ObjectState, state from allura.lib import utils diff --git a/Allura/allura/model/repository.py b/Allura/allura/model/repository.py index 06128afab..b39ca28f1 100644 --- a/Allura/allura/model/repository.py +++ b/Allura/allura/model/repository.py @@ -48,7 +48,7 @@ from ming import schema as S from ming.odm import session from ming import Field, collection, Index from ming.utils import LazyProperty -from ming.odm import FieldProperty, session, Mapper, mapper, MappedClass, RelationProperty +from ming.odm import FieldProperty, session, Mapper, MappedClass, RelationProperty from ming.base import Object from allura.lib import helpers as h diff --git a/Allura/allura/model/session.py b/Allura/allura/model/session.py index 15558dabe..2752afa46 100644 --- a/Allura/allura/model/session.py +++ b/Allura/allura/model/session.py @@ -24,7 +24,6 @@ from ming.odm.base import ObjectState from ming.odm.base import state from ming.odm.odmsession import ThreadLocalODMSession, SessionExtension from contextlib import contextmanager -from tg import tmpl_context as c from allura.lib.utils import chunked_list from allura.tasks import index_tasks @@ -117,7 +116,6 @@ class ArtifactSessionExtension(ManagedSessionExtension): def after_flush(self, obj=None): "Update artifact references, and add/update this artifact to solr" if not getattr(self.session, 'disable_index', False): - from tg import app_globals as g from .index import ArtifactReference, Shortlink from .session import main_orm_session # Ensure artifact references & shortlinks exist for new objects diff --git a/Allura/allura/model/webhook.py b/Allura/allura/model/webhook.py index 34d39ac9c..1be2797e3 100644 --- a/Allura/allura/model/webhook.py +++ b/Allura/allura/model/webhook.py @@ -25,7 +25,6 @@ from tg import config from allura.model import Artifact from allura.lib import helpers as h -import six if typing.TYPE_CHECKING: from ming.odm.mapper import Query diff --git a/Allura/allura/scripts/reindex_projects.py b/Allura/allura/scripts/reindex_projects.py index 41b9d47c5..305b0571f 100644 --- a/Allura/allura/scripts/reindex_projects.py +++ b/Allura/allura/scripts/reindex_projects.py @@ -19,7 +19,7 @@ import argparse import logging from pymongo.errors import InvalidDocument -from tg import tmpl_context as c, app_globals as g +from tg import tmpl_context as c from allura.scripts import ScriptTask from allura import model as M diff --git a/Allura/allura/tasks/event_tasks.py b/Allura/allura/tasks/event_tasks.py index 3bed9a0b2..213ef09cf 100644 --- a/Allura/allura/tasks/event_tasks.py +++ b/Allura/allura/tasks/event_tasks.py @@ -19,7 +19,6 @@ import sys from allura.lib.decorators import task, event_handler from allura.lib.exceptions import CompoundError -import six @task diff --git a/Allura/allura/tasks/export_tasks.py b/Allura/allura/tasks/export_tasks.py index 13bb6f44a..0c83b734a 100644 --- a/Allura/allura/tasks/export_tasks.py +++ b/Allura/allura/tasks/export_tasks.py @@ -25,7 +25,6 @@ from tg import app_globals as g, tmpl_context as c from allura.tasks import mail_tasks from allura.lib.decorators import task -from allura.lib import helpers as h from allura.model.repository import zipdir diff --git a/Allura/allura/tasks/index_tasks.py b/Allura/allura/tasks/index_tasks.py index d907b3319..b1cab900a 100644 --- a/Allura/allura/tasks/index_tasks.py +++ b/Allura/allura/tasks/index_tasks.py @@ -30,7 +30,6 @@ from allura.lib import helpers as h from allura.lib.decorators import task from allura.lib.exceptions import CompoundError from allura.lib.solr import make_solr_from_config -import six if typing.TYPE_CHECKING: import pysolr diff --git a/Allura/allura/tasks/repo_tasks.py b/Allura/allura/tasks/repo_tasks.py index b0f24bf5f..e7855d655 100644 --- a/Allura/allura/tasks/repo_tasks.py +++ b/Allura/allura/tasks/repo_tasks.py @@ -24,7 +24,6 @@ from ming.odm import session from allura.lib.decorators import task from allura.lib.repository import RepositoryApp -from allura.lib.utils import skip_mod_date import git from git import SymbolicReference diff --git a/Allura/allura/tests/functional/test_auth.py b/Allura/allura/tests/functional/test_auth.py index d862c7a8e..a30f938b2 100644 --- a/Allura/allura/tests/functional/test_auth.py +++ b/Allura/allura/tests/functional/test_auth.py @@ -34,11 +34,11 @@ from mock import patch, Mock import mock import pytest import webtest -from tg import tmpl_context as c, app_globals as g +from tg import tmpl_context as c from allura.tests import TestController from allura.tests import decorators as td -from allura.tests.decorators import audits, out_audits, assert_logmsg +from allura.tests.decorators import audits, out_audits from alluratest.controller import setup_trove_categories, TestRestApiBase, oauth1_webtest from allura import model as M from allura.model.oauth import dummy_oauths diff --git a/Allura/allura/tests/functional/test_discuss.py b/Allura/allura/tests/functional/test_discuss.py index 0b88c576d..13935414b 100644 --- a/Allura/allura/tests/functional/test_discuss.py +++ b/Allura/allura/tests/functional/test_discuss.py @@ -17,8 +17,6 @@ import os from mock import patch -import pytest -from webtest.app import AppError from ming.odm import session from allura.tests import TestController diff --git a/Allura/allura/tests/functional/test_rest.py b/Allura/allura/tests/functional/test_rest.py index 21d260254..a5ceaeaae 100644 --- a/Allura/allura/tests/functional/test_rest.py +++ b/Allura/allura/tests/functional/test_rest.py @@ -19,7 +19,6 @@ import json from datetime import datetime, timedelta -import tg from bson import ObjectId from tg import app_globals as g import mock diff --git a/Allura/allura/tests/functional/test_root.py b/Allura/allura/tests/functional/test_root.py index 8dfbe0dd7..d11568388 100644 --- a/Allura/allura/tests/functional/test_root.py +++ b/Allura/allura/tests/functional/test_root.py @@ -27,7 +27,6 @@ Please read http://pythonpaste.org/webtest/ for more information. """ import os -import re from unittest import skipIf import pytest diff --git a/Allura/allura/tests/functional/test_site_admin.py b/Allura/allura/tests/functional/test_site_admin.py index 7a017f7af..78e775904 100644 --- a/Allura/allura/tests/functional/test_site_admin.py +++ b/Allura/allura/tests/functional/test_site_admin.py @@ -18,7 +18,6 @@ import json import datetime as dt import bson -import pytest from mock import patch, MagicMock from ming.odm import ThreadLocalODMSession diff --git a/Allura/allura/tests/model/test_auth.py b/Allura/allura/tests/model/test_auth.py index 4f6e708e4..3a6ece759 100644 --- a/Allura/allura/tests/model/test_auth.py +++ b/Allura/allura/tests/model/test_auth.py @@ -33,7 +33,7 @@ from allura import model as M from allura.lib import helpers as h from allura.lib import plugin from allura.tests import decorators as td -from alluratest.controller import setup_basic_test, setup_global_objects, setup_functional_test, setup_unit_test +from alluratest.controller import setup_basic_test, setup_global_objects, setup_functional_test class TestAuth: diff --git a/Allura/allura/tests/model/test_notification.py b/Allura/allura/tests/model/test_notification.py index ba502823e..42b14728c 100644 --- a/Allura/allura/tests/model/test_notification.py +++ b/Allura/allura/tests/model/test_notification.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from datetime import timedelta import collections diff --git a/Allura/allura/tests/model/test_repo.py b/Allura/allura/tests/model/test_repo.py index f1f57af8f..7434f4b1b 100644 --- a/Allura/allura/tests/model/test_repo.py +++ b/Allura/allura/tests/model/test_repo.py @@ -18,7 +18,6 @@ from datetime import datetime from collections import defaultdict, OrderedDict -import unittest import mock import pytest from tg import tmpl_context as c diff --git a/Allura/allura/tests/test_decorators.py b/Allura/allura/tests/test_decorators.py index 607833303..638f365d7 100644 --- a/Allura/allura/tests/test_decorators.py +++ b/Allura/allura/tests/test_decorators.py @@ -20,7 +20,7 @@ import random import gc from allura.lib.decorators import task, memoize -from alluratest.controller import setup_basic_test, setup_global_objects +from alluratest.controller import setup_basic_test class TestTask: diff --git a/Allura/allura/tests/test_diff.py b/Allura/allura/tests/test_diff.py index 153f37798..0d528af68 100644 --- a/Allura/allura/tests/test_diff.py +++ b/Allura/allura/tests/test_diff.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from allura.lib.diff import HtmlSideBySideDiff diff --git a/Allura/allura/tests/test_globals.py b/Allura/allura/tests/test_globals.py index e8f349a73..c88623c5d 100644 --- a/Allura/allura/tests/test_globals.py +++ b/Allura/allura/tests/test_globals.py @@ -22,9 +22,7 @@ from textwrap import dedent import pytest import allura -import unittest import hashlib -import six from mock import patch, Mock from bson import ObjectId @@ -37,7 +35,6 @@ from alluratest.controller import ( setup_basic_test, setup_global_objects, setup_unit_test, - setup_functional_test, setup_trove_categories, ) diff --git a/Allura/allura/tests/test_helpers.py b/Allura/allura/tests/test_helpers.py index 050de3239..817abde69 100644 --- a/Allura/allura/tests/test_helpers.py +++ b/Allura/allura/tests/test_helpers.py @@ -42,7 +42,6 @@ from allura.lib.security import has_access from allura.lib.security import Credentials from allura.tests import decorators as td from alluratest.controller import setup_basic_test -import six # httpbin.org should work, but lately has been unreliable # httpbin.io does not allow /redirect-to to localhost diff --git a/Allura/allura/tests/test_mail_util.py b/Allura/allura/tests/test_mail_util.py index f32b07387..c549e5a01 100644 --- a/Allura/allura/tests/test_mail_util.py +++ b/Allura/allura/tests/test_mail_util.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText diff --git a/Allura/allura/tests/test_markdown.py b/Allura/allura/tests/test_markdown.py index f86506e6c..3e56fe81e 100644 --- a/Allura/allura/tests/test_markdown.py +++ b/Allura/allura/tests/test_markdown.py @@ -102,7 +102,6 @@ class TestCommitMessageExtension: @mock.patch('allura.lib.markdown_extensions.TracRef2.get_comment_slug') @mock.patch('allura.lib.markdown_extensions.M.Shortlink.lookup') def test_convert(self, lookup, get_comment_slug): - from allura.lib.app_globals import ForgeMarkdown shortlink = mock.Mock(url='/p/project/tool/artifact/') shortlink.ref.artifact.deleted = False diff --git a/Allura/allura/tests/test_scripttask.py b/Allura/allura/tests/test_scripttask.py index edbfda5cf..48a4205f3 100644 --- a/Allura/allura/tests/test_scripttask.py +++ b/Allura/allura/tests/test_scripttask.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest import mock from allura.scripts.scripttask import ScriptTask diff --git a/Allura/allura/tests/test_security.py b/Allura/allura/tests/test_security.py index a1413583f..efa07b0f4 100644 --- a/Allura/allura/tests/test_security.py +++ b/Allura/allura/tests/test_security.py @@ -26,7 +26,7 @@ from allura.lib.security import Credentials, all_allowed, has_access from allura import model as M from forgewiki import model as WM from allura.lib.security import HIBPClientError, HIBPClient -from mock import Mock, patch +from mock import patch from requests.exceptions import Timeout diff --git a/Allura/allura/tests/test_tasks.py b/Allura/allura/tests/test_tasks.py index 81fb4123d..0d953f0c6 100644 --- a/Allura/allura/tests/test_tasks.py +++ b/Allura/allura/tests/test_tasks.py @@ -19,7 +19,6 @@ import email.iterators import operator import shutil from textwrap import dedent -import unittest import six from base64 import b64encode diff --git a/Allura/allura/tests/test_utils.py b/Allura/allura/tests/test_utils.py index 8878ea21a..64d02c59b 100644 --- a/Allura/allura/tests/test_utils.py +++ b/Allura/allura/tests/test_utils.py @@ -17,11 +17,9 @@ import json import time -import unittest import datetime as dt from os import path -import six import ming from ming.odm import session from bson import ObjectId diff --git a/Allura/allura/tests/test_webhooks.py b/Allura/allura/tests/test_webhooks.py index 76b78a076..d0bbd83e2 100644 --- a/Allura/allura/tests/test_webhooks.py +++ b/Allura/allura/tests/test_webhooks.py @@ -42,7 +42,6 @@ from alluratest.controller import ( TestController, TestRestApiBase, ) -import six # important to be distinct from 'test' and 'test2' which ForgeGit and diff --git a/Allura/allura/tests/unit/spam/test_spam_filter.py b/Allura/allura/tests/unit/spam/test_spam_filter.py index f2977fe8f..f9f758164 100644 --- a/Allura/allura/tests/unit/spam/test_spam_filter.py +++ b/Allura/allura/tests/unit/spam/test_spam_filter.py @@ -16,7 +16,6 @@ # under the License. import mock -import unittest from ming.odm import ThreadLocalODMSession diff --git a/Allura/allura/tests/unit/test_artifact.py b/Allura/allura/tests/unit/test_artifact.py index 470d21034..bac61bfd7 100644 --- a/Allura/allura/tests/unit/test_artifact.py +++ b/Allura/allura/tests/unit/test_artifact.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from allura import model as M diff --git a/Allura/allura/tests/unit/test_project.py b/Allura/allura/tests/unit/test_project.py index 125022e06..ef1c1d9c2 100644 --- a/Allura/allura/tests/unit/test_project.py +++ b/Allura/allura/tests/unit/test_project.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from mock import Mock from tg import config diff --git a/Allura/allura/tests/unit/test_repo.py b/Allura/allura/tests/unit/test_repo.py index e9983a580..6d177a2f0 100644 --- a/Allura/allura/tests/unit/test_repo.py +++ b/Allura/allura/tests/unit/test_repo.py @@ -16,10 +16,8 @@ # under the License. import datetime -import unittest import pytest -import six from mock import patch, Mock, MagicMock, call from tg import tmpl_context as c diff --git a/Allura/allura/tests/unit/test_sitemapentry.py b/Allura/allura/tests/unit/test_sitemapentry.py index 73d4bbd8c..f4ec40822 100644 --- a/Allura/allura/tests/unit/test_sitemapentry.py +++ b/Allura/allura/tests/unit/test_sitemapentry.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from mock import Mock from allura.app import SitemapEntry diff --git a/Allura/allura/tests/unit/test_solr.py b/Allura/allura/tests/unit/test_solr.py index 54c2144e7..42c4643ce 100644 --- a/Allura/allura/tests/unit/test_solr.py +++ b/Allura/allura/tests/unit/test_solr.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest import mock from markupsafe import Markup diff --git a/Allura/allura/webhooks.py b/Allura/allura/webhooks.py index 54f0354e7..68098f84d 100644 --- a/Allura/allura/webhooks.py +++ b/Allura/allura/webhooks.py @@ -42,7 +42,6 @@ from allura.lib import validators as v from allura.lib.decorators import require_post, task from allura.lib.utils import DateJSONEncoder from allura import model as M -import six log = logging.getLogger(__name__) diff --git a/Allura/allura/websetup/bootstrap.py b/Allura/allura/websetup/bootstrap.py index 6ac4b430c..c0e47e6db 100644 --- a/Allura/allura/websetup/bootstrap.py +++ b/Allura/allura/websetup/bootstrap.py @@ -17,9 +17,7 @@ """Setup the allura application""" import os -import sys import logging -import shutil from datetime import datetime from textwrap import dedent @@ -28,7 +26,6 @@ from tg import tmpl_context as c, app_globals as g from paste.deploy.converters import asbool import ew -from allura.lib.decorators import memoize from allura.model.oauth import dummy_oauths from ming import Session, mim from ming.odm import state, session @@ -43,7 +40,6 @@ from allura.command import CreateTroveCategoriesCommand from allura.websetup.schema import REGISTRY from forgewiki import model as WM -import six log = logging.getLogger(__name__) diff --git a/Allura/allura/websetup/schema.py b/Allura/allura/websetup/schema.py index 52bfd9763..424e2d0a7 100644 --- a/Allura/allura/websetup/schema.py +++ b/Allura/allura/websetup/schema.py @@ -35,7 +35,6 @@ REGISTRY = Registry() def setup_schema(command, conf, vars): """Place any commands to setup allura here""" - import ming import allura # turbogears has its own special magic wired up for its globals, can't use a regular Registry diff --git a/AlluraTest/alluratest/controller.py b/AlluraTest/alluratest/controller.py index 1c4cf32b6..b41d69dfe 100644 --- a/AlluraTest/alluratest/controller.py +++ b/AlluraTest/alluratest/controller.py @@ -25,14 +25,11 @@ import six.moves.urllib.error import json import mock -import beaker.session -from bs4 import BeautifulSoup from formencode import variabledecode from paste.deploy import loadapp from paste.deploy.converters import asbool from paste.script.appinstall import SetupCommand -from tg import tmpl_context as c, app_globals as g -from tg import url, request, response, session +from tg import tmpl_context as c import tg from tg.wsgiapp import RequestLocals from webob import Response, Request diff --git a/AlluraTest/alluratest/tools.py b/AlluraTest/alluratest/tools.py index 3f2c0eab8..3dcd5c4a2 100644 --- a/AlluraTest/alluratest/tools.py +++ b/AlluraTest/alluratest/tools.py @@ -15,9 +15,7 @@ # specific language governing permissions and limitations # under the License. import functools -import re -from decorator import decorator import unittest testcase = unittest.TestCase(methodName='__init__') # py2 needs a methodName that is a valid attr :/ diff --git a/AlluraTest/alluratest/validation.py b/AlluraTest/alluratest/validation.py index c8c246aff..434b1a140 100644 --- a/AlluraTest/alluratest/validation.py +++ b/AlluraTest/alluratest/validation.py @@ -18,19 +18,14 @@ """ Functions to syntax-validate output content """ -from os import path import os import sys import logging import tempfile import subprocess import json -import six.moves.urllib.parse -import six.moves.urllib.request -import six.moves.urllib.error import re import pkg_resources -import six import webtest from webtest import TestApp, TestResponse diff --git a/ForgeActivity/forgeactivity/main.py b/ForgeActivity/forgeactivity/main.py index de05a1944..2a911a3c8 100644 --- a/ForgeActivity/forgeactivity/main.py +++ b/ForgeActivity/forgeactivity/main.py @@ -26,7 +26,7 @@ from tg import tmpl_context as c, app_globals as g from tg import request, response from tg import expose, validate, config from tg.decorators import with_trailing_slash, without_trailing_slash -from paste.deploy.converters import asbool, asint +from paste.deploy.converters import asbool from webob import exc import feedgenerator as FG from activitystream.storage.mingstorage import Activity diff --git a/ForgeBlog/forgeblog/model/blog.py b/ForgeBlog/forgeblog/model/blog.py index c152b7862..5010d1482 100644 --- a/ForgeBlog/forgeblog/model/blog.py +++ b/ForgeBlog/forgeblog/model/blog.py @@ -35,7 +35,6 @@ from allura.model.timeline import ActivityObject from allura.model.types import MarkdownCache from allura.lib import helpers as h from allura.lib import utils -import six if typing.TYPE_CHECKING: from ming.odm.mapper import Query diff --git a/ForgeBlog/forgeblog/tests/test_commands.py b/ForgeBlog/forgeblog/tests/test_commands.py index b6d2f7c01..4a1d797ec 100644 --- a/ForgeBlog/forgeblog/tests/test_commands.py +++ b/ForgeBlog/forgeblog/tests/test_commands.py @@ -15,12 +15,9 @@ # specific language governing permissions and limitations # under the License. import html -from datetime import datetime, timedelta from io import BytesIO from unittest import skipIf import pkg_resources -import mock -import feedparser from mock import patch from ming.odm.odmsession import ThreadLocalODMSession diff --git a/ForgeDiscussion/forgediscussion/controllers/forum.py b/ForgeDiscussion/forgediscussion/controllers/forum.py index 8a2a15918..b7f3e0761 100644 --- a/ForgeDiscussion/forgediscussion/controllers/forum.py +++ b/ForgeDiscussion/forgediscussion/controllers/forum.py @@ -22,7 +22,6 @@ import pymongo from allura.lib.search import mapped_artifacts_from_index_ids from tg import expose, validate, redirect -from tg import request from tg import tmpl_context as c, app_globals as g from webob import exc from formencode import validators diff --git a/ForgeDiscussion/forgediscussion/controllers/root.py b/ForgeDiscussion/forgediscussion/controllers/root.py index da5b157ef..2c985d8f6 100644 --- a/ForgeDiscussion/forgediscussion/controllers/root.py +++ b/ForgeDiscussion/forgediscussion/controllers/root.py @@ -33,7 +33,7 @@ from formencode import validators from webob import exc import pymongo -from allura.lib.security import require_access, has_access, require_authenticated +from allura.lib.security import require_access, has_access from allura.lib.search import search_app from allura.lib import helpers as h from allura.lib import validators as v diff --git a/ForgeDiscussion/forgediscussion/forum_main.py b/ForgeDiscussion/forgediscussion/forum_main.py index a3bf469d1..f1d9448f8 100644 --- a/ForgeDiscussion/forgediscussion/forum_main.py +++ b/ForgeDiscussion/forgediscussion/forum_main.py @@ -20,7 +20,6 @@ import six.moves.urllib.request import six.moves.urllib.parse import six.moves.urllib.error import json -import os # Non-stdlib imports from tg import tmpl_context as c, app_globals as g diff --git a/ForgeDiscussion/forgediscussion/import_support.py b/ForgeDiscussion/forgediscussion/import_support.py index cd0d6a89e..80b484793 100644 --- a/ForgeDiscussion/forgediscussion/import_support.py +++ b/ForgeDiscussion/forgediscussion/import_support.py @@ -26,7 +26,6 @@ from tg import tmpl_context as c from allura import model as M from forgediscussion import model as DM -import six log = logging.getLogger(__name__) diff --git a/ForgeDiscussion/forgediscussion/model/forum.py b/ForgeDiscussion/forgediscussion/model/forum.py index 3e0be4ae7..45dfcd00c 100644 --- a/ForgeDiscussion/forgediscussion/model/forum.py +++ b/ForgeDiscussion/forgediscussion/model/forum.py @@ -15,9 +15,7 @@ # specific language governing permissions and limitations # under the License. -import re import logging -from itertools import chain import typing import pymongo diff --git a/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py b/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py index 6665fa784..4bbe6965b 100644 --- a/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py +++ b/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py @@ -25,7 +25,6 @@ from email.mime.multipart import MIMEMultipart import pkg_resources import pymongo -import webtest from ming.odm import ThreadLocalODMSession from tg import tmpl_context as c diff --git a/ForgeDiscussion/forgediscussion/widgets/forum_widgets.py b/ForgeDiscussion/forgediscussion/widgets/forum_widgets.py index 4c90af637..1909b6d89 100644 --- a/ForgeDiscussion/forgediscussion/widgets/forum_widgets.py +++ b/ForgeDiscussion/forgediscussion/widgets/forum_widgets.py @@ -25,10 +25,8 @@ from allura.lib import validators as V from allura.lib.widgets import discuss as DW from allura.lib.widgets import form_fields as ffw from allura.lib.widgets.forms import CsrfForm -from allura.lib.widgets.subscriptions import SubscribeForm from forgediscussion import model as M -import six class _ThreadsTable(DW._ThreadsTable): diff --git a/ForgeFeedback/forgefeedback/feedback_main.py b/ForgeFeedback/forgefeedback/feedback_main.py index 581fa61f7..07b937e27 100644 --- a/ForgeFeedback/forgefeedback/feedback_main.py +++ b/ForgeFeedback/forgefeedback/feedback_main.py @@ -20,7 +20,7 @@ import pymongo # Non-stdlib imports -from tg import expose, flash, url, config, request, redirect +from tg import expose, flash, redirect from tg.decorators import with_trailing_slash, without_trailing_slash from tg import tmpl_context as c, app_globals as g from ming.odm import session @@ -39,8 +39,7 @@ from allura.app import ( from allura.controllers import BaseController from allura.controllers.feed import FeedController from allura.lib.decorators import require_post -from allura.lib.security import (require_access, has_access) -from allura.model import project +from allura.lib.security import (require_access) # Local imports diff --git a/ForgeFeedback/forgefeedback/model/feedback.py b/ForgeFeedback/forgefeedback/model/feedback.py index bb01cdee4..fcffd65a7 100644 --- a/ForgeFeedback/forgefeedback/model/feedback.py +++ b/ForgeFeedback/forgefeedback/model/feedback.py @@ -16,9 +16,6 @@ # under the License. import logging -import six.moves.urllib.request -import six.moves.urllib.parse -import six.moves.urllib.error import typing from datetime import datetime @@ -32,9 +29,7 @@ from ming.odm import FieldProperty, ForeignIdProperty, RelationProperty from allura.model.artifact import VersionedArtifact from allura.model.auth import AlluraUserProperty, User -from allura.model.project import ProjectRole from allura.model.timeline import ActivityObject -from allura.lib import helpers as h if typing.TYPE_CHECKING: from ming.odm.mapper import Query diff --git a/ForgeFeedback/forgefeedback/tests/functional/test_root.py b/ForgeFeedback/forgefeedback/tests/functional/test_root.py index 69243f0d5..b751eb7a3 100644 --- a/ForgeFeedback/forgefeedback/tests/functional/test_root.py +++ b/ForgeFeedback/forgefeedback/tests/functional/test_root.py @@ -15,14 +15,10 @@ # specific language governing permissions and limitations # under the License. from tg import tmpl_context as c -from tg import config from allura import model as M from alluratest.controller import TestController -from allura.lib import helpers as h -from allura.tests import decorators as td -from forgefeedback import model as FM class TestFeedback(TestController): diff --git a/ForgeFiles/forgefiles/files_main.py b/ForgeFiles/forgefiles/files_main.py index 98517a6ed..7c91a6896 100755 --- a/ForgeFiles/forgefiles/files_main.py +++ b/ForgeFiles/forgefiles/files_main.py @@ -23,7 +23,7 @@ from urllib.parse import unquote from tg import config, redirect, expose, flash from tg.decorators import with_trailing_slash, without_trailing_slash from tg import tmpl_context as c, app_globals as g -from tg import request, response +from tg import request from jinja2.exceptions import TemplateNotFound from allura.app import Application diff --git a/ForgeGit/forgegit/controllers.py b/ForgeGit/forgegit/controllers.py index 2062d0c24..ee64b0b60 100644 --- a/ForgeGit/forgegit/controllers.py +++ b/ForgeGit/forgegit/controllers.py @@ -17,7 +17,7 @@ from allura.lib.utils import permanent_redirect -from tg import expose, redirect +from tg import expose from tg.decorators import with_trailing_slash from tg import tmpl_context as c diff --git a/ForgeGit/forgegit/tests/model/test_repository.py b/ForgeGit/forgegit/tests/model/test_repository.py index 7d0e97130..adcbf756f 100644 --- a/ForgeGit/forgegit/tests/model/test_repository.py +++ b/ForgeGit/forgegit/tests/model/test_repository.py @@ -19,7 +19,6 @@ import os import shutil import stat -import unittest import pkg_resources import datetime import email.iterators diff --git a/ForgeGit/forgegit/tests/test_git_app.py b/ForgeGit/forgegit/tests/test_git_app.py index ee4df227f..d158b30f5 100644 --- a/ForgeGit/forgegit/tests/test_git_app.py +++ b/ForgeGit/forgegit/tests/test_git_app.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from tg import tmpl_context as c from ming.odm import ThreadLocalODMSession diff --git a/ForgeGit/forgegit/tests/test_tasks.py b/ForgeGit/forgegit/tests/test_tasks.py index 48ea4828e..48ab369bd 100644 --- a/ForgeGit/forgegit/tests/test_tasks.py +++ b/ForgeGit/forgegit/tests/test_tasks.py @@ -14,7 +14,6 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. -import unittest import mock from testfixtures import LogCapture diff --git a/ForgeImporters/forgeimporters/github/tracker.py b/ForgeImporters/forgeimporters/github/tracker.py index 26f66551d..a9f27d205 100644 --- a/ForgeImporters/forgeimporters/github/tracker.py +++ b/ForgeImporters/forgeimporters/github/tracker.py @@ -19,7 +19,6 @@ import re import logging from datetime import datetime from urllib.error import HTTPError -import six from io import BytesIO from tg import ( diff --git a/ForgeImporters/forgeimporters/github/wiki.py b/ForgeImporters/forgeimporters/github/wiki.py index a0fc47770..a36e0e858 100644 --- a/ForgeImporters/forgeimporters/github/wiki.py +++ b/ForgeImporters/forgeimporters/github/wiki.py @@ -21,7 +21,6 @@ from datetime import datetime from tempfile import mkdtemp from shutil import rmtree -import six from bs4 import BeautifulSoup import git diff --git a/ForgeImporters/forgeimporters/trac/tests/test_tickets.py b/ForgeImporters/forgeimporters/trac/tests/test_tickets.py index daff4e392..9cdadba1c 100644 --- a/ForgeImporters/forgeimporters/trac/tests/test_tickets.py +++ b/ForgeImporters/forgeimporters/trac/tests/test_tickets.py @@ -26,7 +26,7 @@ from ming.odm import ThreadLocalODMSession from tg import tmpl_context as c, config from allura.tests import TestController -from allura.tests.decorators import with_tracker, with_wiki +from allura.tests.decorators import with_tracker from alluratest.controller import TestRestApiBase, setup_unit_test from alluratest.tools import module_not_available diff --git a/ForgeSVN/forgesvn/controllers.py b/ForgeSVN/forgesvn/controllers.py index ac07d05a5..030e2f0e2 100644 --- a/ForgeSVN/forgesvn/controllers.py +++ b/ForgeSVN/forgesvn/controllers.py @@ -17,7 +17,7 @@ from allura.lib.utils import permanent_redirect -from tg import expose, redirect +from tg import expose from tg.decorators import with_trailing_slash from tg import tmpl_context as c diff --git a/ForgeSVN/forgesvn/model/svn.py b/ForgeSVN/forgesvn/model/svn.py index 6d210f128..278f4bf4b 100644 --- a/ForgeSVN/forgesvn/model/svn.py +++ b/ForgeSVN/forgesvn/model/svn.py @@ -36,7 +36,7 @@ import tg import pysvn from paste.deploy.converters import asbool, asint from pymongo.errors import DuplicateKeyError -from tg import tmpl_context as c, app_globals as g +from tg import app_globals as g from ming.base import Object from ming.odm import Mapper, FieldProperty @@ -44,7 +44,6 @@ from ming.utils import LazyProperty from allura import model as M from allura.lib import helpers as h -from allura.model.auth import User from allura.model.repository import zipdir from allura.model import repository as RM diff --git a/ForgeSVN/forgesvn/svn_main.py b/ForgeSVN/forgesvn/svn_main.py index f2bf240b0..cf712eedd 100644 --- a/ForgeSVN/forgesvn/svn_main.py +++ b/ForgeSVN/forgesvn/svn_main.py @@ -26,7 +26,6 @@ from ming.odm.odmsession import ThreadLocalODMSession from tg import expose, redirect, validate, flash from tg.decorators import with_trailing_slash, without_trailing_slash from timermiddleware import Timer -from paste.deploy.converters import asint # Pyforge-specific imports import allura.tasks.repo_tasks diff --git a/ForgeSVN/forgesvn/tests/model/test_repository.py b/ForgeSVN/forgesvn/tests/model/test_repository.py index 6d3338f3c..f1e95c18e 100644 --- a/ForgeSVN/forgesvn/tests/model/test_repository.py +++ b/ForgeSVN/forgesvn/tests/model/test_repository.py @@ -17,7 +17,6 @@ import os import shutil -import unittest from unittest import skipUnless import pkg_resources diff --git a/ForgeSVN/forgesvn/tests/test_svn_app.py b/ForgeSVN/forgesvn/tests/test_svn_app.py index 1811445d7..ad910ceab 100644 --- a/ForgeSVN/forgesvn/tests/test_svn_app.py +++ b/ForgeSVN/forgesvn/tests/test_svn_app.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from tg import tmpl_context as c from ming.odm import ThreadLocalODMSession diff --git a/ForgeSVN/forgesvn/tests/test_tasks.py b/ForgeSVN/forgesvn/tests/test_tasks.py index a948a4f82..8df3e80d1 100644 --- a/ForgeSVN/forgesvn/tests/test_tasks.py +++ b/ForgeSVN/forgesvn/tests/test_tasks.py @@ -16,7 +16,6 @@ # under the License. import shutil -import unittest import os import tg diff --git a/ForgeShortUrl/forgeshorturl/model/shorturl.py b/ForgeShortUrl/forgeshorturl/model/shorturl.py index 605eb690b..8da0aef9b 100644 --- a/ForgeShortUrl/forgeshorturl/model/shorturl.py +++ b/ForgeShortUrl/forgeshorturl/model/shorturl.py @@ -19,7 +19,7 @@ import typing import pymongo from tg import config from tg import tmpl_context as c -from ming.odm import FieldProperty, ForeignIdProperty, session +from ming.odm import FieldProperty, session from datetime import datetime from allura.model.auth import User from allura import model as M diff --git a/ForgeTracker/forgetracker/import_support.py b/ForgeTracker/forgetracker/import_support.py index 13acf1c0b..abfe426bd 100644 --- a/ForgeTracker/forgetracker/import_support.py +++ b/ForgeTracker/forgetracker/import_support.py @@ -31,7 +31,6 @@ from allura.lib.plugin import ImportIdConverter # Local imports from forgetracker import model as TM -import six try: from forgeimporters.base import ProjectExtractor diff --git a/ForgeTracker/forgetracker/model/ticket.py b/ForgeTracker/forgetracker/model/ticket.py index 9ca5a77bf..05a0fbd74 100644 --- a/ForgeTracker/forgetracker/model/ticket.py +++ b/ForgeTracker/forgetracker/model/ticket.py @@ -32,7 +32,6 @@ import pymongo from pymongo.errors import OperationFailure from tg import tmpl_context as c, app_globals as g from paste.deploy.converters import aslist, asbool -import jinja2 import markupsafe from ming import schema diff --git a/ForgeTracker/forgetracker/plugins.py b/ForgeTracker/forgetracker/plugins.py index 676deb255..71f6832de 100644 --- a/ForgeTracker/forgetracker/plugins.py +++ b/ForgeTracker/forgetracker/plugins.py @@ -17,7 +17,5 @@ import logging -from tg import config -from tg import app_globals as g log = logging.getLogger(__name__) diff --git a/ForgeTracker/forgetracker/search.py b/ForgeTracker/forgetracker/search.py index 10cd3c083..d215cc631 100644 --- a/ForgeTracker/forgetracker/search.py +++ b/ForgeTracker/forgetracker/search.py @@ -17,7 +17,6 @@ from tg import tmpl_context as c from allura.lib.search import search -import six FACET_PARAMS = { diff --git a/ForgeTracker/forgetracker/tests/functional/test_root.py b/ForgeTracker/forgetracker/tests/functional/test_root.py index 2e1ffb229..a392db564 100644 --- a/ForgeTracker/forgetracker/tests/functional/test_root.py +++ b/ForgeTracker/forgetracker/tests/functional/test_root.py @@ -15,9 +15,6 @@ # specific language governing permissions and limitations # under the License. from datetime import datetime -import six.moves.urllib.request -import six.moves.urllib.parse -import six.moves.urllib.error import os import time import json @@ -48,7 +45,6 @@ from allura.lib.utils import urlencode from allura.tests import decorators as td from allura.tasks import mail_tasks from ming.odm.odmsession import ThreadLocalODMSession -import six def find(d, pred): diff --git a/ForgeTracker/forgetracker/tests/unit/test_root_controller.py b/ForgeTracker/forgetracker/tests/unit/test_root_controller.py index 9f1a6950a..aa8312c39 100644 --- a/ForgeTracker/forgetracker/tests/unit/test_root_controller.py +++ b/ForgeTracker/forgetracker/tests/unit/test_root_controller.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import unittest from mock import Mock, patch from ming.odm.odmsession import session diff --git a/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py b/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py index d62b6bf19..f580797fb 100644 --- a/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py +++ b/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py @@ -17,7 +17,6 @@ from tg import tmpl_context as c from datetime import datetime -from io import BytesIO import os import six.moves.urllib.parse import six.moves.urllib.request diff --git a/ForgeTracker/forgetracker/widgets/ticket_form.py b/ForgeTracker/forgetracker/widgets/ticket_form.py index aa45ee83d..fc19fb94e 100644 --- a/ForgeTracker/forgetracker/widgets/ticket_form.py +++ b/ForgeTracker/forgetracker/widgets/ticket_form.py @@ -26,7 +26,6 @@ from allura import model as M from allura.lib.widgets import form_fields as ffw from allura.lib import helpers as h from allura.lib import validators as v -import six class TicketCustomFields(ew.CompoundField): diff --git a/ForgeTracker/forgetracker/widgets/ticket_search.py b/ForgeTracker/forgetracker/widgets/ticket_search.py index 8139becf6..effa98f3b 100644 --- a/ForgeTracker/forgetracker/widgets/ticket_search.py +++ b/ForgeTracker/forgetracker/widgets/ticket_search.py @@ -20,7 +20,6 @@ import ew.jinja2_ew as ew from allura.lib.widgets import form_fields as ffw from allura.lib.widgets import forms -import six diff --git a/ForgeUserStats/forgeuserstats/controllers/userstats.py b/ForgeUserStats/forgeuserstats/controllers/userstats.py index 7df06f51f..02e10c663 100644 --- a/ForgeUserStats/forgeuserstats/controllers/userstats.py +++ b/ForgeUserStats/forgeuserstats/controllers/userstats.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. from datetime import datetime -import re from tg import expose, validate, redirect from tg.decorators import with_trailing_slash diff --git a/ForgeUserStats/forgeuserstats/tests/test_model.py b/ForgeUserStats/forgeuserstats/tests/test_model.py index 74703fa86..9842cc642 100644 --- a/ForgeUserStats/forgeuserstats/tests/test_model.py +++ b/ForgeUserStats/forgeuserstats/tests/test_model.py @@ -16,7 +16,6 @@ # under the License. import pkg_resources -import unittest from datetime import datetime, timedelta from tg import tmpl_context as c diff --git a/ForgeUserStats/forgeuserstats/tests/test_stats.py b/ForgeUserStats/forgeuserstats/tests/test_stats.py index 9e4bb43ed..b44e900d7 100644 --- a/ForgeUserStats/forgeuserstats/tests/test_stats.py +++ b/ForgeUserStats/forgeuserstats/tests/test_stats.py @@ -16,7 +16,6 @@ # under the License. import pkg_resources -import unittest from tg import tmpl_context as c diff --git a/ForgeWiki/forgewiki/converters.py b/ForgeWiki/forgewiki/converters.py index 0a3575649..5a194e4f8 100644 --- a/ForgeWiki/forgewiki/converters.py +++ b/ForgeWiki/forgewiki/converters.py @@ -17,7 +17,6 @@ import re from bs4 import BeautifulSoup -import six _inline_img = re.compile(r'\[\[(File|Image):([^\]|]+)[^]]*\]\]', re.UNICODE) _inline_img_markdown = r'[[img src=\2]]' diff --git a/ForgeWiki/forgewiki/model/wiki.py b/ForgeWiki/forgewiki/model/wiki.py index 4b10c2a76..5b6d0e682 100644 --- a/ForgeWiki/forgewiki/model/wiki.py +++ b/ForgeWiki/forgewiki/model/wiki.py @@ -35,7 +35,6 @@ from allura.model import ( Snapshot, Feed, Thread, - Post, User, BaseAttachment, Notification, diff --git a/run_tests b/run_tests index e83aec083..3310ca91e 100755 --- a/run_tests +++ b/run_tests @@ -18,7 +18,6 @@ # under the License. import argparse -from collections import defaultdict from glob import glob import json import multiprocessing diff --git a/scripts/migrations/032-subscribe-merge-request-submitters.py b/scripts/migrations/032-subscribe-merge-request-submitters.py index f04c20574..cc630f921 100644 --- a/scripts/migrations/032-subscribe-merge-request-submitters.py +++ b/scripts/migrations/032-subscribe-merge-request-submitters.py @@ -17,7 +17,7 @@ import logging -from ming.odm import ThreadLocalODMSession, state +from ming.odm import ThreadLocalODMSession from allura.lib import utils from allura import model as M diff --git a/scripts/migrations/033-change-comment-anon-permissions.py b/scripts/migrations/033-change-comment-anon-permissions.py index 2cfb824d9..26f5790dc 100644 --- a/scripts/migrations/033-change-comment-anon-permissions.py +++ b/scripts/migrations/033-change-comment-anon-permissions.py @@ -15,14 +15,13 @@ # specific language governing permissions and limitations # under the License. -import sys import logging -from ming.odm import ThreadLocalODMSession, session +from ming.odm import session from tg import tmpl_context as c from allura import model as M from forgediscussion.model import ForumPost from allura.lib import utils, security -from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, ArgumentTypeError +from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter log = logging.getLogger(__name__) diff --git a/scripts/migrations/034-update_subscriptions_ticket_and_mr_titles.py b/scripts/migrations/034-update_subscriptions_ticket_and_mr_titles.py index 3eb4c488a..7e3dc1c3e 100644 --- a/scripts/migrations/034-update_subscriptions_ticket_and_mr_titles.py +++ b/scripts/migrations/034-update_subscriptions_ticket_and_mr_titles.py @@ -22,7 +22,6 @@ from tg import tmpl_context as c from bson import ObjectId from ming.odm import session -from ming.odm import ThreadLocalODMSession from allura import model as M from forgetracker import model as TM diff --git a/scripts/perf/generate-projects.py b/scripts/perf/generate-projects.py index 503ed255c..1122fa762 100644 --- a/scripts/perf/generate-projects.py +++ b/scripts/perf/generate-projects.py @@ -15,7 +15,6 @@ # specific language governing permissions and limitations # under the License. -import re from ming.odm import ThreadLocalODMSession from allura import model as M diff --git a/scripts/perf/load-up-forum.py b/scripts/perf/load-up-forum.py index 3e6773f15..91338dec1 100644 --- a/scripts/perf/load-up-forum.py +++ b/scripts/perf/load-up-forum.py @@ -17,12 +17,11 @@ import logging -import uuid -from ming.odm import ThreadLocalODMSession, session +from ming.odm import session from tg import tmpl_context as c from allura import model as M -from forgediscussion.model import ForumPost, Forum -from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, ArgumentTypeError +from forgediscussion.model import Forum +from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter from allura.lib import helpers as h from random import randint diff --git a/scripts/trac_import.py b/scripts/trac_import.py index dc61bf04b..a066d0004 100644 --- a/scripts/trac_import.py +++ b/scripts/trac_import.py @@ -20,7 +20,6 @@ from optparse import OptionParser from allura.lib.import_api import AlluraImportApiClient from tracwikiimporter.scripts.wiki_from_trac.loaders import import_wiki -import six def main():
