Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pusher v2 Roadmap #189

Open
lukeredpath opened this issue Sep 21, 2015 · 3 comments
Open

Pusher v2 Roadmap #189

lukeredpath opened this issue Sep 21, 2015 · 3 comments

Comments

@lukeredpath
Copy link
Contributor

Some thoughts about the direction of libPusher for version 2:

  • Re-visit refactoring of private channel authentication mechanism. I'd like to make it easier for users to support custom authentication, possibly building upon whatever HTTP library they already use in their app. I've already laid the groundwork for this in this pull request but it needs updating: Migrate towards customisable channel authorization strategies #95
  • Remove dependencies on NSURLConnection. The two things that make HTTP requests in the library are the existing private channel authentication mechanism, and the PTPusherAPI client. I'd like to remove these. I'd still want to provide a default channel authentication implementation based on the refactored auth system but this could be extracted into a separate repository, perhaps some kind of libPusher-HTTP library (which could also include the HTTP API client).
  • Re-write in Swift. This is something I'd like to explore for v2. Not just a straight re-write, I'd like to see if there's any opportunities with Swift to refine the library's API.
  • Move repo over to Pusher organisation?

Anything else @hamchapman?

@hamchapman
Copy link
Contributor

First point seems like a great idea and at first glance, it doesn't look like there's a massive amount more work to be done for it. Links nicely with the second one in that removing (or abstracting) the baked-in auth that uses NSURLConnection can be part of the same work that involves moving over to using NSURLSession instead.

As I mentioned before, I also agree that splitting up the library into a Websocket library and an HTTP library is a good idea.

I'm also definitely game for a re-write in Swift. I threw together a Swift library (here)[https://github.com/pusher-community/pusher-websocket-swift] but am happy for a libPusher written in Swift to become the de facto library for all Apple software integrations (iOS, OSX, tvOS maybe even watchOS, and whether Objective-C or Swift is being used).

And a move over to the Pusher org would be great 👍

@lukeredpath
Copy link
Contributor Author

@hamchapman revisiting this, I'd like to push for one last release (1.7) before focussing on 2.0 and a Swift rewrite.

@hamchapman
Copy link
Contributor

Sounds good to me!

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

No branches or pull requests

2 participants