Compatibility Patches

I am posting here to bring attention to the patches i’ve just submitted, the first two are relevant also to what has been discussed here JME - Future Development - #44 by Massdrive regarding transpilation and platforms support.

8 Likes

Hope this is the right place to ask these questions regarding teavm and web support:

  • How is the compatibility with new Java versions (e.g. Java 17+)?

  • From a quick look in the docs, it says it has limited reflection support. What does “limited” mean here? Would it be possible to use jme3-networking and other third-party libraries like ZayES that require reflection for reading and writing fields? (field.setAccessible(true);)

1 Like

For the teavm backend i am compiling for java 11 since i had some issues with java8 (but i need to double check that), regarding the newer versions i don’t know if they are supported atm.

When you compile for teavm you need to manually specify which classes need reflection and it will build the support code for all the possible reflection operations on the specified classes, so i think the answer is yes, we just need to build a whitelist and a simple way to extend it for the developer.

jme3-networking, needs also a connector that uses websockets to deliver and receive packets, since raw TCP/UDP sockets can’t be used from a webpage. It shouldn’t be too hard to implement since it is already modular in nature, what i am not sure about is whether there is a websocket library that is lightweight and compatible with our license.

2 Likes

Isn’t Apache 2.0 compatible with BSD-3?