Commit Graph
7 Commits
Author SHA1 Message Date
Jakub Stasiak cd12f6e255 Add some missing "type" attributes (#200) 2016-05-14 10:18:36 -07:00
Jakub Stasiak f5bfee6f35 Finish Python 3 hashlib stub (#179) 2016-05-04 08:29:16 -07:00
Jakub Stasiak 7f9276c87c Improve Python 3 fcntl stub
This patch:

* Adds some constants that although undocumented are exposed by the
  module
* Modifies the signature of fcntl() to match reality
* Adds missing function stubs
* Modifies few existing constant declarations to match the repository
  conventions

I believe the stub is complete now (and if it's not there isn't much
missing).
2016-03-17 02:43:18 +01:00
Jakub Stasiak ea37877558 Improve Python 3 inspect stub
This is follow-up to a similar commit improving Python 2.7 inspect stub[1].

Similarly, this commit consists of:

* Splitting and reordering the content into sections corresponding
  to the module's documentation sections
* Implementing missing functions, classes etc.
* Adding TODOs for things that are either difficult to get or I can't
  figure them out right now
* Making the existing code consistent with the newly added things

As suggested in pull request #108 I'm modifying the generic Python 3
stub even though some things changed and were added in various Python
3.x releases - the changes seem to be backwards compatible and the
additions, well, they should not break much except for some false
positives on older Python 3 versions.

Some of the types in this stub were not obvious so I either read the
source code or used my judgment.

[1] 630f718376
2016-03-10 01:28:07 +01:00
Jakub Stasiak 983d8cbf5e Fix Python 2.7 inspect stub (currentframe + frame type)
inspect.currentframe() return a frame object on its own, not as a part
of a record.

Additionally the artificial _Frame type is unnecessary as
types.FrameType exists.
2016-03-10 00:56:03 +01:00
Jakub Stasiak 630f718376 Improve Python 2.7 inspect stub
This patch consists of:

* Splitting and reordering the content into sections corresponding
  to the module's documentation sections
* Implementing some missing functions
* Adding TODOs for missing stuff (I may've missed something)

The signature of isgenerator() (was: Any argument, is: argument of type
object) is changed for consistency with other is* functions I added
here, after some considerations I couldn't decide whether it should be
object or Any - if object is not advised please let me know.
2016-03-09 02:45:43 +01:00
Jakub Stasiak 41f0e7c8b6 Define three argument type() overload (Python 3)
This was missing for some reason while the Python 2.7 stubs have it.

Sample test code:

% cat testtype.py
A = type('A', (), {})
print(A.__name__)

Results before:

% python -m mypy --py2 testtype.py
% python -m mypy testtype.py
testtype.py:1: error: Too many arguments for "type"
%

Results after: type checking passes in both modes.
2016-03-03 09:19:59 +00:00