Path to this page:
./
devel/py-pytype,
Static type analyzer for Python code
Branch: CURRENT,
Version: 2024.9.13,
Package name: py312-pytype-2024.9.13,
Maintainer: pkgsrc-usersPytype checks and infers types for your Python code - without
requiring type annotations. Pytype can:
* Lint plain Python code, flagging common mistakes such as misspelled
attribute names, incorrect function calls, and much more, even
across file boundaries.
* Enforce user-provided type annotations. While annotations are
optional for pytype, it will check and apply them where present.
* Generate type annotations in standalone files ("pyi files"),
which can be merged back into the Python source with a provided
merge-pyi tool.
Pytype is a static analyzer; it does not execute the code it runs
on.
Master sites:
Filesize: 2722.147 KB
Version history: (Expand)
- (2024-09-16) Updated to version: py312-pytype-2024.9.13
- (2024-05-12) Package added to pkgsrc.se, version py311-pytype-2024.4.11 (created)
CVS history: (Expand)
2024-11-26 13:45:44 by Nia Alarie | Files touched by this commit (3) |
Log message:
py-msgspec: Fails to build with Python 3.13
|
2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862) |
Log message:
py-*: remove unused tool dependency
py-setuptools includes the py-wheel functionality nowadays
|
2024-10-14 08:46:10 by Thomas Klausner | Files touched by this commit (325) |
Log message:
*: clean-up after python38 removal
|
2024-09-21 11:15:33 by Thomas Klausner | Files touched by this commit (1) |
Log message:
ipy-pytype: uses c++20
|
2024-09-16 12:56:43 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message:
py-pytype: updated to 2024.9.13
Version 2024.09.13:
Updates:
* Basic support for Python 3.12.
With this release you can run pytype with Python 3.12. But pytype has no
support for any new features added in Python 3.12.
Look out for type checking changes caused by different bytecode emit:
* dict/list/set comprehensions are type checked 1 level deeper.
* Errors after `if` statements can be printed differently.
* Add support for pickled pyi files in merge_pyi.py.
* Several performance improvements.
* Stop validating imports map. Pytype used to validate that each file in an
import map exists. This has proved too costly, especially on network file
systems. Pytype now assumes import maps specified via --imports_info are
correct.
* Add support for flag files (required for Bazel workers).
* Change the format of errors printed to the console.
Errors now also include the column number and a code snippet, which highlights
the part that's broken.
Old:
File "test.py", line 4, in foo: unsupported operand type(s) for +: \
str and int [unsupported-operands]
Function __add__ on str expects str
New:
test.py:4:10: error: in foo: unsupported operand type(s) for +: str and int \
[unsupported-operands]
Function __add__ on str expects str
print(arg + 3)
~~~~~~~
Bug fixes:
* Add type definitions for `aiter()` and `anext()`.
* Don't include deleted top-level variables in module types.
* Don't crash when a Generic subtype uses a TypeVar differently.
* Fix type inference for `iter(func, None)`.
|
2024-08-06 13:23:30 by Adam Ciarcinski | Files touched by this commit (1) |
Log message:
py-pytype: not for Python 3.8 nor 3.9
|
2024-06-28 17:33:11 by Thomas Klausner | Files touched by this commit (1) |
Log message:
ipy-pytype: doesn't support Python 3.12 yet
|
2024-05-12 19:48:09 by Thomas Klausner | Files touched by this commit (5) |
Log message:
devel/py-pytype: import py-pytype-2024.4.11
Pytype checks and infers types for your Python code - without
requiring type annotations. Pytype can:
* Lint plain Python code, flagging common mistakes such as misspelled
attribute names, incorrect function calls, and much more, even
across file boundaries.
* Enforce user-provided type annotations. While annotations are
optional for pytype, it will check and apply them where present.
* Generate type annotations in standalone files ("pyi files"),
which can be merged back into the Python source with a provided
merge-pyi tool.
Pytype is a static analyzer; it does not execute the code it runs
on.
|