X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FFeed.pm;h=8cc8b728887446aff0cb622352563ef1eb66ad7a;hb=788db1ec53c00b1a1a9457dc156bc7990736e88e;hp=6658a52b8794698f9a2bc2c6b23d27c60ca54c4c;hpb=87fe634f0fbd6795d2e0f4daf17f13af456212a0;p=public-inbox.git diff --git a/lib/PublicInbox/Feed.pm b/lib/PublicInbox/Feed.pm index 6658a52b..8cc8b728 100644 --- a/lib/PublicInbox/Feed.pm +++ b/lib/PublicInbox/Feed.pm @@ -39,7 +39,7 @@ sub generate { link => { rel => 'self', href => $feed_opts->{atomurl} || - "http://example.com/atom", + "http://example.com/atom.xml", }, id => $feed_opts->{address} || 'public-inbox@example.com', updated => POSIX::strftime(DATEFMT, gmtime), @@ -182,6 +182,10 @@ sub each_recent_blob { last; } } + } elsif ($reverse) { + unshift @commits, undef + } else { + push @commits, undef; } close $log; # we may EPIPE here @@ -196,9 +200,13 @@ sub get_feedopts { my $listname = $args->{listname}; my $cgi = $args->{cgi}; my %rv; + if (open my $fh, '<', "$args->{git_dir}/description") { + chomp($rv{description} = <$fh>); + close $fh; + } if ($pi_config && defined $listname && length $listname) { - foreach my $key (qw(description address)) { + foreach my $key (qw(address)) { $rv{$key} = $pi_config->get($listname, $key) || ""; } } @@ -208,15 +216,15 @@ sub get_feedopts { my $base = $cgi->url(-base); $url_base = $cgi_url; if ($url_base =~ s!/(?:|index\.html)?\z!!) { - $rv{atomurl} = "$base$url_base/index.atom.xml"; + $rv{atomurl} = "$base$url_base/atom.xml"; } else { - $url_base =~ s!/?(?:index|all)\.atom\.xml\z!!; + $url_base =~ s!/atom\.xml\z!!; $rv{atomurl} = $base . $cgi_url; $url_base = $base . $url_base; # XXX is this needed? } } else { $url_base = "http://example.com"; - $rv{atomurl} = "$url_base/index.atom.xml"; + $rv{atomurl} = "$url_base/atom.xml"; } $rv{url} ||= "$url_base/"; $rv{midurl} = "$url_base/m/";