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

[8.0 Release] [Poll] Drop support for iOS 7? #966

Closed jessesquires closed 8 years ago

jessesquires commented 9 years ago

Hello all,

I'm considering dropping support for iOS 7 in an upcoming release.

WWDC 2015 is next month, which means iOS 9 is likely coming soon!

Reports show that iOS 8 adoption rates are around 80%

I'm opening this issue to get an understanding for how this would affect everyone who is currently using this library.

Please share your thoughts and comments below!

Benefits

Work happening on the release 8.0 branch.

LAST UPDATED: 21 Sep 2015

jessesquires commented 9 years ago

/cc: @piercifani @ghazel @winzig @yforjindam @erysaj @LeoNatan @dereck009 @kartikthapar @wdcurry @chadpod @galambalazs @mohpor

You guys are some of the most active users here. Please tag anyone else that I missed!

wdcurry commented 9 years ago

i say go for 8.. I'd sing it if i could ever get content-available:1 pushes working so that a non-running app fires up, but that seems to be like pissing in the wind. ;)

winzig commented 9 years ago

I am not currently using it but looking at it for 2 upcoming projects, and both of them are iOS 8 only, so it sounds good to me. :-)

gblazex commented 9 years ago

I'd say it makes sense to drop support in JSQ 8 People who need compatibility will be able to use the JSQ version 7.1 . (iOS and JSQ version matching is of course just a coincidence)

New apps can be started with JSQ 8 and older apps can be updated in their chosen time frame.

ghazel commented 9 years ago

I'd probably stick with JSQ 7.x until September, or whenever the next release of iOS is.

kartikthapar commented 9 years ago

I'd say create a poll.

IMO, 7.0 support doesn't matter to me at this point. Considering that people investing in this framework looking for a future release will be in production or release by the time iOS hits 9.0 It's safe to argue that a two year old version should be discontinued. That's what I think.

gblazex commented 9 years ago

@ghazel if you mean hold out JSQ versioning to match iOS I think it might not be such a good idea. They follow different update cycles and JSQ is semver as far as I know.

The current situation where they may match is pure coincidence.

erysaj commented 9 years ago

I still need to support iOS7 and when drop it is not my decision to make

chadpod commented 9 years ago

+1 for dropping 7

On May 5, 2015, at 12:00 PM, Jesse Squires notifications@github.com wrote:

/cc: @piercifani @ghazel @winzig @yforjindam @erysaj @LeoNatan @dereck009 @kartikthapar @wdcurry @chadpod @galambalazs @mohpor

You guys are some of the most active users here. Please tag anyone else that I missed!

— Reply to this email directly or view it on GitHub.

chrisballinger commented 9 years ago

Although I'd love to drop support for iOS 7, I discovered we have sizable number of users running iOS 7 on second-hand iPhone 4 hardware. Generally I try to support the last 2 major OS releases so I am planning to drop support for iOS 7 when iOS 9 is out.

kartikthapar commented 9 years ago

I discovered we have sizable number of users running iOS 7 on second-hand iPhone 4 hardware.

Aren't those people extinct. :astonished:

ghazel commented 9 years ago

@galambalazs nothing about the version coincidence, just that I'd keep using a version of JSQ which supports iOS 7 until September or iOS 9 whichever comes first.

gblazex commented 9 years ago

@ghazel ah ok :) Then we are saying the same thing.

For older apps it makes sense to support iOS 7 with an existing userbase.

But it just means those projects will use JSQ 7.1 as long as they want to keep supporting iOS 7. And then they can make the switch whenever they see fit.

Those kind of apps usually have to make feature vs compatibility trade-offs anyway.

yforjindam commented 9 years ago

I vote for maintaining support for iOS 7 until iOS 9 is released this fall. Apple's official breakdown collected from the App Store as of May 5th 2015 is 17% iOS 7.0 and 81% iOS 8 which is still pretty significant: https://developer.apple.com/support/appstore/ for anyone with a live app out there today.

jessesquires commented 9 years ago

Thanks all for the feedback! Very much appreciated!

Here are my thoughts:

  1. Keep rolling with v7.x releases (iOS 7+)
  2. Begin work on v8.0 on its own branch, this release will be iOS 8+

No definite timeline on the v8.0 release, but definitely (hopefully) over the next couple of months. We should see iOS 9 at WWDC pretty soon. Regardless, I'll be sure to make the final 7.x as solid as possible.

mohpor commented 9 years ago

A little late to the party but, I'm not currently using it and I say go for iOS 8+ too, By the time Release 8 comes out, apple will drop support for iOS 7 in Xcode and like it or not, most (if not all) developers should move on too.

P.S.: that last bit about solidifying 7.x is a brilliant idea. P.S.2: I have done intensive performance related researches, I'd be happy (as I've expressed before) to help improving the library too.

piercifani commented 9 years ago

Dropping iOS 7 when iOS 9 is released to the public is sound like the right choice: we can't move forward without leaving some behind.

So both of your proposed actions make sense to me, let me know what we can do to help you!

mzekrallah commented 9 years ago

I'd probably stick with JSQ 7.x until September, or whenever the next release of iOS is. I suggest you keep iOS 7 around maybe till end of this year at least. Would also love to see more benefits than the ones mentioned .. they are great and everything but I guess focus is more oriented towards the elegance of code and its architecture now rather than great usability and ux improvements which are far more important especially for this great library. Thanks man

LeoNatan commented 9 years ago

Sorry for weighting in a little late.

I'm always for advancing technology, when there are clear benefits. I think it's a little early for that. Let's wait for WWDC and see what changes there are. If there are clear performance boosters, no reason not to upgrade. On the other hand, not sure the items already listed alone are worth the upgrade/remove of support.

Do you have any particular things you would like to remove already from the project, @jessesquires ?

ghazel commented 9 years ago

+1 to Leo's approach.

mzekrallah commented 9 years ago

+1 to Leo's approach.

Shebuka commented 9 years ago

For our project I need iOS 7 support, 17% is still large user base for our company to loose.

LeoNatan commented 9 years ago

@Shebuka remember that we are still early in 2015. By the time iOS9 comes out, it will be a lot lower. And you can always use this version, which already works for you.

fernandomorgan commented 9 years ago

Supporting multiple versions is always expensive and as @LeoNatan mention, the current version works for iOS7. At most, a branch for maintenance fixes in 7

jawwad commented 9 years ago

+1 for dropping 7, as @fernandomorgan mentioned there is a maintenance cost.

LeoNatan commented 9 years ago

No reason to hurry right now. iOS9 may not have as many API changes as you think, which may not require as much maintenance. WWDC is just around the corner.

fernandomorgan commented 9 years ago

Yeah, in 1 week we will know for sure, but it seems highly likely that there will be an iOS9. Also, I would like to remind that the "no features 10.6" had actually TONS of API changes - I think that, for a developer standpoint, it had some of the biggest changes after OSX10.1 - for example, blocks were introduced in 10.6

jessesquires commented 9 years ago

Update

JSQMessages v8.0 will drop support for iOS 7.

Release 8.0 and later will support iOS 8 and above only. :tada:

Milestones updated.

:muscle: :sunglasses: :facepunch:

LAST UPDATED: 21 Sep 2015

jessesquires commented 9 years ago

Update

Hello all!

Given the recent news on iOS 9 adoption rates (> 50%) and considering my own availability for this project, I've decided that v8.0 of JSQMessages will be dropping support for iOS 7.

  1. If these reports are accurate (and they should be), having over 50% of users on iOS 9 means development time for iOS 7 is more maintenance than necessary.
  2. Apple recommends supporting only the two latest iOS versions.
  3. I have limited time to devote to this project, and three iOS versions is a bit too much.
  4. By the time I actually get v8.0 released ( :grin: :grin: :grin: ), these adoption rates should be even better.

Patches for 7.x will still occur on develop.

Release 8.0 will be happening on the release_8.0 branch.

I've updated this issue (the main comment and my previous update) and the associated milestones.

jessesquires commented 9 years ago

Update

Apple's official numbers here.

iOS 8 = 41% iOS 9 = 52%

chrisballinger commented 9 years ago

Great news! I've moved all my code to iOS 8+

harlanhaskins commented 9 years ago

I stand by this 100%. :+1:

I'm excited for all the red diffs removing iOS 7 compatibility. Size class support would be really nice!

joshuawilde commented 9 years ago

:+1:

ghazel commented 9 years ago

👍

jessesquires commented 8 years ago

Going to close this out.

Thanks to all who provided feedback!