Commit Graph

  • 3009ea38d2 Handle Python 3.3's automatic __qualname__ assignment. Michael Hansen 2019-10-08 08:53:53 -07:00
  • 66d6c190ac Make PycRef<T> movable Michael Hansen 2019-10-08 08:42:33 -07:00
  • 44af6a2c04 Finish removing old tests and old "test" framework. Michael Hansen 2019-10-07 20:57:43 -07:00
  • 391ba6502d Migrate additional tests which previously didn't have reference source to the new test system, including new reference source. Michael Hansen 2019-10-07 14:10:19 -07:00
  • 9524099488 Migrate test_tuple_params to new test framework. Michael Hansen 2019-10-07 13:54:46 -07:00
  • 86b88091df Unify test_prettyprint variations and add to passing tests. Michael Hansen 2019-10-07 13:42:39 -07:00
  • ab58fba23b Move more tests into the new framework, including current xfails. Michael Hansen 2019-10-07 12:00:30 -07:00
  • 0dc49b5872 Add support for expected test failures Michael Hansen 2019-10-07 11:36:09 -07:00
  • 8014ac2b14 Print unicode as default in Python 2.x when CO_FUTURE_UNICODE_LITERALS is set. Michael Hansen 2019-10-06 14:34:24 -07:00
  • 892616b560 Add tests for unicode/bytes string literals Michael Hansen 2019-10-06 13:50:53 -07:00
  • b5696c8398 Port Python 2.7 list comprehension fixes by @ReDucTor from #78 Michael Hansen 2019-10-04 16:35:58 -07:00
  • 314f4a1a0d Fix several cases of name shadowing, and greatly simplify some unnecessary stack operations with tuple appending. Michael Hansen 2019-10-04 16:16:10 -07:00
  • 5c896fa743 Clean up some loops with range-based for. Michael Hansen 2019-10-04 15:56:24 -07:00
  • 727da48ba5 Display the diff when a test doesn't match the expected output. Michael Hansen 2019-10-04 14:57:59 -07:00
  • 646213ef4f Add a test for unpack assignment Michael Hansen 2019-10-04 14:33:38 -07:00
  • 2e93d29233 Don't write parens around for loop value tuples Michael Hansen 2019-10-04 14:08:47 -07:00
  • fc1cb06926 Add Github Actions CI build Michael Hansen 2019-10-04 11:12:28 -07:00
  • 154b80b2fe Migrate several more passing tests to new test framework Michael Hansen 2019-10-04 09:04:04 -07:00
  • 7cd576280e Move equivalent reference sources to the input directory Michael Hansen 2019-10-03 22:08:44 -07:00
  • 7a7b4623b6 Migrate a couple more passing tests, and handle end-of-line comments in token_dump. Michael Hansen 2019-10-03 20:56:52 -07:00
  • 1cf1977a40 Move test_class.pyc to the new test framwork, and fix tokenization of multi-line strings. Michael Hansen 2019-10-03 17:12:52 -07:00
  • 697aa5d2c3 Simplify the output of decompyle_test.sh, and actually fail the check target when a test fails. Michael Hansen 2019-10-03 16:05:30 -07:00
  • 0c0a0231a9 Fix dict literals in Python 3.5+ to make the new test case pass. Michael Hansen 2019-10-03 15:48:44 -07:00
  • 31d907118a Add a new unit test framework that actually checks the output of decompiled sources against an expected result. Michael Hansen 2019-10-03 15:33:52 -07:00
  • 18f94c4094 Use pymultic for executing the rt_test Michael Hansen 2019-10-02 16:46:19 -07:00
  • 619f584bd2 Simplify CMakeLists slightly, and correctly handle AppleClang Michael Hansen 2019-10-02 16:27:27 -07:00
  • f88869fb17 Use std::string instead of manual character buffers where applicable. Michael Hansen 2019-10-02 16:01:54 -07:00
  • 8d3752b4f0 Start requring C++11 with explicit virtual overrides. Michael Hansen 2019-10-02 14:40:25 -07:00
  • f02a339072 Move fetch and build of Python versions into pymultic, and remove acquire_pythons script. Michael Hansen 2019-09-30 16:38:16 -07:00
  • f77f287b1d Backport Python 2.7.15 fix for GCC 8 optimizations to other Pythons it applies to. Michael Hansen 2019-09-30 16:24:52 -07:00
  • 104c3c0b42 Update magic for 3.7.0 release Michael Hansen 2018-07-02 13:13:50 -07:00
  • 1c01ca7ee6 Better name for this script, since it doesn't do anything in parallel. Michael Hansen 2018-04-28 12:22:14 -07:00
  • 56e442605a Remove unnecessary complexity and just use the base sequence type common to both 1.0 and later versions in PyCodeObject. Michael Hansen 2018-04-28 11:37:13 -07:00
  • 1b01af45fd Add some scripts for fetching/building many Python versions and compiling python sources to bytecode in each of them. Michael Hansen 2018-04-27 16:27:12 -07:00
  • 7f63529d49 Fix PycCode incompatibility with Python 1.0 Michael Hansen 2018-04-26 15:13:52 -07:00
  • 0c3955883f Fix bytecode compatibility with Python 3.7 beta3 Michael Hansen 2018-04-26 14:31:21 -07:00
  • bf60a5831b Fix several undefined behavior issues identified by @nrathaus. Fixes #147. Michael Hansen 2018-01-28 14:33:26 -08:00
  • a9a362254e Use fputs instead of fprintf when no formatting is required Michael Hansen 2018-01-28 10:32:44 -08:00
  • 98ad031109 Add initial 3.7 alpha support, and fix 3.6 opcode map Michael Hansen 2017-12-20 13:15:03 -08:00
  • b9dd99d518 Don't create special objects for NULL, just use NULL directly. Also move null check into PycRef for nullable references. Michael Hansen 2017-07-05 16:36:04 -07:00
  • 1329626215 Add missing break Michael Hansen 2017-07-05 16:10:59 -07:00
  • 96122d23b8 Minor typing/aliasing cleanup Michael Hansen 2017-07-05 15:53:35 -07:00
  • 7c328f0ee8 Merge pull request #113 from kholia/add-3.5.2-magic Michael Hansen 2017-04-11 08:42:31 -07:00
  • da6571587b Add MAGIC_NUMBER for Python 3.5.3 Dhiru Kholia 2017-04-09 18:06:52 +05:30
  • a690d22822 Update Python 3.6 magic from RC build Michael Hansen 2016-12-14 14:39:22 -08:00
  • 6a9d6a6132 Update bytecode for Python 3.6 beta3, and use a common file for opcode names Michael Hansen 2016-11-08 16:00:44 -08:00
  • ed2c21cd66 Handle NOP instruction in decompyle (fixes #96) Michael Hansen 2016-10-24 09:44:06 -07:00
  • dfdb00d2dc Add python 2.5 reference sources Michael Hansen 2016-09-08 09:59:10 -07:00
  • 5ee15c890c Fix display of cell vars Michael Hansen 2016-09-07 18:22:49 -07:00
  • 35e74d0e6e Show jump target on FOR_ITER instructions Michael Hansen 2016-09-07 18:22:22 -07:00
  • 05a32e7bf5 Add more reference source for Python 2.2 tests, and fix some inconsistent names Michael Hansen 2016-09-07 18:21:51 -07:00
  • 7efcf04bcd Display KW only arg count in pycdas output Michael Hansen 2016-09-03 11:05:03 -07:00
  • 5a4c332a0e Add some reference hand-decompyled source for better examining pycdc output Michael Hansen 2016-09-02 21:19:15 -07:00
  • 5c60db15f2 Use .src.py extension instead of .src for pycdc test output Michael Hansen 2016-08-31 16:13:18 -07:00
  • a02478cc56 Fix formatting of char literals \x00-\x0F. Michael Hansen 2016-08-31 08:28:46 -07:00
  • def5d90a9d Add more advanced round-trip test target that runs decompiled output back through the originating Python compiler (Linux only for now) Michael Hansen 2016-08-30 20:18:29 -07:00
  • 4b55e0bcea Fix '...' missing in output Michael Hansen 2016-08-30 13:32:53 -07:00
  • c6d92bab3f Silence CMake warning Michael Hansen 2016-08-30 11:42:02 -07:00
  • 2178b103fc Change message if all tests "passed" Michael Hansen 2016-08-30 11:23:10 -07:00
  • 830bb0d31e Some fixes/cleanup for the test script Michael Hansen 2016-08-30 11:19:10 -07:00
  • 71b670de0f Merge pull request #84 from Dirk007/fix_conversion Michael Hansen 2016-07-28 16:35:21 -07:00
  • 159c0c91f6 fix: conversion Dirk Faust 2016-07-28 09:48:17 +02:00
  • d074b5593c Merge pull request #83 from ShadowHunterRUS/patch-1 Michael Hansen 2016-07-27 09:07:14 -07:00
  • 221ccdb67a size_t instead of ssize_t Maxim 2016-07-27 15:15:19 +03:00
  • ed96c41005 Fix build with msvc Maxim 2016-07-27 14:00:17 +03:00
  • 7701ed420e Make the comparison ops a bit more visually distinct Michael Hansen 2016-07-15 13:37:50 -07:00
  • ec313ad48f Merge pull request #81 from Saruta/master Michael Hansen 2016-07-13 20:52:25 -07:00
  • 5936171e7a Add comparison argument to disassembly output Fabien Siron 2016-07-10 17:40:14 +00:00
  • cffb4c5f5f squish tab Michael Hansen 2016-07-10 09:46:39 -07:00
  • d032494ede Merge pull request #80 from Saruta/master Michael Hansen 2016-07-09 10:03:38 -07:00
  • f378a777a2 Fix lambda call Fabien Siron 2016-07-09 15:20:39 +00:00
  • 605d064fe7 Initial support for Python 3.6 disassembly Michael Hansen 2016-06-22 22:06:09 -07:00
  • 9f2930ccaa Add async keyword to native coroutines (Python 3.5) Michael Hansen 2015-11-13 15:22:19 -08:00
  • 23254897da Merge pull request #66 from arthurzam/master Michael Hansen 2015-10-26 20:10:51 -07:00
  • 2d0b446486 Add install rules to CMake build Arthur Zamarin 2015-10-26 09:40:35 +02:00
  • 888882c743 Help convince clang that 'this' can be NULL in some cases. Closes #65 Michael Hansen 2015-10-02 23:00:07 -07:00
  • badd17bd21 Support @ operator Michael Hansen 2015-10-01 17:01:02 -07:00
  • aea5b2dab1 Forgot to add .map file Michael Hansen 2015-10-01 17:00:31 -07:00
  • 5fae3e2d1f Add Python 3.5 disassembly support Michael Hansen 2015-10-01 16:06:09 -07:00
  • 6883a7ecf0 Merge pull request #62 from Eximius/master Michael Hansen 2015-08-16 11:03:03 -07:00
  • c1a120ac6e Fix SEGFAULT due to defblock being changed. Eximius 2015-08-16 14:34:54 +03:00
  • 5fd250af99 Merge pull request #59 from mancoast/loadBuildClass Michael Hansen 2015-07-18 14:28:30 -07:00
  • 58edafd872 Add support for LOAD_BUILD_CLASS op-code mancoast 2015-04-20 17:38:36 -04:00
  • 69a757210a Fix compile error on ARM Michael Hansen 2015-04-17 19:52:35 -07:00
  • 669b5bcd41 Don't print an error if 'tests' directory already exists Michael Hansen 2015-04-17 18:45:05 -07:00
  • a2f549a89e Add docstring test case for Python 2.7 Michael Hansen 2015-04-17 18:43:50 -07:00
  • bbed2dc0fd Merge remote-tracking branch 'gurnec/docstrings' Michael Hansen 2015-04-17 18:39:34 -07:00
  • 486629dda0 Tabs -> spaces Michael Hansen 2015-04-17 18:37:37 -07:00
  • eb04199d98 Test for qualified name of function mancoast 2015-04-17 09:51:00 -04:00
  • b2e5e77c48 Support function docstrings Christopher Gurnee 2015-01-28 14:35:18 -05:00
  • 7e03be30a4 Fixes for module and class docstrings Christopher Gurnee 2015-01-28 13:35:17 -05:00
  • 805caa7ca0 Merge pull request #54 from mancoast/master Michael Hansen 2014-12-13 10:05:05 -08:00
  • b7dc792499 Magic Number 34 mancoast 2014-12-13 10:42:30 -05:00
  • 6275a874f6 Fix #51 by adding more precise build instructions Michael Hansen 2014-12-03 18:07:27 -08:00
  • 32a14d55fa Clean up some CMakeLists stuff Michael Hansen 2014-06-10 19:38:32 -07:00
  • 7dcd8b9c41 Update readme Michael Hansen 2014-06-10 19:26:53 -07:00
  • 4d21654134 Switch build system to CMake Michael Hansen 2014-06-10 19:20:56 -07:00
  • 36cf09ca82 Minor style cleanup Michael Hansen 2014-01-20 22:21:56 -08:00
  • 6787d57a28 Merge pull request #48 from Zlodiy/master Michael Hansen 2014-06-04 21:20:51 -07:00
  • cbfd5e980e Alternative solution using union Zlodiy 2014-06-05 15:11:06 +11:00