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:
At the risk of being a broken record, I still firmly believe it is a mistake to even attempt to deprecate the
ENV key valuesyntax in favor of only supportingENV key=value. Parsing the former is much simpler, and more in line with the way otherDockerfileinstructions 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:
=instead of whitespace as the key value separator nginx/docker-nginx#906LegacyKeyValueFormatwarnings docker-library/ruby#465ENV key valueformat docker/docker-ce-packaging#1047