Skip to content

HttpsError.__init__ does not pass message to super().__init__() #314

Description

@jhuleatt

Description

In src/firebase_functions/https_fn.py, HttpsError.__init__ stores self.message = message but calls super().__init__() with no arguments:

https://github.com/firebase/firebase-functions-python/blob/main/src/firebase_functions/https_fn.py#L251-L266

    def __init__(
        self,
        code: FunctionsErrorCode,
        message: str,
        details: _typing.Any | None = None,
    ):
        self.code = code
        self.message = message
        self.details = details

        if code not in _error_code_map:
            raise ValueError(f"Unknown error code: ${code}.")

        self._http_error_code = _error_code_map[code]

        super().__init__()

Impact

Because message is not passed to super().__init__(message):

  • str(err) evaluates to "" (empty string) and err.args is ().
  • Logging the exception directly (e.g. logger.error(err)) or inspecting tracebacks in tests / unhandled contexts prints firebase_functions.https_fn.HttpsError with no message.

Suggested Fix

Pass message to super().__init__(message).

(Context: surfaced via firebase/functions-samples#1137)

Activity

  1. Aayush99910 commented on Oct 7, 2026

    @Aayush99910

    Opened a PR for this: #315

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions