Pragma Engine 0.0.49

January 4th, 2022

  • Updated Inventory content validation flow in preparation for upcoming content system changes.
  • Renamed player group property to be consistent with other calls.
  • Improved variable visibility for PragmaException messages.
  • Required integrations:
    • Unit tests must be updated from runBlockingTest to runTest.
    • Calls to content getters will need to be updated to Kotlin property names.

Features #

  • Updated Inventory content validation flow in preparation for upcoming content system changes.
    • Description: Inventory content is now validated and loaded on Inventory service startup, instead of on content request. Pragma engine will fail to start if there are any errors related to JSON, proto, or custom validation in shared content files.
  • Renamed player group property to be consistent with other calls.
    • Description: CreatePlayerGroupOperatorV1Response uses group instead of player_group as the property.
    • Postman Path:
      • Social → RPC Operator → Account → CreatePlayerGroupOperatorV1
    • Improved variable visibility for PragmaException messages.
      • Description: Added ' around variables to improve PragmaException messages.

Integration Steps #

  • Unit tests must be updated from runBlockingTest to runTest.
    • Description: Kotlin and Kotlin coroutine versions have been updated, causing deprecation warnings for tests using runBlockingTest.
    • Integration steps:
      • Change any instances of runBlockingTest to runTest.
  • Calls to content getters will need to be updated to Kotlin property names.
    • Description: References to content getter methods have been replaced with Kotlin properties.
    • Integration steps:
      • Calls to content getters in InventoryServiceContent will need to be updated to property names. Full table below.
        OriginalReplacement
        getStackableItemSpecs()stackableItemSpecs
        getInstancedItemSpecs()instancedItemSpecs
        getCatalogUpdateEntries()catalogUpdateEntries
        getStores()stores
        getRewards()rewards
        getRewardsTables()rewardsTables
        getRewardSlots()rewardSlots
        getRewardBags()rewardBags
        getCraftingEntries()craftingEntries

Deprecations #

The following endpoints have been changed:

OriginalReplacement
authenticateOrCreateV1authenticateOrCreateV2
AccountService.getPragmaPlayerIdsForProviderIdsV1AccountService.getPragmaPlayerIdsForProviderIdsV2
InventoryServiceContent getter methods have been updatedSee integration notes above