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
Not every backend supports create_view(), only SQLBackends. I have a function with signature def make_view(backend, t: ibis.table). I want to be able to annotate the type of backend param. I can, but have to import using the not-explicitly-exported from ibis.backends.sql import SQLBackend method.
Can we make it so I can import it from a stable place? Perhaps Simply ibis.SQLBackend? IDK if it is important enough to go at the top-level.
This also brings up the larger question, which I'm not sure of the answer: does the simple dichotomy of SQL/not-SQL really cleanly partition all backends into two groups? Or would need to do some capability based typing like with protocols, eg class SupportsCreateView(typing.Protocol): def create_view(...): ...? This isn't a huge priority, if it is a huge can of worms then we could definitely punt.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Not every backend supports
create_view()
, onlySQLBackend
s. I have a function with signaturedef make_view(backend, t: ibis.table)
. I want to be able to annotate the type of backend param. I can, but have to import using the not-explicitly-exportedfrom ibis.backends.sql import SQLBackend
method.Can we make it so I can import it from a stable place? Perhaps Simply
ibis.SQLBackend
? IDK if it is important enough to go at the top-level.This also brings up the larger question, which I'm not sure of the answer: does the simple dichotomy of SQL/not-SQL really cleanly partition all backends into two groups? Or would need to do some capability based typing like with protocols, eg
class SupportsCreateView(typing.Protocol): def create_view(...): ...
? This isn't a huge priority, if it is a huge can of worms then we could definitely punt.Beta Was this translation helpful? Give feedback.
All reactions