# This is a stub package designed to roughly emulate the _yaml # extension module, which previously existed as a standalone module # and has been moved into the `yaml` package namespace. # It does not perfectly mimic its old counterpart, but should get # close enough for anyone who's relying on it even when they shouldn't. import yaml # in some circumstances, the yaml module we imoprted may be from a different version, so we need # to tread carefully when poking at it here (it may not have the attributes we expect) if not getattr(yaml, '__with_libyaml__', False): from sys import version_info exc = ModuleNotFoundError if version_info >= (3, 6) else ImportError raise exc("No module named '_yaml'") else: from yaml._yaml import * import warnings warnings.warn( 'The _yaml extension module is now located at yaml._yaml' ' and its location is subject to change. To use the' ' LibYAML-based parser and emitter, import from `yaml`:' ' `from yaml import CLoader as Loader, CDumper as Dumper`.', DeprecationWarning ) del warnings # Don't `del yaml` here because yaml is actually an existing # namespace member of _yaml. __name__ = '_yaml' # If the module is top-level (i.e. not a part of any specific package) # then the attribute should be set to ''. # https://docs.python.org/3.8/library/types.html __package__ = ''