Kitura / BlueRSA

RSA public/private key encryption, private key signing and public key verification in Swift using the Swift Package Manager. Works on iOS, macOS, and Linux (work in progress).
Apache License 2.0
131 stars 58 forks source link

Removes unneeded CFString: Hashable extension #70

Closed stmitt closed 3 years ago

stmitt commented 3 years ago

Starting with starting with Swift 4.0 all CF types already conform to Hashable. Therefore this extension is not needed anymore.

Description

Pre Swift 4.0 this extension was required but since the minimal swift version of this package is 4.0 this part of the code is not needed anymore. The corresponding implementation in the swift stdlib can be found here.

Motivation and Context

Recent changes in the Swift runtime indicate that the order in which protocol conformances are loaded is not guaranteed and might change with swift 5.4 which will ship with the upcoming Xcode release (12.5). Therefore the CFString extension of this package might produce unwanted side-effects for the application which is using this package.

How Has This Been Tested?

Built and run on macOS and iOS. Ran tests on the macOS target.

CLAassistant commented 3 years ago

CLA assistant check
All committers have signed the CLA.

sonarcloud[bot] commented 3 years ago

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

dannys42 commented 3 years ago

@stmitt thanks for submitting this. Looks like there's a problem with one of the tests. I'll see if I can fix the issue. If not I'll push this through regardless, since it's just the swift development snapshot that's failing.

stmitt commented 3 years ago

@dannys42 @mbarnach any chance to merge this pull request?

mbarnach commented 3 years ago

I've restarted the build. It seems the issue was due to a quota limitation on Travis. Hopefully it will succeed this time and we can merge without forcing.

dannys42 commented 3 years ago

FYI, Travis is moving to limit their free services. I've started talks with them to get Kitura included, but I think they're a bit swamped as I haven't heard from them in a few days.

dannys42 commented 3 years ago

It loos like everything passed except for the Swift 5.4 development branch due to some compiler problem. I've updated the swift development build version, but I think it's fine pushing this PR through regardless of the result.