ソースを参照

Revert "Merge pull request #183 from redwhitelabel/feature/response-refactor"

This reverts commit c6c6d0be18be85eb90532643ac92f52bd968d195, reversing
changes made to 1e2926567541a9892e4e677f637db2632bf55dc8.
Damian Kołakowski 9 年 前
コミット
edc8bc5e92

+ 0 - 28
Sources/CustomResponse.swift

@@ -1,28 +0,0 @@
-//
-//  CustomResponse.swift
-//  Swifter
-//
-//  Created by Dawid Szymczak on 15/08/16.
-//  Copyright © 2016 Damian Kołakowski. All rights reserved.
-//
-
-#if os(Linux)
-    import Glibc
-#else
-    import Foundation
-#endif
-
-public class CustomResponse: Response {
-    public var closure: (ObjectIdentifier) -> (String)
-    
-    public init(contentObject: AnyObject, closure: (Any) throws -> String) {
-        self.closure = closure
-        super.init(contentObject: contentObject)
-    }
-    
-    public override func content() -> (contentLength: Int, contentString: String) {
-        let serialised = try closure(ObjectIdentifier(contentObject))
-        let data = [UInt8](serialised.utf8)
-        return (data.count, serialised)
-    }
-}

+ 0 - 6
Sources/DemoServer.swift

@@ -142,11 +142,6 @@ public func demoServer(publicDir: String) -> HttpServer {
         return HttpResponse.OK(.Html(formFields.map({ "\($0.0) = \($0.1)" }).joinWithSeparator("<br>")))
     }
     
-    server.OPTIONS["/login"] = { r in
-        let response = ""
-        return HttpResponse.OK(.Json(response))
-    }
-    
     server["/demo"] = scopes {
         html {
             body {
@@ -163,7 +158,6 @@ public func demoServer(publicDir: String) -> HttpServer {
     }
     
     server["/redirect"] = { r in
-        HttpResponse.OK(.Html(""))
         return .MovedPermanently("http://www.google.com")
     }
 

+ 0 - 21
Sources/HtmlResponse.swift

@@ -1,21 +0,0 @@
-//
-//  HtmlResponse.swift
-//  Swifter
-//
-//  Created by Dawid Szymczak on 15/08/16.
-//  Copyright © 2016 Damian Kołakowski. All rights reserved.
-//
-
-#if os(Linux)
-    import Glibc
-#else
-    import Foundation
-#endif
-
-public class HtmlResponse: Response {
-    public override func content() -> (contentLength: Int, contentString: String) {
-        let serialised = "<html><meta charset=\"UTF-8\"><body>\(String(self.contentObject))</body></html>"
-        let data = [UInt8](serialised.utf8)
-        return (data.count, serialised)
-    }
-}

+ 30 - 14
Sources/HttpResponse.swift

@@ -27,29 +27,45 @@ public enum HttpResponseBody {
     case Json(AnyObject)
     case Html(String)
     case Text(String)
-    case Custom(AnyObject, (Any) throws -> String)
+    case Custom(Any, (Any) throws -> String)
     
     func content() -> (Int, (HttpResponseBodyWriter throws -> Void)?) {
         do {
-            print(String(self))
-            let response: ResponseProtocol;
             switch self {
             case .Json(let object):
-                let response = JsonResponse(contentObject: object)
+                #if os(Linux)
+                    let data = [UInt8]("Not ready for Linux.".utf8)
+                    return (data.count, {
+                        try $0.write(data)
+                    })
+                #else
+                    guard NSJSONSerialization.isValidJSONObject(object) else {
+                        throw SerializationError.InvalidObject
+                    }
+                    let json = try NSJSONSerialization.dataWithJSONObject(object, options: NSJSONWritingOptions.PrettyPrinted)
+                    let data = Array(UnsafeBufferPointer(start: UnsafePointer<UInt8>(json.bytes), count: json.length))
+                    return (data.count, {
+                        try $0.write(data)
+                    })
+                #endif
             case .Text(let body):
-                let response = TextResponse(contentObject: object!)
+                let data = [UInt8](body.utf8)
+                return (data.count, {
+                    try $0.write(data)
+                })
             case .Html(let body):
-                let response = HtmlResponse(contentObject: object!)
+                let serialised = "<html><meta charset=\"UTF-8\"><body>\(body)</body></html>"
+                let data = [UInt8](serialised.utf8)
+                return (data.count, {
+                    try $0.write(data)
+                })
             case .Custom(let object, let closure):
-                let response = CustomResponse(contentObject: object, closure: closure)
-            default:
-                let response = Response(contentObject: "")
+                let serialised = try closure(object)
+                let data = [UInt8](serialised.utf8)
+                return (data.count, {
+                    try $0.write(data)
+                })
             }
-            
-            let content = response.content()
-            return (content.contentLength, {
-                try $0.write(content)
-            })
         } catch {
             let data = [UInt8]("Serialisation error: \(error)".utf8)
             return (data.count, {

+ 14 - 16
Sources/HttpServer.swift

@@ -18,25 +18,23 @@ public class HttpServer: HttpServerIO {
     private let router = HttpRouter()
     
     public override init() {
-        self.DELETE  = MethodRoute(method: "DELETE", router: router)
-        self.UPDATE  = MethodRoute(method: "UPDATE", router: router)
-        self.HEAD    = MethodRoute(method: "HEAD", router: router)
-        self.POST    = MethodRoute(method: "POST", router: router)
-        self.GET     = MethodRoute(method: "GET", router: router)
-        self.PUT     = MethodRoute(method: "PUT", router: router)
-        self.OPTIONS = MethodRoute(method: "OPTIONS", router: router)
+        self.DELETE = MethodRoute(method: "DELETE", router: router)
+        self.UPDATE = MethodRoute(method: "UPDATE", router: router)
+        self.HEAD   = MethodRoute(method: "HEAD", router: router)
+        self.POST   = MethodRoute(method: "POST", router: router)
+        self.GET    = MethodRoute(method: "GET", router: router)
+        self.PUT    = MethodRoute(method: "PUT", router: router)
         
-        self.delete  = MethodRoute(method: "DELETE", router: router)
-        self.update  = MethodRoute(method: "UPDATE", router: router)
-        self.head    = MethodRoute(method: "HEAD", router: router)
-        self.post    = MethodRoute(method: "POST", router: router)
-        self.get     = MethodRoute(method: "GET", router: router)
-        self.put     = MethodRoute(method: "PUT", router: router)
-        self.options = MethodRoute(method: "OPTIONS", router: router)
+        self.delete = MethodRoute(method: "DELETE", router: router)
+        self.update = MethodRoute(method: "UPDATE", router: router)
+        self.head   = MethodRoute(method: "HEAD", router: router)
+        self.post   = MethodRoute(method: "POST", router: router)
+        self.get    = MethodRoute(method: "GET", router: router)
+        self.put    = MethodRoute(method: "PUT", router: router)
     }
     
-    public var DELETE, UPDATE, HEAD, POST, GET, PUT, OPTIONS : MethodRoute
-    public var delete, update, head, post, get, put, options : MethodRoute
+    public var DELETE, UPDATE, HEAD, POST, GET, PUT : MethodRoute
+    public var delete, update, head, post, get, put : MethodRoute
     
     public subscript(path: String) -> (HttpRequest -> HttpResponse)? {
         set {

+ 0 - 29
Sources/JsonResponse.swift

@@ -1,29 +0,0 @@
-//
-//  JsonResponse.swift
-//  Swifter
-//
-//  Created by Dawid Szymczak on 15/08/16.
-//  Copyright © 2016 Damian Kołakowski. All rights reserved.
-//
-
-import Foundation
-
-
-public class JsonResponse: Response {
-    public override func content() -> (contentLength: Int, contentString: String) {
-        #if os(Linux)
-            let data = [UInt8]("Not ready for Linux.".utf8)
-            return (data.count, {
-                try $0.write(data)
-            })
-        #else
-            guard NSJSONSerialization.isValidJSONObject(self.contentObject) else {
-                throw SerializationError.InvalidObject
-            }
-            let json = try NSJSONSerialization.dataWithJSONObject(self.contentObject, options: NSJSONWritingOptions.PrettyPrinted)
-            let data = Array(UnsafeBufferPointer(start: UnsafePointer<UInt8>(json.bytes), count: json.length))
-            // To be fixed
-            return (data.count, String(json))
-        #endif
-    }
-}

+ 0 - 49
Sources/Response.swift

@@ -1,49 +0,0 @@
-//
-//  Response.swift
-//  Swifter
-//
-//  Created by Dawid Szymczak on 15/08/16.
-//  Copyright © 2016 Damian Kołakowski. All rights reserved.
-//
-
-import Foundation
-
-public protocol ResponseProtocol {
-    var headersArray : [String: String] { get set }
-    var contentObject : AnyObject { get set }
-    mutating func content() -> (contentLength: Int, contentString: String)
-    func headers() -> [String: String]
-    func statusCode() -> Int
-}
-
-public class Response: ResponseProtocol {
-    public var headersArray: [String : String] = ["Server" : "Swifter \(HttpServer.VERSION)"]
-    public var contentObject : AnyObject = ""
-//    typealias OK = getStatusCode;()
-    
-    public init(contentObject: AnyObject) {
-        self.contentObject = contentObject
-    }
-    
-    public func content() -> (contentLength: Int, contentString: String) {
-        let contentString = String(contentObject);
-        let data = [UInt8](contentString.utf8)
-        return (data.count, contentString)
-    }
-    
-    public func headers() -> [String: String] {
-        return headersArray
-    }
-    
-    public func statusCode() -> Int {
-        return HttpResponse.NotFound.statusCode()
-    }
-    
-    public func reasonPhrase() -> String {
-        return HttpResponse.NotFound.reasonPhrase()
-    }
-    
-    public func getStatusCode() -> Int {
-        return HttpResponse.NotFound.statusCode()
-    }
-}

+ 0 - 17
Sources/TextResponse.swift

@@ -1,17 +0,0 @@
-//
-//  TextResponse.swift
-//  Swifter
-//
-//  Created by Dawid Szymczak on 15/08/16.
-//  Copyright © 2016 Damian Kołakowski. All rights reserved.
-//
-
-import Foundation
-
-public class TextResponse: Response {
-    public override func content() -> (contentLength: Int, contentString: String) {
-        let contentString = String(self.contentObject)
-        let data = [UInt8](contentString.utf8)
-        return (data.count, contentString)
-    }
-}

+ 0 - 45
XCode/Swifter.xcodeproj/project.pbxproj

@@ -31,21 +31,6 @@
 		269B47981D3AAAE20042D137 /* Errno.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C76B2A11D369C9D00D35BFB /* Errno.swift */; };
 		269B47991D3AAAE20042D137 /* String+BASE64.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C76B6F61D2C44F30030FC98 /* String+BASE64.swift */; };
 		269B47A71D3AAC4F0042D137 /* SwiftertvOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 269B47A51D3AAC4F0042D137 /* SwiftertvOS.h */; settings = {ATTRIBUTES = (Public, ); }; };
-		5589AF0D1D62022A00ACB03F /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF0B1D62022A00ACB03F /* Response.swift */; };
-		5589AF151D62385F00ACB03F /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF0B1D62022A00ACB03F /* Response.swift */; };
-		5589AF161D62386000ACB03F /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF0B1D62022A00ACB03F /* Response.swift */; };
-		5589AF171D62388D00ACB03F /* HtmlResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF111D622BBF00ACB03F /* HtmlResponse.swift */; };
-		5589AF181D62388D00ACB03F /* HtmlResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF111D622BBF00ACB03F /* HtmlResponse.swift */; };
-		5589AF191D62388E00ACB03F /* HtmlResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF111D622BBF00ACB03F /* HtmlResponse.swift */; };
-		5589AF1A1D6238A200ACB03F /* CustomResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF131D622C0D00ACB03F /* CustomResponse.swift */; };
-		5589AF1B1D6238A300ACB03F /* CustomResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF131D622C0D00ACB03F /* CustomResponse.swift */; };
-		5589AF1C1D6238A500ACB03F /* CustomResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF131D622C0D00ACB03F /* CustomResponse.swift */; };
-		5589AF1D1D62431400ACB03F /* JsonResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF0F1D6222E200ACB03F /* JsonResponse.swift */; };
-		5589AF1E1D62431500ACB03F /* JsonResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF0F1D6222E200ACB03F /* JsonResponse.swift */; };
-		5589AF1F1D62431600ACB03F /* JsonResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF0F1D6222E200ACB03F /* JsonResponse.swift */; };
-		5589AF221D62454900ACB03F /* TextResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF201D62451500ACB03F /* TextResponse.swift */; };
-		5589AF231D62454900ACB03F /* TextResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF201D62451500ACB03F /* TextResponse.swift */; };
-		5589AF241D62454A00ACB03F /* TextResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5589AF201D62451500ACB03F /* TextResponse.swift */; };
 		7AE893EA1C05127900A29F63 /* SwifteriOS.h in Headers */ = {isa = PBXBuildFile; fileRef = 7AE893E91C05127900A29F63 /* SwifteriOS.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7AE893FE1C0512C400A29F63 /* SwifterMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 7AE893FD1C0512C400A29F63 /* SwifterMac.h */; settings = {ATTRIBUTES = (Public, ); }; };
 		7AE8940D1C05151100A29F63 /* Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 7AE8940C1C05151100A29F63 /* Launch Screen.storyboard */; };
@@ -155,11 +140,6 @@
 		269B47A11D3AAAE20042D137 /* Swifter.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Swifter.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		269B47A41D3AAC4F0042D137 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		269B47A51D3AAC4F0042D137 /* SwiftertvOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SwiftertvOS.h; sourceTree = "<group>"; };
-		5589AF0B1D62022A00ACB03F /* Response.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Response.swift; sourceTree = "<group>"; };
-		5589AF0F1D6222E200ACB03F /* JsonResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = JsonResponse.swift; sourceTree = "<group>"; };
-		5589AF111D622BBF00ACB03F /* HtmlResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HtmlResponse.swift; sourceTree = "<group>"; };
-		5589AF131D622C0D00ACB03F /* CustomResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CustomResponse.swift; sourceTree = "<group>"; };
-		5589AF201D62451500ACB03F /* TextResponse.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TextResponse.swift; sourceTree = "<group>"; };
 		7AE893E71C05127900A29F63 /* Swifter.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Swifter.framework; sourceTree = BUILT_PRODUCTS_DIR; };
 		7AE893E91C05127900A29F63 /* SwifteriOS.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SwifteriOS.h; sourceTree = "<group>"; };
 		7AE893EB1C05127900A29F63 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
@@ -308,11 +288,6 @@
 				7C76B6F81D2C44F30030FC98 /* String+SHA1.swift */,
 				7C76B6F91D2C44F30030FC98 /* WebSockets.swift */,
 				7C76B2A11D369C9D00D35BFB /* Errno.swift */,
-				5589AF0F1D6222E200ACB03F /* JsonResponse.swift */,
-				5589AF201D62451500ACB03F /* TextResponse.swift */,
-				5589AF131D622C0D00ACB03F /* CustomResponse.swift */,
-				5589AF111D622BBF00ACB03F /* HtmlResponse.swift */,
-				5589AF0B1D62022A00ACB03F /* Response.swift */,
 			);
 			name = Sources;
 			path = ../Sources;
@@ -577,7 +552,6 @@
 					};
 					7AE893FA1C0512C400A29F63 = {
 						CreatedOnToolsVersion = 7.1;
-						DevelopmentTeam = GW7K53MMSU;
 					};
 					7C839B6D19422CFF003A6950 = {
 						CreatedOnToolsVersion = 6.0;
@@ -674,11 +648,8 @@
 				269B47881D3AAAE20042D137 /* HttpResponse.swift in Sources */,
 				269B47891D3AAAE20042D137 /* Scopes.swift in Sources */,
 				269B478A1D3AAAE20042D137 /* Process.swift in Sources */,
-				5589AF1C1D6238A500ACB03F /* CustomResponse.swift in Sources */,
 				269B478B1D3AAAE20042D137 /* HttpParser.swift in Sources */,
-				5589AF161D62386000ACB03F /* Response.swift in Sources */,
 				269B478C1D3AAAE20042D137 /* String+Misc.swift in Sources */,
-				5589AF1F1D62431600ACB03F /* JsonResponse.swift in Sources */,
 				269B478D1D3AAAE20042D137 /* WebSockets.swift in Sources */,
 				269B478E1D3AAAE20042D137 /* HttpServer.swift in Sources */,
 				269B478F1D3AAAE20042D137 /* HttpRequest.swift in Sources */,
@@ -686,9 +657,7 @@
 				269B47911D3AAAE20042D137 /* File.swift in Sources */,
 				269B47921D3AAAE20042D137 /* Socket+File.swift in Sources */,
 				269B47931D3AAAE20042D137 /* Socket.swift in Sources */,
-				5589AF191D62388E00ACB03F /* HtmlResponse.swift in Sources */,
 				269B47941D3AAAE20042D137 /* HttpServerIO.swift in Sources */,
-				5589AF241D62454A00ACB03F /* TextResponse.swift in Sources */,
 				269B47951D3AAAE20042D137 /* Files.swift in Sources */,
 				269B47961D3AAAE20042D137 /* HttpRouter.swift in Sources */,
 				269B47971D3AAAE20042D137 /* String+SHA1.swift in Sources */,
@@ -705,11 +674,8 @@
 				7C76B7171D2C45780030FC98 /* HttpResponse.swift in Sources */,
 				7C76B7211D2C45870030FC98 /* Scopes.swift in Sources */,
 				7C76B71F1D2C45840030FC98 /* Process.swift in Sources */,
-				5589AF1A1D6238A200ACB03F /* CustomResponse.swift in Sources */,
 				7C76B7131D2C45730030FC98 /* HttpParser.swift in Sources */,
-				5589AF151D62385F00ACB03F /* Response.swift in Sources */,
 				7C76B7271D2C458F0030FC98 /* String+Misc.swift in Sources */,
-				5589AF1D1D62431400ACB03F /* JsonResponse.swift in Sources */,
 				7C76B72B1D2C45940030FC98 /* WebSockets.swift in Sources */,
 				7C76B71B1D2C457E0030FC98 /* HttpServer.swift in Sources */,
 				7C76B7151D2C45760030FC98 /* HttpRequest.swift in Sources */,
@@ -717,9 +683,7 @@
 				7C76B70F1D2C456D0030FC98 /* File.swift in Sources */,
 				7C76B29F1D369BEC00D35BFB /* Socket+File.swift in Sources */,
 				7C76B7231D2C45890030FC98 /* Socket.swift in Sources */,
-				5589AF171D62388D00ACB03F /* HtmlResponse.swift in Sources */,
 				7C76B71D1D2C45820030FC98 /* HttpServerIO.swift in Sources */,
-				5589AF221D62454900ACB03F /* TextResponse.swift in Sources */,
 				7C76B7111D2C45710030FC98 /* Files.swift in Sources */,
 				7C76B7191D2C457C0030FC98 /* HttpRouter.swift in Sources */,
 				7C76B7291D2C45920030FC98 /* String+SHA1.swift in Sources */,
@@ -736,11 +700,8 @@
 				7C76B7181D2C45790030FC98 /* HttpResponse.swift in Sources */,
 				7C76B7221D2C45870030FC98 /* Scopes.swift in Sources */,
 				7C76B7201D2C45840030FC98 /* Process.swift in Sources */,
-				5589AF1B1D6238A300ACB03F /* CustomResponse.swift in Sources */,
 				7C76B7141D2C45730030FC98 /* HttpParser.swift in Sources */,
-				5589AF0D1D62022A00ACB03F /* Response.swift in Sources */,
 				7C76B7281D2C458F0030FC98 /* String+Misc.swift in Sources */,
-				5589AF1E1D62431500ACB03F /* JsonResponse.swift in Sources */,
 				7C76B72C1D2C45950030FC98 /* WebSockets.swift in Sources */,
 				7C76B71C1D2C457E0030FC98 /* HttpServer.swift in Sources */,
 				7C76B7161D2C45760030FC98 /* HttpRequest.swift in Sources */,
@@ -748,9 +709,7 @@
 				7C76B7101D2C456D0030FC98 /* File.swift in Sources */,
 				7C76B2A01D369BEC00D35BFB /* Socket+File.swift in Sources */,
 				7C76B7241D2C458A0030FC98 /* Socket.swift in Sources */,
-				5589AF181D62388D00ACB03F /* HtmlResponse.swift in Sources */,
 				7C76B71E1D2C45820030FC98 /* HttpServerIO.swift in Sources */,
-				5589AF231D62454900ACB03F /* TextResponse.swift in Sources */,
 				7C76B7121D2C45710030FC98 /* Files.swift in Sources */,
 				7C76B71A1D2C457C0030FC98 /* HttpRouter.swift in Sources */,
 				7C76B72A1D2C45920030FC98 /* String+SHA1.swift in Sources */,
@@ -948,7 +907,6 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				CODE_SIGN_IDENTITY = "Mac Developer";
-				"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";
 				COMBINE_HIDPI_IMAGES = YES;
 				CURRENT_PROJECT_VERSION = 1.2.5;
 				DEBUG_INFORMATION_FORMAT = dwarf;
@@ -965,7 +923,6 @@
 				MTL_ENABLE_DEBUG_INFO = YES;
 				PRODUCT_BUNDLE_IDENTIFIER = pl.kolakowski.SwifterMac;
 				PRODUCT_NAME = Swifter;
-				PROVISIONING_PROFILE = "";
 				SDKROOT = macosx;
 				SKIP_INSTALL = YES;
 				VERSIONING_SYSTEM = "apple-generic";
@@ -977,7 +934,6 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				CODE_SIGN_IDENTITY = "Mac Developer";
-				"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer";
 				COMBINE_HIDPI_IMAGES = YES;
 				COPY_PHASE_STRIP = NO;
 				CURRENT_PROJECT_VERSION = 1.2.5;
@@ -995,7 +951,6 @@
 				MTL_ENABLE_DEBUG_INFO = NO;
 				PRODUCT_BUNDLE_IDENTIFIER = pl.kolakowski.SwifterMac;
 				PRODUCT_NAME = Swifter;
-				PROVISIONING_PROFILE = "";
 				SDKROOT = macosx;
 				SKIP_INSTALL = YES;
 				VERSIONING_SYSTEM = "apple-generic";