Skip to content

Instantly share code, notes, and snippets.

@paralin
paralin / parse-column-type.go
Created February 16, 2023 10:09
go parse column type with vitess
package mysql
import (
"strings"
"github.com/dolthub/vitess/go/vt/sqlparser"
"github.com/pkg/errors"
)
// ParseColumnType parses a column type string to a sqlparser.ColumnType.
@paralin
paralin / gist:05668aef741b6a8a3ce943a0e3a1c61e
Created February 15, 2023 10:07
ChatGPT = CI all the things???
// ChatGPT wrote this
package main
import (
"fmt"
"go/ast"
"go/parser"
"go/token"
"go/types"
@paralin
paralin / refactor.go
Last active February 15, 2023 09:59
ChatGPT is kind of crazy
// Written by ChatGPT w/ prompts from @paralin
package main
import (
"bytes"
"flag"
"fmt"
"go/ast"
"go/format"
@paralin
paralin / defconfig
Created October 10, 2022 05:50
skiffos defconfig for v86
CONFIG_WERROR=y
CONFIG_KERNEL_LZ4=y
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_USELIB=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_TASKSTATS=y
@paralin
paralin / defconfig
Created July 19, 2022 07:26
tobetter defconfig 5.18.x
# CONFIG_9P_FSCACHE is not set
# CONFIG_AHCI_CEVA is not set
# CONFIG_AHCI_QORIQ is not set
# CONFIG_AHCI_XGENE is not set
# CONFIG_AQUANTIA_PHY is not set
# CONFIG_ARCH_ACTIONS is not set
# CONFIG_ARCH_ALPINE is not set
# CONFIG_ARCH_APPLE is not set
# CONFIG_ARCH_BCM2835 is not set
# CONFIG_ARCH_BCM4908 is not set
@paralin
paralin / streaming-iterables.md
Created June 24, 2022 00:16 — forked from alanshaw/streaming-iterables.md
Streaming iterables WAT?

Streaming iterables

Your friends from pull stream, but in terms of async iterators.

source it

A "source" is something that can be consumed. It is an iterable object.

const ints = {
@paralin
paralin / panic.log
Created May 17, 2022 07:29
allwinner/d1: kernel panic due to cpu accounting
[ 2.171119] SkiffOS init: finding unused loop device...
[ 2.176694] SkiffOS init: allocating loop device /dev/loop0...
[ 2.183830] loop0: detected capacity change from 0 to 247072
[ 2.212447] SkiffOS init: mounting /boot/rootfs.squashfs on /dev/loop0 to /skiff-overlays/image...
[ 2.231893] SkiffOS init: mounting tmpfs size=1G,uid=0,gid=0,mode=0755 to /skiff-overlays/system-tmp...
[ 2.241761] SkiffOS init: mounting overlayfs lowerdir=/skiff-overlays/image,upperdir=/skiff-overlays/system-tmp/upper,workdir=/skiff-overlays/system-tmp/work to /skiff-overlays/system...
[ 2.259028] SkiffOS init: mounting / to /skiff-overlays/system/mnt/persist...
[ 2.276743] printk: skiff-init-squa: 4 output lines suppressed due to ratelimiting
[ 2.980541] systemd[1]: System time before build time, advancing clock.
[ 3.076408] systemd[1]: systemd 250 running in system mode (+PAM -AUDIT -SELINUX -APPARMOR -IMA -SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL -ACL +BLKID +CURL -ELFUTILS -FIDO2 -IDN2 -IDN +IPTC +K
@paralin
paralin / main.go
Created April 4, 2022 17:40
Podman: check for container start failure
// Check if the pod already exists.
c.le.Debug("podman: checking if pod exists")
podExists, err := engine.PodExists(ctx, podObj.Name)
if err != nil {
return err
}
if podExists.Value {
c.le.Debug("podman: bringing down old pod version")
if err := runKubeDown(ctx); err != nil {
return err
@paralin
paralin / expr-dashes-in-variables.go
Created January 7, 2022 00:00
antomedv/expr: dashes in variable names
package main
import (
"fmt"
"github.com/antonmedv/expr"
)
func main() {
v, err := expr.Eval("props[\"effective-ranking\"]", map[string]interface{}{
@paralin
paralin / keyed-multi-writer.go
Created December 13, 2021 22:10
keyed multi writer
package keyedmultiwriter
import (
"io"
"sort"
"sync"
)
// KeyedMultiWriter tees a Write stream to multiple writers.
//