Merge pull request #838 from phil-opp/link-this-month-in-rust-osdev

Link 'This Month in Rust OSDev' posts in status updates section
This commit is contained in:
Philipp Oppermann
2020-07-17 19:50:20 +02:00
committed by GitHub
5 changed files with 46 additions and 7 deletions

View File

@@ -2,12 +2,13 @@
# -*- coding: utf-8 -*-
import io
import urllib2
import datetime
from github import Github
from datetime import datetime, timedelta
g = Github()
one_month_ago = datetime.now() - timedelta(days=32)
one_month_ago = datetime.datetime.now() - datetime.timedelta(days=32)
def filter_date(issue):
return issue.closed_at > one_month_ago
@@ -33,8 +34,8 @@ with io.open("templates/auto/recent-updates.html", 'w', encoding='utf8') as rece
link = '<a href="' + pr.html_url + '">' + pr.title + "</a> "
iso_date = pr.closed_at.isoformat()
readable_date = pr.closed_at.strftime("%b&nbsp;%d")
datetime = '<time datetime="' + iso_date + '">' + readable_date + '</time>'
recent_updates.write(u" <li>" + link + datetime + "</li>\n")
datetime_str = '<time datetime="' + iso_date + '">' + readable_date + '</time>'
recent_updates.write(u" <li>" + link + datetime_str + "</li>\n")
recent_updates.write(u"</ul>")
@@ -47,3 +48,42 @@ with io.open("templates/auto/stars.html", 'w', encoding='utf8') as stars:
with io.open("templates/auto/forks.html", 'w', encoding='utf8') as forks:
forks.truncate()
forks.write(format_number(repo.forks_count))
# query "This week in Rust OSDev posts"
lines = []
year = 2020
month = 4
while True:
url = "https://rust-osdev.com/this-month/" + str(year) + "-" + str(month).zfill(2) + "/"
try:
urllib2.urlopen(url)
except urllib2.HTTPError as e:
break
month_str = datetime.date(1900, month, 1).strftime('%B')
link = '<a href="' + url + '">This Month in Rust OSDev (' + month_str + " " + str(year) + ")</a> "
lines.append(u" <li>" + link + "</li>\n")
month = month + 1
if month > 12:
month = 0
year = year + 1
lines.reverse()
with io.open("templates/auto/status-updates.html", 'w', encoding='utf8') as status_updates:
status_updates.truncate()
for line in lines:
status_updates.write("<b>" + line + "</b>")
with io.open("templates/auto/status-updates-truncated.html", 'w', encoding='utf8') as status_updates:
status_updates.truncate()
for index, line in enumerate(lines):
if index == 5:
break
status_updates.write(line)

View File

View File

@@ -59,9 +59,7 @@
{% set status_updates = get_section(path = "status-update/_index.md") %}
<p>{{ status_updates.description }}</p>
<ul>
{% for page in status_updates.pages | slice(end=3) %}
<li><b><a href="/{{ page.path | safe }}">{{ page.title }}</a></b></li>
{% endfor %}
{% include "auto/status-updates-truncated.html" %}
<li><a href="{{ get_url(path="@/status-update/_index.md") | safe }}"><em>view all »</em></a></li>
</ul>
</div>

View File

@@ -13,6 +13,7 @@
{% endblock introduction %}
<div><ul>
{% include "auto/status-updates.html" %}
{% for page in section.pages %}
<li><b><a href="/{{ page.path | safe }}">{{ page.title }}</a></b></li>
{% endfor %}