Skip to content

v3.2.5

Choose a tag to compare

@elemdos elemdos released this 17 Aug 03:35
d179b88

What's new

Custom domains + unassigned-host sites (#1213)

Sites can now connect a real custom domain from the dashboard or the publish dialog.

  • Connect-a-domain flow — enter a domain, get the exact DNS records to create at your registrar (routing CNAME + Railway ownership TXT), and the dialog polls until the certificate is live. Live domains collapse to a read-only view with a "Change domain" option.
  • Providers — Railway (hosted) attaches + verifies + issues certs automatically via its API. A manual fallback (default, self-host) returns generic DNS guidance; routing/TLS is the operator's reverse proxy. Re-entering a domain already attached to the instance now adopts it instead of erroring.
  • Unassigned-host sites — multi-site instances can create a site with no domain yet (editor-only until one is assigned); assign a domain later from the dashboard.
  • Changing a site's domain regenerates it under the new host and tears down the old host's files.

Speed up publishing with incremental compiling — server fields (#1205)

Adds compiled_html_hash / compiled_js_hash so the compiler can skip unchanged pages/symbols. No-op until the primo-mcp compiler side lands; existing rows recompile once to populate the hash.

Plan limits enforcement (#1204)

Hosted instances now enforce their tier's site and editor allowances.

  • Site cap (instance-wide) on site creation — covers dashboard, primo push/import, and clone.
  • Editor cap (per-site) on adding another editor-role collaborator.
  • Caps read from config_values, falling back to PRIMO_SITE_CAP / PRIMO_EDITOR_CAP. A cap of 0 / unset means unlimited — self-host is never restricted.

Fixes

  • Fix broken Railway deploy links in the README (#1211)

Note for operators: running instances pick this up on their next redeploy/restart onto the new :latest image.