Skip to content

Releases: heroiclabs/nakama

v3.41.0

Choose a tag to compare

@zyro zyro released this 18 Sep 19:51
cab8af5

Notable changes

Added

  • Add Console UI to list and query registered Storage Search indices.
  • Add support for namespaced multi fleet manager registration.
  • Expose websocket connection upgrade http headers to session context.
  • Add Authenticate module function to authenticate through a registered provider from Go, Lua and JavaScript runtime code. Provider identities are stored in the expanded user_device table.
  • Add RegisterBeforeAuthenticate and RegisterAfterAuthenticate hooks.
  • Add RegisterBeforeLink and RegisterAfterLink hooks.
  • Add RegisterBeforeUnlink and RegisterAfterUnlink hooks.
  • Add provider-agnostic authentication: register named authentication providers from the Go runtime, then authenticate, link and unlink those identities through the new Authenticate, Link and Unlink APIs, the matching Go, Lua and JavaScript module functions, and their before/after hooks. Identities are stored in the expanded user_device table and listed on the account.
  • Add console support for provider identities: search accounts by one, and unlink one from an account.
  • Build with Go 1.27.1.

Changed

  • Storage write version rejections now return GRPC error code 9 FAILED_PRECONDITION instead of 3 INVALID_ARGUMENT. HTTP response code mapping remains the same.

Fixed

  • Ensure linking a Google ID to an account does not overwrite any existing email.
  • Ensure correct token ID field is used for validating sessions on socket connection.
  • Return well-formed WWW-Authenticate header on HTTP 401 Unauthorized responses.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.48.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.48.0"

v3.40.0

Choose a tag to compare

@sesposito sesposito released this 13 Jul 21:12
d4d92f9

Notable changes

Added

  • Add Samsung Galaxy Store purchase validation request type and SAMSUNG_GALAXY_STORE store provider enum.
  • Add Samsung IAP runtime hooks and PurchaseValidateSamsung module function.
  • Add IAPSamsungConfig to runtime GetConfig() IAP section.
  • Improve logic in Apple JWS receipts validation.
  • Add console.disable_display_name_search config option to disable console account search by display name entirely.

Fixed

  • Fix an issue where group admin account deletion could leave orphaned group edges.
  • Fix In-App Purchase validation persist parameter handling for Apple JWS receipts.
  • Fix race conditions in leaderboard/tournament scheduler which could prevent hooks from triggering under certain conditions.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.47.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.47.0"

v3.39.0

Choose a tag to compare

@sesposito sesposito released this 20 May 15:20
721a5d3

Notable changes

Added

  • Add new runtime function to update storage objects with retries.

Changed

  • Update Satori client to match latest API spec.
  • Add configurable retries to the Satori client.

Fixed

  • Ignore negative custom runtime counter deltas to avoid panics during metrics collection.
  • Set account empty fields to null appropriately on console account import.
  • Correctly cancel context after matchmaker matched function completes.
  • Fix X-Forwarded-For header handling regression.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.46.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.46.0"

v3.38.0

Choose a tag to compare

@zyro zyro released this 20 Mar 15:10
74d7012

Notable changes

Added

  • Add runtime Satori client feature to delete identities.
  • Add device identifiers as lookup options for runtime account get operations.
  • Add Go runtime function to import an account export snapshot.
  • Add TypeScript/JavaScript runtime function to import an account export snapshot.
  • Add Lua runtime function to import an account export snapshot.
  • Better searching by account display name in the Console UI.

Changed

  • Better logic for determining client IP addresses from incoming requests.
  • Limit the number of custom metric scopes to prevent adding user identifiers as tags.

Fixed

  • Correct field usage in voided Google In-App Purchase subscription notifications.
  • Fix an issue where the Storage Index would keep entries which should have been filtered.
  • Fix an issue that could prevent leaderboard/tournament end/reset hooks from firing.
  • Avoid logging unnecessary context cancellation errors on storage operations.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.45.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.45.0"

v3.37.0

Choose a tag to compare

@zyro zyro released this 12 Feb 19:48
1276f1c

Notable changes

Added

  • Support Apple JWS receipts in In-App Purchase validation APIs.
  • Expose new Prometheus RPC metrics with label per gRPC status.

Fixed

  • Fix permission check on Console Group AddMembers operation.
  • Fix Lua runtime random generator seeding.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.44.2 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.44.2"

v3.36.0

Choose a tag to compare

@zyro zyro released this 13 Jan 16:08
61b08dc

Notable changes

Changed

  • Improvements to Console user setup and management.
  • Option for faster cleanup of parties that are idle and empty.
  • Build with Go 1.25.5.

Fixed

  • Ensure party leader username is recorded on party creation.
  • Ensure ended matches are removed from the Console UI list more quickly.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.44.1 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.44.1"

v3.35.1

Choose a tag to compare

@zyro zyro released this 03 Dec 18:36
c76c942

Notable changes

Fixed

  • Correctly wire context propagation in Session Start/End runtime event hooks.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.44.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.44.0"

v3.35.0

Choose a tag to compare

@zyro zyro released this 02 Dec 18:01
c03f394

Notable changes

Added

  • New runtime Satori client options for time-based caching.
  • Additional information for transactions in console UI details side panel.
  • Console API status endpoint now returns number of active Parties per node.
  • Console UI status view now displays number of active Parties per node and total.
  • Console API status endpoint now returns the startup time when each node was created.
  • Console UI status view now displays time since each node was started.

Changed

  • Adjust unit of measure for Satori client timeout.
  • Nakama will not start if attempting to register custom HTTP handlers without a '/' prefix in the path pattern.
  • Nakama will not start if attempting to register custom console HTTP handlers without a '/' prefix in the path pattern.
  • Add runtime Satori client additional filters for live-events listing.
  • Add runtime Satori client live-event join function.
  • Configurable timeout for server initiated socket disconnects graceful close wait period.
  • Fix an issue in the console ACL database schema migration that would prevent it from being applied in CockroachDB.
  • Better display for long transaction identifiers in console UI.

Fixed

  • Fix migration script to correctly revert console fine-grained access control changes.
  • Avoid unnecessary cache check in runtime Satori client Properties lookup.
  • Fix an issue that would prevent the console data reset operation from completing successfully.
  • Fix an issue with Apple In-App Purchase notification handling that would prevent the notification from being processed.
  • Fix an issue with Google In-App Purchase notification handling that would prevent refund/voided types from being processed.
  • Fix incorrect error message in the console UI when storage import operations actually succeed.
  • Fix incorrect display of ascending/descending leaderboard indicator in console UI.
  • Fix incorrect display of pagination indicators for filtered storage lookups in console UI.
  • Fix issue where disabling tournament ranks might not use the correct timezone for lookups.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.44.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.44.0"

v3.34.1

Choose a tag to compare

@zyro zyro released this 12 Nov 14:30
6063116

Notable changes

Added

  • Add trace identifier to RPC function contexts.
  • Add runtime Satori client feature to send direct messages.
  • Add runtime Satori client option to fetch messages by a set of identifiers.
  • New TypeScript/JavaScript runtime function to generate secure random bytes.
  • New Lua runtime function to generate secure random bytes.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.43.1 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.43.1"

v3.34.0

Choose a tag to compare

@zyro zyro released this 09 Nov 16:05
234b925

Notable changes

Added

  • New Go runtime initializer function to register raw console HTTP handlers.

Changed

  • Satori client functions now allow filtering by both names and labels.

Fixed

  • Use correct leaderboard ranks disable hook in the Go runtime.
  • Release database connections faster in notification deletion operations.
  • Release database connections faster when listing console users.
  • Release database connections faster when disabling ranks for leaderboards or tournaments.

NOTE: For developers who use the Go server runtime support. The nakama-common package at v1.43.0 must be used with this release.

env GO111MODULE=on go get "github.com/heroiclabs/nakama-common/runtime@v1.43.0"