tl;dr use port forwarding through USB connection
https://developer.chrome.com/docs/devtools/remote-debugging/local-server/
This enables using many https-only features granted to localhost such as MediaRecorder.
tl;dr use port forwarding through USB connection
https://developer.chrome.com/docs/devtools/remote-debugging/local-server/
This enables using many https-only features granted to localhost such as MediaRecorder.
based on https://lvvme.com/blog/posts/2018/12/15_debugwebkit/
tested with Xcode 12.5.1
in terminal
git clone https://github.com/WebKit/WebKit.git WebKit
cd WebKit
sudo Tools/Scripts/configure-xcode-for-embedded-development
open WebKit.xcworkspace
| struct DuplicateKeyChecker<Key: Hashable, Value>: ExpressibleByDictionaryLiteral { | |
| init(dictionaryLiteral elements: (Key, Value)...) { | |
| var count: [Key: Int] = [:] | |
| for (key, _) in elements { | |
| count[key] = (count[key] ?? 0) + 1 | |
| } | |
| print(#function, "duplicate keys:", count.filter { $0.value > 1 }) | |
| } | |
| } |
| #!/bin/sh | |
| xcodebuild archive -scheme "KissXML (iOS)" -destination "generic/platform=iOS" -archivePath iOS SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES | |
| xcodebuild archive -scheme "KissXML (iOS)" -destination "platform=macOS,variant=Mac Catalyst" -archivePath catalyst SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES | |
| xcodebuild archive -scheme "KissXML (iOS)" -destination "generic/platform=iOS Simulator" -archivePath simulator SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES | |
| FRAMEWORKS="" | |
| for framework in iOS catalyst simulator | |
| do | |
| FRAMEWORKS="$FRAMEWORKS -framework $framework.xcarchive/Products/Library/Frameworks/KissXML.framework" |
| if let normalized = url.withUnsafeFileSystemRepresentation({ fileSystemRepresentation -> URL? in | |
| guard let bytes = fileSystemRepresentation, let path = String(utf8String: bytes) else { | |
| print("not UTF8?", fileSystemRepresentation) | |
| return nil | |
| } | |
| return URL(fileURLWithPath: path.decomposedStringWithCanonicalMapping) | |
| }), | |
| normalized != url { | |
| do { | |
| try FileManager.default.moveItem(at: url, to: normalized) |
| ... | |
| JSC::callCustomSetter(...) | |
| WebCore::setJSHTMLMetaElementContentFunction(...) | |
| ... | |
| WebCore::HTMLMetaElement::process() | |
| WebCore::Document::processViewport(...) | |
| ... | |
| WebCore::Chrome::dispatchViewportPropertiesDidChange(...) | |
| WebKit::WebChromeClient::dispatchViewportPropertiesDidChange(...) | |
| WebKit::WebPage::viewportPropertiesDidChange(...) |
| In project navigator, navigate to workspace > Pods > Pods > {Pod name here} > Support files > {Pod name here}.xcconfig. | |
| Copy relevant path from HEADER_SEARCH_PATHS and paste at the end of SWIFT_INCLUDE_PATHS. | |
| For Kanna, copy and paste libxml2 include path. |
| pod playgrounds --platform osx {Pod name here} |
| error: repl.swift:2:1: error: 'URLQueryItem' is only available on OS X 10.10 or newer | |
| swift -target x86_64-macosx10.12 |