summaryrefslogtreecommitdiff
path: root/setup.py
Commit message (Collapse)AuthorAgeFilesLines
* Add missing dev dependencies for black and isortkotfu2023-02-011-0/+2
|
* Deprecate support for Python 3.6 and remove dependency on attrs (#1257)Todd Leonhardt2023-01-311-3/+2
| | | | | | | | | | | | | * Start deprecation of Python 3.6 * Removed dependency on attrs and replaced with dataclasses * Fix typing * Added comments to assist with dropping support of Python versions in the future. --------- Co-authored-by: Kevin Van Brunt <kmvanbrunt@gmail.com>
* Use latest version of mypy and fix type hinting accordingly (#1239)Todd Leonhardt2022-07-141-2/+2
| | | | | | | | | | | | * Use latest version of mypy and fix type hinting accordingly Also: - Update Pipfile to never require mock since we only support Python 3.6+ - Remove Azure Pipelines badge from Readme and fix section links there - Added an "inv format" task to run black and isort to auto-format all code before a commit * Try to fix type errors on versions prior to 3.8 * Restored correct types in argparse_custom.py
* cmd2 now uses pyreadline3 when running any version of Python on WindowsKevin Van Brunt2022-02-171-3/+2
|
* Added support for 8-bit/256-colors with the cmd2.EightBitFg and ↵Kevin Van Brunt2021-10-181-1/+0
| | | | | | | | | | | | | | cmd2.EightBitBg classes. Added support for 24-bit/RGB colors with the cmd2.RgbFg and cmd2.RgbBg classes. Removed dependency on colorama. Deprecated cmd2.fg. Use cmd2.Fg instead. Deprecated cmd2.bg. Use cmd2.Bg instead. Changed type of ansi.allow_style from a string to an ansi.AllowStyle Enum class. Fixed bug where using choices on a Settable didn't verify that a valid choice had been entered.
* * New function `set_default_command_completer_type()` allows developer to ↵Eric Lin2021-08-231-0/+1
| | | | | | | | | extend and modify the behavior of `ArgparseCompleter`. * New function `register_argparse_argument_parameter()` allows developers to specify custom parameters to be passed to the argparse parser's `add_argument()` method. These parameters will become accessible in the resulting argparse Action object when modifying `ArgparseCompleter` behavior.
* Change mypy and lint github steps to use nox/invoke to make CI validation ↵Eric Lin2021-06-141-5/+10
| | | | configuration/commands match developer local commands.
* Resolves comments from PREric Lin2021-03-181-0/+1
|
* Deprecate Python 3.5Todd Leonhardt2021-02-201-6/+3
|
* Add in isort changesTodd Leonhardt2021-01-311-1/+3
|
* Add black for automatic code formatTodd Leonhardt2021-01-311-20/+28
|
* Update conditional pyreadline3 dependency for WinKyle King2021-01-271-2/+3
|
* Added py.typed to signal that we support type annotations for PEP-561. Fixes ↵Eric Lin2021-01-231-0/+5
| | | | #1036
* Changed isort to force wrapping of imports to reduce merge conflicts from ↵Eric Lin2021-01-221-1/+3
| | | | minor import changes.
* Remove unnecessary runtime dependency on setuptoolsMichał Górny2020-10-011-2/+1
| | | | | | The package does not seem to use setuptools or pkg_resources anywhere, and the dependency is probably leftover after migration to importlib.metadata.
* Adding explicit python 3.5.2 test to nox, travisEric Lin2020-08-111-2/+8
| | | | | | | Python 3.5.2 introduced a bug in typing that was fixed in 3.5.3. The bug in typing prevents the latest nox from running properly. Ubuntu 16.04 stopped at python 3.5.2. To work-around, force an older version of nox when testing 3.5.2
* Removed remaining usages and examples with tox. Updated references to tox to ↵Eric Lin2020-08-041-2/+2
| | | | reference to nox instead.
* Fix a dependency version requirement which was too restrictive and required ↵Todd Leonhardt2020-07-131-1/+1
| | | | bleeding edge for no good reason
* replace pkg_resources with importlib.metadataDoug Hellmann2020-07-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* external test plugin tests and coverage should now runEric Lin2020-07-111-1/+3
|
* Swap out tox for noxEric Lin2020-07-081-5/+17
|
* Added info on semantic versioning and branching strategy to CONTRIBUTING.mdTodd Leonhardt2020-04-241-0/+1
| | | | | | | 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
* Cleanup MANIFEST.in to reduce what gets put in package downloadable from PyPITodd Leonhardt2020-01-241-1/+1
| | | | | | Also: - Trivial simplification in setup.py - Removed redundant copyright.rst file from docs since everything falls under the MIT License and there is already copyright statement in docs
* Update CHANGELOG and setup.pyTodd Leonhardt2020-01-221-0/+1
|
* Replace non-ASCII quotes in .coveragerc with ASCII onesTodd Leonhardt2020-01-061-1/+1
|
* Added minimum version of setuptools_scm and added dependency on setuptoolsTodd Leonhardt2020-01-051-2/+2
|
* Try setting a maximum coverage versionTodd Leonhardt2020-01-041-1/+1
|
* Merge branch 'master' into docstructureTodd Leonhardt2019-07-061-1/+1
|\ | | | | | | | | # Conflicts: # setup.py
| * Add Pipfile to support Pipenv for developmentTodd Leonhardt2019-07-051-1/+1
| |
* | Add doc8 documentation style checkingkotfu2019-07-061-1/+2
|/ | | | | | - add dev dependency - add doc8 to tasks.py - fix all doc8 errors
* Require pyperclip >= 1.6 which simplifies clipboard.pyTodd Leonhardt2019-06-291-1/+1
|
* Deprecate support for Python 3.4 and begin testing with Python 3.8 betaTodd Leonhardt2019-06-141-6/+4
|
* Tweak PyPI description to more closely match that on GitHubTodd Leonhardt2019-03-171-1/+1
|
* Use README.md as the PyPI long descriptionTodd Leonhardt2019-03-171-39/+4
|
* Remove test dependency on argcompleteKevin Van Brunt2019-02-231-2/+1
|
* Updated macro documentation0.9.9Kevin Van Brunt2019-02-211-1/+1
|
* Fix flake8 issuesTodd Leonhardt2018-12-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | This commit contains a very large number of trivial changes in order to fix flake8 errors and warnings. Predominantly these are whitespace changes. Additionally, the build for Python 3.7 on TravisCI has been tweaked to fail if there are any flake8 errors using the following commandline: * flake8 . --count --ignore=E252 --max-complexity=31 --max-line-length=127 --show-source --statistics NOTE: In the future the max cyclomatic complexity should be lowered, but some improvements need to be made first. One flake8 error is being ignored entirely: * E252 missing whitespace around parameter equals * ignored because it doesn't correctly deal with default argument values after a type hint A few flake8 errors are being selectively ignored in certain files: * C901 fuction is too complex * ignored in argparse_completer.py because the complex code is an override of argparse complexity * E302 expected 2 blank lines after ... * ignored in all unit test files for convenience * F401 module imported but unused * ignored in cmd2/__init__.py because imports are for convenience of cmd2 developers and backwards compatibility * F821 undefined name * ignored in cmd2 script files which are intended to run only within cmd2 applications via pyscript where "app" and "cmd" are defined
* Merge branch 'master' into document_completionTodd Leonhardt2018-10-261-0/+1
|\
| * Attempt 3 at getting VSTS tox build workingTodd Leonhardt2018-10-241-0/+1
| |
* | Made significant updates to README.mdTodd Leonhardt2018-10-261-0/+1
|/ | | | The initial goal was to improve documentation of tab-completion capabilities. But the README got updates in several areas.
* Documentation updatesKevin Van Brunt2018-10-121-1/+1
|
* Using wcwidth to calculate display width of promptKevin Van Brunt2018-10-111-3/+1
|
* Updated feature listKevin Van Brunt2018-09-271-1/+6
|
* Removed use of type argument in attr.ib() since that wasn't added until ↵Todd Leonhardt2018-09-201-1/+1
| | | | | | | | version 17.3.0. Also: - In setup.py require version of attrs to be >= 16.3.0 - I think this is right, if there are any issues we can bump this to version 17.1.0
* Fix typoTodd Leonhardt2018-09-051-1/+1
|
* Reduce redundant definition of dependenciesTodd Leonhardt2018-09-051-7/+8
| | | | | Modified setup.py to include a definition of the extra dependencies required for running unit tests. This allowed a significant simplification of tox.ini
* Unrestrict Sphinx version since they fixed their bugTodd Leonhardt2018-09-041-1/+1
|
* Restrict Sphinx versionTodd Leonhardt2018-08-211-1/+1
| | | | | This is trying to work around a bug in Sphinx: https://github.com/sphinx-doc/sphinx/issues/5322
* Add all dev dependencies (even from tox.ini)kotfu2018-07-301-2/+4
|
* Use setuptools_scm for version numberskotfu2018-07-291-2/+4
|