docs: def compare_packages(rpm_str_a, rpm_str_b, arch_provided=True):
      """Compare two RPM strings to determine which is newer
  
      Parses version information out of RPM package strings of the form
      returned by the ``rpm -q`` command and compares their versions to
      determine which is newer. Provided strings *do not* require an
      architecture at the end, although if providing strings without
      architecture, the ``arch_provided`` parameter should be set to
      False.
  
      Note that the packages do not have to be the same package (i.e.
      they do not require the same name or architecture).
  
      :param str rpm_str_a: an rpm package string
      :param str rpm_str_b: an rpm package string
      :param bool arch_provided: whether package strings contain
          architecture information
      :return: 1 (``a`` is newer), 0 (versions are equivalent), or -1
          (``b`` is newer)
      :rtype: int
      """
      logger.debug('resolve_versions(%s, %s)', rpm_str_a, rpm_str_b)
      evr_a = parse_package(rpm_str_a, arch_provided)['EVR']
      evr_b = parse_package(rpm_str_b, arch_provided)['EVR']
      return labelCompare(evr_a, evr_b)