Specify stacklevel=2 to these warnings.warn calls, so that users can actually see where these deprecated methods are called, instead of a trace in message_factory.py file itself.

PiperOrigin-RevId: 546104883
pull/13220/head
Yilei Yang 2 years ago committed by Copybara-Service
parent a734d12d61
commit 84b1beb3bb
  1. 29
      python/google/protobuf/message_factory.py

@ -176,9 +176,12 @@ class MessageFactory(object):
Returns:
A class describing the passed in descriptor.
"""
warnings.warn('MessageFactory class is deprecated. Please use '
'GetMessageClass() instead of MessageFactory.GetPrototype. '
'MessageFactory class will be removed after 2024.')
warnings.warn(
'MessageFactory class is deprecated. Please use '
'GetMessageClass() instead of MessageFactory.GetPrototype. '
'MessageFactory class will be removed after 2024.',
stacklevel=2,
)
return GetMessageClass(descriptor)
def CreatePrototype(self, descriptor):
@ -193,9 +196,12 @@ class MessageFactory(object):
Returns:
A class describing the passed in descriptor.
"""
warnings.warn('Directly call CreatePrototype is wrong. Please use '
'GetMessageClass() method instead. Directly use '
'CreatePrototype will raise error after July 2023.')
warnings.warn(
'Directly call CreatePrototype is wrong. Please use '
'GetMessageClass() method instead. Directly use '
'CreatePrototype will raise error after July 2023.',
stacklevel=2,
)
return _InternalCreateMessageClass(descriptor)
def GetMessages(self, files):
@ -212,10 +218,13 @@ class MessageFactory(object):
any dependent messages as well as any messages defined in the same file as
a specified message.
"""
warnings.warn('MessageFactory class is deprecated. Please use '
'GetMessageClassesForFiles() instead of '
'MessageFactory.GetMessages(). MessageFactory class '
'will be removed after 2024.')
warnings.warn(
'MessageFactory class is deprecated. Please use '
'GetMessageClassesForFiles() instead of '
'MessageFactory.GetMessages(). MessageFactory class '
'will be removed after 2024.',
stacklevel=2,
)
return GetMessageClassesForFiles(files, self.pool)

Loading…
Cancel
Save