Attempt to fix windows terminal compatibility (ping @jelloslinger). If this is working on windows, we should consider removing blessings in favor of colorama.
This commit is contained in:
7
Makefile
7
Makefile
@ -1,7 +1,7 @@
|
|||||||
# This file has been auto-generated.
|
# This file has been auto-generated.
|
||||||
# All changes will be lost, see Projectfile.
|
# All changes will be lost, see Projectfile.
|
||||||
#
|
#
|
||||||
# Updated at 2017-04-21 10:27:25.709949
|
# Updated at 2017-04-23 14:52:31.862565
|
||||||
|
|
||||||
PYTHON ?= $(shell which python)
|
PYTHON ?= $(shell which python)
|
||||||
PYTHON_BASENAME ?= $(shell basename $(PYTHON))
|
PYTHON_BASENAME ?= $(shell basename $(PYTHON))
|
||||||
@ -10,7 +10,6 @@ PYTHON_REQUIREMENTS_DEV_FILE ?= requirements-dev.txt
|
|||||||
QUICK ?=
|
QUICK ?=
|
||||||
VIRTUAL_ENV ?= .virtualenv-$(PYTHON_BASENAME)
|
VIRTUAL_ENV ?= .virtualenv-$(PYTHON_BASENAME)
|
||||||
PIP ?= $(VIRTUAL_ENV)/bin/pip
|
PIP ?= $(VIRTUAL_ENV)/bin/pip
|
||||||
PIP_INSTALL_OPTIONS ?=
|
|
||||||
PYTEST ?= $(VIRTUAL_ENV)/bin/pytest
|
PYTEST ?= $(VIRTUAL_ENV)/bin/pytest
|
||||||
PYTEST_OPTIONS ?= --capture=no --cov=bonobo --cov-report html
|
PYTEST_OPTIONS ?= --capture=no --cov=bonobo --cov-report html
|
||||||
SPHINX_OPTS ?=
|
SPHINX_OPTS ?=
|
||||||
@ -25,13 +24,13 @@ YAPF_OPTIONS ?= -rip
|
|||||||
# Installs the local project dependencies.
|
# Installs the local project dependencies.
|
||||||
install: $(VIRTUAL_ENV)
|
install: $(VIRTUAL_ENV)
|
||||||
if [ -z "$(QUICK)" ]; then \
|
if [ -z "$(QUICK)" ]; then \
|
||||||
$(PIP) install -U pip wheel $(PIP_INSTALL_OPTIONS) -r $(PYTHON_REQUIREMENTS_FILE) ; \
|
$(PIP) install -U pip wheel -r $(PYTHON_REQUIREMENTS_FILE) ; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Installs the local project dependencies, including development-only libraries.
|
# Installs the local project dependencies, including development-only libraries.
|
||||||
install-dev: $(VIRTUAL_ENV)
|
install-dev: $(VIRTUAL_ENV)
|
||||||
if [ -z "$(QUICK)" ]; then \
|
if [ -z "$(QUICK)" ]; then \
|
||||||
$(PIP) install -U pip wheel $(PIP_INSTALL_OPTIONS) -r $(PYTHON_REQUIREMENTS_DEV_FILE) ; \
|
$(PIP) install -U pip wheel -r $(PYTHON_REQUIREMENTS_DEV_FILE) ; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Cleans up the local mess.
|
# Cleans up the local mess.
|
||||||
|
|||||||
@ -22,6 +22,7 @@ enable_features = {
|
|||||||
|
|
||||||
install_requires = [
|
install_requires = [
|
||||||
'blessings >=1.6,<1.7',
|
'blessings >=1.6,<1.7',
|
||||||
|
'colorama >=0.3,<0.4',
|
||||||
'psutil >=5.0,<5.1',
|
'psutil >=5.0,<5.1',
|
||||||
'requests >=2.12,<2.13',
|
'requests >=2.12,<2.13',
|
||||||
'stevedore >=1.19,<1.20',
|
'stevedore >=1.19,<1.20',
|
||||||
|
|||||||
@ -164,8 +164,7 @@ class LoopingExecutionContext(Wrapper):
|
|||||||
:return: to hell
|
:return: to hell
|
||||||
"""
|
"""
|
||||||
|
|
||||||
from blessings import Terminal
|
from bonobo.util import terminal as term
|
||||||
term = Terminal()
|
|
||||||
print(term.bold(term.red('\U0001F4A3 {} in {}'.format(type(exc).__name__, self.wrapped))))
|
print(term.bold(term.red('\U0001F4A3 {} in {}'.format(type(exc).__name__, self.wrapped))))
|
||||||
print(trace)
|
print(trace)
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from blessings import Terminal
|
|
||||||
|
|
||||||
from bonobo import Tee, JsonWriter, Graph, get_examples_path
|
from bonobo import Tee, JsonWriter, Graph, get_examples_path
|
||||||
from bonobo.ext.opendatasoft import OpenDataSoftAPI
|
from bonobo.ext.opendatasoft import OpenDataSoftAPI
|
||||||
|
|
||||||
@ -15,7 +13,6 @@ API_DATASET = 'fablabs-in-the-world'
|
|||||||
API_NETLOC = 'datanova.laposte.fr'
|
API_NETLOC = 'datanova.laposte.fr'
|
||||||
ROWS = 100
|
ROWS = 100
|
||||||
|
|
||||||
t = Terminal()
|
|
||||||
__path__ = os.path.dirname(__file__)
|
__path__ = os.path.dirname(__file__)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -21,8 +21,7 @@ import blessings
|
|||||||
import psutil
|
import psutil
|
||||||
|
|
||||||
from bonobo.core.plugins import Plugin
|
from bonobo.core.plugins import Plugin
|
||||||
|
from bonobo.util import terminal as t
|
||||||
t = blessings.Terminal()
|
|
||||||
|
|
||||||
|
|
||||||
@lru_cache(1)
|
@lru_cache(1)
|
||||||
|
|||||||
@ -3,20 +3,21 @@
|
|||||||
import functools
|
import functools
|
||||||
from pprint import pprint as _pprint
|
from pprint import pprint as _pprint
|
||||||
|
|
||||||
import blessings
|
|
||||||
|
|
||||||
from .helpers import console_run, jupyter_run
|
|
||||||
from .tokens import NOT_MODIFIED
|
from .tokens import NOT_MODIFIED
|
||||||
|
|
||||||
|
import colorama as _colorama
|
||||||
|
_colorama.init()
|
||||||
|
import blessings as _blessings
|
||||||
|
terminal = _blessings.Terminal()
|
||||||
|
|
||||||
__all__ = [
|
__all__ = [
|
||||||
'Limit',
|
'Limit',
|
||||||
'NOT_MODIFIED',
|
'NOT_MODIFIED',
|
||||||
'PrettyPrint',
|
'PrettyPrint',
|
||||||
'Tee',
|
'Tee',
|
||||||
'console_run',
|
|
||||||
'jupyter_run',
|
|
||||||
'noop',
|
'noop',
|
||||||
'pprint',
|
'pprint',
|
||||||
|
'terminal',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
@ -51,10 +52,9 @@ pprint = Tee(_pprint)
|
|||||||
|
|
||||||
|
|
||||||
def PrettyPrint(title_keys=('title', 'name', 'id'), print_values=True, sort=True):
|
def PrettyPrint(title_keys=('title', 'name', 'id'), print_values=True, sort=True):
|
||||||
term = blessings.Terminal()
|
|
||||||
|
|
||||||
def _pprint(*args, **kwargs):
|
def _pprint(*args, **kwargs):
|
||||||
nonlocal title_keys, term, sort, print_values
|
global terminal
|
||||||
|
nonlocal title_keys, sort, print_values
|
||||||
|
|
||||||
row = args[0]
|
row = args[0]
|
||||||
for key in title_keys:
|
for key in title_keys:
|
||||||
|
|||||||
@ -7,6 +7,7 @@ dependencies:
|
|||||||
- pip:
|
- pip:
|
||||||
- psycopg2 >=2.6.1
|
- psycopg2 >=2.6.1
|
||||||
- blessings >=1.6,<1.7
|
- blessings >=1.6,<1.7
|
||||||
|
- colorama >=0.3,<0.4
|
||||||
- psutil >=5.0,<5.1
|
- psutil >=5.0,<5.1
|
||||||
- requests >=2.12,<2.13
|
- requests >=2.12,<2.13
|
||||||
- stevedore >=1.19,<1.20
|
- stevedore >=1.19,<1.20
|
||||||
|
|||||||
64
setup.py
64
setup.py
@ -8,71 +8,63 @@ root_dir = os.path.dirname(os.path.abspath(__file__))
|
|||||||
|
|
||||||
tolines = lambda c: list(filter(None, map(lambda s: s.strip(), c.split('\n'))))
|
tolines = lambda c: list(filter(None, map(lambda s: s.strip(), c.split('\n'))))
|
||||||
|
|
||||||
|
|
||||||
def read(filename, flt=None):
|
def read(filename, flt=None):
|
||||||
try:
|
try:
|
||||||
with open(filename) as f:
|
with open(filename) as f:
|
||||||
content = f.read().strip()
|
content = f.read().strip()
|
||||||
return flt(content) if callable(flt) else content
|
return flt(content) if callable(flt) else content
|
||||||
except EnvironmentError:
|
except FileNotFoundError:
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
|
|
||||||
# Py3 compatibility hacks, borrowed from IPython.
|
# Py3 compatibility hacks, borrowed from IPython.
|
||||||
try:
|
try:
|
||||||
execfile
|
execfile
|
||||||
except NameError:
|
except NameError:
|
||||||
|
|
||||||
def execfile(fname, globs, locs=None):
|
def execfile(fname, globs, locs=None):
|
||||||
locs = locs or globs
|
locs = locs or globs
|
||||||
exec(compile(open(fname).read(), fname, "exec"), globs, locs)
|
exec(compile(open(fname).read(), fname, "exec"), globs, locs)
|
||||||
|
|
||||||
|
|
||||||
version_ns = {}
|
version_ns = {}
|
||||||
try:
|
|
||||||
execfile(os.path.join(root_dir, 'bonobo/_version.py'), version_ns)
|
execfile(os.path.join(root_dir, 'bonobo/_version.py'), version_ns)
|
||||||
except EnvironmentError:
|
|
||||||
version = 'dev'
|
|
||||||
else:
|
|
||||||
version = version_ns.get('__version__', 'dev')
|
version = version_ns.get('__version__', 'dev')
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name = 'bonobo',
|
name = 'bonobo',
|
||||||
description = 'Bonobo',
|
description = 'Bonobo',
|
||||||
license = 'Apache License, Version 2.0',
|
license = 'Apache License, Version 2.0',
|
||||||
install_requires=[
|
install_requires = ['blessings >=1.6,<1.7',
|
||||||
'blessings >=1.6,<1.7', 'psutil >=5.0,<5.1', 'requests >=2.12,<2.13', 'stevedore >=1.19,<1.20',
|
'colorama >=0.3,<0.4',
|
||||||
'toolz >=0.8,<0.9'
|
'psutil >=5.0,<5.1',
|
||||||
],
|
'requests >=2.12,<2.13',
|
||||||
|
'stevedore >=1.19,<1.20',
|
||||||
|
'toolz >=0.8,<0.9'],
|
||||||
version = version,
|
version = version,
|
||||||
long_description = read('README.rst'),
|
long_description = read('README.rst'),
|
||||||
classifiers = read('classifiers.txt', tolines),
|
classifiers = read('classifiers.txt', tolines),
|
||||||
packages = find_packages(exclude=['ez_setup', 'example', 'test']),
|
packages = find_packages(exclude=['ez_setup', 'example', 'test']),
|
||||||
include_package_data = True,
|
include_package_data = True,
|
||||||
data_files=[
|
data_files = [('share/jupyter/nbextensions/bonobo-jupyter',
|
||||||
(
|
['bonobo/ext/jupyter/static/extension.js',
|
||||||
'share/jupyter/nbextensions/bonobo-jupyter', [
|
'bonobo/ext/jupyter/static/index.js',
|
||||||
'bonobo/ext/jupyter/static/extension.js', 'bonobo/ext/jupyter/static/index.js',
|
'bonobo/ext/jupyter/static/index.js.map'])],
|
||||||
'bonobo/ext/jupyter/static/index.js.map'
|
extras_require = {'dev': ['coverage >=4.3,<4.4',
|
||||||
]
|
'mock >=2.0,<2.1',
|
||||||
)
|
'nose >=1.3,<1.4',
|
||||||
],
|
'pylint >=1.6,<1.7',
|
||||||
extras_require={
|
'pytest >=3,<4',
|
||||||
'dev': [
|
'pytest-cov >=2.4,<2.5',
|
||||||
'coverage >=4.3,<4.4', 'mock >=2.0,<2.1', 'nose >=1.3,<1.4', 'pylint >=1.6,<1.7', 'pytest >=3,<4',
|
'pytest-timeout >=1.2,<1.3',
|
||||||
'pytest-cov >=2.4,<2.5', 'pytest-timeout >=1.2,<1.3', 'sphinx', 'sphinx_rtd_theme', 'yapf'
|
'sphinx',
|
||||||
],
|
'sphinx_rtd_theme',
|
||||||
'jupyter': ['jupyter >=1.0,<1.1', 'ipywidgets >=6.0.0.beta5']
|
'yapf'],
|
||||||
},
|
'jupyter': ['jupyter >=1.0,<1.1', 'ipywidgets >=6.0.0.beta5']},
|
||||||
entry_points={
|
entry_points = {'bonobo.commands': ['init = bonobo.commands.init:register',
|
||||||
'bonobo.commands': [
|
'run = bonobo.commands.run:register',
|
||||||
'init = bonobo.commands.init:register', 'run = bonobo.commands.run:register',
|
'version = bonobo.commands.version:register'],
|
||||||
'version = bonobo.commands.version:register'
|
'console_scripts': ['bonobo = bonobo.commands:entrypoint',
|
||||||
],
|
'bb = bonobo.commands:entrypoint'],
|
||||||
'console_scripts': ['bonobo = bonobo.commands:entrypoint', 'bb = bonobo.commands:entrypoint'],
|
|
||||||
'edgy.project.features': ['bonobo = '
|
'edgy.project.features': ['bonobo = '
|
||||||
'bonobo.ext.edgy.project.feature:BonoboFeature']
|
'bonobo.ext.edgy.project.feature:BonoboFeature']},
|
||||||
},
|
|
||||||
url = 'https://bonobo-project.org/',
|
url = 'https://bonobo-project.org/',
|
||||||
download_url = 'https://github.com/python-bonobo/bonobo/tarball/{version}'.format(version=version),
|
download_url = 'https://github.com/python-bonobo/bonobo/tarball/{version}'.format(version=version),
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user