Add static type checking#8
Open
MrIndeciso wants to merge 2 commits into
Open
Annotations
12 errors and 11 warnings
|
|
|
libdestruct/c/struct_parser.py#L15
libdestruct/c/struct_parser.py:15:6: unresolved-import: Cannot resolve imported module `pycparser`
info: Searched in the following paths during module resolution:
info: 1. /home/runner/work/libdestruct/libdestruct (first-party code)
info: 2. vendored://stdlib (stdlib typeshed stubs vendored by ty)
info: 3. /opt/hostedtoolcache/Python/3.12.13/x64/lib/python3.12/site-packages (site-packages)
info: make sure your Python environment is properly configured: https://docs.astral.sh/ty/modules/#python-environment
info: rule `unresolved-import` is enabled by default
|
|
libdestruct/common/array/array_field_inflater.py#L40
libdestruct/common/array/array_field_inflater.py:40:5: ARG001 Unused function argument: `item`
|
|
libdestruct/common/array/array.py#L10
libdestruct/common/array/array.py:10:29: TC003 Move standard library import `collections.abc.Iterator` into a type-checking block
help: Move into type-checking block
|
|
libdestruct/c/struct_parser.py#L248
libdestruct/c/struct_parser.py:248:7: FIX002 Line contains TODO, consider resolving the issue
|
|
libdestruct/c/struct_parser.py#L134
libdestruct/c/struct_parser.py:134:17: FURB110 Replace ternary `if` expression with `or` operator
help: Replace with `or` operator
|
|
libdestruct/c/ctypes_generic.py#L30
libdestruct/c/ctypes_generic.py:30:44: ANN401 Dynamically typed expressions (typing.Any) are disallowed in `value`
|
|
libdestruct/c/ctypes_generic.py#L26
libdestruct/c/ctypes_generic.py:26:39: ANN401 Dynamically typed expressions (typing.Any) are disallowed in `get`
|
|
libdestruct/c/c_str.py#L9
libdestruct/c/c_str.py:9:29: TC003 Move standard library import `collections.abc.Iterator` into a type-checking block
help: Move into type-checking block
|
|
libdestruct/c/c_integer_types.py#L31
libdestruct/c/c_integer_types.py:31:13: S101 Use of `assert` detected
|
|
libdestruct/backing/memory_resolver.py#L20
libdestruct/backing/memory_resolver.py:20:121: E501 Line too long (142 > 120)
|
|
libdestruct/backing/fake_resolver.py#L17
libdestruct/backing/fake_resolver.py:17:121: E501 Line too long (147 > 120)
|
|
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-python@v5. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
|
|
libdestruct/backing/memory_resolver.py#L51
libdestruct/backing/memory_resolver.py:51:9: invalid-method-override: Invalid override of method `modify`: Definition is incompatible with `Resolver.modify`
libdestruct/backing/resolver.py:40:9: `Resolver.modify` defined here
info: This violates the Liskov Substitution Principle
info: rule `invalid-method-override` was selected in the configuration file
|
|
libdestruct/backing/memory_resolver.py#L46
libdestruct/backing/memory_resolver.py:46:9: invalid-method-override: Invalid override of method `resolve`: Definition is incompatible with `Resolver.resolve`
libdestruct/backing/resolver.py:36:9: `Resolver.resolve` defined here
info: This violates the Liskov Substitution Principle
info: rule `invalid-method-override` was selected in the configuration file
|
|
libdestruct/backing/memory_resolver.py#L35
libdestruct/backing/memory_resolver.py:35:9: invalid-method-override: Invalid override of method `relative_from_own`: Definition is incompatible with `Resolver.relative_from_own`
libdestruct/backing/resolver.py:24:9: `Resolver.relative_from_own` defined here
info: This violates the Liskov Substitution Principle
info: rule `invalid-method-override` was selected in the configuration file
|
|
libdestruct/backing/memory_resolver.py#L33
libdestruct/backing/memory_resolver.py:33:16: unsupported-operator: Operator `+` is not supported between objects of type `int` and `Unknown | None`
libdestruct/backing/memory_resolver.py:33:16: Has type `int`
libdestruct/backing/memory_resolver.py:33:48: Has type `Unknown | None`
info: rule `unsupported-operator` was selected in the configuration file
|
|
libdestruct/backing/memory_resolver.py#L24
libdestruct/backing/memory_resolver.py:24:9: invalid-assignment: Object of type `None` is not assignable to attribute `parent` of type `MemoryResolver`
info: rule `invalid-assignment` was selected in the configuration file
|
|
libdestruct/backing/fake_resolver.py#L62
libdestruct/backing/fake_resolver.py:62:9: invalid-method-override: Invalid override of method `modify`: Definition is incompatible with `Resolver.modify`
libdestruct/backing/resolver.py:40:9: `Resolver.modify` defined here
info: This violates the Liskov Substitution Principle
info: rule `invalid-method-override` was selected in the configuration file
|
|
libdestruct/backing/fake_resolver.py#L43
libdestruct/backing/fake_resolver.py:43:9: invalid-method-override: Invalid override of method `resolve`: Definition is incompatible with `Resolver.resolve`
libdestruct/backing/resolver.py:36:9: `Resolver.resolve` defined here
info: This violates the Liskov Substitution Principle
info: rule `invalid-method-override` was selected in the configuration file
|
|
libdestruct/backing/fake_resolver.py#L32
libdestruct/backing/fake_resolver.py:32:9: invalid-method-override: Invalid override of method `relative_from_own`: Definition is incompatible with `Resolver.relative_from_own`
libdestruct/backing/resolver.py:24:9: `Resolver.relative_from_own` defined here
info: This violates the Liskov Substitution Principle
info: rule `invalid-method-override` was selected in the configuration file
|
|
libdestruct/backing/fake_resolver.py#L30
libdestruct/backing/fake_resolver.py:30:16: unsupported-operator: Operator `+` is not supported between objects of type `int` and `Unknown | None`
libdestruct/backing/fake_resolver.py:30:16: Has type `int`
libdestruct/backing/fake_resolver.py:30:48: Has type `Unknown | None`
info: rule `unsupported-operator` was selected in the configuration file
|
|
libdestruct/backing/fake_resolver.py#L21
libdestruct/backing/fake_resolver.py:21:9: invalid-assignment: Object of type `None` is not assignable to attribute `parent` of type `FakeResolver`
info: rule `invalid-assignment` was selected in the configuration file
|
The logs for this run have expired and are no longer available.
Loading