python-bottle/0002-Fix-930-DeprecationWarning-Flags-not-at-the-start-of.patch
zhang-liang-pengkun 46c659615f Fix #930: DeprecationWarning: Flags not at the start of the expression
Signed-off-by: zhang-liang-pengkun <zhangliangpengkun@xfusion.com>
(cherry picked from commit d4218f053f3e0aefa2f4de2d5c86228eca1c5162)
2023-11-27 11:00:53 +08:00

40 lines
1.5 KiB
Diff

From 0c3db605e927e6a58cefaecae3a3c6ef1e34dad5 Mon Sep 17 00:00:00 2001
From: Marcel Hellkamp <marc@gsites.de>
Date: Sat, 1 Dec 2018 17:35:14 +0100
Subject: [PATCH] Fix #930: DeprecationWarning: Flags not at the start of the
expression
Backported from 0.13-dev
---
bottle.py | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/bottle.py b/bottle.py
index fd663f7..dae4f56 100644
--- a/bottle.py
+++ b/bottle.py
@@ -3420,7 +3420,7 @@ class StplParser(object):
_re_cache = {} #: Cache for compiled re patterns
# This huge pile of voodoo magic splits python code into 8 different tokens.
# 1: All kinds of python strings (trust me, it works)
- _re_tok = '((?m)[urbURB]?(?:\'\'(?!\')|""(?!")|\'{6}|"{6}' \
+ _re_tok = '([urbURB]?(?:\'\'(?!\')|""(?!")|\'{6}|"{6}' \
'|\'(?:[^\\\\\']|\\\\.)+?\'|"(?:[^\\\\"]|\\\\.)+?"' \
'|\'{3}(?:[^\\\\]|\\\\.|\\n)+?\'{3}' \
'|"{3}(?:[^\\\\]|\\\\.|\\n)+?"{3}))'
@@ -3443,8 +3443,9 @@ class StplParser(object):
# Match the start tokens of code areas in a template
_re_split = '(?m)^[ \t]*(\\\\?)((%(line_start)s)|(%(block_start)s))(%%?)'
# Match inline statements (may contain python strings)
- _re_inl = '%%(inline_start)s((?:%s|[^\'"\n]*?)+)%%(inline_end)s' % _re_inl
-
+ _re_inl = '(?m)%%(inline_start)s((?:%s|[^\'"\n]*?)+)%%(inline_end)s' % _re_inl
+ _re_tok = '(?m)' + _re_tok
+
default_syntax = '<% %> % {{ }}'
def __init__(self, source, syntax=None, encoding='utf8'):
--
2.39.0.windows.2