Repository navigation
fix(python): use context managers in standalone pfm IO - #9804
Open
Bartok (Bartok9) wants to merge 1 commit into
Open
Bartok (Bartok9) wants to merge 1 commit into
Bartok (Bartok9) wants to merge 1 commit into
Conversation
Close PFM handles on all paths and drop unused matplotlib/pdb imports so offline roundtrips work without GUI deps. Signed-off-by: Bartok9 <danielrpike9@gmail.com>
Bartok (Bartok9)
force-pushed
the
aerial/python-pfm-context-managers-20260722
branch
from
October 25, 2026 21:27
24b899e to
1b96d3e
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
PythonClient/airsim/pfm.pyread/write to usewith open(...)so handles close on exception paths.matplotlib/pdbimports (blocked headless offline unit tests).Motivation
The standalone PFM helpers opened files without context managers (
file.close()only on the success path for reads; write never explicit-close). Mid-parse failures could leak FDs. GUI imports also made casual import of the helper heavy / fragile.Note:
utils.pyhas parallel PFM helpers (#9796 hardens those); this PR is the standalonepfm.pymodule used by some samples.Verification
PYTHONPATH=PythonClient python3 -m unittest tests.test_pfm_roundtrip -v→ 3 passedutils.py/types.pyBartok9 stackNotes
Agent-Owner:
sera· Platform: hermes · Claim-TTL: 24hClaim: bartok
Operator: bartok
Campaign: aerial-drone