← Back to team overview

ubuntu-support-team team mailing list archive

[Merge] ~ubuntu-support-team/ubuntu-dev-tools/+git/ubuntu-dev-tools:logging into ubuntu-dev-tools:master

 

Dan Streetman has proposed merging ~ubuntu-support-team/ubuntu-dev-tools/+git/ubuntu-dev-tools:logging into ubuntu-dev-tools:master with ~ddstreet/ubuntu-dev-tools:uca as a prerequisite.

Requested reviews:
  Ubuntu Development Team (ubuntu-dev)

For more details, see:
https://code.launchpad.net/~ubuntu-support-team/ubuntu-dev-tools/+git/ubuntu-dev-tools/+merge/396863
-- 
Your team Ubuntu Support Team is subscribed to branch ~ubuntu-support-team/ubuntu-dev-tools/+git/ubuntu-dev-tools:logging.
diff --git a/backportpackage b/backportpackage
index 8fe2788..05407a9 100755
--- a/backportpackage
+++ b/backportpackage
@@ -19,6 +19,7 @@
 # ##################################################################
 
 import glob
+import logging
 import optparse
 import os
 import shutil
@@ -30,6 +31,7 @@ from urllib.parse import quote
 import lsb_release
 from httplib2 import Http, HttpLib2Error
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.archive import (SourcePackage, DebianSourcePackage,
                                  UbuntuSourcePackage, DownloadError)
 from ubuntutools.config import UDTConfig, ubu_email
@@ -41,8 +43,8 @@ from ubuntutools.misc import (system_distribution, vendor_to_distroinfo,
                               codename_to_distribution)
 from ubuntutools.question import YesNoQuestion
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def error(msg):
diff --git a/bitesize b/bitesize
index 5a2c132..7d2d883 100755
--- a/bitesize
+++ b/bitesize
@@ -21,16 +21,18 @@
 # Authors:
 #  Daniel Holbach <daniel.holbach@xxxxxxxxxxxxx>
 
+import logging
 import sys
 from optparse import OptionParser
 
 from launchpadlib.launchpad import Launchpad
 from launchpadlib.errors import HTTPError
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.config import UDTConfig
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def error_out(msg):
diff --git a/enforced-editing-wrapper b/enforced-editing-wrapper
index 36a1b55..a095a45 100755
--- a/enforced-editing-wrapper
+++ b/enforced-editing-wrapper
@@ -26,6 +26,7 @@ import optparse
 import os
 import re
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.question import EditFile
 
 
diff --git a/grep-merges b/grep-merges
index 7c75cd4..774f079 100755
--- a/grep-merges
+++ b/grep-merges
@@ -19,16 +19,18 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import logging
 import optparse
 import sys
 import json
 
 from httplib2 import Http, HttpLib2Error
 
+from ubuntutools import logging_defaults # noqa
 import ubuntutools.misc
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def main():
diff --git a/hugdaylist b/hugdaylist
index 5140ae1..a4bfd97 100755
--- a/hugdaylist
+++ b/hugdaylist
@@ -29,15 +29,18 @@
 # hugdaylist -n <howmany> <url>
 # - will only list <howmany> URLs.
 
+import logging
 import sys
+
 from optparse import OptionParser
 
 from launchpadlib.launchpad import Launchpad
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.lp.libsupport import translate_web_api
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def check_args():
diff --git a/import-bug-from-debian b/import-bug-from-debian
index b9ab478..12b4870 100755
--- a/import-bug-from-debian
+++ b/import-bug-from-debian
@@ -30,10 +30,11 @@ import webbrowser
 
 from launchpadlib.launchpad import Launchpad
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.config import UDTConfig
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def main():
diff --git a/merge-changelog b/merge-changelog
index f14d4db..5f735b2 100755
--- a/merge-changelog
+++ b/merge-changelog
@@ -18,12 +18,15 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import logging
 import sys
 
 from debian.changelog import Changelog
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+from ubuntutools import logging_defaults # noqa
+
+
+Logger = logging.getLogger(__name__)
 
 
 def usage(exit_code=1):
diff --git a/pbuilder-dist b/pbuilder-dist
index 4e1b47b..1f70e4d 100755
--- a/pbuilder-dist
+++ b/pbuilder-dist
@@ -30,6 +30,7 @@
 # that the target distribution is always meant to be Ubuntu Hardy.
 
 import distutils.spawn
+import logging
 import os
 import os.path
 import subprocess
@@ -40,11 +41,12 @@ from distro_info import DebianDistroInfo, UbuntuDistroInfo, DistroDataOutdated
 
 import ubuntutools.misc
 import ubuntutools.version
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.config import UDTConfig
 from ubuntutools.question import YesNoQuestion
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 class PbuilderDist(object):
diff --git a/pull-debian-debdiff b/pull-debian-debdiff
index 50f15ce..0f7183a 100755
--- a/pull-debian-debdiff
+++ b/pull-debian-debdiff
@@ -17,17 +17,19 @@
 # OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 # PERFORMANCE OF THIS SOFTWARE.
 
+import logging
 import optparse
 import sys
 
 import debian.changelog
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.archive import DebianSourcePackage, DownloadError
 from ubuntutools.config import UDTConfig
 from ubuntutools.version import Version
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def previous_version(package, version, distance):
diff --git a/requestbackport b/requestbackport
index a6e30f3..35d6346 100755
--- a/requestbackport
+++ b/requestbackport
@@ -15,6 +15,7 @@
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
 from collections import defaultdict
+import logging
 import optparse
 import re
 import sys
@@ -22,6 +23,7 @@ import sys
 import apt
 from distro_info import UbuntuDistroInfo
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.config import UDTConfig
 from ubuntutools.lp.lpapicache import Launchpad, Distribution
 from ubuntutools.lp.udtexceptions import PackageNotFoundException
@@ -29,8 +31,8 @@ from ubuntutools.question import (YesNoQuestion, EditBugReport,
                                   confirmation_prompt)
 from ubuntutools.rdepends import query_rdepends, RDependsException
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 class DestinationException(Exception):
diff --git a/requestsync b/requestsync
index a12a669..e9fe96d 100755
--- a/requestsync
+++ b/requestsync
@@ -26,20 +26,21 @@
 #
 # ##################################################################
 
+import logging
 import optparse
 import os
 import sys
 
 from distro_info import UbuntuDistroInfo
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.config import UDTConfig, ubu_email
 from ubuntutools.lp import udtexceptions
 from ubuntutools.misc import require_utf8
 from ubuntutools.question import confirmation_prompt, EditBugReport
 from ubuntutools.version import Version
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+Logger = logging.getLogger(__name__)
 
 #
 # entry point
diff --git a/reverse-depends b/reverse-depends
index d5ca6b8..a8bbaf0 100755
--- a/reverse-depends
+++ b/reverse-depends
@@ -15,16 +15,18 @@
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
 import argparse
+import logging
 import sys
 
 from distro_info import DistroDataOutdated
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.misc import (system_distribution, vendor_to_distroinfo,
                               codename_to_distribution)
 from ubuntutools.rdepends import query_rdepends, RDependsException
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 DEFAULT_MAX_DEPTH = 10  # We want avoid any infinite loop...
 
diff --git a/seeded-in-ubuntu b/seeded-in-ubuntu
index 846f92e..0949e21 100755
--- a/seeded-in-ubuntu
+++ b/seeded-in-ubuntu
@@ -17,16 +17,18 @@
 import collections
 import gzip
 import json
+import logging
 import optparse
 import os
 import time
 import urllib.request
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.lp.lpapicache import (Distribution, Launchpad,
                                        PackageNotFoundException)
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 DATA_URL = 'http://qa.ubuntuwire.org/ubuntu-seeded-packages/seeded.json.gz'
 
diff --git a/sponsor-patch b/sponsor-patch
index 1e77852..15c2ba9 100755
--- a/sponsor-patch
+++ b/sponsor-patch
@@ -14,19 +14,20 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import logging
 import optparse
 import os
 import shutil
 import sys
 import tempfile
-import logging
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.builder import get_builder
 from ubuntutools.config import UDTConfig
 from ubuntutools.sponsor_patch.sponsor_patch import sponsor_patch, check_dependencies
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def parse(script_name):
diff --git a/submittodebian b/submittodebian
index 13a5bc1..12b47c0 100755
--- a/submittodebian
+++ b/submittodebian
@@ -22,6 +22,7 @@
 #
 # ##################################################################
 
+import logging
 import optparse
 import os
 import re
@@ -35,12 +36,13 @@ from tempfile import mkdtemp
 from debian.changelog import Changelog
 from distro_info import UbuntuDistroInfo, DistroDataOutdated
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.config import ubu_email
 from ubuntutools.question import YesNoQuestion, EditFile
 from ubuntutools.update_maintainer import update_maintainer, restore_maintainer
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def get_most_recent_debian_version(changelog):
diff --git a/syncpackage b/syncpackage
index 8282bb3..1a3aba6 100755
--- a/syncpackage
+++ b/syncpackage
@@ -32,6 +32,7 @@ import urllib.request
 
 from lazr.restfulclient.errors import HTTPError
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.archive import (DebianSourcePackage, UbuntuSourcePackage,
                                  DownloadError)
 from ubuntutools.config import UDTConfig, ubu_email
@@ -45,8 +46,8 @@ from ubuntutools.requestsync.mail import (
 from ubuntutools.requestsync.lp import get_debian_srcpkg, get_ubuntu_srcpkg
 from ubuntutools.version import Version
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def remove_signature(dscname):
diff --git a/ubuntu-build b/ubuntu-build
index af5345d..71d1081 100755
--- a/ubuntu-build
+++ b/ubuntu-build
@@ -22,18 +22,21 @@
 #   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 
-# Our modules to import.
+import logging
 import sys
+
 from optparse import OptionGroup
 from optparse import OptionParser
+
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.lp.udtexceptions import (SeriesNotFoundException,
                                           PackageNotFoundException,
                                           PocketDoesNotExistError,)
 from ubuntutools.lp.lpapicache import Distribution, PersonTeam
 from ubuntutools.misc import split_release_pocket
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def main():
diff --git a/ubuntu-iso b/ubuntu-iso
index c07b420..7f6b042 100755
--- a/ubuntu-iso
+++ b/ubuntu-iso
@@ -20,12 +20,15 @@
 #
 # ##################################################################
 
+import logging
 import optparse
 import subprocess
 import sys
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+from ubuntutools import logging_defaults # noqa
+
+
+Logger = logging.getLogger(__name__)
 
 
 def extract(iso, path):
diff --git a/ubuntu-upload-permission b/ubuntu-upload-permission
index 2742eb2..183906c 100755
--- a/ubuntu-upload-permission
+++ b/ubuntu-upload-permission
@@ -14,16 +14,18 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import logging
 import optparse
 import sys
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.lp.lpapicache import (Launchpad, Distribution, PersonTeam,
                                        Packageset, PackageNotFoundException,
                                        SeriesNotFoundException)
 from ubuntutools.misc import split_release_pocket
 
-from ubuntutools import getLogger
-Logger = getLogger(__name__)
+
+Logger = logging.getLogger(__name__)
 
 
 def parse_arguments():
diff --git a/ubuntutools/__init__.py b/ubuntutools/__init__.py
index f886333..40a7c42 100644
--- a/ubuntutools/__init__.py
+++ b/ubuntutools/__init__.py
@@ -2,20 +2,3 @@
 #
 # Ubuntu Development Tools
 # https://launchpad.net/ubuntu-dev-tools
-
-import logging
-
-
-def _loggingBasicConfig(**kwargs):
-    '''Set log level to INFO and define log format to use.'''
-    if 'level' not in kwargs:
-        kwargs['level'] = logging.INFO
-    if 'format' not in kwargs:
-        kwargs['format'] = '%(message)s'
-    logging.basicConfig(**kwargs)
-
-
-def getLogger(name=None):
-    '''Get standard Python logging.Logger with some ubuntutools defaults.'''
-    _loggingBasicConfig()
-    return logging.getLogger(name)
diff --git a/ubuntutools/archive.py b/ubuntutools/archive.py
index 049f953..942bd62 100644
--- a/ubuntutools/archive.py
+++ b/ubuntutools/archive.py
@@ -27,12 +27,10 @@ Approach:
 3. Verify checksums.
 """
 
-from urllib.error import (URLError, HTTPError)
-from urllib.parse import urlparse
-from urllib.request import urlopen
 import codecs
 import functools
 import json
+import logging
 import os.path
 import re
 import subprocess
@@ -43,6 +41,10 @@ import debian.deb822
 
 from contextlib import closing
 
+from urllib.error import (URLError, HTTPError)
+from urllib.parse import urlparse
+from urllib.request import urlopen
+
 from ubuntutools.config import UDTConfig
 from ubuntutools.lp.lpapicache import (Launchpad, Distribution, PersonTeam, Project,
                                        SourcePackagePublishingHistory)
@@ -53,7 +55,7 @@ from ubuntutools.lp.udtexceptions import (PackageNotFoundException,
 from ubuntutools.misc import (download, verify_file_checksum, verify_file_checksums)
 from ubuntutools.version import Version
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/builder.py b/ubuntutools/builder.py
index c082602..48c161f 100644
--- a/ubuntutools/builder.py
+++ b/ubuntutools/builder.py
@@ -18,10 +18,10 @@
 #   CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #
 
+import logging
 import os
 import subprocess
 
-import logging
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/config.py b/ubuntutools/config.py
index dabfaa2..e05bb62 100644
--- a/ubuntutools/config.py
+++ b/ubuntutools/config.py
@@ -15,15 +15,16 @@
 # OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 # PERFORMANCE OF THIS SOFTWARE.
 
+import locale
+import logging
 import os
 import pwd
 import re
 import shlex
 import socket
 import sys
-import locale
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/logging_defaults.py b/ubuntutools/logging_defaults.py
new file mode 100644
index 0000000..c62c9fd
--- /dev/null
+++ b/ubuntutools/logging_defaults.py
@@ -0,0 +1,22 @@
+# -*- coding: utf-8 -*-
+#
+# Ubuntu Development Tools
+# https://launchpad.net/ubuntu-dev-tools
+
+# Import this module from your main program only if you want to use these defaults
+
+import logging
+import sys
+
+
+DEFAULT_LOGGING_FORMAT = '%(message)s'
+DEFAULT_LOGGING_LEVEL = logging.INFO
+DEFAULT_LOGGING_STREAM = sys.stdout
+
+DEFAULT_LOGGING_PARAMS = {
+    'format': DEFAULT_LOGGING_FORMAT,
+    'level': DEFAULT_LOGGING_LEVEL,
+    'stream': DEFAULT_LOGGING_STREAM,
+}
+
+logging.basicConfig(**DEFAULT_LOGGING_PARAMS)
diff --git a/ubuntutools/lp/lpapicache.py b/ubuntutools/lp/lpapicache.py
index b1f138c..39156e4 100644
--- a/ubuntutools/lp/lpapicache.py
+++ b/ubuntutools/lp/lpapicache.py
@@ -22,6 +22,7 @@
 #   Based on code written by Jonathan Davies <jpds@xxxxxxxxxx>
 
 import collections
+import logging
 import os
 import re
 
@@ -47,9 +48,8 @@ from ubuntutools.lp.udtexceptions import (AlreadyLoggedInError,
                                           PocketDoesNotExistError,
                                           SeriesNotFoundException)
 
-import logging
-Logger = logging.getLogger(__name__)
 
+Logger = logging.getLogger(__name__)
 
 __all__ = [
     'Archive',
diff --git a/ubuntutools/misc.py b/ubuntutools/misc.py
index 1f60b86..5c2ed89 100644
--- a/ubuntutools/misc.py
+++ b/ubuntutools/misc.py
@@ -25,6 +25,7 @@
 import distro_info
 import hashlib
 import locale
+import logging
 import os
 import shutil
 import sys
@@ -37,7 +38,7 @@ from urllib.request import urlopen
 
 from ubuntutools.lp.udtexceptions import PocketDoesNotExistError
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/pullpkg.py b/ubuntutools/pullpkg.py
index f812d63..94904ce 100644
--- a/ubuntutools/pullpkg.py
+++ b/ubuntutools/pullpkg.py
@@ -22,10 +22,11 @@
 # ##################################################################
 
 
+import errno
+import logging
 import os
 import re
 import sys
-import errno
 
 from argparse import ArgumentParser
 
@@ -49,9 +50,7 @@ from ubuntutools.misc import (split_release_pocket,
                               UPLOAD_QUEUE_STATUSES,
                               STATUSES)
 
-from ubuntutools import _loggingBasicConfig
 
-import logging
 Logger = logging.getLogger(__name__)
 
 PULL_SOURCE = 'source'
@@ -98,7 +97,8 @@ class PullPkg(object):
         unexpected errors will flow up to the caller.
         On success, this simply returns.
         """
-        _loggingBasicConfig()
+        # import here, as we only want to set defaults if called as main()
+        from ubuntutools import logging_defaults # noqa
 
         try:
             cls(*args, **kwargs).pull()
diff --git a/ubuntutools/question.py b/ubuntutools/question.py
index 32e3dee..13e041a 100644
--- a/ubuntutools/question.py
+++ b/ubuntutools/question.py
@@ -16,11 +16,11 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
-import tempfile
 import os
 import re
 import subprocess
 import sys
+import tempfile
 
 
 class Question(object):
diff --git a/ubuntutools/rdepends.py b/ubuntutools/rdepends.py
index 4718ce7..514a5af 100644
--- a/ubuntutools/rdepends.py
+++ b/ubuntutools/rdepends.py
@@ -12,11 +12,10 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import httplib2
 import json
 import os
 
-import httplib2
-
 
 class RDependsException(Exception):
     pass
diff --git a/ubuntutools/requestsync/lp.py b/ubuntutools/requestsync/lp.py
index 758958b..c55bca1 100644
--- a/ubuntutools/requestsync/lp.py
+++ b/ubuntutools/requestsync/lp.py
@@ -20,6 +20,7 @@
 #   Please see the /usr/share/common-licenses/GPL-2 file for the full text
 #   of the GNU General Public License license.
 
+import logging
 import re
 
 from debian.deb822 import Changes
@@ -31,7 +32,7 @@ from ubuntutools.lp.lpapicache import (Launchpad, Distribution, PersonTeam,
                                        DistributionSourcePackage)
 from ubuntutools.question import confirmation_prompt
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/requestsync/mail.py b/ubuntutools/requestsync/mail.py
index 4706bc9..163592f 100644
--- a/ubuntutools/requestsync/mail.py
+++ b/ubuntutools/requestsync/mail.py
@@ -20,12 +20,13 @@
 #   Please see the /usr/share/common-licenses/GPL-2 file for the full text
 #   of the GNU General Public License license.
 
+import logging
 import os
 import re
-import sys
 import smtplib
 import socket
 import subprocess
+import sys
 import tempfile
 
 from debian.changelog import Changelog
@@ -35,9 +36,8 @@ from ubuntutools.archive import DebianSourcePackage, UbuntuSourcePackage
 from ubuntutools.lp.udtexceptions import PackageNotFoundException
 from ubuntutools.question import confirmation_prompt, YesNoQuestion
 
-import logging
-Logger = logging.getLogger(__name__)
 
+Logger = logging.getLogger(__name__)
 
 __all__ = [
     'get_debian_srcpkg',
diff --git a/ubuntutools/sponsor_patch/bugtask.py b/ubuntutools/sponsor_patch/bugtask.py
index d7b12ed..3d80f5a 100644
--- a/ubuntutools/sponsor_patch/bugtask.py
+++ b/ubuntutools/sponsor_patch/bugtask.py
@@ -15,17 +15,18 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import distro_info
+import httplib2
+import logging
 import os
 import re
+
 from urllib.parse import unquote
 from urllib.request import urlretrieve
 
-import distro_info
-import httplib2
-
 from ubuntutools.version import Version
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/sponsor_patch/patch.py b/ubuntutools/sponsor_patch/patch.py
index 1fbda60..5ef8f48 100644
--- a/ubuntutools/sponsor_patch/patch.py
+++ b/ubuntutools/sponsor_patch/patch.py
@@ -15,14 +15,16 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import logging
 import os
 import re
 import subprocess
 
-from ubuntutools.sponsor_patch.question import ask_for_manual_fixing
 from functools import reduce
 
-import logging
+from ubuntutools.sponsor_patch.question import ask_for_manual_fixing
+
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/sponsor_patch/source_package.py b/ubuntutools/sponsor_patch/source_package.py
index 99cc5fa..0efbc87 100644
--- a/ubuntutools/sponsor_patch/source_package.py
+++ b/ubuntutools/sponsor_patch/source_package.py
@@ -15,21 +15,21 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import debian.changelog
+import debian.deb822
+
+import logging
 import os
 import re
 import subprocess
 import sys
 
-import debian.changelog
-import debian.deb822
-
 from ubuntutools.question import Question, YesNoQuestion
 
 from ubuntutools.sponsor_patch.question import (ask_for_ignoring_or_fixing,
                                                 ask_for_manual_fixing,
                                                 user_abort)
 
-import logging
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/sponsor_patch/sponsor_patch.py b/ubuntutools/sponsor_patch/sponsor_patch.py
index d873a81..38d71b7 100644
--- a/ubuntutools/sponsor_patch/sponsor_patch.py
+++ b/ubuntutools/sponsor_patch/sponsor_patch.py
@@ -15,6 +15,7 @@
 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
+import logging
 import os
 import pwd
 import shutil
@@ -34,7 +35,7 @@ from ubuntutools.sponsor_patch.patch import Patch
 from ubuntutools.sponsor_patch.question import ask_for_manual_fixing
 from ubuntutools.sponsor_patch.source_package import SourcePackage
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 
diff --git a/ubuntutools/update_maintainer.py b/ubuntutools/update_maintainer.py
index 89a5e3a..e93cf38 100644
--- a/ubuntutools/update_maintainer.py
+++ b/ubuntutools/update_maintainer.py
@@ -16,12 +16,13 @@
 
 """This module is for updating the Maintainer field of an Ubuntu package."""
 
+import logging
 import os
 import re
 
 import debian.changelog
 
-import logging
+
 Logger = logging.getLogger(__name__)
 
 # Prior May 2009 these Maintainers were used:
diff --git a/update-maintainer b/update-maintainer
index 769d36d..6cbf85c 100755
--- a/update-maintainer
+++ b/update-maintainer
@@ -18,6 +18,7 @@ import optparse
 import os
 import sys
 
+from ubuntutools import logging_defaults # noqa
 from ubuntutools.update_maintainer import (update_maintainer,
                                            restore_maintainer,
                                            MaintainerUpdateException)