Skip to content

Releases: Gml-Launcher/Gml.Web.Api

v1.0.3

31 Dec 13:08
2ecc468
Compare
Choose a tag to compare

Release Notes - Gml.Web.Api v1.0.3

📢 Gml.Web.Api v1.0.3 — Now Available!
This release introduces advanced player management APIs, enhanced profile handling, and improved error handling and security measures.


What’s New?

🎮 Player Management and Integration Enhancements

  • Player Management APIs:

    • Added endpoints for fetching player lists, managing whitelists, and retrieving user head textures.
    • Introduced data transfer objects to streamline player-related operations.
  • Player Whitelist Management:

    • Added POST and DELETE operations for whitelist management within profiles, allowing users to be securely added or removed.
    • Updated whitelist validation with precise UUID matching and case-insensitive comparisons.
  • Profile Enhancements:

    • Updated ProfileReadInfoDto to include a list of whitelisted users.
    • Enhanced filtering logic to ensure profiles respect IsEnabled status and whitelist settings.

🔒 Access Control and Authorization

  • Role-Based Security:

    • Enforced role-based authorization for API endpoints, primarily restricting access to admin users.
    • Updated profile retrieval logic to filter profiles based on user roles for added security.
  • Ban and Pardon Functionality:

    • Introduced endpoints to ban or pardon players.
    • Adjusted handlers and authentication logic to block banned users from accessing or performing unauthorized actions.

⚙️ API and Middleware Improvements

  • Enhanced Error Handling:

    • Added try-catch blocks in PluginMiddleware to capture and report exceptions, ensuring robust error handling.
  • Refined Endpoint Logic:

    • Updated whitelist endpoints to use route parameters (profileName and userUuid) for better specificity.
    • Ensured proper mapping of user data using IMapper for improved API response consistency.
  • Improved Data Precision:

    • Changed Real and Virtual properties in UnicoreAuthResult and Money in AzuriomAuthResult to decimal types for better precision in financial and resource calculations.

🛠️ Testing and Development Enhancements

  • Test Authentication Adjustments:

    • Updated TestAuthenticationHandler to include an "Admin" role claim for role-based scenario testing.
  • Middleware Enhancements:

    • Introduced graceful exception handling in middleware with proper error responses and bug tracking integration.

🔗 Submodule Updates

  • Updated Gml.Core and other submodule links to the latest versions for compatibility and feature alignment.

Upgrade now to leverage the powerful new capabilities and refinements! 🚀


🎉 A Huge Thanks to @PashkovD!

We want to express our gratitude to @PashkovD for their contribution in addressing a critical issue with skin URL handling. This fix resolves a long-standing problem that affected stability across various setups, improving the overall reliability of the system.

Your work has been instrumental in enhancing the experience for the entire community—thank you for your dedication and effort! 🚀

v1.0.2

05 Dec 03:05
dfff83a
Compare
Choose a tag to compare

Release Notes - v1.0.2

📢 Gml.Web.Api v1.0.2 — Now Available!

We’ve made significant improvements to authentication handling and security protocols.

What’s New?

🔐 Enhanced Authentication Feedback:

  • AzuriomAuthService Updates:
    • Added a specific error message for invalid credentials, improving error clarity and user feedback.
    • Now checks for failed status codes and "invalid_credentials" in the response content to provide precise client responses.

🔑 Access Token Validation:

  • Updated AuthIntegrationHandler to validate access tokens instead of passwords, aligning with updated security protocols.
  • Improved error handling for missing or invalid access tokens, ensuring better authorization feedback.

Upgrade now to benefit from these authentication improvements and enhanced security! 🚀

v1.0.1

29 Nov 05:28
a7696aa
Compare
Choose a tag to compare

Release Notes - v1.0.1

Fix folder white list

v1.0.0

28 Nov 11:05
939b67a
Compare
Choose a tag to compare

Release Notes v1.0.0

📢 The Long-Awaited Release of Gml Launcher v1.0.0!

We are excited to announce the release of the first stable version of our launcher — v1.0.0! This release marks an important milestone in our development, as it brings not only significant improvements but also new features and bug fixes, ensuring a smoother and more reliable user experience.

📅 Key Features of v1.0.0:

  • Full Stability: This version has undergone thorough testing and is now ready for error-free use.
  • Improved Performance: The launcher has been optimized for faster loading times and reduced resource consumption.
  • New Features: We’ve added support for additional settings and customization options for a more flexible user experience.
  • Bug Fixes: Issues from previous versions have been resolved, and compatibility with various systems has been improved.

📥 Download and Install

You can download the latest version of Gml Launcher from our official GitHub repository.

Stay with us to not miss future updates and improvements!


Thank you for your support! We’re confident that with Gml Launcher, your experience will be even smoother and more productive. 🚀

v0.1.0-rc2-hotfix6

17 Oct 00:20
3bd5ff8
Compare
Choose a tag to compare
v0.1.0-rc2-hotfix6 Pre-release
Pre-release

Release Notes - v0.1.0-rc2-hotfix6

v0.1.0-rc2-hotfix5

16 Oct 19:17
a6cc70f
Compare
Choose a tag to compare
v0.1.0-rc2-hotfix5 Pre-release
Pre-release

Release Notes - v0.1.0-rc2-hotfix5

v0.1.0-rc2-hotfix4

16 Oct 13:12
2bf85d7
Compare
Choose a tag to compare
v0.1.0-rc2-hotfix4 Pre-release
Pre-release

Release Notes - v0.1.0-rc2-hotfix4

v0.1.0-rc2-hotfix2

16 Oct 12:09
88172a3
Compare
Choose a tag to compare
v0.1.0-rc2-hotfix2 Pre-release
Pre-release

Release Notes - v0.1.0-rc2-hotfix2

Bug Fixes

  • Fix texture URLs to only set when GUIDs are not empty:
    Previously, texture URLs for skin and cape were always set regardless of whether their GUIDs were empty. This change ensures that texture URLs are set conditionally, only if the respective GUIDs are not null or empty, preventing potential issues with blank URLs.

v0.1.0-rc2-hotfix1

15 Oct 19:15
6086381
Compare
Choose a tag to compare
v0.1.0-rc2-hotfix1 Pre-release
Pre-release

Release Notes - v0.1.0-rc2-hotfix1

New Features

  • Endpoints for Fetching User Skins and Cloaks:
    Introduced new GET endpoints that allow retrieval of user skin and cloak textures. This enhancement improves user profile handling by integrating HttpContext for better metadata management and profile interaction.

  • Detailed Profile Information Endpoint:
    Added a new POST endpoint /api/v1/profiles/details that retrieves detailed game profile information. The endpoint includes input validation and requires authorization, providing structured responses with profile details.

Changes

  • Submodule Updates for Gml.Core:
    Updated the Gml.Core submodule link multiple times to ensure compatibility with new feature additions and bug fixes.

  • Texture Endpoint Configuration in GmlManager:
    Expanded the GmlManager configuration to include a new TextureEndpoint parameter, defaulting to "http://gml-web-skins:8085". This update enhances the flexibility of managing texture service endpoints, with additional support for spaces and dashes in profile names.

  • Removed Address and Port Properties from ServerReadDto:
    Refined the ServerReadDto model by removing the Address and Port properties, simplifying the object and aligning it with current application needs.

  • Updated URL in MinecraftHandler:
    Fixed the incorrect URL used for fetching cape textures by changing it from 'skins' to 'capes', ensuring proper resource access for user capes.

  • Environment Variable Additions:
    Introduced the SERVICE_TEXTURE_ENDPOINT environment variable for configuring texture service URLs in development and testing environments. Added this variable to launchSettings.json for seamless configuration during testing.

Bug Fixes

  • ProfileInfoTest Fixes:
    Re-enabled and updated assertions in the ProfileInfoTest unit test, ensuring that profile data is correctly deserialized and validated.

  • Adjusted Method Returns for Missing Environment Variables:
    Removed exception throwing for missing environment variables in test methods and replaced it with returning empty strings to handle missing configuration more gracefully.

Tests

  • Improved Unit Test Initialization and Console Information:
    Updated unit tests to include restored settings and enhanced test console output, ensuring clarity and better tracking during test execution.

v0.1.0-rc2

12 Oct 15:08
9bf84c1
Compare
Choose a tag to compare
v0.1.0-rc2 Pre-release
Pre-release

Release Notes - v0.1.0-rc2

New Features

  • GET Endpoints for User Skins and Cloaks:
    Added new GET endpoints to retrieve user skin and cloak textures. This update enhances texture management by providing an API for fetching user skins and cloaks directly, allowing for better customization and profile handling.

  • Detailed Profile Information Endpoint:
    Introduced a new POST endpoint /api/v1/profiles/details to retrieve detailed information about game profiles. This endpoint validates input data and returns structured profile details, requiring user authorization for access.

Changes

  • Texture Endpoint in GmlManager Configuration:
    Extended the GmlManager configuration to include a new texture endpoint, defaulting to http://gml-web-skins:8085. This change enables dynamic texture management and enhances environment variable handling to support profile names with spaces and dashes.

  • Environment Variable for Texture Endpoint:
    Added a new environment variable SERVICE_TEXTURE_ENDPOINT for testing purposes. Additionally, updated the test methods to adapt to this new endpoint, improving flexibility and test coverage.

Bug Fixes

  • Re-enabled Profile Assertions in Unit Tests:
    Previously disabled profile assertions in the unit tests were re-enabled and updated. These assertions ensure that profile data is properly deserialized and validated during testing, improving the robustness of the test suite.

  • Method Return Adjustment in Tests:
    Changed test methods to return empty strings instead of throwing exceptions when environment variables are missing. This prevents test failures and improves the reliability of the test setup.

Submodule Updates

  • Update Submodule Link for Gml.Core:
    Updated the submodule link for Gml.Core to ensure it points to the latest version, incorporating the latest changes and improvements from the core module.