Opened on 09/05/2017 at 04:38:59 AM
Closed on 09/19/2017 at 07:17:49 AM
#5619 closed change (fixed)
Provide Carthage support for YAJL 2
Reported by: | dzhang | Assignee: | dzhang |
---|---|---|---|
Priority: | Unknown | Milestone: | Adblock-Plus-for-iOS-next |
Module: | Adblock-Plus-for-iOS/macOS | Keywords: | |
Cc: | mario, tiago, ashephard, CraftyDeano | Blocked By: | |
Blocking: | #5550, #5620 | Platform: | iOS |
Ready: | yes | Confidential: | no |
Tester: | Unknown | Verified working: | no |
Review URL(s): |
Description (last modified by dzhang)
Background
YAJL 2.0.4 is currently being integrated using Cocoapods.
This is a limitation because Cocoapods does not provide support for mixed static and dynamic frameworks. The result is that Swift libraries conflict with YAJL.
Since we want to use Swift and Swift libraries, a solution is to move to Carthage. It is a dependency manager that solves this problem by providing greater flexibility around how frameworks are integrated.
The latest version of YAJL is 2.1.0. The change log doesn't indicate any breaking changes with 2.0.4. Therefore, this newer version can likely be used.
What to change
Create a repository suitable for building with Carthage for YAJL 2 and integrate the resulting framework into ABP with Carthage.
Update README with Carthage instructions.
Remove use of Cocoapods.
Next Steps
Moving to Carthage allows mixed use of legacy dependencies with newer Swift frameworks. This issue is a prerequisite step for integrating RxSwift into ABP with Carthage.
Attachments (0)
Change History (5)
comment:1 Changed on 09/05/2017 at 04:41:06 AM by dzhang
- Platform changed from Unknown / Cross platform to iOS
comment:2 Changed on 09/05/2017 at 04:41:43 AM by dzhang
- Blocking 5620 added
comment:4 Changed on 09/07/2017 at 06:13:25 AM by dzhang
- Review URL(s) modified (diff)
- Status changed from new to reviewing
comment:5 Changed on 09/19/2017 at 07:17:49 AM by dzhang
- Resolution set to fixed
- Status changed from reviewing to closed