From e40c3eb8c9f7a31d1ae87e26d3d669c83a4d8227 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Wed, 27 Jan 2016 11:10:40 -0800 Subject: [PATCH] Revert "Fix min()/max() overloading with key= parameter. Fixes #1150." It has other problems, e.g. complains about max(x, 10) when the type of x is Any. This reverts commit 6a47ac7116d4e07372036be77e5de449b00e9e5e. --- stdlib/2.7/__builtin__.pyi | 8 ++++---- stdlib/3/builtins.pyi | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/stdlib/2.7/__builtin__.pyi b/stdlib/2.7/__builtin__.pyi index 2d01c96ca..17a0789d1 100644 --- a/stdlib/2.7/__builtin__.pyi +++ b/stdlib/2.7/__builtin__.pyi @@ -661,14 +661,14 @@ def map(func: Callable[[_T1, _T2], _S], iter1: Iterable[_T1], iter2: Iterable[_T2]) -> List[_S]: ... # TODO more than two iterables @overload -def max(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... +def max(arg1: _T, arg2: _T, *args: _T) -> _T: ... @overload -def max(arg1: _T, arg2: _T, *args: _T, key: Callable[[_T], Any] = None) -> _T: ... +def max(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... # TODO memoryview @overload -def min(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... +def min(arg1: _T, arg2: _T, *args: _T) -> _T: ... @overload -def min(arg1: _T, arg2: _T, *args: _T, key: Callable[[_T], Any] = None) -> _T: ... +def min(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... @overload def next(i: Iterator[_T]) -> _T: ... @overload diff --git a/stdlib/3/builtins.pyi b/stdlib/3/builtins.pyi index d8307c768..cbf96d2c2 100644 --- a/stdlib/3/builtins.pyi +++ b/stdlib/3/builtins.pyi @@ -658,14 +658,14 @@ def map(func: Callable[[_T1], _S], iter1: Iterable[_T1]) -> Iterator[_S]: ... def map(func: Callable[[_T1, _T2], _S], iter1: Iterable[_T1], iter2: Iterable[_T2]) -> Iterator[_S]: ... # TODO more than two iterables @overload -def max(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... +def max(arg1: _T, arg2: _T, *args: _T) -> _T: ... @overload -def max(arg1: _T, arg2: _T, *args: _T, key: Callable[[_T], Any] = None) -> _T: ... +def max(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... # TODO memoryview @overload -def min(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... +def min(arg1: _T, arg2: _T, *args: _T) -> _T: ... @overload -def min(arg1: _T, arg2: _T, *args: _T, key: Callable[[_T], Any] = None) -> _T: ... +def min(iterable: Iterable[_T], key: Callable[[_T], Any] = None) -> _T: ... @overload def next(i: Iterator[_T]) -> _T: ... @overload