https://bugs.documentfoundation.org/show_bug.cgi?id=169296

            Bug ID: 169296
           Summary: Replace beanshell scripting with JShell
           Product: LibreOffice
           Version: unspecified
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: medium
         Component: LibreOffice
          Assignee: [email protected]
          Reporter: [email protected]

Description:
Beanshell has been the de facto library to provide interactive Java shell for
many years. But, since Java 9 in 2017, JShell is the standard Java REPL
(read–eval–print loop) which is available in JDK:

JEP 222: jshell: The Java Shell (Read-Eval-Print Loop)
https://openjdk.org/jeps/222

Suggested Enhancement:
The suggestion here is to replace the beanshell inside LibreOffice with JShell.

Rationale:
Although BeanShell is still available, it is no longer actively developed.
Latest commit goes back to August 2024, which is more than a year ago:
https://github.com/beanshell/beanshell/commits/master

and the last release is from Dec 2022, which is around 3 years ago.
https://github.com/beanshell/beanshell/releases

Also, it can be read in JEP 222 (link above) that BeanShell is not entirely
compatible with the latest Java features, and that is the case since Java 1.4
(2002-2003):
"Another alternative is to maintain the status quo: Use another language or use
a third-party REPL such as BeanShell, though that particular REPL has been
dormant for many years, is based on JDK 1.3, and makes arbitrary changes to the
language."

Additional information:
More information can be found in JDK Javadoc for the jdk.jshell module:

Module jdk.jshell
https://docs.oracle.com/en/java/javase/25/docs/api/jdk.jshell/module-summary.html

Introduction to JShell
https://docs.oracle.com/en/java/javase/11/jshell/introduction-jshell.html#GUID-465BA4F5-E77D-456F-BCB7-D826AC1E18AE

10 things developers need to know about JShell
https://developers.redhat.com/blog/2019/04/05/10-things-developers-need-to-know-about-jshell

Notes:
JShell uses a separate Java VM instance.
https://stackoverflow.com/q/44929943

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to