refactor: use Swift CommonCrypto module to calculate md5 hashes #22
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.
CommonCrypto is Apple's Open Source cryptography library, which we leverage for generating our URL signature hashes. Previously, we relied on importing the C version of the library and hooking it up to generate hashes in our mostly-swift code base.
This PR refactors the library to use the Swift CommonCrypto module, which ships with XCode 10+ out of the box. This won't result in any difference in this library's behavior. However, this change will help immensely with eventually supporting this project on Swift Package Manager, which has a difficult time handling Swift + ObjC mixed codebases, as well as yielding a cleaner codebase overall. The solution to port over the MD5 function to pure swift was a suggestion from #21.