Title: test_embed failures after switching configure options due to missing Makefile dependencies · Issue #114505 · python/cpython · GitHub
Open Graph Title: test_embed failures after switching configure options due to missing Makefile dependencies · Issue #114505 · python/cpython
X Title: test_embed failures after switching configure options due to missing Makefile dependencies · Issue #114505 · python/cpython
Description: Bug report Bug description: test_embed started failing for me recently on free threaded builds on both M1 Mac and Ubuntu (Intel). git bisect narrowed it down to a suspect commit. @colesbury this is probably for you. Unfortunately, on my ...
Open Graph Description: Bug report Bug description: test_embed started failing for me recently on free threaded builds on both M1 Mac and Ubuntu (Intel). git bisect narrowed it down to a suspect commit. @colesbury this is...
X Description: Bug report Bug description: test_embed started failing for me recently on free threaded builds on both M1 Mac and Ubuntu (Intel). git bisect narrowed it down to a suspect commit. @colesbury this is...
Opengraph URL: https://github.com/python/cpython/issues/114505
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"test_embed failures after switching configure options due to missing Makefile dependencies","articleBody":"# Bug report\n\n### Bug description:\n\n`test_embed` started failing for me recently on free threaded builds on both M1 Mac and Ubuntu (Intel). `git bisect` narrowed it down to a suspect commit. @colesbury this is probably for you.\n\nUnfortunately, on my Mac I get this commit as the culprit:\n\n```shell\n% git bisect bad\n5f1997896d9c3ecf92e9863177c452b468a6a2c8 is the first bad commit\ncommit 5f1997896d9c3ecf92e9863177c452b468a6a2c8\nAuthor: Sam Gross \u003ccolesbury@gmail.com\u003e\nDate: Tue Jan 23 13:05:15 2024 -0500\n\n gh-112984: Fix link error on free-threaded Windows build (GH-114455)\n \n The test_peg_generator test tried to link the python313_d.lib library,\n which failed because the library is now named python313t_d.lib. The\n underlying problem is that the \"compiler\" attribute was not set when\n we call get_libraries() from distutils.\n\n Tools/peg_generator/pegen/build.py | 3 +++\n 1 file changed, 3 insertions(+)\n```\nwhile in my Linux environment it says this:\n\n```\n% git bisect bad\nb331381485c1965d1c88b7aee7ae9604aca05758 is the first bad commit\ncommit b331381485c1965d1c88b7aee7ae9604aca05758\nAuthor: Sam Gross \u003ccolesbury@gmail.com\u003e\nDate: Tue Jan 16 16:42:15 2024 -0500\n\n gh-112529: Track if debug allocator is used as underlying allocator (#113747)\n \n * gh-112529: Track if debug allocator is used as underlying allocator\n \n The GC implementation for free-threaded builds will need to accurately\n detect if the debug allocator is used because it affects the offset of\n the Python object from the beginning of the memory allocation. The\n current implementation of `_PyMem_DebugEnabled` only considers if the\n debug allocator is the outer-most allocator; it doesn't handle the case\n of \"hooks\" like tracemalloc being used on top of the debug allocator.\n \n This change enables more accurate detection of the debug allocator by\n tracking when debug hooks are enabled.\n \n * Simplify _PyMem_DebugEnabled\n\n Include/internal/pycore_pymem.h | 3 +++\n Include/internal/pycore_pymem_init.h | 2 ++\n Include/internal/pycore_runtime_init.h | 1 +\n Objects/obmalloc.c | 21 +++++++++++++++------\n 4 files changed, 21 insertions(+), 6 deletions(-)\n```\n\n(I backed up farther on my Linux box to find a good commit.) 16 January was a long time ago. My inclination is that the later commit is the culprit.\n\nI then tried with the GIL enabled on main. Still an error. Hmmm... I went through the bisect process again on my Mac and landed on this as the putative culprit commit:\n\n```\n% git bisect good\n441affc9e7f419ef0b68f734505fa2f79fe653c7 is the first bad commit\ncommit 441affc9e7f419ef0b68f734505fa2f79fe653c7\nAuthor: Sam Gross \u003ccolesbury@gmail.com\u003e\nDate: Tue Jan 23 13:08:23 2024 -0500\n\n gh-111964: Implement stop-the-world pauses (gh-112471)\n \n The `--disable-gil` builds occasionally need to pause all but one thread. Some\n examples include:\n \n * Cyclic garbage collection, where this is often called a \"stop the world event\"\n * Before calling `fork()`, to ensure a consistent state for internal data structures\n * During interpreter shutdown, to ensure that daemon threads aren't accessing Python objects\n \n This adds the following functions to implement global and per-interpreter pauses:\n \n * `_PyEval_StopTheWorldAll()` and `_PyEval_StartTheWorldAll()` (for the global runtime)\n * `_PyEval_StopTheWorld()` and `_PyEval_StartTheWorld()` (per-interpreter)\n \n (The function names may change.)\n \n These functions are no-ops outside of the `--disable-gil` build.\n\n Include/cpython/pystate.h | 2 +-\n Include/internal/pycore_ceval.h | 1 +\n Include/internal/pycore_interp.h | 17 +++\n Include/internal/pycore_llist.h | 3 +-\n Include/internal/pycore_pystate.h | 51 +++++--\n Include/internal/pycore_runtime.h | 7 +\n Include/internal/pycore_runtime_init.h | 3 +\n Include/pymacro.h | 3 +\n Python/ceval_gil.c | 9 ++\n Python/pystate.c | 269 +++++++++++++++++++++++++++++++--\n 10 files changed, 336 insertions(+), 29 deletions(-)\n```\n\n\n### CPython versions tested on:\n\nCPython main branch\n\n### Operating systems tested on:\n\nLinux, macOS\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-114513\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/smontanaro","@type":"Person","name":"smontanaro"},"datePublished":"2024-01-23T22:01:04.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":9},"url":"https://github.com/114505/cpython/issues/114505"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:d27dc89a-4c3d-8509-6aaf-67d6bec0873b |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | C3D6:1CEAED:684D62:8CE171:696AAF2C |
| html-safe-nonce | 2ef6527b73c3457e3b6673ddd0438db6ebc19a15c57d6c1e9165fa308390a5c0 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDM0Q2OjFDRUFFRDo2ODRENjI6OENFMTcxOjY5NkFBRjJDIiwidmlzaXRvcl9pZCI6IjQ5MzI0MDIzOTUxMDMyNzY4NDQiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | dded7ba6bd829edc7034f2a5be52bcfaaba37528aa4e6ec2250b18edecaf7e0a |
| hovercard-subject-tag | issue:2097061635 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/114505/issue_layout |
| twitter:image | https://opengraph.githubassets.com/54b558a2bce95dcc52ab50cdc4c30bc7c003b4fea7c245b6523f31e66d58c838/python/cpython/issues/114505 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/54b558a2bce95dcc52ab50cdc4c30bc7c003b4fea7c245b6523f31e66d58c838/python/cpython/issues/114505 |
| og:image:alt | Bug report Bug description: test_embed started failing for me recently on free threaded builds on both M1 Mac and Ubuntu (Intel). git bisect narrowed it down to a suspect commit. @colesbury this is... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | smontanaro |
| hostname | github.com |
| expected-hostname | github.com |
| None | 4fa1799b6a53c2d30c950d74230781bef9e7f61138c72c7727e4b83f0743752b |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 41f276818bd204c4a30a0281fb3c576298d9474c |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width