Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Gradle wizard searching Maven central for latest versions #464

Merged
merged 28 commits into from
Feb 10, 2023

Conversation

tonihele
Copy link
Contributor

@tonihele tonihele commented Feb 4, 2023

Resolves #371

Alright.. Now, if Maven API is up, we initialize the user project with latest versions of libraries. And automatically display latest versions of jME to choose from. If Maven API is down, it doesn't matter, we have a set of hard coded versions to choose from. This is just an enhancement that is provided for our and users' convenience.

Maven API wasn't working that great this past two weeks. Now it seems to be up again. How this is designed, is that there is zero wait for the user. So there might be inconsistent results in users' perspective as we might catch latest versions at some random point in time.

In my experience, the Maven API either responds immediately or it is simply down. Meaning that this strategy is viable. The Maven is accessed in highly parallel way, zero locks still. And only once per lifetime of the SDK instance.

Ok, the caveats:

  • User sees some warnings for not able to get latest versions of some libraries (due to API error or as guaranteed since not all the libraries while writing this are accessible from Maven Central)
  • Even for jME libraries we can't guarantee a working combination on all versions. Libraries such as test-data and awt-dialogs might be missing from some versions, yet they are hard coded to be included (not the latter, yet)

edit: added library version filtering to avoid weird version types (minie and heart)

@tonihele
Copy link
Contributor Author

tonihele commented Feb 4, 2023

  • The latest versions might be in some cases little bit off.. Or depends on the use case.. i.e. com.github.stephengold:Heart:8.3.0+for36 and com.github.stephengold:Minie:7.2.0+mt (we can maybe ask Stephen to consider adjusting his build scripts so that the recommended package is uploaded last...)

Ok, this is kinda ridiculous demand. We can fix this to be better...

@tonihele tonihele added this to the 3.6 milestone Feb 4, 2023
@tonihele
Copy link
Contributor Author

tonihele commented Feb 5, 2023

I also reduced the log level to INFO. It is better UX I think. Errors are to be expected.. to some degree. With INFO they still come to the application log and all. So maybe it is enough. Now they don't bother the user.

@tonihele
Copy link
Contributor Author

tonihele commented Feb 9, 2023

I'll merge this in 12h if no objections. I think it is production ready.

I still tweaked the version handling to more straightforward model in code.

@tonihele tonihele merged commit e649511 into jMonkeyEngine:master Feb 10, 2023
@tonihele tonihele deleted the feature/issue-371 branch February 10, 2023 17:47
@tonihele tonihele changed the title Feature/issue 371 Gradle wizard searching Maven central for latest versions Feb 21, 2023
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.

Try to get version information to Gradle template wizard from Maven
1 participant