ports/186802: [MAINTAINER] math/py-pandas: Update to 0.13.1
John W. O'Brien
john at saltant.com
Sat Feb 15 21:20:00 UTC 2014
>Number: 186802
>Category: ports
>Synopsis: [MAINTAINER] math/py-pandas: Update to 0.13.1
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Sat Feb 15 21:20:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator: John W. O'Brien
>Release: FreeBSD 9.2-STABLE amd64
>Organization:
Saltant Solutions
>Environment:
System: FreeBSD XXXX.saltant.net 9.2-STABLE FreeBSD 9.2-STABLE #1 r260112: Mon Dec 30 18:26:07 EST 2013 root at XXXX.saltant.net:/usr/obj/usr/src/sys/NARB amd64
>Description:
Change log
==========
* Update to 0.13.1
* Remove lang/cython from BUILD_DEPENDS now that distfile is fixed
* Include RUN_DEPENDS in TEST_DEPENDS
* Add devel/py-boto to TEST_DEPENDS for completeness with pkg-message
* Remove math/py-statsmodels from TEST_DEPENDS to break circular dependency
* Fix regression-test target to work with non-GitHub distfile which omits
the ci/ directory. Borrow the print_skipped.py script to do this.
QA
==
% portlint -a
WARN: Makefile: wrong dependency value for TEST_DEPENDS. TEST_DEPENDS requires 2 or 3 colon-separated tuples.
0 fatal errors and 1 warning found.
RedPorts:
https://redports.org/buildarchive/20140215211501-13420/
>How-To-Repeat:
N/A
>Fix:
Apply the attached patch.
--- patch-math_py-pandas-0.13.1.txt begins here ---
Index: /usr/ports/math/py-pandas/Makefile
===================================================================
--- /usr/ports/math/py-pandas/Makefile (revision 344469)
+++ /usr/ports/math/py-pandas/Makefile (working copy)
@@ -1,7 +1,7 @@
# $FreeBSD$
PORTNAME= pandas
-PORTVERSION= 0.13.0
+PORTVERSION= 0.13.1
CATEGORIES= math devel python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,26 +11,28 @@
LICENSE= BSD3CLAUSE
-BUILD_DEPENDS= ${PYNUMPY} \
- cython:${PORTSDIR}/lang/cython
+BUILD_DEPENDS= ${PYNUMPY}
RUN_DEPENDS:= ${BUILD_DEPENDS} \
${PYTHON_PKGNAMEPREFIX}dateutil>0:${PORTSDIR}/devel/py-dateutil \
${PYTHON_PKGNAMEPREFIX}pytz>0:${PORTSDIR}/devel/py-pytz \
${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3
-TEST_DEPENDS= nosetests:${PORTSDIR}/devel/py-nose \
+TEST_DEPENDS= ${RUN_DEPENDS} \
+ nosetests:${PORTSDIR}/devel/py-nose \
cython:${PORTSDIR}/lang/cython \
+ ${PYTHON_PKGNAMEPREFIX}boto>0:${PORTSDIR}/devel/py-boto \
+ ${PYTHON_PKGNAMEPREFIX}lxml>0:${PORTSDIR}/devel/py-lxml \
+ ${PYTHON_PKGNAMEPREFIX}tables>0:${PORTSDIR}/devel/py-tables \
+ ${PYTHON_PKGNAMEPREFIX}bottleneck>0:${PORTSDIR}/math/py-bottleneck \
+ ${PYTHON_PKGNAMEPREFIX}matplotlib>0:${PORTSDIR}/math/py-matplotlib \
${PYTHON_PKGNAMEPREFIX}numexpr>0:${PORTSDIR}/math/py-numexpr \
- ${PYTHON_PKGNAMEPREFIX}tables>0:${PORTSDIR}/devel/py-tables \
${PYTHON_PKGNAMEPREFIX}scipy>0:${PORTSDIR}/science/py-scipy \
- ${PYTHON_PKGNAMEPREFIX}matplotlib>0:${PORTSDIR}/math/py-matplotlib \
+ ${PYTHON_PKGNAMEPREFIX}openpyxl>0:${PORTSDIR}/textproc/py-openpyxl \
${PYTHON_PKGNAMEPREFIX}xlrd>0:${PORTSDIR}/textproc/py-xlrd \
${PYTHON_PKGNAMEPREFIX}xlwt>0:${PORTSDIR}/textproc/py-xlwt \
- ${PYTHON_PKGNAMEPREFIX}openpyxl>0:${PORTSDIR}/textproc/py-openpyxl \
- ${PYTHON_PKGNAMEPREFIX}statsmodels>0:${PORTSDIR}/math/py-statsmodels \
- ${PYTHON_PKGNAMEPREFIX}bottleneck>0:${PORTSDIR}/math/py-bottleneck \
${PYTHON_PKGNAMEPREFIX}beautifulsoup>0:${PORTSDIR}/www/py-beautifulsoup \
- ${PYTHON_PKGNAMEPREFIX}html5lib>0:${PORTSDIR}/www/py-html5lib \
- ${PYTHON_PKGNAMEPREFIX}lxml>0:${PORTSDIR}/devel/py-lxml
+ ${PYTHON_PKGNAMEPREFIX}html5lib>0:${PORTSDIR}/www/py-html5lib
+# Note: we cannot include math/py-statsmodels in TEST_DEPENDS because it
+# depends upon us for BUILD and RUN.
SUB_FILES= pkg-message
@@ -42,12 +44,16 @@
# on a headless (X11-less) host (eg: RedPorts)
#USES= display:regression-test
+XUNITFILE= ${WRKDIR}/nosetests.xml
+NOSE_ENV= http_proxy=${HTTP_PROXY}
+NOSE_ARGS= ${PORTNAME} --exe --with-xunit --xunit-file=${XUNITFILE}
+
regression-test: build
@(cd ${WRKSRC} && \
${PYTHON_CMD} ${PYSETUP} build_ext --inplace && \
- ${PYTHON_CMD} ci/print_versions.py \
- ci/script.sh \
- ${PYTHON_CMD} ci/print_skipped.py \
+ ${PYTHON_CMD} -c 'import pandas.util.print_versions as pv; pv.show_versions()' && \
+ ( ${SETENV} ${NOSE_ENV} nosetests ${NOSE_ARGS} || ${TRUE} ) && \
+ ${PYTHON_CMD} ${SCRIPTDIR}/print_skipped.py ${XUNITFILE} \
)
.include <bsd.port.mk>
Index: /usr/ports/math/py-pandas/distinfo
===================================================================
--- /usr/ports/math/py-pandas/distinfo (revision 344469)
+++ /usr/ports/math/py-pandas/distinfo (working copy)
@@ -1,2 +1,2 @@
-SHA256 (pandas-0.13.0.tar.gz) = f034cd298e0d68fee24a2b0a68a9b8da41978d6f39474f908f7f352904ef7f3c
-SIZE (pandas-0.13.0.tar.gz) = 3572047
+SHA256 (pandas-0.13.1.tar.gz) = 6813746caa796550969ed98069f16627f070f6d8d60686cfb3fa0e66c2e0312b
+SIZE (pandas-0.13.1.tar.gz) = 6096890
Index: /usr/ports/math/py-pandas/scripts/print_skipped.py
===================================================================
--- /usr/ports/math/py-pandas/scripts/print_skipped.py (revision 0)
+++ /usr/ports/math/py-pandas/scripts/print_skipped.py (working copy)
@@ -0,0 +1,51 @@
+#!/usr/bin/env python
+
+import sys
+import math
+import xml.etree.ElementTree as et
+
+
+def parse_results(filename):
+ tree = et.parse(filename)
+ root = tree.getroot()
+ skipped = []
+
+ current_class = old_class = ''
+ i = 1
+ assert i - 1 == len(skipped)
+ for el in root.findall('testcase'):
+ cn = el.attrib['classname']
+ for sk in el.findall('skipped'):
+ old_class = current_class
+ current_class = cn
+ name = '{classname}.{name}'.format(classname=current_class,
+ name=el.attrib['name'])
+ msg = sk.attrib['message']
+ out = ''
+ if old_class != current_class:
+ ndigits = int(math.log(i, 10) + 1)
+ out += ('-' * (len(name + msg) + 4 + ndigits) + '\n') # 4 for : + space + # + space
+ out += '#{i} {name}: {msg}'.format(i=i, name=name, msg=msg)
+ skipped.append(out)
+ i += 1
+ assert i - 1 == len(skipped)
+ assert i - 1 == len(skipped)
+ assert len(skipped) == int(root.attrib['skip'])
+ return '\n'.join(skipped)
+
+
+def main(args):
+ print('SKIPPED TESTS:')
+ print(parse_results(args.filename))
+ return 0
+
+
+def parse_args():
+ import argparse
+ parser = argparse.ArgumentParser()
+ parser.add_argument('filename', help='XUnit file to parse')
+ return parser.parse_args()
+
+
+if __name__ == '__main__':
+ sys.exit(main(parse_args()))
Property changes on: /usr/ports/math/py-pandas/scripts/print_skipped.py
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
--- patch-math_py-pandas-0.13.1.txt ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list