Skip to content

Reader 0.3.6

Choose a tag to compare

@rakshithxaloori rakshithxaloori released this 08 Nov 10:25
· 4 commits to main since this release

Added

  • A Favorites tab between Inbox and Archive (View > Favorites, ⌘8). The star
    in the reader toolbar favorites an article without changing its read,
    archive or cache state, and Favorites lists it wherever it lives. Export
    and import carry the favorite date.
  • Animated GIFs play in the reader, and YouTube, Vimeo and direct
    mp4/m4v/mov/webm video embeds play inline. Players pause when the reader is
    hidden, and the article keeps scrolling with the pointer over a video.
  • Save a local copy of an article from the reader toolbar so it stays readable
    offline; it is never evicted and can be removed again.
  • Links to PDFs can be saved, from the app or from WhatsApp "save" messages.
    The reader shows the PDF's text as reflowed prose (title, author, reading
    time and search come from it), and the toolbar's book button opens the exact
    PDF pages in the PDF viewer. PDFs up to 15 MB are kept in the article cache;
    a PDF with no selectable text shows a notice and still opens in the viewer.

Changed

  • The reader's text style and size controls sit behind an "Aa" button.
  • The library database gains a favorited_at column (schema version 3),
    applied automatically on first launch; existing articles start unfavorited.

Fixed

  • Articles open quickly after a restart. The article cache parsed and wrote
    its JSON one byte per system call, so opening a large cached article made
    millions of reads. Every list load also read each publication icon from the
    cache one at a time, rewriting the cache index with two full disk flushes
    per icon, then the icon worker read them all again, and every storage owner
    rewrote the unchanged index on creation. Opening an article waited behind
    that work. Cache files are now read and written whole, icons are read in one
    pass with one index write and not read twice, and an unchanged index is
    never rewritten.
  • Extraction keeps an HTML <video> element's own file link instead of the
    page URL.
  • Links on WordPress.com and other IPv4-only sites no longer fail with "URL
    resolves to a private network" on networks that use DNS64/NAT64. Synthesized
    64:ff9b::/96 addresses are judged by the IPv4 address they embed.