Skip to content

Conversation

@neilbalch
Copy link
Contributor

@neilbalch neilbalch commented Oct 28, 2019

Please let me know if I forgot to do something. I just opened the project up in Intellij, changed the project SDK to Java 11, and fixed errors until the project compiled and ran. (#347)

@wcravens
Copy link
Member

I'd suggest that you build a Jar and somehow get it into the hands of some testers and let them try and run it on their systems. From what I recall, there is certain 'black magic' that the IDEs (Intellij/Eclipse) can/will do to facilitate these running correctly but there is a good threat that they won't work when ran on other folk's systems. That's when the fun really begins.

@neilbalch
Copy link
Contributor Author

Alright, @wcravens. What'd the protocol be for getting that done? I have no contacts to reach out to for testing. Also, is there a special process for building a .jar executable?

@gallopinggoose6
Copy link

Did anyone write tests for this project?

@neilbalch
Copy link
Contributor Author

Sorry, I don't understand... did anyone write tests for openrocket (of course yes) or my patch (no)?

@gallopinggoose6
Copy link

I mean code designed to run to make sure that the real code works. Basically we would have a little program or procedure that would feed a bunch of inputs into open rocket and see what happens. @neilbalch I'd be happy to run your jar on my system, I'd have to downgrade to JDK 11, but just send me a jar file and I can get to it this weekend.

@neilbalch
Copy link
Contributor Author

For sure. Any preferred media to get the .jar to you, @gallopinggoose6 ?

@gallopinggoose6
Copy link

Just email it to me. Probably copy everyone so that everyone can test it as well.

@wcravens
Copy link
Member

wcravens commented Oct 29, 2019 via email

@neilbalch
Copy link
Contributor Author

Here goes, @gallopinggoose6. I don't see a way to find your email address from your GitHub profile or commit history, so please accept my humble Firefox Send. Please let me know how else I can help.

@neilbalch
Copy link
Contributor Author

@gallopinggoose6 or use this one compiled for jdk-13.0.1. Same exact code, just compiled with a different JDK.

@neilbalch neilbalch changed the title Upgrade codebase to Java 11 Upgrade codebase to Java 11/Java 13 Oct 30, 2019
@gallopinggoose6
Copy link

Thanks @neilbalch I will take a look at that as soon as I can. I'll test the jdk 13 one on both Windows and Ubuntu. I'm not sure if there's much of a need to publish a jdk 11 one but I'll take a look at that one too, later.

@neilbalch
Copy link
Contributor Author

Indeed, @gallopinggoose6. In truth, I didn't realize that I wasn't up to date and there was a JDK higher than 11.x.x 😬. I'm also of the opinion that we should distribute the .jar targeting JDKs 13.x.x.

@gallopinggoose6
Copy link

@neilbalch Status: I haven't had much time to play around with this, however from the little testing I've done the program appears to return valid numbers. I was able to test the program on a raspberry pi running raspbian with MATE, a Windows system, and an Ubuntu system. I found the fewest number of bugs running on an Ubuntu machine. On windows the program will sometimes crash, and on the Raspberry pi there are broken elements of the UI. @wcravens where is a list of tests that I can run in order to figure out exactly what doesn't work?

@neilbalch
Copy link
Contributor Author

Hrm. Not sure how to debug those Windows crashes without more context...

@gallopinggoose6
Copy link

gallopinggoose6 commented Jan 19, 2020

replay_pid5836.log
replay_pid8060.log

@neilbalch Hi! I'm so sorry I have been silent for so long. A lot of busy stuff is happening so far, but here is something you might find useful:
hs_err_pid5836.log
hs_err_pid8060.log

@neilbalch
Copy link
Contributor Author

To be frank, @gallopinggoose6, I'm not sure how to interpret those... :(

@gallopinggoose6
Copy link

gallopinggoose6 commented Jan 19, 2020

Well @neilbalch I don't really know how to interpret them either. I do want to see openrocket get updated, so do you want to work through this? (I hope to be able to devote some more time to this soonish) I know that it happened while I was working inside of the generic quadrilateral fin editor - both times

@neilbalch
Copy link
Contributor Author

No, I mean I really don't know how to interpret those logs. I don't see any errors, exceptions, nothing. I have no idea how to process those logs, or take any meaningful action on their contents.

@gallopinggoose6
Copy link

I meant just working through the bug, finding some other way of fixing it, perhaps editing how log files work in order to make that happen. Can I find your source code in a forked repository?

@neilbalch
Copy link
Contributor Author

@LamentConfiguration
Copy link

I know I am kinda new here, but with the new release schedule for the jre/jdk, i'm not sure it would be worth the time chasing every version update, perhaps focusing on the current LTS (which is 11), would be the safest/best bet?

@neilbalch
Copy link
Contributor Author

@LamentConfiguration That's a good point. Are the releases that different from one another? Moving up to JDK 11 would be a step in the right direction, although it doesn't solve the problem of reducing the number of Java versions I'd have to have on my computer at once.

@teyrana
Copy link
Member

teyrana commented Feb 11, 2020

@neilbalch Hey, it's awesome to see your progress :)

Would love to help :) If you post that .jar again, I can help with some debugging.

I also have your branch setup in Eclipse, but it looks like it's missing a few .jar dependencies... do you know if the new ones got added to the project? The old ones were really old, and I'm sure needed to be updated....

@teyrana
Copy link
Member

teyrana commented Feb 11, 2020

@gallopinggoose6
Those sound like a different issue--but we still want to hear about those-- would you mind filing a separate issue?)

Do you get a popup window with a bug report, and an option to send it to the mailing list?
If so, the contents of that pop-up window would be the most useful info :)

@neilbalch
Copy link
Contributor Author

Hi, @teyrana! Yeah, of course. Would you like the one built for jdk-13.0.1?

I've been building with IntelliJ Idea, fixing errors that came up until it built and ran successfully. Could you describe what you mean when you say that the project looks like it's missing .jar dependencies? When I open version of the code from my patch on my machine in IntelliJ, it still builds.

@LamentConfiguration
Copy link

I have no way of knowing how different things will be from 1 to the other, the trend seems to be to continue the "backwards compatibility" (sans the headaches going from 8->9+) that is java, while being able to iterate on a small number of features at a time in-between the LTS releases.

I'm guessing the repo doesn't include the dependency jars that intellij's build tool is pulling when building the project from the cloned repo. Perhaps there is a way to provide an "uberjar" that has the specific dependencies your intellij is using?

@LamentConfiguration
Copy link

also, if you go with a solution like amazon's coretto, or the azul free community jdk, or the openjdk projects, they offer LTS support of 11 for quite a long time, and this might help you limit the number of jdk/jre's you need to have? (I'm a tinkerer myself, and I couldn't see having more than 2 LTS versions (if they're both being supported), and 1 "cutting edge" version, but I know I'm only mildly deep into the world of java).

Soon we'll be able to easily build applications with a small version of the jvm built-in and hopefully avoid a lot of these issues!

@teyrana
Copy link
Member

teyrana commented Feb 11, 2020

@neilbalch
Ahhh, thanks! That's beautiful! This will make a bunch of people happy :)
It worked fine on my machine, all except the 3d views (couldn't find gluegen.dll or something. Probably on my end.)

Not all of use use the same IDE, actually. Eclipse has been the most popular, and a few of us have been trying Intellj. I'll give that a try. But when I opened your branch in Eclipse, I got 462 errors... (!!) So I won't start by listing them all :P

With Intellij what's your build procedure? Do you build through the IDE? through ant / maven / etc on the command line? And what's the path where you found the .jar? (Relative to $PROJECT_ROOT, anyway)

@LamentConfiguration
Yea, we generally lag behind the JDK releases. So I doubt we'll have enough time to actually track the latest release. We'd like to at least stay out of EOL releases, though :/ It's mostly driven by how much trouble the community has in running the thing, though.

@teyrana
Copy link
Member

teyrana commented Feb 20, 2020

@LamentConfiguration

Oh, don't worry about it, then. If you have a burning desire to switch the build system, that's one thing.... but honestly intellij works pretty well, for now, so I we don't have much complaints.

Would love to have more eyes on this, one, fwiw.

@teyrana
Copy link
Member

teyrana commented Feb 20, 2020

@neilbalch
Okay, good news:

I was able to fix the 'example' rockets thing by classifying the 'swing/resources/` directory as a "resources root" in Intellij. And the example rockets are now available :)

Let me know if you want me to throw a pull request over, to merge into your upstream branch.

@teyrana
Copy link
Member

teyrana commented Feb 20, 2020

So: Current status:

  • Loading Example Rockets (fixed)
  • Loading Presets (fixed)
  • Enable 3d Views

@neilbalch
Copy link
Contributor Author

neilbalch commented Feb 20, 2020

@teyrana Awesome! The way I see it, you could push a commit to the pull request yourself (I enabled edits from maintainers a while ago), you could send me the diffs you applied to fix the presets and example rockets so I can commit them myself, or we could try what you suggested. I have no strong opinion either way.

EDIT: Oh, I now realize what you meant by "throw a pull request over"... Yeah, if you want to do that, go ahead. I'll merge it as soon as I get the chance. 😃

@teyrana
Copy link
Member

teyrana commented Feb 21, 2020

@neilbalch
I've submitted the patches as a sub-PR to this one: primarily because if possible, I'd like to get another set of eyes on them, to make sure they work on at least one other person's computer :)

Pull Request:

neilbalch#1

@LamentConfiguration
Copy link

Ok, well, with this seeming to go well so far? I'm going to go poke at something that actually "interests" me in languages (: the leaking memory/big memory use that was mentioned.

Due to lack of interest, the Android client is being retired.
@neilbalch neilbalch changed the title Upgrade codebase to Java 11/Java 13 Upgrade codebase to Java 11/Java 13 and retire Android app Feb 23, 2020
@neilbalch neilbalch changed the title Upgrade codebase to Java 11/Java 13 and retire Android app Upgrade to Java 11/Java 13 and retire Android app Feb 23, 2020
@teyrana
Copy link
Member

teyrana commented Feb 27, 2020

@neilbalch
I'm starting to look at the 3d views-- can you post the file-path / error that you see when you try to show 3d views?

Mine is C:\Windows\System32\gluegen-rt.dll.

@neilbalch
Copy link
Contributor Author

Would this error be found in the Intellij console?

@neilbalch
Copy link
Contributor Author

neilbalch commented Feb 27, 2020

@teyrana
image

Unable to load 3d Libraries: Could not initialize class javax.media.opengl.GLProfile

Hasn't javax been depreciated somewhat by now? I might be remembering wrong...

EDIT: Maybe this? https://stackoverflow.com/questions/7210194/where-can-i-find-the-package-javax-media-opengl

@teyrana
Copy link
Member

teyrana commented Feb 27, 2020

Oh. Huh.

a) I get a different error :P
b) Migrating to something else, like Jogl, is on the table, if we can get it working

Edit: javax IS jogl /jogamp.

teyrana added a commit to teyrana/openrocket that referenced this pull request Feb 28, 2020
teyrana added a commit to teyrana/openrocket that referenced this pull request Feb 28, 2020
@teyrana
Copy link
Member

teyrana commented Feb 28, 2020

@neilbalch
Fixed. Basically, Intellij was being opinionated again.
java11-3d

PR is in your inbox :)

@teyrana
Copy link
Member

teyrana commented Mar 3, 2020

@neilbalch
Okay, I think this PR is ready. Any objections to merging in?

@neilbalch
Copy link
Contributor Author

I haven't gotten the chance to submit my final patch yet, so I'd prefer if we hold off for another hour. I'll @ you when I'm ready. Thanks for your help with this, man!

@neilbalch
Copy link
Contributor Author

Huh. I still need to go through the process of re-adding the jogl libraries to Intelij when I clone the repository, but there are no diffs in Intellij's configs anymore... I think it's safe to say that we can merge this now, @teyrana, but we might want to investigate this for developer documentation.

@teyrana
Copy link
Member

teyrana commented Mar 3, 2020

I still need to go through the process of re-adding the jogl libraries to Intelij when I clone the repository,

Oh, do you mean this in a bug-report way? or a planning way?

@neilbalch
Copy link
Contributor Author

No, like a note to future developers that they may very well need to go through the same steps I did to sort out Intelij's identity crisis. 😄 Other than that, ready to merge. 👍

@teyrana teyrana merged commit 3aaf8c6 into openrocket:unstable Mar 4, 2020
@neilbalch neilbalch deleted the java11-upgrade branch March 19, 2020 22:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants