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

Version 5.0 #223

Merged
merged 21 commits into from Mar 14, 2018
Merged

Version 5.0 #223

merged 21 commits into from Mar 14, 2018

Conversation

minixT
Copy link
Collaborator

@minixT minixT commented Mar 14, 2018

Merge version 5.0 with master branch

moogle19 and others added 21 commits October 24, 2017 00:57
* Convert some Observable to Single

* Fix travis for Swift 4

* Bump simulator version to 11

* Convert remaining Observables to Singles

* Convert `retrieve` methods to Single and add docs

Converted 3 more functions from `Observable` to `Single` and
adjust documentation

* Merge tests
* Removed test files

* Removed architecture overload for service, characteristic and descriptor

* Removed references to BluetoothManager related overhead objects

* Final fixes

* Fixed identifier variable on UUID

* Removed comments related to RxCB layer

* Fixed the unnecessary comments and fixed variables namings

* Review fixes
…in write function — (#174)

* Used monitoring readiness for write without response in write method
New testing infrastructure:
- removed quick & nimble - moved to XCTests
- added scripts to generate testable RxBluetoothKit classes (all testable classes have „_” prefix)
- added script for generating CoreBluetooth mocks
- added tests for BluetoothManager.retrievePeripherals methods with use of this architecture
* Improvements to testing infrastructure
- Added peripheral delegate provider to prevent delegate stealing.
- Fixed not passing central manager delegate in constructor
- Code generation improvements - now delegate wrappers are also mocks, not testable classes
- Added attach method for reattaching RxBluetoothKit delegates to CBPeripheral and CBCentralManager
BluetoothManager.monitorDisconnection is now sending also disconnection event when bluetooth state changed to something different than .poweredOn.

FIXED ISSUES: #167
Removed all complicated code related of reusing scanPeripherals method. Now it is possible to only have one scanning at a time.

ISSUES FIXED: #179
- changed `BluetoothManager` to `CentralManager`
- changed monitoring method to start with `observe` rather than `monitor` - it is more reactive and consistent with android library
- changed behaviour of CentralManager.observeState  and Peripheral.observeConnection to not start with current state
- added possibility to observing any events without specifing peripheral/characteristic/descriptor
- grouped all method in code with marking
- changed retrievePeripherals to synchronous methods

FIXED ISSUES: #208
* Changed connecting logic to handle auto disconnecting on dispose

`CentralManager.connect` method has changed to `CentralManager.establishConnection`. Now it is a more complex method that handles auto disconnecting on dispose, waiting for disconnecting, and throwing errors when there is already connected/connecting device.
#215)

* Added provider for Peripheral. From now on, we will have only one Peripheral for on CBPeripheral

* Added unit tests
@minixT minixT requested a review from pouljohn1 March 14, 2018 12:42
@pouljohn1 pouljohn1 merged commit 505c877 into master Mar 14, 2018
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

Successfully merging this pull request may close these issues.

None yet

6 participants