Skip to content

v2.17.0

Choose a tag to compare

@midigofrank midigofrank released this 22 Jul 11:47
· 110 commits to main since this release

This is a security release, and we strongly recommend upgrading promptly. It is the first remediation wave from an ongoing security review: it closes a broad set of issues, several of them high priority. A detailed security advisory will follow within 30 days of this release.

Upgrade notes

  • Postgres TLS certificates are now verified. Lightning previously performed no certificate validation on SSL connections to Postgres and accepted any server certificate; it now validates the server certificate by default. A self-signed or otherwise unverifiable certificate will stop Lightning from starting. If you use a private CA or a self-signed database certificate, make sure the CA is trusted, or set DISABLE_DB_SSL_CERT_VERIFY=true to opt out.
  • Server-side outbound requests are now guarded by default. The Channel reverse proxy feature and OAuth provider requests block loopback and private-network destinations to prevent SSRF. This can break local development, or a legitimately-internal destination reached over a private IP. Adjust the Channel policies with CHANNEL_BLOCK_PRIVATE_NETWORKS and CHANNEL_ALLOWED_HOSTS; see the egress sections of DEPLOYMENT.md (OAuth Provider Egress and Channel Egress) for the full configuration.
  • Take a database backup before upgrading. Three of this release's migrations delete data irreversibly: legacy-editor user preferences, pre-existing credential transfers that can no longer be confirmed, and orphaned AI chat sessions.
  • One migration will abort the upgrade rather than guess. The require_project_credentials_project_id migration sets project_credentials.project_id to NOT NULL and will raise if any rows have a null project_id. Resolve those rows and re-run the migration.
  • The legacy workflow editor has been removed, along with its route. All users are now served the collaborative editor.
  • AI chat sessions now cascade-delete with the job or workflow they belong to, instead of being left orphaned.

Migrations in this release, all in priv/repo/migrations/:

  • 20260629143825_clear_prefer_legacy_editor
  • 20260701152255_remove_legacy_credential_transfers
  • 20260703124106_require_project_credentials_project_id
  • 20260707043053_cascade_delete_ai_chat_sessions_with_job_and_workflow
  • 20260707060146_delete_orphaned_ai_chat_sessions
  • 20260711013100_add_allow_unverified_email_to_auth_providers

Full Changelog: v2.16.8...v2.17.0