You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@whimsical.apache.org by Sam Ruby <ru...@apache.org> on 2016/03/31 15:00:41 UTC
[whimsy.git] [1/1] Commit 8ed3acb: always normalize members.txt
Commit 8ed3acb927600f9022a17f8622308e7ddc7eff37:
always normalize members.txt
Branch: refs/heads/master
Author: Sam Ruby <ru...@intertwingly.net>
Committer: Sam Ruby <ru...@intertwingly.net>
Pusher: rubys <ru...@apache.org>
------------------------------------------------------------
lib/whimsy/asf/member.rb | ++++++++ -
www/roster/views/actions/memstat.json.rb | ++ --
------------------------------------------------------------
13 changes: 10 additions, 3 deletions.
------------------------------------------------------------
diff --git a/lib/whimsy/asf/member.rb b/lib/whimsy/asf/member.rb
index 5c1bf27..b48b518 100644
--- a/lib/whimsy/asf/member.rb
+++ b/lib/whimsy/asf/member.rb
@@ -133,7 +133,14 @@ def self.text
end
# update local copy of members.txt
- def self.text=text
+ def self.text=(text)
+ # normalize text: sort and update active count
+ text = ASF::Member.sort(text)
+ pattern = /^Active.*?^=+\n+(.*?)^Emeritus/m
+ text[/We now number (\d+) active members\./, 1] =
+ text[pattern].scan(/^\s\*\)\s/).length.to_s
+
+ # save
@@mtime = Time.now
@@text = WeakRef.new(text)
end
diff --git a/www/roster/views/actions/memstat.json.rb b/www/roster/views/actions/memstat.json.rb
index e2d5fc1..7ec5b63 100644
--- a/www/roster/views/actions/memstat.json.rb
+++ b/www/roster/views/actions/memstat.json.rb
@@ -37,8 +37,8 @@
# perform the insertion
text.insert index, entry
- # sort and save locally the updated text
- ASF::Member.text = ASF::Member.sort(text)
+ # save the updated text
+ ASF::Member.text = text
# save the results to disk
File.write("#{tmpdir}/members.txt", ASF::Member.text)