4 <title>Blërg Changelog</title>
5 <link rel="stylesheet" href="/css/doc.css">
11 The intent of this changelog is to give an overview of the major changes
12 and fixes made to Blërg. For a detailed changelog, see the git log.
14 <a name="v1.11"><h2>Verison 1.11 - released Thursday, March 5th, 2015</h2></a>
16 <h3>Features Added</h3>
18 <li>Password recovery - Passwords can now be recovered using a URL containing
19 authenticated reset information. These can be generated in advance for
20 safe-keeping (like recovery codes), or sent via email if you have registered an
22 <li>Email notifications - You can register an email address that will receive a
23 daily digest of updates to your feed. It also allows password resets via
25 <li>The recovery and email features above as well as password changes have been
26 added to a new Account Center page.</li>
27 <li>A new environment variable BLERG_HOME has been added to the install
28 environment that points to the root of the blerg data store.</li>
31 <h3>HTTP API Changes</h3>
33 <li>Password recovery and email are configured via APIs on /aux/recovery and
34 /aux/email, respectively. They're implemented with new Perl CGIs in
35 aux/cgi. Documentation forthcoming.</li>
38 <h3>Perl API Changes</h3>
40 <li>Missing documentation for auth functions has been added.</li>
41 <li>A <code>configuration</code> module function has been created to access the
42 runtime configuration in <code>blergconf</code>.</li>
45 <h3>C API Changes</h3>
47 <li>There is now a function <code>auth_get_counter</code> which returns an
48 opaque 32-bit integer that will change when the password is changed. It's
49 intended to be used to invalidate things after a password change (like the
50 above recovery links).</li>
53 <h3>Bugs Squashed</h3>
55 <li>Fixed a bug in the perl version of <code>subscription_list</code> where it
56 was fetching the first 50 entries instead of the last.</li>
59 <a name="v1.10"><h2>Version 1.10 - released Sunday, October 26th, 2014</h2></a>
61 <h3>Features Added</h3>
63 <li>When you are mentioned, the "Feed Your Vanity" button will now light up to
64 let you know. This is implemented internally by a "mentioned" flag on the
65 account. See the API changes below.</li>
66 <li>Password storage and authentication have been compacted down to two files,
67 reducing size and disk seeks.</li>
70 <h3>HTTP API Changes</h3>
72 <li>/feedinfo is now /status, which now handles both account status (new feed
73 entries and mentioned status) and subscription status for other users.</li>
74 <li>/unsubscribe has been removed in favor of sending a boolean "subscribed"
75 parameter to /subscribe.</li>
76 <li>The logged-in username is now part of the auth cookie, removing the need to
77 POST the username for authenticated requests.</li>
78 <li>Authentication backend changes allow sessions to be expired. The session
79 timeout defaults to one hour, and can be changed by tweaking
80 AUTHENTICATION_TIMEOUT in config.h.</li>
83 <h3>C API Changes</h3>
85 <li>Password retrieval functions (<code>auth_get_*</code>) are no longer part
87 <li><code>blerg_{get,set}_mute(*blerg)</code> has been generalized into
88 <code>blerg_{get,set}_status(*blerg, flags)</code> to support new mentioned
92 <h3>Features Deprecated</h3>
94 <li>Autoconf build system was removed because I don't care to maintain it. I
95 might revisit it later, but right now, it's misleading to have it available
96 when it doesn't work.</li>
99 <h3>Bugs Squashed</h3>
101 <li>Password updates now use locks, eliminating a potential race condition that
102 could corrupt the password if two updates happened simultaneously.</li>
103 <li>Fixed one instance of testing mmap result against NULL instead of
105 <li>Fixed a number of bugs with stringbucket implementation.</li>
106 <li>Now building with <code>-Wall</code>, which has found a lot of small
110 <a name="v1.9.1"><h2>Version 1.9.1 - released Tuesday, June 17th, 2014</h2></a>
112 <h3>Features Added</h3>
114 <li>You can now use the enter key to advance through the login field and log in.</li>
115 <li>RSS links added for tags, refs, and subscription feed.</li>
118 <h3>Bugs Squashed</h3>
120 <li>Login form now properly defocuses after login.</li>
123 <a name="v1.9"><h2>Version 1.9 - released Sunday, June 1st, 2014</h2></a>
125 <h3>Features Added</h3>
127 <li>Added media support for images. Image links will now have a play button
128 that will replace the text with the image.</li>
129 <li>Added a back-end Perl module for the file-level blerg API. The idea is to
130 allow ancilliary functionality (like RSS and mail notification) to be built in
131 Perl rather than C. Hardcore C and shit is good for core database structure,
132 but it's a royal pain for formatting/templating. The docs have also been
133 updated to describe this new low-level API.</li>
134 <li>New, less brain-dead RSS implementation using above Perl module. It
135 supports RSS feeds for mentions, tags, and the subscription feed, but it's not
136 currently worked into the UI.</li>
137 <li>Database location is now configurable with environment variables.</li>
138 <li>Added a way of installing Blërg to an "environment directory" that includes
139 most of what you need to run Blërg (see <code>make
140 install-environment</code>). Still lots to do before I can make Blërg "make
144 <h3>Bugs Squashed</h3>
146 <li>Numerous fixes for 64-bit cleanliness, bad behaviour, and general
148 <li>Fixed media functionality for Firefox.</li>
149 <li>Tested compilation with clang; fixed numerous warnings.</li>
152 <a name="v1.8.3"><h2>Version 1.8.3 - released Friday, March 21st, 2014</h2></a>
154 <h3>Features Added</h3>
156 <li>New full-screen editor dialog with preview and reply views.</li>
157 <li>Add Markdown and GitHub Flavored Markdown-style code blocks, and GFM-style
161 <h3>Bugs Squashed</h3>
163 <li>Fixed link clicking in Firefox and Chrome (and probably Safari and Opera).
164 My link handler would consume all clicks, preventing the user from opening
165 links in new tabs with middle-click, or getting a context-menu on right-click.
166 It now only activates on left-click.</li>
169 <a name="v1.8.2"><h2>Version 1.8.2 - released Monday, November 18th, 2013</h2></a>
171 <h3>Features(?) Added</h3>
173 <li>Updated frontpage style to better scale to different screen sizes,
174 and maybe even look better.</li>
175 <li>Upgraded to Enyo 2.2.</li>
178 <h3>Bugs Squashed</h3>
180 <li>After posting, you are now redirected to your user page. This was
181 intended behavior, but broken for the past few releases.</li>
182 <li>Fix clicking on internal hash/user references in Firefox.</li>
183 <li>Properly handle nonexistent/empty hash/user pages.</li>
186 <a name="v1.8.1"><h2>Version 1.8.1 - released Sunday, July 2, 2013</h2</a>
188 <h3>Features Added</h3>
190 <li>Added a flag to account metadata allowing accounts to be "muted" so
191 their posts do not update tags/references/subscription indices.</li>
192 <li>Post indices are no longer preallocated, but instead created as
196 <h3>Bugs Squashed</h3>
198 <li>Numerous safety and integrity checks added</li>
199 <li>The internal segment counter wasn't being updated when switching
200 segments, causing deadlock on the 65537th entry.</li>
201 <li>Record count is now updated after successfully writing a record
202 rather than before.</li>
205 <a name="v1.8"><h2>Version 1.8 - released Thursday, May 30, 2013</h2></a>
207 <h3>Features Added</h3>
209 <li>Passwords are now hashed with scrypt instead of lame old MD5. Source
210 for scrypt 1.1.6 is embedded as it provides no readily usable
212 <li>Password formats are automatically upgraded upon login.</li>
213 <li>mailto: is now supported in markdown links</li>
214 <li>Added new <a href="/doc/privacy_data.html">Privacy and Data
220 <li>Minor edits to the documentation.</li>
223 <a name="v1.7"><h2>Version 1.7 - released Wednesday, January 16, 2013</h2></a>
225 <h3>World Turned Upside-Down</h3>
227 <li>Rewrote front-end using Enyo 2.1</li>
230 <h3>Bugs Squashed</h3>
232 <li>Links are now recognized inside parentheses/brackets, provided there
233 is whitespace ahead of it.</li>
236 <a name="v1.6.3"><h2>Version 1.6.3 - released Thursday, January 19, 2012</h2></a>
238 <h3>Features Added</h3>
240 <li>Added password change support</li>
243 <h3>Bugs Squashed</h3>
245 <li>Added missing application/json Content-type to success/failure
249 <a name="v1.6.2"><h2>Version 1.6.2 - released Sunday, January 15, 2012</h2></a>
251 <h3>Features Deprecated</h3>
253 <li>Blerg.httpd (the standalone HTTP Blërg server) is now deprecated.
254 It will not get new features and has been removed as a default build
255 target. Libmicrohttpd is just too obtuse to continue to support. Look
256 for a FastCGI version in the future, or maybe a new standalone version
257 written using <a href="https://github.com/ellzey/libevhtp">libevhtp</a>.</li>
260 <a name="v1.6.1"><h2>Version 1.6.1 - released Monday, November 7, 2011</h2></a>
262 <h3>Features Added</h3>
264 <li>Added support for inline media formats (mp3/ogg) played via the
266 <li>Added autoconf build system graciously provided by Boris
270 <a name="v1.6"><h2>Version 1.6 - released Monday, July 18th 2011</h2></a>
272 <h3>Features Added</h3>
274 <li>Passwords are now stored as MD5 hashes. See
275 tools/convert_to_md5_passwords.pl to convert old passwords.</li>
276 <li>Added notification of new messages from subscribed feeds.</li>
279 <h3>Bugs Squashed</h3>
281 <li>Users can now log in from multiple locations without clobbering
282 their previous login.</li>
283 <li>Fixed some relative URL problems so that Blërg can be more easily
284 used on a subpath.</li>
287 <a name="v1.5"><h2>Version 1.5 - released Friday, March 4th 2011</h2></a>
289 <h3>Features Added</h3>
291 <li>Added "stalking" (follow)</li>
292 <li>Added markdown-style headers (lines beginning with #), wiki-style
293 headers (lines beginning with =), lists (groups of lines beginning with
294 * separated by blank lines), and quoting (lines beginning with >)</li>
295 <li>Added permalinks to posts</li>
296 <li>Added a new kind of ref tag (@user/N) that links to a specific post,
297 as well as a reply link that auto-enters the perma-ref tag into the
298 content of your post</li>
301 <h3>Bugs Squashed</h3>
303 <li>Removed the extra whitespace at the end of multi-line posts.</li>
304 <li>Fixed paging so that each page is its own URL, which means the back
305 button works in more places</li>
306 <li>Fixed a number of places where switching views would do nothing</li>
307 <li>Allow formatting metachars to be escaped with backslashes</li>
310 <a name="v1.0"><h2>Version 1.0 - released Wednesday, February 9th 2011</h2></a>
312 <h3>Features Added</h3>
314 <li>Added recent tags and posts display</li>
315 <li>Added a link to see chatter for users other than yourself</li>
316 <li>Changed ref/tag link colors to be gray so that they aren't confused
320 <h3>Bugs Squashed</h3>
322 <li>Fixed a few XSS vulnerabilities in regex parsing for urls</li>
323 <li>Fixed tag accessibility issues for longer tags</li>
326 <a name="v0"><h2>Version 0.ofuckreddit - released Thursday, Jan 13th 2011</h2></a>
328 <h3>Initial Release</h3>