summaryrefslogtreecommitdiff
path: root/cmd2
Commit message (Collapse)AuthorAgeFilesLines
* replace pkg_resources with importlib.metadataDoug Hellmann2020-07-121-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | Importing pkg_resources has a side-effect of scanning every installed distribution on sys.path to load the metadata, especially the entry points defined in the packages. This can have a significant launch-time cost for command line applications when there are a lot of distributions to scan. Since cmd2 is only using pkg_resources to find the version of the installed package, pkg_resources can be replaced with importlib.metadata. The implementation in the new library is significantly faster because it goes immediately to the metadata file for the requested distribution, instead of scanning all of them. There are also no import-time side-effects. importlib.metadata is a new standard library module starting with python 3.8. For earlier versions, a compatible library has been released to PyPI as 'importlib_metadata'. This change adds the new dependency with a qualifier so that it is only applied to older versions of python, and then updates the places that were importing pkg_resources to look for the different versions of the new library instead. The documentation configuration is changed to import cmd2 itself to get its version, since the package has to be installed for the metadata to be available anyway. Signed-off-by: Doug Hellmann <doug@doughellmann.com>
* Removed divider row from tab completion hint tableKevin Van Brunt2020-06-011-1/+1
|
* Optimized importsKevin Van Brunt2020-06-011-2/+1
|
* Merge branch 'master' into hint_bugKevin Van Brunt2020-06-013-29/+53
|\
| * Removed pwarning() calls when command raises SystemExitKevin Van Brunt2020-05-281-2/+0
| | | | | | | | Added unit tests
| * Made following changes to onecmd_plus_hooks()Kevin Van Brunt2020-05-072-21/+29
| | | | | | | | | | 1. Added SystemExit handling by warning the user it's occured and setting stop to True 2. KeyboardInterrupts won't be raised if stop is already set to True.
| * Added SkipPostcommandHooks exception and made Cmd2ArgparseError inherit from it.Kevin Van Brunt2020-05-073-12/+30
| | | | | | | | Both exception classes have been added to the public API.
* | Simplied table divider code for ease of readingKevin Van Brunt2020-06-011-3/+5
| |
* | Changed how SimpleTable creates divider when divider_char is wide. It no ↵Kevin Van Brunt2020-06-012-32/+45
| | | | | | | | longer stretches the width of the table.
* | Changed SimpleTable.base_width() to a class method and added equivalent ↵Kevin Van Brunt2020-05-281-10/+30
| | | | | | | | method to BorderedTable.
* | Updated argparse_completer to use TableCreator for the hint tableKevin Van Brunt2020-05-283-31/+80
|/
* Added info on semantic versioning and branching strategy to CONTRIBUTING.mdTodd Leonhardt2020-04-248-20/+21
| | | | | | | Also: - Added isort to Pipenv dev - Added setup.cfg to make it easy to run flake8, doc8, and isort directly from the command line without using invoke - Ran isort to sort includes
* Completion doc updatesKevin Van Brunt2020-04-231-12/+9
|
* Documented CompletionError classKevin Van Brunt2020-04-231-4/+4
|
* Updated _set_parser_prog() so future calls to add_parser() will set the ↵Kevin Van Brunt2020-04-231-1/+5
| | | | | | correct prog value This makes dynamically adding subcommands after the CLI starts easier.
* Fixed issue where subcommand usage text could contain a subcommand alias ↵Kevin Van Brunt2020-04-231-5/+20
| | | | instead of the actual name
* Merge branch 'master' into table_creatorKevin Van Brunt2020-04-222-16/+43
|\
| * run_pyscript now passes a keyword arg to do_py instead of using a hidden ↵Kevin Van Brunt2020-04-211-9/+8
| | | | | | | | argparse flag
| * argument_list and argparse wrappers now pass kwargs through to the wrapped ↵Kevin Van Brunt2020-04-201-7/+35
| | | | | | | | command function
* | Merge branch 'master' into table_creatorKevin Van Brunt2020-04-223-23/+49
|\ \ | |/
| * Updated error textKevin Van Brunt2020-04-201-4/+2
| |
| * cmd2 now considers ipy a pyscript environmentKevin Van Brunt2020-04-201-8/+17
| |
| * Consistently use :raises: instead of :raises (make sure there is a trailing ↵Todd Leonhardt2020-04-203-6/+6
| | | | | | | | colon)
| * Fix doc buildTodd Leonhardt2020-04-201-1/+1
| |
| * ipy now returns its PyBridge's stop value so the main loop can know to stop. ↵Kevin Van Brunt2020-04-201-10/+29
| | | | | | | | This is consistent with the py command.
* | Updating documentation for table creationKevin Van Brunt2020-04-221-3/+5
| |
* | Updated docsKevin Van Brunt2020-04-223-14/+17
| |
* | Updated docstrings to work with sphinxKevin Van Brunt2020-04-201-10/+12
| |
* | Added configurable padding to BorderedTable/AlternatingTableKevin Van Brunt2020-04-191-53/+104
| | | | | | | | Updated comments
* | Merge branch 'master' into table_creatorTodd Leonhardt2020-04-153-87/+89
|\ \ | |/
| * Removed exception handling around tempfile.TemporaryFile()Kevin Van Brunt2020-04-131-5/+1
| |
| * onecmd_plus_hooks() no longer handles updating any state data related to ↵Kevin Van Brunt2020-04-122-51/+56
| | | | | | | | | | | | redirection. For simplicity, it's all done in _redirect_output() and _restore_output().
| * Simplfied _redirect_output() by raising exception instead of returning boolKevin Van Brunt2020-04-113-39/+40
| |
| * Simplified onecmd_plus_hooks by reducing number of calls to ↵Kevin Van Brunt2020-04-111-6/+6
| | | | | | | | _run_cmdfinalization_hooks()
* | Merge branch 'master' into table_creatorKevin Van Brunt2020-04-113-9/+10
|\ \ | |/
| * Made some optional arguments with defaults keyword-only.Kevin Van Brunt2020-04-113-9/+10
| | | | | | | | | | Added unit test for echo argument to pyscript app() command. Removed _relative_load from hidden commands since that command was renamed.
* | Initial commit of table creation APIKevin Van Brunt2020-04-095-33/+817
|/
* Removed the shebang from cmd2.py which was a hangover from when that file ↵Todd Leonhardt2020-04-081-1/+0
| | | | formerly had a __main__
* Updated commentKevin Van Brunt2020-03-261-1/+1
|
* Since runcode() catches most KeyboardInterrupts, just ignore any that make ↵Kevin Van Brunt2020-03-261-5/+3
| | | | | | their way up to our code. This is more consistent than raising the rare few that we see.
* Ctrl-C now stops a running text script instead of just the current script ↵Kevin Van Brunt2020-03-261-17/+33
| | | | command
* do_shell() now saves the return code of the command it runs in ↵Kevin Van Brunt2020-03-201-0/+3
| | | | self.last_result for use in pyscripts
* Added Cmd2ShlexErrorKevin Van Brunt2020-03-124-18/+32
|
* Changed name of exception class as requested in code reviewKevin Van Brunt2020-03-053-7/+7
|
* Prevent postcmd_hook from running when argparse failsKevin Van Brunt2020-03-053-10/+15
|
* Making build_settables() public againKevin Van Brunt2020-02-282-4/+4
|
* Removed duplicate word and capitalized two comment sentencesKevin Van Brunt2020-02-252-3/+3
|
* Clarify docstring for cmd_funckotfu2020-02-241-0/+7
|
* Revise docstring for _build_settableskotfu2020-02-241-1/+1
|
* standardize language on ‘ansi style sequences’kotfu2020-02-241-9/+9
|