Skip to content

Releases: coolapso/c4stack

Release list

v0.1.1

Choose a tag to compare

@coolapso coolapso released this 25 Oct 14:20
2dbc3a1

v0.1.1 (2026-10-25)

Bug Fixes

  • creem: accept test-mode checkouts on creem.io

Other Changes

  • add the eurogpher

v0.1.0

Choose a tag to compare

@github-actions github-actions released this 12 Oct 20:08
dc8336c

v0.1.0 (2026-10-12)

⚠ BREAKING CHANGES

  • expiry: expire only after a delivered warning and its stored deadline
  • apikeys,credits: mount the pages at the group the app chooses
  • accounts: never finish an unconfirmed deletion, and move every path
  • credits: use Searchbase's purchases, ledger and expiry
  • apikeys: use Searchbase's key table, and rename and delete keys
  • accounts: link accounts by verified email, as Searchbase does

Features

  • accounts,web: leave sign-in and CSRF failures for the app to render
  • web: serve further origins, and any host in development
  • expiry: report every run to the app through OnRun
  • identity: one 5-minute recent sign-in for deletion and passkeys
  • example: run Textlab's console at Searchbase's /account paths
  • scaffold: mount the account pages at Searchbase's paths
  • creem: send Searchbase's checkout request and keep the event time
  • postgres: adopt a migration history without namespaces
  • examples: add Textlab, an example app with a custom layout, API keys and credits
  • credits: expire unused credit after a delivered warning
  • email: add the sender interface and the Scaleway adapter
  • credits: add the opt-in credit ledger, purchases, payment webhooks and credits page
  • payments: add the payment provider interface and the Creem adapter
  • apikeys: add opt-in API keys with bearer authentication and a keys page
  • scaffold: generate apps that include the shared Taskfile
  • accounts: map identities to accounts and delete them provider-first
  • identity: add the provider interface and the Hanko adapter with profile management
  • ui: add the default design, layout types and hashed assets
  • app: add the command entry point with a database-only migrate
  • postgres: connect with verified TLS and apply namespaced migrations
  • web: add the engine, security middleware and graceful serving

Bug Fixes

  • taskfiles: run staticcheck v0.8.2, which supports Go 1.27.2
  • expiry: warn only a verified address, and count a warning only there
  • accounts: change an address in one transaction, and let a stale account give up its address
  • expiry: keep each warning's notice period, and count no unconfirmed warning
  • accounts: record an unverified address before turning the identity away
  • example: bind each Idempotency-Key to its request
  • close rows with defer and wrap the email update error
  • accounts: let the delete page's cancel link navigate
  • taskfiles: keep the shared tasks' variables from overriding the app's
  • scaffold: pin the shared Taskfile release statically and check it against go.mod
  • pass request contexts, not Gin contexts, to database and provider calls
  • scaffold: require Task 3.53.1, the first release with remote Taskfiles enabled
  • handle wrapped errors and checked cleanup found by linters

Other Changes

  • scaffold: list tasks without colour, which CI turns on
  • release with semrel
  • stop the example's database when task serve ends
  • serve the example with settings from Infisical
  • serve the example app from the repository root
  • run the checks on GitHub-hosted runners
  • keep bundled JavaScript and generated code out of GitHub's language stats
  • make C4Stack personally owned, as Searchbase is
  • send security reports to security@coolapso.sh
  • present C4Stack as an open-source project by Coolapso
  • add a security policy and the repository settings it relies on
  • add contribution terms and a CLA workflow
  • license C4Stack under Apache-2.0
  • describe failures the app can render
  • describe movable pages, confirmed deletion and delivered warnings
  • describe the Searchbase-aligned modules
  • prove that Searchbase moves onto C4Stack with one release
  • apikeys: regenerate the keys page
  • scaffold: link the pinned release's docs from generated apps
  • update the agent rules for every module
  • rewrite the README around the quickstart and modules
  • architecture: describe the system as built
  • add a release verification task
  • add the v0.1.0 release notes
  • add the operations guide and runbooks
  • add the guide with recipes for common app changes
  • install Go, Task and golangci-lint in the checks workflow
  • run the upgrade test, and keep framework checks out of the example module
  • scaffold: move a generated app to the next release
  • match the credits, expiry and payments surfaces
  • credits: describe the credit contract and webhook outcomes
  • add the README and agent rules
  • architecture: match the implemented surfaces
  • accounts: mount default pages elsewhere inside a custom layout
  • add framework tasks, lint configuration and CI checks
  • scaffold: serve the generated starter app end to end
  • regenerate Templ code from the repository root
  • sketch the building-block architecture