# HG changeset patch # User Vincent Hatakeyama <vincent.hatakeyama@xcg-consulting.fr> # Date 1595509507 -7200 # Thu Jul 23 15:05:07 2020 +0200 # Node ID 0c5427adec0e505090a49c77ab7622a40611f6cf # Parent 40b53081d745b3387b64c5444f1b9f5bbeac2dfc ✨ install pdb++ in image, and 🔨 use it by default diff --git a/NEWS.rst b/NEWS.rst --- a/NEWS.rst +++ b/NEWS.rst @@ -13,6 +13,8 @@ Fix issue with flake8 call not using :file:`setup.cfg` preferences; it was called from another directory. +Default to pdb with pdb++ instead of ipdb. New option ``--ipdb`` to run ipdb instead if wanted. + 4.0 --- diff --git a/odoo_scripts/docker_build.py b/odoo_scripts/docker_build.py --- a/odoo_scripts/docker_build.py +++ b/odoo_scripts/docker_build.py @@ -158,6 +158,8 @@ myfile.write( "python3-watchdog python3-ipdb python3-pyinotify\n" ) + # Install pdb++ + myfile.write("RUN pip3 install pdbpp\n") elif odoo_type in ("odoo10",): myfile.write("python-ipdb\n") myfile.write( diff --git a/odoo_scripts/docker_dev_start.py b/odoo_scripts/docker_dev_start.py --- a/odoo_scripts/docker_dev_start.py +++ b/odoo_scripts/docker_dev_start.py @@ -290,9 +290,16 @@ dest="host_network", default=False, ) - parser.add_argument( + dev_option_group = parser.add_mutually_exclusive_group() + dev_option_group.add_argument( "--no-dev", help="No dev options", action="store_false", dest="dev" ) + dev_option_group.add_argument( + "--ipdb", + help="Use ipdb rather than pdb", + action="store_true", + dest="ipdb", + ) parser.add_argument( "--load-language", help="specifies the languages for the translations you want to be" @@ -372,6 +379,7 @@ run_isort = nmspc.isort odoo_help = nmspc.odoo_help dev = nmspc.dev + ipdb = nmspc.ipdb restore_filename = nmspc.DUMP database = nmspc.database load_language = "" @@ -787,8 +795,11 @@ if dev: if odoo_type in ("odoo10", "odoo11", "odoo13"): - # ipdb should not be run if not interactive - arg.append("--dev=reload,ipdb") + # pdb should not be run if not interactive + if ipdb: + arg.append("--dev=reload,ipdb") + else: + arg.append("--dev=reload,pdb") if odoo_type in ("odoo8",): arg.append("--auto-reload") if odoo_help: