sqlalchemy / mako

Mako Templates for Python
https://www.makotemplates.org
MIT License
353 stars 60 forks source link

Support comprehensions inside functions when use strict_undefined flag. #386

Closed cocolato closed 5 months ago

cocolato commented 7 months ago

Fixes: https://github.com/sqlalchemy/mako/issues/320

Now the test code works as expected if strict_undefined is set to true:

from mako.template import Template

text = """
<%
    mydict = { 'foo': 1 }

    ## Uncomment the following line to workaround the error
    ##k = None
    def getkeys(x):
        return [ k for k in x.keys() ]
%>

${ ','.join( getkeys(mydict) ) }
"""

tmpl = Template(text=text, strict_undefined=True)
out = tmpl.render()
print(out)

output:


foo
zzzeek commented 7 months ago

wow I dig this, you're into mako now. great let's run the CI

sqla-tester commented 7 months ago

New Gerrit review created for change daffd3832b4adab291625e1e6efcdb56f8d0d05e: https://gerrit.sqlalchemy.org/c/sqlalchemy/mako/+/5147

zzzeek commented 7 months ago

can you add a changelog file? thanks

cocolato commented 7 months ago

All has been updated.

sqla-tester commented 7 months ago

Patchset cc6a3e0694fb5615db2c3fec2cd23bc9e8a70066 added to existing Gerrit review https://gerrit.sqlalchemy.org/c/sqlalchemy/mako/+/5147

sqla-tester commented 5 months ago

Michael Bayer (zzzeek) wrote:

thanks!

View this in Gerrit at https://gerrit.sqlalchemy.org/c/sqlalchemy/mako/+/5147

sqla-tester commented 5 months ago

Gerrit review https://gerrit.sqlalchemy.org/c/sqlalchemy/mako/+/5147 has been merged. Congratulations! :)