liftoff / pyminifier

Pyminifier is a Python code minifier, obfuscator, and compressor.
GNU General Public License v3.0
1.43k stars 221 forks source link

Incorrect obfuscation with no imports #110

Open nbkolchin opened 5 years ago

nbkolchin commented 5 years ago

Input:

# Copyright comment
"""Common exceptions"""

class CannotRun(Exception):
    """Thrown from Base classes when running is impossible"""
    pass

Obfuscated: (--obfuscate-builtins --replacement-length=11)

class CannotRun(kfgyztSaQBc):
kfgyztSaQBc=Exception
 pass
# Created by pyminifier (https://github.com/liftoff/pyminifier)

Removing first line comment or adding dummy import produces correct output

import os
mxUpuXFLbBM=Exception
class CannotRun(mxUpuXFLbBM):
 pass
# Created by pyminifier (https://github.com/liftoff/pyminifier)