contributions
Most of my work in the last years landed in other people’s repositories. At InfinyOn that meant Fluvio, a streaming platform in Rust: producer performance, cluster mirroring, connectors, the Python client and the docs. At Deno it was Node.js compatibility inside the runtime, from child_process to worker debugging, plus deno_core, rusty_v8 and node_shim. Before that, the Tezos ecosystem with Marigold: TzProxy, a reverse proxy for Tezos nodes I wrote and maintained, TzStamp, and the Unity and Rust SDKs. And a few drive-by fixes elsewhere: Bun, Zig, workerd, React, piaf, This Week in Rust.
Below, the repositories where that work landed. Click one to list the pull requests.
463 merged pull requests on GitHub, 2021 to 2026. the highlights, by repository:
fluvio-community/fluvio 186 PRs 2024-02 → 2025-08
- #4591 docs: add simple fluvio path again in README
- #4590 chore: pos release fluvio 0.18.1
- #4582 chore: release fluvio v0.18.1
- #4583 chore: bump up future fluvio to 0.8.3
- #4580 chore: rename fluvio rustls features
- #4579 chore: pre release fluvio to v0.18.1-dev-4
- #4578 chore: pre release fluvio to v0.18.1-dev-3
- #4574 chore: ensure that crypto provider is set
- #4576 chore: send empty msgs from SPU as ping again
- #4575 chore: solve 1.88 clippy new rules
- #4571 chore: bump up to 0.18.1-dev-2
- #4569 chore: use rustls instead openssl
- #4559 fix: produce only on available partitions
- #4561 chore: pos release fluvio v0.18.0
- #4560 fix: check crate workspace instead each crate
- #4557 chore: version specified when publishing
- #4555 chore: release fluvio v0.18.0
- #4554 chore: pre release fluvio to v0.18.0-dev-1
- #4552 chore: bump up fluvio crates to 0.50.0
- #4549 chore: centrilize paths in root Cargo.toml
- #4548 chore: share workspace version
- #4544 chore: use tokio as runtime and update future-fluvio
- #4540 chore: bump up async-channel to v2.3.1
- #4539 chore: update rust edition to 2024
- #4533 chore: pos release fluvio v0.17.3
- #4531 chore: release fluvio 0.17.3
- #4529 fix: OutOfSpace partition status returning to online
- #4527 fix: prevent double free on storage error
- #4521 fix: out of space problems
- #4522 fix: consume large and incomplete batches
- #4520 chore: pos release fluvio v0.17.2
- #4518 chore: release fluvio 0.17.2
- #4504 fix: auto management odd pauses in consumer offset
- #4511 fix: offset evicted on retry
- #4512 chore: use right offset request in comments
- #4500 fix: consumer offset end
- #4496 chore: add key record parameter to smdk test
- #4491 chore: pos release fluvio 0.17.1
- #4486 chore: release fluvio 0.17.1
- #4484 chore: release fluvio 0.17.0
- #4482 chore: pre release fluvio 0.17.0-dev-3
- #4479 chore: set SPU_PEER_MAX_BYTES to 10mb
- #4477 chore: bump FLV_PEER_MAX_BYTES to 1gb
- #4474 fix: replication stuck when syncing large batches
- #4462 chore: pre release fluvio 0.17.0-dev-2
- #4461 chore: pre release fluvio 0.17.0-dev-1
- #4459 fix: hard delete consumer after topic delete
- #4450 fix: recalculate replicas on timeout and rejection
- #4448 fix: delete consumer after topic delete
- #4443 chore: make dedup count required
- #4441 fix: reconnect producer when spu is down
- #4430 fix: reconnect log with right offset
- #4386 feat: add deduplicate parameter to create topic using cli
- #4424 chore: pos release fluvio 0.16.1
- #4419 chore: release fluvio 0.16.1
- #4418 chore: pos release fluvio v0.16.0
- #4417 fix: retry consumer with custom domain connector
- #4415 chore: release fluvio v0.16.0
- #4408 chore: pre release fluvio 0.16.0-dev-2
- #4405 fix: commit and flush retry on other states
- #4404 docs: add description to producer record callback
- #4394 feat: consumer stream should be able to reconnect
- #4402 chore: make offset_commit async
- #4384 chore: pos release fluvio 0.15.2
- #4383 chore: add description to benchmark command
- #4381 chore: release fluvio 0.15.2
- #4375 chore: produce config builder as mutable
- #4376 fix: record too large error
- #4374 chore: pos release fluvio 0.15.1
- #4371 chore: release fluvio 0.15.1
- #4370 chore: add sleep on upgrade test
- #4368 fix: benchmark delete topic as default
- #4367 fix: fluvio time panicking on wasm
- #4366 chore: pos release fluvio 0.15.0
- #4365 chore: release fluvio 0.15.0
- #4363 feat: add benchmark table again
- #4359 fix: benchmark dead channels
- #4356 fix: benchmark default bytesizes
- #4352 perf: improve index flush
- #4350 test: fix intermittent test replica commit
- #4348 fix: benchmark with multiple producers
- #4347 fix: bytes unit on benchmark
- #4340 feat: add fluvio producer callback
- #4338 feat: add strategy config to fluvio benchmark
- #4333 feat: add latency table on fluvio-benchmark
- #4326 chore: move fbm to fluvio cli
- #4319 chore: fix clippy 1.84
- #4312 chore: release fluvio 0.14.1
- #4307 chore: use box future
- #4306 chore: wrap offset_flush return in pin<box<_>>
- #4302 chore: fix how check if a package is uploaded
- #4300 chore: release fluvio 0.14.0
- #4299 Pre release 0.14.0 dev 2
- #4298 fix: add get_action_auth_with_token again
- #4295 doc: update sm readme
- #4288 fix: not allow duplicated connectors
- #4286 fix: use info as default log level for cdk
- #4276 fix: shutdown of the cdk consumer by future not stream
- #4273 fix: shutdown of the cdk consumer
- #4275 chore: use macos-latest on ci
- #4272 chore: un-deprecate stream_batches_with_config
- #4268 feat: add graceful shutdown for consume connectors
- #4264 fix: do not allow connectors offset without id
- #4262 chore: post release 0.13.0
- #4261 chore: bump fluvio-socket to 0.15.0
- #4260 chore: solve bin fluvio conflicts in setup_fluvio_cluster
- #4257 chore: release fluvio 0.13.0
- #4258 chore: dev cd using right fluvio binary
- #4254 chore: revert fluvio to v0.24.0
- #4251 feat: show actual record size when throw maximum request size error
- #4248 fix: list API compatibility issues with old versions
- #4238 chore: typo successful
- #4247 fix: compatibility issues with old versions
- #4243 feat: support producing by mirror
- #4242 chore: pre-release version bump 0.13.0-dev-3
- #4241 Support producing to specific partition
- #4239 fix: mirror compatibility with old versions
- #4233 doc: typo about fluvio topic in docker examples
- #4231 feat: home to edge mirroring
- #4229 feat: create system topic
- #4230 chore: post release fluvio 0.12.1
- #4226 chore: release fluvio 0.12.1
- #4225 chore: prerelease 0.12.1-dev-1
- #4219 fix: link_parent more realible and delete topic partitions
- #4202 docs: produce message size rfc
- #4195 feat: fix record size larger than batch size
- #4196 chore: decrease exponential timeout of mirroring
- #4188 chore: add fluvio docs at the release checklist
- #4187 chore: 0.11.12 post-release
- #4184 chore: make fluvio version works when publishing
- #4183 chore: bump fluvio to v0.11.12
- #4182 fix: upgrade cluster cd release
- #4175 fix: concurrency problems at local metadata store
- #4176 chore: add weekly ci
- #4163 fix: update sysinfo and fix fd leak on linux
- #4158 fix: disable local upgrade test until fix it
- #4149 fix: better error when watch api versions are not compatible
- #4146 chore: clean up not used dependencies
- #4138 feat: upgrade cluster for local
- #4120 feat: update mirror status when find errors on spu
- #4135 chore: update wasmtime and wasi-common to 23.0.2
- #4130 chore: 0.11.11 post-release
- #4127 chore: bump fluvio to v0.11.11
- #4121 fix: enable tracing subscribe again
- #4116 chore: 0.11.10 post-release
- #4115 chore: bump fluvio-smartmodule
- #4113 chore: bump fluvio to v0.11.10
- #4107 chore(bump): pre-release bump changes
- #4104 fix: load replica size
- #4097 feat: add mirror remote
- #4090 fix: produce recognize new partitions
- #4094 Fix delete topic partitions
- #4092 chore: access local metadata without k8 flag
- #4083 fix: spu connections on kubernetes
- #4080 Fix add partition not found
- #4078 fix: mirror apply description
- #4065 feat: add partitions
- #4076 chore: add update commands for public api requests
- #4075 docs: add partition prd
- #4056 feat: add sni prefix on spu to spu
- #4048 feat: add consumer --mirror argument to consume only from the selected
- #4047 chore: show remote and home cmds
- #4046 fix: disallow delete topic from remote
- #4029 fix: disallow produce mirror topic from home
- #4030 feat: deleting remote topics when delete them on home.
- #4028 test: add mirroring e2e test
- #4033 feat: add sc opts to cluster start
- #4024 fix: action urn implemented as individual objects
- #4023 chore: update time to 0.3.36
- #4022 feat: tls and authorization on SPU mirroring
- #4021 feat: instance level authorization for basic authorization
- #4017 feat: tls and authorization on SC mirroring
- #4016 feat: export mirror file with tls
- #3956 feat: spu-to-spu mirroring connection
- #3986 chore: fix rules of clippy 1.78.0
- #3979 chore: add endpoint field in mirror
- #3946 feat: sc-to-sc mirroring connection
- #3962 feat: add cmd to create mirror topics
- #3966 chore: rename remote, edge and core to mirror, remote and home
- #3958 chore: rename SpuSocket to StreamSocket
- #3960 fix: use fluvio_bin env instead fluvio directly
- #3959 feat: rename mirroring cmds to home and remote
- #3940 feat: add edge commands
- #3931 feat: add core commands + metadata store
- #3852 chore: exit when there is no unzip cmd
- #3853 chore: remove unnecessary specialized errors
marigold-dev/tzproxy 96 commits 2022-08 → 2024-02
author and maintainer. 96 commits straight to main, so no pull requests to list.
denoland/deno 77 PRs 2025-10 → 2026-03
- #32772 fix(ext/node): pass uid/gid to spawn and implement process.getgroups
- #32779 fix(ext/node): fix send() validation in child_process IPC
- #32731 fix(ext/node): fix IPC message prototype for child_process JSON
- #32711 fix(ext/node): validate handle type in child_process send()
- #32713 fix(ext/node): fix AbortController signal handling in child_process s…
- #32712 fix(ext/node): accept all TypedArrays in spawnSync input option
- #32710 fix(ext/node): enable 8 already-passing child_process compat tests
- #32699 fix(ext/node): include prototype env vars in child_process spawn
- #32698 fix(ext/node): set up stdio streams on failed child_process spawn
- #32673 fix(ext/node): use non-blocking write in fs.writev
- #32450 fix: wake event loop when V8 posts foreground tasks from background threads
- #32325 fix(ext/node): fix TLS JSStreamSocket resource leak causing process hang
- #32414 fix(ext/node): support HTTP over Windows named pipes in node:http
- #32336 fix:(ext/node): escape simple quotes in node:child_process
- #32337 fix(node/vm): support vm.constants.DONT_CONTEXTIFY in createContext
- #32289 fix(ext/node): remove fs.promises.fstat, not a public Node.js API
- #32284 fix(ext/node): enable test-zlib-invalid-input-memory and test-zlib-un…
- #32283 fix(ext/node): implement timeout and killSignal for spawn()
- #32241 fix(ci): use noble apt repo for LLVM 21 packages
- #32237 fix(ext/node): enable test-stdio-closed tests
- #32087 fix(ext/node): handle shell redirections in child_process exec
- #32215 fix(ext/node): preserve streaming body on stale keepalive retry
- #32148 fix(node/http): preserve request body on stale keepalive retry
- #32137 tests(node/ext): ignore zlib kmaxlength tests
- #32146 tests(ext/node): remove typo of double .js
- #32130 fix(node/ext): make zlib write callback async to match node behavior
- #32112 tests: enable some node child-process tests
- #32118 fix(ext/web): prevent GC of AbortSignal.any()
- #32088 fix(ext/node): read from stdin when spawns node with no args
- #32086 fix(ext/node): unref stdin on pause to allow process exit
- #32071 fix(ext/node): unref child_process stdio streams by default
- #31912 fix(ext/node): handle raw fd instead rid in isatty
- #31999 fix(ext/node): escape more shell args
- #31975 fix(ext/node): make `child_process` stdio streams Socket instances
- #31972 tests: enable some node child-process tests
- #31851 fix(ext/node): pass test-child-process-bad-stdio node compat test
- #31954 feat(ext/node): implement mock API for node:test module
- #31937 chore: move node_shim crate into libs/node_shim
- #31932 fix(ext/node): retry stale keepAlive connections in http client
- #31920 fix(ext/node): support setImmediate promisify.custom
- #31892 fix(ext/node): validate fd in tty.isatty and enable pseudo-tty tests
- #31825 fix(ext/node): improve child_process CLI argument parsing
- #31850 fix(ext/node): implement getValidStdio for child_process
- #31838 fix(node/child_process): ChildProcess constructor without args
- #31836 fix(node/child_process): use correct syscall name in spawn error
- #31829 fix(node/child_process): improve arg type validation for execFile and fork
- #31828 fix(node/child_process): reject null bytes in arguments
- #31826 tests: mark test-sqlite-session as flaky
- #31788 tests: remake inspector tests handling out of order
- #31772 fix(ext/node): emit deprecation warning for SlowBuffer
- #31794 chore: use latest node_compat suite tests again
- #31782 fix(cli/test): close Node HTTP connections before sanitizer check
- #31670 fix: queue dynamic imports for modules with pending TLA
- #31756 fix(ext/node): handle errors in sqlite session filter callback and ad…
- #31751 fix(node/crypto): integrate async_hooks for domain error handling
- #31682 tests: deno test --parallel with worker
- #31734 fix(ext/node): support TypedArray and DataView targets in Buffer.copy()
- #31709 feat(node/http): enable keepAlive connection reuse for HTTP Agent
- #31624 feat: support named pipe listen, connect and open
- #31658 fix: panic on dropped inspector session
- #31527 feat: worker debugging support via CDP
- #31601 tests: update sourcemap tests for npm-only source existence check
- #31564 fix: source map file names to non-existent paths
- #31268 feat: add native source maps support
- #31201 feat: add --require run arg to support commonJS
- #31375 fix: fetch fd leak
- #31190 test: add regression test for --preload with same module as main
- #31153 feat(process): support integer signals in Deno.kill and child.kill
- #31152 fix(compile): support --preload flag in deno compile
- #31147 fix(ext/node): implement util.getSystemErrorMessage()
- #31123 fix(ext/net): support IPv6 zone indices in Deno.connect()
- #31119 feat(ext/node): implement StatementSync columns() method
- #31107 feat(ext/node): implement FileHandle.readLines()
- #31066 fix(ext/node): handle empty writes in chunked HTTP requests
- #31067 fix(ext/node): handle multiple calls in inspector.Session.post()
- #31063 fix(cli/args): empty permissions in config should not require -P
- #31022 fix(ext/node): process.moduleLoadList as undefined
trilitech/tezos-unity-sdk 12 PRs 2023-04 → 2023-08
- #126 update root unity readme file
- #124 Unitypackage
- #122 Add only editor or webgl descr
- #116 Fix ios open wallet
- #115 Fix ios build
- #85 Enable newtonsoft to ios
- #66 Fix Ligo contracts
- #54 Better coroutine error handling
- #58 Remove some unity warnings
- #55 Remove explicit implementation methods in TezosSingleton
- #44 Fix singleton mono behaviour typo
- #42 Add custom readme
denoland/deno_core 8 PRs 2025-11 → 2026-01
- #1268 fix(core): queue dynamic imports for modules with pending TLA
- #1266 fix: when main immediately closes before worker
- #1254 feat: worker debugging support via CDP
- #1259 feat: add source_map_source_exists method to ModuleLoader
- #1257 fix: source map file names to non-existent paths
- #1241 feat: add native source maps support
- #1242 chore: upgrade to Rust 1.91.1
- #1221 fix: ignore already loaded js module
streamfy-io/streamfy 8 PRs 2026-07 → 2026-07
- #10 chore: bump Rust toolchain to 1.97.1
- #9 fix: stabilize local-k8 topic create under k3d CI load
- #7 ci: more matrix jobs into PR CI
- #3 feat: add log compaction
- #8 fix: stop flaky helm packaging during clippy CI
- #6 ci: add lint, PR tests, and rolling dev releases
- #5 docs: add Streamfy logo to README
- #4 chore: rename fvm to svm (Streamfy Version Manager)