openSUSE-RU-2021:0038-1: moderate: Recommended update for python-uncompyle6, python-xdis
openSUSE Recommended Update: Recommended update for python-uncompyle6, python-xdis ______________________________________________________________________________ Announcement ID: openSUSE-RU-2021:0038-1 Rating: moderate References: Affected Products: openSUSE Leap 15.2 ______________________________________________________________________________ An update that has 0 recommended fixes can now be installed. Description: This update for python-uncompyle6, python-xdis fixes the following issues: python-uncompyle6 was updated to 3.7.4: * Fragment parsing was borked. This means deparsing in trepan2/trepan3k was broken * 3.7+: narrow precedence for call tatement * del_stmt -> delete to better match Python AST * 3.8+ Add another forelsestmt (found only in a loop) * 3.8+ Add precedence on walrus operator * More files blackened * bump min xdis version * __doc__ = DocDescr() from test_descr.py was getting confused as a docstring. * detect 2.7 exchandler range better update to 3.7.2 * Use newer xdis * Docstrings (again) which were broken again on earlier Python * Fix 2.6 and 2.7 decompilation bug in handling "list if" comprehensions * Handle 3.7+ "else" branch removal adAs seen in `_cmp()` of `python3.8/distutils/version.py` with optimization `-O2` * 3.6+ "with" and "with .. as" grammar improvements * ast-check for "for" loop was missing some grammar rules update to 3.7.0 * The main impetus for this release is to pull in the recent changes from xdis. We simplify imports using xdis 4.6.0. * There were some bugfixes to Python 3.4-3.8. See the ChangeLog for details python-xdis was updated to to 5.0.4: * Add python versions 3.6.12, 3.7.9 * extended arg disassembly handling for {LOAD,STORE}_ATTR * Add versions 3.8.5, 3.7.8, and 3.6.11 * Clarify changes to 3.8 `ROT_FOUR` * Update 3.9 magics and opcodes * Add Python 3.8.4 as a 3.8 release * pydisasm.py Python 3.3 tolerance * Make pydoc's version reporting show xdis's version - Update to 5.0.1 * Routines for extracting line and offset information from code objects was added. * Disassembly format and options have simplified and improved. * Before, we had separate flags and command-line options for whether to show just the header, and whether to include bytecode ops in the output. Now there is just a single parameter called `asm_format`, and choice option `--format` (short option `-F`). * Small fixes and improvements - Update to 4.6.1: * A portable version of types.CodeType was rewritten. * Python 3.8-ish `replace()` method has been added to the portable code types * Portable code type classes `Code13`, `Code15` have been added to more precisely distinguish Python 1.3 and 1.5 code types. The other portable code classes are `Code2`, `Code3`, and `Code38`. * the to_native() conversts a portable code type into a native code type * the `decode_lineno_tab()` method on portable code types from Python 1.5 on decompresses the Python encode line number table into a dictionary mapping offset to line number. * The module `xdis.code` has been remamed to `xdis.codetype`. * `load_module()` and `load_module_from_file_object()` now return a couple more parameters. * --asm option fixes * Show sip hash in 3.7+ when that is used * Handle PEP 552 bytecode-file variations more properly * Detect more intermediate Python versions in `load_code_from_file_object()` * 3.8+ posonlyargcount in assembly... rename Kw-only field to Keyword-only * Add 3.5 canonic bytecode version Marshal `dumps()` * convert from byte() to str() in dumps() when needed in 3.x * to_native() convert to bytes from string when needed in 3.x. * clean up loading code by using float version values rather than magic values * `stack_effects()` checked against Python 3.4+ is now in place. * Added `stack_effects()` function to `std.py` since this is part of the API * `cross_xdis.py` file/module now has `dis.py` functions split off from `bytecod e.py` * `Instructions` class is in its own module too. * Python 2.7.18 added into magics. * Fix bug in marshal for 3.8+ (include posonlyargcount) * Go over stack effects from 2.5 to 3.4 using and idea from Maynard * Expand stack-effect testing * 3.8.3 added as a valid 3.8 release * command program `pydisasm` disassembles more Python source files now * Add better arguemnt formatting on `CALL_FUNCTION` and `MAKE_FUNCTION` * bytecode.py now has `distb` * opcode modules now have variable `python_implemenation` which is either "CPyth on" or "PyPY" * Reformat a number of files using blacken, and lint using flymake * Update `__init__.py` exports based on what is used in projects `uncompyle6`, ` decompyle3`, `trepan3k`, `xasm` and `x-python` * Remove duplicate `findlinestarts()` code. Remove testing on the Python version and simplify this where possible. * get_opcode_module allows either a float and string datatype for the version, and coverts the bytecode datatype when needed * Fix a bugs in marshal and unmarshal * Go over magics numbers, yet again * Fix a bad bug in handling byte constants in 3.x. Patch Instructions: To install this openSUSE Recommended Update use the SUSE recommended installation methods like YaST online_update or "zypper patch". Alternatively you can run the command listed for your product: - openSUSE Leap 15.2: zypper in -t patch openSUSE-2021-38=1 Package List: - openSUSE Leap 15.2 (noarch): python2-uncompyle6-3.7.4-lp152.3.3.1 python2-xdis-5.0.6-lp152.2.3.1 python3-uncompyle6-3.7.4-lp152.3.3.1 python3-xdis-5.0.6-lp152.2.3.1 References:
participants (1)
-
maintenance@opensuse.org