Remove /unsubscribe from htaccess config
[blerg.git] / www / doc / changelog.html
index 378372e..a7a26d0 100644 (file)
 The intent of this changelog is to give an overview of the major changes
 and fixes made to Blërg.  For a detailed changelog, see the git log.
 
+<a name="v1.11"><h2>Verison 1.11 - released Thursday, March 5th, 2015</h2></a>
+
+<h3>Features Added</h3>
+<ul>
+<li>Password recovery - Passwords can now be recovered using a URL containing
+authenticated reset information.  These can be generated in advance for
+safe-keeping (like recovery codes), or sent via email if you have registered an
+email address.</li>
+<li>Email notifications - You can register an email address that will receive a
+daily digest of updates to your feed.  It also allows password resets via
+email.</li>
+<li>The recovery and email features above as well as password changes have been
+added to a new Account Center page.</li>
+<li>A new environment variable BLERG_HOME has been added to the install
+environment that points to the root of the blerg data store.</li>
+</ul>
+
+<h3>HTTP API Changes</h3>
+<ul>
+<li>Password recovery and email are configured via APIs on /aux/recovery and
+/aux/email, respectively.  They're implemented with new Perl CGIs in
+aux/cgi. Documentation forthcoming.</li>
+</ul>
+
+<h3>Perl API Changes</h3>
+<ul>
+<li>Missing documentation for auth functions has been added.</li>
+<li>A <code>configuration</code> module function has been created to access the
+runtime configuration in <code>blergconf</code>.</li>
+</ul>
+
+<h3>C API Changes</h3>
+<ul>
+<li>There is now a function <code>auth_get_counter</code> which returns an
+opaque 32-bit integer that will change when the password is changed.  It's
+intended to be used to invalidate things after a password change (like the
+above recovery links).</li>
+</ul>
+
+<h3>Bugs Squashed</h3>
+<ul>
+<li>Fixed a bug in the perl version of <code>subscription_list</code> where it
+was fetching the first 50 entries instead of the last.</li>
+</ul>
+
+<a name="v1.10"><h2>Version 1.10 - released Sunday, October 26th, 2014</h2></a>
+
+<h3>Features Added</h3>
+<ul>
+<li>When you are mentioned, the "Feed Your Vanity" button will now light up to
+let you know. This is implemented internally by a "mentioned" flag on the
+account.  See the API changes below.</li>
+<li>Password storage and authentication have been compacted down to two files,
+reducing size and disk seeks.</li>
+</ul>
+
+<h3>HTTP API Changes</h3>
+<ul>
+<li>/feedinfo is now /status, which now handles both account status (new feed
+entries and mentioned status) and subscription status for other users.</li>
+<li>/unsubscribe has been removed in favor of sending a boolean "subscribed"
+parameter to /subscribe.</li>
+<li>The logged-in username is now part of the auth cookie, removing the need to
+POST the username for authenticated requests.</li>
+<li>Authentication backend changes allow sessions to be expired.  The session
+timeout defaults to one hour, and can be changed by tweaking
+AUTHENTICATION_TIMEOUT in config.h.</li>
+</ul>
+
+<h3>C API Changes</h3>
+<ul>
+<li>Password retrieval functions (<code>auth_get_*</code>) are no longer part
+of the C API.</li>
+<li><code>blerg_{get,set}_mute(*blerg)</code> has been generalized into
+<code>blerg_{get,set}_status(*blerg, flags)</code> to support new mentioned
+flag.</li>
+</ul>
+
+<h3>Features Deprecated</h3>
+<ul>
+<li>Autoconf build system was removed because I don't care to maintain it.  I
+might revisit it later, but right now, it's misleading to have it available
+when it doesn't work.</li>
+</ul>
+
+<h3>Bugs Squashed</h3>
+<ul>
+<li>Password updates now use locks, eliminating a potential race condition that
+could corrupt the password if two updates happened simultaneously.</li>
+<li>Fixed one instance of testing mmap result against NULL instead of
+MAP_FAILED.</li>
+<li>Fixed a number of bugs with stringbucket implementation.</li>
+<li>Now building with <code>-Wall</code>, which has found a lot of small
+bugs.</li>
+</ul>
+
+<a name="v1.9.1"><h2>Version 1.9.1 - released Tuesday, June 17th, 2014</h2></a>
+
+<h3>Features Added</h3>
+<ul>
+<li>You can now use the enter key to advance through the login field and log in.</li>
+<li>RSS links added for tags, refs, and subscription feed.</li>
+</ul>
+
+<h3>Bugs Squashed</h3>
+<ul>
+<li>Login form now properly defocuses after login.</li>
+</ul>
+
+<a name="v1.9"><h2>Version 1.9 - released Sunday, June 1st, 2014</h2></a>
+
+<h3>Features Added</h3>
+<ul>
+<li>Added media support for images.  Image links will now have a play button
+that will replace the text with the image.</li>
+<li>Added a back-end Perl module for the file-level blerg API.  The idea is to
+allow ancilliary functionality (like RSS and mail notification) to be built in
+Perl rather than C.  Hardcore C and shit is good for core database structure,
+but it's a royal pain for formatting/templating.  The docs have also been
+updated to describe this new low-level API.</li>
+<li>New, less brain-dead RSS implementation using above Perl module. It
+supports RSS feeds for mentions, tags, and the subscription feed, but it's not
+currently worked into the UI.</li>
+<li>Database location is now configurable with environment variables.</li>
+<li>Added a way of installing Blërg to an "environment directory" that includes
+most of what you need to run Blërg (see <code>make
+install-environment</code>).  Still lots to do before I can make Blërg "make
+install"-able.</li>
+</ul>
+
+<h3>Bugs Squashed</h3>
+<ul>
+<li>Numerous fixes for 64-bit cleanliness, bad behaviour, and general
+stupidity.</li>
+<li>Fixed media functionality for Firefox.</li>
+<li>Tested compilation with clang; fixed numerous warnings.</li>
+</ul>
+
+<a name="v1.8.3"><h2>Version 1.8.3 - released Friday, March 21st, 2014</h2></a>
+
+<h3>Features Added</h3>
+<ul>
+<li>New full-screen editor dialog with preview and reply views.</li>
+<li>Add Markdown and GitHub Flavored Markdown-style code blocks, and GFM-style
+strikethrough.</li>
+</ul>
+
+<h3>Bugs Squashed</h3>
+<ul>
+<li>Fixed link clicking in Firefox and Chrome (and probably Safari and Opera).
+My link handler would consume all clicks, preventing the user from opening
+links in new tabs with middle-click, or getting a context-menu on right-click.
+It now only activates on left-click.</li>
+</ul>
+
+<a name="v1.8.2"><h2>Version 1.8.2 - released Monday, November 18th, 2013</h2></a>
+
+<h3>Features(?) Added</h3>
+<ul>
+<li>Updated frontpage style to better scale to different screen sizes,
+and maybe even look better.</li>
+<li>Upgraded to Enyo 2.2.</li>
+</ul>
+
+<h3>Bugs Squashed</h3>
+<ul>
+<li>After posting, you are now redirected to your user page.  This was
+intended behavior, but broken for the past few releases.</li>
+<li>Fix clicking on internal hash/user references in Firefox.</li>
+<li>Properly handle nonexistent/empty hash/user pages.</li>
+</ul>
+
 <a name="v1.8.1"><h2>Version 1.8.1 - released Sunday, July 2, 2013</h2</a>
 
 <h3>Features Added</h3>
@@ -21,7 +193,7 @@ their posts do not update tags/references/subscription indices.</li>
 sparse files.</li>
 </ul>
 
-<h3>Bugs Squashed<?h3>
+<h3>Bugs Squashed</h3>
 <ul>
 <li>Numerous safety and integrity checks added</li>
 <li>The internal segment counter wasn't being updated when switching