micro-nova / support_tunnel

A secure implementation of a support tunnel infrastructure
GNU General Public License v3.0
3 stars 1 forks source link

pin sqlmodel==0.0.19 because of changes in UUID handling #26

Closed rtertiaer closed 2 months ago

rtertiaer commented 2 months ago

This PR pins sqlmodel to 0.0.19. sqlmodel introduced much better UUID handling in 0.0.20, but implementing their methodology will require more testing than this simple change. This chnage fixes the device context cleaning up tunnel resources, which presents like:

(venv) pi@amplipi:/opt/support_tunnel $ inv stop [snipped tunnel id]
Traceback (most recent call last):                                                                                                 
  File "/opt/support_tunnel/venv/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 1816, in _execute_context                dialect, self, conn, execution_options, *args, **kw                                                                            
  File "/opt/support_tunnel/venv/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 1463, in _init_compiled               for key in positiontup                                                                                                         
  File "/opt/support_tunnel/venv/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 1463, in <listcomp>                   for key in positiontup                                                                                                         
  File "/opt/support_tunnel/venv/lib/python3.7/site-packages/sqlalchemy/sql/sqltypes.py", line 3608, in process                        value = value.hex                                                                                                              
AttributeError: 'str' object has no attribute 'hex'          

I also filed #25 for tracking that future work.