Merged
Conversation
Co-authored-by: Project516 <138796702+Project516@users.noreply.github.com>
Co-authored-by: Project516 <138796702+Project516@users.noreply.github.com>
Add Fedora/RPM packaging support
…-monorepo Update dependency useJUnitJupiter to v6
There was a problem hiding this comment.
Pull request overview
This pull request upgrades the Java version requirement from Java 8 to Java 17 and adds comprehensive Fedora/RPM packaging support to expand distribution compatibility. The changes modernize the build infrastructure while maintaining existing functionality.
Key Changes:
- Java 17 migration across all packaging scripts, build configurations, and dependency definitions
- New RPM packaging infrastructure with build script, spec file, and GitHub Actions integration
- Documentation updates with Fedora/RPM installation instructions and corrected typos
Reviewed changes
Copilot reviewed 10 out of 11 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
package-win.sh |
Updated Adoptium JRE download URL to fetch Java 17 instead of Java 8 |
package-macos.sh |
Updated Adoptium JRE download URL to fetch Java 17 instead of Java 8 |
package-linux.sh |
Updated Adoptium JRE download URL to fetch Java 17 instead of Java 8 |
package-rpm.sh |
New script to automate RPM package building for Fedora/RHEL/CentOS distributions |
fedora-package/SPECS/numberguessinggame.spec |
RPM spec file defining package metadata, dependencies, installation, and changelog |
fedora-package/SOURCES/.gitignore |
Excludes build artifacts from version control while preserving directory structure |
debian-package/DEBIAN/control |
Updated Java dependency from Java 8 to default-jre for Java 17 compatibility |
app/build.gradle |
Updated Java toolchain to version 17, cleaned up comments, and updated JUnit version |
README.md |
Added Fedora/RPM installation instructions, fixed typo in .deb filename, updated Java requirement |
.gitignore |
Added RPM package pattern and corrected Linux archive extension |
.github/workflows/release.yml |
Integrated RPM build tools installation and RPM package generation into release workflow |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request adds support for Fedora/RPM-based distributions and updates the Java version requirement across the project from Java 8 to Java 17. It introduces a new RPM packaging workflow, updates documentation and build scripts accordingly, and ensures the application and its packages depend on Java 17 or newer.
Fedora/RPM Packaging Support:
package-rpm.shto automate building RPM packages for Fedora, RHEL, CentOS, and similar distributions. This script builds the JAR, prepares the RPM build environment, and creates the.rpmpackage.fedora-package/SPECS/numberguessinggame.specand supporting.gitignorefor build artifacts. The spec defines installation details, dependencies, and a wrapper script for launching the game. [1] [2].rpmfiles as release artifacts. [1] [2]Documentation Updates:
README.mdwith installation and uninstallation instructions for Fedora/RPM-based systems, including example commands and download links. [1] [2].debfilename.Java Version Upgrade:
README.md, build scripts (package-linux.sh,package-macos.sh,package-win.sh), and Gradle configuration. [1] [2] [3] [4] [5]Build and Dependency Management:
app/build.gradlefile, removing outdated comments and ensuring compatibility with the new Java version. [1] [2]These changes collectively improve cross-distribution support, modernize the codebase for Java 17, and streamline the packaging and release process.