Skyscanner / SkyFloatingLabelTextField

A beautiful and flexible text field control implementation of "Float Label Pattern". Written in Swift.
Apache License 2.0
4.09k stars 542 forks source link

SkyFloatingLabelTextField.framework: required code signature missing #201

Open bludginozzie opened 6 years ago

bludginozzie commented 6 years ago

I am unsure if this is a bug or local issue. I am positing it here to see if anyone else is experiencing the same problem.

I had a fully working project with no problems. I then recently upgraded to the latest version of SkyFloatingLabelTextField (v3.4.1) and also upgraded Cocoapods (v1.5.0) and I am now getting a strange error in the storyboard editor.

file:///..../Base.lproj/Main.storyboard: error: IB Designables: Failed to render and update auto layout status for LoginViewController (WxM-Yi-A5J): dlopen(SkyFloatingLabelTextField.framework, 1): no suitable image found. Did find: SkyFloatingLabelTextField.framework: required code signature missing for 'SkyFloatingLabelTextField.framework'

I have tried uninstalling the SkyFloatingLabelTextField cocoapod and then reinstalling it with no change

The app runs fine in the simulator, the storyboard editor is unusable since it renders the SkyFloatingLabelTextField in strange positions.

Xcode Version: 9.3 SkyFloatingLabelTextField Version: 3.4.1 Deployment Target: 11.2 Base SDK: 11.3 Method of Integration: CocoaPods

Any advice would be greatly appreciated.

k0nserv commented 6 years ago

Hey everyone. That doesn't sound too good. Does reverting to 3.4.0 solve the issue for the time being. I'll have a look at what changed between 3.4.1 and 3.4.0, but my hunch is that nothing changed which would cause this.

k0nserv commented 6 years ago

I had a look and there's nothing in 3.4.1 that I think would have caused this. Can everyone please try this https://stackoverflow.com/questions/40110392/required-code-signature-missing-for-a-library. Also please refrain from +1 comments as they make the thread hard to read, use reactions instead. Here are the changes between 3.4.0 and 3.4.1.

@musbaalbaki, @xRena, @dcw008, @eitanaviv, @ahmedhatem003, @Samrat555 I've deleted your +1 comments to keep the thread clear

ahmedhatem003 commented 6 years ago

Thank you @k0nserv I'll use reactions next time I went through solutions in the link but couldn't find _CodeSignature folder in SkyFloatingLabelTextField.framework in finder

screen shot 2018-04-16 at 17 52 13
bludginozzie commented 6 years ago

No, rolling back to 3.4.0 does not fix the issue. Could it be an incompatibility with Cocoapods 1.5? I noticed it has some updates for static libraries that maybe causing this issue? http://blog.cocoapods.org/CocoaPods-1.5.0/

k0nserv commented 6 years ago

@bludginozzie That's a possibility for sure. I'll have to have a look and see if there are any actions for library authors under 1.5.0

k0nserv commented 6 years ago

Seems like it might be related to https://github.com/CocoaPods/CocoaPods/issues/7606. For the time being I would downgrade CocoaPods and possibly Xcode or use the workaround

# Workaround for Cocoapods issue #7606
post_install do |installer|
    installer.pods_project.build_configurations.each do |config|
        config.build_settings.delete('CODE_SIGNING_ALLOWED')
        config.build_settings.delete('CODE_SIGNING_REQUIRED')
    end
end
bludginozzie commented 6 years ago

Thank you, the workaround works great.

merlin910 commented 6 years ago

I also have this same issue when integrating via Carthage the log file points to the .swiftlint.yml file and when I try to build manually I have to comment out that script to get it to build.

/Library/Caches/org.carthage.CarthageKit/DerivedData/9.3_9E145/SkyFloatingLabelTextField/v3.4.1/Build/Intermediates.noindex/ArchiveIntermediates/SkyFloatingLabelTextField/IntermediateBuildFilesPath/SkyFloatingLabelTextField.build/Release-iphoneos/SkyFloatingLabelTextField.build/Script-0AA2E1E11E9F54E0007B6FEC.sh: line 6: 73578 Abort trap: 6 swiftlint lint --config .swiftlint.yml

k0nserv commented 6 years ago

@merlin910 I'm not quite sure how to disable custom scripts when Carthage is used.

HariNarayanan777 commented 6 years ago

the error was gone after i paste the below code in my pod file. and install the pod once again.

# Workaround for Cocoapods issue #7606 post_install do |installer| installer.pods_project.build_configurations.each do |config| config.build_settings.delete('CODE_SIGNING_ALLOWED') config.build_settings.delete('CODE_SIGNING_REQUIRED') end end

thank you @k0nserv