OpenQuizz
Une application de gestion des contenus pédagogiques
LegacyMetadata Class Reference
Inheritance diagram for LegacyMetadata:
Collaboration diagram for LegacyMetadata:

Public Member Functions

def __init__ (self, path=None, fileobj=None, mapping=None, scheme='default')
 
def set_metadata_version (self)
 
def __getitem__ (self, name)
 
def __setitem__ (self, name, value)
 
def __delitem__ (self, name)
 
def __contains__ (self, name)
 
def __getattr__ (self, name)
 
def get_fullname (self, filesafe=False)
 
def is_field (self, name)
 
def is_multi_field (self, name)
 
def read (self, filepath)
 
def read_file (self, fileob)
 
def write (self, filepath, skip_unknown=False)
 
def write_file (self, fileobject, skip_unknown=False)
 
def update (self, other=None, **kwargs)
 
def set (self, name, value)
 
def get (self, name, default=_MISSING)
 
def check (self, strict=False)
 
def todict (self, skip_missing=False)
 
def add_requirements (self, requirements)
 
def keys (self)
 
def __iter__ (self)
 
def values (self)
 
def items (self)
 
def __repr__ (self)
 

Data Fields

 requires_files
 
 scheme
 

Detailed Description

The legacy metadata of a release.

Supports versions 1.0, 1.1, 1.2, 2.0 and 1.3/2.1 (auto-detected). You can
instantiate the class with one of these arguments (or none):
- *path*, the path to a metadata file
- *fileobj* give a file-like object with metadata as content
- *mapping* is a dict-like object
- *scheme* is a version scheme name

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
  path = None,
  fileobj = None,
  mapping = None,
  scheme = 'default' 
)

Member Function Documentation

◆ __contains__()

def __contains__ (   self,
  name 
)

◆ __delitem__()

def __delitem__ (   self,
  name 
)

◆ __getattr__()

def __getattr__ (   self,
  name 
)

◆ __getitem__()

def __getitem__ (   self,
  name 
)

◆ __iter__()

def __iter__ (   self)

◆ __repr__()

def __repr__ (   self)

◆ __setitem__()

def __setitem__ (   self,
  name,
  value 
)

◆ add_requirements()

def add_requirements (   self,
  requirements 
)

◆ check()

def check (   self,
  strict = False 
)
Check if the metadata is compliant. If strict is True then raise if
no Name or Version are provided

◆ get()

def get (   self,
  name,
  default = _MISSING 
)
Get a metadata field.

◆ get_fullname()

def get_fullname (   self,
  filesafe = False 
)
Return the distribution name with version.

If filesafe is true, return a filename-escaped form.

◆ is_field()

def is_field (   self,
  name 
)
return True if name is a valid metadata key

◆ is_multi_field()

def is_multi_field (   self,
  name 
)

◆ items()

def items (   self)

◆ keys()

def keys (   self)

◆ read()

def read (   self,
  filepath 
)
Read the metadata values from a file path.

◆ read_file()

def read_file (   self,
  fileob 
)
Read the metadata values from a file object.

◆ set()

def set (   self,
  name,
  value 
)
Control then set a metadata field.

◆ set_metadata_version()

def set_metadata_version (   self)

◆ todict()

def todict (   self,
  skip_missing = False 
)
Return fields as a dict.

Field names will be converted to use the underscore-lowercase style
instead of hyphen-mixed case (i.e. home_page instead of Home-page).
This is as per https://www.python.org/dev/peps/pep-0566/#id17.

◆ update()

def update (   self,
  other = None,
**  kwargs 
)
Set metadata values from the given iterable `other` and kwargs.

Behavior is like `dict.update`: If `other` has a ``keys`` method,
they are looped over and ``self[key]`` is assigned ``other[key]``.
Else, ``other`` is an iterable of ``(key, value)`` iterables.

Keys that don't match a metadata field or that have an empty value are
dropped.

◆ values()

def values (   self)

◆ write()

def write (   self,
  filepath,
  skip_unknown = False 
)
Write the metadata fields to filepath.

◆ write_file()

def write_file (   self,
  fileobject,
  skip_unknown = False 
)
Write the PKG-INFO format data to a file object.

Field Documentation

◆ requires_files

requires_files

◆ scheme

scheme

The documentation for this class was generated from the following file: