You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
open() is used several times in the boxlib frontend without closing the files, triggering a ResourceWarning when the files go out of scope. Originally noticed by @neutrinoceros in #4845 (comment).
Code for reproduction
Standalone reproducer using the ParticleCavity dataset:
importwarningsimportyt# enable all warningswarnings.simplefilter("default")
ds=yt.load("plt.Cavity00010")
Actual outcome
/home/eric/build/yt/yt/frontends/boxlib/data_structures.py:701: ResourceWarning: unclosed file <_io.TextIOWrapper name='/scratch/yt-data/plt.Cavity00010/inputs' mode='r' encoding='UTF-8'>
lines = [line.lower() for line in open(cparam_filepath).readlines()]
ResourceWarning: Enable tracemalloc to get the object allocation traceback
/home/eric/build/yt/yt/frontends/boxlib/data_structures.py:728: ResourceWarning: unclosed file <_io.TextIOWrapper name='/scratch/yt-data/plt.Cavity00010/Header' mode='r' encoding='UTF-8'>
self._parse_header_file()
ResourceWarning: Enable tracemalloc to get the object allocation traceback
yt : [INFO ] 2024-04-30 14:59:50,921 Parameters: current_time = 0.017408426036316
yt : [INFO ] 2024-04-30 14:59:50,921 Parameters: domain_dimensions = [16 16 1]
yt : [INFO ] 2024-04-30 14:59:50,921 Parameters: domain_left_edge = [0. 0. 0.]
yt : [INFO ] 2024-04-30 14:59:50,922 Parameters: domain_right_edge = [1. 1. 1.]
I misunderstood the problem that @neutrinoceros raised in his comment. As noted in conftest.py, we explicitly ignore this class of warnings during tests, and they're ignored by default during normal usage. I'm leaving the PR open, as closing the files is probably a good idea anyways.
Interesting. I didn't mean to suggest that the problem existed on main, but maybe it does, and in that case it cannot be a blocker to #4845. Your PR clearly shows that's indeed the current state so I suggest we keep this open too.
Bug report
Bug summary
open()
is used several times in the boxlib frontend without closing the files, triggering aResourceWarning
when the files go out of scope. Originally noticed by @neutrinoceros in #4845 (comment).Code for reproduction
Standalone reproducer using the
ParticleCavity
dataset:Actual outcome
Expected outcome
No warnings.
Version Information
The text was updated successfully, but these errors were encountered: