Skip to content
This repository has been archived by the owner on Aug 14, 2019. It is now read-only.

[8.0 Release] on-going release notes #1216

Closed
4 of 12 tasks
jessesquires opened this issue Sep 22, 2015 · 6 comments
Closed
4 of 12 tasks

[8.0 Release] on-going release notes #1216

jessesquires opened this issue Sep 22, 2015 · 6 comments

Comments

@jessesquires
Copy link
Owner

jessesquires commented Sep 22, 2015

⚠️ Edit: Last updated Dec 30, 2016

Release 8.0

In this issue I'll keep up-to-date, on-going release notes for the 8.0 release.

You can also see the CHANGELOG.

Expected due date

¯\_(ツ)_/¯

What is the expected release date for 8.0? Good question! 😄 Right now, this is TBD. This project is not something I can work on full-time, unfortunately. A realistic timeline would be sometime during the first half of 2017.

High-level goals for this release

  • Drop iOS 7
  • Refactor/reorganize project to use CocoaTouch frameworks
  • Clean up directory structure.
    • Separate framework from example project.
    • Don't require CocoaPods for example app to work, instead link framework.
    • Follow this example.
  • Better Swift inter-op. Nullability, generics, etc.
  • Move to a section-based layout, instead of item-based
  • Remove dependencies.
    • Remove OCMock dependency in Test Target. There are better ways to test. (Remove OCMock #1388)
    • Remove JSQSystemSoundPlayer. This isn't really essential to the library, and clients can easily include this library separately. It simply doesn't provide much value in being a dependency.
  • Use TTTAttributedLabel instead of UITextView. This is another reason to remove the dependencies above. I want to minimize external dependencies as much as possible. Adding dependencies takes serious consideration as it can impact clients greatly. However, TTT will provide many benefits.
  • Kill the "massive view controller" anti-pattern. This exists for legacy reasons. Early goals of the library focused on easy of use. Since then, the view controller has grown too large.
    • Pull out the data source into a separate object
    • Pull out all cell configuration into cell factory objects
    • Pull out other view configuration into configuration objects
    • etc.
  • Unit test everything. Currently at ~66% test coverage. Goal is to get to > 80%. The refactoring above should help achieve this.
  • Demo project: re-write in Swift. Provide only a Swift demo.

Issues

For issues see the 8.0.0 milestone.

Development

Development is happening on the develop branch.

Any hotfixes for 7.3.0 should be merged to the release_7.3 branch.


Release notes:

TODO:

@jessesquires jessesquires self-assigned this Sep 22, 2015
@jessesquires jessesquires added this to the 8.0.0 milestone Sep 22, 2015
Repository owner locked and limited conversation to collaborators Sep 22, 2015
@jessesquires jessesquires changed the title 8.0 Release: on-going release notes [8.0 Release] on-going release notes Dec 6, 2015
@jessesquires
Copy link
Owner Author

This issue is locked for collaborators to keep it clean and focused. For discussion, please go to #1336. 😄

@jessesquires
Copy link
Owner Author

/cc: @eliburke just FYI 😄

@eliburke
Copy link
Collaborator

eliburke commented Apr 7, 2016

Here are some things I'm interested in adding:

  • carthage support
  • keep the ObjC demo. i'm willing to maintain it. I don't think Swift adaptation is high enough yet, and it will likely cut down on questions
  • an optional double-height inputToolbar that supports multiple input media types. I think Messenger does a great job with their input UI
  • multi-select support for the collection view
  • outlets for some of the base cell's auto layout constraints, or a better way to (more easily) control alignment of e.g. avatars, labels, etc.
  • a way to center the left/right cells' bubbles (keeping avatar support as-is) or an official centered / "system message" cell (either with no avatar, or support for placing it on either side)
  • way to support "grouped bubbles" like iMessage and Messenger, where multiple bubbles from the same sender are closer together

@jessesquires
Copy link
Owner Author

👍 👍 👍 👍

@jessesquires
Copy link
Owner Author

@eliburke updated original comment.

  • To facilitate contributions (and better accommodate existing PRs) this work is happening on develop.
  • I cut a release_7.3 branch in case we need to hotfix anything serious

If a 7.3 hotfix is needed, we'll merge that branch into master, then tag and release. Otherwise, master should remain untouched until 8.0 is ready on develop. Then we'll merge develop into master. 😄

@jessesquires
Copy link
Owner Author

Hello everyone!

I'm sorry to inform the community that I'm officially deprecating this project. 😢 Please read my blog post for details:

http://www.jessesquires.com/blog/officially-deprecating-jsqmessagesviewcontroller/

Thus, I'm closing all issues and pull requests and making the necessary updates to formally deprecate the library. I'm sorry if this is unexpected or disappointing. Please know that this was an extremely difficult decision to make. I'd like to thank everyone here for contributing and making this project so great. It was a fun 4 years. 😊

Thanks for understanding,
— jsq

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants