commit: a19acb722825e935716ba8cdb7b914ed9f93b899 Author: RĂ©mi Cardona <remi <AT> gentoo <DOT> org> AuthorDate: Sun Dec 20 22:15:25 2015 +0000 Commit: Remi Cardona <remi <AT> gentoo <DOT> org> CommitDate: Tue Dec 22 07:33:26 2015 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a19acb72
dev-python/yapps: Add patches to fix python3 support Grabbed from https://github.com/smurfix/yapps/pull/2 Package-Manager: portage-2.2.26 ...nt-statements-to-python3-style-print-func.patch | 46 ++++++++++++++++++++++ ...s-Don-t-capture-sys.stderr-at-import-time.patch | 32 +++++++++++++++ dev-python/yapps/yapps-2.2.0-r1.ebuild | 29 ++++++++++++++ 3 files changed, 107 insertions(+) diff --git a/dev-python/yapps/files/yapps-Convert-print-statements-to-python3-style-print-func.patch b/dev-python/yapps/files/yapps-Convert-print-statements-to-python3-style-print-func.patch new file mode 100644 index 0000000..4bff7f8 --- /dev/null +++ b/dev-python/yapps/files/yapps-Convert-print-statements-to-python3-style-print-func.patch @@ -0,0 +1,46 @@ +From d051588873a54860cfb86ec0d330f7d855336618 Mon Sep 17 00:00:00 2001 +From: Julien Cristau <julien.cris...@logilab.fr> +Date: Tue, 2 Dec 2014 10:41:05 +0100 +Subject: [PATCH 2/2] Convert print statements to python3-style print function + +Signed-off-by: Julien Cristau <julien.cris...@logilab.fr> +--- + yapps/runtime.py | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/yapps/runtime.py b/yapps/runtime.py +index 58017fe..5d40581 100644 +--- a/yapps/runtime.py ++++ b/yapps/runtime.py +@@ -178,7 +178,7 @@ class Scanner(object): + file,line,p = pos + if file != self.filename: + if self.stack: return self.stack.print_line_with_pointer(pos,length=length,out=out) +- print >>out, "(%s: not in input buffer)" % file ++ print("(%s: not in input buffer)" % file, file=out) + return + + text = self.input +@@ -201,7 +201,7 @@ class Scanner(object): + break + spos = cr+1 + else: +- print >>out, "(%s:%d not in input buffer)" % (file,origline) ++ print("(%s:%d not in input buffer)" % (file,origline), file=out) + return + + # Now try printing part of the line +@@ -230,8 +230,8 @@ class Scanner(object): + p = p - 7 + + # Now print the string, along with an indicator +- print >>out, '> ',text +- print >>out, '> ',' '*p + '^' ++ print('> ',text, file=out) ++ print('> ',' '*p + '^', file=out) + + def grab_input(self): + """Get more input if possible.""" +-- +2.6.4 + diff --git a/dev-python/yapps/files/yapps-Don-t-capture-sys.stderr-at-import-time.patch b/dev-python/yapps/files/yapps-Don-t-capture-sys.stderr-at-import-time.patch new file mode 100644 index 0000000..1e25a00 --- /dev/null +++ b/dev-python/yapps/files/yapps-Don-t-capture-sys.stderr-at-import-time.patch @@ -0,0 +1,32 @@ +From 482faec17f1c69784d8cc2757a79809458d71154 Mon Sep 17 00:00:00 2001 +From: Julien Cristau <julien.cris...@logilab.fr> +Date: Tue, 2 Dec 2014 10:40:01 +0100 +Subject: [PATCH 1/2] Don't capture sys.stderr at import time + +Signed-off-by: Julien Cristau <julien.cris...@logilab.fr> +--- + yapps/runtime.py | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/yapps/runtime.py b/yapps/runtime.py +index 29f91e7..58017fe 100644 +--- a/yapps/runtime.py ++++ b/yapps/runtime.py +@@ -168,10 +168,13 @@ class Scanner(object): + # output += '%s\n' % (repr(t),) + # return output + +- def print_line_with_pointer(self, pos, length=0, out=sys.stderr): ++ def print_line_with_pointer(self, pos, length=0, out=None): + """Print the line of 'text' that includes position 'p', + along with a second line with a single caret (^) at position p""" + ++ if out is None: ++ out = sys.stderr ++ + file,line,p = pos + if file != self.filename: + if self.stack: return self.stack.print_line_with_pointer(pos,length=length,out=out) +-- +2.6.4 + diff --git a/dev-python/yapps/yapps-2.2.0-r1.ebuild b/dev-python/yapps/yapps-2.2.0-r1.ebuild new file mode 100644 index 0000000..6b385a5 --- /dev/null +++ b/dev-python/yapps/yapps-2.2.0-r1.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" +PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy ) + +inherit distutils-r1 + +MY_PN="Yapps" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="An easy to use parser generator" +HOMEPAGE="https://github.com/smurfix/yapps" +SRC_URI="mirror://pypi/${MY_P:0:1}/${MY_PN}/${MY_P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" +RDEPEND="" + +S="${WORKDIR}/${MY_PN}-${PV}" + +src_prepare() { + epatch "${FILESDIR}/${PN}-Don-t-capture-sys.stderr-at-import-time.patch" + epatch "${FILESDIR}/${PN}-Convert-print-statements-to-python3-style-print-func.patch" +}