Skip to content

Instantly share code, notes, and snippets.

Oh well

Irakli Gozalishvili Gozala

Oh well
View GitHub Profile
View fail.log
1) ipfs --upgrade-cidv0-in-output=true add --chunker=rabin-262141 --trickle=false --raw-leaves=false --cid-version=0 ../testdata/large_repeat_1GiB.zst
2) ipfs add --chunker=rabin-262141 --trickle=false --raw-leaves=false --cid-version=1 ../testdata/large_repeat_1GiB.zst
3) ipfs --upgrade-cidv0-in-output=true add --chunker=rabin-262141 --trickle=false --raw-leaves=true --cid-version=0 ../testdata/large_repeat_1GiB.zst
4) ipfs add --chunker=rabin-262141 --trickle=false --raw-leaves=true --cid-version=1 ../testdata/large_repeat_1GiB.zst
5) ipfs --upgrade-cidv0-in-output=true add --chunker=size-65535 --trickle=true --raw-leaves=false --cid-version=0 ../testdata/large_repeat_1GiB.zst
6) ipfs add --chunker=size-65535 --trickle=true --raw-leaves=false --cid-version=1 ../testdata/large_repeat_1GiB.zst
7) jsipfs add --chunker=size-65535 --trickle=true --raw-leaves=false --cid-version=1 ../testdata/large_repeat_1GiB.zst
8) ipfs --upgrade-cidv0-in-output=true add --chunker=size-262144 --trickle=true --raw-leaves=false -
Gozala / unixfs.ts
Created Jan 31, 2022
Attempt to define more clearly unixfs encoding
View unixfs.ts
import type { CID } from 'multiformats'
* Logical representation of a raw chunk of a file.
* TODO: Clarify when represenation is used instead of `FileChunk`
* representation.
export interface Raw extends PBNode {
Data: ByteView<{
Gozala / api.v0.ts
Last active Jan 6, 2022
Sketch of unixfs-importer API
View api.v0.ts
import type { CID} from "multiformats"
import { Mtime } from "ipfs-unixfs"
export interface Lib {
* Creates a directory importer that can be used to build up directory of
* files. It takes an optional queuing strategy parameter that can be used
* to specify how how many blocks can be queue internally before backpressure
* is applied and writer is blocked. This allows users to specify how much
View demo.js
import { loop, recur } from './loop.js'
export const factorial = (n) => loop((n, acc) => n <= 1 ? acc : recur(n - 1, n * acc), n, 1)
View fx.js
* @template T, X, A
* @typedef {import('./protocol').Process<T, X, A>} Process
* @template X, T
* @typedef {import('./protocol').Task<X, T>} Task
View sketch.ts
interface CID {
code: number
version: number
multihash: Uint8Array
bytes: Uint8Array
type Future<T> =
| T
| Promise<T>
Gozala /
Created Apr 2, 2020
Reproducible test case

This is illustrating issue with vscode

use async_std::task;
use juniper::{EmptyMutation, RootNode};
struct Concrete;
enum CustomName {
View schema.graphql
type Tag {
name: String! @fake(type:word)
type InlineLink {
name:String @examples(values: ["automerge", "pushpin", "local-first", "farm"])
description:String @fake(type:words)
Gozala / hypermerge.ts
Created Feb 20, 2020
Attempt to revist hypermerge interface
View hypermerge.ts
type DocID<a> = string
type Doc<a> = a
interface RepoService {
keys: KeyService
create<a>(doc: Doc<a>): Promise<DocID<a>>
read<a>(id: DocID<a>): Promise<a>
change<a>(id: DocID<a>, change: (doc: a) => void): Promise<void>
watch<a>(id: DocID<a>): AsyncIterator<a>