Skip to content

Commit

Permalink
dev-python/algopy: Add py3.5 support
Browse files Browse the repository at this point in the history
* EAPI=6
* Fix one error in testsuite by
  backporting upstream fix
  b45ch1/algopy@f563d86

Package-Manager: portage-2.3.0
  • Loading branch information
SoapGentoo committed Sep 5, 2016
1 parent 10e3bb9 commit 37e723a
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 3 deletions.
7 changes: 4 additions & 3 deletions dev-python/algopy/algopy-0.5.3.ebuild
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Copyright 1999-2015 Gentoo Foundation
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=5
EAPI=6

PYTHON_COMPAT=( python2_7 python3_{3,4} )
PYTHON_COMPAT=( python2_7 python3_{3,4,5} )

inherit distutils-r1

Expand All @@ -24,6 +24,7 @@ RDEPEND="
DEPEND="${RDEPEND}
test? ( dev-python/nose[${PYTHON_USEDEP}] )
"
PATCHES=( "${FILESDIR}/${P}-fix-test-cast-ufunc.patch" )

python_test() {
${EPYTHON} run_tests.py || die
Expand Down
29 changes: 29 additions & 0 deletions dev-python/algopy/files/algopy-0.5.3-fix-test-cast-ufunc.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
From f563d86e72b32caa296ac77b0836ce0e36a5f6ab Mon Sep 17 00:00:00 2001
From: Sebastian Walter <[email protected]>
Date: Thu, 30 Jun 2016 15:11:19 +0200
Subject: [PATCH] Problem: numpy raised TypeError: Cannot cast ufunc add output
from dtype('complex128') to dtype('float64') with casting rule 'same_kind'
Solution: use numpy.add(x,y,out=x, casting='unsafe') to cast from complex to
float if necessary

---
algopy/utpm/algorithms.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/algopy/utpm/algorithms.py b/algopy/utpm/algorithms.py
index ccf7ca4..5f2651e 100644
--- a/algopy/utpm/algorithms.py
+++ b/algopy/utpm/algorithms.py
@@ -1190,9 +1190,9 @@ def _dot(cls, x_data, y_data, out = None):
for d in range(D):
for p in range(P):
for c in range(d+1):
- z_data[d,p,...] += numpy.dot(
- x_data[c,p,...],
- y_data[d-c,p,...])
+ tmp = numpy.dot(x_data[c,p,...],
+ y_data[d-c,p,...])
+ numpy.add(z_data[d,p,...], tmp, out=z_data[d,p, ...], casting='unsafe')

return out

0 comments on commit 37e723a

Please sign in to comment.