Skip to content

chore: modernize Gradle build and CI#171

Open
Blackn0va wants to merge 2 commits into
obs-websocket-community-projects:developfrom
Blackn0va:chore/modernize-gradle-ci
Open

chore: modernize Gradle build and CI#171
Blackn0va wants to merge 2 commits into
obs-websocket-community-projects:developfrom
Blackn0va:chore/modernize-gradle-ci

Conversation

@Blackn0va

Copy link
Copy Markdown

Modernizes the Gradle build, dependencies, and GitHub Actions setup.

Changes:

  • Updates Gradle Wrapper to 9.5.1
  • Updates build/test dependencies to current stable Java 8-compatible versions
  • Runs CI on JDK 21 while preserving Java 8 bytecode/API compatibility via --release 8
  • Adds explicit JUnit Platform Launcher runtime dependency required by Gradle 9
  • Updates GitHub Actions versions
  • Fixes manual E2E media input action calls to use MediaInputAction enum
  • Updates README logging example to current Logback

Validation:

  • .\gradlew.bat clean build
  • .\gradlew.bat :client:integrationTest :example:build :client:compileEndToEndManualTestJava --warning-mode all
  • git diff --check

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Modernizes the project’s build tooling and CI by updating the Gradle wrapper and dependency versions, while aiming to keep the library Java 8-compatible (via --release 8) and updating a few examples/tests to match newer APIs.

Changes:

  • Upgrades Gradle wrapper and updates dependency versions via the settings-based version catalog.
  • Adjusts build configuration to compile with Java 8 --release while running CI/builds on newer JDKs.
  • Updates docs and manual E2E test code to reflect newer logging and API usage.

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
settings.gradle Updates version-catalog dependency versions and adds JUnit Platform Launcher entry.
client/build.gradle Adds options.release = 8, updates test-sets plugin, and adds JUnit Platform Launcher at runtime for tests.
messagegenerator/build.gradle Updates SLF4J catalog coordinates and adds JUnit Platform Launcher runtime dependency.
example/build.gradle Updates SLF4J catalog coordinate usage.
messagegenerator/src/test/.../AbstractTestBase.java Refactors resource reading logic (currently introduces a compile/runtime issue).
client/src/endToEndManualTest/.../ObsRemoteE2eObservationIT.java Switches media input actions to MediaInputAction enum and improves interruption handling.
README.md Updates Logback version in logging examples (needs a Java 8 compatibility clarification).
gradlew Wrapper script updated to newer Gradle template.
gradlew.bat Wrapper script updated to newer Gradle template (currently has broken error-path termination).
gradle/wrapper/gradle-wrapper.properties Upgrades Gradle distribution URL and adds wrapper network/validation settings.
.vscode/extensions.json Adds VS Code Lombok extension recommendation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 58 to +61
protected String readExpected(String path) {
InputStream stream = AbstractTestBase.class.getResourceAsStream(path);
Objects.requireNonNull(stream, path + " can't be read");
try {
return String.join("\n", IOUtils.readLines(stream, StandardCharsets.UTF_8)).trim();
} catch (IOException e) {
fail(e);
return null;
}
return String.join("\n", IOUtils.readLines(stream, StandardCharsets.UTF_8)).trim();
Comment thread gradlew.bat Outdated
Comment thread gradlew.bat
Comment thread README.md
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.7</version>
<version>1.5.34</version>
Comment thread README.md
dependencies {
implementation('io.obs-websocket.community:client:2.0.0')
implementation 'ch.qos.logback:logback-classic:1.1.7'
implementation 'ch.qos.logback:logback-classic:1.5.34'
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
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.

2 participants