This release includes 1 security fix for security teams reviewing exposed deployments.
Topics
Affected surfaces
Summary
AI summaryUpdates Bug Fixes & Improvements, Features & Enhancements, and v3.8.0 across a mixed release.
Full changelog
Changelog
v3.8.0 (April 2026)
Features & Enhancements
-
Handle missing Kubernetes API resources gracefully
- Add
IsMissingKubernetesResourceErrorhelper to classify missing-resource cases, including the “the server could not find the requested resource” message. - Use that helper in Kubernetes resource listing so unsupported APIs return an empty result instead of bubbling up as an error.
- Update the Kubernetes controller to treat those missing-resource errors as
200 OKwith emptyitems, avoiding the 500 path. - Add tests for the new helper and for the controller behavior when
FunctionAPIs are unavailable.
- Add
-
Add support for Managed Resource Definitions (MRD) and Managed Resource Activation Policies (MRAP)
- Introduce dedicated pages for MRDs and MRAPs following the existing XRDs pattern.
- MRDs page includes columns for NAME, STATE, ESTABLISHED, AGE with multi-filter support and status badges.
- MRAPs page provides a clean view with NAME and AGE.
- Both pages include ResourceDetails slideout and improved error handling with messaging for Crossplane 2.0 upgrades.
-
PostgreSQL SSL/TLS connection support
- Add configurable SSL/TLS options for PostgreSQL connections via new environment variables:
DB_SSL_MODE,DB_SSL_ROOT_CERT,DB_SSL_CERT, andDB_SSL_KEY. - Dynamically build the DSN with
sslmode,sslrootcert,sslcert, andsslkeyparameters (supportsdisable,require,verify-ca,verify-full, etc.). - Update configuration (
config.yaml,loader.js), Helm chart values, ConfigMap, and deployment templates to support a nestedsslobject. - Default to
sslmode=disablefor backward compatibility. - Remove password from connection failure logs for improved security.
- Add configurable SSL/TLS options for PostgreSQL connections via new environment variables:
-
Automate changelog, release notes, and PR title linting
- Introduce automation using Conventional Commits and
changelog-clito generateCHANGELOG.mdandRELEASE_NOTES.mdduring releases. - Add GitHub release integration (attach release notes and use them as description).
- Enforce consistent PR titles via
lint-pr-title.ymlworkflow. - Update
docs/CONTRIBUTING.mdwith guidelines for PR titles, commits, and release notes. - Add local development support (scripts and
changelog-clidependency).
- Introduce automation using Conventional Commits and
Bug Fixes & Improvements
-
Fix server-side table search to filter full dataset
- Apply search filtering to the complete dataset before pagination (instead of only the current page) in server-side mode.
- Ensure search terms and searchable fields are properly passed to fetch callbacks.
- Update filtering logic for Managed Resources, Claims, Composite Resources, Compositions, MRDs, and MRAPs.
- Use continue tokens for Composite resource retrieval to support full-dataset filtering.
- Total count now reflects the size of the filtered dataset.
-
Add SSL properties to Helm values schema
- Fix missing SSL configuration properties in the Helm values JSON schema (follow-up to PostgreSQL SSL support).
-
Validate Helm release version against existing GitHub releases
- Add version validation job in the Helm release workflow to prevent publishing arbitrary or mismatched versions.
- Make test and release jobs dependent on successful validation.
- Improve error messaging to show already-released versions when validation fails.
-
Updated readme
- Fix
Helm Repositoryaddress in the README (was pointing to the old organization).
- Fix
-
Provided default values for admin username and password in
helm/crossview/values.yaml
secrets:
adminUsername: "admin"
adminPassword: "password"
-
Improve documentation for production SSO deployments
- Document
server.cors.origin(CORS_ORIGIN) as a required field for any non-local deployment using SSO. When unset, the post-login redirect goes tohttp://localhost:5173instead of the actual host. - Add a dedicated "Required: Set
server.cors.originfor Production" section todocs/SSO_SETUP.mdwith config file, env var, and Helm examples. - Update
callbackURLexamples throughoutdocs/SSO_SETUP.mdto use a real host (https://crossview.example.com/api/auth/oidc/callback) instead of localhost. - Add
CORS_ORIGINtodocs/CONFIGURATION.mdserver settings and SSO troubleshooting section. - Add inline warning comment on
config.server.cors.origininhelm/crossview/values.yaml.
- Document
-
Document default admin credentials for session auth mode
- Add a "Default Admin Credentials" subsection to
docs/CONFIGURATION.mdnoting that the default username/password isadmin/passwordand documenting how to override them via Helm values or environment variables. - Add default credentials as the top item in the Security Best Practices section.
- Add a "Default Admin Credentials" subsection to
Contributors
A big thank you to all the contributors who helped make this release possible!
- conclusionlogic – for gracefully handling missing Kubernetes API resources
- ravibagri5 – for adding support for Managed Resource Definitions (MRD) and Managed Resource Activation Policies (MRAP)
- MoeidHeidari – for PostgreSQL SSL/TLS connection support and Helm schema fixes
- Berk-Unsal – for fixing server-side table search to work on the full dataset
- erfanmo – for automating changelog generation, release notes, PR title linting, and Helm version validation
Thank you for your valuable contributions! 🙏
Security Fixes
- Removed plaintext password from PostgreSQL connection failure logs to improve security.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About crossplane-contrib/crossview](https:
All releases →Related context
Related tools
Beta — feedback welcome: [email protected]