Skip to content

v1.0.0

Choose a tag to compare

@tailfed-releaser tailfed-releaser released this 12 Apr 09:15
5a20640

1.0.0 (2025-04-12)

Features

  • api: allow multiple ports in start request (07590c8)
  • api: create api client (d21ac29)
  • api: create shared api types (c6ded37)
  • api: permit only one listen port per address type (438caaa)
  • api: redefine signature contents (5f448f0)
  • api: use base url in request building (acff777)
  • api: use bytes type for signing secret (463706c)
  • cli: add basic structure with version command (d9f4625)
  • cli: add run/start scaffolD (28eb63c)
  • client: add executable entrypoint (6167437)
  • cli: integrate refresher (4d2d992)
  • cli: read configuration from environment variables and file (d5f8b8d)
  • configloader: add support for .env (1c9691e)
  • configloader: extract into separate package (ccbc57b)
  • configloader: make .env file optional (2b8a31d)
  • configloader: make flag loading optional (3a2f566)
  • dev-gateway: add storage backend creation (9b93864)
  • dev-gateway: implement local api gateway (9559eb6)
  • dev-gateway: initialize tailscale api client (c72d86d)
  • dev-gateway: register initializer lambda (6a594e4)
  • dev: add mock local launcher (897007d)
  • dev: allow switching between filesystem and dynamo storage (2fb5bc7)
  • dev: allow switching between memory and kms signers (462b23e)
  • dev: integrate generator into dev binary (0750ebc)
  • dev: integrate signer for finalizer (53a1fec)
  • dev: integrate verifier into mock local launcher (608e8ed)
  • dev: register finalizer endpoint (955d183)
  • finalizer: implement base structure without token signing (a109845)
  • finalizer: integrate token signing (a85f9a5)
  • finalizer: use dynamodb-backed storage (040c717)
  • finalizer: use kms-based signer (bc993f8)
  • generator: implement oidc metadata generator (0fd8d24)
  • http: add api gateway response generators (52d81d9)
  • http: add domain to gateway translation (2360b27)
  • http: add gateway request/response translation (8bae5b0)
  • http: add request id middleware (51b5fde)
  • http: expose mock gateway id, domain, and url (9f354a0)
  • initializer: add base implementation (027cc94)
  • initializer: add component name to logger (1cad4b2)
  • initializer: add lambda entrypoint (52c44cb)
  • initializer: add launching verification handlers (46425b7)
  • initializer: use dynamodb-backed storage (c86b799)
  • launcher: add channel-backed implementation for development (0591b1d)
  • logging: add basic logging facilities (8612dc8)
  • logging: allow injecting logger into arbitrary context (0d9710a)
  • logging: implement middleware (2e70127)
  • logging: use global logger (4331de2)
  • metadata: add filesystem and s3 metadata storage backends (ad0becf)
  • metadata: add minimal oidc discovery document (a275775)
  • refresher: add callback server logging (ad3daa2)
  • refresher: add start issuance process (4a00ac7)
  • refresher: immediately spawn finalizer job (5858ecc)
  • refresher: implement callback server (5502b13)
  • refresher: implement finalization flow (97d5377)
  • scheduler: add scheduler wrapper around gocron (2332faf)
  • scheduler: use manual implementation instead of gocron (b6b2be7)
  • signing: add in-memory signing backend (da6ec58)
  • signing: implement retrieving public keys from kms (5cb5fbc)
  • signing: implement signing tokens via AWS KMS (7a1f827)
  • signing: use fingerprint for key id (99c45df)
  • storage: add dynamodb-backed storage (d9157d3)
  • storage: add filesystem-backed implmentation (94206c8)
  • tailscale: add control plane client wrapper (acc7935)
  • tailscale: add local tailscale client wrapper (9f052e0)
  • terraform: add api gateway with resources (0bb7afc)
  • terraform: add bucket with openid configuration data (558dbca)
  • terraform: add dynamodb storage (3dd09a0)
  • terraform: add event bridge schedule for generator (d90c551)
  • terraform: add kms key for signing (20ac7a2)
  • terraform: add routes to s3 objects (2ed9c84)
  • terraform: create infrastructure scaffolding (570a441)
  • terraform: create initial deployment (95da042)
  • verifier: add component name to logger (e087912)
  • verifier: add initial implementation (a23d4ab)
  • verifier: connect to tailscale in-process (47a11dc)
  • verifier: set app name in tailscale connection (cabf761)
  • verifier: use dynamodb-backed storage (f02e5d8)

Bug Fixes

  • api: add missing content-type and accept headers (53e1f5c)
  • api: ensure base url is present before parsing (227b580)
  • api: use correct casing for start response signging secret (343f960)
  • dev: document kms backend in flag (4d8c875)
  • dev: stop verifier retry loop on fatal error (5496356)
  • golangci-lint integration with lint-staged (b41cf4f)
  • refresher: configure missing exponential backoff (7f2987a)
  • refresher: ensure assumption about number of ips is held (b502c75)
  • refresher: release listeners on api error (08f6164)
  • scheduler: ensure job is first run on startup (d910734)
  • signing: add missing algorithm for kms public keys (ebfa620)
  • signing: ensure pointer to public key is used for jwk (931a67f)
  • signing: remove unnecessary pem decoding for kms public keys (65dbed2)
  • storage: ensure status is deserialized properly (44580d8)
  • tailscale: trim trailing dot from local dns name (42f3ee6)
  • terraform: add missing list bucket permission (f211c98)
  • verifier: deserialize challenge with correct type (8c2114a)
  • verifier: make flow id fields consistent across components (e5c22be)
  • verifier: pull proxy url from environment (e05a335)