New Wokwi Bridge App

This commit is contained in:
Kevin Santo Cappuccio 2023-07-05 13:38:29 -07:00
parent d874b49848
commit 3c9b6b5273
17 changed files with 864 additions and 347 deletions

View File

@ -5,14 +5,32 @@ import requests
import json import json
import serial import serial
import time import time
import runpy
import subprocess
import sys
import codecs
#import pyduinocli #import pyduinocli
import serial.tools.list_ports #from watchedserial import WatchedReaderThread
debug = True
import serial.tools.list_ports
debug = False
justreconnected = 0
global serialconnected
serialconnected = 0
portSelected = 0 portSelected = 0
stringified = 0
lastDiagram = 1
print("\n\r") print("\n\r")
while portSelected == False: while portSelected == False:
@ -29,37 +47,295 @@ while portSelected == False:
portName = ports[int(selection) - 1].device portName = ports[int(selection) - 1].device
portSelected = True portSelected = True
print(ports[int(selection) - 1].device) print(ports[int(selection) - 1].device)
serialconnected = 1
#print(0 in ports) #print(0 in ports)
#portName = '/dev/cu.usbmodem11301' #portName = '/dev/cu.usbmodem11301'
def portIsUsable(portName): ser = serial.Serial(portName, 115200, timeout = None )
justChecked = 0
reading = 0
def check_presence(correct_port, interval=.15):
global ser
global justreconnected
global serialconnected
global justChecked
global reading
portFound = 0
while True:
if (reading == 0):
portFound = 0
for port in serial.tools.list_ports.comports():
if portName in port.device:
portFound = 1
#print (portFound)
if portFound >= 1:
try: try:
ser = serial.Serial(port=portName) ser = serial.Serial(portName, 115200, timeout= None)
return False justChecked = 1
serialconnected = 1
time.sleep(0.05)
justChecked = 0
except: except:
return True continue
else:
justreconnected = 1
justChecked = 0
serialconnected = 0
ser.close()
ser = serial.Serial(portName, 460800, timeout=0.050) time.sleep(interval)
import threading
port_controller = threading.Thread(target=check_presence, args=(portName, .15,), daemon=True)
#port_controller.daemon(True)
port_controller.start()
#555 project
#https://wokwi.com/projects/369024970682423297
#the website URL #the website URL
#url_link = "https://wokwi.com/projects/367384677537829889" #url_link = "https://wokwi.com/projects/369024970682423297"
url_link = input('\n\n\rPaste the link to you Wokwi project here:\n\n\r') url_link = input('\n\n\rPaste the link to you Wokwi project here:\n\n\r')
while True:
checkurl = ' '
try:
checkurl = requests.get(url_link)
if (checkurl.status_code == requests.codes.ok):
break
else:
url_link = input('\n\n\rBad link\n\n\rPaste the link to you Wokwi project here:\n\n\r')
continue
except:
url_link = input('\n\n\rBad link\n\n\rPaste the link to you Wokwi project here:\n\n\r')
print("\n\n\rSave your Wokwi project to update the Jumperless\n\n\r") print("\n\n\rSave your Wokwi project to update the Jumperless\n\n\r")
stringified = 0
lastDiagram = 1
def serialTermIn():
global serialconnected
global ser
global justChecked
global reading
readLength = 0
while True: while True:
try:
if (ser.in_waiting > 0):
#justChecked = 0
reading = 1
inputBuffer = b' '
waiting = ser.in_waiting
while True:
inByte = ser.read()
inputBuffer += inByte
if (ser.in_waiting == 0):
time.sleep(0.05)
if (ser.in_waiting == 0):
break
else:
continue
inputBuffer = str(inputBuffer)
inputBuffer.encode()
decoded_string = codecs.escape_decode(bytes(inputBuffer, "utf-8"))[0].decode("utf-8")
decoded_string = decoded_string.lstrip("b' ")
decoded_string = decoded_string.rstrip("'")
print (decoded_string, end='')
#print ("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
readlength = 0
#justChecked = 0
reading = 0
except:
portNotFound = 1
print("Disconnected")
while (portNotFound == 1):
portFound = 0
for port in serial.tools.list_ports.comports():
if portName in port.device:
portFound = 1
#print (port.device)
if portFound >= 1:
ser = serial.Serial(portName, 115200, timeout= None)
justChecked = 1
serialconnected = 1
time.sleep(0.05)
justChecked = 0
portNotFound = 0
else:
justreconnected = 1
justChecked = 0
serialconnected = 0
ser.close()
portNotFound = 1
time.sleep(.1)
port_controller = threading.Thread(target=serialTermIn, daemon=True)
#port_controller.daemon(True)
port_controller.start()
def serialTermOut():
global serialconnected
global ser
global justChecked
global justreconnected
resetEntered = 0
while True:
outputBuffer = input()
if outputBuffer == b'r':
resetEntered = 1
if (serialconnected == 1):
#justChecked = 0
while (justChecked == 0):
time.sleep(0.0001)
else:
#print (outputBuffer)
if (outputBuffer != " "):
try:
#print (outputBuffer.encode('ascii'))
ser.write(outputBuffer.encode('ascii'))
except:
portNotFound = 1
while (portNotFound == 1):
portFound = 0
for port in serial.tools.list_ports.comports():
if portName in port.device:
portFound = 1
#print (port.device)
if portFound >= 1:
ser = serial.Serial(portName, 115200, timeout= None)
justChecked = 1
serialconnected = 1
time.sleep(0.05)
justChecked = 0
portNotFound = 0
else:
justreconnected = 1
justChecked = 0
serialconnected = 0
ser.close()
portNotFound = 1
time.sleep(.1)
print (outputBuffer.encode('ascii'))
ser.write(outputBuffer.encode('ascii'))
if (resetEntered == 1):
time.sleep(.5)
print ("reset")
justreconnected = 1
#time.sleep(.5)
port_controller = threading.Thread(target=serialTermOut, daemon=True)
port_controller.start()
time.sleep(.75)
while True:
#while portIsUsable(portName) == True:
# print('fuck')
# ser.close()
# time.sleep(.5)
#ser = serial.Serial(portName, 460800, timeout=0.050)
while (justreconnected == 1):
time.sleep(.01)
lastDiagram = '-1'
if (serialconnected == 1):
print ('Reconnected')
break
else:
justreconnected = 0
if (serialconnected == 1):
result = requests.get(url_link).text result = requests.get(url_link).text
doc = BeautifulSoup(result, "html.parser") doc = BeautifulSoup(result, "html.parser")
@ -101,11 +377,22 @@ while True:
print("\n\n\rlibraries.txt\n\r") print("\n\n\rlibraries.txt\n\r")
print(libraries) print(libraries)
if lastDiagram != diagram:
#if (justreconnected == 1):
#print (lastDiagram)
#time.sleep(1.8)
if (lastDiagram != diagram):
justreconnected = 0
length = len(f["connections"]) length = len(f["connections"])
@ -243,13 +530,23 @@ while True:
lastDiagram = diagram lastDiagram = diagram
try:
ser.write('f'.encode()) ser.write('f'.encode())
time.sleep(0.1) time.sleep(0.05)
ser.write(p.encode()) ser.write(p.encode())
except:
continue
#waitForReconnect()
#ser.write('f'.encode())
#time.sleep(0.05)
#ser.write(p.encode())
#print (p) #print (p)
else: else:

View File

@ -0,0 +1,39 @@
from bs4 import BeautifulSoup
import asyncio
import websocket
import requests
import json
import serial
import time
import serial.tools.list_ports
ws = websocket.WebSocket()
ws.connect("wss://wokwi.com/api/ws/beta")
portSelected = 0
print("\n\r")
#the website URL
#url_link = "https://hexi.wokwi.com/build"
wss_link = "wss://wokwi.com/api/ws/beta"
ws.send("Authorization: Bearer wok_f2apXMezNPdtahxhoPFrpLLvqUIt6FmA54113212")
r = ws.recv()
#requests.put(url_link, "Authorization: Bearer wok_f2apXMezNPdtahxhoPFrpLLvqUIt6FmA54113212")
#r = requests.get(url_link)
print(r)

View File

@ -0,0 +1,41 @@
m 2 2 l 0 21 c 7 3 16 0 16 0 v -21 c -10 -3 -16 0 -16 0 c 0 3 16 3 16 0 c 0 3 -16 3 -16 0
<div class="react-draggable react-draggable-dragged" style=""><wokwi-led class="diagram-part_diagramItem__ZeYe_ diagram-part_selectable__N65pi diagram-part_editMode__gIx0Q" id="led1" data-draggable="true" wokwi-controller="wokwi-led" color="red" style="top: -675.6px; left: -101.8px; transform: rotate(0deg); text-rendering: geometricprecision;"></wokwi-led></div
<div class="led-container">
<svg width="40" height="50" version="1.2" viewBox="-10 -5 35.456 39.618" xmlns="http://www.w3.org/2000/svg" transform="scale(1 1)">
<filter id="light1" x="-0.8" y="-0.8" height="2.2" width="2.8">
<feGaussianBlur stdDeviation="2"></feGaussianBlur>
</filter>
<filter id="light2" x="-0.8" y="-0.8" height="2.2" width="2.8">
<feGaussianBlur stdDeviation="4"></feGaussianBlur>
</filter>
<rect x="2.5099" y="20.382" width="2.1514" height="9.8273" fill="#8c8c8c"></rect>
<path d="m12.977 30.269c0-1.1736-0.86844-2.5132-1.8916-3.4024-0.41616-0.3672-1.1995-1.0015-1.1995-1.4249v-5.4706h-2.1614v5.7802c0 1.0584 0.94752 1.8785 1.9462 2.7482 0.44424 0.37584 1.3486 1.2496 1.3486 1.7694" fill="#8c8c8c"></path>
<path d="m -1 2 l 0 21 c 7 3 16 0 16 0 v -21 c -10 -3 -16 0 -16 0 c 0 3 16 3 16 0 c 0 3 -16 3 -16 0" opacity="1"></path>
<g fill="#ffffff">
<path d="m -.50 2.9 l 0 18 c 0 1 3 3 5 3 v -17 c 0 -2 0 0 -5 -4" opacity=".5"></path>
</g>
<g class="light" style="display: none">
<ellipse cx="8" cy="10" rx="10" ry="10" filter="url(#light2)" fill="#ff8080" style="opacity: 1"></ellipse>
<ellipse cx="8" cy="10" rx="2" ry="2" fill="white" filter="url(#light1)"></ellipse>
<ellipse cx="8" cy="10" rx="3" ry="3" fill="white" filter="url(#light1)" style="opacity: 1"></ellipse>
</g>
</svg>
<span class="led-label"><!--?lit$4127798886$--></span>
</div>

File diff suppressed because one or more lines are too long

View File

@ -410,14 +410,11 @@
('multiprocessing.popen_spawn_win32', ('multiprocessing.popen_spawn_win32',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/popen_spawn_win32.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/popen_spawn_win32.py',
'PYMODULE'), 'PYMODULE'),
('subprocess',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/subprocess.py',
'PYMODULE'),
('multiprocessing.spawn', ('multiprocessing.spawn',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/spawn.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/spawn.py',
'PYMODULE'), 'PYMODULE'),
('runpy', ('multiprocessing',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/runpy.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/__init__.py',
'PYMODULE'), 'PYMODULE'),
('pkgutil', ('pkgutil',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pkgutil.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pkgutil.py',
@ -425,24 +422,9 @@
('zipimport', ('zipimport',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/zipimport.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/zipimport.py',
'PYMODULE'), 'PYMODULE'),
('multiprocessing',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/multiprocessing/__init__.py',
'PYMODULE'),
('threading',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py',
'PYMODULE'),
('_threading_local',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_threading_local.py',
'PYMODULE'),
('tracemalloc', ('tracemalloc',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tracemalloc.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tracemalloc.py',
'PYMODULE'), 'PYMODULE'),
('stringprep',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/stringprep.py',
'PYMODULE'),
('_py_abc',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_py_abc.py',
'PYMODULE'),
('getpass', ('getpass',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/getpass.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/getpass.py',
'PYMODULE'), 'PYMODULE'),
@ -464,6 +446,18 @@
('http.cookiejar', ('http.cookiejar',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/cookiejar.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/http/cookiejar.py',
'PYMODULE'), 'PYMODULE'),
('stringprep',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/stringprep.py',
'PYMODULE'),
('_py_abc',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_py_abc.py',
'PYMODULE'),
('threading',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py',
'PYMODULE'),
('_threading_local',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_threading_local.py',
'PYMODULE'),
('serial.tools.list_ports', ('serial.tools.list_ports',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/serial/tools/list_ports.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/serial/tools/list_ports.py',
'PYMODULE'), 'PYMODULE'),
@ -497,6 +491,12 @@
('__future__', ('__future__',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/__future__.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/__future__.py',
'PYMODULE'), 'PYMODULE'),
('subprocess',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/subprocess.py',
'PYMODULE'),
('runpy',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/runpy.py',
'PYMODULE'),
('serial', ('serial',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/serial/__init__.py', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/serial/__init__.py',
'PYMODULE'), 'PYMODULE'),
@ -1286,15 +1286,18 @@
('lib-dynload/_queue.cpython-311-darwin.so', ('lib-dynload/_queue.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_queue.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_queue.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/fcntl.cpython-311-darwin.so', ('lib-dynload/_scproxy.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/fcntl.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_scproxy.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_heapq.cpython-311-darwin.so', ('lib-dynload/termios.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_heapq.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/termios.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/unicodedata.cpython-311-darwin.so', ('lib-dynload/unicodedata.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/unicodedata.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/unicodedata.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_heapq.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_heapq.cpython-311-darwin.so',
'EXTENSION'),
('lib-dynload/_multibytecodec.cpython-311-darwin.so', ('lib-dynload/_multibytecodec.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_multibytecodec.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_multibytecodec.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
@ -1316,11 +1319,8 @@
('lib-dynload/_codecs_hk.cpython-311-darwin.so', ('lib-dynload/_codecs_hk.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_codecs_hk.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_codecs_hk.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_scproxy.cpython-311-darwin.so', ('lib-dynload/fcntl.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_scproxy.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/fcntl.cpython-311-darwin.so',
'EXTENSION'),
('lib-dynload/termios.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/termios.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_json.cpython-311-darwin.so', ('lib-dynload/_json.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_json.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_json.cpython-311-darwin.so',
@ -1372,20 +1372,8 @@
[('base_library.zip', [('base_library.zip',
'/Users/kevinsanto/JumperlessWokwiBridge/build/jumperlesswokwibridge/base_library.zip', '/Users/kevinsanto/JumperlessWokwiBridge/build/jumperlesswokwibridge/base_library.zip',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl', ('lxml/isoschematron/resources/rng/iso-schematron.rng',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'DATA'), 'DATA'),
('certifi/py.typed', ('certifi/py.typed',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/py.typed', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/py.typed',
@ -1393,16 +1381,28 @@
('lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl', ('lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl', ('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl', ('lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/rng/iso-schematron.rng', ('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl',
'DATA'), 'DATA'),
('certifi/cacert.pem', ('certifi/cacert.pem',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/cacert.pem', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/cacert.pem',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl',
'DATA')], 'DATA')],
[]) [])

View File

@ -155,15 +155,18 @@
('lib-dynload/_queue.cpython-311-darwin.so', ('lib-dynload/_queue.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_queue.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_queue.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/fcntl.cpython-311-darwin.so', ('lib-dynload/_scproxy.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/fcntl.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_scproxy.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_heapq.cpython-311-darwin.so', ('lib-dynload/termios.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_heapq.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/termios.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/unicodedata.cpython-311-darwin.so', ('lib-dynload/unicodedata.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/unicodedata.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/unicodedata.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_heapq.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_heapq.cpython-311-darwin.so',
'EXTENSION'),
('lib-dynload/_multibytecodec.cpython-311-darwin.so', ('lib-dynload/_multibytecodec.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_multibytecodec.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_multibytecodec.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
@ -185,11 +188,8 @@
('lib-dynload/_codecs_hk.cpython-311-darwin.so', ('lib-dynload/_codecs_hk.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_codecs_hk.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_codecs_hk.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_scproxy.cpython-311-darwin.so', ('lib-dynload/fcntl.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_scproxy.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/fcntl.cpython-311-darwin.so',
'EXTENSION'),
('lib-dynload/termios.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/termios.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_json.cpython-311-darwin.so', ('lib-dynload/_json.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_json.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_json.cpython-311-darwin.so',
@ -239,20 +239,8 @@
('base_library.zip', ('base_library.zip',
'/Users/kevinsanto/JumperlessWokwiBridge/build/jumperlesswokwibridge/base_library.zip', '/Users/kevinsanto/JumperlessWokwiBridge/build/jumperlesswokwibridge/base_library.zip',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl', ('lxml/isoschematron/resources/rng/iso-schematron.rng',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'DATA'), 'DATA'),
('certifi/py.typed', ('certifi/py.typed',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/py.typed', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/py.typed',
@ -260,22 +248,34 @@
('lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl', ('lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl', ('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl', ('lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/rng/iso-schematron.rng', ('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl',
'DATA'), 'DATA'),
('certifi/cacert.pem', ('certifi/cacert.pem',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/cacert.pem', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/cacert.pem',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl',
'DATA')], 'DATA')],
[], [],
False, False,
False, False,
1687630242, 1688585184,
[('runw', [('runw',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/PyInstaller/bootloader/Darwin-64bit/runw', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/PyInstaller/bootloader/Darwin-64bit/runw',
'EXECUTABLE')]) 'EXECUTABLE')])

View File

@ -148,15 +148,18 @@
('lib-dynload/_queue.cpython-311-darwin.so', ('lib-dynload/_queue.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_queue.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_queue.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/fcntl.cpython-311-darwin.so', ('lib-dynload/_scproxy.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/fcntl.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_scproxy.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_heapq.cpython-311-darwin.so', ('lib-dynload/termios.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_heapq.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/termios.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/unicodedata.cpython-311-darwin.so', ('lib-dynload/unicodedata.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/unicodedata.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/unicodedata.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_heapq.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_heapq.cpython-311-darwin.so',
'EXTENSION'),
('lib-dynload/_multibytecodec.cpython-311-darwin.so', ('lib-dynload/_multibytecodec.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_multibytecodec.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_multibytecodec.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
@ -178,11 +181,8 @@
('lib-dynload/_codecs_hk.cpython-311-darwin.so', ('lib-dynload/_codecs_hk.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_codecs_hk.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_codecs_hk.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_scproxy.cpython-311-darwin.so', ('lib-dynload/fcntl.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_scproxy.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/fcntl.cpython-311-darwin.so',
'EXTENSION'),
('lib-dynload/termios.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/termios.cpython-311-darwin.so',
'EXTENSION'), 'EXTENSION'),
('lib-dynload/_json.cpython-311-darwin.so', ('lib-dynload/_json.cpython-311-darwin.so',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_json.cpython-311-darwin.so', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/lib-dynload/_json.cpython-311-darwin.so',
@ -232,20 +232,8 @@
('base_library.zip', ('base_library.zip',
'/Users/kevinsanto/JumperlessWokwiBridge/build/jumperlesswokwibridge/base_library.zip', '/Users/kevinsanto/JumperlessWokwiBridge/build/jumperlesswokwibridge/base_library.zip',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl', ('lxml/isoschematron/resources/rng/iso-schematron.rng',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'DATA'), 'DATA'),
('certifi/py.typed', ('certifi/py.typed',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/py.typed', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/py.typed',
@ -253,17 +241,29 @@
('lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl', ('lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl', ('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl', ('lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl',
'DATA'), 'DATA'),
('lxml/isoschematron/resources/rng/iso-schematron.rng', ('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng', '/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl',
'DATA'), 'DATA'),
('certifi/cacert.pem', ('certifi/cacert.pem',
'/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/cacert.pem', '/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/certifi/cacert.pem',
'DATA'),
('lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl',
'/Users/kevinsanto/Library/Python/3.11/lib/python/site-packages/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl',
'DATA')], 'DATA')],
False, False,
False, False,

View File

@ -16,10 +16,10 @@ IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), zipimport (top-level) missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), zipimport (top-level)
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional), zipimport (top-level) excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional), zipimport (top-level)
missing module named 'org.python' - imported by pickle (optional), xml.sax (delayed, conditional) missing module named org - imported by pickle (optional)
missing module named winreg - imported by importlib._bootstrap_external (conditional), mimetypes (optional), urllib.request (delayed, conditional, optional), requests.utils (delayed, conditional, optional), platform (delayed, optional) missing module named winreg - imported by importlib._bootstrap_external (conditional), mimetypes (optional), urllib.request (delayed, conditional, optional), requests.utils (delayed, conditional, optional), platform (delayed, optional)
missing module named nt - imported by shutil (conditional), importlib._bootstrap_external (conditional), ntpath (optional), os (delayed, conditional, optional), ctypes (delayed, conditional) missing module named nt - imported by shutil (conditional), importlib._bootstrap_external (conditional), ntpath (optional), os (delayed, conditional, optional), ctypes (delayed, conditional)
missing module named org - imported by copy (optional) missing module named 'org.python' - imported by copy (optional), xml.sax (delayed, conditional)
missing module named 'java.lang' - imported by platform (delayed, optional), xml.sax._exceptions (conditional) missing module named 'java.lang' - imported by platform (delayed, optional), xml.sax._exceptions (conditional)
missing module named _winapi - imported by encodings (delayed, conditional, optional), ntpath (optional), subprocess (conditional), mimetypes (optional), multiprocessing.connection (optional), multiprocessing.spawn (delayed, conditional), multiprocessing.reduction (conditional), multiprocessing.shared_memory (conditional), multiprocessing.heap (conditional), multiprocessing.popen_spawn_win32 (top-level), asyncio.windows_events (top-level), asyncio.windows_utils (top-level) missing module named _winapi - imported by encodings (delayed, conditional, optional), ntpath (optional), subprocess (conditional), mimetypes (optional), multiprocessing.connection (optional), multiprocessing.spawn (delayed, conditional), multiprocessing.reduction (conditional), multiprocessing.shared_memory (conditional), multiprocessing.heap (conditional), multiprocessing.popen_spawn_win32 (top-level), asyncio.windows_events (top-level), asyncio.windows_utils (top-level)
missing module named multiprocessing.BufferTooShort - imported by multiprocessing (top-level), multiprocessing.connection (top-level) missing module named multiprocessing.BufferTooShort - imported by multiprocessing (top-level), multiprocessing.connection (top-level)

View File

@ -174,12 +174,16 @@ imports:
&#8226; <a href="#re._parser">re._parser</a> &#8226; <a href="#re._parser">re._parser</a>
&#8226; <a href="#reprlib">reprlib</a> &#8226; <a href="#reprlib">reprlib</a>
&#8226; <a href="#requests">requests</a> &#8226; <a href="#requests">requests</a>
&#8226; <a href="#runpy">runpy</a>
&#8226; <a href="#serial">serial</a> &#8226; <a href="#serial">serial</a>
&#8226; <a href="#serial.tools.list_ports">serial.tools.list_ports</a> &#8226; <a href="#serial.tools.list_ports">serial.tools.list_ports</a>
&#8226; <a href="#sre_compile">sre_compile</a> &#8226; <a href="#sre_compile">sre_compile</a>
&#8226; <a href="#sre_constants">sre_constants</a> &#8226; <a href="#sre_constants">sre_constants</a>
&#8226; <a href="#sre_parse">sre_parse</a> &#8226; <a href="#sre_parse">sre_parse</a>
&#8226; <a href="#stat">stat</a> &#8226; <a href="#stat">stat</a>
&#8226; <a href="#subprocess">subprocess</a>
&#8226; <a href="#sys">sys</a>
&#8226; <a href="#threading">threading</a>
&#8226; <a href="#time">time</a> &#8226; <a href="#time">time</a>
&#8226; <a href="#token">token</a> &#8226; <a href="#token">token</a>
&#8226; <a href="#tokenize">tokenize</a> &#8226; <a href="#tokenize">tokenize</a>
@ -333,7 +337,7 @@ imported by:
<a target="code" href="" type="text/plain"><tt>'org.python'</tt></a> <a target="code" href="" type="text/plain"><tt>'org.python'</tt></a>
<span class="moduletype">MissingModule</span> <div class="import"> <span class="moduletype">MissingModule</span> <div class="import">
imported by: imported by:
<a href="#pickle">pickle</a> <a href="#copy">copy</a>
&#8226; <a href="#xml.sax">xml.sax</a> &#8226; <a href="#xml.sax">xml.sax</a>
</div> </div>
@ -4720,8 +4724,8 @@ imported by:
<a target="code" href="/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py" type="text/plain"><tt>copy</tt></a> <a target="code" href="/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py" type="text/plain"><tt>copy</tt></a>
<span class="moduletype">SourceModule</span> <div class="import"> <span class="moduletype">SourceModule</span> <div class="import">
imports: imports:
<a href="#copyreg">copyreg</a> <a href="#'org.python'">'org.python'</a>
&#8226; <a href="#org">org</a> &#8226; <a href="#copyreg">copyreg</a>
&#8226; <a href="#types">types</a> &#8226; <a href="#types">types</a>
&#8226; <a href="#weakref">weakref</a> &#8226; <a href="#weakref">weakref</a>
@ -11384,7 +11388,7 @@ imported by:
<a target="code" href="" type="text/plain"><tt>org</tt></a> <a target="code" href="" type="text/plain"><tt>org</tt></a>
<span class="moduletype">MissingModule</span> <div class="import"> <span class="moduletype">MissingModule</span> <div class="import">
imported by: imported by:
<a href="#copy">copy</a> <a href="#pickle">pickle</a>
</div> </div>
@ -11604,14 +11608,14 @@ imported by:
<a target="code" href="/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pickle.py" type="text/plain"><tt>pickle</tt></a> <a target="code" href="/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pickle.py" type="text/plain"><tt>pickle</tt></a>
<span class="moduletype">SourceModule</span> <div class="import"> <span class="moduletype">SourceModule</span> <div class="import">
imports: imports:
<a href="#'org.python'">'org.python'</a> <a href="#_compat_pickle">_compat_pickle</a>
&#8226; <a href="#_compat_pickle">_compat_pickle</a>
&#8226; <a href="#_pickle">_pickle</a> &#8226; <a href="#_pickle">_pickle</a>
&#8226; <a href="#codecs">codecs</a> &#8226; <a href="#codecs">codecs</a>
&#8226; <a href="#copyreg">copyreg</a> &#8226; <a href="#copyreg">copyreg</a>
&#8226; <a href="#functools">functools</a> &#8226; <a href="#functools">functools</a>
&#8226; <a href="#io">io</a> &#8226; <a href="#io">io</a>
&#8226; <a href="#itertools">itertools</a> &#8226; <a href="#itertools">itertools</a>
&#8226; <a href="#org">org</a>
&#8226; <a href="#pprint">pprint</a> &#8226; <a href="#pprint">pprint</a>
&#8226; <a href="#re">re</a> &#8226; <a href="#re">re</a>
&#8226; <a href="#struct">struct</a> &#8226; <a href="#struct">struct</a>
@ -12762,7 +12766,8 @@ imports:
</div> </div>
<div class="import"> <div class="import">
imported by: imported by:
<a href="#multiprocessing.spawn">multiprocessing.spawn</a> <a href="#jumperlesswokwibridge.py">jumperlesswokwibridge.py</a>
&#8226; <a href="#multiprocessing.spawn">multiprocessing.spawn</a>
&#8226; <a href="#pdb">pdb</a> &#8226; <a href="#pdb">pdb</a>
</div> </div>
@ -13767,6 +13772,7 @@ imported by:
&#8226; <a href="#asyncio.unix_events">asyncio.unix_events</a> &#8226; <a href="#asyncio.unix_events">asyncio.unix_events</a>
&#8226; <a href="#asyncio.windows_utils">asyncio.windows_utils</a> &#8226; <a href="#asyncio.windows_utils">asyncio.windows_utils</a>
&#8226; <a href="#http.server">http.server</a> &#8226; <a href="#http.server">http.server</a>
&#8226; <a href="#jumperlesswokwibridge.py">jumperlesswokwibridge.py</a>
&#8226; <a href="#multiprocessing.util">multiprocessing.util</a> &#8226; <a href="#multiprocessing.util">multiprocessing.util</a>
&#8226; <a href="#os">os</a> &#8226; <a href="#os">os</a>
&#8226; <a href="#platform">platform</a> &#8226; <a href="#platform">platform</a>
@ -13844,6 +13850,7 @@ imported by:
&#8226; <a href="#importlib.metadata">importlib.metadata</a> &#8226; <a href="#importlib.metadata">importlib.metadata</a>
&#8226; <a href="#importlib.util">importlib.util</a> &#8226; <a href="#importlib.util">importlib.util</a>
&#8226; <a href="#inspect">inspect</a> &#8226; <a href="#inspect">inspect</a>
&#8226; <a href="#jumperlesswokwibridge.py">jumperlesswokwibridge.py</a>
&#8226; <a href="#linecache">linecache</a> &#8226; <a href="#linecache">linecache</a>
&#8226; <a href="#locale">locale</a> &#8226; <a href="#locale">locale</a>
&#8226; <a href="#logging">logging</a> &#8226; <a href="#logging">logging</a>
@ -14103,6 +14110,7 @@ imported by:
&#8226; <a href="#concurrent.futures.process">concurrent.futures.process</a> &#8226; <a href="#concurrent.futures.process">concurrent.futures.process</a>
&#8226; <a href="#concurrent.futures.thread">concurrent.futures.thread</a> &#8226; <a href="#concurrent.futures.thread">concurrent.futures.thread</a>
&#8226; <a href="#http.cookiejar">http.cookiejar</a> &#8226; <a href="#http.cookiejar">http.cookiejar</a>
&#8226; <a href="#jumperlesswokwibridge.py">jumperlesswokwibridge.py</a>
&#8226; <a href="#logging">logging</a> &#8226; <a href="#logging">logging</a>
&#8226; <a href="#multiprocessing.context">multiprocessing.context</a> &#8226; <a href="#multiprocessing.context">multiprocessing.context</a>
&#8226; <a href="#multiprocessing.dummy">multiprocessing.dummy</a> &#8226; <a href="#multiprocessing.dummy">multiprocessing.dummy</a>

Binary file not shown.

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDisplayName</key>
<string>jumperlesswokwibridge</string>
<key>CFBundleExecutable</key>
<string>jumperlesswokwibridge</string>
<key>CFBundleIconFile</key>
<string>icon.icns</string>
<key>CFBundleIdentifier</key>
<string>jumperlesswokwibridge</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>jumperlesswokwibridge</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>0.0.0</string>
<key>NSHighResolutionCapable</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>files</key>
<dict>
<key>Resources/icon.icns</key>
<data>
Xu4NmrrU6OurOrFICyIOVsLyKYI=
</data>
</dict>
<key>files2</key>
<dict>
<key>Resources/icon.icns</key>
<dict>
<key>hash2</key>
<data>
S1gViwZdpIU/2oQNGamS1Xyba7CNbCq3KLsni+cWmvw=
</data>
</dict>
</dict>
<key>rules</key>
<dict>
<key>^Resources/</key>
<true/>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^version.plist$</key>
<true/>
</dict>
<key>rules2</key>
<dict>
<key>.*\.dSYM($|/)</key>
<dict>
<key>weight</key>
<real>11</real>
</dict>
<key>^(.*/)?\.DS_Store$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>2000</real>
</dict>
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^.*</key>
<true/>
<key>^Info\.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^PkgInfo$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^Resources/.*\.lproj/</key>
<dict>
<key>optional</key>
<true/>
<key>weight</key>
<real>1000</real>
</dict>
<key>^Resources/.*\.lproj/locversion.plist$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>1100</real>
</dict>
<key>^Resources/Base\.lproj/</key>
<dict>
<key>weight</key>
<real>1010</real>
</dict>
<key>^[^/]+$</key>
<dict>
<key>nested</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>^embedded\.provisionprofile$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
<key>^version\.plist$</key>
<dict>
<key>weight</key>
<real>20</real>
</dict>
</dict>
</dict>
</plist>

View File

@ -21,8 +21,6 @@ a = Analysis(
) )
pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher)
# you should change the path to the .icns file unless your name is the same as mine
exe = EXE( exe = EXE(
pyz, pyz,
a.scripts, a.scripts,
@ -37,36 +35,17 @@ exe = EXE(
upx=True, upx=True,
upx_exclude=[], upx_exclude=[],
runtime_tmpdir=None, runtime_tmpdir=None,
console=True, console=False,
disable_windowed_traceback=False, disable_windowed_traceback=False,
argv_emulation=False, argv_emulation=False,
target_arch=x86_64, target_arch=None,
codesign_identity=None, codesign_identity=None,
entitlements_file=None, entitlements_file=None,
icon=['/Users/kevinsanto/JumperlessWokwiBridge/icon.icns'], icon=['/Users/kevinsanto/JumperlessWokwiBridge/icon.icns'],
) )
app = BUNDLE(
#I'm not sure this part does anything but some person on Github says it worked so whatever exe,
## Make app bundle double-clickable name='jumperlesswokwibridge.app',
import plistlib icon='/Users/kevinsanto/JumperlessWokwiBridge/icon.icns',
from pathlib import Path bundle_identifier=None,
app_path = Path(app.name) )
# read Info.plist
with open(app_path / 'Contents/Info.plist', 'rb') as f:
pl = plistlib.load(f)
# write Info.plist
with open(app_path / 'Contents/Info.plist', 'wb') as f:
pl['CFBundleExecutable'] = 'wrapper'
plistlib.dump(pl, f)
# write new wrapper script
shell_script = """#!/bin/bash
dir=$(dirname $0)
open -a Terminal file://${dir}/%s""" % app.appname
with open(app_path / 'Contents/MacOS/wrapper', 'w') as f:
f.write(shell_script)
# make it executable
(app_path / 'Contents/MacOS/wrapper').chmod(0o755)