Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@ matrix:
- os: linux
python: 2.7
env: TOXENV=py27
- os: linux
python: 3.3
env: TOXENV=py33
- os: linux
python: 3.4
env: TOXENV=py34
Expand Down
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
## 0.7.9 (TBD)
## 0.7.9 (January 4, 2018)

* Bug Fixes
* Fixed a couple broken examples
* Enhancements
* Improved documentation for modifying shortcuts (command aliases)
* Made ``pyreadline`` a dependency on Windows to ensure tab-completion works
* Other changes
* Abandoned official support for Python 3.3. It should still work, just don't have an easy way to test it anymore.

## 0.7.8 (November 8, 2017)

Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,10 @@ The tables below list all prerequisites along with the minimum required version

| Prerequisite | Minimum Version |
| --------------------------------------------------- | --------------- |
| [Python](https://www.python.org/downloads/) | `3.3 or 2.7` |
| [Python](https://www.python.org/downloads/) | `3.4 or 2.7` |
| [six](https://pypi.python.org/pypi/six) | `1.8` |
| [pyparsing](http://pyparsing.wikispaces.com) | `2.0.3` |
| [pyperclip](https://github.com/asweigart/pyperclip) | `1.5` |
| [pyperclip](https://github.com/asweigart/pyperclip) | `1.6` |

#### Additional prerequisites to run cmd2 unit tests

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Main Features
- Parsing commands with flags
- Unicode character support (*Python 3 only*)
- Good tab-completion of commands, file system paths, and shell commands
- Python 2.7 and 3.3+ support
- Python 2.7 and 3.4+ support
- Linux, macOS and Windows support
- Trivial to provide built-in help for all commands
- Built-in regression testing framework for your applications (transcript-based testing)
Expand All @@ -46,7 +46,7 @@ On all operating systems, the latest stable version of `cmd2` can be installed u
pip install -U cmd2
```

cmd2 works with Python 2.7 and Python 3.3+ on Windows, macOS, and Linux. It is pure Python code with
cmd2 works with Python 2.7 and Python 3.4+ on Windows, macOS, and Linux. It is pure Python code with
the only 3rd-party dependencies being on [six](https://pypi.python.org/pypi/six),
[pyparsing](http://pyparsing.wikispaces.com), and [pyperclip](https://github.com/asweigart/pyperclip)
(on Windows, [pyreadline](https://pypi.python.org/pypi/pyreadline) is an additional dependency).
Expand Down
23 changes: 12 additions & 11 deletions cmd2.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,16 +53,6 @@
# noinspection PyUnresolvedReferences
from pyperclip import PyperclipException

# On some systems, pyperclip will import gtk for its clipboard functionality.
# The following code is a workaround for gtk interfering with printing from a background
# thread while the CLI thread is blocking in raw_input() in Python 2 on Linux.
try:
# noinspection PyUnresolvedReferences
import gtk
gtk.set_interactive(0)
except ImportError:
pass

# next(it) gets next item of iterator it. This is a replacement for calling it.next() in Python 2 and next(it) in Py3
from six import next

Expand Down Expand Up @@ -105,7 +95,18 @@
else:
BROKEN_PIPE_ERROR = IOError

__version__ = '0.7.9a'
# On some systems, pyperclip will import gtk for its clipboard functionality.
# The following code is a workaround for gtk interfering with printing from a background
# thread while the CLI thread is blocking in raw_input() in Python 2 on Linux.
if six.PY2 and sys.platform.startswith('lin'):
try:
# noinspection PyUnresolvedReferences
import gtk
gtk.set_interactive(0)
except ImportError:
pass

__version__ = '0.7.9'

# Pyparsing enablePackrat() can greatly speed up parsing, but problems have been seen in Python 3 in the past
pyparsing.ParserElement.enablePackrat()
Expand Down
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
# The short X.Y version.
version = '0.7'
# The full version, including alpha/beta/rc tags.
release = '0.7.8'
release = '0.7.9'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
2 changes: 1 addition & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ Contents:
Compatibility
=============

Tested and working with Python 2.7 and 3.3+.
Tested and working with Python 2.7 and 3.4+.

Indices and tables
==================
Expand Down
2 changes: 1 addition & 1 deletion docs/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This section covers the basics of how to install, upgrade, and uninstall ``cmd2`

Installing
----------
First you need to make sure you have Python 2.7 or Python 3.3+, pip_, and setuptools_. Then you can just use pip to
First you need to make sure you have Python 2.7 or Python 3.4+, pip_, and setuptools_. Then you can just use pip to
install from PyPI_.

.. _pip: https://pypi.python.org/pypi/pip
Expand Down
5 changes: 2 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import sys
from setuptools import setup

VERSION = '0.7.9a'
VERSION = '0.7.9'
DESCRIPTION = "cmd2 - a tool for building interactive command line applications in Python"
LONG_DESCRIPTION = """cmd2 is a tool for building interactive command line applications in Python. Its goal is to make
it quick and easy for developers to build feature-rich and user-friendly interactive command line applications. It
Expand All @@ -32,7 +32,7 @@
- Parsing commands with flags
- Unicode character support (*Python 3 only*)
- Good tab-completion of commands, file system paths, and shell commands
- Python 2.7 and 3.3+ support
- Python 2.7 and 3.4+ support
- Linux, macOS and Windows support
- Trivial to provide built-in help for all commands
- Built-in regression testing framework for your applications (transcript-based testing)
Expand All @@ -52,7 +52,6 @@
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.3
Programming Language :: Python :: 3.4
Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6
Expand Down
2 changes: 1 addition & 1 deletion tests/test_cmd2.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@


def test_ver():
assert cmd2.__version__ == '0.7.9a'
assert cmd2.__version__ == '0.7.9'


def test_empty_statement(base_app):
Expand Down
12 changes: 1 addition & 11 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[tox]
envlist = py27,py33,py34,py35,py36,py36-winpy37,pypy
envlist = py27,py34,py35,py36,py36-win,py37

[pytest]
testpaths = tests
Expand Down Expand Up @@ -40,16 +40,6 @@ commands =
py.test {posargs: -n 2} --cov=cmd2 --cov-report=term-missing
codecov

[testenv:py33]
deps =
mock
pyparsing
pyperclip
pytest
pytest-xdist
six
commands = py.test -v -n2

[testenv:py34]
deps =
mock
Expand Down