forked from google/pytype
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGELOG
656 lines (516 loc) · 23.1 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
Version 2021.07.19
New features and updates:
* Add a flag, --use-enum-overlay, for greatly improved support for the stdlib
enum library. The behavior of this flag will be enabled by default once it is
stable.
* Default --check-parameter-types to True.
* Take advantage of submodule version information in typeshed/stdlib/VERSIONS.
* typing.Protocol: support non-method attributes and modules, make error
messages more detailed, and fix several bugs.
* Remove --create-pyi-dataclasses and make its behavior the default.
* Do not try doing dead block elimination within try/except blocks.
Bug fixes:
* Handle unions correctly when dealing with exception types.
* Support adding typing.Mapping as a chex.dataclass base class.
* Get rid of some incorrect 'appears only once in signature' TypeVar errors.
* Fix a pyi error caused by _PropertyToConstant not recognizing imported
TypeVars.
* Allow more cases of valid typevars in variable annotations, typing.cast, and
attr.ib's 'type' argument.
* Allow bound class methods to match object.
* Allow bytearray.__contains__ to accept bytes.
Version 2021.06.17
New features and updates:
* Open source pytype_extensions, a library of type system extensions for use
with pytype.
* Add an assert_type statement to assert pytype's view of an expression type.
* Remove the [key-error] error class: it found few real type errors and produced
many false positives.
Bug fixes:
* Fix a bug that caused 'self' to be typed as 'Any' in @property bodies
(temporarily requires --bind-properties flag).
* Add support for multiple and chained assignments in pyi files.
* Support the 'Protocol[T, ...]' shorthand for generic protocols.
* Typeshed: support py2-only third-party packages with no top-level stubs.
Version 2021.05.25
New features and updates:
* Add support for referencing class-scoped TypeVars in variable annotations.
* Add support for generic dataclasses and attrs.
Bug fixes:
* Fix a performance regression in pytype/pytd/typeshed.py.
* Generate mutations from __init__ parameter annotations in stubs.
* Use the typeshed stub for the array module instead of a custom one.
Version 2021.05.19
New features and updates:
* Add support for PEP 604 (Union |) in stub files.
Bug fixes:
* Get rid of special_builtins.Filter.
* Fix circular import issues in the pytd loader.
Version 2021.05.14
New features and updates:
* Allow TypeGuard to be used in type stubs by rewriting TypeGuard[X] to bool.
Bug fixes:
* Fix the order of inherited attributes for dataclasses.
* Change the type of __path__ from Iterable to List.
* Add a replace() method to flax dataclasses.
Version 2021.05.11
Bug fixes:
* Report [not-supported-yet] instead of [import-error] for importing TypedDict.
* Fix a bug in attribute lookup from parent classes.
* Fix a Python 3.7 failure in typeshed/tests/pytype_test.py.
* pytd: populated mutated_type from annotated `self` parameters.
* Preserve kw_only attribute when inheriting attrs from a different module.
* Add a vm state to allow recursive construction of pytd values.
Version 2021.05.06
New features and updates:
* Update typeshed pin to commit 2c8cb60 from Apr 27.
Bug fixes:
* Add typing._Alias.
* Pin attrs to 20.3.0.
Version 2021.05.04
New features and updates:
* Remove --check-attribute-types, --check-container-types, and
--check-variable-types flags. Their behaviors are now enabled by default.
* Add a temporary --preserve-union-macros flag that preserves Union generic type
aliases in type stubs. This behavior will ultimately be enabled by default and
the flag removed.
* Support max versions in typeshed VERSIONS file.
Bug fixes:
* Add typing.GenericMeta stub.
* Fix handling of typeshed/stdlib/@python2.
Version 2021.04.26
New features and updates:
* Enable --check-attribute-types, --check-container-types, and
--check-variable-types by default. These flags will soon be removed.
* Add a fix suggestion for [annotation-type-mismatch] with a None value.
* Add a temporary --attribute-variable-annotations flag that applies PEP
526-style annotations on attribute assignments. This behavior will ultimately
be enabled by default and the flag removed.
* Add a temporary --create-pyi-dataclasses flag that creates dataclasses from
@dataclass-annotated classes in type stubs. This behavior will ultimately be
enabled by default and the flag removed.
Bug fixes:
* Don't lose track of attributes when @typing.final is used.
* Fix generation of type information for nested typing.NamedTuple classes.
* Fix some bugs in handling of generic type aliases.
* Fix a pytype crash on a generic protocol.
* For method aliasing in pyi files, consider base classes when doing lookup.
Version 2021.04.15
New features and updates:
* Update typeshed pin to commit ce24720 from Jan 27, and drop support for the
old typeshed directory structure.
* Delete the --check-nonnull-parameter-types flag.
Bug fixes:
* Add "from typing import overload" statement when using @overload.
* Add object.__delattr__ to our builtins stubs.
* Add some more support for generic type aliases.
Version 2021.04.09
New features and updates:
* Enable --check-parameter-types by default for non-None default values.
* Add some minimal support for PEP 612 in type stubs.
* Add support for typing.Annotated in pyi files.
Bug fixes:
* Fix a crash when analysed code accessed an undefined closure cell.
* Fix a minor bug in pytype's expansion of Protocol[T].
* Check starargs and starstarargs when gathering TypeVars in function sigs.
* Fix some bugs in pytype's handling of the new typeshed directory structure.
* Make sure `collections.defaultdict.__init__` always accepts kwargs.
* Filter out properties from class attributes when constructing dataclasses.
* Add gi_* fields to Generators.
Version 2021.04.01
New features and updates:
* Add basic Python 3.9 support.
Bug fixes:
* Fully support method aliasing in stub files.
* Improve pytype's handling of sets.
Version 2021.03.22
New features and updates:
* Support inheritance from dataclasses defined in pyi files.
Bug fixes:
* Don't check attribute values against types from pyi files.
* Add a missing array.array.frombytes method.
* Fix the pyi type of attributes annotated with class type parameters.
* Allow annotation-type-mismatch directives to be put on more sensible lines.
* Pass ninja relative paths instead of absolute ones.
Version 2021.03.10
New features and updates:
* Basic support for defining dataclasses in pyi files.
* Enable more of --check-attribute-types by default.
* Get rid of the legacy pyi parser.
Bug fixes:
* Fix a circular import error (#760).
* Make NotImplementedType inherit from bool.
* Fix a caching bug that caused incorrect function parameter defaults.
Version 2021.03.03
New features and updates:
* Enable part of --check-attribute-types by default.
Bug fixes:
* Allow callable constants to match protocol methods.
* Allow builtins.tuple to be used for a heterogeneous tuple annotation.
* Don't report [not-instantiable] when instantiating an abstract annotation.
* Take a TypeVar's bound into account when instantiating it in attribute.py.
* Use typeshed stubs in preference to empty stubs.
* Fix a bug where multiple definitions of a TypeVar could end up in a stub.
* Fix a caching bug in check_container_types.
* Fix initialization of Union types in forward references.
Version 2021.02.23
New features and updates:
* Support running pytype under Python 3.9. (Does not yet support analyzing 3.9
code; see details in https://github.com/google/pytype/pull/840.)
* Update typeshed pin to commit 869238e from Jan 26.
Bug fixes:
* Do stricter filtering of container_type_mismatch errors.
* Preserve the concrete value of TYPE_CHECKING in method bodies.
* Support using collections.abc.Callable in type stubs.
Version 2021.02.19
Bug fixes:
* Fix 'nothing' parameter inference for self in custom generic classes.
* Fix several cases of class type parameters being instantiated incorrectly.
* Fix an if-splitting bug by (mostly) ignoring cycles in the CFG.
* Use match_var_against_type, not match_from_mro, for check_container_types.
Version 2021.02.09
New features and updates:
* Replace namedtuples with attrs in our PyTD representation.
Bug fixes:
* Improve error messaging for typing.AnyStr.
* Fully qualify `std::size_t` to avoid platform incompatibilities.
* Add isascii attribute to str, bytes, and bytearray.
* Support isinstance() checks on tuples of typing containers.
* Improve *args and **kwargs forwarding for attrs and dataclasses.
* Don't propagate attribute errors for deleted names.
Version 2021.01.28
New features:
* Update typeshed pin to commit 8c20938 from Nov 13.
* Implement basic support for PEP 593.
* Support typeshed's new directory structure.
Bug fixes:
* Support aliases attr.attrs for attr.s, and attr.attrib for attr.ib.
* --check-container-types: fix a crash and improve the error message.
Version 2021.01.21
* Switch to a typed_ast-based stub parser.
* Fix matching of NamedType against LiteralType in --protocols mode.
* Fix: super() in a list comprehension needs to look at the enclosing frame.
Version 2021.01.14
* Fix some corner cases with unpacking and function args.
* Add ImportError attributes name, path for Python 3.3+.
* Unbreak annotate-ast by adding an empty pytype/ast/__init__.py file.
Version 2021.01.08
* Automatically add a .gitignore file to the pytype output directory.
* Do not allow python keywords in pytd files.
* Fix: Don't infer Callable parameters when there are kwonly params.
* Fix: Represent empty tuples as TupleType(()).
* Fix: add __init__ and __contains__ to dict view classes.
Version 2020.12.23
* Support using a union to filter types out of a type parameter.
* Fix the attribute type obtained from `attr.ib(default=())`.
Version 2020.12.16
* Support NewType in stubs.
* Treat classes whose metaclass inherits from type(Protocol) as abstract.
* Automatically promote __init_subclass__ to a classmethod.
* Improve unpacking and function arg matching by tracking unpacked iterables.
* Fix a [name-error] caused by a bad regex check for comprehensions.
* Strip carriage returns from files read as bytes.
* Support using an AnnotationClass in an isinstance check.
* Support aliases to methods of classes in the same module in the pyi parser.
Version 2020.12.02
* Update typeshed pin to commit fae6bda from October 12.
* Improve the [bad-return-type] error message.
Version 2020.11.23
* Treat modules as hashable.
* Support typing_extensions.Literal in source files.
* Take classmethods and staticmethods into account in protocols.
Version 2020.11.12
* Support `# type: ignore[errorcode, ...]` in pyi files.
* Always allow classes to match typing.Hashable.
* Fix a bug in pytype's handling of Literal[<str>].
Version 2020.11.03
* Drop support for running pytype under Python 3.5.
* Add a dependency on pybind11 for new typegraph metrics.
* merge-pyi support for "import collections.abc as abc" style imports.
Version 2020.10.08
* Add runtime_checkable to typing.pytd.
Version 2020.09.29
* Fix a bug in attaching function type comments to opcodes.
* Use `py -x.y` instead of `pythonx.y` for windows.
Version 2020.09.24
* Fix a bug involving multiple super calls.
* Support tuple slicing.
* Make all tests pass in Python 3.8.
* Respect all typing re-exports in the pyi parser.
* Create C++ metrics classes for tracking typegraph metrics.
* Update attrs pytd files to support version 20.2.0.
Version 2020.09.16
* Fix a parser bug when importing and re-exporting a submodule.
* Call `python -m ninja` instead of `ninja`.
* Don't crash when processing a pyi containing __all__.
* Convert Bindings() to a list in cfg.py.
Version 2020.09.14
* Drop the --python_exe option.
* Have check_py and generate_pyi accept a source string instead of a filename.
* Pass around an options.open_function that is used in place of builtins.open.
* Fix some Python 3.8 bugs.
* Fix python-incompatible syntax in pytd files.
* Print 'leaving directory' after ninja command.
* Support sys.version_info tuple checks that do not use slicing.
Version 2020.08.28
* Let multiple PyTDFunction signatures match when *args/**kwargs is present.
Version 2020.08.17
* Allow `# type: ignore` in more places in pyi files.
* Support TypedDict function-based syntax in pyi files.
* Add more developer documentation.
Version 2020.08.10
* Support aliases to unions with type parameters.
* Don't crash when a nested NamedTuple subclass hits max depth.
* Support kw_only arg to attr.ib.
* Add more developer documentation.
Version 2020.07.30
* Allow typing.AnyStr to be used to parameterize custom generic classes.
* FIX: We were occasionally reusing an exhausted generator in Union constructor.
* Support imported type macros in pyi files.
* When raising not-supported-yet for Alias = Union[T, ...] set the type to Any.
Version 2020.07.24
* pyi parser: allow aliases inside a class to values outside the class.
* Copy annotations instead of modifying them when adding a scope.
* Make self.__class__ return Any in __init__.
* Check object visibility before setting attributes.
Version 2020.07.20
* pyi parser: support importing TypedDict from typing_extensions.
Version 2020.07.14
* Populate the `cls` arg in classmethods with the class type.
* Log [not-supported-yet] as soon as a recursive type alias is defined.
* pyi parser: allow the 'total' keyword for subclasses of TypedDict.
* Make collections.OrderedDict reversible.
* Make the behavior of io.open match builtins.open.
* Add/fix some opcodes for Python 3.8.
Version 2020.06.26
* Treat objects as True in a boolean context, unless explicitly overridden.
* If cls is the class argument of Foo.__new__, treat `cls is Foo` as ambiguous.
* Add basic support for third-party flax dataclasses.
* Autodetect number of jobs with --jobs auto.
Version 2020.06.01
* Update typeshed pin to commit 5fe6a5b from May 18.
* Support callback protocols.
* Get rid of the RemoveInheritedMethods pyi optimisation.
* (In-progress) Add partial Python 3.8 support.
Version 2020.05.13
* Check attrs default values against annotations.
* Add an experimental --check-variable-types mode.
Version 2020.05.07
* Drop support for analyzing Python 3.4.
* Add special builtins support for filter(None, xs).
* Open-source a developer doc on minor version upgrades.
* Improve support for @typing.overload.
* Improve annotated decorators' handling of classes.
Version 2020.04.22
* Drop support for running pytype under Python 2.
* Report [not-supported-yet] when aliasing Union[T, ...].
* Add typing.OrderedDict.
* Improve how annotations are tracked and applied.
* Allow functions to match types.FunctionType.
* Don't report [invalid-typevar] when type() is called on a TypeVar.
Version 2020.04.01
* Do some test restructuring and cleanup.
Version 2020.03.19
* Fix a couple of pytype crashes.
* Do not allow mixing string types in IO.write() in Python 3.
Version 2020.02.20
* Stop rewriting (x: X = None) to (x: Optional[X] = None).
Version 2020.02.06
* Update typeshed pin to commit d5851ec from January 24.
Version 2020.01.24
* Don't fail on mypy-style '# type: ignore[code, ...]' comments.
* Support separating disabled error classes by whitespace in addition to commas.
Version 2020.01.08
* Support @typing.type_check_only on classes and functions in pyi files.
Version 2020.01.07
* Add a 2020 Q1 roadmap.
* Improve handling of forward references with type errors.
Version 2019.12.17
* Improve support for forward references and function type comments.
* Support typing.ClassVar and dataclasses.InitVar.
* Fix some attrs and dataclasses bugs.
Version 2019.12.06
* Update typeshed pin to commit f7f6860 from December 1.
* Allow running pytype-single as `python -m pytype-single`.
Version 2019.11.27
* Support using typing.Counter as a generic.
* Handle non-utf8 string literals without crashing in host Python 3.
* Allow running pytype as `python -m pytype`.
* Add a `-j/--jobs` option to pytype.
* Detect and raise errors for recursive type aliases, rather than crashing.
Version 2019.10.17
* Make Python 2 metaclass declarations an error in Python 3.
* Add basic support for dataclasses.
* Open-source a partial numpy type stub.
* Fix some bugs in the pyi parser.
Version 2019.09.17
* Update typeshed pin to commit 668988f from September 5.
Version 2019.09.06
* Update typeshed pin to commit ce0f5b2 from August 22.
Version 2019.08.29
* Improve the usability of the pytype.io module.
* Add basic callgraph generation to pytype.tools.xref.
* Update typeshed pin to commit fab2ee0 from August 16.
* Add an experimental --precise-return mode.
Version 2019.08.09
* Partially support typing[_extensions].Literal in pyi files.
* Adopt a unicode pytype logo.
* Add a traces library for accessing pytype's inferred type information.
* Add `annotate-ast` subtool for annotating ASTs with type information (WIP).
Version 2019.07.30
* Allow trailing commas in lists in type stubs.
Version 2019.07.26
* Update typeshed pin to commit 40215d1 from July 18.
* Improve support for subprocess.Popen in Python 3.
Version 2019.07.11
* Update typeshed pin to commit e1e5c83 from July 1.
* Support `async def` in pyi files.
Version 2019.06.28
* Fix attrs bugs.
* Check exception types in `except` blocks.
Version 2019.06.21
* Support typing.overload in source files.
* Fix merge-pyi bugs.
* Support basic attrs usage.
Version 2019.05.31
* Add an xref output mode that creates a (lineno, column) -> type map.
* Fix an AnyStr bug in the Python 2 filter() definitions.
Version 2019.05.24
* Fix an import bug.
* Support extracting pytype types from xref.
Version 2019.05.15
* Update typeshed pin to commit 50d98ac from May 13.
* Support nested classes in pyi files.
Version 2019.05.08
* Fix a bug in pyi lookup of re-exported imports.
Version 2019.05.06
* Update typeshed pin to commit 4e572ae from April 23.
* Support collections.namedtuple in pyi files.
* Support module aliases in pyi files.
Version 2019.04.26
* Improve typegraph performance.
Version 2019.04.19
* Support method matching for custom PEP 544 protocols.
Version 2019.04.12
* Update typeshed pin to commit cfa65b8 from April 8.
* Fix comparisons of primitive objects of the same type.
* Limit the number of tracebacks shown for one error.
Version 2019.04.05
* Improve Python 3 definitions in pytype's enum and typing stubs.
Version 2019.04.02.1
* Require typed_ast only in Python 3.3+.
Version 2019.04.02
* Simplify the text pytype prints to the terminal.
* Rename the default pytype output directory from pytype_output to .pytype.
* Add a --no-cache option to send pytype output to a temporary directory.
* Update typeshed pin to commit 9b9ff64 from March 29.
* Support typing.ChainMap and typing.Counter.
Version 2019.03.27
* Support `# type: ignore` on import lines in pyi files.
Version 2019.03.21
* Update typeshed pin to commit afe6656 from March 16.
* Add missing Python 3 methods {bytearray,list}.{clear,copy}.
Version 2019.03.15
* Make --parse-pyi verify that the AST has been resolved.
* Fix pyi parsing of `typing` aliases.
* Remove mirror of asyncio.tasks stub in favor of the canonical typeshed one.
* Support type macros in pyi files.
Version 2019.03.08
* Fix bad type definitions for builtins reversed and enumerate.
Version 2019.03.01
* Make pytype's type stubs loadable in Python 3.4.
Version 2019.02.13
* Support asynchronous generators.
* Fix variable annotations in Python 3.7.
* Fix a pyi circular import bug.
Version 2019.01.30
* Support future.utils.with_metaclass.
* Support coroutine annotation.
Version 2019.01.18
* Add support for unittest.TestCase.setUp().
* Open-source a user guide.
* Open-source the FAQ.
Version 2018.12.21
* Improve support and add testing framework for target Python 3.7.
* Handle files that generate parse errors more gracefully.
Version 2018.12.11
* Add rudimentary support for target Python 3.7.
* Make error messages for Python operators friendlier.
* Set the default target python version to the host version.
* Change default behavior to stop at first error and add a --keep-going option.
* Flag annotations with the wrong parameter count and invalid uses of NoReturn.
* Improve pytype and merge-pyi status messages.
* Support PEP-526 variable annotation syntax.
Version 2018.11.06
* Use --imports_info to allow preserving generated type stubs between runs.
* Handle TypeParameter inheritance more robustly with a union-find approach.
* Get more precise deps from importlab to allow build parallelization.
* Trim the dependencies of builtin and system files from the import graph.
* Generate a build.ninja file and call pytype-single via ninja.
Version 2018.10.30
* Improve the display of tracebacks in error messages.
* Make several Python 3 fixes and improvements, including better enum support.
* Fix evaluation of conditionals inside closures.
* Improve handling of comparison operators.
* Add a --strict-import option to not load submodules not explicitly imported.
Version 2018.09.26
* Generate default type stubs for pip-installed dependencies.
* Remove the output directory at the start of each pytype run.
Version 2018.09.25
* Improve Python 3 varargs and kwargs support.
* Support user-defined generic types.
* Improve --generate-config to show a full sample config file.
Version 2018.09.19
* Allow the command-line `inputs` option to be specified in a config file.
* Support hidden files.
* Make the behavior of --exclude more intuitive.
Version 2018.09.18
* Support setting --exclude in a config file.
* Add support for annotations in inner functions.
* Officially support running under Python 3.7.
Version 2018.09.07.1
* Update typeshed pin to commit c968124 from September 6.
Version 2018.09.07
* Make typing.NamedTuple a class for Python 3.6+.
Version 2018.08.10
* Add --exclude flag to support excluding files or directories from analysis.
Version 2018.07.13
* Improve type checking of typing.Generator.
* Enable logging from C++ in debug builds.
* Expose pytype-single's return code.
* Add the ability to record trace data during bytecode execution.
Version 2018.06.19
* Tweak the installation instructions and add a quickstart guide.
Version 2018.06.18
* Document pytype's platform support.
Version 2018.06.15
* Officially support running under Python 3.5 and 3.6.
* Expose pytype-single's --version option.
* Optimization: skip argument parameter combinations we've already seen.
* Bring back pytype-single's --timeout option.
* Add --return-success to pytype-single to report errors but return success.
Version 2018.06.05
* Print transient progress messages.
* Rename pytype to pytype-single and pytype-all to pytype.
* Use the system and site package dependencies found by importlab in pytype-all.
* Make the pytype-all help message friendlier.
* Allow pytype-single args to be specified in a config file.
* Add a merge-pyi subtool to merge pyi files into their Python sources.
* Expose some pytype-single options to pytype-all.
* Add a script which runs pytype tests.
* Allow specifying config file variables for pytype-all on the command line.
* Add a --version option to display the pytype version.
Version 2018.05.22.1
* Use different flags when compiling with gcc or clang.
Version 2018.05.22
* Add flags for building with clang on Mac OS X.
* Allow pytype-all to accept directories as input.
* Change pytype-all's config file to INI style, and fall back to setup.cfg.
* Make analyze_annotated a command-line option.
* Add pythonpath guessing to pytype-all.
Version 2018.05.15
* Make some fixes to the release packaging.
Version 2018.05.14
* Release pytype-all.
Version 0.2
* Release pytype.