Commit Graph

20 Commits

Author SHA1 Message Date
Guido van Rossum
231f00d7da Fix boto stubs.
Replace two `FIXME` comments with `type: ignore`.
See https://github.com/python/mypy/issues/1237.
2016-12-24 09:06:38 -08:00
Alex Jurkiewicz
8e9c53f1db Add basic stub for characteristic (#771)
See https://characteristic.readthedocs.io/en/stable/
2016-12-23 19:11:34 -08:00
Lukasz Langa
4084296f3f Exclude boto from tests due to broken Liskov Substitution Principle
Starting with python/mypy#2521 mypy is performing stricter function signature
checks.

This makes the stubs diverge from the actual implementation but makes the stubs
internally consistent.  Since this is an actual typing issue in the base
implementation, we need to defer to the original authors to fix it.

Sadly, in this case the breakage is rather fundamental and unlikely to get
fixed by upstream. Consider:

```
  class AWSAuthConnection(object):
    def make_request(self, method, path, headers=None, data='', host=None,
      auth_path=None, sender=None, override_num_retries=None,
      params=None, retry_handler=None): ...

  class AWSQueryConnection(AWSAuthConnection):
    def make_request(self, action, params=None, path='/', verb='GET'): ...
```

Hence, until we have a workaround for the error produced by Mypy, we're
excluding those stubs from being tested against.
2016-12-22 15:54:20 -08:00
Roy Williams
7c706e1100 Move boto to 2and3, add stubs for s3
I've added types for the functions we've been using internally, will expand in the future.
2016-12-22 11:23:36 -08:00
Lukasz Langa
c0c982ada5 Add missing Dict imports. 2016-12-21 01:15:26 -08:00
Lukasz Langa
82b2d8e3bc Fixing flake8 F403, F405 errors 2016-12-20 02:28:12 -08:00
Lukasz Langa
6eb97964fd Fixing flake8 E401, E402 errors 2016-12-20 00:47:51 -08:00
Lukasz Langa
6b5c6626d6 Fixing flake8 E121, E122, E123, E124, E125, E126 errors 2016-12-19 23:53:19 -08:00
Lukasz Langa
fe0e3744cc Fixing flake8 E261 errors 2016-12-19 22:09:35 -08:00
Lukasz Langa
b84f20a011 Fixing flake8 W errors 2016-12-19 21:52:56 -08:00
Roy Williams
89da3a4159 Move Crypto to 2and3 and generate rest of stubs. (#782)
I implemented strong types for Crypto.Cipher
2016-12-19 20:13:51 -08:00
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
Roy Williams
5d61aa5acb Add stubs for jinja2 (#722)
I added strong types to the class that users are likely to interact with and left
the rest untyped for now.  This is needed to support Flask.

Permission is given here - https://github.com/pallets/flask/issues/2012
2016-12-01 13:38:15 +00:00
Roy Williams
0391e72a6e Expose pytz.UTC as an instance as opposed to as a class (#723)
* Expose pytz.UTC as an instance as opposed to as a class

pytz shadows UTC after declaring it with a singleton:
https://github.com/newvem/pytz/blob/master/pytz/__init__.py#L135

This fixes https://github.com/python/typeshed/issues/710
2016-11-29 23:04:53 -08:00
Roy Williams
1dff8e4a45 Add stubs for markupsafe (#718)
* Add stubs for markupsafe
* Add more specific types for markupsafe

This is needed for Flask. Permission was given here:
https://github.com/pallets/itsdangerous/issues/69#issuecomment-246516942
2016-11-29 13:32:12 -08:00
David Foster
5c4300a4bd Add mypy_extensions. (#611) 2016-10-17 16:39:17 -07:00
Tim Abbott
94e0625e82 Fix ujson stubs to properly use AnyStr. (#540)
The ujson module apparently will accept both bytes and text format
input, however, it does always output a str (both on Python 2 and
Python 3).

Some discussion in: https://github.com/python/typeshed/pull/460
2016-09-13 10:07:44 -07:00
Michael Lee
313b584e34 Add stubs for ujson (#460) 2016-08-11 17:08:03 -07:00
Fabian Heredia Montiel
4a408c014f Add pytz basic typing (#383)
* Add pytz basic typing

* Add pytz.lazy basic typing

* Move the files to the correct path

* Move files to correct directory

* Ignore issue with different sig from supertype
2016-07-22 05:52:40 -07:00
Ben Darnell
1626c25087 Add some third_party modules.
backports_abc and singledispatch were made with stubgen, certifi was
written by hand, and ssl_match_hostname was copied from ssl.pyi.
2016-01-16 16:56:25 -05:00