Repository navigation
Fixes before the first partner installs. Long invoice PDFs go onto more pages, and every email has a Date and a Message-ID. Webhook URLs with a private IPv6 address are refused when saved, and sign-ins record the real client address. No database migrations.
Before you upgrade
- No migrations in this release. The database stays at 0180, as in v0.8.0 and v0.8.1. Take a backup as for any upgrade.
OTEL_TRACES_SAMPLERnow takes effect. If you set it, Velox keeps only the traces it selects; before, every trace was exported. Unset, nothing changes. The Compose stack now passesOTEL_TRACES_SAMPLERandOTEL_TRACES_SAMPLER_ARGfrom.env. (#1206)- A webhook endpoint saved earlier with a private IPv6 URL still fails every delivery. Change its URL to a public address. (#1199)
What changed
Invoices
- Long invoice and credit-note PDFs go onto more pages. Before, rows after about the 30th and the totals were drawn below the page edge. Later pages repeat the table header and are numbered "Page N of M". Amounts are unchanged. (#1172)
- Thai baht amounts on PDFs print as
THB 1,234.00; the PDF font has no ฿ sign. (#1172)
- Every email has a
Dateand aMessage-IDon yourSMTP_FROMdomain, and accented names and long lines travel as quoted-printable in short lines. The wording is unchanged. (#1187)
Security
- Dashboard sign-ins and invite accepts record the client address
TRUST_PROXYresolves, not the firstX-Forwarded-Forentry, which any client can write. (#1203) - Webhook endpoint create and update refuse private IPv6 addresses such as
fd00::1, using the same check as delivery. (#1199)
Self-hosting
- A failed release of an
Idempotency-Keyis logged at ERROR and counted invelox_idempotency_cache_errors_total{stage="release"}. (#1206) deploy/compose/.env.examplegives the tracing endpoint on the OTLP/HTTP port 4318. (#1206)
Every change, with its reasoning: CHANGELOG.