Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | gh-105979: Fix exception handling in `unmarshal_frozen_code` ↵ | chgnrdv | 2023-06-22 | 1 | -0/+1 | |
| | | | | (`Python/import.c`) (#105980) | |||||
* | gh-105927: Avoid calling PyWeakref_GET_OBJECT() (#105997) | Victor Stinner | 2023-06-22 | 1 | -3/+6 | |
| | | | | | | | * Replace PyWeakref_GET_OBJECT() with _PyWeakref_GET_REF(). * _sqlite/blob.c now holds a strong reference to the blob object while calling close_blob(). * _xidregistry_find_type() now holds a strong reference to registered while using it. | |||||
* | gh-101538: Add experimental wasi-threads build (#101537) | YAMAMOTO Takashi | 2023-06-22 | 1 | -0/+8 | |
| | | | | Co-authored-by: Brett Cannon <brett@python.org> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> | |||||
* | GH-91095: Specialize calls to normal Python classes. (GH-99331) | Mark Shannon | 2023-06-22 | 8 | -107/+346 | |
| | ||||||
* | gh-105927: finalize_modules_clear_weaklist() uses _PyWeakref_GET_REF() (#105971) | Victor Stinner | 2023-06-21 | 1 | -4/+5 | |
| | | | | | finalize_modules_clear_weaklist() now holds a strong reference to the module longer than before: replace PyWeakref_GET_OBJECT() with _PyWeakref_GET_REF(). | |||||
* | gh-105922: Add PyImport_AddModuleRef() function (#105923) | Victor Stinner | 2023-06-20 | 2 | -12/+31 | |
| | | | | | | * Add tests on PyImport_AddModuleRef(), PyImport_AddModule() and PyImport_AddModuleObject(). * pythonrun.c: Replace Py_XNewRef(PyImport_AddModule(name)) with PyImport_AddModuleRef(name). | |||||
* | gh-105922: Refactor PyRun_InteractiveOneObjectEx() (#105925) | Victor Stinner | 2023-06-19 | 1 | -74/+108 | |
| | | | | | | | | | | | Refactor PyRun_InteractiveOneObjectEx(), _PyRun_SimpleFileObject() and PyRun_SimpleStringFlags(): * Keep a strong reference to the __main__ module while using its dictionary (PyModule_GetDict()). Use PyImport_AddModule() with Py_XNewRef(). * Declare variables closer to where they are defined. * Rename variables to use name longer than 1 character. * Add pyrun_one_parse_ast() sub-function. | |||||
* | gh-105481: generate _specializations and _specialized_instructions from ↵ | Irit Katriel | 2023-06-19 | 3 | -53/+55 | |
| | | | | bytecodes.c (#105913) | |||||
* | gh-105908: fix `barry_as_FLUFL` future import (#105909) | Crowthebird | 2023-06-19 | 1 | -6/+10 | |
| | ||||||
* | GH-104584: Assorted fixes for the optimizer API. (GH-105683) | Mark Shannon | 2023-06-19 | 3 | -191/+210 | |
| | | | | | | * Add test for long loops * Clear ENTER_EXECUTOR when deopting code objects. | |||||
* | gh-105481: remove HAS_ARG, HAS_CONST, IS_JUMP_OPCODE, IS_PSEUDO_OPCODE and ↵ | Irit Katriel | 2023-06-17 | 4 | -27/+19 | |
| | | | | replace by their new versions (#105865) | |||||
* | GH-105840: Fix assertion failures when specializing calls with too many ↵ | Brandt Bucher | 2023-06-16 | 1 | -2/+2 | |
| | | | | __defaults__ (GH-105847) | |||||
* | GH-105588: Add missing error checks to some obj2ast_* converters (GH-105589) | Brandt Bucher | 2023-06-15 | 1 | -0/+7 | |
| | ||||||
* | gh-105481: add HAS_JUMP flag to opcode metadata (#105791) | Irit Katriel | 2023-06-14 | 6 | -165/+185 | |
| | ||||||
* | GH-77273: Better bytecodes for f-strings (GH-6132) | Mark Shannon | 2023-06-14 | 6 | -373/+389 | |
| | ||||||
* | GH-100987: Allow objects other than code objects as the "executable" of an ↵ | Mark Shannon | 2023-06-14 | 15 | -477/+473 | |
| | | | | | | | | | | internal frame. (GH-105727) * Add table describing possible executable classes for out-of-process debuggers. * Remove shim code object creation code as it is no longer needed. * Make lltrace a bit more robust w.r.t. non-standard frames. | |||||
* | gh-105699: Use a Thread-Local Variable for PKGCONTEXT (gh-105740) | Eric Snow | 2023-06-14 | 1 | -0/+15 | |
| | | | This fixes a race during import. The existing _PyRuntimeState.imports.pkgcontext is shared between interpreters, and occasionally this would cause a crash when multiple interpreters were importing extensions modules at the same time. To solve this we add a thread-local variable for the value. We also leave the existing state (and infrequent race) in place for platforms that do not support thread-local variables. | |||||
* | gh-104812: Run Pending Calls in any Thread (gh-104813) | Eric Snow | 2023-06-13 | 4 | -83/+191 | |
| | | | For a while now, pending calls only run in the main thread (in the main interpreter). This PR changes things to allow any thread run a pending call, unless the pending call was explicitly added for the main thread to run. | |||||
* | gh-105481: add flags to each instr in the opcode metadata table, to replace ↵ | Irit Katriel | 2023-06-13 | 5 | -609/+627 | |
| | | | | opcode.hasarg/hasname/hasconst (#105482) | |||||
* | gh-105603: Change the PyInterpreterConfig.own gil Field (gh-105620) | Eric Snow | 2023-06-13 | 1 | -4/+15 | |
| | | | We are changing it to be more flexible that a strict bool can be for possible future expanded used cases. | |||||
* | GH-105678: Split MAKE_FUNCTION into MAKE_FUNCTION and SET_FUNCTION_ATTRIBUTE ↵ | Mark Shannon | 2023-06-13 | 5 | -337/+373 | |
| | | | | (GH-105680) | |||||
* | gh-105673: Fix uninitialized warning in sysmodule.c (#105674) | Nikita Sobolev | 2023-06-12 | 1 | -1/+1 | |
| | | | In sys_add_xoption(), 'value' may be uninitialized for some error paths. | |||||
* | gh-105481: add pseudo-instructions to the bytecodes DSL (#105506) | Irit Katriel | 2023-06-11 | 6 | -257/+396 | |
| | ||||||
* | gh-105375: Improve error handling in the sys extension module (#105611) | Erlend E. Aasland | 2023-06-11 | 1 | -6/+18 | |
| | | | | | In _PySys_AddXOptionWithError() and sys_add_xoption(), bail on first error to prevent exceptions from possibly being overwritten. | |||||
* | gh-105375: Improve PyErr_WarnExplicit() error handling (#105610) | Erlend E. Aasland | 2023-06-11 | 1 | -12/+16 | |
| | | | | Bail on first error to prevent exceptions from possibly being overwritten. | |||||
* | gh-105375: Improve error handling in the builtins extension module (#105585) | Erlend E. Aasland | 2023-06-11 | 1 | -8/+32 | |
| | ||||||
* | gh-105375: Improve error handling in compiler_enter_scope() (#105494) | Erlend E. Aasland | 2023-06-09 | 1 | -1/+5 | |
| | ||||||
* | gh-105564: Don't include artificial newlines in the line attribute of tokens ↵ | Pablo Galindo Salgado | 2023-06-09 | 1 | -0/+3 | |
| | | | | (#105565) | |||||
* | gh-105396: Deprecate PyImport_ImportModuleNoBlock() function (#105397) | Victor Stinner | 2023-06-09 | 1 | -0/+6 | |
| | | | | Deprecate the PyImport_ImportModuleNoBlock() function which is just an alias to PyImport_ImportModule() since Python 3.3. | |||||
* | gh-100227: Lock Around Modification of the Global Allocators State (gh-105516) | Eric Snow | 2023-06-08 | 1 | -1/+2 | |
| | | | The risk of a race with this state is relatively low, but we play it safe anyway. We do avoid using the lock in performance-sensitive cases where the risk of a race is very, very low. | |||||
* | gh-100227: Lock Around Adding Global Audit Hooks (gh-105515) | Eric Snow | 2023-06-08 | 2 | -20/+43 | |
| | | | The risk of a race with this state is relatively low, but we play it safe anyway. | |||||
* | gh-100227: Lock Around Use of the Global "atexit" State (gh-105514) | Eric Snow | 2023-06-08 | 2 | -25/+27 | |
| | | | The risk of a race with this state is relatively low, but we play it safe anyway. | |||||
* | GH-105229: Remove remaining two-codeunit superinstructions (GH-105326) | Mark Shannon | 2023-06-08 | 7 | -588/+495 | |
| | | | | * Remove LOAD_CONST__LOAD_FAST and LOAD_FAST__LOAD_CONST superinstructions. | |||||
* | gh-104635: Eliminate redundant STORE_FAST instructions in the compiler ↵ | Dong-hee Na | 2023-06-07 | 1 | -5/+18 | |
| | | | | (gh-105320) | |||||
* | gh-105390: Add explicit type cast (#105466) | Kirill Podoprigora | 2023-06-07 | 1 | -1/+2 | |
| | ||||||
* | GH-104610: Remove the use of `PREDICT` macros. (GH-104651) | Mark Shannon | 2023-06-07 | 3 | -551/+507 | |
| | ||||||
* | gh-105435: Fix spurious NEWLINE token if file ends with comment without a ↵ | Pablo Galindo Salgado | 2023-06-07 | 1 | -0/+11 | |
| | | | | newline (#105442) | |||||
* | gh-105390: Correctly raise TokenError instead of SyntaxError for tokenize ↵ | Pablo Galindo Salgado | 2023-06-07 | 1 | -7/+2 | |
| | | | | errors (#105399) | |||||
* | gh-105259: Ensure we don't show newline characters for trailing NEWLINE ↵ | Pablo Galindo Salgado | 2023-06-06 | 1 | -4/+6 | |
| | | | | tokens (#105364) | |||||
* | gh-103906: Remove immortal refcounting in compile/marshal.c (gh-103922) | Dong-hee Na | 2023-06-05 | 2 | -7/+7 | |
| | ||||||
* | gh-105164: Detect annotations inside match blocks (#105177) | Jelle Zijlstra | 2023-06-05 | 1 | -0/+10 | |
| | ||||||
* | GH-105229: Replace some superinstructions with single instruction ↵ | Mark Shannon | 2023-06-05 | 7 | -610/+639 | |
| | | | | equivalent. (GH-105230) | |||||
* | GH-104584: Allow optimizers to opt out of optimizing. (GH-105244) | Mark Shannon | 2023-06-05 | 1 | -11/+18 | |
| | ||||||
* | gh-103277: remove unused macros (#105247) | Irit Katriel | 2023-06-03 | 1 | -19/+0 | |
| | ||||||
* | gh-87092: avoid gcc warning on uninitialized struct field in assemble… ↵ | Dong-hee Na | 2023-06-02 | 1 | -0/+1 | |
| | | | | | (gh-105243) gh-87092: avoid gcc warning on uninitialized struct field in assemble.c (part2) | |||||
* | gh-105214: Use named constants for MAKE_FUNCTION oparg (#105215) | Jelle Zijlstra | 2023-06-02 | 5 | -289/+288 | |
| | ||||||
* | GH-104584: Plugin optimizer API (GH-105100) | Mark Shannon | 2023-06-02 | 8 | -358/+676 | |
| | ||||||
* | gh-105184: document that marshal functions can fail and need to be checked ↵ | Irit Katriel | 2023-06-02 | 1 | -0/+4 | |
| | | | | with PyErr_Occurred (#105185) | |||||
* | gh-104799: Default missing lists in AST to the empty list (#104834) | Jelle Zijlstra | 2023-06-02 | 1 | -219/+365 | |
| | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> | |||||
* | gh-92536: Remove PyUnicode_READY() calls (#105210) | Victor Stinner | 2023-06-01 | 7 | -25/+1 | |
| | | | | Since Python 3.12, PyUnicode_READY() does nothing and always returns 0. |