[
https://issues.apache.org/jira/browse/TAP5-2806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18131855#comment-18131855
]
ASF subversion and git services commented on TAP5-2806:
-------------------------------------------------------
Commit 717524a5624f8ba37b2559ccb24c98ed90d80c14 in tapestry-5's branch
refs/heads/property-expression-parser from Ben Weidig
[ https://gitbox.apache.org/repos/asf?p=tapestry-5.git;h=717524a56 ]
TAP5-2806: Verify existing property expression features
The tests are designed how it "should" be, not how it's currently
implemented.
There are multiple bugs/issues in the current implementation, like
TAP5-2808 (range subexpression in lists/maps), or supported identifiers
and platform charset.
Currently failing tests are disabled.
> Upgrade Antlr 3 to 4
> --------------------
>
> Key: TAP5-2806
> URL: https://issues.apache.org/jira/browse/TAP5-2806
> Project: Tapestry 5
> Issue Type: Improvement
> Components: beanmodel
> Reporter: Ben Weidig
> Assignee: Ben Weidig
> Priority: Minor
>
> Currently, Antlr 3.5.2 is used by beanmodel.
> While there is no immediate pressure to upgrade or obvious security
> implications, migrating to 4 would provide long-term benefits for the project.
> h2. Rationale
> * {*}Improved architecture{*}: Antlr 4 was a rewrite of the platform. Even
> though 3 still has a large user base, 4 was released in 2013, is a more
> modern and maintainable approach. Over time, resources and knowledge
> regarding 3 will diminish.
> * {*}Performance{*}: 4 offers better parsing efficiency and memory usage.
> The grammar syntax changes allow the simplification of certain constructs
> currently present in the Tapestry grammar.
> * {*}Continued Development{*}: While 3 is stable, since 3.5.2 in 2014,
> there's been only a singular release, 3.5.3, in 2022, which mainly included
> project management changes. 4 has seen frequent-ish releases over time, with
> the last one being 4.13.2 in 2024.
> * {*}Technical debt reduction{*}: Upgrading now as part of regular
> maintenance would be less disruptive than being forced to upgrade under
> pressure due to a future security advisory or compatibility issue.
> h2. Proposed Approach
> * Open up BeanModelSourceBuilder to make it easier to get a
> PropertyConduitSource without the full IoC
> * Create tests using the current Antlr 3 grammar to verify Tapestry behavior
> * Upgrade to 4 and adapt our code as necessary
> * Verify success through testing
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)