gentoo/dev-python/nose/files/nose-1.3.1-python3.4.patch
Robin H. Johnson 56bd759df1
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.

This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.

Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.

Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
2015-08-08 17:38:18 -07:00

42 lines
1.5 KiB
Diff

From 192694ed9f70447317bd54e427a17208bddf03be Mon Sep 17 00:00:00 2001
From: John Szakmeister <john@szakmeister.net>
Date: Sat, 15 Mar 2014 06:15:42 -0400
Subject: [PATCH] Fix #783: try_run is broken with Python 3.4
It turns out that we expected inspect.getargspec() to only work on
functions (versus classes that are callable). Python 3.4 has changed
this behavior and now happily returns the arg spec. Let's try to detect
this situation by checking the __call__() method to if it's actually the
method of a class. If so, pop the 'self' argument off of args--similar
to what's done in the exceptional case below.
---
CHANGELOG | 1 +
nose/util.py | 4 +++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/nose/util.py b/nose/util.py
index 7995700..dcb5fef 100644
--- a/nose/util.py
+++ b/nose/util.py
@@ -8,7 +8,7 @@
import sys
import types
import unittest
-from nose.pyversion import ClassType, TypeType, isgenerator
+from nose.pyversion import ClassType, TypeType, isgenerator, ismethod
log = logging.getLogger('nose')
@@ -449,6 +449,8 @@ def try_run(obj, names):
# py.test compatibility
try:
args, varargs, varkw, defaults = inspect.getargspec(func)
+ if hasattr(func, '__call__') and ismethod(func.__call__):
+ args.pop(0)
except TypeError:
# Not a function. If it's callable, call it anyway
if hasattr(func, '__call__'):
--
1.8.5.5