Changelog
3.1
- February 5, 2025
<script src="https://cjrtnc.leaningtech.com/3.1/cj3loader.js"></script>
- Maximise window support
- Brand new “execCallback” option
- Restore audio support
- Various bug fixes
- Improved font behavior
- Improved debugging options
- Improved performance
3.0
- February 1, 2024
<script src="https://cjrtnc.leaningtech.com/3.0/cj3loader.js"></script>
- Support all Java opcodes in the JIT
- Better support for missing JNI symbols
- Improved support for socket syscalls
- Support for loading native libraries as JavaScript modules
- Support zero-copy passing of primitive arrays in library mode
- Restore support for image filtering
- Restore support for printing
- Optimized font handling
- Improved error message when server does not support content ranges
3.0rc2
- November 29, 2023
<script src="https://cjrtnc.leaningtech.com/3.0/cj3loader.js"></script>
- Reduced verbosity of debug messages
- Support for
synchronised
methods in the JIT - Restored support for AWT to the same level as CheerpJ 2.3
- Improved reflection support
- Support for Web Workers (just use
importScripts
) - Improved clipboard support
- Improved library mode with support object field access, arrays,
instanceof
, quality-of-life and debugging - Improved support for fonts
- Improved support for class loaders
- Fixed preloading support
- Support for
ClassCastException
cheerpjAddStringFile
deprecated, renamed tocheerpOSAddStringFile
3.0rc1
- October 18, 2023
<script src="https://cjrtnc.leaningtech.com/3.0rc1/cj3loader.js"></script>
- Completely new JIT-based architecture
- Removed AOT compiler
- Full classloader support
- New scalable JNI architecture (
cheerpjInit
natives
option) - Library mode (
cheerpjRunLibrary
)- Removed
cjCall
andcjNew
- Removed
cheerpjInit
is now asynchronouscheerpj-dom.jar
removedcheerpjRunJarWithClasspath
removedCheerpJWorker
removed (3.0rc2 adds support forimportScripts
)com.leaningtech.handlers
HTTP handler no longer needed. HTTP(S) requests just work
Previous versions
CheerpJ 3.0 was a major architectural rewrite of CheerpJ.
For previous versions, see the CheerpJ 2.x changelog.