gh-76007: Deprecate `__version__` attribute in `http.server` by hugovk · Pull Request #142658 · python/cpython
IMO it's a good idea to use the Python version as the HTTP server version.
However, the Python version is already part of the combined version string: "BaseHTTP/0.6 Python/3.15.0".
This is made up of:
def version_string(self): """Return the server software version string.""" return self.server_version + ' ' + self.sys_version
And the comments say server_version can be a name without a version:
# The Python system version, truncated to its first component. sys_version = "Python/" + sys.version.split()[0] # The server software version. You may want to override this. # The format is multiple whitespace-separated strings, # where each string is of the form name[/version]. server_version = "BaseHTTP/" + __version__
So better to have something like "BaseHTTP Python/3.15.0" rather than "BaseHTTP/3.15.0 Python/3.15.0".
📚 Documentation preview 📚: https://cpython-previews--142658.org.readthedocs.build/