probcomp/bayeslite

pass query parameters through to metamodel syntax

Aberta

#446 aberto em 12 de jul. de 2016

 (0 comentário) (0 reação) (0 responsável)Python (63 forks)batch import
help wantedk days

Métricas do repositório

Stars
 (915 estrelas)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

Currently we do not distinguish

CREATE GENERATOR g FOR p USING m ("foo")

from

CREATE GENERATOR g FOR p USING m ('foo')

which is not at the moment blocking anything (hence the stall of #410), but which may be worth fixing soon. Furthermore, passing a verbatim string through, e.g. to provide the source code in

CREATE GENERATOR g FOR p USING cgpm (
    MODEL x GIVEN y USING venturescript (source = 'assume x = 42; ...')
)

as we kludgily do in https://github.com/probcomp/bayeslite/blob/f3f27a584286a4f3f3a415a7935da6ea78bd9824/tests/test_vscgpm.py#L166-L179 with Python string formatting, is not easy to do reliably. That fragment just assumes no " appears in the VentureScript code, and abuses "..." quotation, which in SQL means names, with '...' meaning strings. No quotation should be necessary on the user's part -- it should be possible to do

bdb.execute('CREATE GENERATOR ... USING venturescript (source = ?) ...', (venturescript,))

and get the same intended effect reliably.

Guia do colaborador