[PATCH 4 of 7 WIPv2] cli: convert 'gearbox ishell' into 'kallithea-cli ishell'
Thomas De Schampheleire
patrickdepinguin at gmail.com
Mon Oct 8 19:57:35 UTC 2018
# HG changeset patch
# User Thomas De Schampheleire <thomas.de_schampheleire at nokia.com>
# Date 1538422696 -7200
# Mon Oct 01 21:38:16 2018 +0200
# Node ID 14d0a7fc45f3c5dd7333d3f93335d5b556e7c4f0
# Parent 4208df04508892ce4612b0a392345176fe946e6c
cli: convert 'gearbox ishell' into 'kallithea-cli ishell'
--
Question: what is the purpose of the imports 'used in IPython shell' ?
I don't see a difference when e.g. removing the import of datetime.
diff --git a/kallithea/bin/kallithea_cli.py b/kallithea/bin/kallithea_cli.py
--- a/kallithea/bin/kallithea_cli.py
+++ b/kallithea/bin/kallithea_cli.py
@@ -15,6 +15,7 @@
import click
from kallithea.bin.kallithea_cli_config import config
+from kallithea.bin.kallithea_cli_ishell import ishell
@click.group()
def cli():
@@ -22,3 +23,4 @@ def cli():
pass
cli.add_command(config)
+cli.add_command(ishell)
diff --git a/kallithea/lib/paster_commands/ishell.py b/kallithea/bin/kallithea_cli_ishell.py
rename from kallithea/lib/paster_commands/ishell.py
rename to kallithea/bin/kallithea_cli_ishell.py
--- a/kallithea/lib/paster_commands/ishell.py
+++ b/kallithea/bin/kallithea_cli_ishell.py
@@ -12,41 +12,34 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
-kallithea.lib.paster_commands.ishell
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-interactive shell gearbox command for Kallithea
-
-This file was forked by the Kallithea project in July 2014.
+This file was forked by the Kallithea project in July 2014 and later moved.
Original author and date, and relevant copyright and licensing information is below:
:created_on: Apr 4, 2013
:author: marcink
:copyright: (c) 2013 RhodeCode GmbH, and others.
:license: GPLv3, see LICENSE.md for more details.
"""
-
+import click
+import kallithea.bin.kallithea_cli_util as cli_util
import sys
-# imports, used in IPython shell
+# imports used in IPython shell
import time
import shutil
import datetime
from kallithea.model.db import *
-from kallithea.lib.paster_commands.common import BasePasterCommand
-
-
-class Command(BasePasterCommand):
- "Kallithea: Interactive Python shell"
-
- def take_action(self, args):
- try:
- from IPython import embed
- except ImportError:
- print 'Kallithea ishell requires the Python package IPython 4 or later'
- sys.exit(-1)
- from traitlets.config.loader import Config
- cfg = Config()
- cfg.InteractiveShellEmbed.confirm_exit = False
- embed(config=cfg, banner1="Kallithea IShell.")
+ at click.command()
+ at cli_util.auto_setup_app()
+def ishell(config_file):
+ """Interactive shell for Kallithea."""
+ try:
+ from IPython import embed
+ except ImportError:
+ print 'Kallithea ishell requires the Python package IPython 4 or later'
+ sys.exit(-1)
+ from traitlets.config.loader import Config
+ cfg = Config()
+ cfg.InteractiveShellEmbed.confirm_exit = False
+ embed(config=cfg, banner1="Kallithea IShell.")
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -162,7 +162,6 @@ setuptools.setup(
celeryd=kallithea.lib.paster_commands.celeryd:Command
cleanup-repos=kallithea.lib.paster_commands.cleanup:Command
install-iis=kallithea.lib.paster_commands.install_iis:Command
- ishell=kallithea.lib.paster_commands.ishell:Command
make-index=kallithea.lib.paster_commands.make_index:Command
make-rcext=kallithea.lib.paster_commands.make_rcextensions:Command
repo-scan=kallithea.lib.paster_commands.repo_scan:Command
More information about the kallithea-general
mailing list