JOGL 2.3.3 state of progress

classic Classic list List threaded Threaded
31 messages Options
12
Reply | Threaded
Open this post in threaded view
|

JOGL 2.3.3 state of progress

gouessej
Administrator
This post was updated on .
Good evening

I know that some people have been waiting for the next maintenance release of JOGL for months or even years. I was personally unable to make a aggregated build with the current system. Moreover, as Github was bought by Microsoft, I decided to stop using it, I could no longer contribute to JOGL.

The most annoying bugs concern the latest version(s) of Mesa under GNU Linux, some warnings under OS X as some things should be done only on the main thread, the crash with Java >= 1.9 and OS X when releasing some resources, easing the use of Java >= 1.9 by adding some exports and following some conventions to make JOGL more module-friendly and the HiDPI support under Windows. Most of them should be fixed in JOGL 2.3.3 but some of them might be fixed in another maintenance release (JOGL 2.3.4?) or in JOGL 2.4.0.

As I don't want this situation to go on any longer, I will make a single build by manually aggregating builds done on three different operating systems and I will use Sourceforge instead of Github. To me, Sourceforge isn't great but I know it better than Gitlab and I use it only because my own server cannot safely be used now to host our source code.

For now, I'll do my changes on my repositories on Sourceforge and the other contributors (Harvey? Xerxes?) will copy them (except the changes done to make the stuff work on Sourceforge, i.e renaming some sub-modules) into JogAmp's repositories on Github and jogamp.org.

I started copying the repositories Tuesday October 9th 2018. I succeeded in building Gluegen Wednesday October 10th 2018.

What's the plan?
- Succeed in building JOAL and JOGL (Wade already takes care of JOCL, doesn't he?)
- Test and put numerous fixes into my repositories (write unit tests when it is possible too)
- Upload a very first release candidate as soon as possible

How can you help me?
The 2 Giuseppe, gohai and some others suggested a lot of fixes, don't hesitate to make some suggestions too. It would be fine if some people could help me to build JOGL under Microsoft Windows and under OS X (jmaasing?) until I can do it by myself. As the bug tracker is still not working, I might ask some of you to remind me the patches we put into it, I remember at least one bug under OS X has a working patch in its bug report.

If you want to give it a try, you can start by cloning my repository for Gluegen:
git clone --recurse-submodules https://gouessej@git.code.sf.net/p/gluegen/code gluegen
git clone https://gouessej@git.code.sf.net/p/joal/code joal
git clone https://gouessej@git.code.sf.net/p/jogl/code jogl

Of course, your help and your encouragements are very welcome.

By the way, JOGL rocks and it's up to us to make sure it will rock in 2019 :)

N.B: I'm not Santa Claus. Don't expect me to make a new Java binding for the Vulkan API or to host a brand new forum. Please concentrate on fixing the bugs.

P.S: I succeeded in building JOAL and JOGL Tuesday October 16th 2018 :)
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Hello

I'll have to provide a more accurate fix for the bug 1357 as it seems to cause some regressions with AMD Cedar + Mesa under GNU Linux (ATi Radeon HD 5000 Series).
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

MJ Schnieders
Hi Julien,

Thanks for your work on this. Do you think it would be possible to set up continuous integration using Travis?

https://travis-ci.org 

Thanks,
- Mike
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Hi Mike

Actually, I hope that Sven will have some time one day to make the build server work anew so that I won't have to configure another system of continuous integration. Travis' website doesn't work in my web browser (Mozilla Firefox 60 ESR).

By the way, I think that I will take care of other contributions first and go back to the bug 1357 later.

Edit.: I can't use Travis, it's hosted on Github which I plan to leave, it seems to be bound to Github somehow and its current outages don't reassure me :s
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Sven Gothel
Administrator
In reply to this post by gouessej
Thank you Julien & Everybody,

JogAmp Server Update has been completed as follows:

- Linux Node (AMD) incl JogAmp updated to Debian 9 Stretch.
- Windows Node (NVidia) updated to Windows 10.
- MacOSX Node (Intel) updated to OSX 10.10.X

- Dropped builds and nodes: linux-i586 linux-armv6 windows-i586
                            solaris-i586 solaris-amd64

- Dropped signing

- All nodes currently use either OpenJDK 8 (Linux)
- or Oracle's JDK 8 (Windows + MacOSX).

- Next step would be to use OpenJDK 11 for all platforms,
  is that correct? Or would JDK 9 suffice for now?

- There is currently an aggregated test build
  <http://jogamp.org/deployment/archive/master/gluegen_910-joal_636-jogl_1474-jocl_1112/>
  Erroneously this one is tagged version 2.4.0 .. but maybe we keep it this way,
  will see.

Next Release Work

- Either 2.3.3 or if not binary backwards compatible 2.4.0
- Fix Bugzilla and Wiki entries for this release, i.e. pick bugs/features

My Role until next release

- I can integrate and merge your fixes, you have tested
- I need to complete one new feature in the next days: JavaFX integration

Cheers, Sven

On 10/11/18 12:58 AM, gouessej [via jogamp] wrote:

> Good evening
>
> I know that some people have been waiting for the next maintenance release of
> JOGL for months or even years. I was personally unable to make a aggregated
> build with the current system. Moreover, as Github was bought by Microsoft, I
> decided to stop using it, I could no longer contribute to JOGL.
>
> The most annoying bugs concern the latest version(s) of Mesa under GNU Linux,
> some warnings under OS X as some things should be done only on the main
> thread, the crash with Java >= 1.9 and OS X when releasing some resources,
> easing the use of Java >= 1.9 by adding some exports and following some
> conventions to make JOGL more module-friendly and the HiDPI support under
> Windows. Most of them should be fixed in JOGL 2.3.3 but some of them might be
> fixed in another maintenance release (JOGL 2.3.4?) or in JOGL 2.4.0.
>
> As I don't want this situation to go on any longer, I will make a single build
> by manually aggregating builds done on three different operating systems and I
> will use Sourceforge instead of Github. To me, Sourceforge isn't great but I
> know it better than Gitlab and I use it only because my own server cannot
> safely be used now to host our source code.
>
> For now, I'll do my changes on my repositories on Sourceforge and the other
> contributors (Harvey? Xerxes?) will copy them (except the changes done to make
> the stuff work on Sourceforge, i.e renaming some sub-modules) into JogAmp's
> repositories on Github and jogamp.org.
>
> I started copying the repositories Tuesday October 9th 2018. I succeeded in
> building Gluegen Wednesday October 10th 2018.
>
> What's the plan?
> - Succeed in building JOAL and JOGL (Wade already takes care of JOCL, doesn't
> he?)
> - Test and put numerous fixes into my repositories (write unit tests when it
> is possible too)
> - Upload a very first release candidate as soon as possible
>
> How can you help me?
> The 2 Giuseppe, gohai and some others suggested a lot of fixes, don't hesitate
> to make some suggestions too. It would be fine if some people could help me to
> build JOGL under Microsoft Windows and under OS X (jmaasing?) until I can do
> it by myself. As the bug tracker is still not working, I might ask some of you
> to remind me the patches we put into it, I remember at least one bug under OS
> X has a working patch in its bug report.
>
> If you want to give it a try, you can start by cloning my repository for Gluegen:
> git clone --recurse-submodules
> https://gouessej@.../p/gluegen/code gluegen
>
> Of course, your help and your encouragements are very welcome.
>
> By the way, JOGL rocks and it's up to us to make sure it will rock in 2019 :)
>
> N.B: I'm not Santa Claus. Don't expect me to make a new Java binding for the
> Vulkan API or to host a brand new forum. *Please concentrate on fixing the bugs*.
> Julien Gouesse | Personal blog <http://gouessej.wordpress.com> | Website
> <http://tuer.sourceforge.net>
>
>
> ------------------------------------------------------------------------------
> If you reply to this email, your message will be added to the discussion below:
> http://forum.jogamp.org/JOGL-2-3-3-state-of-progress-tp4039264.html
> To start a new topic under jogl, email [hidden email]
> To unsubscribe from jogl, click here
> <
> NAML
> <
http://forum.jogamp.org/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>


--
health & wealth
mailto:[hidden email] ; http://jausoft.com
land : +49 (471) 4707742 ; fax : +49 (471) 4707741
Timezone CET: PST+9, EST+6, UTC+1
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Hello Sven

I notice that Jenkins has been alive anew since Yesterday, thank you :) The bug tracker works too :D

I should end writing a very long article that took most of my spare time during 9 months, I still have a problem with the fix for the bug 1357 but some Gohai's fixes (except for the bug 1290?) should be integrated and merged. As I'm going to leave Github very soon, I'll send you my patches by email. I'm going to look at Bugzilla and the wiki entries.

Is there a plan to use OpenJDK from AdoptOpenJDK under Windows and OS X?

I would feel more comfortable with a LTS version of Java (i.e Java 1.11), I have some work to do to make it more convenient so that the developers don't have to use tons of flags to run a software based on JOGL with Java >= 1.9.

Thank you so much.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Sven Gothel
Administrator
On 12/11/18 11:14 AM, gouessej [via jogamp] wrote:
> Hello Sven
>
> I notice that Jenkins has been alive anew since Yesterday, thank you :) The
> bug tracker works too :D

Yup, jenkins update took a little longer. Test nodes had to adapt some launch
changes.

>
> I still have a problem with the fix for the bug 1357

> but some
> Gohai's fixes (except for the bug 1290?) should be integrated and merged.
Is there a number for 'Gohai fixes'?
Yes, earlier this year I merged what was available and what looked good.
Thank you all!

> As
> I'm going to leave Github very soon, I'll send you my patches by email. I'm
> going to look at Bugzilla and the wiki entries.
Great

>
> Is there a plan to use OpenJDK from AdoptOpenJDK under Windows and OS X?
Yes, something OpenJDK I guess.

>
> I would feel more comfortable with a LTS version of Java (i.e Java 1.11), I
> have some work to do to make it more convenient so that the developers don't
> have to use tons of flags to run a software based on JOGL with Java >= 1.9.

JOGL won't change in this regard, i.e. we still are backwards compatible to
old Java and I see no need to change the implementation for cosmetics.

I talk about the test and build infrastructure here.
One thing we could use for deployment is the new bundling maybe,
matching those profiles - what we did years ago w/ JiGong :)

>
> Thank you so much.

Thank you Julien and everybody else.

Best regards, Sven
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Hello Sven

Have you merged this? I don't think so. It's just a tiny spelling mistake:
https://github.com/sgothel/jogl/pull/100/files

Those Gohai's fixes aren't merged yet as far as I know:
https://github.com/sgothel/jogl/pull/104/files
https://github.com/sgothel/jogl/pull/103/files
https://github.com/sgothel/jogl/pull/97/files

Yodoga's enhancement is interesting but do you have a touch screen to give it a try?
https://github.com/sgothel/jogl/pull/102/files

elect86's one-line fix for a shader whose name is quoted:
https://github.com/sgothel/jogl/pull/95/files

Yes, AdoptOpenJDK is here.

Would it make sense to make a few backward-compatible changes to ease the use of Java >= 1.9?

I get "Extension BugzillaReports not loaded" when trying to see the roadmaps :s
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Hello

I deleted my repositories on Sourceforge to avoid any confusion. I'm currently trying Wade's stuff under Mageia Linux + OpenJDK 8 (yes OpenJDK rocks :) ).
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Ok I've just tried Wade's stuff fixing JogAmp with Java 11:
git clone --recurse-submodules --single-branch --branch java-11-fixes https://github.com/WadeWalker/gluegen.git gluegen

It requires at least Ant 1.9.8 (I use Ant 1.10.5), otherwise you'll get this error message:
javac doesn't support the "nativeheaderdir" attribute

NativeTaglet doesn't compile because it extended com.sun.tools.doclets.Taglet (which works with Java 8 but not with Java 11) and it extends now jdk.javadoc.doclet.Taglet (which works with Java 11 but not with Java 8).
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Wade Walker
Administrator
In reply to this post by gouessej
I'm not sure if my branches will compile with JDK 8 -- I think the removal of javac -bootclasspath that happened in Java 9 will mess it up. You might have to tweak the build.xml files a little if you want to compile with an older JDK.
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
The problem is that I fear that it might be impossible to make JogAmp work with both versions (8 and 11). The least annoying scenario that I see is that your changes to make it work with Java 11 prevents from building it with Java 8 but doesn't prevent from running it with Java 8 except the part of GlueGen that doesn't belong to its runtime (GlueGen RT).

Have you uploaded the fat JAR of your build somewhere? I'd like to give it a try.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Wade Walker
Administrator
I've got JARs at https://github.com/WadeWalker/com.jogamp.jogl, but they were built to be Java 11 compliant, so they probably won't work with Java 8. If you check out my branch, you could set the -release value to Java 8 and build, which should still work until we upgrade to Java 12 :)
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

gouessej
Administrator
Thank you. I'll build JogAmp with -release 8.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Mabula Haverkamp
In reply to this post by Wade Walker
Hi Wade & Julien,

Just to be certain, the latest release to use is now in Wade's repository?
https://github.com/WadeWalker/com.jogamp.jogl

I need it for Java 8, do I need to build this now myself on all platforms in Eclipse ?
I think I can since I work in eclipse for my own software, but I need some confirmation that this is what I should do now to have the latest JOGL for java 8 in my application ;-)

Thanks,
Mabula

Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Wade Walker
Administrator
Hi Mabula,

If you just want to use with Java 8, you can use the last official release from jogamp.org. You only need my release if you're running on Java 11 and you want to get rid of the warning messages :)
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Mabula Haverkamp
Dear Wade,

I was already using the unoffical release of Julien, the jogamp-fat.jar which I need for ati graphics cards on Linux.

Currently, new Linux mesa drivers on Linux, again with ati cards, trigger a new bug on jogl, OpenGL can't be initialized... and I read that apparently this is fixed in your repository? And my MacOS users indeed have seen warning messages...

To add, the jogamp-fat.jar has a problem with loading the native libraries on a Windows 7 machine of one my customers, which I think can be easily fixed if the native library deployment is done differently. Now it runs a jogamp_exe_xxxxxx.exe (self extracting archive I assume? I haven't checked ) which can't complete on the user's machine (probably due to some security setting somewhere, which the customer can't find). Even elevating my application to run with admin rights does not solve this and it shouldn't off course.

So I am interested to see if your jogl release works better and has solutions for these problems. Does it? Or are my hopes in vane?

If i can get instructions on how to load your repository in eclipse, I would even try to have a look myself in the jogl code to see if I can help/contribute?

Kind regards,
Mabula
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Wade Walker
Administrator
If you have to run on Windows 7, my unofficial version of JOGL may not help you -- it's compiled for Java 11, which I'm not sure runs on such an old version of Windows.

It appears that my instructions for how to build JOGL on the command line (which is the step before building in Eclipse) at https://jogamp.org/wiki/index.php/Building_JOGL_on_the_command_line are now offline with the rest of the site :( If you want to try to build your own version on Windows,  I can send more specific instructions, but it is a bit of a process, since you have to install MSYS2 (https://www.msys2.org/) to compile the native-code portions.
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Mabula Haverkamp
Hi Wade,

Thank you for your response.

I produce a commercial image processing application for Astrophotography:
https://www.astropixelprocessor.com/

And this application is available for my customers on Windows, Linux and MacOS (64bits)
So, yes, some of my customers are still on Windows 7, which i can fully understand. I build the windows version on windows 10, but it has been frustrating several times whereas windows 7 was rocksolid in experience.

Simply said, my application depends on JOGL and I wish that I could get access to a more updated version with some bug fixes.

If it is the only option, at the moment, I would need to build jogl on Windows, Linux and MacOS.
I have experience with compiling libraries using Msys2, so perhaps I can try?

Having said this, JOGL's website has been offline now for several days and the latest official release is old. It does feel like that investing more time and building more reliance on JOGL might not be a smart thing to do... no offence to you or Julian, you have been most helpfull, but the current state of affairs is not convincing to use, keep using, let alone start using JOGL for any project.

It would be helpfull to start with if a clear update on the main JOGL website is placed regarding the state of affairs and what we can expect going forward.

Kind regards,
Mabula
Reply | Threaded
Open this post in threaded view
|

Re: JOGL 2.3.3 state of progress

Wade Walker
Administrator
I agree with you, but I think the only one who could give an authoritative update on JOGL's plans going forward would be Sven. I do what I can to help others on the forum, but I only wrote tiny fragments of JOGL (little patches for my own specific issues), so I don't have the expertise or time to take on the project myself as principal maintainer. I'm in the same situation as you are -- I compile JOGL myself locally to keep it working for my own projects now :)

I do have notes on how to build JOGL on the three platforms you specified, and have done it recently myself, so I could send you more specific instructions if you want, and help you get it working.
12