Skip to content

feat(Checkpoints): Cache subscriber dimensions and evaluate rules against them - #7553

Draft
rickvdl wants to merge 10 commits into
rickvdl/customer-info-rule-properties-v0from
rickvdl/subscriber-dimensions
Draft

feat(Checkpoints): Cache subscriber dimensions and evaluate rules against them#7553
rickvdl wants to merge 10 commits into
rickvdl/customer-info-rule-properties-v0from
rickvdl/subscriber-dimensions

Conversation

@rickvdl

@rickvdl rickvdl commented Aug 31, 2026

Copy link
Copy Markdown
Member

Description

When storing the updated CustomerInfo we'll now separately cache the dimensions received. This is an object containing customer dimension values that will be passed to the rules engine as variables.

Related Android PR: RevenueCat/purchases-android#4133

@rickvdl rickvdl changed the title rickvdl/subscriber dimensions feat(Checkpoints): Cache subscriber dimensions and evaluate rules against them Aug 31, 2026
@emerge-tools

emerge-tools Bot commented Aug 31, 2026

Copy link
Copy Markdown

4 builds increased size

Name Version Download Change Install Change Approval
RevenueCat
com.revenuecat.PaywallsTester
1.0 (1) 20.3 MB ⬆️ 42.2 kB (0.21%) 73.9 MB ⬆️ 168.9 kB (0.23%) N/A
BinarySizeTest
com.revenuecat.binary-size-test.local-source
1.0 (1) 4.9 MB ⬆️ 27.6 kB (0.56%) 14.5 MB ⬆️ 65.1 kB (0.45%) ⏳ Needs approval
BinarySizeTest
com.revenuecat.binary-size-test.cocoapods
1.0 (1) 7.3 MB ⬆️ 28.7 kB (0.4%) 31.7 MB ⬆️ 106.8 kB (0.34%) ⏳ Needs approval
BinarySizeTest
com.revenuecat.binary-size-test.spm
1.0 (1) 4.9 MB ⬆️ 26.3 kB (0.54%) 12.6 MB ⬆️ 60.9 kB (0.49%) ⏳ Needs approval

RevenueCat 1.0 (1)
com.revenuecat.PaywallsTester

⚖️ Compare build
⏱️ Analyze build performance

Total install size change: ⬆️ 168.9 kB (0.23%)
Total download size change: ⬆️ 42.2 kB (0.21%)

Largest size changes

Item Install Size Change
DYLD.String Table ⬆️ 65.2 kB
Code Signature ⬆️ 4.4 kB
RevenueCat.CustomerInfoManager.CustomerInfoManager ⬆️ 2.9 kB
DYLD.Exports ⬆️ 1.6 kB
Strings.Unmapped ⬆️ 1.6 kB
View Treemap

Image of diff

BinarySizeTest 1.0 (1)
com.revenuecat.binary-size-test.local-source

⚖️ Compare build
📦 Install build
⏱️ Analyze build performance

Total install size change: ⬆️ 65.1 kB (0.45%)
Total download size change: ⬆️ 27.6 kB (0.56%)

Largest size changes

Item Install Size Change
📝 RevenueCat.CustomerInfoDimensionProvider.values(for,at) ⬆️ 7.2 kB
📝 RevenueCat.CustomerInfoDimensionProvider.entitlements(from) ⬆️ 6.1 kB
📝 RevenueCat.CustomerInfoDimensionProvider.purchases(from,at) ⬆️ 3.3 kB
Swift.Sequence.reduce(into) ⬆️ 3.2 kB
Swift.UnsafeMutableBufferPointer._stableSortImpl(by) ⬆️ 3.0 kB
View Treemap

Image of diff

BinarySizeTest 1.0 (1)
com.revenuecat.binary-size-test.cocoapods

⚖️ Compare build
📦 Install build
⏱️ Analyze build performance

Total install size change: ⬆️ 106.8 kB (0.34%)
Total download size change: ⬆️ 28.7 kB (0.4%)

Largest size changes

Item Install Size Change
DYLD.String Table ⬆️ 32.8 kB
📝 RevenueCat.CustomerInfoDimensionProvider.values(for,at) ⬆️ 7.2 kB
📝 RevenueCat.CustomerInfoDimensionProvider.entitlements(from) ⬆️ 6.1 kB
📝 RevenueCat.CustomerInfoDimensionProvider.purchases(from,at) ⬆️ 4.3 kB
Swift.Sequence.reduce(into) ⬆️ 3.6 kB
View Treemap

Image of diff

BinarySizeTest 1.0 (1)
com.revenuecat.binary-size-test.spm

⚖️ Compare build
📦 Install build
⏱️ Analyze build performance

Total install size change: ⬆️ 60.9 kB (0.49%)
Total download size change: ⬆️ 26.3 kB (0.54%)

Largest size changes

Item Install Size Change
📝 RevenueCat.CustomerInfoDimensionProvider.values(for,at) ⬆️ 7.2 kB
📝 RevenueCat.CustomerInfoDimensionProvider.entitlements(from) ⬆️ 6.1 kB
📝 RevenueCat.CustomerInfoDimensionProvider.purchases(from,at) ⬆️ 3.3 kB
Swift.Sequence.reduce(into) ⬆️ 3.2 kB
Swift.UnsafeMutableBufferPointer._stableSortImpl(by) ⬆️ 3.0 kB
View Treemap

Image of diff


🛸 Powered by Emerge Tools

Comment trigger: Size diff threshold of 100.00kB exceeded

Comment thread Sources/Identity/CustomerInfoManager.swift
@rickvdl
rickvdl force-pushed the rickvdl/subscriber-dimensions branch from 50cc600 to d833fc2 Compare September 1, 2026 12:45
@rickvdl
rickvdl force-pushed the rickvdl/subscriber-dimensions branch 2 times, most recently from 9f867b9 to 57033ef Compare September 1, 2026 14:31

@ajpallares ajpallares left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Just some minor nits

Comment thread Sources/Identity/CustomerInfoManager.swift
Comment thread Sources/LocalRules/SubscriberDimensionsProvider.swift
@rickvdl
rickvdl force-pushed the rickvdl/subscriber-dimensions branch from b243613 to b16e4b4 Compare September 2, 2026 13:06
@rickvdl

rickvdl commented Sep 2, 2026

Copy link
Copy Markdown
Member Author

@RCGitBot please test

@rickvdl

rickvdl commented Sep 2, 2026

Copy link
Copy Markdown
Member Author

@RCGitBot please test

@rickvdl

rickvdl commented Sep 3, 2026

Copy link
Copy Markdown
Member Author

@RCGitBot please test

@rickvdl

rickvdl commented Sep 3, 2026

Copy link
Copy Markdown
Member Author

@RCGitBot please test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants