# HG changeset patch
# User Vincent Hatakeyama <vincent.hatakeyama@xcg-consulting.fr>
# Date 1582112236 -3600
#      Wed Feb 19 12:37:16 2020 +0100
# Node ID 9d4ed62e0c336262351ad34c947cd1a08b8ac417
# Parent  f9ef146c2ba446e280ae793511c227b65f974734
📝 add conf2reST to the module

also changed it to be python3 compatible only

diff --git a/conf2reST.py b/odoo_scripts/conf2reST.py
rename from conf2reST.py
rename to odoo_scripts/conf2reST.py
--- a/conf2reST.py
+++ b/odoo_scripts/conf2reST.py
@@ -1,7 +1,5 @@
 #!/usr/bin/env python3
 """Generate a reST file from configuration files.
-This script can be used with python 2 or 3, and uses the six library for
-compatibility.
 """
 import argparse
 import configparser
@@ -12,6 +10,8 @@
 
 import yaml
 
+from .logging import add_verbosity_to_parser, logging_from_verbose
+
 _logger = logging.getLogger(__name__)
 
 __version__ = '1.0.1'
@@ -54,9 +54,7 @@
     parser.add_argument(
         '-V', '--version', action='version',
         version=program_version_message)
-    parser.add_argument(
-        '-v', '--verbose', dest='verbose', action='count',
-        help="set verbosity level [default: %(default)s]")
+    add_verbosity_to_parser(parser)
     parser.add_argument(
         '-d',
         '--directory',
@@ -70,20 +68,12 @@
     )
 
     nmspc = parser.parse_args()
-    verbose = nmspc.verbose
-    if not verbose:
-        logging.basicConfig(level=logging.WARN)
-    if verbose == 1:
-        logging.basicConfig(level=logging.INFO)
-    if verbose and verbose > 1:
-        logging.basicConfig(level=logging.DEBUG)
-    basedir = os.path.dirname(sys.argv[0])
-    conf2rst(basedir, nmspc.directory, nmspc.output)
+    logging_from_verbose(nmspc)
+    conf2rst(nmspc.directory, nmspc.output)
 
 
-def conf2rst(basedir, directory, output=None):
+def conf2rst(directory: str, output=None):
     """
-    :param basedir: directory with the odoo_versions.csv file
     :param directory: destination directory
     :param output: file to write to, else prints in stdout
     """
@@ -96,16 +86,9 @@
         os.path.dirname(path)
         for path in parser.get('odoo_scripts', 'modules').split())
 
-    # pip freeze
+    # pip3 freeze
     reqs = dict()
-    try:
-        pip_freeze = subprocess.check_output(['pip', 'freeze'])
-    except OSError as e:
-        if e.errno == os.errno.ENOENT:
-            pip_freeze = subprocess.check_output(['pip3', 'freeze'])
-        else:
-            # Something else went wrong
-            raise
+    pip_freeze = subprocess.check_output(['pip3', 'freeze'])
     for element in pip_freeze.split():
         lib_and_version = element.decode('utf-8').split('==')
         if len(lib_and_version) == 1:  # No explicit version (no ==).
diff --git a/odoo_scripts/logging.py b/odoo_scripts/logging.py
--- a/odoo_scripts/logging.py
+++ b/odoo_scripts/logging.py
@@ -2,6 +2,12 @@
 import logging
 
 
+def add_verbosity_to_parser(parser: argparse.ArgumentParser):
+    parser.add_argument(
+        '-v', '--verbose', dest='verbose', action='count',
+        help="set verbosity level [default: %(default)s]")
+
+
 def logging_from_verbose(namespace: argparse.Namespace):
     verbose = namespace.verbose
     if not verbose:
diff --git a/odoo_scripts/odoo.py b/odoo_scripts/odoo.py
--- a/odoo_scripts/odoo.py
+++ b/odoo_scripts/odoo.py
@@ -3,6 +3,8 @@
 
 import odoorpc
 
+from .logging import add_verbosity_to_parser
+
 _logger = logging.getLogger(__name__)
 
 
@@ -46,9 +48,7 @@
     parser.add_argument(
         '-V', '--version', action='version',
         version=version)
-    parser.add_argument(
-        '-v', '--verbose', dest='verbose', action='count',
-        help="set verbosity level [default: %(default)s]")
+    add_verbosity_to_parser(parser)
     parser.add_argument(
         '--login',
         help="Odoo user [default: %(default)s]",
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -23,6 +23,7 @@
             "docker_dev_start=odoo_scripts.docker_dev_start:main",
             "do_tests=odoo_scripts.do_tests:main",
             "docker_build=odoo_scripts.docker_build:main",
+            "conf2reST=odoo_scripts.conf2reST:main",
             # TODO add all the other python scripts
         ]
     },