yhdev/updates.pl

133 lines
6.7 KiB
Perl
Executable file

#!/usr/bin/perl
@UPDATES=map [split(/ +/,$_,3)], split /\n/, <<_;
2019-03-23 / The bug trackers for ncdu, ncdc and yxml have been migrated to Gitea.
2019-02-04 /ncdu ncdu 1.14 released
2018-02-23 /nginx-confgen nginx-confgen 1.2 released
2018-02-18 /tuwf TUWF 1.2 released
2018-01-29 /ncdu ncdu 1.13 released
2018-01-24 /nginx-confgen nginx-confgen 1.1 released
2018-01-19 /nginx-confgen New project: nginx-confgen
2017-05-28 /doc/funcweb New article: An Opinionated Survey of Functional Web Development
2016-12-30 /ncdc ncdc 1.20 released
2016-08-24 /ncdu ncdu 1.12 released
2016-08-16 /dump/btrfssize Uploaded btrfs-size.pl
2015-09-27 /tuwf TUWF 1.0 released
2015-04-05 /ncdu ncdu 1.11 released
2014-07-29 /doc/easyipc New article: The Sorry State of Convenient IPC
2014-06-25 /doc Uploaded my masters thesis
2014-04-23 /ncdc ncdc 1.19.1 released
2014-02-11 /ncdc ncdc 1.19 released
2014-01-09 /doc/dcstats Uploaded an article on DC file list stats
2013-11-14 /yxml/man yxml now has a manual
2013-10-05 /ncdc ncdc 1.18.1 released
2013-09-25 /ncdc ncdc 1.18 released
2013-09-03 /yxml Announcing yxml: A small, fast and correct XML parser
2013-07-05 /dump/insbench Documented a little data structure benchmark
2013-06-15 /ncdc ncdc 1.17 released
2013-05-09 /ncdu ncdu 1.10 released
2013-04-04 /ylib Created a page for Ylib
2013-04-03 /ncdc Created a mailing list for ncdc
2013-03-23 /ncdc ncdc 1.16.1 released.
2013-03-02 /ncdc ncdc 1.15 released.
2012-12-15 /globster Announcing yet another awesome project: Globster!
2012-12-02 /ncdu/jsonfmt Documented the ncdu export file format
2012-11-04 /ncdc ncdc 1.14 released
2012-10-17 /dump Added reference to my repo of small C libs to the code dump
2012-10-07 /dump#maildir.pl Added maildir.pl to the code dump
2012-09-27 /ncdu ncdu 1.9 released.
2012-09-25 /dump#dbusev.c Added dbusev.c to the code dump
2012-08-16 /ncdc ncdc 1.13 released.
2012-07-10 /ncdc ncdc 1.12 released.
2012-05-15 /ncdc ncdc 1.11 released.
2012-05-03 /ncdc/install Added installation instructions for ncdc.
2012-05-03 /ncdc ncdc 1.10 released.
2012-04-10 / Minor site re-style: ncdu/ncdc/tuwf now have their own menu.
2012-03-30 /dump Updated ncdc-share-report for Go 1
2012-03-24 /ncdu/bug Moved ncdu bug tracker from sourceforge to this site
2012-03-17 /ncdc/bug Wrote a small bug tracker for ncdc
2012-03-14 /ncdc ncdc 1.9 released.
2012-02-15 /doc/commvis Added an article on my new communication system.
2012-02-13 /ncdc ncdc 1.8 released.
2012-01-19 /tuwf TUWF 0.2 released.
2012-01-17 / Complete site redesign.
2011-12-30 /ncdc ncdc 1.7 released!
2011-12-07 /ncdc ncdc 1.6 released!
2011-11-26 /doc Added article section and the article on SQLite.
2011-11-03 /ncdu ncdu 1.8 released!
2011-11-03 /ncdc ncdc 1.5 released!
2011-10-26 /ncdc ncdc 1.4 released!
2011-10-19 / PGP-signed all releases of ncdu, ncdc and TUWF.
2011-10-14 /ncdc ncdc 1.3 released!
2011-09-25 /ncdc ncdc 1.1 released - follwed by a 1.2 quickfix.
2011-09-16 /ncdc ncdc 1.0 released!
2011-09-15 /ncdc/scr Added some screenshots for ncdu.
2011-09-03 /ncdc ncdc 0.9 released!
2011-08-26 /ncdc ncdc 0.8 released!
2011-08-17 /ncdc ncdc 0.7 released!
2011-08-08 /ncdc ncdc 0.6 released & user guide updated
2011-08-02 /ncdc ncdc 0.5 released!
2011-07-23 /ncdc ncdc 0.4 released!
2011-07-15 /ncdc ncdc 0.3 released!
2011-06-27 /ncdc ncdc 0.2 released!
2011-06-20 /ncdc ncdc 0.1 released! And wrote a user guide for it.
2011-06-11 /dump/nccolour Added NCurses colour experiment
2011-06-03 /ncdc Added my latest project: ncdc
2011-02-07 /tuwf TUWF 0.1 released and now also available on CPAN
2011-01-27 /tuwf Documented and uploaded one of my older projects: TUWF
2011-01-09 /dump Added my json.mll OCaml library to code dump
2010-08-13 /ncdu ncdu 1.7 released!
2009-12-22 /dump Added vinfo.c script to code dump
2009-10-23 /ncdu ncdu 1.6 released!
2009-09-21 / Tiny CSS fix to make this site look good in certain configurations.
2009-05-02 /ncdu ncdu 1.5 released!
2009-04-30 / Site redesign and reorganisation.
_
sub home {
print "% Yorhel's Projects\n\n";
print "This site is an attempt to publish and organise my various open source programs and libraries on one central location.\n\n";
print qq{## Changes <a href="/feed.atom"><img src="/img/feed_icon.png" alt="Atom feed"></a>\n\n};
for (@UPDATES) {
printf "- `%s` - [%s](%s)\n", @{$_}[0,2,1];
}
}
use TUWF::XML ':xml';
use POSIX 'strftime';
sub atom {
$sub = shift;
$self = 'https://dev.yorhel.nl/' . ($sub ? "$sub/" : ''). 'feed.atom';
TUWF::XML->new(default => 1, pretty => 2);
xml;
tag feed => xmlns => 'http://www.w3.org/2005/Atom', 'xml:lang' => 'en', 'xml:base' => 'https://dev.yorhel.nl/', sub {
tag title => $sub ? "\u$sub Project Announcements" : "Yorhel's Projects";
tag updated => strftime('%Y-%m-%dT%H:%M:%SZ', gmtime time);
tag id => $self;
tag link => rel => 'self', type => 'application/atom+xml', href => $self, undef;
tag link => rel => 'alternate', type => 'text/html', href => 'https://dev.yorhel.nl/'.$sub, undef;
for(@UPDATES) {
next if $sub && (!$_->[1] || $_->[1] !~ /^\/\Q$sub/);
last if $n++ >= 10;
tag 'entry', sub {
tag id => "https://dev.yorhel.nl$_->[1]#$_->[0]";
tag title => $_->[2];
tag updated => $_->[0].'T12:00:00Z';
tag published => $_->[0].'T12:00:00Z';
tag 'author', sub {
tag name => 'Yoran Heling';
tag uri => 'https://dev.yorhel.nl/';
tag email => 'projects@yorhel.nl';
};
tag link => rel => 'alternate', type => 'text/html', href => "https://dev.yorhel.nl$_->[1]", undef;
};
}
}
}
$_ = shift;
home if $_ eq 'dat/index.md';
atom $1 if m{pub/(?:([^/]+)/)?feed.atom};