Coder Coder Versions Save

Provision remote development environments via Terraform

v2.9.1

2 months ago

Changelog

Features

  • Add separate signals for shutdown handling on Coder server and provisionerd. (#12358) (@kylecarbs)

    SIGTERM will stop accepting new provisioner jobs and wait running jobs to finish before shutting down.

    SIGINT (existing behavior) will cancel in-flight jobs then shut down.

Bug fixes

  • Fixed an issue where single-replica workspace proxy deployments may enter an unhealthy state due to replica management errors. (#12641) (@deansheather)

  • Fixed an issue preventing upgrade to v2.9.0 due to a migration that hard a hardcoded schema name. (#12620) (@95gabor)

Compare: v2.9.0...v2.9.1

Container image

  • docker pull ghcr.io/coder/coder:v2.9.1

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.9.0

3 months ago

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 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
  • 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
  • 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.

  • 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

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

Container image

  • docker pull ghcr.io/coder/coder:v2.9.0

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.8.5

3 months ago

Changelog

  • Fixed an issue where some template updates caused workspaces to stop after 2 hours, even while in use (#12446)
  • Add DERP mesh health checking to workspace proxies (#12220) (#12222)
  • Improve clipboard support on HTTP connections and older browsers (#12178)

Compare: v2.8.4...v2.8.5

Container image

  • docker pull ghcr.io/coder/coder:v2.8.5

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.8.4

3 months ago

Changelog

All users are recommended to upgrade to a version that patches GHSA-7cc2-r658-7xpf as soon as possible if they are using OIDC authentication with the CODER_OIDC_EMAIL_DOMAIN setting.

Security

Compare: v2.8.3...v2.8.4

Container image

  • docker pull ghcr.io/coder/coder:v2.8.4

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.7.3

3 months ago

Changelog

All users are recommended to upgrade to a version that patches GHSA-7cc2-r658-7xpf as soon as possible if they are using OIDC authentication with the CODER_OIDC_EMAIL_DOMAIN setting.

Security

Compare: v2.7.2...v2.7.3

Container image

  • docker pull ghcr.io/coder/coder:v2.7.3

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.6.1

3 months ago

Changelog

All users are recommended to upgrade to a version that patches GHSA-7cc2-r658-7xpf as soon as possible if they are using OIDC authentication with the CODER_OIDC_EMAIL_DOMAIN setting.

Security

Compare: v2.6.0...v2.6.1

Container image

  • docker pull ghcr.io/coder/coder:v2.6.1

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.8.3

3 months ago

Changelog

Bug fixes

  • Fixed an issue where some workspace apps were inaccessible.

Compare: v2.8.2...v2.8.3

Container image

  • docker pull ghcr.io/coder/coder:v2.8.3

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.8.2

4 months ago

Changelog

Bug fixes

  • Fixed an issue where workspace apps may never be marked as healthy.

Compare: v2.8.1...v2.8.2

Container image

  • docker pull ghcr.io/coder/coder:v2.8.2

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.8.1

4 months ago

Changelog

Bug fixes

Compare: v2.8.0...v2.8.1

Container image

  • docker pull ghcr.io/coder/coder:v2.8.1

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.

v2.8.0

4 months ago

Changelog

Features

  • Coder will now autofill parameters in the "create workspace" page based on the previous value (#11731) (@ammario) Parameter autofill
  • Change default Terraform version to v1.6 and relax max version constraint (#12027) (@johnstcn)
  • Show workspace name suggestions below the name field (#12001) (@aslilac)
  • Add favorite/unfavorite commands (@johnstcn)
  • Add .zip support for Coder templates (#11839) (#12032) (@mtojek)
  • Add support for --wait and scripts that block login (#10473) (@mafredri)
  • Users can mark workspaces as favorite to show up at the top of their list (#11875) (#11793) (#11878) (#11791) (@johnstcn) Favorite workspaces
  • Add Prometheus metrics to servertailnet (#11988) (@coadler)
  • Add support for concurrent scenarios (#11753) (@mafredri)
  • Display user avatar on workspace page (#11893) (@BrunoQuaresma)
  • Do not show popover on update deadline (#11921) (@BrunoQuaresma)
  • Simplify "Create Template" form by removing advanced settings (#11918) (@BrunoQuaresma)
  • Show deprecation message on template page (#11996) (@BrunoQuaresma)
  • Check agent API version on connection (#11696)
  • Add "updated" search param to workspaces (#11714)
  • Add option to speedtest to dump a pcap of network traffic (#11848) (@coadler)
  • Add logging to client tailnet yamux (#11908) (@spikecurtis)
  • Add customizable upgrade message on client/server version mismatch (#11587) (@sreya)
  • Add logging to pgcoord subscribe/unsubscribe (#11952) (@spikecurtis)
  • Add logging to pgPubsub (#11953) (@spikecurtis)
  • Add logging to agent yamux session (#11912) (@spikecurtis)
  • Move agent v2 API connection monitoring to yamux layer (#11910) (@spikecurtis)
  • Add statsReporter for reporting stats on agent v2 API (#11920) (@spikecurtis)
  • Add metrics to PGPubsub (#11971) (@spikecurtis)
  • Add custom error message on signups disabled page (#11959) (@mtojek)

Bug fixes

  • Make ServerTailnet set peers lost when it reconnects to the coordinator (#11682)
  • Properly auto-update workspace on SSH if template policy is set (#11773)
  • Allow template name length of 32 in template push and create (#11915) (@mafredri)
  • Alter return signature of convertWorkspace, add check for requesterID (#11796) (@johnstcn)
  • Fix limit in GetUserWorkspaceBuildParameters (#11954) (@mafredri)
  • Fix test flake in TestHeartbeat (#11808) (@johnstcn)
  • Do not cache context cancellation errors (#11840) (@johnstcn)
  • Fix startup script on workspace creation (#11958) (@matifali)
  • Fix startup script looping (#11972) (@code-asher)
  • Add ID to default columns in licenses list output (#11823) (@johnstcn)
  • Handle query canceled error in sendBeat() (#11794) (@johnstcn)
  • Fix proxy settings link (#11817) (@BrunoQuaresma)
  • Disable autostart and autostop according to template settings (#11809) (@Kira-Pilot)
  • Fix capitalized username (#11891) (@BrunoQuaresma)
  • Fix parameters' request upon template variables update (#11898) (@BrunoQuaresma)
  • Fix text overflow on batch ws deletion (#11981) (@BrunoQuaresma)
  • Fix parameter input icon shrink (#11995) (@BrunoQuaresma)
  • Use TSMP ping for reachability, not latency (#11749)
  • Display error when fetching OAuth2 provider apps (#11713)
  • Fix code-server path based forwarding, defer to code-server (#11759)
  • Use correct logger for lifecycle_executor (#11763)
  • Disable keepalives in workspaceapps transport (#11789) (@coadler)
  • Accept agent RPC connection without version query parameter (#11790) (@spikecurtis)
  • Stop spamming DERP map updates for equivalent maps (#11792) (@spikecurtis)
  • Check update permission to start workspace (#11798) (@mtojek)
  • Always attempt external auth refresh when fetching (#11762) (@Emyrk)
  • Stop running tests that exec sh scripts in parallel (#11834) (@spikecurtis)
  • Fix type error from theme update (#11844) (@aslilac)
  • Use new context after t.Parallel in TestOAuthAppSecrets (@spikecurtis)
  • Always attempt external auth refresh when fetching (#11762) (#11830) (@Emyrk)
  • Wait for new template version before promoting (#11874) (@spikecurtis)
  • Respect wait flag on ping (#11896) (@f0ssel)
  • Fix cliui prompt styling (#11899) (@aslilac)
  • Fix prevent agent_test.go from failing on error logs (#11909) (@spikecurtis)
  • Add timeout to listening ports request (#11935) (@coadler)
  • Only delete expired agents on success (#11940) (@coadler)
  • Close MultiAgentConn when coordinator closes (#11941) (@spikecurtis)
  • Strip timezone information from a date in dau response (#11962) (@Emyrk)
  • Improve click UX and styling for Auth Token page (#11863) (@Parkreiner)
  • Rewrite url to agent ip in single tailnet (#11810) (@coadler)
  • Avoid race in TestPGPubsub_Metrics by using Eventually (#11973) (@spikecurtis)
  • Always return a clean http client for promoauth (#11963) (@Emyrk)
  • Change build status colors (#11985) (@aslilac)
  • Only display xray results if vulns > 0 (#11989) (@sreya)
  • Use dark background in terminal, even when a light theme is selected (#12004) (@aslilac)
  • Fix graceful disconnect in DialWorkspaceAgent (#11993) (@spikecurtis)
  • Stop logging error on query canceled (#12017) (@spikecurtis)
  • Only display quota if it is higher than 0 (#11979) (@BrunoQuaresma)

Documentation

  • Using coder modules in offline deployments (#11788) (@matifali)
  • Simplify JFrog integration docs (#11787) (@matifali)
  • Add guide for azure federation (#11864) (@ericpaulsen)
  • Fix example template README 404s and semantics (#11903) (@ericpaulsen)
  • Update remote docker host docs (#11919) (@matifali)
  • Add FAQ for gateway reconnects (#12007) (@ericpaulsen)

Code refactoring

  • Apply cosmetic changes and remove ExternalAuth from settings page (#11756)
  • Minor improvements create workspace form (#11771)
  • Verify external auth before displaying workspace form (#11777) (@BrunoQuaresma)

Compare: v2.7.2...v2.7.3

Container image

  • docker pull ghcr.io/coder/coder:v2.7.3

Install/upgrade

Refer to our docs to install or upgrade Coder, or use a release asset below.