Repository navigation
Releases: HostRepute/ReputeCast
Release list
v1.1.0
Highlights
ReputeCast 1.1.0 brings the design expansion (milestones M15–M32): transactional email, SMS, web push and WhatsApp, integrations, content in several languages and the app in Vietnamese, new ways to engage readers, grow and earn, and a publication website. Every feature is free under the AGPL, like the rest of ReputeCast.
It also fixes security issues in 1.0.0 and 1.0.1, one of them critical. Upgrade soon, especially if you use MCP agents.
Security. Five advisories cover what 1.1.0 fixes:
- Critical: an MCP agent holding
segments:editcould run SQL through a crafted segment definition. - High: a member with
team:invitecould copy the link of a more privileged pending invitation and raise their role. - High: members limited to some lists could export, mail and preview contacts outside their scope.
- Medium: forged delivery reports sent to an SMTP bounce mailbox could suppress any subscriber.
- Medium: the provider setup's webhook self-test could be redirected to internal addresses (SSRF).
New
- Transactional email. Templates written in the composer with variables, test data and versions. A send, batch and render API with idempotency keys, send-only and test keys, an SMTP relay, a message log, category unsubscribes and delivery alerts. The Transactional stream fails over automatically and goes before broadcasts. Templates import from Postmark, SendGrid, Mailgun, Notifuse, MJML or HTML.
- SMS, web push and WhatsApp. SMS through Twilio, Vonage, Plivo, Telnyx or AWS End User Messaging, with routing by country, consent per list, keywords and quiet hours. Web push with a prompt designer. WhatsApp through Meta's Cloud API. Each channel is also an automation step.
- Integrations. An integrations hub with managed keys and webhooks; Zapier, Make and n8n apps; a WordPress plugin; Shopify and WooCommerce stores with synced orders, products and customers, store triggers and blocks, and an abandoned-cart starter.
- Languages. Language versions of campaigns, automation emails and transactional templates; forms and public pages in each language; each contact's language, checked in Send Readiness. The app in English and Vietnamese, with each member's own language and region format.
- Engaging readers. Recurring and RSS digests, conditional content, polls and surveys, contact scoring with bands and decay, growth sources, address verification, inbox placement tests, and accessibility checks in the composer and in Send Readiness.
- Grow and earn. Referrals, recommendations with partner links, paid subscriptions through Stripe, offers, gift subscriptions, sponsorships and revenue attribution.
- Website, pages and products. A publication website with posts, members, a meter and a paywall; a page builder for landing, sales and webinar pages; a shop for digital products.
- AI assistant and agencies. Suggestions shown as diffs in the composer, for segments and in reports, through the workspace's own model key and monthly cap. Client workspaces for agencies, with staff assignments, client sign-off, a shared template library and usage per client.
Upgrading. This release adds 52 migrations.
- Docker:
docker compose pull && docker compose up -d. Migrations run at start. - Binary: replace it, then run
reputecast migrate up. - Uploaded files (digital products, lead magnets) are stored in
filesnext to the secret key (/var/lib/reputecast/filesin Docker). Back the folder up along with the database.
The image is ghcr.io/hostrepute/reputecast:v1.1.0.
Changelog
844 commits since 1.0.1: v1.0.1...v1.1.0
v1.0.1
Highlights
Security. When an API request failed on an unexpected error, the 500 response carried the error's own text, which could include SQL or internal hosts. Such errors now answer with a reference (meta.reference), and the error is logged on the server under that reference with the request id (#4, GHSA-9xjq-4j36-pcgm).
Fixes
- A notification list cursor beyond 2³¹ answered 500; it is now refused with 422 (#3).
- The adapter SDK trims trailing slashes from URLs in one pass instead of a backtracking regular expression (#3).
Documentation
- A shorter README with screenshots, plus guides for self-hosting, configuration, the reverse proxy, Postgres, the API and the architecture (#2).
- The app's links to the API reference, the reverse-proxy guide and the Postgres tuning guide now open those pages.
- A contributing guide, code of conduct, security policy and support page (#2).
Upgrading. This release has no new migrations.
- Docker:
docker compose pull && docker compose up -d. - Binary: replace it, then run
reputecast migrate up.
The image is ghcr.io/hostrepute/reputecast:v1.0.1.
Changelog
- 425cedb: chore(github): issue forms, a pull request template and Dependabot (@hostrepute-com)
- 484f52f: chore: editorconfig, and Linguist attributes for the design boards and generated files (@hostrepute-com)
- 0696124: docs(readme): a shorter README with screenshots of the app (@hostrepute-com)
- e048bfb: docs: contributing guide, code of conduct, security policy and support (@hostrepute-com)
- 0400ca2: docs: guides for self-hosting, configuration, the reverse proxy, Postgres, the API and the architecture (@hostrepute-com)
- 6d1e83c: fix(api): keep unexpected errors' text out of 500 responses and log it under a reference (@hostrepute-com)
- 778584f: fix(notify): refuse a notification cursor beyond int32 instead of failing the query (@hostrepute-com)
- 14c364d: fix(sdk): trim trailing slashes in one pass instead of a backtracking regex (@hostrepute-com)
v1.0.0
Changelog
- 1bcc2db: build(sdk): build the adapter SDK when the SDK workspace is installed (HostRepute support@hostrepute.com)
- 5199b75: build(site): add make site, make site-dev and a CI job for the landing site (HostRepute support@hostrepute.com)
- 0e02df6: build: create the image's data directory for the non-root user (HostRepute support@hostrepute.com)
- 8b8bfb6: build: give the release image a data directory the non-root user owns (HostRepute support@hostrepute.com)
- 9959aa0: build: list go-oidc as a direct dependency (HostRepute support@hostrepute.com)
- a958dca: chore(adapters): regenerate the API types for the adapter runtime operations (HostRepute support@hostrepute.com)
- c02d905: chore(sending): regenerate the OpenAPI document and web types for the resume groups (HostRepute support@hostrepute.com)
- 206dbe5: chore: merge W01 (providers) into W07 (HostRepute support@hostrepute.com)
- 36981c9: chore: prepare parallel workstreams (contracts, conventions, route map, QA tool) (HostRepute support@hostrepute.com)
- 2aea750: chore: regenerate the API document and web types for connect, senders and domains (HostRepute support@hostrepute.com)
- 44c561b: chore: regenerate the API types after the core schema namer change (HostRepute support@hostrepute.com)
- 9de9f51: chore: regenerate the API types for providers, routing, warm-up and events (HostRepute support@hostrepute.com)
- fcbc1d0: chore: regenerate the API types for the Slack pause notice (HostRepute support@hostrepute.com)
- beb5c63: chore: regenerate the OpenAPI spec and web API types for Review & send and approvals (HostRepute support@hostrepute.com)
- 3c5fd91: chore: sync QA1 with m0-skeleton (HostRepute support@hostrepute.com)
- d5c116f: chore: sync QA1 with m0-skeleton (HostRepute support@hostrepute.com)
- 6e7bc86: chore: sync QA1 with m0-skeleton (HostRepute support@hostrepute.com)
- ab73b8b: chore: sync QA1 with m0-skeleton (HostRepute support@hostrepute.com)
- 9b0d47d: chore: sync QA1 with m0-skeleton (HostRepute support@hostrepute.com)
- a899126: chore: sync W01 with m0-skeleton (HostRepute support@hostrepute.com)
- 9e497e7: chore: sync W01 with m0-skeleton (HostRepute support@hostrepute.com)
- aee3bf0: chore: sync W01 with m0-skeleton (HostRepute support@hostrepute.com)
- 74c901a: chore: sync W01 with m0-skeleton (HostRepute support@hostrepute.com)
- 0c210df: chore: sync W01 with m0-skeleton (HostRepute support@hostrepute.com)
- ef1acc6: chore: sync W01 with m0-skeleton (HostRepute support@hostrepute.com)
- 468a43a: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 20bb170: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 5bad69c: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 5aa93d5: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 67416c2: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 944a40b: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 02232b1: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- a7e3eee: chore: sync W02 with m0-skeleton (HostRepute support@hostrepute.com)
- 0d754f1: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- c1e2719: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- 2938e34: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- ac46efd: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- 594c6b3: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- 755ec07: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- fdd6789: chore: sync W03 with m0-skeleton (HostRepute support@hostrepute.com)
- 6e7c60e: chore: sync W04 with m0-skeleton (HostRepute support@hostrepute.com)
- 8c7f1af: chore: sync W04 with m0-skeleton (HostRepute support@hostrepute.com)
- 3e4995d: chore: sync W04 with m0-skeleton (HostRepute support@hostrepute.com)
- 0532600: chore: sync W04 with m0-skeleton (HostRepute support@hostrepute.com)
- 1a740d9: chore: sync W04 with m0-skeleton (HostRepute support@hostrepute.com)
- d5f1c06: chore: sync W04 with m0-skeleton (HostRepute support@hostrepute.com)
- ea25971: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- d4ef11b: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- 788b1d3: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- 58660e6: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- 37d6474: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- c524667: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- 85ba63a: chore: sync W05 with m0-skeleton (HostRepute support@hostrepute.com)
- 45db5e1: chore: sync W06 with m0-skeleton (HostRepute support@hostrepute.com)
- 0663896: chore: sync W06 with m0-skeleton (HostRepute support@hostrepute.com)
- f35e821: chore: sync W06 with m0-skeleton (HostRepute support@hostrepute.com)
- 2109009: chore: sync W06 with m0-skeleton (HostRepute support@hostrepute.com)
- ae4de7a: chore: sync W06 with m0-skeleton (HostRepute support@hostrepute.com)
- b081da4: chore: sync W07 with m0-skeleton (HostRepute support@hostrepute.com)
- 9cd4cf4: chore: sync W07 with m0-skeleton (HostRepute support@hostrepute.com)
- 81a2a0a: chore: sync W07 with m0-skeleton (HostRepute support@hostrepute.com)
- 9ad6167: chore: sync W07 with m0-skeleton (HostRepute support@hostrepute.com)
- 79ba6f9: chore: sync W08 with m0-skeleton (HostRepute support@hostrepute.com)
- 77e51f9: chore: sync W08 with m0-skeleton (HostRepute support@hostrepute.com)
- e95a50a: chore: sync W08 with m0-skeleton (HostRepute support@hostrepute.com)
- 36c83f5: chore: sync W08 with m0-skeleton (HostRepute support@hostrepute.com)
- fa3d0fc: chore: sync W08 with m0-skeleton (HostRepute support@hostrepute.com)
- b58af5f: chore: sync W09 with m0-skeleton (HostRepute support@hostrepute.com)
- c8c7cae: chore: sync W09 with m0-skeleton (HostRepute support@hostrepute.com)
- 25d593a: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 64ba14f: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- d386c45: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 0c65033: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 3ac787f: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 4571751: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 17d36a2: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 6dd8a33: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- dee9640: chore: sync W10 with m0-skeleton (HostRepute support@hostrepute.com)
- 56a6797: chore: sync W11 with m0-skeleton (HostRepute support@hostrepute.com)
- 812e777: chore: sync W11 with m0-skeleton (HostRepute support@hostrepute.com)
- 0c3d1e9: chore: sync W11 with m0-skeleton (HostRepute support@hostrepute.com)
- d90cd76: chore: sync W11 with m0-skeleton (HostRepute support@hostrepute.com)
- 698845e: ch...