summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* happy new year 2023HEADmainMike Bayer2023-01-0325-25/+25
| | | | Change-Id: I1ae40f516c03801427063175d6b18a60556fbd29
* Fix StringIO import for the example in usage.rstRaf Baluyot2022-12-011-2/+1
| | | | | | | | | | | | For some reason people fixed the `print` call but not the import when https://github.com/sqlalchemy/mako/issues/234 was brought up. I also mentioned in in https://github.com/sqlalchemy/mako/issues/369 Closes: #370 Pull-request: https://github.com/sqlalchemy/mako/pull/370 Pull-request-sha: 8560bfed22f11b7edb5d2ac2e5cfc6a7bd59b718 Change-Id: I236eef05f5b45420035c522287fa66eb3cb21a00
* Version 1.2.5 placeholderMike Bayer2022-11-152-1/+5
|
* - 1.2.4rel_1_2_4Mike Bayer2022-11-153-12/+13
|
* Support nested tuple unpacking in for loopsMatt Trescott2022-11-153-2/+26
| | | | | | | | | | | | | | | | | | | | | | | Fixed issue where unpacking nested tuples in a for loop using would raise a "couldn't apply loop context" error if the loop context was used. The regex used to match the for loop expression now allows the list of loop variables to contain parenthesized sub-tuples. Pull request courtesy Matt Trescott. For example: ~~~ for (key1, val1), (key2, val2) in itertools.pairwise(dict.items()): ... ~~~ This is really just "kicking the can down the road" so to speak, because it doesn't allow an infinite number of layers of tuples, but it helps somewhat. Closes: #368 Pull-request: https://github.com/sqlalchemy/mako/pull/368 Pull-request-sha: 3f15a87266a36306826d460cddc7699dd62a9c43 Change-Id: I52915acb8904daf7071d8c92e1de352f200131ec
* Version 1.2.4 placeholderMike Bayer2022-09-222-1/+5
|
* - 1.2.3rel_1_2_3Mike Bayer2022-09-223-16/+17
|
* replace "dot" with "set not containing whitespace"Mike Bayer2022-09-224-3/+27
| | | | | | | | | | | | | | | Fixed issue in lexer in the same category as that of :ticket:`366` where the regexp used to match an end tag didn't correctly organize for matching characters surrounded by whitespace, leading to high memory / interpreter hang if a closing tag incorrectly had a large amount of unterminated space in it. Credit to Sebastian Chnelik for locating the issue. As Mako templates inherently render and directly invoke arbitrary Python code from the template source, it is **never** appropriate to create templates that contain untrusted input. Fixes: #367 Change-Id: I2f3a8665e92c1b6efcf36b1dba6e58fe0975b7da
* Version 1.2.3 placeholderMike Bayer2022-08-292-1/+5
|
* - 1.2.2rel_1_2_2Mike Bayer2022-08-293-12/+13
|
* Merge "fix tag regexp to match quoted groups correctly" into mainmike bayer2022-08-293-8/+34
|\
| * fix tag regexp to match quoted groups correctlyMike Bayer2022-08-293-8/+34
| | | | | | | | | | | | | | | | | | | | | | Fixed issue in lexer where the regexp used to match tags would not correctly interpret quoted sections individually. While this parsing issue still produced the same expected tag structure later on, the mis-handling of quoted sections was also subject to a regexp crash if a tag had a large number of quotes within its quoted sections. Fixes: #366 Change-Id: I74e0d71ff7f419970711a7cd51adcf1bb90a44c0
* | Restore unit tests in classes starting with TestMartin von Gagern2022-08-192-4/+5
|/ | | | | | | | | | | | | | | | | https://github.com/sqlalchemy/mako/commit/7e52b60b7dac75a3c7177e69244123c0dad9e9d9 changed tests from `unittest.TestCase` to pytest collection. But since then only classes *ending* in the word `Test` were considered to be tests; classes *starting* in `Test` were not. This disabled some existing tests, and while renaming these would be a viable way to restore coverage, extending the list of test class names avoids accidentally missing similar classes in the future. The loop test classes make use of the `setUp` method, so in their current form they need to inherit from `unittest` again. Changing to pytest fixtures would be a possible future modification. This commit adds 33 tests that had been missing before: * 25 methods in 4 classes from `test_loop.py` * 2 methods in `TestTemplateAPI` from `test_template.py` * 6 methods in `TestTGPlugin` from `test_tgplugin.py` Closes: #365 Pull-request: https://github.com/sqlalchemy/mako/pull/365 Pull-request-sha: 6b5ff13dd5346f3472ac93f3af0a9da172ae1c5e Change-Id: I744b8c6f28cf485c07cd30a11c328ea7391c7d3b
* Update FUNDING.ymlmike bayer2022-07-061-1/+1
|
* Update FUNDING.ymlmike bayer2022-07-061-1/+1
|
* add FUNDINGMike Bayer2022-07-061-0/+6
| | | | Change-Id: I15d9b058f20c331c426c98dde64d8b319b9cafe1
* Version 1.2.2 placeholderMike Bayer2022-06-302-1/+5
|
* - 1.2.1rel_1_2_1Mike Bayer2022-06-304-16/+18
|
* happy new yearMike Bayer2022-06-3025-26/+26
| | | | Change-Id: I1aef208387ea7d25462b8effdfc298e89c74dadd
* optimize some code pathsTakuto Ikuta2022-06-303-12/+28
| | | | | | | | | | | | | | Optimized some codepaths within the lexer/Python code generation process, improving performance for generation of templates prior to their being cached. Pull request courtesy Takuto Ikuta. This shows around 10% performance improvement in our use case (https://crbug.com/1214033#c32). Closes: #361 Pull-request: https://github.com/sqlalchemy/mako/pull/361 Pull-request-sha: bcdee5ccf57100490aa0e48baeda6f15b584ab32 Change-Id: If647f77a52d5745019dcc46f82fd7a928f990757
* fix tests for py311Mike Bayer2022-06-292-1/+5
| | | | | | - use more specific warnings Change-Id: If1713e0f3ced05a886cd8f43862db91eba1d16de
* use license_files instead of the deprecated license_fileFederico Caselli2022-06-271-1/+1
| | | | Change-Id: I0d3716d87ccc5c18c5e944e71f986df437a1f62a
* Fix test runs without lingua or babelMichał Górny2022-05-134-12/+33
| | | | | | | | | | Defer test imports to fall within exclusion decorators Support for identifying new 3.11-style error message Closes: #357 Pull-request: https://github.com/sqlalchemy/mako/pull/357 Pull-request-sha: 44f788b4f3a3c3e1f8328670a2334555163b90e2 Change-Id: I39d59383d92e041e10adc967f51d74839105a1eb
* additional test_exceptions fixesMike Bayer2022-05-087-17/+25
| | | | | | | | | | | | | | Various fixes to the test suite in the area of exception message rendering to accommodate for variability in Python versions as well as Pygments. builds on 9b8da4b1e2bdc025b643f2061aa32 which also reduced some of the checks for exception message formatting. also updates black to 22.3.0 as there seem to be some dependency issues with the older version Fixes: #360 Change-Id: Ib8916534699e7c57817cf82d53300e50d47d0d50
* reduce exception message tested for py311 compatMike Bayer2022-04-091-8/+2
| | | | Change-Id: I519d4a840fd456ea042a5b0735da183a1e340aa4
* Add closing tag in include.Abhilash Raj2022-04-081-7/+7
| | | | | | | | | | Fixes #260 Closes: #359 Pull-request: https://github.com/sqlalchemy/mako/pull/359 Pull-request-sha: 541f219237c47ab159a7bc36172044d503cd0c08 Change-Id: Icdaa09284cb9921b5753985ae600978763e0223f
* Version 1.2.1 placeholderMike Bayer2022-03-102-1/+5
|
* more release fixesrel_1_2_0Mike Bayer2022-03-102-1/+2
|
* - 1.2.0 for mar 10 2022Mike Bayer2022-03-102-2/+1
|
* Changed GPG artifact in setup.cfgMichael Bourke2022-02-181-1/+1
| | | | Change-Id: I7c5be755026df9d6f4d269e327e512a1344abc9e
* - 1.2.0Michael Bourke2022-01-1810-45/+53
|
* Fix for WindowsMichael Bourke2022-01-171-1/+1
| | | | Change-Id: I1f332e81cc8a67391c3a9133e37c9a8bb1362745
* Refactor test.util into mako.testingMichael Bourke2022-01-1438-348/+712
| | | | | Fixes: #349 Change-Id: I202c252a913fb72cc328a6e7f0f33174802487d3
* Replace (old) raises test helper with expect_raisesMichael Bourke2022-01-062-26/+21
| | | | | | Fixes #350 Change-Id: I154ffeecad925622167593b6a5a45458eaf95641
* Fix changelog.rst so create_release.sh runsMichael Bourke2022-01-031-1/+1
| | | | Change-Id: Ic54c7e719dab661aa6181ef483cbde2cee6dd852
* Merge "Remove Python 2 residue; use Python 3 idioms" into mainmike bayer2022-01-0217-104/+77
|\
| * Remove Python 2 residue; use Python 3 idiomsMichael Bourke2021-12-2717-104/+77
| | | | | | | | | | | | Fixes #352 Change-Id: I051ec20505464559e9399a8f1ac4a39dc323902a
* | Corrected universal wheel directive; building wheels now targets Python 3 onlyMichael Bourke2021-12-282-3/+6
|/ | | | | Fixes #351 Change-Id: I7bd7d105871628f3c65433e46bbf3fe7b106386a
* Fix changelog tagsMichael Bourke2021-12-165-5/+5
| | | | Change-Id: I64c34efbfed69c3cc952218c3f27928a958ca859
* Fix 3.7 and Windows problemsMichael Bourke2021-12-102-3/+13
| | | | Change-Id: Iec9544a055a1a2e3e2a87b8dce8360ffa64a67c3
* Fix exception causes in lookup.pyRam Rachum2021-12-0934-302/+554
| | | | | | | | | | | | | | | | | | Mako now performs exception chaining using ``raise from``, correctly identifying underlying exception conditions when it raises its own exceptions. Pull request courtesy Ram Rachum. Additionally includes cleanup of the test suite to include better exception fixtures. Closes: #319 Pull-request: https://github.com/sqlalchemy/mako/pull/319 Pull-request-sha: d06526ac3f80ca9d24cd8143d8afde254f80b094 Additionally: Fixes: #348 Change-Id: Ibb2864de822bf4b63adf22a6bb32cf0758d296bd
* fix typoJan Chren2021-11-171-1/+1
| | | | | | | | Closes: #326 Pull-request: https://github.com/sqlalchemy/mako/pull/326 Pull-request-sha: a04258282a896237596e926135f0d179686e64ac Change-Id: I54896fdaeb4a5b7f8f2d1d13afeaa66377bc6ab5
* still trying to fix a markup issue in changelogMike Bayer2021-11-174-5/+5
| | | | | | can't reproduce locally, so just trying things Change-Id: I43f52a216c8ea4ddca537f5f4f072bf6efec7f52
* fix formattingMike Bayer2021-11-171-1/+1
| | | | Change-Id: I1ec7deeeadeeac3dacca58a9d4207c23551e5dd9
* cherry-pick changelog from 1.1.6Mike Bayer2021-11-172-9/+14
|
* description needs to be all single line for distutilsMike Bayer2021-11-171-2/+1
| | | | Change-Id: I8511d4eb793892f6e76fda99a9840e07178be785
* Fix matching multiline control lines in templates with CRLF line endingsCharles Pigott2021-11-133-1/+27
| | | | | | | | | | | | | | | | | | | | | Fixed issue where control statements on multi lines with a backslash would not parse correctly if the template itself contained CR/LF pairs as on Windows. Pull request courtesy Charles Pigott. A missing '\\' meant that it would actually allow ``` % if foo \r bar: ``` in a template file and not match if the file actually had a `\r` char Closes: #346 Pull-request: https://github.com/sqlalchemy/mako/pull/346 Pull-request-sha: e79ebabe3df7e59c9ea40e62406131e1a0c6c3b4 Change-Id: I179bdd661cecb1ffb3cf262e31183c8e83d98f12
* Remove more Python 2 language from docsMichael Bourke2021-10-283-118/+31
| | | | Change-Id: Icdddf85b3ddf5d3e7172e318c9e75b3c9a857314
* Merge "Replace the use of pkg_resources with the importlib library." into mainFederico Caselli2021-10-265-10/+33
|\
| * Replace the use of pkg_resources with the importlib library.Federico Caselli2021-10-255-10/+33
| | | | | | | | Change-Id: Iafb96d53196ff74c98f2fbc7caf2eb8fbdc70029