Sha256: 21eaf4f2f7a240fe0e22c2facc83ea33f8c599449c753e85de7fe9d1104fb433
Contents?: true
Size: 894 Bytes
Versions: 1
Compression:
Stored size: 894 Bytes
Contents
require 'weakref' module ASF class Person < Base def self.member_nominees begin return Hash[@member_nominees.to_a] if @member_nominees rescue end meetings = ASF::SVN['private/foundation/Meetings'] nominations = Dir["#{meetings}/*/nominated-members.txt"].sort.last.untaint nominations = File.read(nominations).split(/^\s*---+\s*/) nominations.shift(2) nominees = {} nominations.each do |nomination| id = nomination[/^\s?\w+.*<(\S+)@apache.org>/,1] id ||= nomination[/^\s?\w+.*\((\S+)@apache.org\)/,1] id ||= nomination[/^\s?\w+.*\(([a-z]+)\)/,1] next unless id nominees[find(id)] = nomination end @member_nominees = WeakRef.new(nominees) nominees end def member_nomination @member_nomination ||= Person.member_nominees[self] end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
whimsy-asf-0.0.77 | lib/whimsy/asf/nominees.rb |