You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The project have 3 files: __main__.py, mqtt.py, mongo.py. On the main file, the other two files get imported. But pyminifier obfuscates their names on the import statements at the main, like this:
# __main__.py
from w import Mongo # <<< Here
q=KeyboardInterrupt
from O import MQTT # <<< Here
from signal import pause
w = Mongo()
O = MQTT(w)
w.connect()
O.run()
try:
L()
except q:
pass
O.stop()
w.disconnect()
# Created by pyminifier (https://github.com/liftoff/pyminifier)
These two lines should keep their original names, so they can be imported (currently with this obfuscation they can't). Command used to obfuscate is pyminifier --nominify -O __main__.py. The other two files won't get the import statements obfuscated, and mqtt.py even imports from mongo.py without obfuscation on that line, as it should be:
# mqtt.py
import paho.mqtt.client as mqtt
q=isinstance
B=str
E=object
o=staticmethod
W=print
import os
h=os.getenv
from mongo import Mongo # <<< HERE, importing from mongo.py
j = "127.0.0.1"
F = 1883
f = 60
S = 2
c = ("#",)
j = h("MQTT_BROKER", j)
F = h("MQTT_PORT", F)
f = h("MQTT_KEEPALIVE", f)
S = h("MQTT_QOS", S)
c = h("MQTT_TOPICS", c)
if q(c, B):
c = [e.strip() for e in c.split(",")]
class C(E):
def __init__(t, mongo: R):
t.mongo: R = mongo
t.mqtt_client = mqtt.Client()
t.mqtt_client.on_connect = t.U
t.mqtt_client.on_message = t.k
# noinspection PyUnusedLocal
@o
def U(v: mqtt.Client, userdata, flags, rc):
W("Connected MQTT")
for m in c:
v.subscribe(m, S)
# noinspection PyUnusedLocal
def k(t, v: mqtt.Client, userdata, msg: mqtt.MQTTMessage):
W("Rx MQTT")
t.mongo.save(msg)
def X(t):
W("Running MQTT")
t.mqtt_client.connect(j, F, f)
t.mqtt_client.loop_start()
def l(t):
W("Stopping MQTT")
t.mqtt_client.loop_stop()
t.mqtt_client.disconnect()
# Created by pyminifier (https://github.com/liftoff/pyminifier)
The text was updated successfully, but these errors were encountered:
Trying pyminifier (great project btw) on this project of mine (just to test this tool): https://github.com/David-Lor/MQTT2MongoDB
The project have 3 files:
__main__.py
,mqtt.py
,mongo.py
. On the main file, the other two files get imported. But pyminifier obfuscates their names on the import statements at the main, like this:These two lines should keep their original names, so they can be imported (currently with this obfuscation they can't). Command used to obfuscate is
pyminifier --nominify -O __main__.py
. The other two files won't get the import statements obfuscated, andmqtt.py
even imports frommongo.py
without obfuscation on that line, as it should be:The text was updated successfully, but these errors were encountered: