Skip to content

api/types/registry: update deprecation comment for AuthConfig.Email#50792

Merged
thaJeztah merged 2 commits intomoby:masterfrom
thaJeztah:fix_email_deprecation
Aug 22, 2025
Merged

api/types/registry: update deprecation comment for AuthConfig.Email#50792
thaJeztah merged 2 commits intomoby:masterfrom
thaJeztah:fix_email_deprecation

Conversation

@thaJeztah
Copy link
Member

@thaJeztah thaJeztah commented Aug 22, 2025

relates to:

api/types/registry: update deprecation comment for AuthConfig.Email

The Email field was originally used to create a new Docker Hub account
through the docker login command. The docker login command could be
used both to log in to an existing account (providing only username and
password), or to create a new account (providing desired username and
password, and an e-mail address to use for the new account).

This functionality was confusing, because it was implemented when Docker
Hub was the only registry, but the same functionality could not be used
for other registries. This functionality was removed in Docker 1.11 (API
version 1.23) through moby@aee260d, which also removed the Email field
(engine-api@9a9e468) as it was no longer used.

However, this caused issues when using a new CLI connecting with an old
daemon, as the field would no longer be serialized, and the deprecation
may not yet be picked up by custom registries, so engine-api@167efc7
added the field back, deprecated it, and added an "omitempty". There
was no official "deprecated" format yet at the time, so let's make sure
the deprecation follows the proper format to make sure it gets noticed.

- Human readable description for the release notes

Update deprecation message for `AuthConfig.Email` field

- A picture of a cute animal (not mandatory but encouraged)

The Email field was originally used to create a new Docker Hub account
through the `docker login` command. The `docker login` command could be
used both to log in to an existing account (providing only username and
password), or to create a new account (providing desired username and
password, and an e-mail address to use for the new account).

This functionality was confusing, because it was implemented when Docker
Hub was the only registry, but the same functionality could not be used
for other registries. This functionality was removed in Docker 1.11 (API
version 1.23) through [moby/moby@aee260d], which also removed the Email field
([engine-api@9a9e468]) as it was no longer used.

However, this caused issues when using a new CLI connecting with an old
daemon, as the field would no longer be serialized, and the deprecation
may not yet be picked up by custom registries, so [engine-api@167efc7]
added the field back, deprecated it, and added an "omitempty". There
was no official "deprecated" format yet at the time, so let's make sure
the deprecation follows the proper format to make sure it gets noticed.

[moby/moby@aee260d]: moby@aee260d
[engine-api@9a9e468]: docker-archive-public/docker.engine-api@9a9e468
[engine-api@167efc7]: docker-archive-public/docker.engine-api@167efc7

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
@thaJeztah thaJeztah force-pushed the fix_email_deprecation branch from 9b985c0 to d867f9f Compare August 22, 2025 12:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants