Commit Graph

702 Commits

Author SHA1 Message Date
Lukasz Langa
2058ae30ab Proper singledispatch type definitions
Correctly detects calls to `register()` with a function of incompatible return
type.  Correctly recognizes the `register()`, `dispatch()`, and
`_clear_cache()` methods on a generic function, as well as the `registry`
mapping.

Possible future improvements: it would be amazing if `register()` checked if
the first argument of the registered callable is indeed of valid type. This
would require Callable[] to support varargs.  It would also be great if we
could read the arguments of the remaining arguments during `@singledispatch()`
and cross-check them during `register()` with the currently registered
implementation. Again, this would require Callable[] to become much more
advanced.
2016-12-19 12:54:08 -08:00
David Fisher
beb9183103 Swap order of overloads to fix filter without strict optional (#779)
Related to python/mypy#2587
2016-12-16 15:57:04 -08:00
Simon Ekstrand
aa6f4a07c1 Fix AbstractEventLoop.call* callable definitions. (#753)
Several asyncio AbstractEventLoop methods take a callback as
an argument that is passed *args. The Callable definition was
incorrect for those callbacks.
2016-12-16 15:15:20 -08:00
Philip House
830c2fb089 updating stderr to return type Any (#776) 2016-12-16 11:51:52 +00:00
David Fisher
957307b785 Make filter work properly with Optional elements (#775) 2016-12-15 17:53:38 -08:00
KOSAKA Masayuki
6fc57a419b Adapt base64 stub to newer Python 3 versions (#762) 2016-12-14 08:52:19 -08:00
Henri Dwyer
6887edebda add calendar data attributes (#751) 2016-12-13 14:58:26 -08:00
jgarvin
0392ccaa9c Add stub for _thread.get_ident() (#746) 2016-12-13 14:56:06 -08:00
KOSAKA Masayuki
3cae92253b Fix datetime.fromtimestamp (#759) 2016-12-13 14:55:06 -08:00
Jelle Zijlstra
918dab66d0 pstats: add stub (#727)
partially addresses #531
2016-12-13 14:51:57 -08:00
Philip House
04f5c5699e Merge 3.4 and 3.5 pathlib stubs (#764)
Fixes #659
2016-12-13 12:03:03 -08:00
Guido van Rossum
b46280ec78 Make FrozenSet covariant. (#769)
Follow-up for PR #726.
2016-12-13 11:40:18 -08:00
Philip House
bc252d69ac set subprocess stdout to be type Any (#581) (#761) 2016-12-13 14:23:45 +00:00
Thomas Aynaud
0d7a5374c5 Add missing stubs for bz2 2016-12-12 14:06:10 -08:00
Matthias Kramm
7e6000949e it's threading.Lock, not threading.LockType 2016-12-12 12:02:01 -08:00
Matthias Kramm
ac97b22365 add missing Ellipsis 2016-12-12 12:02:01 -08:00
Matthias Kramm
8a5447be05 add 'Handler' and 'Filterer' classes to logging 2016-12-12 12:02:01 -08:00
Jelle Zijlstra
97a6d27558 Make first argument to filter optional
```
$ python3.4
Python 3.4.3 (default, Nov 17 2016, 01:08:31) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> list(filter(None, [False, True]))
[True]
>>> 
```
2016-12-12 11:31:12 -08:00
Daisuke Miyakawa
57aa1923d5 Make sqlite3's Connection.rollback() return None (#758)
Fixes #747.
2016-12-07 16:22:47 -08:00
George King
af5b5c83fd Make shutil.copytree stub's ignore parameter optional. (#740)
* Make `shutil.copytree` stub's `ignore` parameter optional.

* python2.7 shutil.copytree `ignore` annotated as optional.
2016-12-07 14:47:34 -08:00
George King
e7db9cda4d Add stub for os.path.commonpath (new in 3.5). (#738)
* Add stub for os.path.commonpath (new in 3.5).
2016-12-07 14:47:04 -08:00
George King
dccc29bc2f Add None to type union for subprocess.Popen.communicate input. (#743)
* Add `None` to type union for `subprocess.Popen.communicate` stub's `input` parameter.

* subprocess.communicate `input` annotated as `Optional[AnyStr]` for both 2.7 and 3.x; `timeout` as `Optional[float]`.
2016-12-07 14:46:34 -08:00
Jukka Lehtosalo
f39f9bf694 Make object_hook of json.load and json.loads optional (Python 2) (#757) 2016-12-07 13:32:56 -08:00
Daisuke Miyakawa
b33c2c6158 Introduce multiprocessing.freeze_support() (#749) 2016-12-07 13:30:14 -08:00
Philip House
090dafb9b0 fixes #559 (#750) 2016-12-07 13:28:37 -08:00
George King
00e4027b77 Add idx parameter to JSONDecoder.raw_decode. (#742) 2016-12-07 13:19:27 -08:00
George King
085c3f9915 Make json.load, json.loads stubs object_hook parameter optional. (#741) 2016-12-07 13:14:49 -08:00
Jon Dufresne
2b022d18a4 Add stub for unittest.mock (#731)
Stub generated by stubgen.

Fixes #372
2016-12-07 08:05:01 -08:00
Matthias Kramm
79061f9de2 move simplejson from stdlib/ to third_party/ (#752) 2016-12-06 17:43:47 -08:00
Onno Kortmann
69ea0ad43f Iteration and fetch* fixes to the sqlite3.Cursor type (#663)
- Cursor is an Iterator of Any now, and .__iter__(..) and .__next__(..)
  have been changed / made explicit to reflect this.

- .fetchall(..)/.fetchmany(..)/.fetchone(..) return (lists of) Anys
  instead of tuples.

As per discussion in PR #663, the output of fetching values from the
cursor can be customized with a custom assignment to
.row_factory. Therefore the correct return type for fetching is Any and
not tuple.
2016-12-06 08:17:21 -08:00
Danny Weinberg
3855e7023f Ignore a stub class that extends Any (#745)
Ignore a stub class that extends Any so that programs can use `--disallow-subclassing-any`.
2016-12-05 14:30:14 -08:00
Danny Weinberg
679a6e5669 Give shutil.which a return annotation (#744) 2016-12-05 11:41:53 -08:00
thomascellerier
d18a225ec2 Fix type for base64.b64encode, it should accept str or bytes (#736)
Fixes #735
2016-12-05 11:15:40 -08:00
Calen Pennington
5ba7abc559 Add GenericMeta (so that classes can be Generic when they already hav… (#703) 2016-12-02 12:09:59 -08:00
Jelle Zijlstra
392eb4aa5a add stubs for Python 2 profile and cProfile (#699)
* add stubs for Python 2 profile and cProfile

Partially fixes #531. Contrary to the Python 2.7 docs at
https://docs.python.org/2/library/profile.html#module-cProfile,
these modules do not have exactly the same interface. For
example, profile.Profile() does not have an enable() method.

* profile stubs: move to 2and3, add __init__, use private names for typevars
2016-12-01 11:51:41 +00:00
Jelle Zijlstra
ed4f9e9b0b urlencode: change parameters to Any instead of AnyStr (#715)
The implementation of this function calls str() on all arguments, so it accepts
any object (https://hg.python.org/cpython/file/3.5/Lib/urllib/parse.py#l801).

This was discussed on the mypy gitter chat.
2016-12-01 11:38:23 +00:00
Josiah Boning
c9ad4b8dc0 Have frozenset inherit from FrozenSet (#726)
Fixes python/mypy#2514
2016-11-30 17:58:11 -08:00
Lukasz Langa
d1081b94ee [logging] Fix forward references 2016-11-30 10:48:10 -08:00
Łukasz Langa
85807ed72a logging.Formatter attributes fixed (#721)
Fixes #720.

Related changes: used a NamedTuple for time.struct_time on Python 3, used
sys.version selectors for proper typing of #716, added missing *Style classes
to logging on Python 3.
2016-11-30 09:09:05 -08:00
Guido van Rossum
bbbf1d8c7a PurePath.parent[s] should be properties (#706)
PurePath.parent[s] should be properties
2016-11-28 14:01:22 -08:00
Peter Amstutz
d0f6a05793 Fix logging.Logger.isEnabledFor() to return bool instead of None. 2016-11-28 13:46:40 -08:00
rymdhund
eb90eddd8f Fix urllib.parse.urlencode signature (#702)
Fixes #700
2016-11-24 11:45:20 +00:00
Roy Williams
33b81b9e2b Add MutableSet to collections (#691) 2016-11-24 11:39:00 +00:00
Naomi Seyfer
c134fe7638 handlers should be an optional argument of logging.basicConfig() (#704) 2016-11-24 09:21:10 +00:00
Jelle Zijlstra
b10125cd7d commands: add python 2 pyi file (#698)
Partially fixes issue #531
2016-11-23 12:14:03 +00:00
Anders Kaseorg
e13f2c739d Add Iterable base class to tarfile.TarFile (#693)
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2016-11-23 11:49:44 +00:00
Jelle Zijlstra
7ac78b163d Remove BaseException.with_traceback in py2 (#697)
This method doesn't exist in Python 2; it was added in Python 3. See https://docs.python.org/2/library/exceptions.html#exceptions.BaseException versus https://docs.python.org/3/library/exceptions.html#BaseException.with_traceback.
2016-11-23 11:42:59 +00:00
Jelle Zijlstra
9bc07e7b9d fix typo in list.__delslice__ (#696) 2016-11-23 11:41:33 +00:00
Richard Eames
4f567d993b Add missing self parameters (#695)
A few methods are missing the `self` parameter in  `urllib.RobotFileParser`
2016-11-23 11:37:39 +00:00
Ryan C. Thompson
f36d7a3cd3 Multiprocessing fixes (#687)
* Fix type declarations for multiprocessing.pool.ThreadPool

The existing incomplete type declarations were replaced by a copy of
multiprocessing.Pool's declarations, suitably modified.

Fixes #683.

* Change iterable type to Iterable[Iterable[Any]] in starmap

multiprocessing.Pool and multiprocessing.pool.ThreadPool have starmap
and related methods, where the iterable argument is expected to yield
iterables. The type declarations now reflect this.
2016-11-12 17:31:54 -08:00