Changes
Headplane 0.6.2 works with Headscale 0.28.0.
- Our website at headplane.net is generally stable and is the definitive source of information going forward.
- This release drops support for Headscale 0.25.0 and lower
- Some config options have generally changed, please refer to the example and the website: https://github.com/tale/headplane/blob/main/config.example.yaml.
- Re-worked the configuration loading system with several enhancements:
- Re-worked the OIDC integration to adhere to the correct standards and surface more errors to the user.
- Deprecated
oidc.redirect_uriand automated callback URL detection in favor of settingserver.base_urlcorrectly. - Explicitly added
oidc.use_pkceto correctly determine PKCE configuration. oidc.token_endpoint_auth_methodis now optional and will attempt to be auto-detected, defaulting toclient_secret_basicif unavailable (closes #410).- Added
oidc.enabledconfig option to explicitly control OIDC availability (via #463).
- Deprecated
- Added search and sortable columns to the machines list page (closes #351).
- Allow conditionally compiling the SSH WASM integration when building (closes #337).
- Implemented the ability to customize the build with a custom script (see
./build.sh --helpfor more information). - Attempt to warn against misconfigured cookie settings on the login page.
- Made
server.cookie_max_ageandserver.cookie_domainconfigurable (closes #348). - Enhanced the node tag dialog to show a dropdown of assignable tags (via #362).
- Added an
/admin/api/inforoute that can expose sensitive information ifserver.info_secretis set in the configuration (closes #324). - Machine key registration no longer works if the key isn't 24 characters long (closes #415).
- Added a Docker healthcheck to the container (closes #411).
- Strengthened the validation for the
/procintegration to correctly discover the Headscale PID. - Added lazy retry logic for OIDC providers if they initially fail to respond (closes #423).
- Pre-auth keys are now listed without a user filter on Headscale 0.28+, with a fallback to per-user fetching on older versions (via #466).
- Adapted to the removal of Node Ownership Change in Headscale 0.28 (via #436).
- Improved the no-access user page on the UI (via #469).
Fixes
- Bundle all
node_modulesaside from native ones to reduce bundle and container size (closes #331). - Removed several unnecessarily verbose or spammy log messages.
- Updated the minimum Docker API used to support the latest Docker versions (via #370).
- Correctly handle invalid ACL policy inserts on Headscale 0.27+ (closes #383).
- Prevent a machine from changing its owner to itself (closes #373).
- Fixed an issue where the website favicon would not load correctly (closes #323).
- Fixed API key login on Headscale 0.28.0-beta.1+ (closes #429).
- Fixed an issue that prevented the pre-auth-key UI from being usable on Headscale 0.28 and later.
- Added support for creating tag-only pre-auth keys on Headscale 0.28+ (via #465).
- Fixed pre-auth keys not showing for OIDC users without a username (via #470).
- Fixed truncated pre-auth key display with longer Headscale 0.28 bcrypt tokens (closes #435).
- Fixed Nix systemd service to use user-specified package (via #454).
- Version displayed in the UI is now derived from git tags and build args instead of
package.json, fixing incorrect versions shown on beta and nightly builds. - Fixed handling of tag-only nodes that have no user on Headscale 0.28+ (via #467).
- Fixed some mobile CSS issues across the application (closes #401).
- Correctly apply Gravatar profile pictures on the user page if applicable (closes #405).
New Contributors
- @tituspijean made their first contribution in #349
- @rhoriguchi made their first contribution in #358
- @alexfornuto made their first contribution in #363
- @itzTheMeow made their first contribution in #362
- @luzes-dev made their first contribution in #370
- @The-Greg-O made their first contribution in #377
- @Lapin0t made their first contribution in #394
- @Murgeye made their first contribution in #384
- @0nano made their first contribution in #409
- @SethMilliken made their first contribution in #438
- @kronenpj made their first contribution in #433
- @drifterza made their first contribution in #470
- @PriceChild made their first contribution in #462
- @z0w13 made their first contribution in #454
Full Changelog: v0.6.1...v0.6.2