pantsbuild / pants

The Pants Build System
https://www.pantsbuild.org
Apache License 2.0
3.34k stars 638 forks source link

Don't munge types in Docker registry config values. #21649

Closed benjyw closed 6 days ago

benjyw commented 1 week ago

We document a schema for the registries dict, including specifying that certain fields should be bool-valued.

I see no need to coerce those values into bools if they were actually strings, especially since we don't document that we do that (AFAICT).

We should require users to adhere to the published schema. If this "breaks" users, well, they were accidentally relying on unadvertised leniency, and the fix is extremely easy.

Note that this coercion was very ad hoc. We don't apply it uniformly across all fields in the docker registry config, and we certainly don't do this in other dict-valued options across the repo.

This gets rid of a spurious dependency of the Docker backend on internal code of the legacy options parser.

benjyw commented 6 days ago

To clarify, I think using the wrong type is a potential sign of larger error, and we shouldn't be attempting to coerce input types. We can validate them, perhaps, but that is a separate thing, and a pretty arbitrary one.