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

build(idea): base run configs on Gradle #5257

Merged
merged 4 commits into from
Jun 30, 2024

Conversation

skaldarnar
Copy link
Member

@skaldarnar skaldarnar commented Jun 20, 2024

Contains

As a result of looking into #5256 I propose to make our run configurations use Gradle instead of IntelliJ's built-in build system.

grafik

How to test

Try out the different configurations, and observe wheter anything changes drastically from the previous run configuration behavior.

Let me know whether you are missing a configuration you are using often and that was removed in this PR.

Outstanding before merging

  • is this setup feasible for attaching the debugger
  • update the documentation accordingly

 As a result of looking into #5256 I propose to make our run configurations use Gradle instead of IntelliJ's built-in build system.
@github-actions github-actions bot added the Category: Build/CI Requests, Issues and Changes targeting gradle, groovy, Jenkins, etc. label Jun 20, 2024
@skaldarnar skaldarnar added the Topic: Stabilization Requests, Issues and Changes related to improving stablity and reducing flakyness label Jun 20, 2024
Copy link
Contributor

@BenjaminAmos BenjaminAmos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The main Terasology run task still seems to work for me. I have observed that the other presets are present in the correct folders from the run menu. It might be possible to be more generous with the -Xms and -Xmx JVM options now but that can be evalulated another time.

@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Terasology (EXTREME)" type="GradleRunConfiguration" factoryName="Gradle">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The old name for this configuration was "Extreme (8GB)", which I think was clearer. The reason why this preset was "extreme" was because at the time 8GiB of memory was likely to consume the majority of available memory in your system. Things have moved on a bit now, such that this isn't as extreme as it once was but it is still a good test.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

renamed to terasology (8gb)

<option value="--args='--homedir=. --no-crash-report'" />
</list>
</option>
<option name="vmOptions" value="-Xms256m -Xmx1536m -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints -XX:StartFlightRecording=filename=terasology.jfr,dumponexit=true" />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that -XX:+UnlockCommercialFeatures is no longer needed and might actually not work anymore. JDK Flight Recorder has been a part of OpenJDK for a long time now and that flag was only ever needed for old versions of the Oracle JDK.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this gave an error, pushed a fix by removing it.

.idea/runConfigurations/Terasology__MacOS__.xml Outdated Show resolved Hide resolved
@soloturn
Copy link
Contributor

doc update: not sure which one you mean. checked https://github.com/MovingBlocks/Terasology/blob/develop/docs/Contributor-Quick-Start.md which looks ok.

Copy link
Member

@jdrueckert jdrueckert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small thing to adjust before merging pls, looks good otherwise.
I didn't test every single one, though.

@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="CLI Help" type="GradleRunConfiguration" factoryName="Gradle">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<configuration default="false" name="CLI Help" type="GradleRunConfiguration" factoryName="Gradle">
<configuration default="false" name="Terasology (CLI Help)" type="GradleRunConfiguration" factoryName="Gradle">

@soloturn soloturn merged commit 189afa9 into develop Jun 30, 2024
10 checks passed
@soloturn soloturn deleted the build/gradle-based-run-configs branch July 30, 2024 16:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Category: Build/CI Requests, Issues and Changes targeting gradle, groovy, Jenkins, etc. Topic: Stabilization Requests, Issues and Changes related to improving stablity and reducing flakyness
Projects
Status: No status
Status: No status
Development

Successfully merging this pull request may close these issues.

4 participants