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