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-101614: don't treat python3_d.dll as a Python dll by davidhewitt · Pull Request #101615 · python/cpython

Conversation

@davidhewitt

@davidhewitt davidhewitt commented Feb 6, 2023 •
edited by bedevere-bot
Loading

Uh oh!

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

Copy link
Copy Markdown
Contributor

Tentative fix for #101614.

I've verified locally that this fixes the issue for me, I'm unsure what testing strategy may exist in-tree for this.

  • Issue: Cannot import extensions linked against python3_d.dll debug build on Windows #101614

Sorry, something went wrong.

Uh oh!

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

All reactions
@davidhewitt
pythongh-101614: don't treat python3_d.dll as a Python dll
d8e29ba
@bedevere-bot bedevere-bot added the awaiting review label Feb 6, 2023
@bedevere-bot bedevere-bot mentioned this pull request Feb 6, 2023
Cannot import extensions linked against python3_d.dll debug build on Windows #101614
Closed
@ned-deily ned-deily assigned zooba Feb 6, 2023
@zooba

zooba commented Feb 7, 2023

Copy link
Copy Markdown
Member

Seems fine, though I wish I understood this code better. That += 20 is... intriguing? Concerning? I'm not quite sure

We should add a NEWS entry for this. Something like Correctly handle extensions built against debug binaries that reference ``python3_d.dll``. in the Windows section.

All reactions

Sorry, something went wrong.

Uh oh!

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

@arhadthedev

arhadthedev commented Feb 7, 2023

Copy link
Copy Markdown
Member

Seems fine, though I wish I understood this code better. That += 20 is... intriguing? Concerning? I'm not quite sure

It's repeated in the end of the loop too:

cpython/Python/dynload_win.c

Lines 158 to 164 in d8e29ba

}
import_data += 20;
}
}
return NULL;
}

Judging by variable names, I guess it's a length of an import symbol entry and we skip the first one of python3.dll for some reason.

All reactions

Sorry, something went wrong.

Uh oh!

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

@davidhewitt

davidhewitt commented Feb 7, 2023

Copy link
Copy Markdown
Contributor Author

20-byte import symbol structures sounds correct based on the comment just above.

cpython/Python/dynload_win.c

Line 110 in d8e29ba

empty values) of structures (20 bytes each), which contains (at

Will push news shortly.

zooba reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

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

@blurb-it
📜🤖 Added by blurb_it.
40975a6
@zooba zooba added needs backport to 3.10 needs backport to 3.11 only security fixes OS-windows labels Feb 8, 2023
@zooba
zooba merged commit 3a88de7 into python:main Feb 8, 2023
@bedevere-bot bedevere-bot removed the awaiting review label Feb 8, 2023
@miss-islington

miss-islington commented Feb 8, 2023

Copy link
Copy Markdown
Contributor

Thanks @davidhewitt for the PR, and @zooba for merging it 🌮🎉.. I'm working now to backport this PR to: 3.10, 3.11.
🐍🍒⛏🤖

All reactions

Sorry, something went wrong.

Uh oh!

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

@bedevere-bot

bedevere-bot commented Feb 8, 2023

Copy link
Copy Markdown

GH-101690 is a backport of this pull request to the 3.11 branch.

All reactions

Sorry, something went wrong.

Uh oh!

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

@bedevere-bot bedevere-bot removed the needs backport to 3.11 only security fixes label Feb 8, 2023
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 8, 2023
@davidhewitt @miss-islington
pythongh-101614: Don't treat python3_d.dll as a Python DLL when check…
b5e22f3
…ing extension modules for incompatibility (pythonGH-101615)

(cherry picked from commit 3a88de7)

Co-authored-by: David Hewitt <[email protected]>
@bedevere-bot

bedevere-bot commented Feb 8, 2023

Copy link
Copy Markdown

GH-101691 is a backport of this pull request to the 3.10 branch.

All reactions

Sorry, something went wrong.

Uh oh!

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

@bedevere-bot bedevere-bot removed the needs backport to 3.10 label Feb 8, 2023
miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Feb 8, 2023
@davidhewitt @miss-islington
pythongh-101614: Don't treat python3_d.dll as a Python DLL when check…
fed02dd
…ing extension modules for incompatibility (pythonGH-101615)

(cherry picked from commit 3a88de7)

Co-authored-by: David Hewitt <[email protected]>
miss-islington added a commit that referenced this pull request Feb 8, 2023
@miss-islington @davidhewitt
gh-101614: Don't treat python3_d.dll as a Python DLL when checking ex…
c63d7c9
…tension modules for incompatibility (GH-101615)

(cherry picked from commit 3a88de7)

Co-authored-by: David Hewitt <[email protected]>
miss-islington added a commit that referenced this pull request Feb 8, 2023
@miss-islington @davidhewitt
gh-101614: Don't treat python3_d.dll as a Python DLL when checking ex…
e8ce85d
…tension modules for incompatibility (GH-101615)

(cherry picked from commit 3a88de7)

Co-authored-by: David Hewitt <[email protected]>
@davidhewitt
davidhewitt deleted the gh-101614 branch February 8, 2023 18:12
carljm added a commit to carljm/cpython that referenced this pull request Feb 9, 2023
@carljm
Merge branch 'main' into inlinecomp2
be3becc
* main: (82 commits)
  pythongh-101670: typo fix in PyImport_ExtendInittab() (python#101723)
  pythonGH-99293: Document that `Py_TPFLAGS_VALID_VERSION_TAG` shouldn't be used. (#pythonGH-101736)
  no-issue: Add Dong-hee Na as the cjkcodecs codeowner (pythongh-101731)
  pythongh-101678: Merge math_1_to_whatever() and math_1() (python#101730)
  pythongh-101678: refactor the math module to use special functions from c11 (pythonGH-101679)
  pythongh-85984: Remove legacy Lib/pty.py code. (python#92365)
  pythongh-98831: Use opcode metadata for stack_effect() (python#101704)
  pythongh-101283: Version was just released, so should be changed in 3.11.3 (pythonGH-101719)
  pythongh-101283: Fix use of unbound variable (pythonGH-101712)
  pythongh-101283: Improved fallback logic for subprocess with shell=True on Windows (pythonGH-101286)
  pythongh-101277: Port more itertools static types to heap types (python#101304)
  pythongh-98831: Modernize CALL and family (python#101508)
  pythonGH-101696: invalidate type version tag in `_PyStaticType_Dealloc` (python#101697)
  pythongh-100221: Fix creating dirs in `make sharedinstall` (pythonGH-100329)
  pythongh-101670: typo fix in PyImport_AppendInittab() (pythonGH-101672)
  pythongh-101196: Make isdir/isfile/exists faster on Windows (pythonGH-101324)
  pythongh-101614: Don't treat python3_d.dll as a Python DLL when checking extension modules for incompatibility (pythonGH-101615)
  pythongh-100933: Improve `check_element` helper in `test_xml_etree` (python#100934)
  pythonGH-101578: Normalize the current exception (pythonGH-101607)
  pythongh-47937: Note that Popen attributes are read-only (python#93070)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

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

Assignees

@zooba zooba

Labels

OS-windows

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.

5 participants

@davidhewitt @zooba @arhadthedev @miss-islington @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.