Skip to content
New issue

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

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

Already on GitHub? # to your account

Remove Siphon Server #87

Closed
wants to merge 25 commits into from
Closed

Conversation

joeljfischer
Copy link
Contributor

Fixes #57, this removes the siphon server and all associated APIs. See #85 for more information.

joeljfischer and others added 25 commits January 26, 2015 11:16
The project now is by default built into a (iOS 8+) framework

The framework can run attached tests

This framework is embedded into an application which acts as an example application

Cocoapods spec is added
Library files are now within the framework's folder

Fix some warnings
Update scheme name
Add all public headers to SmartDeviceLink.h
Fix wrong folder for source files
TCP and iAP connection view controllers, swap between them via the segmented control

Preferences object to thread-safely read and write to user defaults
@joeljfischer joeljfischer added this to the 4.0.0 milestone Feb 23, 2015
@Heath-FoMoCo
Copy link

Before we can remove Siphon we have to have an equivalent coded.
Without we would be debugging iOS apps blindly.

@joeljfischer
Copy link
Contributor Author

I understand that, but I was under the impression that SmartDeviceLink apps cannot be debugged through the Siphon Server as it exists, and that this is a Ford only feature.

I'm in total agreement that getting a replacement out there is a top priority, but since this is a major version change, I would say it is better to remove it while we have other major changes batched here, and push for the new system (a minor version change) as soon as possible, whether it be before 4.0 is out or shortly after.

Am I off base here?

@Heath-FoMoCo
Copy link

It is a Ford feature used to debug partner apps.
When a partner has issues we use this tool to determine if it is app logic or module behavior causing the issue. Removing this would cripple this support .

@mikeburke106
Copy link

Pardon my ignorance on the iOS libs, but I believe (in the Android code, at least) if the SiphonServer isn't connected, the logs will just be displayed via LogCat or whatever native log mechanism exists.

From SdlTrace.java:

// Attempt to write formatted message to the Siphon
if (false == writeMessageToSiphonServer(msg)) {
    // If writing to the Siphon fails, write to the native log
    NativeLogTool.logInfo(SdlTrace.SYSTEM_LOG_TAG, msg);
}

Is there nothing like this set up in iOS yet, or is this not sufficient for our debugging purposes?

@Heath-FoMoCo
Copy link

Correct; it is not sufficient.
On Android you can plug into the debugger and get live logging. This is not possible with iOS plugged into a module.
With iOS you have to do “cable swap” to get logs (module to Mac) and there is always a chance that you will miss the entries. Painful and not robust enough.

What we need is a way to debug with the cable plugged in the module. Live code debugging, (Bluetooth, Wi-Fi, magic, anything) with breakpoints, would be awesome. Right now, we believe, iOS makes this impossible.

@mikeburke106
Copy link

Ohhhhh ok, I see. So, the real cause of the problem is that iOS devices can only connect to SDL via USB and it can't write logs to USB at the same time. I would agree, then, that this can't be removed until we have an alternative implemented (at least for iOS).

@joeljfischer
Copy link
Contributor Author

I'm working on a replacement right now, this won't be merged in until that's done. It should be ready for 4.0.

@joeljfischer joeljfischer modified the milestones: 5.0.0, 4.0.0 Mar 9, 2015
@joeljfischer joeljfischer deleted the feature/remove_siphon_server branch September 1, 2015 20:13
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants