1#### <sub><sup><a name="v510-note-1" href="#v510-note-1">:link:</a></sup></sub> fix, breaking 2 3* tl;dr: `concourse web --peer-url` and `concourse web --tsa-peer-ip` are gone in favor of `concourse web --peer-address` 4 5 We have been doing a lot of internal refactoring and decoupling between various components. One side effect of this is that the [`web` node](https://concourse-ci.org/concourse-web.html)s no longer need to stream user artifacts to one another, which was the only reason the `concourse web --peer-url` flag was needed, so it has been removed. 6 7 However, the SSH gateways (the "TSAs"), which also run on the [`web` node](https://concourse-ci.org/concourse-web.html)s, still need their address for the forwarded worker connections advertised to other [`web` node](https://concourse-ci.org/concourse-web.html)s. This value used to be inferred by `--peer-url`, so we've added a new `--peer-address` flag for it. 8 9 10#### <sub><sup><a name="v510-note-2" href="#v510-note-2">:link:</a></sup></sub> security, breaking 11 12* The [`web` node](https://concourse-ci.org/concourse-web.html) now defaults `X-Frame-Options` to `deny` to safeguard against clicjacking attacks. If you run Concourse in an `iframe`, you'll notice that it doesn't work anymore. 13 14 To configure `X-Frame-Options` otherwise, see [Ingress](https://concourse-ci.org/concourse-web.html#web-ingress). 15 16 17#### <sub><sup><a name="v510-note-3" href="#v510-note-3">:link:</a></sup></sub> feature 18 19* [Steps](https://concourse-ci.org/steps.html) can now be annotated with an [`on_error` step hook](https://concourse-ci.org/on-error-step-hook.html), thanks to a PR by @amanw! 20 21 22#### <sub><sup><a name="v510-note-4" href="#v510-note-4">:link:</a></sup></sub> feature 23 24* Each step in the build log will now show how long it took to initialize and run when hovering over the icon to the right of the header. Thanks for the PR, @mockersf! 25 26 27#### <sub><sup><a name="v510-note-5" href="#v510-note-5">:link:</a></sup></sub> feature 28 29* Resources can now be annotated with [**`icon`**](https://concourse-ci.org/resources.html#resource-icon) to put pretty little icons in your pipeline and make different resource types easier to distinguish. This was also a PR by @mockersf - thanks a bunch! 30 31 32#### <sub><sup><a name="v510-note-6" href="#v510-note-6">:link:</a></sup></sub> feature, security 33 34* Resource metadata will no longer be shown by default in exposed pipelines. 35 36 Metadata should never contain credentials or any criticial information, but for some use cases it is not desireable to show e.g. commit messages and authors even though the pipeline is public. 37 38 The resource must now have the [**`public`**](https://concourse-ci.org/resources.html#resource-public) value set in order to show metadata, just like jobs. One caveat is build output: if a job is public, any [`get` step](https://concourse-ci.org/get-step.html) and [`put` step](https://concourse-ci.org/put-step.html)s will still show their metadata. 39 40 41#### <sub><sup><a name="v510-note-7" href="#v510-note-7">:link:</a></sup></sub> feature 42 43* [`fly execute`](https://concourse-ci.org/running-tasks.html#fly-execute) will now upload inputs and download outputs in parallel. 44 45 46#### <sub><sup><a name="v510-note-8" href="#v510-note-8">:link:</a></sup></sub> feature 47 48* The [Concourse BOSH release](https://github.com/concourse/concourse-bosh-release) now packages Ubuntu-flavored images for each core resource type instead of Alpine. This is primarily for compliance reasons. Nothing should really be affected. 49 50 The `.tgz` distribution continues to use Alpine so the tarball doesn't get even bigger. Once we minimize the amount of resource types we package with Concourse (see [(RF)RFC #23](https://github.com/concourse/rfcs/issues/23)) we'll be removing them and standardizing on Ubuntu for simplicity's sake. 51 52 53#### <sub><sup><a name="v510-note-9" href="#v510-note-9">:link:</a></sup></sub> feature 54 55* [Generic oAuth](https://concourse-ci.org/generic-oauth.html) can now be configured with different user ID/name keys. They default to `user_id` and `user_name`, just as before. 56 57 58#### <sub><sup><a name="v510-note-10" href="#v510-note-10">:link:</a></sup></sub> feature 59 60* [Generic OIDC auth](https://concourse-ci.org/generic-oidc-auth.html) can now be configured with a different user name key. It defaults to `username`, just as before. 61 62 63#### <sub><sup><a name="v510-note-11" href="#v510-note-11">:link:</a></sup></sub> feature 64 65* Previously, workers would garbage collect containers in volumes sequentially, destroying containers first and then volumes. This meant that if a worker had thousands of volumes to remove, it would go through and destroy them one by one - meanwhile, containers were not being garbage-collected. 66 67 Containers and volumes are now garbage-collected in parallel to each other, with a default max-in-flight of 5 containers and 5 volumes at a time. This speeds up garbage-collection overall and prevents an imbalance in volume/container counts from slowing each other down. This is especially important as workers are typically capped at 250 containers, but may have thousands of volumes and may even have a slow disk. 68 69 70#### <sub><sup><a name="v510-note-12" href="#v510-note-12">:link:</a></sup></sub> feature 71 72* The [Vault credential manager](https://concourse-ci.org/vault-credential-manager.html) can now be configured with a global shared path for credential lookup. This should make sharing credentials between teams a bit easier to manage, in lieu of [RFC #21 (per-team credential managers)](https://github.com/concourse/rfcs/pull/21). Use with care! All teams will be able to access it. 73 74 75#### <sub><sup><a name="v510-note-13" href="#v510-note-13">:link:</a></sup></sub> feature 76 77* Pipelines now have a play/pause button at the top bar, so you don't have to go all the way back to the dashboard and find the pause button there. Thanks for the PR, @robwhitby! 78 79 80#### <sub><sup><a name="v510-note-14" href="#v510-note-14">:link:</a></sup></sub> feature 81 82* URLs in resource metadata are now clickable, thanks to a PR by @Twiknight! 83 84 85#### <sub><sup><a name="v510-note-15" href="#v510-note-15">:link:</a></sup></sub> fix, security 86 87* Fixed a minor information leak that would allow unauthenticated users to fetch the step names and structure for a build whose job is not marked [**`public`**](https://concourse-ci.org/jobs.html#job-public). 88 89 This only exposed step names, but it was still a little weird to allow it to be fetched. It will now return a `401 Unauthorized` instead. 90 91 92#### <sub><sup><a name="v510-note-16" href="#v510-note-16">:link:</a></sup></sub> fix 93 94* Previously, manually-triggered builds would cause resource checking to be performed in the job scheduling loop. This ensured that manually triggered builds ran with the latest versions available, but it also slowed down scheduling for every other job in the pipeline, because they're all scheduled one-by-one. 95 96 In the worst case, this meant a hanging resource check could result in all builds in the pipeline being stuck in the "pending" state for a long period of time (or, "like, forever"). 97 98 So we changed things around a bit: instead, the scheduler just won't start a manually triggered build until the "last checked" timestamp of each of its resources is after the build's "created at" timestamp. And to make that [go faster](https://www.youtube.com/watch?v=LY8P--R9L4Y), when a build is manually triggered we'll short-circuit the checking interval for each of its input resources. 99 100 With this change, if/when a resource check is hanging or slow it at least won't gum up the pipeline scheduling for all the other jobs. 101 102 Expect more improvements in this area in the next few releases! We'll be making jobs schedule in parallel soon so they can't affect each other, and we're working on a new ["algorithm"](https://github.com/concourse/concourse/tree/master/atc/db/algorithm) that should scale a *lot* better with pipelines that have a ton of data or versions. 103 104 105#### <sub><sup><a name="v510-note-17" href="#v510-note-17">:link:</a></sup></sub> fix 106 107* The above refactoring also fixed a race condition that could result in inputs configured with [`version: every`](https://concourse-ci.org/get-step.html#get-step-version) having versions skipped when a build is manually triggered. 108 109 110#### <sub><sup><a name="v510-note-18" href="#v510-note-18">:link:</a></sup></sub> feature 111 112* The [`fly` CLI](https://concourse-ci.org/fly.html) learned two new commands: [`fly delete-target`](https://concourse-ci.org/fly.html#fly-delete-target) and [`fly edit-target`](https://concourse-ci.org/fly.html#fly-edit-target). Thanks for the PR, @pivotal-kahin-ng! 113 114 115#### <sub><sup><a name="v510-note-19" href="#v510-note-19">:link:</a></sup></sub> feature 116 117* The [`fly intercept`](https://concourse-ci.org/builds.html#fly-intercept) command can now be given a specific container `--handle` to intercept, thanks to another PR by @pivotal-kahin-ng! 118 119 120#### <sub><sup><a name="v510-note-20" href="#v510-note-20">:link:</a></sup></sub> feature 121 122* The [`fly prune-worker`](https://concourse-ci.org/administration.html#fly-prune-worker) can now be given an `--all-stalled` or `-a` flag to prune all the stalled workers, thanks to a PR by @aledeganopix4d! 123 124 125#### <sub><sup><a name="v510-note-21" href="#v510-note-21">:link:</a></sup></sub> fix 126 127* [**`version`**](https://concourse-ci.org/get-step.html#get-step-version) on a [`get` step](https://concourse-ci.org/get-step.html) will now take precedence over versions pinned via the web UI or via [**`version`**](https://concourse-ci.org/resources.html#resource-version) on a resource definition. 128 129 130#### <sub><sup><a name="v510-note-22" href="#v510-note-22">:link:</a></sup></sub> fix 131 132* The HD dashboard view got a little weird in the last couple releases - it's fixed now. 133 134 135#### <sub><sup><a name="v510-note-23" href="#v510-note-23">:link:</a></sup></sub> fix 136 137* Fixed the spacing of the pipeline view so super tall pipelines don't get clipped by the top bar. 138 139 140#### <sub><sup><a name="v510-note-24" href="#v510-note-24">:link:</a></sup></sub> fix 141 142* Fixed the `status:running` search functionality on the dashboard view. 143 144 145#### <sub><sup><a name="v510-note-25" href="#v510-note-25">:link:</a></sup></sub> fix 146 147* When viewing a pipeline build by ID (`/builds/123`), the top bar will show the breadcrumb for its pipeline and job instead of being empty. 148 149 150#### <sub><sup><a name="v510-note-26" href="#v510-note-26">:link:</a></sup></sub> fix 151 152* The breadcrumb in the top bar now uses actual links, so they can be middle-clicked and right-clicked to your heart's content. 153 154 155#### <sub><sup><a name="v510-note-27" href="#v510-note-27">:link:</a></sup></sub> fix 156 157* The groups bar on the pipeline view now has hover states for each group. 158 159 160#### <sub><sup><a name="v510-note-28" href="#v510-note-28">:link:</a></sup></sub> fix 161 162* Fixed a bug that caused credential managers to be instantiated twice, resulting in two auth loops. 163 164 165#### <sub><sup><a name="v510-note-29" href="#v510-note-29">:link:</a></sup></sub> fix 166 167* When viewing a one-off build in the web UI, the build will now render instead of chucking errors in the browser console. 168 169 170#### <sub><sup><a name="v510-note-30" href="#v510-note-30">:link:</a></sup></sub> fix 171 172* The web UI is now up-to-date with Elm 0.19! You shouldn't really notice anything, but...yay! 173 174 175#### <sub><sup><a name="v510-note-31" href="#v510-note-31">:link:</a></sup></sub> fix 176 177* Fixed a crash that would occur when a build finished that produced outputs for a resource that had been un-configured from the pipeline in the meantime. 178 179 180#### <sub><sup><a name="v510-note-32" href="#v510-note-32">:link:</a></sup></sub> fix 181 182* The [`web` node](https://concourse-ci.org/concourse-web.html) will now retry on `unexpected EOF` errors which could occur when a worker was restarted while a build was running a container on it. 183 184 185#### <sub><sup><a name="v510-note-33" href="#v510-note-33">:link:</a></sup></sub> fix 186 187* Fixed a bug with the Vault login re-try logic that caused it to go into a fast loop after reaching the maximum interval. Now it'll actually stay at the maximum interval. 188 189 190#### <sub><sup><a name="v510-note-34" href="#v510-note-34">:link:</a></sup></sub> fix 191 192* When viewing a build for a job that has a ton of builds, only the first batch of builds will be fetched and rendered instead of all of them. Older builds will be automatically loaded if the build being viewed is old, or as the user scrolls to see them. 193 194 195#### <sub><sup><a name="v510-note-35" href="#v510-note-35">:link:</a></sup></sub> feature 196 197* We're now consistently using Material Design icons everywhere in our UI - the last of the Font Awesome stragglers have been replaced! 198 199 200#### <sub><sup><a name="v510-note-36" href="#v510-note-36">:link:</a></sup></sub> fix 201 202* Fixed quite a few quirks with the dashboard search: 203 204 205 206 * Team name autocomplete will now work even if you're not logged in. 207 208 209 210 * Fixed the unstyled autosuggest menu in Chrome. 211 212 213 214 * Hitting the escape key will now un-focus the search field. 215 216 217 218 * The search autocomplete will now only appear if you press a key with the search field focused. 219 220 221 222 * Typing `?` into the search field will no longer bring up the hotkey help pane. 223 224 225 226 227#### <sub><sup><a name="v510-note-37" href="#v510-note-37">:link:</a></sup></sub> fix 228 229* [`fly execute`](https://concourse-ci.org/running-tasks.html#fly-execute) will now print the correct URL for the build when running with `-j`. 230 231 232#### <sub><sup><a name="v510-note-38" href="#v510-note-38">:link:</a></sup></sub> fix 233 234* [`fly login`](https://concourse-ci.org/fly.html#fly-login) will now create `~/.flyrc` with stricter permissions (`0600`). 235 236 237#### <sub><sup><a name="v510-note-39" href="#v510-note-39">:link:</a></sup></sub> feature 238 239* We've added a (hopefully subtle) stripey animation to running builds in the build number list to help differentiate between errored and running builds. 240 241 242#### <sub><sup><a name="v510-note-40" href="#v510-note-40">:link:</a></sup></sub> feature 243 244* [`fly set-pipeline`](https://concourse-ci.org/setting-pipelines.html#fly-set-pipeline) will now print a copy-pasteable [`fly unpause-pipeline`](https://concourse-ci.org/managing-pipelines.html#fly-unpause-pipeline) command, thanks to a PR by @benchristel! 245 246 247#### <sub><sup><a name="v510-note-41" href="#v510-note-41">:link:</a></sup></sub> fix 248 249* With [**v5.0.0**](https://github.com/concourse/concourse/releases/tag/v5.0.0) we introduced a bit of a performance regression with loading the versions for a pipeline during scheduling. We've made an incremental change to make it a bit faster. 250 251 This will also be fixed by the new input candidate algorithm mentioned previously. 252 253 254#### <sub><sup><a name="v510-note-42" href="#v510-note-42">:link:</a></sup></sub> fix 255 256* The dashboard will no longer crash when a pipeline is configured with a circular dependency. 257 258 259#### <sub><sup><a name="v510-note-43" href="#v510-note-43">:link:</a></sup></sub> fix 260 261* Fixed the rendering of many, many pipeline groups. 262 263 264