String `%` operand raises a coercion error instead of printf-style formatting
還沒有人認領這個 Issue。
評估
研究方向
Start with the % handling in src/main/java/com/hubspot/jinjava/el/ext/ExtendedParser.java:421-424 and run the supplied {{ 'number'%r }} reproduction. Trace how AstBinary.MOD processes the operands, then verify that the string-left-operand case renders as Jinja2 does without the reported coercion error.
由索引模型根據 Issue 內容生成。
描述
Jinja2 applies printf-style formatting to 'text' % operand. Jinjava parses % as the JUEL modulo operator and coerces the left operand to a number, so a string left operand fails to render.
Affected: master df50b0d7. Releases 2.7.6, 2.8.3 and 2.8.4 behave the same.
Reproduction
{{ 'number'%r }}
Jinja2 renders number. Jinjava raises:
com.hubspot.jinjava.interpret.FatalTemplateErrorsException: Cannot coerce 'number' of class java.lang.String to class java.lang.Double (incompatible value)
Root cause
ExtendedParser maps the % token to AstBinary.MOD (src/main/java/com/hubspot/jinjava/el/ext/ExtendedParser.java:421-424). The JUEL implementation of MOD converts both operands to numbers, and there is no string formatting path for a string left operand.
- 主要語言
- Java
- 星號
- 789
- 分支
- 185
- 平均合併
- 4 小時 1 分鐘
- 30 天內合併 PR
- 1
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 沒有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
HubSpot/jinjava 的其他 Issue
-
`default` filter requires an explicit argument and fails without one可能已有人在做 @PHJ2000 於 7 天前認領。 未關閉
難度 2/5 1-3 小時 新手友好度 82/100
-
難度 2/5 1-3 小時 新手友好度 64/100
-
難度 5/5 一週以上 新手友好度 12/100
-
Upgrade jsoup可能已有人在做 關聯的 PR 仍在進行中或已合併。 未關閉
難度 3/5 1-2 天 新手友好度 45/100
-
`~` stringifies maps with Java Map.toString() instead of Python dict repr可能已有人在做 @alloutflo 於 6 天前認領。 未關閉
難度 3/5 1-2 天 新手友好度 82/100
相似的 Issue
-
難度 2/5 1-3 小時 新手友好度 76/100
oracle/graalvm-reachability-metadata#11472 ·
維護者通常 1 天內回覆
-
status: waiting-for-triage
難度 2/5 1-3 小時 新手友好度 70/100
spring-projects/spring-ai#7269 ·
維護者通常 1 天內回覆
-
難度 1/5 1 小時以內 新手友好度 89/100
objectionary/hone-maven-plugin#1353 ·
維護者通常 9 天內回覆
-
ClassNotFoundException: io.netty.channel.kqueue.KQueueEventLoop stack trace printed during native build on main (Netty 4.2 removed the class)可能已有人在做 @gastaldi 今天認領。 未關閉area/netty kind/bug
難度 2/5 1-3 小時 新手友好度 68/100
quarkusio/quarkus#57939 · 1 則留言 ·
維護者通常 1 天內回覆
-
bug
難度 2/5 1-3 小時 新手友好度 78/100
conductor-oss/conductor#1777 ·
維護者通常 4 天內回覆