From 48ae05ae27552571408e9fef2d29e57dc478c3c2 Mon Sep 17 00:00:00 2001
From: Andre Anjos <andre.dos.anjos@gmail.com>
Date: Thu, 14 Feb 2019 16:05:32 +0100
Subject: [PATCH] Implement support for colorful logging nearly everywhere

---
 bob/devtools/changelog.py          |  5 +++--
 bob/devtools/ci.py                 |  6 +++---
 bob/devtools/constants.py          |  6 +++---
 bob/devtools/release.py            |  4 ++--
 bob/devtools/scripts/build.py      |  6 +++---
 bob/devtools/scripts/caupdate.py   |  6 +++---
 bob/devtools/scripts/changelog.py  |  7 +++----
 bob/devtools/scripts/ci.py         | 12 ++++++------
 bob/devtools/scripts/commitfile.py |  6 +++---
 bob/devtools/scripts/create.py     |  8 ++++----
 bob/devtools/scripts/dumpsphinx.py |  7 +++----
 bob/devtools/scripts/getpath.py    |  6 +++---
 bob/devtools/scripts/new.py        |  6 +++---
 bob/devtools/scripts/release.py    |  8 ++++----
 bob/devtools/webdav3/client.py     |  6 ++++--
 15 files changed, 50 insertions(+), 49 deletions(-)

diff --git a/bob/devtools/changelog.py b/bob/devtools/changelog.py
index 5dba4fa0..aec6760b 100644
--- a/bob/devtools/changelog.py
+++ b/bob/devtools/changelog.py
@@ -5,12 +5,13 @@
 
 import io
 import datetime
-import logging
-logger = logging.getLogger(__name__)
 
 import pytz
 import dateutil.parser
 
+from .log import get_logger
+logger = get_logger(__name__)
+
 
 def parse_date(d):
     '''Parses any date supported by :py:func:`dateutil.parser.parse`'''
diff --git a/bob/devtools/ci.py b/bob/devtools/ci.py
index e3044131..91ae88cc 100644
--- a/bob/devtools/ci.py
+++ b/bob/devtools/ci.py
@@ -4,12 +4,12 @@
 '''Tools to help CI-based builds and artifact deployment'''
 
 
-import logging
-logger = logging.getLogger(__name__)
-
 import git
 import distutils.version
 
+from .log import get_logger
+logger = get_logger(__name__)
+
 
 def is_master(refname, tag, repodir):
   '''Tells if we're on the master branch via ref_name or tag
diff --git a/bob/devtools/constants.py b/bob/devtools/constants.py
index facc0b7e..847a0b65 100644
--- a/bob/devtools/constants.py
+++ b/bob/devtools/constants.py
@@ -6,11 +6,11 @@
 import os
 import pkg_resources
 
-import logging
-logger = logging.getLogger(__name__)
-
 from . import bootstrap
 
+from .log import get_logger
+logger = get_logger(__name__)
+
 
 BASE_CONDARC = bootstrap._BASE_CONDARC
 '''Default setup for conda builds'''
diff --git a/bob/devtools/release.py b/bob/devtools/release.py
index ba7e0e38..d760e2c2 100644
--- a/bob/devtools/release.py
+++ b/bob/devtools/release.py
@@ -9,8 +9,8 @@ import time
 import shutil
 import gitlab
 
-import logging
-logger = logging.getLogger(__name__)
+from .log import get_logger
+logger = get_logger(__name__)
 
 from distutils.version import StrictVersion
 
diff --git a/bob/devtools/scripts/build.py b/bob/devtools/scripts/build.py
index c539d778..52d48411 100644
--- a/bob/devtools/scripts/build.py
+++ b/bob/devtools/scripts/build.py
@@ -3,8 +3,6 @@
 
 import os
 import sys
-import logging
-logger = logging.getLogger(__name__)
 
 import yaml
 import click
@@ -12,7 +10,6 @@ import pkg_resources
 import conda_build.api
 
 from . import bdt
-from ..log import verbosity_option
 from ..build import next_build_number, conda_arch, should_skip_build, \
     get_rendered_metadata, get_parsed_recipe, make_conda_config, \
     get_docserver_setup, get_env_directory
@@ -20,6 +17,9 @@ from ..constants import CONDA_BUILD_CONFIG, CONDA_RECIPE_APPEND, \
     SERVER, MATPLOTLIB_RCDIR, BASE_CONDARC
 from ..bootstrap import set_environment, get_channels
 
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
+
 
 @click.command(epilog='''
 Examples:
diff --git a/bob/devtools/scripts/caupdate.py b/bob/devtools/scripts/caupdate.py
index 575c43ad..b6629a5a 100644
--- a/bob/devtools/scripts/caupdate.py
+++ b/bob/devtools/scripts/caupdate.py
@@ -1,13 +1,13 @@
 #!/usr/bin/env python
 
 import os
-import logging
-logger = logging.getLogger(__name__)
 
 import click
 
 from . import bdt
-from ..log import verbosity_option
+
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
 
 
 @click.command(epilog='''
diff --git a/bob/devtools/scripts/changelog.py b/bob/devtools/scripts/changelog.py
index 1ad42af8..0f3c1c2a 100644
--- a/bob/devtools/scripts/changelog.py
+++ b/bob/devtools/scripts/changelog.py
@@ -4,17 +4,16 @@ import os
 import sys
 import datetime
 
-import logging
-logger = logging.getLogger(__name__)
-
 import click
 
 from . import bdt
-from ..log import verbosity_option
 from ..changelog import get_last_tag_date, write_tags_with_commits
 from ..changelog import parse_date
 from ..release import get_gitlab_instance
 
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
+
 
 @click.command(epilog='''
 Examples:
diff --git a/bob/devtools/scripts/ci.py b/bob/devtools/scripts/ci.py
index 763cec40..3ad13b14 100644
--- a/bob/devtools/scripts/ci.py
+++ b/bob/devtools/scripts/ci.py
@@ -3,8 +3,6 @@
 import os
 import re
 import glob
-import logging
-logger = logging.getLogger(__name__)
 
 import yaml
 import click
@@ -13,9 +11,11 @@ import conda_build.api
 from click_plugins import with_plugins
 
 from . import bdt
-from ..log import verbosity_option
 from ..constants import SERVER
 
+from ..log import verbosity_option, get_logger, echo_normal
+logger = get_logger(__name__)
+
 
 @with_plugins(pkg_resources.iter_entry_points('bdt.ci.cli'))
 @click.group(cls=bdt.AliasedGroup)
@@ -363,11 +363,11 @@ def base_build(order, python, dry_run):
     recipes = list(itertools.product([None], recipes))
 
   for order, (pyver, recipe) in enumerate(recipes):
-    click.echo('\n' + (80*'='))
+    echo_normal('\n' + (80*'='))
     pytext = 'for python-%s ' % pyver if pyver is not None else ''
-    click.echo('Building "%s" %s(%d/%d)' % \
+    echo_normal('Building "%s" %s(%d/%d)' % \
         (recipe, pytext, order+1, len(recipes)))
-    click.echo((80*'=') + '\n')
+    echo_normal((80*'=') + '\n')
     if not os.path.exists(os.path.join(recipe, 'meta.yaml')):
       logger.info('Ignoring directory "%s" - no meta.yaml found' % recipe)
       continue
diff --git a/bob/devtools/scripts/commitfile.py b/bob/devtools/scripts/commitfile.py
index 66303197..b0218247 100644
--- a/bob/devtools/scripts/commitfile.py
+++ b/bob/devtools/scripts/commitfile.py
@@ -1,15 +1,15 @@
 #!/usr/bin/env python
 
 import os
-import logging
-logger = logging.getLogger(__name__)
 
 import click
 
 from . import bdt
-from ..log import verbosity_option
 from ..release import get_gitlab_instance, update_files_with_mr
 
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
+
 
 @click.command(epilog='''
 Examples:
diff --git a/bob/devtools/scripts/create.py b/bob/devtools/scripts/create.py
index 122e7ea6..0d0b6b5e 100644
--- a/bob/devtools/scripts/create.py
+++ b/bob/devtools/scripts/create.py
@@ -3,20 +3,20 @@
 
 import os
 import sys
-import logging
-logger = logging.getLogger(__name__)
 
 import pkg_resources
 import click
 import yaml
 
 from . import bdt
-from ..log import verbosity_option
 from ..build import parse_dependencies, conda_create, make_conda_config
 from ..constants import BASE_CONDARC, CONDA_BUILD_CONFIG, \
     CONDA_RECIPE_APPEND, SERVER
 from ..bootstrap import set_environment, get_channels
 
+from ..log import verbosity_option, get_logger, echo_normal
+logger = get_logger(__name__)
+
 
 @click.command(epilog='''
 Examples:
@@ -138,4 +138,4 @@ def create(name, recipe_dir, python, overwrite, condarc, use_local, config,
   deps = parse_dependencies(recipe_dir, conda_config)
   status = conda_create(conda, name, overwrite, condarc_options, deps,
       dry_run, use_local)
-  click.echo('Execute on your shell: "conda activate %s"' % name)
+  echo_normal('Execute on your shell: "conda activate %s"' % name)
diff --git a/bob/devtools/scripts/dumpsphinx.py b/bob/devtools/scripts/dumpsphinx.py
index b022e8a3..51b399a8 100644
--- a/bob/devtools/scripts/dumpsphinx.py
+++ b/bob/devtools/scripts/dumpsphinx.py
@@ -2,15 +2,14 @@
 # -*- coding: utf-8 -*-
 
 
-import logging
-logger = logging.getLogger(__name__)
-
 from sphinx.ext import intersphinx
 
 import click
 
 from . import bdt
-from ..log import verbosity_option
+
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
 
 
 @click.command(epilog='''
diff --git a/bob/devtools/scripts/getpath.py b/bob/devtools/scripts/getpath.py
index d70be09a..b8105a8e 100644
--- a/bob/devtools/scripts/getpath.py
+++ b/bob/devtools/scripts/getpath.py
@@ -1,15 +1,15 @@
 #!/usr/bin/env python
 
 import os
-import logging
-logger = logging.getLogger(__name__)
 
 import click
 
 from . import bdt
-from ..log import verbosity_option
 from ..release import get_gitlab_instance, download_path
 
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
+
 
 @click.command(epilog='''
 Examples:
diff --git a/bob/devtools/scripts/new.py b/bob/devtools/scripts/new.py
index c6f7b8e2..2c8ce0b6 100644
--- a/bob/devtools/scripts/new.py
+++ b/bob/devtools/scripts/new.py
@@ -2,16 +2,16 @@
 
 import os
 import shutil
-import logging
 import datetime
-logger = logging.getLogger(__name__)
 
 import click
 import jinja2
 import pkg_resources
 
 from . import bdt
-from ..log import verbosity_option
+
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
 
 
 def copy_file(template, output_dir):
diff --git a/bob/devtools/scripts/release.py b/bob/devtools/scripts/release.py
index 87e1ca97..0a350f65 100644
--- a/bob/devtools/scripts/release.py
+++ b/bob/devtools/scripts/release.py
@@ -4,17 +4,17 @@
 
 import os
 
-import logging
-logger = logging.getLogger(__name__)
-
 import click
 
 from . import bdt
-from ..log import verbosity_option
 from ..release import release_bob, parse_and_process_package_changelog
 from ..release import release_package, wait_for_pipeline_to_finish
 from ..release import get_gitlab_instance
 
+from ..log import verbosity_option, get_logger
+logger = get_logger(__name__)
+
+
 @click.command(epilog='''
 Examples:
 
diff --git a/bob/devtools/webdav3/client.py b/bob/devtools/webdav3/client.py
index b1850d70..2fe7a588 100644
--- a/bob/devtools/webdav3/client.py
+++ b/bob/devtools/webdav3/client.py
@@ -1,7 +1,6 @@
 # -*- coding: utf-8
 
 import functools
-import logging
 import os
 import shutil
 import threading
@@ -15,6 +14,10 @@ from .connection import *
 from .exceptions import *
 from .urn import Urn
 
+from ..log import get_logger
+logger = get_logger(__name__)
+
+
 try:
     from urllib.parse import unquote, urlsplit
 except ImportError:
@@ -22,7 +25,6 @@ except ImportError:
     from urlparse import urlsplit
 
 __version__ = "0.2"
-log = logging.getLogger(__name__)
 
 
 def listdir(directory):
-- 
GitLab