Replies: 2 comments 1 reply
-
I am trying to get this library building on linux and so I've got a fork and some branches that drop Starscream and Combine in favor of WebSocketKit and RxSwift. I'd really like to make a PR with these changes for review but I don't know what the sentiment about using RxSwift is. |
Beta Was this translation helpful? Give feedback.
-
Hey just seeing your comment now. Our plans moving forward are to further remove 3rd party and unnecessary dependencies. Sockets can be supported directly via URLSession and async/await more than satisfies the needs of this project, as well as bringing with it many other enhancements that other libraries (rx, combine included) cannot provide alone. To that end, I don't feel any reactive library would be a good fit moving forward and I can tell you already that the direction of this library (including the API) will change significantly in v6, where Combine/RX would no longer be a suitable fit anyway. Linux support is also not 'high' priority I'm afraid but it is a consideration and we have been making efforts to not exclude it, however the priority of this library is to solve for iOS and macOS clients above all else. |
Beta Was this translation helpful? Give feedback.
-
Platforms support
Overview
The current state regarding platform support in v5.x is as follows:
As we can see, it's a little inconsistent and still very much only.
Moving forward as a part of plans for a future v6 release, we plan to bring versions up-to-date and improve consistency.
This ensures we support at least 2 versions back while also simplifying library support and in some cases enabling new feature development.
Furthermore we plan to move to Swift 5.9 which will enable a host of new features.
While some of these goals are relatively simple, some will require changes to the way packages are structured and dependencies defined.
Simplified dependencies
In order to simplify dependencies I propose we will drop support for the following:
These changes will improve the library and enable many other features as well.
Summary
I'm opening this discussion in case others want to chime in but more importantly to openly share our plans for this library and its general roadmap.
There will be several new discussions added over the following weeks that will reveal more details of these design goals, active plans and ongoing work.
In addition there are now 2 project boards where we will track progress and prioritise features both in the existing v5 updates, as well as all planned work to get us to a v6 release.
Beta Was this translation helpful? Give feedback.
All reactions