linghengqian opened a new issue, #7036:
URL: https://github.com/apache/incubator-seata/issues/7036

   <!-- Please do not use this issue template to report security 
vulnerabilities but refer to our [security 
policy](https://github.com/seata/seata/security/policy). -->
   
   ## Why you need it?
    Is your feature request related to a problem? Please describe in details
   
   - I personally noticed that Seata is still using `org.antlr:antlr4:4.8` when 
writing downstream documents like 
https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/special-api/transaction/seata/
 and https://www.yuque.com/linghengqian/meve2v/es8d3a8a18odao7x .
   - The use of old versions of Antlr4 causes downstream projects to always 
manually exclude the Antlr4 dependency in Seata Client.
   ```xml
         <dependency>
            <groupId>org.apache.seata</groupId>
            <artifactId>seata-all</artifactId>
            <version>2.2.0</version>
            <exclusions>
               <exclusion>
                  <groupId>org.antlr</groupId>
                  <artifactId>antlr4-runtime</artifactId>
               </exclusion>
            </exclusions>
         </dependency>
   ```
   - At the source, ShardingSphere uses Maven Plugin of 
`org.antlr:antlr4-maven-plugin:4.10.1` to compile `*.g4` files, while 
`org.antlr:antlr4-runtime:4.8` used by `org.apache.seata:seata-all:2.2.0` 
obviously cannot read the binary of `org.antlr:antlr4-maven-plugin:4.10.1`.
   - This affects the integration of projects including Hibernate, 
ShardingSphere, and Spark. Because the core reason why ShardingSphere updated 
the Antlr4 version is 
https://github.com/hibernate/hibernate-orm/discussions/4975 on the Hibernate 
side. See https://github.com/apache/shardingsphere/pull/23550 .
   - Although Spark 4.0.0 with Antlr4 4.10+ has not been officially released, 
Spark 4.0.0-preview2 with https://github.com/apache/spark/pull/43075 has been 
released. See https://spark.apache.org/news/spark-4.0.0-preview2.html . This 
will definitely cause some problems in Seata integration testing.
   
   ## How it could be?
   A clear and concise description of what you want to happen. You can explain 
more about input of the feature, and output of it.
   
   - Long story short, I expect Seata Client to update the version of 
`org.antlr:antlr4` from `4.8` to `4.10.1`. This necessarily means raising the 
minimum JDK compilation level for compiling Seata to JDK11. 
   - `org.antlr:antlr4-maven-plugin:4.10.1` requires JDK 11, but 
`org.antlr:antlr4-runtime:4.10.1` still works on JDK 8. So I don't think this 
is likely to affect downstream users using JDK8, only developers need to use 
JDK11+ to compile Seata. See 
https://lists.apache.org/thread/kgtfx5vnw73o61lkvdshyfvjfvvzk3js .
   
   ## Other related information
   Add any other context or screenshots about the feature request here.
   
   - See 
https://shardingsphere.apache.org/document/current/cn/user-manual/shardingsphere-jdbc/special-api/transaction/seata/
 and https://www.yuque.com/linghengqian/meve2v/es8d3a8a18odao7x .


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@seata.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@seata.apache.org
For additional commands, e-mail: notifications-h...@seata.apache.org

Reply via email to