about summary refs log tree commit homepage
path: root/lib
DateCommit message (Collapse)
2020-07-26add imap_url support
public-inbox.org added an IMAP server with AUTH=ANONYMOUS support, so maybe there'll be more public IMAP deployments down the line.
2020-07-26allow multiple rdoc_url and cgit_url values
Might as well, since domain name ownership is a shaky thing and ICANN may try to screw the world over once again.
2019-12-15replace URI.escape with CGI.escape
The former is obsolete, apparently.
2019-12-12add man2html generator
The man2html(1) and groff(1) HTML generation isn't compatible anchor-wise with what pandoc(1) generated. They also had too much styling for my liking.
2019-05-11dark216: adjust heredoc to stop confusing rdoc
rdoc 6.1.0 seems to have trouble with '' as a heredoc terminator.
2019-05-11dark216: disable text decoration on <a> tags for light users, too
For consistency with the dark scheme.
2019-04-29dark216: disable text decoration on <a> tags
Color-capable displays do not need text-decoration (the common default being underlines) to distinguish hyperlinks. Furthermore, underlines add visual noise which makes it tough to distinguish certain characters (e.g. 'i' vs 'j', 'L' vs '|'). This also saves a small amount of energy on OLEDs and CRTs since there's fewer pixels lit ;>
2019-04-22add dark216 color scheme for power savings
"oldweb" remains for compatibility and we still have minimal styling. Some browsers (e.g. Firefox 67.0a1 via "ui.systemUsesDarkTheme") are adding support for the "prefers-color-scheme" @media query. So this allows pages to respect user choice when it comes to dark or light schemes. OLED and CRT displays measure significant power savings when using dark schemes. Dark themes work better with less ambient light, so favoring darkness can lead to overall power savings even with CCFL and LED-lit displays.
2019-01-06fall back to cgit_url and git_url if "source_code" is not defined
Some projects are too lazy to update or upgrade, but cgit/git URLs are "git clone"-able.
2019-01-04linkify source commands and URLs
It's common to have gitweb and cgit URLs which are viewable in the browser AND clonable. So add links to encourage follows.
2019-01-02oldweb: work around annoying ERB deprecation in Ruby 2.6
Updated patch by: Takashi Kokubun at https://bugs.ruby-lang.org/issues/15478
2017-12-15support rdoc 6.0
Supporting rdoc 6.0 required no actual code changes on our part, and I'm not seeing any obvious compatibilities when view git history of https://github.com/ruby/rdoc.git Diffing the output seems to reveal no changes, either.
2017-01-24oldweb: use native String#encode for (X)HTML escaping
This allows us to avoid loading the 'cgi' library.
2017-01-24oldweb: use flat_map instead of flatten.map chain
`flat_map' was introduced in Ruby 1.9.2 and reduces the amount of garbage we generate.
2017-01-24oldweb: apply LessHtml monkey patch late, at runtime
RDoc will load oldweb.rb regardless of whether it is used or not, so do not apply our monkey patching to reduce HTML generated by RDoc::Markup::ToHtml until we initialize Oldweb. Thanks to Daniel Ferreira for noticing this in [ruby-talk:437390]: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/437390 <CAPL_2g25ir4ZBJo652ao1EYB59ZvFHhpGef1V14QOV2SeVXLeA@mail.gmail.com> This still assumes any Ruby VM instance (currently synonymous with an OS process in Ruby 2.4) will only use one RDoc template in its lifetime and not switch between them. More work will be required to support switching between `oldweb' and other templates within the same VM instance, but that's not a priority for me.
2017-01-22remove 'builder' dependency
Make this project easier-to-install. Builder warns on the Fixnum deprecation under Ruby 2.4, and it is overkill for what we need given Ruby 1.9+ has native XML escaping.
2017-01-22news_rdoc: fix unused variable warning
Found via "make check-warnings"
2017-01-20oldweb/class: add space before superclass method name
This fixes the formatting of the "Calls superclass method" phrase.
2016-12-02gemspec: support rdoc 5.x
rdoc 5.x does not introduce incompatible changes outside of dropping Ruby 1.8 support. We never actually supported Ruby 1.8, either(*), so formalize that in the gemspec while we're at it.
2016-07-29_tail: do not mutate existing arrays
We need to ensure we have a consistent data structure across pages.
2016-07-27build: dynamically generate version number
This should make development a bit easier
2016-07-27add source_code accessor for tail footer
This makes it easier to share URLs and is more flexible than cgit_url.
2016-06-27_head: fix Content-Type charset attribute
Oops, this breaks rendering with some browser configurations which do not assume UTF-8.
2016-01-09olddoc 1.2.0 - multiple archive URLs v1.2.0
Users using .olddoc.yml to add links to mailing list archives will now be pleased to know "ml_url" and "nntp_url" fields accept arrays. This release also fixes bold highlighting of the current module/class page for APIs. 7 changes since 1.1.2: bold class bar to highlight current page copyright updates for 2016 tail: shorten the footer section head: use old-style <meta> tags for compatibility nodoc some internals tail: support multiple URLs for archives tail: fix divider when private email does not exist
2016-01-09tail: fix divider when private email does not exist
Not all projects have both email addresses.
2016-01-09tail: support multiple URLs for archives
The more archives, the better.
2016-01-07nodoc some internals
We don't want to advertise an API we'd have to support long-term
2016-01-07head: use old-style <meta> tags for compatibility
This wastes some bandwidth, but we are olddoc, after all, and care about old browsers more than new ones.
2016-01-07tail: shorten the footer section
Not every project uses git, and some misguided ones even allow HTML email (not sure why those projects would be interested in olddoc, though). Anyways, the olddoc-public@80x24.org account will always be configured to reject HTML email (or it'll be eaten by a spam filter).
2016-01-07copyright updates for 2016
While we're at it, switch to the shorter, SPDX-approved "GPL-3.0+" identifier instead of the more verbose "GPLv3 or later" for consistency. The formatting changed slightly to allow us to use the update-copyright script in gnulib[1] In the future: git ls-files | UPDATE_COPYRIGHT_HOLDER='all contributors' \ UPDATE_COPYRIGHT_USE_INTERVALS=2 \ xargs /path/to/gnulib/build-aux/update-copyright [1] git://git.savannah.gnu.org/gnulib.git
2016-01-07bold class bar to highlight current page
This matches the behavior of the normal (non-RDoc) page bar.
2015-11-28olddoc 1.1.2 - fix Atom feed rendering v1.1.2
* news_atom: add missing <div> for XHTML
2015-11-28news_atom: add missing <div> for XHTML
This should help the XHTML render properly in more feed readers. ref: RFC 4287 Section 4.1.3.4
2015-11-01olddoc 1.1.1 v1.1.1
* oldweb: fix relative path normalization This was wasting 2 bytes per link on top-level pages.
2015-10-30oldweb: fix relative path normalization
We must explicitly convert Pathname to string before comparing against '.' to prevent ugly './' prefixes in relative paths from showing up.
2015-10-15olddoc 1.1.0 - NNTP and more v1.1.0
This release adds support for the `nntp_url` in .olddoc.yml for mailing lists with NNTP gateways (possibly read-only). This exists because the project mailing list is now readable over NNTP: nntp://news.public-inbox.org/inbox.comp.lang.ruby.olddoc This also relaxes the dependency on the README being RDoc-formatted, allowing "olddoc prepare" to generate NEWS/NEWS.atom.xml files for projects which use only plain-text and not RDoc. * support for nntp_url, make private_email optional * gemspec: use SPDX-compatible license * readme: relax dependency on RDoc formatting
2015-10-14readme: relax dependency on RDoc formatting
Some projects I maintain do not use RDoc and rely entirely on plain-text documentation. This allows "olddoc prepare" to run properly on projects which do not use RDoc but still use a README file where the title is the first line.
2015-10-14support for nntp_url, make private_email optional
Not every project needs private email. Maybe none do. While we're at it, fix our own .olddoc.yml to show ml_url.
2015-01-10olddoc 1.0.1 - minor tweaks v1.0.1
* update show NEWS.atom.xml on the website, too * class.rhtml: ensure space before "source" link * class: deal with method.param_seq being nil
2015-01-10class: deal with method.param_seq being nil
2015-01-10class.rhtml: ensure space before "source" link
Otherwise it gets bunched into the parameters for pure-Ruby methods
2015-01-09remove ChangeLog generation
Nowadays, RDoc 4.x expects GNU-style ChangeLog files and cannot seem to parse them verbatim anymore. Since I've long been against GNU-style ChangeLogs, we'll leave them out and tell folks to read "git log" instead.
2015-01-08initial commit
Template based on Darkfish, but heavily stripped down.