May 10th, 2022
Features #
Cross-content validation for Inventory service content available.
- Description: Inventory service Content now has additional validation across content types, which is performed during the
ContentData
apply
command.
For example, a
StoreEntry
might reference other content byCatalogId
via itsreceivedQuantityByCatalogId
orcostByCatalogId
fields. TheseCatalogIds
are now checked duringContentData
apply
to ensure that they refer to valid inventory entries.This validation can be added to your own custom content by implementing the
ContentData<*>.validateWithAllContent(contentByType: mapOf<String, ContentData<*>>)
function on theContentHandler
.Note that this initial rollout of cross-content validation does not validate anything nested under an
ext
message.- Description: Inventory service Content now has additional validation across content types, which is performed during the
Upgraded Portal now live!
- Description: The Portal has been upgraded to be faster and more modular. It can be found at
platform/web/portal
. If you don’t have custom modules, the Portal is backwards compatible, and can still be found atplatform/web/portal-base
.
View the
README_PORTAL.md
file inplatform/web
for more information about the new Portal.- Related note: Integration may be required. View the related integration note below.
- Description: The Portal has been upgraded to be faster and more modular. It can be found at
Integrations #
- Update Portal build directory and update custom modules if necessary.
- Description: The new Portal is now available at
platform/web/portal
. If you don’t have custom modules, the Portal is backwards compatible, and can still be found atplatform/web/portal-base
. If you do have custom modules, you’ll need to follow the integration steps. - Integration steps:
- You may need to update the build directory if you have a custom build step.
- Custom Portal modules may need to be individually integrated. Contact us if you have custom Portal development and have not yet received help with integration.
- Related note: see feature announcement for more information on the new Portal.
- Description: The new Portal is now available at
- Update the
ContentDataProxy
class primary constructor if necessary.- Description: The
kClass
param has been removed from theContentDataProxy
class’s primary constructor. - Integration steps:
- If you are using this class with custom content, you will need to remove the
kClass
param as shown below. No action is required otherwise.
- If you are using this class with custom content, you will need to remove the
- Description: The
Original | Replacement |
---|---|
|
|
- Rename
InMemSocialIT.yml
andInMemGameIT.yml
.- Description: Certain files have been renamed due to the removal of the in-memory database driver.
- Integration steps:
- The
Makefile
has been updated to copyInMemSocialIT.yml
andInMemGameIT.yml
over. If you are using a customMakefile
, please update it. - Merge the contents of your existing
InMemSocialIT.yml
andInMemGameIT.yml
files into the new files.
- The
Original | Replacement |
---|---|
ext/src/test/resources/localDevelopmentShardConfig/InMemSocialIT.yml | ext/src/test/resources/localDevelopmentShardConfig/SocialIT.yml |
ext/src/test/resources/localDevelopmentShardConfig/InMemGameIT.yml | ext/src/test/resources/localDevelopmentShardConfig/GameIT.yml |
- Use
PragmaJwtSigner
instead ofTokenUtils::createPragmaJWT
.- Description:
TokenUtils::createPragmaJWT
has been replaced byPragmaJwtSigner
. - Integration steps:
- Use
PragmaJwtSigner
instead ofTokenUtils::createPragmaJWT
.
- Use
- Description:
Original | Replacement |
---|---|
TokenUtils::createPragmaJWT | PragmaJwtSigner |
- Update the
Makefile
to reflect changes to the relevantgen-sdk-types-<ENGINE>
targets.- Description: The SDK type generation targets have been fixed to also build Pragma protos.
- Integration steps:
- If you have your own copy of the
Makefile
, ensure that the relevantgen-sdk-types-<ENGINE>
also depends on theprotos
step.
- If you have your own copy of the
Original | Replacement |
---|---|
gen-sdk-types-unreal4: ext-protos | gen-sdk-types-unreal4: protos ext-protos |
Bugs and Fixes #
- Pragma Platform console output during startup has been cleaned up.
- Description:
PragmaNode
config output during startup was previously too verbose, making it difficult to see the most relevant information. However, if thePragmaNode
fails to start and the entire config object has been loaded, it will be printed out to assist with troubleshooting.- The config can be viewed via the
SystemReporterNodeServicePB.GetConfigV1Request
RPC.
- Description:
- Portal display name searches now handle the underscore
_
and percent%
characters properly. - Fixed
BackgroundableTicker
warnings and strict Include-What-You-Use (IWYU) compilation in Unreal 5.
Docs #
- [Updated Getting Started Guide] Details added to Understanding Pragma Engine.
- [Updated Getting Started Guide] Initial Setup guide rewritten.