diff options
author | Ionel Cristian Mărieș <contact@ionelmc.ro> | 2017-03-14 06:51:42 +0200 |
---|---|---|
committer | Ionel Cristian Mărieș <contact@ionelmc.ro> | 2017-03-14 06:51:42 +0200 |
commit | 9194a0e15815dc0f778796934a77c6a9d0198e21 (patch) | |
tree | 2d5b1f28440d8807df7a97cee3a3d042242c2878 | |
parent | a1fccf652380394d960a5b4fd9648bb74cd9dc5f (diff) |
Updaet various project skel things and drop 2.6 from tests.
-rw-r--r-- | .bumpversion.cfg | 2 | ||||
-rw-r--r-- | .cookiecutterrc | 8 | ||||
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | .travis.yml | 23 | ||||
-rw-r--r-- | CONTRIBUTING.rst | 2 | ||||
-rw-r--r-- | LICENSE | 2 | ||||
-rw-r--r-- | README.rst | 19 | ||||
-rw-r--r-- | appveyor.yml | 26 | ||||
-rw-r--r-- | ci/appveyor-bootstrap.py | 1 | ||||
-rwxr-xr-x | ci/appveyor-download.py | 6 | ||||
-rwxr-xr-x | ci/bootstrap.py | 13 | ||||
-rw-r--r-- | ci/templates/.travis.yml | 5 | ||||
-rw-r--r-- | docs/conf.py | 4 | ||||
-rw-r--r-- | setup.cfg | 12 | ||||
-rw-r--r-- | setup.py | 1 | ||||
-rw-r--r-- | tox.ini | 13 |
16 files changed, 51 insertions, 87 deletions
diff --git a/.bumpversion.cfg b/.bumpversion.cfg index e8a0d70..4535a89 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -5,6 +5,8 @@ tag = True [bumpversion:file:setup.py] +[bumpversion:file:README.rst] + [bumpversion:file:docs/conf.py] [bumpversion:file:src/tblib/__init__.py] diff --git a/.cookiecutterrc b/.cookiecutterrc index ab6d10a..04e27da 100644 --- a/.cookiecutterrc +++ b/.cookiecutterrc @@ -2,7 +2,7 @@ cookiecutter: appveyor: 'yes' - c_extension_cython: 'yes' + c_extension_cython: 'no' c_extension_optional: 'no' c_extension_support: 'no' codacy: 'yes' @@ -19,7 +19,7 @@ cookiecutter: package_name: tblib project_name: tblib project_short_description: Traceback serialization library. - release_date: '2015-12-18' + release_date: '2016-03-08' repo_name: python-tblib requiresio: 'yes' scrutinizer: 'yes' @@ -29,6 +29,6 @@ cookiecutter: test_matrix_separate_coverage: 'no' test_runner: pytest travis: 'yes' - version: 1.2.0 + version: 1.3.0 website: http://blog.ionelmc.ro - year: 2013-2016 + year: 2013-2017 @@ -14,6 +14,7 @@ parts bin var sdist +wheelhouse develop-eggs .installed.cfg lib diff --git a/.travis.yml b/.travis.yml index e19130f..fd82b90 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,35 +10,24 @@ env: - TOXENV=docs matrix: include: - - - python: 2.6 - env: - - TOXENV=py26,coveralls,codecov - - python: 2.7 env: - - TOXENV=py27,coveralls,codecov - + - TOXENV=py27,report,coveralls,codecov - python: 3.3 env: - - TOXENV=py33,coveralls,codecov - + - TOXENV=py33,report,coveralls,codecov - python: 3.4 env: - - TOXENV=py34,coveralls,codecov - + - TOXENV=py34,report,coveralls,codecov - python: 3.5 env: - - TOXENV=py35,coveralls,codecov - + - TOXENV=py35,report,coveralls,codecov - python: 3.6 env: - - TOXENV=py36,coveralls,codecov - + - TOXENV=py36,report,coveralls,codecov - python: pypy env: - - TOXENV=pypy,coveralls,codecov - + - TOXENV=pypy,report,coveralls,codecov before_install: - python --version - uname -a diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index 85e6472..a4d4ef1 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -49,7 +49,7 @@ To set up `python-tblib` for local development: Now you can make your changes locally. -4. When you're done making changes, run all the checks, doc builder and spell checker with `tox <http://tox.readthedocs.org/en/latest/install.html>`_ one command:: +4. When you're done making changes, run all the checks, doc builder and spell checker with `tox <http://tox.readthedocs.io/en/latest/install.html>`_ one command:: tox @@ -1,4 +1,4 @@ -Copyright (c) 2013-2016, Ionel Cristian Mărieș +Copyright (c) 2013-2017, Ionel Cristian Mărieș All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the @@ -14,7 +14,8 @@ Overview | |coveralls| |codecov| | |landscape| |scrutinizer| |codacy| |codeclimate| * - package - - |version| |downloads| |wheel| |supported-versions| |supported-implementations| + - | |version| |wheel| |supported-versions| |supported-implementations| + | |commits-since| .. |docs| image:: https://readthedocs.org/projects/python-tblib/badge/?style=flat :target: https://readthedocs.org/projects/python-tblib @@ -52,27 +53,27 @@ Overview :target: https://codeclimate.com/github/ionelmc/python-tblib :alt: CodeClimate Quality Status -.. |version| image:: https://img.shields.io/pypi/v/tblib.svg?style=flat +.. |version| image:: https://img.shields.io/pypi/v/tblib.svg :alt: PyPI Package latest release :target: https://pypi.python.org/pypi/tblib -.. |downloads| image:: https://img.shields.io/pypi/dm/tblib.svg?style=flat - :alt: PyPI Package monthly downloads - :target: https://pypi.python.org/pypi/tblib +.. |commits-since| image:: https://img.shields.io/github/commits-since/ionelmc/python-tblib/v1.3.0.svg + :alt: Commits since latest release + :target: https://github.com/ionelmc/python-tblib/compare/v1.3.0...master -.. |wheel| image:: https://img.shields.io/pypi/wheel/tblib.svg?style=flat +.. |wheel| image:: https://img.shields.io/pypi/wheel/tblib.svg :alt: PyPI Wheel :target: https://pypi.python.org/pypi/tblib -.. |supported-versions| image:: https://img.shields.io/pypi/pyversions/tblib.svg?style=flat +.. |supported-versions| image:: https://img.shields.io/pypi/pyversions/tblib.svg :alt: Supported versions :target: https://pypi.python.org/pypi/tblib -.. |supported-implementations| image:: https://img.shields.io/pypi/implementation/tblib.svg?style=flat +.. |supported-implementations| image:: https://img.shields.io/pypi/implementation/tblib.svg :alt: Supported implementations :target: https://pypi.python.org/pypi/tblib -.. |scrutinizer| image:: https://img.shields.io/scrutinizer/g/ionelmc/python-tblib/master.svg?style=flat +.. |scrutinizer| image:: https://img.shields.io/scrutinizer/g/ionelmc/python-tblib/master.svg :alt: Scrutinizer Status :target: https://scrutinizer-ci.com/g/ionelmc/python-tblib/ diff --git a/appveyor.yml b/appveyor.yml index 8141303..776475e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -11,19 +11,6 @@ environment: PYTHON_VERSION: '2.7' PYTHON_ARCH: '32' - - TOXENV: 'py26,codecov' - TOXPYTHON: C:\Python26\python.exe - PYTHON_HOME: C:\Python26 - PYTHON_VERSION: '2.6' - PYTHON_ARCH: '32' - - - TOXENV: 'py26,codecov' - TOXPYTHON: C:\Python26-x64\python.exe - WINDOWS_SDK_VERSION: v7.0 - PYTHON_HOME: C:\Python26-x64 - PYTHON_VERSION: '2.6' - PYTHON_ARCH: '64' - - TOXENV: 'py27,codecov' TOXPYTHON: C:\Python27\python.exe PYTHON_HOME: C:\Python27 @@ -37,19 +24,6 @@ environment: PYTHON_VERSION: '2.7' PYTHON_ARCH: '64' - - TOXENV: 'py33,codecov' - TOXPYTHON: C:\Python33\python.exe - PYTHON_HOME: C:\Python33 - PYTHON_VERSION: '3.3' - PYTHON_ARCH: '32' - - - TOXENV: 'py33,codecov' - TOXPYTHON: C:\Python33-x64\python.exe - WINDOWS_SDK_VERSION: v7.1 - PYTHON_HOME: C:\Python33-x64 - PYTHON_VERSION: '3.3' - PYTHON_ARCH: '64' - - TOXENV: 'py34,codecov' TOXPYTHON: C:\Python34\python.exe PYTHON_HOME: C:\Python34 diff --git a/ci/appveyor-bootstrap.py b/ci/appveyor-bootstrap.py index cf26433..d4d09dc 100644 --- a/ci/appveyor-bootstrap.py +++ b/ci/appveyor-bootstrap.py @@ -39,6 +39,7 @@ INSTALL_CMD = { "3.4": [["msiexec.exe", "/L*+!", "install.log", "/qn", "/x", "{path}"], ["msiexec.exe", "/L*+!", "install.log", "/qn", "/i", "{path}", "TARGETDIR={home}"]], "3.5": [["{path}", "/quiet", "TargetDir={home}"]], + "3.6": [["{path}", "/quiet", "TargetDir={home}"]], } diff --git a/ci/appveyor-download.py b/ci/appveyor-download.py index 3160d2e..c6fb081 100755 --- a/ci/appveyor-download.py +++ b/ci/appveyor-download.py @@ -10,9 +10,10 @@ from __future__ import unicode_literals import argparse import os -import requests import zipfile +import requests + def make_auth_headers(): """Make the authentication headers needed to use the Appveyor API.""" @@ -64,7 +65,7 @@ def download_latest_artifacts(account_project, build_id): def ensure_dirs(filename): """Make sure the directories exist for `filename`.""" - dirname, _ = os.path.split(filename) + dirname = os.path.dirname(filename) if dirname and not os.path.exists(dirname): os.makedirs(dirname) @@ -90,6 +91,7 @@ def unpack_zipfile(filename): ensure_dirs(name) z.extract(name) + parser = argparse.ArgumentParser(description='Download artifacts from AppVeyor.') parser.add_argument('--id', metavar='PROJECT_ID', diff --git a/ci/bootstrap.py b/ci/bootstrap.py index 0283662..e5292aa 100755 --- a/ci/bootstrap.py +++ b/ci/bootstrap.py @@ -4,10 +4,10 @@ from __future__ import absolute_import, print_function, unicode_literals import os import sys +from os.path import abspath +from os.path import dirname from os.path import exists from os.path import join -from os.path import dirname -from os.path import abspath if __name__ == "__main__": @@ -20,21 +20,22 @@ if __name__ == "__main__": bin_path = join(env_path, "bin") if not exists(env_path): import subprocess + print("Making bootstrap env in: {0} ...".format(env_path)) try: subprocess.check_call(["virtualenv", env_path]) - except Exception: + except subprocess.CalledProcessError: subprocess.check_call([sys.executable, "-m", "virtualenv", env_path]) - print("Installing `jinja2` into bootstrap environment ...") + print("Installing `jinja2` into bootstrap environment...") subprocess.check_call([join(bin_path, "pip"), "install", "jinja2"]) activate = join(bin_path, "activate_this.py") + # noinspection PyCompatibility exec(compile(open(activate, "rb").read(), activate, "exec"), dict(__file__=activate)) import jinja2 import subprocess - jinja = jinja2.Environment( loader=jinja2.FileSystemLoader(join(base_path, "ci", "templates")), trim_blocks=True, @@ -44,11 +45,11 @@ if __name__ == "__main__": tox_environments = [ line.strip() + # WARNING: 'tox' must be installed globally or in the project's virtualenv for line in subprocess.check_output(['tox', '--listenvs'], universal_newlines=True).splitlines() ] tox_environments = [line for line in tox_environments if line not in ['clean', 'report', 'docs', 'check']] - for name in os.listdir(join("ci", "templates")): with open(join(base_path, name), "w") as fh: fh.write(jinja.get_template(name).render(tox_environments=tox_environments)) diff --git a/ci/templates/.travis.yml b/ci/templates/.travis.yml index ab53531..6c04ae0 100644 --- a/ci/templates/.travis.yml +++ b/ci/templates/.travis.yml @@ -10,12 +10,11 @@ env: - TOXENV=docs matrix: include: -{% for env in tox_environments %}{{ '' }} +{% for env in tox_environments %} - python: {{ env.split('-')[0] if env.startswith('pypy') else '{0[2]}.{0[3]}'.format(env) }} env: - - TOXENV={{ env }},coveralls,codecov + - TOXENV={{ env }},report,coveralls,codecov {% endfor %} - before_install: - python --version - uname -a diff --git a/docs/conf.py b/docs/conf.py index 80205b5..4a0fffc 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -23,7 +23,7 @@ if os.getenv('SPELLCHECK'): source_suffix = '.rst' master_doc = 'index' project = 'tblib' -year = '2013-2016' +year = '2013-2017' author = 'Ionel Cristian Mărieș' copyright = '{0}, {1}'.format(year, author) version = release = '1.3.0' @@ -43,7 +43,7 @@ html_theme_options = { html_use_smartypants = True html_last_updated_fmt = '%b %d, %Y' -html_split_index = True +html_split_index = False html_sidebars = { '**': ['searchbox.html', 'globaltoc.html', 'sourcelink.html'], } @@ -5,7 +5,7 @@ universal = 1 max-line-length = 140 exclude = tests/*,*/migrations/*,*/south_migrations/* -[pytest] +[tool:pytest] norecursedirs = .git .tox @@ -28,10 +28,10 @@ addopts = --tb=short [isort] -force_single_line=True -line_length=120 -known_first_party=tblib -default_section=THIRDPARTY -forced_separate=test_tblib +force_single_line = True +line_length = 120 +known_first_party = tblib +default_section = THIRDPARTY +forced_separate = test_tblib not_skip = __init__.py skip = migrations, south_migrations @@ -48,7 +48,6 @@ setup( 'Operating System :: POSIX', 'Operating System :: Microsoft :: Windows', 'Programming Language :: Python', - 'Programming Language :: Python :: 2.6', 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.3', @@ -4,21 +4,19 @@ envlist = clean, check, - {py26,py27,py33,py34,py35,py36,pypy}, + {py27,py33,py34,py35,py36,pypy}, report, docs [testenv] basepython = pypy: {env:TOXPYTHON:pypy} - py26: {env:TOXPYTHON:python2.6} {py27,docs,spell}: {env:TOXPYTHON:python2.7} py33: {env:TOXPYTHON:python3.3} py34: {env:TOXPYTHON:python3.4} py35: {env:TOXPYTHON:python3.5} py36: {env:TOXPYTHON:python3.6} - {clean,check,report,coveralls,codecov}: python3.6 - bootstrap: python + {bootstrap,clean,check,report,coveralls,codecov}: python setenv = PYTHONPATH={toxinidir}/tests PYTHONUNBUFFERED=yes @@ -81,8 +79,6 @@ deps = coveralls skip_install = true commands = - coverage combine - coverage report coveralls [] [testenv:codecov] @@ -90,8 +86,6 @@ deps = codecov skip_install = true commands = - coverage combine - coverage report coverage xml --ignore-errors codecov [] @@ -100,7 +94,7 @@ commands = deps = coverage skip_install = true commands = - coverage combine + coverage combine --append coverage report coverage html @@ -108,3 +102,4 @@ commands = commands = coverage erase skip_install = true deps = coverage + |