-
Notifications
You must be signed in to change notification settings - Fork 87
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
prepare 9.2.1 release #319
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Parameterize CI against multiple Xcode versions. Pin to exact dependency versions and remove resolved package files.
Add spaces in comments for new comment spacing lint rule.
Merging public into private. --------- Co-authored-by: ld-repository-standards[bot] <113625520+ld-repository-standards[bot]@users.noreply.github.com> Co-authored-by: Kane Parkinson <[email protected]>
AutoEnvAttributes to main. --------- Co-authored-by: Matthew M. Keeler <[email protected]>
**Requirements** - [x] I have added test coverage for new or changed functionality - [x] I have followed the repository's [pull request submission guidelines](../blob/v6/CONTRIBUTING.md#submitting-pull-requests) - [x] I have validated my changes against all supported platform versions See comments on Shortcut ticket for validation of contexts on platforms. **Related issues** https://app.shortcut.com/launchdarkly/story/213033/ios-telemetry-ios-not-populating-ld-application-from-built-in-package-name-version **Describe the solution you've provided** Implemented missing code. **Describe alternatives you've considered** Code is duplicated and redundant, but each implementation may vary over time, so rather not over common-ize right now.
#252) Need to merge test harness changes before this will pass. **Requirements** - [x] I have added test coverage for new or changed functionality - [x] I have followed the repository's [pull request submission guidelines](../blob/v6/CONTRIBUTING.md#submitting-pull-requests) - [x] I have validated my changes against all supported platform versions **Related issues** https://app.shortcut.com/launchdarkly/story/213112/inconsistent-applicationname-and-applicationversionname-validation **Describe the solution you've provided** - Added sanitization logic to application info fields where spaces are now converted to hyphens. This is to help customers create values that will be accepted by our cloud infrasturcture. - Updated application info to support nullables. - Updated fallback logic to fallback to next source of application info if the applicationID is invalid. This invalid ID would be rejected by the cloud, so making that consistent. - Fixing bug in hashing to calulcate ld_application key where an omitted version would actually result in hash("myID:nil") when it should have been hash("myID:") **Describe alternatives you've considered** See: https://launchdarkly.atlassian.net/wiki/spaces/~63fb3c420d9b61193c23bde7/pages/2544828779/213112+-+Consistent+application+info+validation
## [8.3.0] - 2023-09-08 ### Changed: - Deprecated `LDValue.init(integerLiteral: Double)` as this method signature is misleading. A new `LDValue.init(integerLiteral: Int)` signature has been added for clarity. --------- Co-authored-by: Ben Woskow <[email protected]> Co-authored-by: torchhound <[email protected]> Co-authored-by: Gavin Whelan <[email protected]> Co-authored-by: Louis Chan <[email protected]> Co-authored-by: Louis Chan <[email protected]> Co-authored-by: Ember Stevens <[email protected]> Co-authored-by: Ember Stevens <[email protected]> Co-authored-by: Ryan Lamb <[email protected]> Co-authored-by: tanderson-ld <[email protected]> Co-authored-by: ld-repository-standards[bot] <113625520+ld-repository-standards[bot]@users.noreply.github.com> Co-authored-by: Kane Parkinson <[email protected]> Co-authored-by: Todd Anderson <[email protected]>
**Requirements** - [x] I have added test coverage for new or changed functionality - [x] I have followed the repository's [pull request submission guidelines](../blob/v6/CONTRIBUTING.md#submitting-pull-requests) - [x] I have validated my changes against all supported platform versions **Related issues** https://app.shortcut.com/launchdarkly/story/216351/ios-ld-application-key-is-not-base64-url-encoded **Describe the solution you've provided** Generalized util function to return Data since we already had a base64UrlEncoded extension method to leverage.
We have discussed and agreed to modify the logic to not include the version as the context key generation. We will release this as a bug fix to make sure customers don't stuck on a version with old logic available.
**Requirements** - [ ] I have added test coverage for new or changed functionality - [x] I have followed the repository's [pull request submission guidelines](../blob/v6/CONTRIBUTING.md#submitting-pull-requests) - [ ] I have validated my changes against all supported platform versions. I tested building and running tests with XCode12.5. Did not test all combinations of XCode and iOS, letting CI do its thing. **Related issues** #311 https://app.shortcut.com/launchdarkly/story/218049/swift-sdk-remove-support-for-ios-11-to-support-xcode-15 **Describe the solution you've provided** Update min iOS and tvOS to v12. Update swift tools from 5.2 to 5.3
When `identify` is called, the SDK loads any cached flags directly into the store. It then opens a new connection and tries to receive any flag updates. When that payload is received, it is compared to the data already in the store. If there are no differences, we don't trigger the listeners, even though the data definitely changed. To prevent this problem, we are always triggering a change notification when identify is call. Even if the values were identify for some reason, if the user changed, we should trigger the notification listeners.
If a customer calls `identify` with the same context multiple times in a row, the SDK should not bother re-establishing a new connection. Instead, we should just detect this situation and exit early.
## [8.3.1] - 2023-10-31 ### Changed: - Calling `identify()` with the current context is now more efficient and no longer results in re-establishing a connection. ### Fixed: - Fixed issue where flag change listeners were not being triggered when `identify()` was called. --------- Co-authored-by: Ben Woskow <[email protected]> Co-authored-by: torchhound <[email protected]> Co-authored-by: Gavin Whelan <[email protected]> Co-authored-by: Louis Chan <[email protected]> Co-authored-by: Matthew Keeler <[email protected]> Co-authored-by: Louis Chan <[email protected]> Co-authored-by: Ember Stevens <[email protected]> Co-authored-by: Ember Stevens <[email protected]> Co-authored-by: Ryan Lamb <[email protected]> Co-authored-by: ld-repository-standards[bot] <113625520+ld-repository-standards[bot]@users.noreply.github.com> Co-authored-by: Kane Parkinson <[email protected]>
keelerm84
approved these changes
Oct 31, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
[9.2.1] - 2023-10-31
Changed:
identify()
with the current context is now more efficient and no longer results in re-establishing a connection.Fixed:
identify()
was called.