diff --git a/docs/changelogs/README.md b/docs/changelogs/README.md index 1f14d11b38b26..3240a41bc0d50 100644 --- a/docs/changelogs/README.md +++ b/docs/changelogs/README.md @@ -13,8 +13,8 @@ git checkout main; git pull; git fetch --all export CODER_IGNORE_MISSING_COMMIT_METADATA=1 export BRANCH=main ./scripts/release/generate_release_notes.sh \ - --old-version=v2.7.1 \ - --new-version=v2.7.2 \ + --old-version=v2.8.0 \ + --new-version=v2.9.0 \ --ref=$(git rev-parse --short "${ref:-origin/$BRANCH}") \ - > ./docs/changelogs/v2.7.2.md + > ./docs/changelogs/v2.9.0.md ``` diff --git a/docs/changelogs/images/activity-bump.png b/docs/changelogs/images/activity-bump.png new file mode 100644 index 0000000000000..055a06573610c Binary files /dev/null and b/docs/changelogs/images/activity-bump.png differ diff --git a/docs/changelogs/images/autostop-visibility.png b/docs/changelogs/images/autostop-visibility.png new file mode 100644 index 0000000000000..f2158b0f6709d Binary files /dev/null and b/docs/changelogs/images/autostop-visibility.png differ diff --git a/docs/changelogs/images/sharable-ports.png b/docs/changelogs/images/sharable-ports.png new file mode 100644 index 0000000000000..22370e824a595 Binary files /dev/null and b/docs/changelogs/images/sharable-ports.png differ diff --git a/docs/changelogs/v2.9.0.md b/docs/changelogs/v2.9.0.md new file mode 100644 index 0000000000000..1e28a04d60105 --- /dev/null +++ b/docs/changelogs/v2.9.0.md @@ -0,0 +1,156 @@ +## Changelog + +### BREAKING CHANGES + +- Remove prometheus-http port declaration from coderd service spec (#12214) (@johnstcn) +- Provisioners: only allow untagged provisioners to pick up untagged jobs (#12269) (@johnstcn) + +### Features + +#### Templates + +- `coder_script` can to add binaries and files to `PATH` with a bin directory (#12205) (@mafredri) +- Add support for marking external auth providers as optional (#12021) (#12251) (@aslilac) + > This is done via a [Terraform property](https://registry.terraform.io/providers/coder/coder/latest/docs/data-sources/external_auth#optional) in the template. +- Support custom order of agent metadata (#12066) (@mtojek) +- Support `order` property of `coder_app` resource (#12077) (@mtojek) +- Support `order` property of `coder_agent` (#12121) (@mtojek) +- Support custom validation errors for number-typed parameters (#12224) (@mtojek) + +#### CLI + +- Support `--header` and `--header-command` in config-ssh (#10413) (@JoshVee) +- Make URL optional for `coder login` (#10925) (#12466) (@elasticspoon) + +#### Dashboard + +- Add activity status and autostop reason to workspace overview (#11987) (@aslilac) + ![Autostop Cause Display](https://raw.githubusercontent.com/coder/coder/main/docs/changelogs/images/autostop-visibility.png) +- Support any file extension in the template editor (#12000) (@BrunoQuaresma) +- Support creating templates from scratch (#12082) (@BrunoQuaresma) +- Show previous agent scripts logs (#12233) (@BrunoQuaresma) +- Show build logs on template creation (#12271) (@BrunoQuaresma) +- Support zip archives for template files (#12323) (@BrunoQuaresma) +- Show client errors in DERP Region health page (#12318) (@BrunoQuaresma) +- Display error messages on ws and access url health pages (#12430) + (@BrunoQuaresma) +- Warn users if they leave the template editor without publishing (#12406) (@BrunoQuaresma) +- Add Confluence, NET, and MS Teams icons as static files (#12500) (#12512) (#12513) (@michaelbrewer) +- Render markdown in template update messages (#12273) (@aslilac) + +#### Backend + +- Expose DERP server debug metrics (#12135) (@spikecurtis) +- Add logSender for sending logs on agent v2 API (#12046) (@spikecurtis) +- Clean up organization handling (#12142) (#12143) (#12146) (@Emyrk) +- Change agent to use v2 API for reporting stats (#12024) (@spikecurtis) +- Send log limit exceeded in response, not error (#12078) (@spikecurtis) +- Add template activity_bump property (#11734) (@deansheather) + ![Activity Bump](https://raw.githubusercontent.com/coder/coder/main/docs/changelogs/images/activity-bump.png) +- Add WaitUntilEmpty to LogSender (#12159) (@spikecurtis) +- Disable directory listings for static files (#12229) (@Emyrk) +- Switch agent to use v2 API for sending logs (#12068) (@spikecurtis) +- Use v2 API for agent lifecycle updates (#12278) (@spikecurtis) +- Use v2 API for agent metadata updates (#12281) (@spikecurtis) +- Show tailnet peer diagnostics after coder ping (#12314) (@spikecurtis) +- Add derp mesh health checking in workspace proxies (#12222) (@deansheather) +- Make agent stats' cardinality configurable (#12468) (@dannykopping) +- Server: Set sane default for gitea external auth (#12306) (@Emyrk) +- Server: Enable Prometheus endpoint for external provisioner (#12320) (@mtojek) +- Implement provisioner auth middleware and proper org params (#12330) (@Emyrk) + +### Experimental features + +The following features are hidden or disabled by default as we don't guarantee stability. Learn more about experiments in [our documentation](https://coder.com/docs/v2/latest/contributing/feature-stages#experimental-features). + +- The `coder support` command generates a ZIP with deployment information, agent logs, and server config values for troubleshooting purposes. We will publish documentation on how it works (and un-hide the feature) in a future release (#12328) (@johnstcn) +- Port sharing: Allow users to share ports running in their workspace with other Coder users (#11939) (#12119) (#12383) (@deansheather) (@f0ssel) + ![Port Sharing](https://raw.githubusercontent.com/coder/coder/main/docs/changelogs/images/sharable-ports.png) + +### Bug fixes + +- SSH: Allow scp to exit with zero status (#12028) (@mafredri) +- Web Terminal: Fix screen startup speed by disabling messages (#12190) (@mafredri) +- CLI: Avoid panic when external auth name isn't provided (#12177) (@coadler) +- CLI: Do not screenshot with `coder scaletest` if verbose=false (#12317) (@johnstcn) +- CLI: Generate correctly named file in DumpHandler (#12409) (@mafredri) +- CLI: Don't error on required flags with `--help` (#12181) (@coadler) +- Server: Do not redirect /healthz (#12080) (@johnstcn) +- SSH: Prevent reads/writes to stdin/stdout in stdio mode (#12045) (@mafredri) +- Server: Mark provisioner daemon psk as secret (#12322) (@johnstcn) +- Server: Use database.IsQueryCanceledError instead of xerrors.Is(err, context.Canceled) (#12325) (@johnstcn) +- Server: Pass block endpoints into servertailnet (#12149) (@coadler) +- Server: Prevent nil err deref (#12475) (@johnstcn) +- Server: Correctly handle tar dir entries with missing path separator (#12479) (@johnstcn) +- codersdk: Correctly log coordination error (#12176) (@coadler) +- Server: Add ability to synchronize with startup script via done file (#12058) (@mafredri) +- Server: Check provisionerd API version on connection (#12191) (@johnstcn) +- Dashboard: Print API backend calls for e2e tests (#12051) (@mtojek) +- Dashboard: Enable submit when auto start and stop are both disabled (#12055) (@BrunoQuaresma) +- Dashboard: Fix infinite loading when template has no previous version (#12059) (@BrunoQuaresma) +- Dashboard: Ignore fileInfo if file is missing (#12154) (@mtojek) +- Dashboard: Match activity bump text with template settings (#12170) (@BrunoQuaresma) +- Dashboard: Fix language detection for Dockerfile (#12188) (@BrunoQuaresma) +- Dashboard: Fix parameters field size (#12231) (@BrunoQuaresma) +- Dashboard: Fix bottom overflow on web terminal (#12228) (@BrunoQuaresma) +- Dashboard: Fix error when typing long number on ttl (#12249) (@BrunoQuaresma) +- Dashboard: Fix form layout for tablet viewports (#12369) (@BrunoQuaresma) +- Dashboard: Retry and debug passing build parameters options (#12384) (@BrunoQuaresma) +- Dashboard: Fix terminal size when displaying alerts (#12444) (@BrunoQuaresma) +- Dashboard: TemplateVersionEditor: allow triggering builds on non-dirtied template version (#12547) (@johnstcn) +- Dashboard: Warn when user leaves template editor with un-built changes (#12548) (@johnstcn) +- Tailnet: Enforce valid agent and client addresses (#12197) (@coadler) +- Server: Copy app ID in healthcheck (#12087) (@deansheather) +- Dashboard: Allow access to unhealthy/initializing apps (#12086) (@deansheather) +- Server: Do not query user_link for deleted accounts (#12112) (@Emyrk) +- Tailnet: Set node callback each time we reinit the coordinator in servertailnet (#12140) (@spikecurtis) +- Tailnet: Change servertailnet to register the DERP dialer before setting DERP map (#12137) (@spikecurtis) +- Server: Fix pgcoord to delete coordinator row last (#12155) (@spikecurtis) +- Dashboard: Improve clipboard support on HTTP connections and older browsers (#12178) (@Parkreiner) +- Server: Add postgres triggers to remove deleted users from user_links (#12117) (@Emyrk) +- Dashboard: Add tests and improve accessibility for useClickable (#12218) (@Parkreiner) +- Server: Ignore surronding whitespace for cli config (#12250) (@Emyrk) +- Tailnet: Stop waiting for Agent in a goroutine in ssh test (#12268) (@spikecurtis) +- d4d8424ce fix: fix GetOrganizationsByUserID error when multiple organizations exist (#12257) (@Emyrk) +- Server: Refresh entitlements after creating first user (#12285) (@mtojek) +- Server: Use default org over index [0] for new scim (#12284) (@Emyrk) +- Server: Avoid race between replicas on start (#12344) (@deansheather) +- Server: Use flag to enable Prometheus (#12345) (@mtojek) +- Dashboard: Increase license key rows (#12352) (@kylecarbs) +- Server: External auth device flow, check both queries for errors (#12367) (@Emyrk) +- Dashboard: Add service banner to workspace page (#12381) (@michaelbrewer) +- SDK: Always return count of workspaces (#12407) (@mtojek) +- SDK: Improve pagination parser (#12422) (@mtojek) +- SDK: Use timestamptz instead of timestamp (#12425) (@mtojek) +- Dashboard: Ensure auto-workspace creation waits until all parameters are ready (#12419) (@Parkreiner) +- CLI: Ensure ssh cleanup happens on cmd error (@spikecurtis) +- Dashboard: Display tooltip when selection is disabled (#12439) (@f0ssel) +- Server: Add `--block-direct-connections` to wsproxies (#12182) (@coadler) +- Examples: Fix directory for devcontainer-docker template (#12453) (@alv67) +- Dashboard: Make public menu item selectable (#12484) (@f0ssel) +- Server: Stop holding Pubsub mutex while calling pq.Listener (#12518) (@spikecurtis) + +### Documentation + +- Fix /audit & /insights params (#12043) (@ericpaulsen) +- Fix jetbrains reconnect faq (#12073) (@ericpaulsen) +- Update modules documentation (#11911) (@matifali) +- Add kubevirt coder template in list of community templates (#12113) (@sulo1337) +- Describe resource ordering in UI (#12185) (@mtojek) +- Simplify docker installation docs (#12187) (@matifali) +- Fix header font (#12193) (@mtojek) +- Document Terraform variables (#12270) (@mtojek) +- Add steps for postgres server verification (#12072) (@ericpaulsen) +- Add gitlab self-managed example (#12295) (@michaelbrewer) +- Add k8s security reference (#12334) (@ericpaulsen) +- Simplify install docs (#11946) (@bpmct) + +Compare: [`v2.8.5...v2.9.0`](https://github.com/coder/coder/compare/v2.8.5...v2.9.0) + +## Container image + +- `docker pull ghcr.io/coder/coder:v2.9.0` + +## Install/upgrade + +Refer to our docs to [install](https://coder.com/docs/v2/latest/install) or [upgrade](https://coder.com/docs/v2/latest/admin/upgrade) Coder, or use a release asset below.