Skip to content

Releases: heroiclabs/nakama

v3.24.2

22 Oct 12:04
Compare
Choose a tag to compare

Notable changes

Fixed

  • Correctly display MFA-related configuration in devconsole UI.
  • Correctly extract RPC function identifiers.

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

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

v3.24.1

21 Oct 22:21
Compare
Choose a tag to compare

Notable changes

Changed

  • Build with correct version of Protobuf dependency.

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

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

v3.24.0

21 Oct 21:51
Compare
Choose a tag to compare

Notable changes

Added

  • New runtime function to list user notifications.
  • Support for runtime registration of custom HTTP handlers.

Changed

  • Increased limit on runtimes group users list functions.
  • Added pagination support to storage index listing.
  • Update runtime Satori client for latest API changes.
  • Build with Go 1.23.2.

Fixed

  • Ensure matchmaker stats behave correctly if matchmaker becomes fully empty and idle.
  • Correctly clear rank cache entries on account deletion.
  • Only display owned purchases in the console account tab.
  • Correctly infer X-Forwarded-For headers on Satori Authenticate calls in JS/Lua runtimes.

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

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

v3.23.0

27 Jul 12:29
Compare
Choose a tag to compare

Notable changes

Added

  • Add devconsole view to list and search purchases across users.
  • Add devconsole view to list and search subscriptions across users.
  • Add function to get notifications by identifier to Go runtime.
  • Add function to get notifications by identifier to Lua runtime.
  • Add function to get notifications by identifier to TypeScript/JavaScript runtime.
  • Add function to delete notifications by identifier to Go runtime.
  • Add function to delete notifications by identifier to Lua runtime.
  • Add function to delete notifications by identifier to TypeScript/JavaScript runtime.
  • Add runtime function to disable ranks for an active leaderboard.
  • Add new matchmaker stats API.
  • Add support for specifying session vars in devconsole API explorer calls.

Changed

  • Add leaderboard create function parameter to enable or disable ranks.
  • Add tournament create function parameter to enable or disable ranks.
  • Obfuscate further fields when viewing server configuration in the devconsole.
  • Build with Go 1.22.5.

Fixed

  • Correctly wire Go runtime shutdown function context.
  • Fix friends of friends API error when user has no friends.
  • Fix group listing pagination if name filter is used.
  • Correctly register friends of friends API before/after hooks.

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

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

v3.22.0

09 Jun 15:10
Compare
Choose a tag to compare

Notable changes

Added

  • Add runtime support for registering a shutdown hook function.
  • Add support to custom sorting in storage index search.
  • New config option to enforce a single party per user socket.
  • New config option to enforce a single valid session token per user.
  • New friends of friends listing API and runtime functions.

Changed

  • When a user is blocked, any DM streams between the blocker and blocked user are torn down.
  • Add confirm dialog to devconsole delete operations.
  • Reduce Console Storage View memory usage.
  • Upgraded pgx to v5.
  • Attempt to import Facebook friends on Limited Login authentication.
  • Build with Go 1.22.4.
  • Improve devconsole login page experience.
  • Return Lua VM instance to the pool only after any error processing is complete.
  • Better cancellation of long running queries in devconsole operations.

Fixed

  • Ensure Apple receipts with duplicate transaction identifiers are processed cleanly.
  • Fix leaderboard rank cache initialization upon startup.
  • Fix log message incorrectly referencing "userID" instead of "senderID".
  • Fix Lua runtime calls to string metatable functions.
  • Correctly handle Steam API rejections on friend listing operations.
  • Ensure Google auth token errors are handled gracefully.

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

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

v3.21.1

22 Mar 08:31
Compare
Choose a tag to compare

Notable changes

Added

  • Add ability to easily run unit and integration tests in an isolated docker-compose environment.

Changed

  • More efficient initial loading of storage index contents.

Fixed

  • Fix issue with Fleet Manager access causing an unexpected error.

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

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

v3.21.0

17 Mar 18:14
Compare
Choose a tag to compare

Notable changes

Added

  • Add Fleet Manager API to power session-based multiplayer adapters. See the documentation for more details.
  • Add CRON next and previous functions to Go runtime.
  • Add CRON previous function to Lua runtime.
  • Add CRON previous function to TypeScript/JavaScript runtime.
  • Add support for storage deletes in runtime multi-update functions.

Changed

  • Reduce number of memory allocations in leaderboard cache.
  • Fix leaderboard rank cache inconsistencies/race that could arise under heavy load.
  • List leaderboard records can now return up to 1,000 records per request.
  • Simplify query planning for storage object read operations.
  • Improve comparison operation for leaderboard rank cache ordering.
  • Extend extraction of purchase data from Apple IAP receipts.

Fixed

  • Prevent players from requesting duplicate joins to the same party.
  • Prevent players from requesting joins to parties they are already members of.
  • Ensure runtime user deletion function rejects the system user.

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

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

v3.20.1

03 Feb 06:07
Compare
Choose a tag to compare

Notable changes

Changed

  • Improve handling of messages being sent while session is closing.
  • Build with Go 1.21.6.

Fixed

  • Skip Google refund handling for deleted users.
  • Fix storage engine version check regression.
  • Fix JavaScript runtime tournament records list owner identifier parameter handling.
  • Fix regression in tournament end active time calculation when it coincides with reset schedule.
  • Better handling of concurrent wallet update operations for the same user.

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

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

v3.20.0

15 Dec 21:15
Compare
Choose a tag to compare

Notable changes

Changed

  • JavaScript runtime localcachePut now only accepts primitive types, other values will throw an error.
  • Storage search index list max limit increased from 100 to 10,000 results.
  • Upgrade GRPC-Gateway, Tally, Zap, crypto, oauth2, GRPC, and related dependencies.
  • Build with Go 1.21.5.

Fixed

  • Fix pointer slices assertions in JavaScript runtime Nakama module function arguments.
  • Fix caller ID parameter index in Lua runtime storage_list function.
  • Fix incorrect GOARCH flag in Dockerfiles for arm64.

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

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

v3.19.0

11 Nov 23:00
Compare
Choose a tag to compare

Notable changes

Added

  • Add IAP purchase validation support for Facebook Instant Games.
  • Add Lua runtime function to clear all localcache data.
  • Add JavaScript runtime function to clear all localcache data.
  • Add support for per-key TTL in Lua runtime localcache.
  • Add support for per-key TTL in JavaScript runtime localcache.
  • Add support for optional client IP address passthrough to runtime Satori client.

Changed

  • Remove unused config 'matchmaker.batch_pool_size'.
  • RPC now allows omitting the unwrap parameter for requests with empty payloads.
  • Upgrade GRPC dependency.
  • Writing tournament scores now updates number of scores even if submitted score is not an improvement.
  • Move internal queries with variable number of args to a fixed number of args syntax.
  • Better handling of num_score and max_num_score in tournament score updates.
  • Remove unnecessary curl, git, unzip, rsync, and schroot tools from Docker images.
  • Build with Go 1.21.4 and use Debian bookworm-slim for base docker images.

Fixed

  • Correctly handle empty email field when authenticating via Apple Sign In.
  • Fix issue where rank cache may store duplicate ranks for some score inputs.
  • Fix issue related to accepting party members.
  • Fix HTTP request timeout usage in JavaScript runtime.

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

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