Download Latest Version OpenReceive v0.4.33 source code.zip (14.5 MB)
Home / v0.4.13
Name Modified Size InfoDownloads / Week
Parent folder
openreceive-server-0.4.13.gem 2026-10-01 161.3 kB
standalone-checkout-0.4.13.tar.gz 2026-10-01 806.2 kB
openreceive-0.4.13.gem 2026-10-01 137.7 kB
openreceive-next-0.4.13.tgz 2026-10-01 112.9 kB
openreceive-node-0.4.13.tgz 2026-10-01 168.2 kB
openreceive-provider-data-0.4.13.tgz 2026-10-01 355.4 kB
openreceive-rails-0.4.13.gem 2026-10-01 156.2 kB
openreceive-react-0.4.13.tgz 2026-10-01 165.2 kB
openreceive-svelte-0.4.13.tgz 2026-10-01 112.9 kB
openreceive-vue-0.4.13.tgz 2026-10-01 112.6 kB
openreceive-0.4.13.tgz 2026-10-01 110.6 kB
openreceive-angular-0.4.13.tgz 2026-10-01 121.7 kB
openreceive-browser-0.4.13.tgz 2026-10-01 260.0 kB
openreceive-core-0.4.13.tgz 2026-10-01 141.4 kB
openreceive-elements-0.4.13.tgz 2026-10-01 164.7 kB
openreceive-express-0.4.13.tgz 2026-10-01 113.7 kB
openreceive-fastify-0.4.13.tgz 2026-10-01 114.1 kB
openreceive-http-0.4.13.tgz 2026-10-01 152.9 kB
OpenReceive v0.4.13 source code.tar.gz 2026-10-01 8.2 MB
OpenReceive v0.4.13 source code.zip 2026-10-01 9.6 MB
README.md 2026-10-01 2.6 kB
Totals: 21 Items   21.3 MB 0
  • Fix a reconciliation livelock on slow wallets, in every engine (JS, Ruby, Python, PHP). A wallet-history page still in flight at the 9 s scan deadline failed the whole pass, and the pass threw away its resume offset. A walk too long for one slice then restarted at offset 0 on every pass: nothing settled, every pass logged reconciliation failed (will retry): … execution expired, and the repeated walks used up the wallet's request budget (RATE_LIMITED). A cut page now ends the slice like a page answered late: the completed pages keep their progress, and the next pass resumes after them. A slice whose first page is cut still fails the pass, so a wallet that never answers stays visible in the logs.
  • Give host-clock attempts their own scan cohort. An attempt whose creation time came from the host clock (a legacy row, or a wallet whose make_invoice reply has no created_at) is scanned over the whole wallet history. One such row used to widen the window of every wallet-timed attempt pending with it to that full walk. Wallet-timed attempts now keep their bounded window.
  • Raise the reconcile gate's floor from 2 s to 3 s (OPENRECEIVE_MIN_RECONCILE_INTERVAL_SECONDS, and the first invoice-age tier in every engine). This cuts settlement-scan volume by about a third, at the cost of at most one extra second before a payment is seen.
  • Two new spec/test-vectors/reconcile-progress.json vectors pin both fixes for every engine. PHP's Reconciler takes an optional scan timeout in seconds, mirroring JS scanTimeoutMs, so tests can drive a short deadline.
  • Security updates in the lockfiles: next 16.3.8, fastify 5.12.5, devalue 5.9.4, brace-expansion 5.0.12, piscina 5.3.2 and fast-uri 3.1.8 (npm); urllib3 2.8.0 (Django demo); league/commonmark 2.10.3 (openreceive/laravel and the Laravel demo). The Laravel demo's path packages had stayed pinned at 0.4.3, so no composer update could resolve there; release:prepare now moves them with every release. rubyzip stays at 2.4.1: rbsecp256k1 6.0.0, the latest release, pins ~> 2.3, and it runs rubyzip only at gem install, on a SHA-256-verified archive (already on the Rails demo's bundler-audit ignore list).
  • BTCPay Server plugin source 0.4.12 closes the same exposure in its scan memo. A failed wallet walk resumes instead of restarting at offset 0. A host-clock invoice no longer forces a full-history walk on every refresh. A failed walk counts toward the cadence. The fastest cadence is 3 s. See packages/dotnet/CHANGELOG.md.
Source: README.md, updated 2026-10-01