svn commit: r501964 - in head/devel/py-cbor2: . files
Kubilay Kocak
koobs at FreeBSD.org
Sat May 18 15:46:38 UTC 2019
Author: koobs
Date: Sat May 18 15:46:36 2019
New Revision: 501964
URL: https://svnweb.freebsd.org/changeset/ports/501964
Log:
devel/py-cbor2: Remove Python 3 support restriction
This package supports Python 3.x support, so allow it accordingly. It is
required for an upcoming www/py-autobahn update (Python 2/3 compatible).
During QA, a UnicodeDecodeError was observed running tests under Python 3:
File "/usr/local/lib/python3.6/site-packages/py/_vendored_packages/iniconfig.py", line 82, in _parse
for lineno, line in enumerate(line_iter):
File "/usr/local/lib/python3.6/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 165: ordinal not in range(128)
pytest uses the py package, which vendors the iniconfig package, which
isn't unicode aware [1][2][3]. Patch out unicode characters from setup.cfg
accordingly until it's resolved.
While investigating the cause of the above issue, a fix for setup.cfg's
encoding was identified, which removes the need to set the locale via
USE_LOCALE so remove it accordingly.
While I'm here:
- Pet portlint, spurious space at end of line in pkg-descr
- Add LICENSE_FILE/TEST_DEPENDS/test target/NO_ARCH
[1] https://github.com/pytest-dev/pytest/issues/3799
[2] https://github.com/RonnyPfannschmidt/iniconfig/issues/5
[3] https://github.com/RonnyPfannschmidt/iniconfig/issues/4
portlint: OK (looks fine.)
porttest: OK (poudriere: 12amd64{py36,py27})
maketest: 215 passed, 1 skipped in 3.29 seconds (Python 2.7)
maketest: 209 passed, 7 skipped in 3.07 seconds (Python 3.6)
Approved by: portmgr (blanket: ports/framework compliance)
MFH: 2019Q2
Added:
head/devel/py-cbor2/files/
head/devel/py-cbor2/files/patch-setup.cfg (contents, props changed)
Modified:
head/devel/py-cbor2/Makefile
head/devel/py-cbor2/pkg-descr
Modified: head/devel/py-cbor2/Makefile
==============================================================================
--- head/devel/py-cbor2/Makefile Sat May 18 14:43:34 2019 (r501963)
+++ head/devel/py-cbor2/Makefile Sat May 18 15:46:36 2019 (r501964)
@@ -3,6 +3,7 @@
PORTNAME= cbor2
PORTVERSION= 4.1.2
+PORTREVISION= 1
CATEGORIES= devel python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,12 +12,17 @@ MAINTAINER= dvl at FreeBSD.org
COMMENT= Pure Python CBOR (de)serializer with extensive tag support
LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>0:devel/py-setuptools_scm@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools_scm>=1.7.0:devel/py-setuptools_scm@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR}
-USES= python:2.7
+USES= python
USE_PYTHON= autoplist concurrent distutils
-USE_LOCALE= en_US.UTF-8
+NO_ARCH= yes
+
+do-test:
+ @cd ${WRKSRC} && ${PYTHON_CMD} -m pytest -v -rs
.include <bsd.port.mk>
Added: head/devel/py-cbor2/files/patch-setup.cfg
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/py-cbor2/files/patch-setup.cfg Sat May 18 15:46:36 2019 (r501964)
@@ -0,0 +1,37 @@
+# Added encoding declaration to setup.cfg
+# https://github.com/agronholm/cbor2/commit/ba05c122
+# https://github.com/agronholm/cbor2/issues/38
+
+# pytest uses py which vendors iniconfig, which isn't unicode aware
+# Patch out unicode characters for now
+# https://github.com/pytest-dev/pytest/issues/3799
+# https://github.com/RonnyPfannschmidt/iniconfig/issues/5
+# https://github.com/RonnyPfannschmidt/iniconfig/issues/4
+
+# coverage is not a compulsory dependency
+# this block clobbers ports pytest args
+
+--- setup.cfg.orig 2018-12-10 13:39:24 UTC
++++ setup.cfg
+@@ -1,8 +1,9 @@
++# coding: utf-8
+ [metadata]
+ name = cbor2
+ description = Pure Python CBOR (de)serializer with extensive tag support
+ long_description = file: README.rst
+-author = Alex Grönholm
++author = Alex Gronholm
+ author_email = alex.gronholm at nextday.fi
+ project_urls =
+ Documentation = https://cbor2.readthedocs.org/en/latest/
+@@ -30,10 +31,6 @@ packages = find:
+ test =
+ pytest
+ pytest-cov
+-
+-[tool:pytest]
+-addopts = -rsx --cov --tb=short
+-testpaths = tests
+
+ [coverage:run]
+ source = cbor2
Modified: head/devel/py-cbor2/pkg-descr
==============================================================================
--- head/devel/py-cbor2/pkg-descr Sat May 18 14:43:34 2019 (r501963)
+++ head/devel/py-cbor2/pkg-descr Sat May 18 15:46:36 2019 (r501964)
@@ -5,7 +5,7 @@ There exists another Python CBOR implementation (cbor)
CPython due to its C extensions. On PyPy, cbor2 and cbor are almost identical
in performance. The other implementation also lacks documentation and a
comprehensive test suite, does not support most standard extension tags and is
-known to crash (segfault) when passed a cyclic structure (say, a list
+known to crash (segfault) when passed a cyclic structure (say, a list
containing itself).
WWW: https://pypi.org/project/cbor2/
More information about the svn-ports-all
mailing list