Commit graph

  • 5d8fb42169
    Merge a18a13098e into b428976097 Mario Penterman 2026-06-22 22:13:23 +00:00
  • e9a2ecbb65
    Merge 34f038436d into b428976097 Mario Penterman 2026-06-22 22:13:22 +00:00
  • 42dc6a3115
    Merge f6da1e8a78 into b428976097 Mario Penterman 2026-06-22 22:13:20 +00:00
  • f7a80783e5
    Merge 7dd241579a into b428976097 Mario Penterman 2026-06-22 22:13:18 +00:00
  • a18a13098e Emit lone surrogates as \uXXXX escapes in unicode strings Mario Penterman 2026-06-20 09:55:38 +02:00
  • 34f038436d Support extended iterable unpacking (PEP 3132) Mario Penterman 2026-06-20 02:43:23 +02:00
  • f6da1e8a78 Render leading dots for relative imports (PEP 328) Mario Penterman 2026-06-20 01:12:43 +02:00
  • 7dd241579a Render @decorator syntax for function and class defs Mario Penterman 2026-06-20 01:57:14 +02:00
  • 91b4584566 family/closures: handle MAKE_CELL, COPY_FREE_VARS, nonlocal, and MAKE_FUNCTION bitmask for Python 3.11 Mario Penterman 2026-06-20 00:29:40 +02:00
  • b12264052c family/generators: handle RETURN_GENERATOR, RESUME, and JUMP_BACKWARD for Python 3.11 Mario Penterman 2026-06-20 00:18:21 +02:00
  • 7ff27dfec5 Reconstruct 3.10+ match/case (structural pattern matching) Mario Penterman 2026-06-19 17:37:02 +02:00
  • c01cb2b140
    Merge 38bd0337b7 into b428976097 Tech悠然 2026-06-17 07:10:05 +00:00
  • 38bd0337b7 Improve Python 3.14 exception recovery Techuouo520 2026-06-17 15:09:29 +08:00
  • 6a61643daf
    Merge 2d1fd84e9c into b428976097 bfc6e 2026-06-10 20:39:25 +08:00
  • 2d1fd84e9c
    handle py310 unsupported opcodes deref3046 2026-06-10 20:32:07 +08:00
  • 381847e5a7
    Merge 58a1777026 into b428976097 polfg 2026-06-08 13:48:44 +02:00
  • 33c3e3f05a Only skip an actual jump after a return inside an if/else Lexdoka-Pol 2026-06-08 12:56:48 +02:00
  • 58a1777026 Only skip an actual jump after a return inside an if/else polfg 2026-06-08 12:56:48 +02:00
  • 81800e22cd Reconstruct 3.11 chained comparisons (a == b == c) Lexdoka-Pol 2026-06-08 12:54:47 +02:00
  • 04187357d7 Reconstruct 3.11 chained comparisons (a == b == c) polfg 2026-06-08 12:54:47 +02:00
  • 93f83cfd0d Don't reopen a try for split exception-table regions (nested try) Lexdoka-Pol 2026-06-08 12:45:48 +02:00
  • c1ef0fe3ee Don't reopen a try for split exception-table regions (nested try) polfg 2026-06-08 12:45:48 +02:00
  • 6afbd14ea3 Emit continue for backward jump out of else into enclosing loop Lexdoka-Pol 2026-06-08 12:40:27 +02:00
  • 8b9283fce2 Emit continue for backward jump out of else into enclosing loop polfg 2026-06-08 12:40:27 +02:00
  • 35aacb30c1 Reconstruct 3.11 while-loops (bottom-test optimization) Lexdoka-Pol 2026-06-08 12:27:24 +02:00
  • 9c5ea2f2bc Reconstruct 3.11 while-loops (bottom-test optimization) polfg 2026-06-08 12:27:24 +02:00
  • 25920c3420 Fix except-as-e handler after return-in-if inside try Lexdoka-Pol 2026-06-08 12:15:57 +02:00
  • 7a0109a6f6 Fix except-as-e handler after return-in-if inside try polfg 2026-06-08 12:15:57 +02:00
  • c646ca77f7 Fix for-loop not closing in 3.11 (return/code after loop absorbed into body) Lexdoka-Pol 2026-06-08 12:06:54 +02:00
  • 96a672e587 Fix for-loop not closing in 3.11 (return/code after loop absorbed into body) polfg 2026-06-08 12:06:54 +02:00
  • 7eb651c5c3 Fix std::bad_cast crash on return-in-if followed by comprehension Lexdoka-Pol 2026-06-08 11:49:55 +02:00
  • ba35489dd8 Fix std::bad_cast crash on return-in-if followed by comprehension polfg 2026-06-08 11:49:55 +02:00
  • a58ce81fea Strip any spurious module-level return (not just 'return None') Claude 2026-06-08 11:20:16 +02:00
  • 761ba7c44e Strip any spurious module-level return (not just 'return None') polfg 2026-06-08 11:20:16 +02:00
  • aacd526a70 Strip spurious module-level returns from all nested blocks Claude 2026-06-08 11:17:25 +02:00
  • 9a83ef3fbf Strip spurious module-level returns from all nested blocks polfg 2026-06-08 11:17:25 +02:00
  • 730f3d04a6 Fix multiple except-clause boundary (clause that raises / at function end) Claude 2026-06-08 08:47:11 +02:00
  • 63eee37215 Fix multiple except-clause boundary (clause that raises / at function end) polfg 2026-06-08 08:47:11 +02:00
  • 36c4ffc3e4 Close with/finally blocks before processing exception-table entries Claude 2026-06-08 08:40:25 +02:00
  • aabdba96d4 Close with/finally blocks before processing exception-table entries polfg 2026-06-08 08:40:25 +02:00
  • 456312e323 Inline comprehensions/genexprs with multiple (nested) filters Claude 2026-06-08 08:15:52 +02:00
  • efb56a045c Inline comprehensions/genexprs with multiple (nested) filters polfg 2026-06-08 08:15:52 +02:00
  • 12cf026486 Inline filtered list comprehensions Claude 2026-06-07 20:05:37 +02:00
  • 2222d2be3e Inline filtered list comprehensions polfg 2026-06-07 20:05:37 +02:00
  • 9bab4046a5 Reconstruct class keyword arguments (metaclass=) for Python 3.11 Claude 2026-06-07 11:26:42 +02:00
  • 4260d9078f Reconstruct class keyword arguments (metaclass=) for Python 3.11 polfg 2026-06-07 11:26:42 +02:00
  • 8ac92d2cb6 Inline Python 3.11 generator expressions Claude 2026-06-05 17:31:29 +02:00
  • 0c79dbf063 Inline Python 3.11 generator expressions polfg 2026-06-05 17:31:29 +02:00
  • dc2311f25c Fix function signature parameter order (*args before keyword-only) Claude 2026-06-05 17:18:41 +02:00
  • 3cea1b75c2 Fix function signature parameter order (*args before keyword-only) polfg 2026-06-05 17:18:41 +02:00
  • 8980cada8a Reconstruct Python 3.11 try/finally Claude 2026-06-05 17:15:29 +02:00
  • 90c6906505 Reconstruct Python 3.11 try/finally polfg 2026-06-05 17:15:29 +02:00
  • bfa9bea535 Reconstruct Python 3.11 with-statement (common mid-block shape) Claude 2026-06-05 17:02:59 +02:00
  • 2f0e6180b4 Reconstruct Python 3.11 with-statement (common mid-block shape) polfg 2026-06-05 17:02:59 +02:00
  • cdf0ed5bf5 Reconstruct 'except ... as e' for Python 3.11 + dict/set comprehension inlining Claude 2026-06-05 12:00:11 +02:00
  • 27cc6c2a74 Reconstruct 'except ... as e' for Python 3.11 + dict/set comprehension inlining polfg 2026-06-05 12:00:11 +02:00
  • bebd821816 Render 'raise X from Y' for Python 3 (was Python-2 'raise X, Y') Claude 2026-06-05 11:50:29 +02:00
  • b5bbd70989 Render 'raise X from Y' for Python 3 (was Python-2 'raise X, Y') polfg 2026-06-05 11:50:29 +02:00
  • 77e6bca4a2 Fix SWAP_A as a real stack swap (chained comparisons, starred unpack) Claude 2026-06-05 11:43:44 +02:00
  • 717b3d7d9c Fix SWAP_A as a real stack swap (chained comparisons, starred unpack) polfg 2026-06-05 11:43:44 +02:00
  • cb5190629b Python 3.11 decompilation fixes Claude 2026-06-04 23:32:11 +02:00
  • 7baa5df5c3 Python 3.11 decompilation fixes polfg 2026-06-04 23:32:11 +02:00
  • a9990e0af3 Improve Python 3.13 and 3.14 bytecode recovery Techuouo520 2026-05-27 17:42:00 +08:00
  • d3bdba9a94 Add initial Python 3.14 bytecode support Techuouo520 2026-05-25 20:22:39 +08:00
  • b1a2d3287a
    Merge 6ad9d4b2cd into b428976097 Eloïse Brocas 2026-05-26 15:17:08 +00:00
  • 6ad9d4b2cd
    Merge branch 'master' into dev Eloïse Brocas 2026-05-26 17:16:54 +02:00
  • 3359033d91
    add RERAISE support for python 3.9 Eloïse Brocas 2026-05-26 16:27:22 +02:00
  • 514842be47 Improve Python 3.13 and 3.14 bytecode recovery Techuouo520 2026-05-26 12:59:09 +08:00
  • 3047ff2335 Update project documentation Techuouo520 2026-05-25 22:30:51 +08:00
  • f6b522afa4 Add initial Python 3.14 bytecode support Techuouo520 2026-05-25 20:22:39 +08:00
  • 69fc658328
    Merge 675b6d73a6 into b428976097 Gustavo Carneiro 2026-04-27 17:13:20 +00:00
  • 675b6d73a6 Add Python 3.11/3.12 opcode handlers to reduce decompilation failures Gustavo Carneiro 2026-04-27 12:16:46 -03:00
  • 30e48f0c33
    Merge 4f1dbce8b2 into b428976097 sfz001 2026-04-22 21:05:17 +08:00
  • 4f1dbce8b2 Add Python 3.13 call-path opcodes and fix CALL self-slot direction sfz001 2026-04-22 21:04:36 +08:00
  • dcfa26e92e
    Merge 5db1488fb2 into b428976097 Avery 2026-04-13 18:15:10 +10:00
  • 5db1488fb2
    fix: inline generator expressions nullableVoidPtr 2026-04-13 18:12:18 +10:00
  • 6edc5ec166
    fix: CALL_FUNCTION_KW on >=3.9 nullableVoidPtr 2026-04-13 17:55:15 +10:00
  • 9d4cd1169a
    fix: named imports under STORE_FAST nullableVoidPtr 2026-04-13 16:32:35 +10:00
  • 2ec269bdfa try except fix kibernautas 2026-04-10 19:08:50 +03:00
  • 3072a794d4
    Merge 7b26247e12 into b428976097 Milan Pikula 2026-04-10 00:28:44 +08:00
  • db3bdecaae
    Merge bbfa3746f3 into b428976097 Dennis Goodlett 2026-04-10 00:28:44 +08:00
  • 602ba69fab
    Merge 120e00b3ab into b428976097 MrDakik 2026-04-10 00:28:44 +08:00
  • 8db31c1de3
    Merge aacb40d194 into b428976097 Ben Carr 2026-04-10 00:28:44 +08:00
  • 1bb1740466
    Merge 1d1237228a into b428976097 Alex 2026-04-07 20:37:05 +09:00
  • 4f9d054ca4
    Merge 4ea662d802 into b428976097 Sahil Jain 2026-04-07 14:12:39 +05:30
  • 45d1be3ce0
    Merge 8401a00344 into b428976097 Sahil Jain 2026-04-07 14:12:39 +05:30
  • 61b36acc3c
    Merge 5881cca6ea into b428976097 plusls 2026-04-07 14:12:39 +05:30
  • 48bb154e16
    Merge ccab182868 into b428976097 ALEX 2026-04-07 14:12:39 +05:30
  • b83c25e0e8
    Merge b3d7965600 into b428976097 Ben Carr 2026-04-07 16:00:50 +08:00
  • e968b2fb48
    Merge 5d79f6c90d into b428976097 Ben Carr 2026-04-07 15:57:09 +08:00
  • 69d14144b8
    Merge 0b47e4f45e into b428976097 ncaklovic 2026-04-06 22:58:48 -07:00
  • b428976097
    Merge pull request #599 from daiche330-png/wip/python311-exception-opcodes-20260405 master Michael Hansen 2026-04-06 22:58:13 -07:00
  • 413fbd83c9 Support Python 3.11 exception table try/except flow daiche330-png 2026-04-06 09:30:16 +09:00
  • 0b1f7cf070 Handle Python 3.11 exception opcodes in AST builder daiche330-png 2026-04-05 22:13:27 +09:00
  • 81082bb2e8
    decompilation: support unpacking for all node types Eloïse Brocas 2026-03-06 10:18:11 +01:00
  • bd288c8d9b
    list_extend opcode: support calls of function inside list extension Eloïse Brocas 2026-03-06 10:12:47 +01:00
  • d35347e569
    add support of jump_if_not_exc_match and reraise Eloïse Brocas 2026-03-03 10:52:11 +01:00
  • c27bdd1659
    create a dedicated object for exception blocks Eloïse Brocas 2026-03-02 13:43:45 +01:00
  • 31b84750cb
    add load_assert_error support Eloïse Brocas 2026-02-02 17:34:45 +01:00
  • 8006f941c0
    add unpack_ex opcode support Eloïse Brocas 2026-01-27 15:12:12 +01:00