Skip to content

fix: remove stale WireUtilitiesPackage and WireFoundationSupport dependencies#4574

Open
netbe wants to merge 1 commit intodevelopfrom
fix/duplicate-objc-class-warnings
Open

fix: remove stale WireUtilitiesPackage and WireFoundationSupport dependencies#4574
netbe wants to merge 1 commit intodevelopfrom
fix/duplicate-objc-class-warnings

Conversation

@netbe
Copy link
Copy Markdown
Collaborator

@netbe netbe commented Apr 15, 2026

Issue

WireUtilitiesPackage was linked in WireDomain.xcodeproj's Frameworks build phase even though nothing in WireDomain uses it. This statically embedded ZIPFoundation symbols into WireDomain.framework, duplicating symbols already present in WireSystem.framework.

WireFoundationSupport was declared as a dependency of WireDomainPackageTests in Package.swift but is not imported in any test file. Being a static library that re-embeds WireFoundation symbols, it caused BackoffRetrier, LeadingTrailingDebouncer, and BundleFinder to appear in both WireFoundation_PackageProduct.framework and the test bundle at runtime.

Both duplicates are now detected and fail CI via scripts/check_duplicate_classes.sh.

Testing

Run the WireDomain tests and verify the CI check_duplicate_classes.sh step reports no duplicates.


Checklist

  • Title contains a reference JIRA issue number like [WPB-XXX].
  • Description is filled and free of optional paragraphs.
  • Adds/updates automated tests.

UI accessibility checklist

If your PR includes UI changes, please utilize this checklist:

  • Make sure you use the API for UI elements that support large fonts.
  • All colors are taken from WireDesign.ColorTheme or constructed using WireDesign.BaseColorPalette.
  • New UI elements have Accessibility strings for VoiceOver.

…ndencies

WireUtilitiesPackage was linked in WireDomain.xcodeproj's Frameworks
build phase even though nothing in WireDomain uses it. This caused
ZIPFoundation symbols to be statically compiled into WireDomain.framework,
duplicating symbols already present in WireSystem.framework.

WireFoundationSupport was declared as a dependency of WireDomainPackageTests
but is not imported in any test file. Because it is a static library that
re-embeds WireFoundation symbols, it caused BackoffRetrier, LeadingTrailingDebouncer
and BundleFinder to appear in both WireFoundation_PackageProduct.framework
and the test bundle, triggering the duplicate-class check introduced in
scripts/check_duplicate_classes.sh.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@sonarqubecloud
Copy link
Copy Markdown

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 15, 2026

Test Results

0 tests   0 ✅  0s ⏱️
0 suites  0 💤
0 files    0 ❌

Results for commit fc06527.

Summary: workflow run #24476263729
Allure report (download zip): html-report-29299-fix_duplicate-objc-class-warnings

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.

1 participant