Skip to content

Conversation

@abelonogov-ld
Copy link
Contributor

@abelonogov-ld abelonogov-ld commented Jan 20, 2026

Requirements

Minus 1 external dependency to remove future version conflicts.
Address issue of version conflict in #449

  • I have added test coverage for new or changed functionality
  • I have followed the repository's pull request submission guidelines
  • I have validated my changes against all supported platform versions

Related issues

Provide links to any issues in this repository or elsewhere relating to this pull request.

Describe the solution you've provided

Provide a clear and concise description of what you expect to happen.

Describe alternatives you've considered

Provide a clear and concise description of any alternative solutions or features you've considered.

Additional context

Add any other context about the pull request here.


Note

Removes the external DataCompression dependency by inlining its functionality and switching the SDK to use a local compression implementation.

  • Deletes DataCompression from Package.swift and LaunchDarkly.podspec
  • Adds LaunchDarkly/Extensions/Data+Compression.swift providing gzip/gunzip, zip/unzip, deflate/inflate, and CRC/Adler32 helpers; exposes Data.ld_gzip() for call sites
  • Updates DarklyService to use ld_gzip() when enableCompression is on
  • Adds CompressionTest covering gzip roundtrips, checksum validation, and large/random data cases

Written by Cursor Bugbot for commit df39bef. This will update automatically on new commits. Configure here.

@abelonogov-ld abelonogov-ld requested a review from a team as a code owner January 20, 2026 21:52
@abelonogov-ld abelonogov-ld changed the base branch from v10 to v11 January 20, 2026 21:53
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.


let wrong_crc = Data(bytes: [0xcafeabee], count: 1)
let range = (zipped_blob.count - 8)..<(zipped_blob.count - 4)
zipped_blob.replaceSubrange(range, with: wrong_crc)
Copy link

Choose a reason for hiding this comment

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

Test corrupts gzip structure instead of checksum fields

Low Severity

The tests testGzipCrcFail and testGzipISizeFail claim to validate CRC32 and ISIZE checksum rejection, but Data(bytes: [0xcafeabee], count: 1) creates only 1 byte of data (due to count: 1). When replaceSubrange replaces a 4-byte range with 1 byte, the gzip data becomes 3 bytes shorter, corrupting the entire structure rather than just the checksum field. The tests pass but don't actually verify the intended validation logic.

Additional Locations (1)

Fix in Cursor Fix in Web

@abelonogov-ld abelonogov-ld merged commit 860674b into v11 Jan 21, 2026
5 checks passed
@abelonogov-ld abelonogov-ld deleted the andrey/remove-datacompression branch January 21, 2026 23:35
abelonogov-ld pushed a commit that referenced this pull request Jan 22, 2026
🤖 I have created a release *beep* *boop*
---


##
[11.1.0](11.0.0...11.1.0)
(2026-01-21)


### Features

* Move datacompression dependency into local file
([#469](#469))
([860674b](860674b))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Release 11.1.0**
> 
> - *Feature*: Move `datacompression` dependency into a local file (see
CHANGELOG)
> - Bump versions to `11.1.0` across `podspec`, Xcode project settings
(`MARKETING_VERSION`, `DYLIB_CURRENT_VERSION`),
`ReportingConsts.sdkVersion`, `.release-please-manifest.json`, and
README dependency snippets
> - Update `CHANGELOG.md` with 11.1.0 notes
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
4375a28. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: LaunchDarklyReleaseBot <LaunchDarklyReleaseBot@launchdarkly.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants