square / PonyDebugger

Remote network and data debugging for your native iOS app using Chrome Developer Tools
Other
5.87k stars 595 forks source link

Cannot archive release for appstore when PonyDebugger is in Target Dependencies #170

Closed drfear closed 8 years ago

drfear commented 8 years ago

The "submit to app store" button is just greyed out unless I remove PonyDebugger from the "Target Dependencies" area. (I have tried just removing the linking step to SocketRocket and PonyDebugger and that is not enough to make it work.) Is there maybe a way to make this happen only in debug builds? What are others doing?

drfear commented 8 years ago

The following patch to the nested SocketRocket project fixes the issue:

diff --git a/SocketRocket.xcodeproj/project.pbxproj b/SocketRocket.xcodeproj/project.pbxproj
index 6c471fe..abcfac7 100644
--- a/SocketRocket.xcodeproj/project.pbxproj
+++ b/SocketRocket.xcodeproj/project.pbxproj
@@ -630,6 +630,7 @@
                GCC_WARN_UNUSED_VARIABLE = YES;
                IPHONEOS_DEPLOYMENT_TARGET = 5.1;
                ONLY_ACTIVE_ARCH = YES;
+               PUBLIC_HEADERS_FOLDER_PATH = include/;
                RUN_CLANG_STATIC_ANALYZER = YES;
                SDKROOT = iphoneos;
            };
@@ -668,6 +669,7 @@
                GCC_WARN_UNUSED_FUNCTION = YES;
                GCC_WARN_UNUSED_VARIABLE = YES;
                IPHONEOS_DEPLOYMENT_TARGET = 5.1;
+               PUBLIC_HEADERS_FOLDER_PATH = include/;
                RUN_CLANG_STATIC_ANALYZER = YES;
                SDKROOT = iphoneos;
                VALIDATE_PRODUCT = YES;
@@ -688,6 +690,7 @@
                );
                OTHER_LDFLAGS = "-Licucore";
                PRODUCT_NAME = "$(TARGET_NAME)";
+               PUBLIC_HEADERS_FOLDER_PATH = include/SocketRocket;
                SKIP_INSTALL = YES;
            };
            name = Debug;
@@ -706,6 +709,7 @@
                );
                OTHER_LDFLAGS = "-Licucore";
                PRODUCT_NAME = "$(TARGET_NAME)";
+               PUBLIC_HEADERS_FOLDER_PATH = include/SocketRocket;
                SKIP_INSTALL = YES;
            };
            name = Release;
dfed commented 8 years ago

You should not ship PonyDebugger in your app, since it exposes the contents of your network requests. I believe this behaves as expected. cc @mikelikespie