8000 Mypy conformance for FabricAdmin and CertificateAuthority by jtrejoespinoza-grid · Pull Request #39920 · project-chip/connectedhomeip · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Mypy conformance for FabricAdmin and CertificateAuthority #39920

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jtrejoespinoza-grid
Copy link
Contributor

Summary

Make whl files conformant to mypy

Search in build files *py files wich make the whl files.

grep -i ".*\.py" ./src/controller/python/BUILD.gn | grep -v py_scripts > files_mypy.txt

Found several py files which make the whl file and evaluate them with mypy.
cat files_mypy.txt | grep -v "clusters/Objects.py" | xargs -I {} mypy --config-file=src/python_testing/matter_testing_infrastructure/mypy.ini {} > mypy_whl.log

Clean the results:
cat mypy_results.log | sort | uniq | grep -iv "success" > mypy_results_filtered.txt

Find unique files to work on this issue:

cat mypy_results_filtered.txt | cut -d ":" -f1 | uniq > my_py_results_filtered_affected_files.py

src/controller/python/chip/CertificateAuthority.py
src/controller/python/chip/ChipCommissionableNodeCtrl.py
src/controller/python/chip/ChipDeviceCtrl.py
src/controller/python/chip/ChipReplStartup.py
src/controller/python/chip/ChipStack.py
src/controller/python/chip/FabricAdmin.py
src/controller/python/chip/bdx/Bdx.py
src/controller/python/chip/bdx/BdxTransfer.py
src/controller/python/chip/clusters/Attribute.py
src/controller/python/chip/clusters/Command.py
src/controller/python/chip/commissioning/commissioning_flow_blocks.py
src/controller/python/chip/commissioning/pase.py
src/controller/python/chip/credentials/cert.py
src/controller/python/chip/discovery/__init__.py
src/controller/python/chip/fault_injection/__init__.py
src/controller/python/chip/server/__init__.py
src/controller/python/chip/storage/__init__.py
src/controller/python/chip/utils/CommissioningBuildingBlocks.py
src/controller/python/chip/webrtc/callbacks.py
src/controller/python/chip/yaml/runner.py

In this PR is going to cover the following files as the first part:

src/controller/python/chip/CertificateAuthority.py
src/controller/python/chip/FabricAdmin.py

Related issues

#37750

Testing

Verify the files with mypy and confirm the file does not contain issues.

mypy --config-file=src/python_testing/matter_testing_infrastructure/mypy.ini src/controller/python/chip/FabricAdmin.py | grep FabricAdmin.py

mypy --config-file=src/python_testing/matter_testing_infrastructure/mypy.ini src/controller/python/chip/CertificateAuthority.py | grep CertificateAuthority.py

Copy link
Contributor
@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request improves mypy conformance for FabricAdmin and CertificateAuthority by adding Optional to type hints where appropriate, which is a good improvement. The changes look solid. I've only found a minor typo in a docstring that should be corrected.

''' Initializes the manager.

chipStack: Reference to a chip.ChipStack object that is used to initialize
CertificateAuthority instances.

persistentStorage: If provided, over-rides the default instance in the provided chipStack
persistentStorage: And optional reference to persistentStorage, if provided,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

There's a typo in the docstring. "And" should be "An".1

Style Guide References

Suggested change
persistentStorage: And optional reference to persistentStorage, if provided,
persistentStorage: An optional reference to persistentStorage, if provided,

Footnotes

  1. The style guide recommends looking for and fixing common typos. (link)

Copy link
github-actions bot commented Jul 9, 2025

PR #39920: Size comparison from 5dc7824 to 5669221

Full report (69 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, efr32, esp32, linux, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 5dc7824 5669221 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1103326 1103326 0 0.0
RAM 179026 179026 0 0.0
bl702 lighting-app bl702+eth FLASH 656474 656474 0 0.0
RAM 134977 134977 0 0.0
bl702+wifi FLASH 833912 833912 0 0.0
RAM 124541 124541 0 0.0
bl706+mfd+rpc+littlefs FLASH 1066286 1066286 0 0.0
RAM 117397 117397 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 895832 895832 0 0.0
RAM 105676 105676 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 979550 979550 0 0.0
RAM 109876 109876 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 764096 764096 0 0.0
RAM 103368 103368 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 775772 775772 0 0.0
RAM 108536 108536 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 721904 721904 0 0.0
RAM 96940 96940 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 706204 706204 0 0.0
RAM 97148 97148 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 549482 549482 0 0.0
RAM 205144 205144 0 0.0
lock CC3235SF_LAUNCHXL FLASH 582602 582602 0 0.0
RAM 205344 205344 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 663549 663549 0 0.0
RAM 77472 77472 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 683401 683401 0 0.0
RAM 80112 80112 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 683401 683401 0 0.0
RAM 80112 80112 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 640341 640341 0 0.0
RAM 72540 72540 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 624933 624933 0 0.0
RAM 73784 73784 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 644569 644569 0 0.0
RAM 76336 76336 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 644569 644569 0 0.0
RAM 76336 76336 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 645885 645885 0 0.0
RAM 76784 76784 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 665601 665601 0 0.0
RAM 79336 79336 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 665601 665601 0 0.0
RAM 79336 79336 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 620561 620561 0 0.0
RAM 70888 70888 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 640413 640413 0 0.0
RAM 73520 73520 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 640413 640413 0 0.0
RAM 73520 73520 0 0.0
efr32 lock-app BRD4187C FLASH 948196 948196 0 0.0
RAM 131528 131528 0 0.0
BRD4338a FLASH 749684 749676 -8 -0.0
RAM 203072 203072 0 0.0
window-app BRD4187C FLASH 1041528 1041520 -8 -0.0
RAM 127656 127656 0 0.0
esp32 all-clusters-app c3devkit DRAM 102272 102272 0 0.0
FLASH 1781550 1781550 0 0.0
IRAM 83862 83862 0 0.0
m5stack DRAM 121156 121156 0 0.0
FLASH 1748798 1748798 0 0.0
IRAM 117071 117071 0 0.0
linux air-purifier-app debug unknown 4856 4856 0 0.0
FLASH 2801826 2801826 0 0.0
RAM 117320 117320 0 0.0
all-clusters-app debug unknown 5672 5672 0 0.0
FLASH 6205432 6205432 0 0.0
RAM 531216 531216 0 0.0
all-clusters-minimal-app debug unknown 5536 5536 0 0.0
FLASH 5479092 5479092 0 0.0
RAM 228008 228008 0 0.0
bridge-app debug unknown 5568 5568 0 0.0
FLASH 4812438 4812438 0 0.0
RAM 207712 207712 0 0.0
camera-app debug unknown 8976 8976 0 0.0
FLASH 6939291 6939291 0 0.0
RAM 230024 230024 0 0.0
camera-controller debug unknown 9216 9216 0 0.0
FLASH 14374011 14374011 0 0.0
RAM 661368 661368 0 0.0
chip-tool debug unknown 6272 6272 0 0.0
FLASH 14722545 14722545 0 0.0
RAM 654880 654880 0 0.0
chip-tool-ipv6only arm64 unknown 40648 40648 0 0.0
FLASH 12699103 12699103 0 0.0
RAM 701176 701176 0 0.0
closure-app debug unknown 5536 5536 0 0.0
FLASH 4797974 4797974 0 0.0
RAM 200616 200616 0 0.0
fabric-admin debug unknown 5952 5952 0 0.0
FLASH 12785013 12785013 0 0.0
RAM 653912 653912 0 0.0
fabric-bridge-app debug unknown 4816 4816 0 0.0
FLASH 4598654 4598654 0 0.0
RAM 193424 193424 0 0.0
fabric-sync debug unknown 5056 5056 0 0.0
FLASH 5746381 5746381 0 0.0
RAM 491728 491728 0 0.0
lighting-app debug+rpc+ui unknown 6280 6280 0 0.0
FLASH 5661361 5661361 0 0.0
RAM 209848 209848 0 0.0
lock-app debug unknown 5488 5488 0 0.0
FLASH 4841044 4841044 0 0.0
RAM 197192 197192 0 0.0
ota-provider-app debug unknown 4856 4856 0 0.0
FLASH 4451252 4451252 0 0.0
RAM 186112 186112 0 0.0
ota-requestor-app debug unknown 4736 4736 0 0.0
FLASH 4523376 4523376 0 0.0
RAM 188984 188984 0 0.0
shell debug unknown 4288 4288 0 0.0
FLASH 3081260 3081260 0 0.0
RAM 147344 147344 0 0.0
thermostat-no-ble arm64 unknown 9832 9832 0 0.0
FLASH 4238655 4238655 0 0.0
RAM 233304 233304 0 0.0
tv-app debug unknown 5824 5824 0 0.0
FLASH 6110653 6110653 0 0.0
RAM 615976 615976 0 0.0
tv-casting-app debug unknown 5352 5352 0 0.0
FLASH 12876557 12876557 0 0.0
RAM 771472 771472 0 0.0
nxp contact mcxw71+release FLASH 625840 625840 0 0.0
RAM 63164 63164 0 0.0
lock mcxw71+release FLASH 777080 777080 0 0.0
RAM 67820 67820 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1632948 1632948 0 0.0
RAM 211104 211104 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1577140 1577140 0 0.0
RAM 208472 208472 0 0.0
light cy8ckit_062s2_43012 FLASH 1449724 1449724 0 0.0
RAM 197184 197184 0 0.0
lock cy8ckit_062s2_43012 FLASH 1482108 1482108 0 0.0
RAM 224904 224904 0 0.0
qpg lighting-app qpg6200+debug FLASH 744824 744824 0 0.0
RAM 94220 94220 0 0.0
lock-app qpg6200+debug FLASH 754580 754580 0 0.0
RAM 94248 94248 0 0.0
stm32 light STM32WB5MM-DK FLASH 466276 466276 0 0.0
RAM 141376 141376 0 0.0
telink bridge-app tl7218x FLASH 703360 703360 0 0.0
RAM 93600 93600 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 795074 795074 0 0.0
RAM 44016 44016 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 783480 783480 0 0.0
RAM 100912 100912 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 710786 710786 0 0.0
RAM 54240 54240 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 747360 747360 0 0.0
RAM 77404 77404 0 0.0
light-switch-app-ota-factory-data tl3218x_retention FLASH 724106 724106 0 0.0
RAM 36996 36996 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 603658 603658 0 0.0
RAM 112532 112532 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 819054 819058 4 0.0
RAM 99164 99164 0 0.0
tizen all-clusters-app arm unknown 5096 5096 0 0.0
FLASH 1698804 1698804 0 0.0
RAM 91444 91444 0 0.0
chip-tool-ubsan arm unknown 20752 20752 0 0.0
FLASH 21032146 21032146 0 0.0
RAM 9154448 9154448 0 0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant
0