The opam repository for my Advent of Agentic Humps 2025

initial

+186
+35
.tangled/workflows/build.yml
··· 1 + when: 2 + - event: ["push", "pull_request"] 3 + branch: ["main"] 4 + 5 + engine: nixery 6 + 7 + dependencies: 8 + nixpkgs: 9 + - shell 10 + - stdenv 11 + - findutils 12 + - binutils 13 + - libunwind 14 + - ncurses 15 + - opam 16 + - git 17 + - gawk 18 + - gnupatch 19 + - gnum4 20 + - gnumake 21 + - gnutar 22 + - gnused 23 + - gnugrep 24 + - diffutils 25 + - gzip 26 + - bzip2 27 + - gcc 28 + - ocaml 29 + 30 + steps: 31 + - name: opam 32 + command: | 33 + opam init --disable-sandboxing -any 34 + opam repository add aoah-overlay . 35 + opam install -v --with-test $(./list-packages.sh)
+4
README.md
··· 1 + This is an overlay opam repository for the dev branches of all 2 + Anil Madhavapeddy's agentically coded OCaml packages. 3 + 4 + Metadata 100% brought to you by my friend Claude (Code).
+3
list-packages.sh
··· 1 + #!/bin/sh 2 + # List all packages in this opam repository 3 + find packages -name opam -type f | sed 's|packages/[^/]*/\([^/]*\)/opam|\1|' | sort
+37
packages/bytesrw-eio/bytesrw-eio.dev/opam
··· 1 + opam-version: "2.0" 2 + synopsis: "Bytesrw readers and writers for Eio" 3 + description: 4 + "Provides Bytesrw.Bytes.Reader and Writer adapters for Eio Flows" 5 + maintainer: ["Anil Madhavapeddy <anil@recoil.org>"] 6 + authors: ["Anil Madhavapeddy"] 7 + license: "ISC" 8 + homepage: "https://tangled.org/@anil.recoil.org/ocaml-bytesrw-eio" 9 + bug-reports: "https://tangled.org/@anil.recoil.org/ocaml-bytesrw-eio/issues" 10 + dev-repo: "git+https://tangled.org/@anil.recoil.org/ocaml-bytesrw-eio.git" 11 + depends: [ 12 + "dune" {>= "3.18"} 13 + "ocaml" {>= "5.0"} 14 + "bytesrw" {>= "0.2"} 15 + "eio" {>= "1.0"} 16 + "odoc" {with-doc} 17 + "alcotest" {with-test & >= "1.7.0"} 18 + "eio_main" {with-test} 19 + ] 20 + build: [ 21 + ["dune" "subst"] {dev} 22 + [ 23 + "dune" 24 + "build" 25 + "-p" 26 + name 27 + "-j" 28 + jobs 29 + "@install" 30 + "@runtest" {with-test} 31 + "@doc" {with-doc} 32 + ] 33 + ] 34 + x-maintenance-intent: ["(latest)"] 35 + url { 36 + src: "git+https://tangled.org/@anil.recoil.org/ocaml-bytesrw-eio.git#main" 37 + }
+36
packages/yamlrw-eio/yamlrw-eio.dev/opam
··· 1 + opam-version: "2.0" 2 + synopsis: "Eio support for Yamlrw" 3 + description: 4 + "Eio-based streaming I/O for Yamlrw. Provides efficient async YAML parsing and emission using the Eio effects-based concurrency library. Requires OCaml 5.0 or later." 5 + maintainer: ["Anil Madhavapeddy <anil@recoil.org>"] 6 + authors: ["Anil Madhavapeddy"] 7 + license: "ISC" 8 + homepage: "https://tangled.org/@anil.recoil.org/ocaml-yamlrw" 9 + bug-reports: "https://tangled.org/@anil.recoil.org/ocaml-yamlrw/issues" 10 + dev-repo: "git+https://tangled.org/@anil.recoil.org/ocaml-yamlrw.git" 11 + depends: [ 12 + "dune" {>= "3.18"} 13 + "ocaml" {>= "5.0.0"} 14 + "yamlrw" {= version} 15 + "bytesrw-eio" 16 + "eio" {>= "1.1"} 17 + "odoc" {with-doc} 18 + ] 19 + build: [ 20 + ["dune" "subst"] {dev} 21 + [ 22 + "dune" 23 + "build" 24 + "-p" 25 + name 26 + "-j" 27 + jobs 28 + "@install" 29 + "@runtest" {with-test} 30 + "@doc" {with-doc} 31 + ] 32 + ] 33 + x-maintenance-intent: ["(latest)"] 34 + url { 35 + src: "git+https://tangled.org/@anil.recoil.org/ocaml-yamlrw.git#main" 36 + }
+35
packages/yamlrw-unix/yamlrw-unix.dev/opam
··· 1 + opam-version: "2.0" 2 + synopsis: "Unix I/O for Yamlrw" 3 + description: 4 + "Unix file and channel operations for Yamlrw. Provides convenient functions for reading and writing YAML files using Unix I/O." 5 + maintainer: ["Anil Madhavapeddy <anil@recoil.org>"] 6 + authors: ["Anil Madhavapeddy"] 7 + license: "ISC" 8 + homepage: "https://tangled.org/@anil.recoil.org/ocaml-yamlrw" 9 + bug-reports: "https://tangled.org/@anil.recoil.org/ocaml-yamlrw/issues" 10 + dev-repo: "git+https://tangled.org/@anil.recoil.org/ocaml-yamlrw.git" 11 + depends: [ 12 + "dune" {>= "3.18"} 13 + "ocaml" {>= "4.14.0"} 14 + "yamlrw" {= version} 15 + "bytesrw" 16 + "odoc" {with-doc} 17 + ] 18 + build: [ 19 + ["dune" "subst"] {dev} 20 + [ 21 + "dune" 22 + "build" 23 + "-p" 24 + name 25 + "-j" 26 + jobs 27 + "@install" 28 + "@runtest" {with-test} 29 + "@doc" {with-doc} 30 + ] 31 + ] 32 + x-maintenance-intent: ["(latest)"] 33 + url { 34 + src: "git+https://tangled.org/@anil.recoil.org/ocaml-yamlrw.git#main" 35 + }
+36
packages/yamlrw/yamlrw.dev/opam
··· 1 + opam-version: "2.0" 2 + synopsis: "Pure OCaml YAML 1.2 parser and emitter" 3 + description: 4 + "Yamlrw is a pure OCaml implementation of YAML 1.2 parsing and emission. It provides both a high-level JSON-compatible interface for simple data interchange and a lower-level streaming API for fine-grained control over parsing and emission. The library works on all OCaml platforms without C dependencies." 5 + maintainer: ["Anil Madhavapeddy <anil@recoil.org>"] 6 + authors: ["Anil Madhavapeddy"] 7 + license: "ISC" 8 + homepage: "https://tangled.org/@anil.recoil.org/ocaml-yamlrw" 9 + bug-reports: "https://tangled.org/@anil.recoil.org/ocaml-yamlrw/issues" 10 + dev-repo: "git+https://tangled.org/@anil.recoil.org/ocaml-yamlrw.git" 11 + depends: [ 12 + "dune" {>= "3.18"} 13 + "ocaml" {>= "4.14.0"} 14 + "bytesrw" 15 + "cmdliner" 16 + "odoc" {with-doc} 17 + "alcotest" {with-test} 18 + ] 19 + build: [ 20 + ["dune" "subst"] {dev} 21 + [ 22 + "dune" 23 + "build" 24 + "-p" 25 + name 26 + "-j" 27 + jobs 28 + "@install" 29 + "@runtest" {with-test} 30 + "@doc" {with-doc} 31 + ] 32 + ] 33 + x-maintenance-intent: ["(latest)"] 34 + url { 35 + src: "git+https://tangled.org/@anil.recoil.org/ocaml-yamlrw.git#main" 36 + }