Skip to content

Commit

Permalink
Fix tox lint run + isort imports.
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Howitz committed Aug 5, 2022
1 parent 53fa0fb commit dea3d47
Show file tree
Hide file tree
Showing 48 changed files with 283 additions and 171 deletions.
3 changes: 2 additions & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,13 @@ jobs:
- ["3.8", "py38"]
- ["3.9", "py39"]
- ["3.10", "py310"]
- ["pypy2", "pypy"]
- ["pypy-2.7", "pypy"]
- ["pypy-3.7", "pypy3"]
- ["3.9", "docs"]
- ["3.9", "coverage"]

runs-on: ${{ matrix.os }}-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
name: ${{ matrix.config[1] }}
steps:
- uses: actions/checkout@v2
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,5 @@ lib64
log/
parts/
pyvenv.cfg
testing.log
var/
2 changes: 1 addition & 1 deletion .meta.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# https://github.com/zopefoundation/meta/tree/master/config/pure-python
[meta]
template = "pure-python"
commit-id = "15807bd13de45b79c7da560a377fe3f22cbc4338"
commit-id = "ae61f414cfef4e129d275679c6a76dc67b1a2c11"

[python]
with-pypy = true
Expand Down
11 changes: 11 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,14 @@ ignore =
.editorconfig
.meta.toml
docs/_build/html/_sources/*

[isort]
force_single_line = True
combine_as_imports = True
sections = FUTURE,STDLIB,THIRDPARTY,ZOPE,FIRSTPARTY,LOCALFOLDER
known_third_party = six, docutils, pkg_resources
known_zope =
known_first_party =
default_section = ZOPE
line_length = 79
lines_after_imports = 2
4 changes: 3 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@
# Zope Toolkit policies as described by this documentation.
##############################################################################
import os
from setuptools import setup, find_packages

from setuptools import find_packages
from setuptools import setup


def read(*rnames):
Expand Down
5 changes: 4 additions & 1 deletion src/zope/publisher/_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,17 @@
The intention is to let xmlrpclib names to be importable from zcml.
"""
import sys


PYTHON2 = sys.version_info[0] == 2
PYTHON3 = sys.version_info[0] == 3

if PYTHON2:
def to_unicode(s):
return unicode(s, 'unicode_escape') # noqa: F405 may be undefined
from xmlrpclib import * # noqa: F403 unable to detect undefined names
import types

from xmlrpclib import * # noqa: F403 unable to detect undefined names
CLASS_TYPES = (type, types.ClassType)
else:
def to_unicode(s):
Expand Down
21 changes: 14 additions & 7 deletions src/zope/publisher/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,26 @@
Specifically, 'BaseRequest', 'BaseResponse', and 'DefaultPublication' are
specified here.
"""
from io import BytesIO, StringIO
from io import BytesIO
from io import StringIO

from zope.interface import implementer
from zope.interface.common.mapping import IReadMapping, IEnumerableMapping
from zope.exceptions.exceptionformatter import print_exception
from zope.interface import implementer
from zope.interface.common.mapping import IEnumerableMapping
from zope.interface.common.mapping import IReadMapping
from zope.security.proxy import removeSecurityProxy

from zope.publisher.interfaces import IPublication, IHeld
from zope.publisher.interfaces import NotFound, DebugError, Unauthorized
from zope.publisher.interfaces import IRequest, IResponse, IDebugFlags
from zope.publisher._compat import PYTHON2
from zope.publisher.interfaces import DebugError
from zope.publisher.interfaces import IDebugFlags
from zope.publisher.interfaces import IHeld
from zope.publisher.interfaces import IPublication
from zope.publisher.interfaces import IRequest
from zope.publisher.interfaces import IResponse
from zope.publisher.interfaces import NotFound
from zope.publisher.interfaces import Unauthorized
from zope.publisher.publish import mapply

from zope.publisher._compat import PYTHON2

_marker = object()

Expand Down
37 changes: 19 additions & 18 deletions src/zope/publisher/browser.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,40 +18,41 @@
HTML form data and convert them into a Python-native format. Even file data is
packaged into a nice, Python-friendly 'FileUpload' object.
"""
from email.message import Message
import re
from email.message import Message

import multipart
import six
from six.moves.urllib.parse import parse_qsl

import multipart
import zope.component
import zope.interface
from zope.interface import implementer, directlyProvides
from zope.i18n.interfaces import IUserPreferredLanguages
from zope.i18n.interfaces import IUserPreferredCharsets
from zope.i18n.interfaces import IModifiableUserPreferredLanguages
from zope.i18n.interfaces import IUserPreferredCharsets
from zope.i18n.interfaces import IUserPreferredLanguages
from zope.interface import directlyProvides
from zope.interface import implementer
from zope.location import Location

from zope.publisher.interfaces import IHeld, NotFound
from zope.publisher.interfaces.browser import IBrowserRequest
from zope.publisher.interfaces.browser import IDefaultBrowserLayer
from zope.publisher.interfaces.browser import IBrowserApplicationRequest
from zope.publisher.interfaces.browser import IBrowserView
from zope.publisher.interfaces.browser import IBrowserPage
from zope.publisher.interfaces.http import IHTTPRequest
from zope.publisher._compat import PYTHON2
from zope.publisher.http import HTTPRequest
from zope.publisher.http import HTTPResponse
from zope.publisher.http import getCharsetUsingRequest

# BBB imports, these components got moved from this module
from zope.publisher.interfaces import ISkinType # noqa: F401 import unused
from zope.publisher.interfaces import IHeld
from zope.publisher.interfaces import ISkinChangedEvent # noqa: F401
from zope.publisher.interfaces import ISkinType # noqa: F401 import unused
from zope.publisher.interfaces import NotFound
from zope.publisher.interfaces.browser import IBrowserApplicationRequest
from zope.publisher.interfaces.browser import IBrowserPage
from zope.publisher.interfaces.browser import IBrowserRequest
from zope.publisher.interfaces.browser import IBrowserView
from zope.publisher.interfaces.browser import IDefaultBrowserLayer
from zope.publisher.interfaces.http import IHTTPRequest
from zope.publisher.skinnable import SkinChangedEvent # noqa: F401
from zope.publisher.skinnable import applySkin # noqa: F401
from zope.publisher.skinnable import getDefaultSkin # noqa: F401
from zope.publisher.skinnable import setDefaultSkin # noqa: F401
from zope.publisher.skinnable import applySkin # noqa: F401
from zope.publisher.skinnable import SkinChangedEvent # noqa: F401

from zope.publisher._compat import PYTHON2


__ArrayTypes = (list, tuple)
Expand Down
2 changes: 1 addition & 1 deletion src/zope/publisher/contenttype.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,6 @@
"""
# BBB
from zope.contenttype.parse import join # noqa: F401 import unused
from zope.contenttype.parse import parse # noqa: F401 import unused
from zope.contenttype.parse import parseOrdered # noqa: F401 import unused
from zope.contenttype.parse import join # noqa: F401 import unused
4 changes: 2 additions & 2 deletions src/zope/publisher/defaultview.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@
##############################################################################
"""Default view name API
"""
from zope.interface.interfaces import ComponentLookupError
import zope.interface
from zope.component import getSiteManager
from zope.interface.interfaces import ComponentLookupError

import zope.interface
from zope.publisher.interfaces import IDefaultViewName


Expand Down
8 changes: 6 additions & 2 deletions src/zope/publisher/ftp.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,13 @@
"""FTP Publisher
"""
import six

from zope.interface import implementer
from zope.publisher.interfaces.ftp import IFTPCredentials, IFTPRequest
from zope.publisher.base import BaseResponse, BaseRequest

from zope.publisher.base import BaseRequest
from zope.publisher.base import BaseResponse
from zope.publisher.interfaces.ftp import IFTPCredentials
from zope.publisher.interfaces.ftp import IFTPRequest


class FTPResponse(BaseResponse):
Expand Down
37 changes: 23 additions & 14 deletions src/zope/publisher/http.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,29 @@
##############################################################################
"""HTTP Publisher
"""
import re
import base64
import logging
import re
import tempfile
from io import BytesIO

import zope.component
import zope.contenttype.parse
import zope.event
import zope.interface
from zope.i18n.interfaces import IUserPreferredCharsets
from zope.i18n.interfaces import IUserPreferredLanguages
from zope.i18n.locales import locales, LoadLocaleError
from zope.publisher.base import BaseRequest, BaseResponse
from zope.i18n.locales import LoadLocaleError
from zope.i18n.locales import locales

from zope.publisher._compat import CLASS_TYPES
from zope.publisher._compat import PYTHON2
from zope.publisher._compat import to_unicode
from zope.publisher.base import BaseRequest
from zope.publisher.base import BaseResponse
from zope.publisher.base import RequestDataGetter
from zope.publisher.base import RequestDataProperty, RequestDataMapper
from zope.publisher.base import RequestDataMapper
from zope.publisher.base import RequestDataProperty
from zope.publisher.interfaces import ISkinnable
from zope.publisher.interfaces import Redirect
from zope.publisher.interfaces.http import IHTTPApplicationRequest
Expand All @@ -33,24 +47,19 @@
from zope.publisher.interfaces.http import IResult
from zope.publisher.interfaces.logginginfo import ILoggingInfo
from zope.publisher.skinnable import setDefaultSkin
import logging
import tempfile
import zope.component
import zope.contenttype.parse
import zope.event
import zope.interface

from zope.publisher._compat import PYTHON2, CLASS_TYPES, to_unicode

if PYTHON2:
import Cookie as cookies
from cgi import escape
from urllib import quote

import Cookie as cookies
from urlparse import urlsplit
from cgi import escape
else:
import http.cookies as cookies
from urllib.parse import quote, urlsplit
from html import escape
from urllib.parse import quote
from urllib.parse import urlsplit
unicode = str
basestring = (str, bytes)

Expand Down
10 changes: 5 additions & 5 deletions src/zope/publisher/interfaces/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,16 @@
"""Interfaces for the publisher.
"""
# BBB
from zope.browser.interfaces import IView # noqa: F401 import unused
from zope.interface import Interface
from zope.browser.interfaces import IView # noqa: F401 import unused
from zope.interface import Attribute
from zope.interface import Interface
from zope.interface import implementer
from zope.interface.interfaces import IInterface
from zope.interface.common.mapping import IEnumerableMapping
from zope.interface.common.interfaces import IException
from zope.interface.common.interfaces import ILookupError
from zope.security.interfaces import IParticipation
from zope.interface.common.mapping import IEnumerableMapping
from zope.interface.interfaces import IInterface
# BBB:
from zope.security.interfaces import IParticipation
from zope.security.interfaces import Unauthorized # noqa: F401 import unused


Expand Down
13 changes: 6 additions & 7 deletions src/zope/publisher/interfaces/browser.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,21 @@
##############################################################################
"""Browser Interfaces
"""
from zope.browser.interfaces import IBrowserView # BBB import
from zope.interface import Attribute
from zope.interface import alsoProvides
from zope.browser.interfaces import IBrowserView # BBB import

# BBB moved to zope.publisher.interfaces since not only browser request
# can use the skin pattern
from zope.publisher.interfaces import IDefaultSkin # noqa: F401 import unused
from zope.publisher.interfaces import IPublication
from zope.publisher.interfaces import IPublishTraverse
from zope.publisher.interfaces import ISkinType
from zope.publisher.interfaces import ISkinChangedEvent # noqa: F401
from zope.publisher.interfaces import ISkinnable
from zope.publisher.interfaces import ISkinType
from zope.publisher.interfaces.http import IHTTPApplicationRequest
from zope.publisher.interfaces.http import IHTTPRequest

# BBB moved to zope.publisher.interfaces since not only browser request
# can use the skin pattern
from zope.publisher.interfaces import IDefaultSkin # noqa: F401 import unused
from zope.publisher.interfaces import ISkinChangedEvent # noqa: F401


class IBrowserApplicationRequest(IHTTPApplicationRequest):
"""Browser-specific requests
Expand Down
2 changes: 1 addition & 1 deletion src/zope/publisher/interfaces/http.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
##############################################################################
"""HTTP-related publisher interfaces.
"""
from zope.interface import Interface
from zope.interface import Attribute
from zope.interface import Interface
from zope.interface import implementer
from zope.interface.common.interfaces import IException

Expand Down
3 changes: 2 additions & 1 deletion src/zope/publisher/interfaces/xmlrpc.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@

from zope.interface import Interface

from zope.publisher.interfaces import IPublication, IView
from zope.publisher.interfaces import IPublication
from zope.publisher.interfaces import IPublishTraverse
from zope.publisher.interfaces import IView
from zope.publisher.interfaces.http import IHTTPRequest


Expand Down
2 changes: 2 additions & 0 deletions src/zope/publisher/paste.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,12 @@
##############################################################################

import pkg_resources

import zope.publisher.browser
import zope.publisher.http
import zope.publisher.publish


browser_methods = set(('GET', 'HEAD', 'POST'))


Expand Down
3 changes: 2 additions & 1 deletion src/zope/publisher/principallogging.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,10 @@
"""
from zope.component import adapter
from zope.interface import implementer
from zope.publisher.interfaces.logginginfo import ILoggingInfo
from zope.security.interfaces import IPrincipal

from zope.publisher.interfaces.logginginfo import ILoggingInfo


@adapter(IPrincipal)
@implementer(ILoggingInfo)
Expand Down
8 changes: 6 additions & 2 deletions src/zope/publisher/publish.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,15 @@
import sys

import six
from zope import component

from zope.interface import implementer
from zope.publisher.interfaces import Retry, IReRaiseException
from zope.proxy import removeAllProxies

from zope import component
from zope.publisher.interfaces import IReRaiseException
from zope.publisher.interfaces import Retry


_marker = object() # Create a new marker object.


Expand Down
Loading

0 comments on commit dea3d47

Please sign in to comment.