0
0
Fork 0

Add rake task for generating AUTHORS.md (#8661)

* add rake task for generating AUTHORS.md

* update AUTHORS.md

* rubocop
This commit is contained in:
nightpool 2018-09-09 19:31:42 -04:00 committed by Eugen Rochko
parent 47ea318479
commit b0b484ba18
2 changed files with 233 additions and 110 deletions

30
lib/tasks/repo.rake Normal file
View file

@ -0,0 +1,30 @@
# frozen_string_literal: true
namespace :repo do
desc 'Generate the authors.md file'
task :authors do
file = File.open('AUTHORS.md', 'w')
file << <<~HEADER
Mastodon is available on [GitHub](https://github.com/tootsuite/mastodon)
and provided thanks to the work of the following contributors:
HEADER
url = 'https://api.github.com/repos/tootsuite/mastodon/contributors?anon=1'
HttpLog.config.compact_log = true
while url.present?
response = HTTP.get(url)
contributors = Oj.load(response.body)
contributors.each do |c|
file << "* [#{c['login']}](#{c['html_url']})\n" if c['login']
file << "* [#{c['name']}](#{c['email']})\n" if c['name']
end
url = LinkHeader.parse(response.headers['Link']).find_link(%w(rel next))&.href
end
file << <<~FOOTER
This document is provided for informational purposes only. Since it is only updated once per release, the version you are looking at may be currently out of date. To see the full list of contributors, consider looking at the [git history](https://github.com/tootsuite/mastodon/graphs/contributors) instead.
FOOTER
end
end