jessesquires / JSQMessagesViewController

An elegant messages UI library for iOS
https://www.jessesquires.com/blog/officially-deprecating-jsqmessagesviewcontroller/
Other
11.14k stars 2.81k forks source link

Broken dependency on JSQSystemSoundPlayer for 5.x? #550

Closed marvin-yorke closed 10 years ago

marvin-yorke commented 10 years ago

Hi Jesse, I've noticed that you've updated your other pod, JSQSystemSoundPlayer, which your messages controller depends on. I'm still using 5.3.2 version and don't plan to move to 6.0 any soon. But it seems that the pod is configured so it depends on the latest version of JSQSystemSoundPlayer, and JSQSystemSoundPlayer+JSQMessages category of 5.3.2 doesn't play nice with 2.0 of JSQSystemSoundPlayer due to changed selector names in this version. It seems to be pretty easy to work it out, but probably you will want to fix the podspec for 5.x branch

BR, Max

jessesquires commented 10 years ago

Hey @marvin-yorke - yeah sorry about that.

Just add this to your pod file and it should be ok:

pod 'JSQSystemSoundPlayer', '1.5.2'
marvin-yorke commented 10 years ago

Hi, I've tried this in the first place, but it doesn't seem to work - 2.0.0 is used even if I clean pods completely, leaving only the Podfile and performing pod install. So for now I've just added JSQMessagesViewController and JSQSystemSoundPlayer of desired versions manually, without using cocoapods, but it would be nice if you could figure out how to fix it in podspec - it could help if someone else would stick to 5.x branch

jessesquires commented 10 years ago

Sorry @marvin-yorke - major oversight on my part.

My apologies to everyone using this library!

The 6.0-beta5 release is stable. I would recommend upgrading to this if you haven't already. This is the easiest, fastest remedy at the moment.

The final "official" 6.0 release will be coming later this week.

romanr commented 10 years ago

With all due respect to developer, but forced upgrade of JSQSystemSoundPlayer simply broke the projects for everyone who is not using latest 'beta' release. Run pod update - and your project is broken. Not everyone has time to update projects to latest JSQMesages version and its new APIs.

"has-workaround" label is not valid either because pod 'JSQSystemSoundPlayer', '1.5.2' simply don't work.

jessesquires commented 10 years ago

Official workaround

Update your Podfile to the following:

pod 'JSQMessagesViewController', :git => 'https://github.com/jessesquires/JSQMessagesViewController', :branch => 'version_5.3.2_patch'

This branch is simply reverted to the 5.3.2 release (last 5.x.x release) with a patched pod spec.

Sorry again for breaking!

Previous releases should have pinned to a specific version of JSQSystemSoundPlayer.

jessesquires commented 10 years ago

@marvin-yorke / @romanr - See previous comment for a proper fix. Very sorry for the inconvenience.

ezrasuki commented 10 years ago

I'm using another fork that had media feature before you released the 6.0--i can't just do version_5.3.2_patch. Is there any other way?

ezrasuki commented 10 years ago

More specifically I was using this pod 'JSQMessagesViewController', :git => 'git@github.com:piercifani/JSQMessagesViewController.git', :branch => 'media'

jessesquires commented 10 years ago

@ezrasuki you can fork that yourself, update the spec to what is on the version_5.3.2_patch and then point cocoapods there.

jessesquires commented 10 years ago

With the release of v6.0 and the updated installation notes, I'm going to close this issue as resolved.