Description
At the risk of being a broken record, I still firmly believe it is a mistake to even attempt to deprecate the ENV key value
syntax in favor of only supporting ENV key=value
. Parsing the former is much simpler, and more in line with the way other Dockerfile
instructions are parsed (and have been parsed historically). It is also much easier to generate from other code correctly and safely. As I noted on that other issue, if there are cases where the behavior of the former is ambiguous, that should be the thing we detect and warn about, not just trying to deprecate the entire syntax.
For the current linting rule, I would propose that it either be removed or somehow disabled by default, as it is causing unnecessary and noisy churn across the industry with very little practical benefit. 🙇 ❤️
Examples of unnecessary churn/noise:
- Update "ENV key value" format in README krallin/tini#226
- feat: Update Dockerfile ENV instructions to use
=
instead of whitespace as the key value separator nginx/docker-nginx#906 - Update Bonita base alpine image version to 3.20 docker-library/official-images#17136
- Supress
LegacyKeyValueFormat
warnings docker-library/ruby#465 - eggheads/eggdrop-docker@e685e40
- remove legacy ENV variables adoptium/containers#628
- Dockerfile: Fix legacy
ENV key value
format docker/docker-ce-packaging#1047 - style: update the use of LegacyKeyValueFormat in Dockerfiles carlossg/docker-maven#487
- [master] rpm, deb: fix Dockerfile linting issues docker/docker-ce-packaging#1064