GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-102251: Updates to test_imp Toward Fixing Some Refleaks by ericsnowcurrently · Pull Request #102254 · python/cpython

Conversation

@ericsnowcurrently

@ericsnowcurrently ericsnowcurrently commented Feb 25, 2023 •
edited by bedevere-bot
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

This includes some cleanup, some tweaks to the existing tests, and a bunch of new test cases. It is all related to fixing the refleaks introduced by 096d009. I haven't been able to find the leak yet, but these changes are a consequence of that effort.

The only change here that might have impact outside the tests in question is in imp.py, where I update imp.load_dynamic() to use spec_from_file_location() instead of creating a ModuleSpec directly. (See commit 0c65700 below.)

Also note that I've updated the tests to only skip if we're checking for refleaks (regrtest's --huntrleaks), whereas in gh-101969 I had skipped the tests entirely. The tests will be useful for some upcoming work and I'd rather the refleaks not hold that up. (It isn't clear how quickly we'll be able to fix the leaking code, though it will certainly be done in the short term.)

  • Issue: Fix Refleak in test_import #102251

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
ericsnowcurrently added 17 commits February 17, 2023 09:57
@ericsnowcurrently
Stop skipping the tests.
2be855c
@ericsnowcurrently
_modules_by_index_clear() -> _modules_by_index_clear_one().
9bbedda
@ericsnowcurrently
Add an explanation of what happens when extensions are loaded.
83f42d6
@ericsnowcurrently
Add _forget_extension().
828a734
@ericsnowcurrently
Clean up test_singlephase_multiple_interpreters.
e9096cd
@ericsnowcurrently
Add another test case.
c993f97
@ericsnowcurrently
Expand test_singlephase_multiple_interpreters.
cc5c771
@ericsnowcurrently
Clean up the tests.
08741b8
@ericsnowcurrently
Clean up clear_singlephase_extension().
31716e9
@ericsnowcurrently
Add a check.
2c3dd42
@ericsnowcurrently
Fix a typo.
a353e7e
@ericsnowcurrently
script -> snapshot_script.
c6a39e3
@ericsnowcurrently
Use spec_from_file_location() in imp.load_dynamic().
0c65700
@ericsnowcurrently
Update single-phase-init tests.
993484e
@ericsnowcurrently
Do the initial cleanup in setUpClass().
fc94060
@ericsnowcurrently
Move the requires_load_dynamic decorator to the class.
3e2a1dd
@ericsnowcurrently
For now, skip the tests during refleak detection.
f0ce607
@ericsnowcurrently ericsnowcurrently added the skip news label Feb 25, 2023
@ericsnowcurrently
ericsnowcurrently requested review from brettcannon, encukou, ncoghlan and warsaw as code owners February 25, 2023 19:02
@bedevere-bot bedevere-bot added the awaiting core review label Feb 25, 2023
@bedevere-bot bedevere-bot mentioned this pull request Feb 25, 2023
Fix Refleak in test_import #102251
Closed
@ericsnowcurrently ericsnowcurrently added the 🔨 test-with-refleak-buildbots Test PR w/ refleak buildbots; report in status section label Feb 25, 2023
@bedevere-bot

bedevere-bot commented Feb 25, 2023

Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @ericsnowcurrently for commit f0ce607 🤖

If you want to schedule another build, you need to add the 🔨 test-with-refleak-buildbots label again.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot bedevere-bot removed the 🔨 test-with-refleak-buildbots Test PR w/ refleak buildbots; report in status section label Feb 25, 2023
@ericsnowcurrently

ericsnowcurrently commented Feb 27, 2023

Copy link
Copy Markdown
Member Author

Looks like the leaks in test_list and test_iter were unrelated. (See gh-102265.)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@ericsnowcurrently
ericsnowcurrently merged commit bb0cf8f into python:main Feb 27, 2023
@bedevere-bot bedevere-bot removed the awaiting core review label Feb 27, 2023
@ericsnowcurrently
ericsnowcurrently deleted the fix-ext-module-refleaks branch February 27, 2023 16:21
carljm added a commit to carljm/cpython that referenced this pull request Feb 28, 2023
@carljm
Merge branch 'main' into inlinecomp2
73dc0ed
* main: (67 commits)
  pythongh-99108: Add missing md5/sha1 defines to Modules/Setup (python#102308)
  pythongh-100227: Move _str_replace_inf to PyInterpreterState (pythongh-102333)
  pythongh-100227: Move the dtoa State to PyInterpreterState (pythongh-102331)
  pythonGH-102305: Expand some macros in generated_cases.c.h (python#102309)
  Migrate to new PSF mailgun account (python#102284)
  pythongh-102192: Replace PyErr_Fetch/Restore etc by more efficient alternatives (in Python/) (python#102193)
  pythonGH-90744: Fix erroneous doc links in the sys module (python#101319)
  pythongh-87092: Make jump target label equal to the offset of the target in the instructions sequence (python#102093)
  pythongh-101101: Unstable C API tier (PEP 689) (pythonGH-101102)
  IDLE: Simplify DynOptionsMenu __init__code (python#101371)
  pythongh-101561: Add typing.override decorator (python#101564)
  pythongh-101825: Clarify that as_integer_ratio() output is always normalized (python#101843)
  pythongh-101773: Optimize creation of Fractions in private methods (python#101780)
  pythongh-102251: Updates to test_imp Toward Fixing Some Refleaks (pythongh-102254)
  pythongh-102296 Document that inspect.Parameter kinds support ordering (pythonGH-102297)
  pythongh-102250: Fix double-decref in COMPARE_AND_BRANCH error case (pythonGH-102287)
  pythongh-101100: Fix sphinx warnings in `types` module (python#102274)
  pythongh-91038: Change default argument value to `False` instead of `0` (python#31621)
  pythongh-101765: unicodeobject: use Py_XDECREF correctly (python#102283)
  [doc] Improve grammar/fix missing word (pythonGH-102060)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@brettcannon brettcannon Awaiting requested review from brettcannon brettcannon is a code owner
@encukou encukou Awaiting requested review from encukou
@ncoghlan ncoghlan Awaiting requested review from ncoghlan ncoghlan is a code owner
@warsaw warsaw Awaiting requested review from warsaw warsaw is a code owner

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

skip news

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@ericsnowcurrently @bedevere-bot
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.