plone.api/master: Merge branch 'master' into read_only_second_approach
GitHub <jenkins-z4DKO/[email protected]>
| Newsgroups | gmane.comp.web.zope.plone.cvs |
|---|---|
| Message-ID | <[email protected]> |
Repository: plone.api
Branch: refs/heads/master
Date: 2017-07-26T07:31:47+02:00
Author: Jens W. Klein (jensens) <jk-jUMamYRpa/IasaSY4/nUZ7NldLUNz+W/@public.gmane.org>
Commit: https://github.com/plone/plone.api/commit/8a703d74ebc51964205e4797cb0a2aea5404e698
Merge branch 'master' into read_only_second_approach
Files changed:
A plone-5.1.x.cfg
A tox.ini
M .gitignore
M CHANGES.rst
M buildout.cfg
M plone-4.3.x.cfg
M plone-5.0.x.cfg
M setup.cfg
M setup.py
M src/plone/api/tests/test_portal.py
diff --git a/.gitignore b/.gitignore
index 0a7685c..fbf9d8e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,5 @@
*.mo
-*.pyc
+*.py[cod]
*~
/.Python
/.coverage
@@ -21,3 +21,7 @@
/share/
/src/plone.api.egg-info/
/var/
+/reports/
+/pip-selfcheck.json
+/_build/
+/.tox/
diff --git a/CHANGES.rst b/CHANGES.rst
index a3d178e..d4d09c7 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -13,6 +13,9 @@ New features:
- Add method to check if ZODB is in read-only mode.
[loechel]
+- added tox.ini and code convention definitions in setup.py and .editorconfig so that they could be enforced
+ [loechel]
+
Bug fixes:
- *add item here*
diff --git a/buildout.cfg b/buildout.cfg
index 02bdfa7..fe9a06a 100644
--- a/buildout.cfg
+++ b/buildout.cfg
@@ -1,10 +1,11 @@
[buildout]
-extends =
- https://raw.github.com/collective/buildout.plonetest/master/test-4.3.x.cfg
- plone-4.3.x.cfg
+
package-name = plone.api
-package-extras = [test]
-test-eggs = Pillow
+package-extras = [develop, test]
+test-eggs =
+ Pillow
+ plone.app.contenttypes
+
parts +=
omelette
code-analysis
@@ -34,14 +35,7 @@ debug-statements = True
return-status-codes = True
[versions]
-flake8 = 2.6.2
-mccabe = 0.5.2
-plone.recipe.codeanalysis = 1.0b5
-pycodestyle = 2.0.0
-pyflakes = 1.2.3
-setuptools = 21.0.0
-zc.buildout = 2.5.3
+plone.api =
-# Required by:
-# plone.recipe.codeanalysis==1.0b5
-zptlint = 0.2.4
+setuptools = 33.1.1
+zc.buildout = 2.8.0
\ No newline at end of file
diff --git a/plone-4.3.x.cfg b/plone-4.3.x.cfg
index e69de29..98c10c3 100644
--- a/plone-4.3.x.cfg
+++ b/plone-4.3.x.cfg
@@ -0,0 +1,10 @@
+[buildout]
+extends =
+ https://raw.github.com/collective/buildout.plonetest/master/test-4.3.x.cfg
+ buildout.cfg
+
+test-eggs +=
+ plone.app.contenttypes
+
+[versions]
+plone.api =
diff --git a/plone-5.0.x.cfg b/plone-5.0.x.cfg
index d32ca7a..54c048e 100644
--- a/plone-5.0.x.cfg
+++ b/plone-5.0.x.cfg
@@ -1,4 +1,8 @@
[buildout]
+extends =
+ https://raw.github.com/collective/buildout.plonetest/master/test-5.0.x.cfg
+ buildout.cfg
+
test-eggs +=
plone.app.contenttypes
diff --git a/plone-5.1.x.cfg b/plone-5.1.x.cfg
new file mode 100644
index 0000000..4ad852b
--- /dev/null
+++ b/plone-5.1.x.cfg
@@ -0,0 +1,10 @@
+[buildout]
+extends =
+ https://raw.github.com/collective/buildout.plonetest/master/test-5.1.x.cfg
+ buildout.cfg
+
+test-eggs +=
+ plone.app.contenttypes
+
+[versions]
+plone.api =
diff --git a/setup.cfg b/setup.cfg
index 927666e..cb8c9d4 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -2,3 +2,30 @@
ignore =
*.cfg
.travis.yml
+
+[flake8]
+exclude =
+ bootstrap-buildout.py,
+
+ignore =
+
+[isort]
+force_alphabetical_sort=True
+force_single_line=True
+lines_after_imports=2
+line_length=200
+not_skip=__init__.py
+
+[coverage:run]
+branch = True
+source =
+ src
+
+omit =
+ *.rst
+
+[coverage:report]
+precision = 2
+
+[coverage:html]
+directory = reports/coverage
diff --git a/setup.py b/setup.py
index a078ee0..1f339a0 100644
--- a/setup.py
+++ b/setup.py
@@ -8,6 +8,7 @@
def read(*rnames):
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
+
long_description = \
read('README.rst') + '\n\n' + \
read('CHANGES.rst') + '\n\n' + \
diff --git a/src/plone/api/tests/test_portal.py b/src/plone/api/tests/test_portal.py
index ea254ed..a2b518f 100644
--- a/src/plone/api/tests/test_portal.py
+++ b/src/plone/api/tests/test_portal.py
@@ -1,9 +1,9 @@
# -*- coding: utf-8 -*-
"""Tests for plone.api.portal."""
-from DateTime import DateTime
from datetime import date
from datetime import datetime
+from DateTime import DateTime
from email import message_from_string
from pkg_resources import parse_version
from plone.api import content
diff --git a/tox.ini b/tox.ini
new file mode 100644
index 0000000..ee8a2f9
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,117 @@
+[tox]
+envlist =
+ py27-plone-{4.3,5.0,5.1},
+ isort,
+ flake8,
+ docs,
+ coverage-report,
+
+skip_missing_interpreters = false
+
+[testenv]
+skip_install = True
+
+basepython:
+ py27: python2.7
+
+extras =
+ test
+
+commands =
+ mkdir -p {toxinidir}/reports/coverage
+ {envbindir}/buildout -c {toxinidir}/{env:BUILDOUT_FILE} buildout:directory={envdir} buildout:develop={toxinidir} bootstrap
+ {envbindir}/buildout -c {toxinidir}/{env:BUILDOUT_FILE} buildout:directory={envdir} buildout:develop={toxinidir}
+ {envbindir}/code-analysis
+ {envbindir}/coverage run {envbindir}/test -v1 --auto-color {posargs}
+
+setenv =
+ COVERAGE_FILE=.coverage.{envname}
+ plone-4.3: BUILDOUT_FILE="plone-4.3.x.cfg"
+ plone-5.0: BUILDOUT_FILE="plone-5.0.x.cfg"
+ plone-5.1: BUILDOUT_FILE="plone-5.1.x.cfg"
+
+deps =
+ pdbpp
+ setuptools==33.1.1
+ zc.buildout==2.8.0
+ coverage
+
+whitelist_externals =
+ mkdir
+
+[testenv:coverage-report]
+basepython = python2.7
+deps = coverage
+
+setenv =
+ COVERAGE_FILE=.coverage
+
+skip_install = true
+
+commands =
+ coverage erase
+ coverage combine
+ coverage report
+ coverage html
+ coverage xml
+
+[testenv:flake8]
+basepython = python2.7
+skip_install = true
+
+deps =
+ flake8
+ flake8-blind-except
+ flake8-coding
+ flake8-commas
+ flake8-debugger
+ flake8-deprecated
+ flake8-isort
+ flake8-pep3101
+ flake8-plone-api
+ flake8-plone-hasattr
+ flake8-print
+ flake8-quotes
+ flake8-string-format
+ flake8-todo
+ flake8_strict
+
+commands =
+ mkdir -p {toxinidir}/reports/flake8
+ - flake8 --format=html --htmldir={toxinidir}/reports/flake8 src setup.py
+ flake8 src setup.py
+
+whitelist_externals =
+ mkdir
+
+[testenv:isort]
+basepython = python2.7
+skip_install = true
+
+deps =
+ isort
+
+commands =
+ isort --check-only --recursive {toxinidir}/src
+
+[testenv:isort-apply]
+basepython = python2.7
+skip_install = true
+
+deps =
+ isort
+
+commands =
+ isort --apply --recursive {toxinidir}/src
+
+
+[testenv:docs]
+basepython = python2.7
+skip_install = false
+
+deps =
+ Sphinx
+
+commands =
+ sphinx-build -b html -d _build/docs/doctrees docs _build/docs/html
+ sphinx-build -b doctest docs _build/docs/doctrees
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot