Skip to content

Instantly share code, notes, and snippets.

View norio-nomura's full-sized avatar

Norio Nomura norio-nomura

View GitHub Profile
@norio-nomura
norio-nomura / local.internal.docker.host.bonjour.plist
Created October 5, 2018 00:16
dns-sd(1)を使い、VMware Fusionのホスト側NATインターフェイス(172.16.241.1)を`host.docker.internal.local`としてアドバタイズする
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>local.internal.docker.host.bonjour</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/dns-sd</string>
<string>-P</string>
import Dispatch
import Foundation
var setCookieRequest = URLRequest(url: URL(string: "http://httpbin.org/cookies/set?freeform=test")!)
let setCookieTask = URLSession.shared.dataTask(with: setCookieRequest) { _, _, error in
guard error == nil else { fatalError("failed to set cookie!") }
var request = URLRequest(url: URL(string: "http://httpbin.org/post")!)
request.httpMethod = "POST"
request.httpBody = "{\"key\":\"value\"}".data(using: .utf8)
@norio-nomura
norio-nomura / terminal.sh-session
Last active August 26, 2018 06:38
How to use `thread backtrace -e true` in `lldb`.
$ echo 'import Dispatch; func f() {}; DispatchQueue.global(qos: .default).async { f() }; dispatchMain()'|swiftc -
$ lldb
(lldb) target create main
Current executable set to 'main' (x86_64).
(lldb) b f
Breakpoint 1: 9 locations.
(lldb) process launch -v DYLD_LIBRARY_PATH=/usr/lib/system/introspection -v DYLD_INSERT_LIBRARIES=/Applications/Xcode.app/Contents/Developer/usr/lib/libBacktraceRecording.dylib
Process 33297 launched: '/Users/norio/github/swift-dev/SourceKitten/main' (x86_64)
Process 33297 stopped
* thread #2, queue = 'com.apple.root.default-qos', stop reason = breakpoint 1.1
key.request: source.request.editor.open
key.name: "2178448306979356082"
key.sourcetext: "/* 👨‍👩‍👧‍👦👨‍👩‍👧‍👦👨‍👩‍👧‍👦 */\n`init`(a: Int, b: Int, c: Int, d: Int, e: Int, f: Int) {}"
@norio-nomura
norio-nomura / gist:940027
Created April 25, 2011 01:04
Twitter で共有
javascript:(function(){
var w = window,
d = w.document,
enc = w.encodeURIComponent,
j = (w.getSelection || d.getSelection),
k = d.selection,
l = d.location,
t = d.title,
s = (j ? j() : (k ? k.createRange().text : 0)),
s2 = ((s.toString() === '') ? t : (t + ' "' + s + '"'));
@norio-nomura
norio-nomura / update-alternatives.terminal.sh-session
Last active April 17, 2018 02:28
[one-liner] update-alternatives for llvm on ubuntu
LLVM_VERSION=`cd /usr/bin; ls llvm-config-*|sed 's/llvm-config-//'` && \
(cd /usr/bin; ls -1 llvm*-$LLVM_VERSION) | sed -e '/llvm-config/d' -e "s/-$LLVM_VERSION//"| \
awk -v LLVM_VERSION=$LLVM_VERSION 'BEGIN{print "update-alternatives --force --install /usr/bin/llvm-config llvm-config /usr/bin/llvm-config-"LLVM_VERSION" 200 \\"}{print "--slave /usr/bin/"$0, $0, "/usr/bin/"$0"-"LLVM_VERSION" \\" }'|sh
@norio-nomura
norio-nomura / symbolicate-crash.terminal.sh-session
Last active April 16, 2018 15:25
Symbolicate crash from core on Linux
$ docker run --privileged -it -v `pwd`:`pwd` -w `pwd` --rm norionomura/swift:41
root@e8fbffcc2ed0:~# ulimit -c unlimited
root@e8fbffcc2ed0:~# echo 'let i: Int? = nil; i!'>main.swift
root@e8fbffcc2ed0:~# swift main.swift
main.swift:1:21: warning: expression of type 'Int' is unused
let i: Int? = nil; i!
~^
Fatal error: Unexpectedly found nil while unwrapping an Optional value
Current stack trace:
0 libswiftCore.so 0x00007fcc7bd96750 _swift_stdlib_reportFatalError + 171
@norio-nomura
norio-nomura / indirect.sil
Created July 22, 2015 03:25
xcrun swiftc -emit-sil indirect.swift -o -|xcrun swift-demangle > indirect.sil
sil_stage canonical
import Builtin
import Swift
import SwiftShims
// static Swift.Process._argc : Swift.Int32
sil_global [fragile] @static Swift.Process._argc : Swift.Int32 : $Int32
// globalinit_33_1BDF70FFC18749BAB495A73B459ED2F0_token5
@norio-nomura
norio-nomura / sourcekit-crash.terminal.sh-session
Created February 5, 2018 06:37
SourceKit crashes with Assertion `(!value || Kind == tok::identifier) && "only identifiers can be escaped identifiers"' failed. on Swift 4.1 for Linux
$ docker run --privileged -it --rm norionomura/swift:4120180201a
root@ed1c03d3a776:/# git clone https://github.com/realm/SwiftLint.git -b nn-swift-4.1
Cloning into 'SwiftLint'...
remote: Counting objects: 23681, done.
remote: Compressing objects: 100% (165/165), done.
remote: Total 23681 (delta 95), reused 145 (delta 74), pack-reused 23440
Receiving objects: 100% (23681/23681), 6.16 MiB | 1.70 MiB/s, done.
Resolving deltas: 100% (16180/16180), done.
Checking connectivity... done.
root@ed1c03d3a776:/# cd SwiftLint
@norio-nomura
norio-nomura / OffsetMapTests.testOffsetMapContainsDeclarationOffsetWithDocCommentButNotAlreadyDocumented()-on-Swift-4.1
Created February 3, 2018 07:16
Result of `OffsetMapTests.testOffsetMapContainsDeclarationOffsetWithDocCommentButNotAlreadyDocumented()`
{
key.offset: 0,
key.length: 105,
key.diagnostic_stage: source.diagnostic.stage.swift.parse,
key.syntaxmap: [
{
key.kind: source.lang.swift.syntaxtype.keyword,
key.offset: 0,
key.length: 6
},