Dataset version aliases can now be updated programmatically with output metadata.
Datasets can now also be created from task outputs.
The datasets view is now available both in a project context and stand-alone, for a less jarring navigation experience.
Data browser views now support presets.
Triggers can now be deleted with the click of a button, instead of with the tippy-tap-tipety-tap of a programmer writing a script against our API.
We now prohibit creating useless `require-approval` pipeline actions.
Deleted executions no longer contribute to project property keys (metadata and parameters), so no more `accuray` littering your views forever!
You can now disable word-wrapping for event log views.
The execution table's title column's width is now stored (locally) so you don't have to resize it every time you navigate around.
You can now add a note (comment) to an execution or task right while creating one.
You can no longer rename projects that have active deployment versions, so as not to break every single URL pointing to them.
Executions and tasks should start a bit faster, since environment scaling is deferred.
We made the app small-talk a little less (like a good Finn should), which should make it a bit faster.
Environment scaling should occur more snappily all in all.
When using wildcards and the `suffix` keep-directories mode, patterns such as `foo/a*.jpg` with `foo/acat.jpg` and `foo/adog.jpg` will no longer result in `cat.jpg` and `dog.jpg`, but `acat.jpg` and `adog.jpg` as expected.
Validation for datum alias names is now unified between the UI and the API. Oopsy...
You'll now actually know why you can't disable a default environment, not just get a dreaded "oopsy woopsy" message.
Event export CSVs that would contain null bytes no longer contain null bytes, which is useful as it makes it possible to actually export them. Nice!
Certain race conditions around execution finishing status propagation should be now gone. Atomicity is hard, but we're trying.