diff options
Diffstat (limited to 'contrib/prepare_release/fetch_contributors.php')
-rw-r--r-- | contrib/prepare_release/fetch_contributors.php | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/contrib/prepare_release/fetch_contributors.php b/contrib/prepare_release/fetch_contributors.php index 9659b800..76cef24f 100644 --- a/contrib/prepare_release/fetch_contributors.php +++ b/contrib/prepare_release/fetch_contributors.php @@ -1,49 +1,49 @@ <?php + /* Generate the "Contributors" list for README.md automatically utilizing the GitHub API */ require __DIR__ . '/../../lib/rssbridge.php'; $url = 'https://api.github.com/repos/rss-bridge/rss-bridge/contributors'; -$contributors = array(); +$contributors = []; $next = true; -while($next) { /* Collect all contributors */ - - $headers = [ - 'Accept: application/json', - 'Content-Type: application/json', - 'User-Agent: RSS-Bridge' - ]; - $result = _http_request($url, ['headers' => $headers]); - - foreach(json_decode($result['body']) as $contributor) - $contributors[] = $contributor; - - // Extract links to "next", "last", etc... - $links = explode(',', $result['headers']['link'][0]); - $next = false; - - // Check if there is a link with 'rel="next"' - foreach($links as $link) { - list($url, $type) = explode(';', $link, 2); - - if(trim($type) === 'rel="next"') { - $url = trim(preg_replace('/([<>])/', '', $url)); - $next = true; - break; - } - } - +while ($next) { /* Collect all contributors */ + $headers = [ + 'Accept: application/json', + 'Content-Type: application/json', + 'User-Agent: RSS-Bridge' + ]; + $result = _http_request($url, ['headers' => $headers]); + + foreach (json_decode($result['body']) as $contributor) { + $contributors[] = $contributor; + } + + // Extract links to "next", "last", etc... + $links = explode(',', $result['headers']['link'][0]); + $next = false; + + // Check if there is a link with 'rel="next"' + foreach ($links as $link) { + list($url, $type) = explode(';', $link, 2); + + if (trim($type) === 'rel="next"') { + $url = trim(preg_replace('/([<>])/', '', $url)); + $next = true; + break; + } + } } /* Example JSON data: https://api.github.com/repos/rss-bridge/rss-bridge/contributors */ // We want contributors sorted by name -usort($contributors, function($a, $b){ - return strcasecmp($a->login, $b->login); +usort($contributors, function ($a, $b) { + return strcasecmp($a->login, $b->login); }); // Export as Markdown list -foreach($contributors as $contributor) { - echo " * [{$contributor->login}]({$contributor->html_url})\n"; +foreach ($contributors as $contributor) { + echo " * [{$contributor->login}]({$contributor->html_url})\n"; } |