Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Feb 2014 16:19:11 -0500 (EST)
From:      "John W. O'Brien" <john@saltant.com>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   ports/186802: [MAINTAINER] math/py-pandas: Update to 0.13.1
Message-ID:  <20140215211911.3932EB05D1@drivel.saltant.net>
Resent-Message-ID: <201402152120.s1FLK0sj028592@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>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@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:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140215211911.3932EB05D1>