code: def search(spec, operator='and'):
      
      field_map = {
          'name': 'name__icontains',
          'summary': 'releases__summary__icontains',
      }
  
      query_filter = None
      for field, values in spec.items():
          for value in values:
              if field not in field_map:
                  continue
  
              field_filter = Q(**{field_map[field]: value})
              if not query_filter:
                  query_filter = field_filter
                  continue
  
              if operator == 'and':
                  query_filter &= field_filter
              else:
                  query_filter |= field_filter
  
      result = []
      packages = models.Package.objects.filter(query_filter).all()[:20]
      for package in packages:
          release = package.releases.all()[0]
          result.append({
              'name': package.name,
              'summary': release.summary,
              'version': release.version,
              '_pypi_ordering': 0,
          })
      return result
docs: Implement xmlrpc search command.
  
      This only searches through the mirrored and private packages