def all_with_tags(*tags)
      return [] if tags.empty?
      select do |project|
        tags.map(&:to_sym).all? { |tag| project.all_tags.include?(tag) }
      end
    end
def all_with_tags(*tags)
      return [] if tags.empty?
      select do |project|
        tags.map(&:to_sym).all? { |tag| project.all_tags.include?(tag) }
      end
    end
Public: Returns all projects that have one or more of the given tags.

 *tags - One or more tags to filter by.

 Returns an Array of Project subclasses, one for each project in the
 repository that has one or more of the given tags.