Skip to content

Instantly share code, notes, and snippets.

Avatar
👑
keep calm and git push -f

Ning Sun sunng87

👑
keep calm and git push -f
View GitHub Profile
@sunng87
sunng87 / gist:d4c06119224cd9ee4a927fccbb591af0
Created May 13, 2020
regex for matching json key/value
View gist:d4c06119224cd9ee4a927fccbb591af0
"(tomcat|jetty)":\s*"((\\"|[^"])*)",?
View gist:f93aa839b96cc16e13ba2e6d594cc4fb
[global]
### Display ###
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
View camelcase-to-delimetered.clj
(defn camelcase-to-delimitered [k delimeter]
(->> (clojure.string/split k #"(?=[A-Z])")
(map clojure.string/lower-case)
(clojure.string/join delimeter)))
(defn camelcase-to-delimitered-keys [m delimiter]
(let [trans (fn [[k v]]
(let [[strfn keyfn] (if (keyword? k)
[name keyword]
[identity identity])
View gist:e75e692f01b742aaf24dc1eee588ae09
INFO [epollEventLoopGroup-2-6] 2018-08-26 11:33:10,003 Message.java:623 - Unexpected exception during request; channel = [id: 0xf72d6e2f, L:/10.233.66.7:9042 - R:/10.233.65.7:48742]
io.netty.channel.unix.Errors$NativeIoException: readAddress() failed: Connection timed out
at io.netty.channel.unix.Errors.newIOException(Errors.java:117) ~[netty-all-4.0.44.Final.jar:4.0.44.Final]
at io.netty.channel.unix.Errors.ioResult(Errors.java:138) ~[netty-all-4.0.44.Final.jar:4.0.44.Final]
at io.netty.channel.unix.FileDescriptor.readAddress(FileDescriptor.java:175) ~[netty-all-4.0.44.Final.jar:4.0.44.Final]
at io.netty.channel.epoll.AbstractEpollChannel.doReadBytes(AbstractEpollChannel.java:238) ~[netty-all-4.0.44.Final.jar:4.0.44.Final]
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:926) ~[netty-all-4.0.44.Final.jar:4.0.44.Final]
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:397
@sunng87
sunng87 / Cargo.lock.diff
Created Nov 9, 2016
Diff for Cargo lock
View Cargo.lock.diff
diff --git a/Cargo.lock b/Cargo.lock
index a2e127d..d593db6 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2,119 +2,191 @@
name = "cargo-release"
version = "0.6.1-pre"
dependencies = [
- "clap 2.2.5 (registry+git://crates.mirrors.ustc.edu.cn/index)",
- "quick-error 0.1.4 (registry+git://crates.mirrors.ustc.edu.cn/index)",
@sunng87
sunng87 / InfQueue.java
Created Apr 24, 2016
A file base blocking queue
View InfQueue.java
import com.squareup.tape.FileObjectQueue;
import java.io.File;
import java.io.IOException;
import java.io.Serializable;
import java.util.UUID;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.ReentrantLock;
@sunng87
sunng87 / verify-cert.sh
Created Mar 22, 2016
test if p12 certificate is valid or not
View verify-cert.sh
#!/usr/bin/bash
TEMP_KEY=/tmp/tmpkey
openssl pkcs12 -in $1 -nodes -out $TEMP_KEY
openssl s_client -connect gateway.push.apple.com:2195 -cert $TEMP_KEY -key $TEMP_KEY
@sunng87
sunng87 / i3blocks_openweathermap.md
Last active Aug 21, 2018
i3blocks openweathermap
View i3blocks_openweathermap.md

openweathermap for i3blocks

dependencies

  • i3blocks
  • httpie
  • jq
  • ttf-font-icons (aur)

configuration

View keybase.md

Keybase proof

I hereby claim:

  • I am sunng87 on github.
  • I am sunng (https://keybase.io/sunng) on keybase.
  • I have a public key whose fingerprint is ED91 D234 CAE9 7367 9AD4 6EA6 2E27 E20F C4DE EA3E

To claim this, I am signing this object:

@sunng87
sunng87 / reflection.clj
Created Nov 20, 2015
clojure: access private field/method via reflection
View reflection.clj
(defn invoke-private-method [obj fn-name-string & args]
(let [m (first (filter (fn [x] (.. x getName (equals fn-name-string)))
(.. obj getClass getDeclaredMethods)))]
(. m (setAccessible true))
(. m (invoke obj args))))
(defn private-field [obj fn-name-string]
(let [m (.. obj getClass (getDeclaredField fn-name-string))]
(. m (setAccessible true))
(. m (get obj))))
You can’t perform that action at this time.