Commit Graph
1569 Commits
Author SHA1 Message Date
Ethan SmithandJelle Zijlstra e9600db2ec Remove symlinks! (#2132) 2018-05-15 15:18:59 -04:00
Jelle ZijlstraandGuido van Rossum 537b97ed39 add bytearray.copy to Python 3 (#2133)
Fixes #1715.

2.7's bytearray doesn't have it.
2018-05-15 14:33:24 -04:00
Ethan SmithandJelle Zijlstra db9246b3e5 Fix importlib.resources for mypy (#2130) 2018-05-15 10:34:56 -04:00
Jelle ZijlstraandGitHub 55be42f6d6 add __fspath__ support to os.path (#2053)
Fixes #1997, #2068.

This is tricky because we need to get the return values right (see #1960 for
prior attempts) and we often run into python/mypy#3644. I found that I
could express most signatures correctly using a series of overloads.

A few other changes in here:
- Added splitunc, which according to https://docs.python.org/3/library/os.path.html
  should exist in both Unix and Windows.
- Made the second argument to os.path.curdir Optional to match the implementation.
- Fixed os.path.split, whose previous Path-aware signature triggered python/mypy#3644.
2018-05-15 10:31:40 -04:00
Stanislav SyekirinandJelle Zijlstra 4e1cc807aa adding a stub for tkinter.messagebox (#2113) 2018-05-13 08:36:11 -04:00
Phillip SchanelyandJelle Zijlstra 86f9472bc9 Correct 2 typing comments in inspect module (#2110) 2018-05-12 01:27:29 -04:00
Omar SandovalandJelle Zijlstra 0a30d22f0d Fix Python 3 round() signature (#2107)
In Python 3, the ndigits argument of round() defaults to None. If
ndigits is excluded or explicitly None, the result is always an int. If
ndigits is not None, the result should be the same type as the number.

$ cat test.py
from fractions import Fraction

print(type(round(0.1)))
print(type(round(0.1, None)))
print(type(round(0.1, 0)))

print(type(round(Fraction(1, 10))))
print(type(round(Fraction(1, 10), None)))
print(type(round(Fraction(1, 10), 0)))
$ python3 ./test.py
<class 'int'>
<class 'int'>
<class 'float'>
<class 'int'>
<class 'int'>
<class 'fractions.Fraction'>

Update the signatures to allow for an ndigits of None.
2018-05-11 14:02:09 -04:00
Omar SandovalandJelle Zijlstra aab1b20c80 Add missing namespace argument to rlcompleter.Completer (#2105)
This argument has been around since 2.3, and it's documented in the
rlcompleter docstring (although not on python.org).
2018-05-09 22:12:02 -07:00
Salvo 'LtWorf' TomaselliandJelle Zijlstra d289c20260 Add __new__ to tuple stub (#2092)
Closes: #2091

Apply suggestions from https://github.com/python/typeshed/pull/2092
2018-05-09 16:30:58 -07:00
Jasper SpaansandJelle Zijlstra 2df4a32cf5 Let email.message.MIMEPart inherit from Message (#2103)
Also removes some duplication.
2018-05-09 16:28:14 -07:00
Sebastian RittauandJelle Zijlstra 09008599ce Merge Python 2 and 3 wsgiref (#2106)
* Merge Python 2 and 3 wsgiref

* Move wsigref to 2and3
2018-05-09 16:26:03 -07:00
Dominik GabiandJelle Zijlstra 3f196bde44 Make NamedTuple._replace return instance of the self parameter. (#2102) 2018-05-09 16:24:23 -07:00
Guido van RossumandGitHub d854d7e2a0 Revert "Fix signature of generic_visit method (#2100)" (#2101)
This reverts commit 39576c5d41.

I merged too soon -- tests are failing.
2018-05-07 11:21:19 -07:00
Thomas SchaperandGuido van Rossum 39576c5d41 Fix signature of generic_visit method (#2100)
This methods returns something that has the same type as the first argument.
Fixes #2085.
2018-05-07 11:20:20 -07:00
Andrew SvetlovandJelle Zijlstra 252d79981b Add a stub for sys.implementation (#2097) 2018-05-06 08:40:56 -07:00
Andrew SvetlovandIvan Levkivskyi 142c7488a5 Implement a stub for netrc standard module (#2098) 2018-05-06 10:25:40 +01:00
Emil HessmanandJelle Zijlstra 4d8010a988 Define threading.local as a proper class (#2086)
Fixes #1591
2018-04-30 08:48:12 -07:00
Emil HessmanandJelle Zijlstra 97e261cce8 Define SimpleNamespace as a proper class (#2087) 2018-04-29 23:02:13 -07:00
Jelle ZijlstraandMatthias Kramm fc9a822348 specify what type Binary is (#2057)
Fixes python/mypy#4916.
2018-04-27 14:40:33 -07:00
Jelle ZijlstraandMatthias Kramm 46f0bb8b91 support unicode in Python 2 for difflib (#2055)
Fixes #1961.

I mostly just replaced all str annotations with Text, including in return types. This is
only broadly correct; diffing a str and a unicode sequence actually results in a mixed
output of str and unicode. We could also keep the return types as str if using Text
causes errors in real code. For callbacks that take str, I introduced a Union alias
because a callable taking a str would not be a compatible with a parameter of type
Callable[[Text], bool].

I also fixed the return type of difflib.restore.
2018-04-27 14:39:18 -07:00
Jelle ZijlstraandMatthias Kramm f60ffe47a2 add attributes to locale (#2056)
Fixes #1888.
2018-04-27 14:38:22 -07:00
Jelle ZijlstraandMatthias Kramm c7e3e9890d add UserDict.__init__ for Python 3 (#2083)
Fixes #2075
2018-04-27 14:38:00 -07:00
Jelle ZijlstraandMatthias Kramm 9e25506cab add missing attributes to Python 2 unicode errors (#2084) 2018-04-27 14:37:20 -07:00
Jelle ZijlstraandGuido van Rossum 5554b0b19b argparse.ArgumentParser.error never returns (#2082)
And neither does `.exit`.

Fixes #2081.
2018-04-25 21:30:31 -07:00
ZabolekarandJelle Zijlstra 5ddff9c44a Add a stub for tkinter.filedialog and for the modules it imports (#2058) 2018-04-25 19:44:42 -07:00
Martijn PietersandJelle Zijlstra ecae01a37d collections.OrderedDict dict views are reversible (#2079)
Add the *View subclasses for OrderedDict use, with appropriate __reversed__
hints.

Fixes python/typeshed#2078
2018-04-25 19:44:25 -07:00
Tomas KrizekandJelle Zijlstra db5137b756 stdlib/selectors: change timeout argument type to float (#2070)
The Selector's code internally uses select.select and passes the
timeout argument to it. The documentation explicitly states the
timeout is a floating point number:
https://docs.python.org/3/library/select.html?highlight=select#select.select
2018-04-19 08:36:53 -07:00
Martin DeMelloandJelle Zijlstra 2935017157 Add multiprocessing.dummy pyi files (#2059) 2018-04-18 19:20:01 -07:00
Semyon ProshevandJelle Zijlstra 5223b26ec8 Add __round__ to int and float in Python 3 (#2061) 2018-04-17 14:25:04 -07:00
Freek DijkstraandJelle Zijlstra 55a3bad0f8 fix signature for difflib.get_close_matches (#2064)
Fixes #2063.

The second argument to difflib.get_close_matches not only accepts a List, but any Iterator.
2018-04-17 14:24:27 -07:00
Jelle ZijlstraandGuido van Rossum a5429d25dc add missing methods to DictMixin (#2054)
Fixes #1896.
2018-04-14 14:21:07 -07:00
Siva ChandraandJelle Zijlstra 035774e022 Adjust return types of shed.scheduler.run. (#2050) 2018-04-13 21:00:27 -07:00
Michael J. SullivanandJelle Zijlstra d63866bd36 Fix py2 unicode handling for ArgumentParser.add_argument's text arg (#2051)
add_argument's type argument was recently changed to be (approximately)
`Callable[[_Text], _T]`. Because of contravariant subtyping for functions,
this had the effect of requiring that add_argument *always*
be unicode, which is wrong.

Change it to be `Callable[[str], _T]`.
2018-04-12 20:45:48 -07:00
Jelle ZijlstraandŁukasz Langa b1a0b8ad6e add subprocess.STARTUPINFO and some associated constants (#2041) 2018-04-12 12:29:42 -07:00
Jelle ZijlstraandŁukasz Langa 0f425db197 fix types for unittest.TestLoader.loadTestsFrom* methods (#2042)
Fixes #2008.
2018-04-12 12:29:32 -07:00
Jelle ZijlstraandŁukasz Langa 37aba00fe8 fix using ZipFile as a ContextManager (#2043) 2018-04-12 12:29:22 -07:00
Jelle ZijlstraandŁukasz Langa b8b78886e3 add some Optionals to traceback.pyi (#2044)
Fixes #1974
2018-04-12 12:29:07 -07:00
Jelle ZijlstraandŁukasz Langa 840f34147e add a lot more distutils.errors (#2045)
Fixes #1963.

See https://github.com/python/cpython/blob/2.7/Lib/distutils/errors.py and https://github.com/python/cpython/blob/3.7/Lib/distutils/errors.py.
2018-04-12 12:28:55 -07:00
Eddie SchouteandJelle Zijlstra 5327841a18 Add pathlib.Path.__enter__ and __exit__ (#2048) 2018-04-12 10:39:19 -07:00
Jelle ZijlstraandGuido van Rossum 7cd2016931 add sys.base_exec_prefix and sys.base_prefix (#2047)
See https://docs.python.org/3/library/sys.html#sys.base_exec_prefix.

Required for https://github.com/python/mypy/pull/4888
2018-04-11 13:59:44 -07:00
Chris GavinandJelle Zijlstra dca53fb2bd Make the help argument of argparse.add_argument Optional. (#2046) 2018-04-11 07:20:16 -07:00
Jelle ZijlstraandGitHub db989427cb dest argument to add_argument is Optional (#2040)
argparse.py checks for None in _get_optional_kwargs.
2018-04-10 21:47:30 -07:00
rchen152andJelle Zijlstra e2cfc4bf0f Add private members to argparse.pyi. (#1937)
* Add _AttributeHolder and _ActionsContainer classes to argparse.

* Add Action subclasses to argparse.

* Add _UNRECOGNIZED_ARGS_ATTR, _ensure_value, _get_action_name to argparse.

* Fill in remaining _ActionsContainer attributes.

* Fill in missing argparse.ArgumentParser attributes.

* Fill in missing argparse.HelpFormatter attributes.

* Fill in remaining missing attributes on argparse classes.

* Rename TypeVar _ActionVar to _ActionT

* Add a version check for FileType attributes

* Add '# undocumented' where appropriate

* Add more # undocumented comments

* Make arguments to _ActionsContainer.add_argument more precise.
2018-04-10 20:56:49 -07:00
Svend SorensenandJelle Zijlstra 6c1dffed58 Make islice start and stop parameters optional (#2031)
From the documentation [1]: "If start is None, then iteration starts at zero."

[1] https://docs.python.org/3/library/itertools.html#itertools.islice.

PR #1603 made this change for Python 2.
2018-04-10 20:55:06 -07:00
John ReeseandJelle Zijlstra a51b480609 Add type annotations for multiprocessing manager address/connect (#2033) 2018-04-10 20:54:23 -07:00
NODA, KaiandJelle Zijlstra fe1d7f4fd4 ssl.SSLContext(protocol) >= 3.5 has a default value (#2007)
Fix #1947

As discussed, pretended all 3.5.* have the default value although it was actually 3.5.3 which introduced it
2018-04-09 12:58:15 -07:00
Jelle ZijlstraandGuido van Rossum f37709f9c3 Merge stubs for sqlite3 (#2026)
As promised in #2014.

There are virtually no real changes between Python 2 and 3 in this module, but the stub had accumulated some meaningless differences. I also fixed a few incorrect types.
2018-04-09 12:32:59 -07:00
Jelle ZijlstraandGuido van Rossum 3f456e335e add multiprocessing.Process.kill and close (#2027)
See https://docs.python.org/3.7/library/multiprocessing.html#multiprocessing.Process.kill.

Fixes #2022.
2018-04-09 12:04:14 -07:00
Jelle ZijlstraandGuido van Rossum d43eac60dd add email.parser.FeedParser (#2028)
Fixes #1985.
2018-04-09 12:03:43 -07:00
NODA, KaiandJelle Zijlstra b472130201 Improve asyncio APIs which take TCP port (#2006)
They have getaddrinfo(3) as their backend, and accept port='http' etc. You can even omit (pass None to) either of host or port for start_server() to effectively select 'localhost' and an arbitrary ephemeral port, respectively.
2018-04-08 23:17:32 -07:00