DarkLightning
adheres to Semantic Versioning.
- Completely rewritten in Swift
- All new OOP interface with protocols
- No Objective-C support yet
- No iOS / tvOS simulator support yet
- Fixed a bug that prevented DarkLightning from discovering and connecting USB devices on OSX (#39)
- Fixed a bug that caused JMMobileDevicePort to crash when writing Data while unplugging the iOS device (#34)
- Fixed a bug that prevented DarkLightning.framework from loading when running on actual iOS device (#36)
- Fixed a bug that caused excessive memory usage when transmitting
NSData
objects larger than 100MB
- Added tvOS support (example app comes with the next release)
- Added support for xcodeproj file generation via phoenx
- Restructured repository
- Moved build configurations to xcconfig files
- Fixed a bug that prevented the transmission of data packages with more than 8192 bytes from OSX to iOS
- Fixed a bug that prevented Carthage from building the iOS Framework Target for iOS Simulator
- Added implementation and documentation for
JMTaggedPacket
andJMTaggedPacketProtocol
- Added state
JMMobileDevicePortStateOpening
toJMMobileDevicePort
- Added return values to
close
andopen
methods ofJMMobileDevicePort
- Removed
JMDataPacketProtocol
protocol - Example applications now use
JMTaggedPacketProtocol
- Fixed a bug that created an EXC_BAD_ACCESS if
close
was called onJMMobileDevicePort
while inJMMobileDevicePortStateIdle
- Added some more documentation
- Fixed a bug that prevented cocoadocs from parsing the podspec
- Moved processing of
NSStreamDelegate
to background thread
- More unit tests added
- Fixed a bug that prevented the
JMSocketConnectionConnecting
state onJMSocketConnection
- Added the
deviceWithSerialNumber:
to JMUSBDeviceManager to obtain aJMUSBDevice
for a given serial number if the device is attached to the system. - Added more unit tests
- Added documentation for
JMUSBMuxDecoder
andJMUSBMuxEncoder
- Added a state property for
JMUSBDeviceManager
- All internal socket code has been refactored and separated in
JMSocket
,JMHostSocket
,JMPathSocket
,JMNativeSocket
, andJMSocketConnection
for reuse - All
stop
anddisconnect
methods return the valueYES
from now on
- Fixed a bug that prevented the example apps to load the embedded frameworks
- Carthage support added
- Travis CI integration added
- More unit tests added
- Restructured repository to support independent build
- Added examples for iOS and OSX
- Added a simple packet protocol
- Added a simulator connection to allow usage of DarkLightning with iOS Simulator
- All connections now run on a separate thread
- Fixed a bug that closed the JMMobileDevicePort or JMUSBChannel connection if an empty NSData object was written to it
- Fixed a bug that prevented automatic CocoaPods subspec selection based on deployment platform
- Fixed a bug that prevented
JMMobileDevicePort
to be reopened after a remote connection was closed - Fixed an issue where
JMUSBDeviceConnection
did not report a state change toJMUSBDeviceConnectionStateDisconnected
JMMobileDevicePort
will now close and reopen the underlying socket if a remote USB connection was closed