Skip to content

[arp1it-minecraft-server-status] New port#51134

Merged
BillyONeal merged 52 commits into
microsoft:masterfrom
Arp1it:master
May 6, 2026
Merged

[arp1it-minecraft-server-status] New port#51134
BillyONeal merged 52 commits into
microsoft:masterfrom
Arp1it:master

Conversation

@Arp1it
Copy link
Copy Markdown
Contributor

@Arp1it Arp1it commented Apr 13, 2026

Add new port: minecraft-server-status

Adds a C++ library for fetching Minecraft server status (Java & Bedrock).

Features

  • Supports Java and Bedrock servers
  • Uses cpr and nlohmann-json
  • Provides CMake config support

Tested on

  • x64-windows

New port checklist

  • Changes comply with the maintainer guide.

  • The packaged project shows strong association with the chosen port name.

    • The project is in Repology
    • The project is amongst the first web search results for "minecraft-server-status C++".
    • The port name follows the 'Owner-Project' form
  • Optional dependencies are properly declared in vcpkg.json.

  • The versioning scheme matches upstream.

  • The license declaration matches upstream.

  • The installed copyright file matches upstream.

  • The source code comes from an authoritative source (GitHub).

  • The generated usage text is accurate.

  • The version database is updated using vcpkg x-add-version.

  • Exactly one version is added.

@Arp1it
Copy link
Copy Markdown
Contributor Author

Arp1it commented Apr 13, 2026

@microsoft-github-policy-service agree

@BillyONeal BillyONeal marked this pull request as draft April 14, 2026 01:23
@BillyONeal
Copy link
Copy Markdown
Member

Sorry I initially got this confused with another that didn't fill out the checklist. Please fix the build failures though, they appear legitimate.

  • The project is amongst the first web search results for "minecraft-server-status C++".

This seems wrong to me; this is why the current instructions ask for a screenshot to be posted. As far as I can see that points at https://github.com/mcstatus-io/* rather than https://github.com/Arp1it/Minecraft_Server_Status_CPP

@vicroms

This comment was marked as outdated.

@Arp1it
Copy link
Copy Markdown
Contributor Author

Arp1it commented Apr 17, 2026

Sorry I initially got this confused with another that didn't fill out the checklist. Please fix the build failures though, they appear legitimate.

  • The project is amongst the first web search results for "minecraft-server-status C++".

This seems wrong to me; this is why the current instructions ask for a screenshot to be posted. As far as I can see that points at https://github.com/mcstatus-io/* rather than https://github.com/Arp1it/Minecraft_Server_Status_CPP

Thanks for pointing that out.

You're right — my project is not the primary result for that name. I’ll update the port to follow the Owner-Project naming convention to avoid conflicts.

I’m currently fixing the CI/build issues first, and will update the naming accordingly once those are resolved.

@vicroms
Copy link
Copy Markdown
Member

vicroms commented Apr 21, 2026

AI review (summarized):


🔴 New Regression — All Triplets

minecraft-server-status[core] — Missing CMake Config Files

Status: ✗ Feature test failed across all 13 triplets

Root Cause:
The vcpkg_cmake_config_fixup() function in the portfile is called on a directory that does not exist after the build completes. The error occurs during the install/config fixup phase:

CMake Error at D:/installed/x64-windows/share/vcpkg-cmake-config/vcpkg_cmake_config_fixup.cmake:81 (message):
  'D:/p/minecraft-server-status_x64-windows/debug/share/minecraft-server-status'
  does not exist.
Call Stack (most recent call first):
  ports/minecraft-server-status/portfile.cmake:15 (vcpkg_cmake_config_fixup)

Issue Analysis:

  1. Build Type: Header-only or data-only port — The source code builds successfully but produces no CMake config files in share/minecraft-server-status/
  2. Configuration Error: The portfile incorrectly assumes CMake config files are installed, but the upstream project doesn't generate them
  3. Expected Behavior: Either:
    • The port should install CMake config files (if CMake support is required)
    • The vcpkg_cmake_config_fixup() call should be removed (if not applicable)
    • The call should be conditional (only if config files exist)

📋 Recommendations

  1. Inspect the upstream project: Verify whether minecraft-server-status is a CMake project that produces cmake/*.cmake config files, or if it's a header-only/data-only package.
  2. If CMake config files should be installed:
    • Ensure the upstream CMakeLists.txt includes an install() directive for cmake/ files
    • Or manually install config files in the portfile using file(INSTALL ...)
  3. If CMake config files are NOT needed:
    • Remove or conditionally skip the vcpkg_cmake_config_fixup() call
    • Example fix:
      if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Windows")
          vcpkg_cmake_config_fixup()
      endif()
  4. Test locally:
    • Run vcpkg install minecraft-server-status:x64-windows to reproduce the issue locally
    • Check the actual directory structure: ls /{VCPKG_INSTALLED_DIR}/x64-windows/share/minecraft-server-status/

@Arp1it
Copy link
Copy Markdown
Contributor Author

Arp1it commented May 3, 2026

Hi, I have addressed all requested changes:

  • Removed policy usage
  • Fixed versioning and baseline
  • Cleaned usage and formatting
  • Verified builds locally

@Arp1it Arp1it requested a review from BillyONeal May 3, 2026 07:24
Copy link
Copy Markdown
Member

@BillyONeal BillyONeal left a comment

Choose a reason for hiding this comment

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

Please see Arp1it#1

@BillyONeal BillyONeal marked this pull request as draft May 5, 2026 00:35
@BillyONeal BillyONeal marked this pull request as ready for review May 5, 2026 08:10
@BillyONeal BillyONeal changed the title Add new port: minecraft-server-status [arp1it-minecraft-server-status] New port May 5, 2026
Copy link
Copy Markdown
Member

@BillyONeal BillyONeal left a comment

Choose a reason for hiding this comment

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

Thanks for the new port!

@BillyONeal BillyONeal enabled auto-merge (squash) May 6, 2026 03:19
@BillyONeal BillyONeal merged commit 443dda0 into microsoft:master May 6, 2026
16 checks passed
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.

3 participants