Congratulations!

[Valid Atom 1.0] This is a valid Atom 1.0 feed.

Recommendations

This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

Source: http://publ.beesbuzz.biz/feed

  1. <?xml version="1.0" encoding="utf-8"?>
  2.  
  3.  
  4.  
  5. <feed xmlns="http://www.w3.org/2005/Atom"
  6.    xmlns:fh="http://purl.org/syndication/history/1.0"
  7.    xmlns:at="http://purl.org/atompub/tombstones/1.0">
  8.  
  9.    <title>Publ</title>
  10.    <subtitle>A personal publishing system for the modern web</subtitle>
  11.    <link href="http://publ.plaidweb.site/feed" rel="self" />
  12.    <link href="http://publ.plaidweb.site/feed" rel="current" />
  13.    <link href="https://busybee.superfeedr.com" rel="hub" />
  14.    
  15.    <link href="http://publ.plaidweb.site/blog/feed?date=2022-07" rel="prev-archive" />
  16.    
  17.    
  18.    <link href="http://publ.plaidweb.site/" />
  19.    
  20.    <id>tag:publ.plaidweb.site,2020-01-07:_all</id>
  21.    <updated>2023-08-21T02:45:00-07:00</updated>
  22.  
  23.    
  24.    <entry>
  25.        <title>Publ v0.7.26 released</title>
  26.        <link href="http://publ.plaidweb.site/blog/274-Publ-v0-7-26-released" rel="alternate" type="text/html" />
  27.        <published>2023-08-21T02:45:00-07:00</published>
  28.        <updated>2023-08-21T02:45:00-07:00</updated>
  29.        <id>urn:uuid:adaa6960-823e-505d-8783-3d4953e0d95a</id>
  30.        <author><name>fluffy</name></author>
  31.        <content type="html">
  32. <![CDATA[
  33. <p>Here&rsquo;s some new bugfixes and features!</p>
  34. <ul>
  35. <li>OpenGraph tags now validate per the W3C validator</li>
  36. <li>Images can now take a value of <a href="http://publ.plaidweb.site/manual/335-Image-renditions#link">link=True</a> in order to force a link to the full-size rendition <em>without</em> setting a lightbox gallery ID</li>
  37. <li>Links will no longer include the template name if it&rsquo;s the same as the category default (so you no longer need to do annoying things like <code>view.link(template=template if template.name != &#39;index&#39;)</code></li>
  38. <li>Similarly, path-alias to the <code>index</code> template will now work correctly if the category&rsquo;s default template is <em>not</em> <code>index</code></li>
  39. </ul>
  40.  
  41.  
  42. <p>At some point in the not-too-distant future, two major overhauls are going to need to happen to Publ:</p>
  43. <ol>
  44. <li><p><a href="https://github.com/PlaidWeb/Publ/issues/514">Moving away from Pony ORM</a> to something that works with Python 3.11 (possibly SQL Alchemy or even moving to lower-level indexing)</p><p>I really like Pony ORM, but unfortunately some of the functionality I rely on only works with Python 3.10 and earlier, and a fix doesn&rsquo;t seem likely to happen any time soon. (I&rsquo;d love to be proven wrong, of course!)</p></li>
  45. <li><p><a href="https://github.com/PlaidWeb/Publ/issues/261">Finally replacing the Markdown processor</a> with something that&rsquo;s actively-maintained</p><p>Misaka has been in archive mode for quite some time now, as its underlying Markdown implementation (hoedown) is abandoned. It <em>works</em> but it&rsquo;s unclear how long it&rsquo;ll stay working, and I&rsquo;d rather stay ahead of the game.</p><p>Plus, Misaka complicates the build environment for Publ anyway, since on platforms without a native build in pypi, it has to fetch the sources and compile by itself, and this isn&rsquo;t very friendly to a lot of deployment environments. Having a pure-Python implementaton would make things a lot nicer.</p><p>A more modern Markdown implementation would also enable a bunch of stuff that doesn&rsquo;t work quite right as-is, like having inline <code>&lt;aside&gt;</code> and <code>&lt;details&gt;</code> within an entry. It&rsquo;d also be a good excuse to finally add a few features I&rsquo;ve been wanting to do, such as support for inline/sidebar footnotes and opengraph media embeds.</p><p>This would require a complete rewrite of the Markdown processing within Publ, although those changes would at least be fairly self-contained. Unfortunately, a lot of the existing Markdown-handling code is extremely specific to Misaka&rsquo;s quirks, so this might be something that takes a lot of iteration to get right. In particular, I worry that some of the Publ syntax extensions (particularly image rendition arguments, code block labeling, and multiple-image sets) might be difficult to support in a different engine with different parsing rules.</p></li>
  46. </ol>
  47. <p>Also, some recent conversations have led me to realize that Publ&rsquo;s documentation could be a lot better. If you&rsquo;re interested in helping out, see <a href="https://github.com/PlaidWeb/publ-site/issues/33">publ-site issue #33</a>.</p>
  48.  
  49. ]]>
  50.        </content>
  51.    </entry>
  52.    
  53.    <entry>
  54.        <title>Webmention.js 0.5.5 released - important security update!</title>
  55.        <link href="http://publ.plaidweb.site/blog/789-Webmention-js-0-5-5-released-important-security-update" rel="alternate" type="text/html" />
  56.        <published>2023-07-13T12:14:38-07:00</published>
  57.        <updated>2023-07-13T12:14:38-07:00</updated>
  58.        <id>urn:uuid:4e3d2e46-476b-5800-a94b-fb74eb3c0947</id>
  59.        <author><name>fluffy</name></author>
  60.        <content type="html">
  61. <![CDATA[
  62. <p>There is a <a href="https://huntr.dev/bounties/75cfb7ad-a75f-45ff-8688-32a9c55179aa">known XSS exploit</a> in <a href="https://github.com/PlaidWeb/webmention.js">webmention.js</a> 0.5.4 and earlier. If you are running webmention.js on your site, <em>please</em> update to the latest version!</p><p>Many thanks to <a href="https://huntr.dev/users/tyage">@tyage</a> for reporting this vulnerability (and <a href="https://github.com/psmoros">@psmoros</a> for facilitating the report, as well as running <a href="https://huntr.dev/">huntr.dev</a> which looks like a great security research and reporting platform).</p>
  63.  
  64. ]]>
  65.        </content>
  66.    </entry>
  67.    
  68.    <entry>
  69.        <title>v0.7.25 released</title>
  70.        <link href="http://publ.plaidweb.site/blog/18-v0-7-25-released" rel="alternate" type="text/html" />
  71.        <published>2023-05-23T03:49:05-07:00</published>
  72.        <updated>2023-05-23T03:49:05-07:00</updated>
  73.        <id>urn:uuid:c80e4417-31eb-56ab-aa4c-c2a0a2491b42</id>
  74.        <author><name>fluffy</name></author>
  75.        <content type="html">
  76. <![CDATA[
  77. <p>What&rsquo;s this, another Publ release? Why, yes! While <a href="https://beesbuzz.biz/blog/5391-A-fresh-coat-of-paint">revamping my personal website</a> I came across some additional things that needed some Publ fixes to really work well.</p><p>The changes since 0.7.24 are:</p>
  78. <ul>
  79. <li>Consider whitespace-only entry parts (<code>entry.body</code> and <code>entry.more</code>) to be <code>False</code></li>
  80. <li>Enable cache-control on templates which aren&rsquo;t user-dependent (such as stylesheets), hopefully cutting down on <a href="https://en.wikipedia.org/wiki/Flash_of_unstyled_content">FOUC issues</a></li>
  81. <li>Enable an appropriate same-site cookie policy for 2023</li>
  82. </ul>
  83.  
  84.  
  85. ]]>
  86.        </content>
  87.    </entry>
  88.    
  89.    <entry>
  90.        <title>Publ v0.7.24 released</title>
  91.        <link href="http://publ.plaidweb.site/blog/637-Publ-v0-7-24-released" rel="alternate" type="text/html" />
  92.        <published>2023-05-22T14:21:41-07:00</published>
  93.        <updated>2023-05-22T14:21:41-07:00</updated>
  94.        <id>urn:uuid:6d86eee0-0ae3-54fb-ad14-6ba90c2920be</id>
  95.        <author><name>fluffy</name></author>
  96.        <content type="html">
  97. <![CDATA[
  98. <p>Latest version of Publ includes:</p>
  99. <ul>
  100. <li>New <a href="http://publ.plaidweb.site/manual/324-Templating-Guide#first_paragraph"><code>first_paragraph</code> HTML filter</a></li>
  101. <li>A fix to the search indexer allowing it to drop invalid entries</li>
  102. </ul>
  103. <p>There was also a minor fix released as 0.7.23 which was to unpin the version of <code>watchdog</code>, which allows Publ to run in debug/hot-reload mode once again.</p>
  104.  
  105. ]]>
  106.        </content>
  107.    </entry>
  108.    
  109.    <entry>
  110.        <title>Publ v0.7.22 released</title>
  111.        <link href="http://publ.plaidweb.site/blog/241-Publ-v0-7-22-released" rel="alternate" type="text/html" />
  112.        <published>2023-05-01T19:18:23-07:00</published>
  113.        <updated>2023-05-01T19:18:23-07:00</updated>
  114.        <id>urn:uuid:f4aa0834-0242-509a-8bb7-b0992e7748b6</id>
  115.        <author><name>fluffy</name></author>
  116.        <content type="html">
  117. <![CDATA[
  118. <p>Here&rsquo;s a new release of Publ.</p><p>Actually it looks like I&rsquo;ve been remiss in announcing the last several releases, because each of them just had minor changes! So here&rsquo;s a bit of a catchup:</p>
  119. <ul>
  120. <li>v0.7.19: Pass through rendition arguments (including quality and format) to the fullsize rendition</li>
  121. <li>v0.7.20: Just a bunch of upstream dependency updates</li>
  122. <li>v0.7.21: Some shenanigans while trying to figure out how to deal with <a href="https://github.com/ponyorm/pony/issues/668">Pony&rsquo;s incompatibility with Python 3.11</a>, as yet unresolved</li>
  123. <li>v0.7.22:
  124.  
  125. <ul>
  126. <li>Fixed an issue with some transparent images not being detected as transparent due to using uncommon formats (particularly grayscale-with-alpha PNGs in the <code>LA</code> pixel format)</li>
  127. <li>Changed the way that the <a href="http://publ.plaidweb.site/manual/706-User-authentication">authentication</a> key gets configured; this was necessary due to an <a href="http://publ.plaidweb.site/issue/500">upstream change in Flask</a></li>
  128. </ul></li>
  129. </ul>
  130. <p>At present there appears to be an occasional issue with how watchdog works (or doesn&rsquo;t), and I haven&rsquo;t figured out the rhyme or reason. A pending Publ release will hopefully fix this. My apologies for the inconvenience.</p>
  131.  
  132. ]]>
  133.        </content>
  134.    </entry>
  135.    
  136.    <entry>
  137.        <title>Pushl v0.3.5</title>
  138.        <link href="http://publ.plaidweb.site/blog/2-Pushl-v0-3-5" rel="alternate" type="text/html" />
  139.        <published>2023-01-04T20:17:35-08:00</published>
  140.        <updated>2023-01-04T20:17:35-08:00</updated>
  141.        <id>urn:uuid:ec83f798-f65b-5c00-bbd7-90e61660aa55</id>
  142.        <author><name>fluffy</name></author>
  143.        <content type="html">
  144. <![CDATA[
  145. <p>Pushl has been updated to be compatible with an API change made in Python 3.11, specifically fixing some functionality which was deprecated in Python 3.8 and which I somehow failed to notice the deprecation warning of.</p><p>Thanks to @seirdy for <a href="https://github.com/PlaidWeb/Pushl/issues/49">bringing this to my attention</a>.</p>
  146.  
  147. ]]>
  148.        </content>
  149.    </entry>
  150.    
  151.    <entry>
  152.        <title>Publ v0.7.18</title>
  153.        <link href="http://publ.plaidweb.site/blog/827-Publ-v0-7-18" rel="alternate" type="text/html" />
  154.        <published>2022-12-27T10:29:59-08:00</published>
  155.        <updated>2022-12-27T10:29:59-08:00</updated>
  156.        <id>urn:uuid:5a0ca76a-ff88-5630-baa2-23da4e5e7144</id>
  157.        <author><name>fluffy</name></author>
  158.        <content type="html">
  159. <![CDATA[
  160. <p>0.7.17 had a critical bug in <code>view.deleted</code> where it wasn&rsquo;t properly filtering query parameters, so that version has been yanked and 0.7.18 has been released in order to fix said bug.</p>
  161.  
  162. ]]>
  163.        </content>
  164.    </entry>
  165.    
  166.    <entry>
  167.        <title>Publ v0.7.17</title>
  168.        <link href="http://publ.plaidweb.site/blog/365-Publ-v0-7-17" rel="alternate" type="text/html" />
  169.        <published>2022-12-26T21:28:24-08:00</published>
  170.        <updated>2022-12-26T21:28:24-08:00</updated>
  171.        <id>urn:uuid:65f0ce34-04c8-5d13-8ec4-1bedc84e637d</id>
  172.        <author><name>fluffy</name></author>
  173.        <content type="html">
  174. <![CDATA[
  175. <p>Today marks the release of Publ v0.7.17. Aside from the usual upstream-dependency changes and progressive delinting, this release fixes a subtle but annoying issue with how <code>View.link</code> works. There&rsquo;s a <a href="https://github.com/PlaidWeb/Publ/issues/506">longer description of the issue on GitHub</a> but the upshot of this is that now the parameters passed into a <code>View</code> object get properly validated, meaning that if you&rsquo;re doing something like:</p><figure class="blockcode"><pre class="highlight" data-language="html" data-line-numbers><span class="line" id="e365cb1L1"><a class="line-number" href="http://publ.plaidweb.site/blog/365-Publ-v0-7-17#e365cb1L1"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">&quot;{{view.previous(template=&#39;bob&#39;)}}&gt;&quot;</span><span class="p">&gt;</span></span></span>
  176. </pre></figure><p>this will fail, as the correct syntax is (and always has been)</p><figure class="blockcode"><pre class="highlight" data-language="html" data-line-numbers><span class="line" id="e365cb2L1"><a class="line-number" href="http://publ.plaidweb.site/blog/365-Publ-v0-7-17#e365cb2L1"></a><span class="line-content"><span class="p">&lt;</span><span class="nt">a</span> <span class="na">href</span><span class="o">=</span><span class="s">&quot;{{view.previous.link(template=&#39;bob&#39;)}}&gt;&quot;</span><span class="p">&gt;</span></span></span>
  177. </pre></figure>
  178.  
  179. ]]>
  180.        </content>
  181.    </entry>
  182.    
  183.    <entry>
  184.        <title>Publ v0.7.16 released</title>
  185.        <link href="http://publ.plaidweb.site/blog/497-Publ-v0-7-16-released" rel="alternate" type="text/html" />
  186.        <published>2022-12-02T17:22:41-08:00</published>
  187.        <updated>2022-12-02T17:22:41-08:00</updated>
  188.        <id>urn:uuid:e793f366-46f6-5cbe-be03-b9ead3bf124e</id>
  189.        <author><name>fluffy</name></author>
  190.        <content type="html">
  191. <![CDATA[
  192. <p>Minor release for Publ, wherein I fixed a single bug; namely, loading a category without the trailing <code>/</code> was causing an erroneous redirect, due to an apparent change in the depths of Flask.</p><p>This is one of those things where I really need to refactor Publ to make it properly unit-testable, gosh darnit.</p>
  193.  
  194. ]]>
  195.        </content>
  196.    </entry>
  197.    
  198.    <entry>
  199.        <title>Publ v0.7.15, Authl v0.6.1</title>
  200.        <link href="http://publ.plaidweb.site/blog/748-Publ-v0-7-15-Authl-v0-6-1" rel="alternate" type="text/html" />
  201.        <published>2022-11-24T01:18:08-08:00</published>
  202.        <updated>2022-11-24T01:18:08-08:00</updated>
  203.        <id>urn:uuid:2c1cd8f6-ec03-5725-9b41-2f5cd11a7f24</id>
  204.        <author><name>fluffy</name></author>
  205.        <content type="html">
  206. <![CDATA[
  207. <p>I haven&rsquo;t been working on this stuff in a while, but there were reasons to make some updates and releases for both Publ and Authl.</p><p>Publ changes:</p>
  208. <ul>
  209. <li>Updated dependencies and fixed code standards to the latest pylint and mypy</li>
  210. <li>Fixed a bug where if an image file disappears before the async rendition is generated, it was generating a 503 error instead of a 404</li>
  211. </ul>
  212. <p>Authl changes:</p>
  213. <ul>
  214. <li>Updated packages and fixed code standards to the latest pylint and mypy</li>
  215. <li>Removed a couple of Fediverse method hacks which are no longer necessary due to <a href="https://github.com/PlaidWeb/Authl/issues/104">updates in <code>mastodon.py</code></a></li>
  216. </ul>
  217. <p>Some of the dependency changes necessitated updating the minimum Python version; in particular, Publ and Authl now require Python 3.7.2 or greater. But if you&rsquo;re still running Python 3.6 for some reason you&rsquo;re used to things being broken or outdated.</p><p>Also, due to an <a href="https://github.com/PlaidWeb/Publ/issues/500">impending change in Flask</a>, the Publ API is going to have to change somewhat; the short version is that <code>app.secret_key</code> will no longer be the means of configuring authentication. Most likely the config will change to get a <code>secret_key</code> key within the <code>auth</code> section instead. This actually makes the configuration a lot easier to deal with anyway, and I was never happy about this inconsistency. (In fact, I&rsquo;m pretty sure that&rsquo;s how it used to be configured until I changed it to be more Flask-like in the first place!)</p><p>It&rsquo;s also possible that <code>publ.Publ</code> will revert to being a function that constructs a <code>Flask</code> application object, rather than being a subclass of <code>Flask</code>, but I haven&rsquo;t yet investigated what the implications of this change would be. I believe there are a few places in the Publ codebase which rely directly on the subclass relationship (which would be difficult to change, such as the way that the Authl instance is associated with the application), and prior to that there&rsquo;s a reason I switched it from a factory to a subclass in the first place, although I can&rsquo;t quite remember what it was (it was probably either something to do with the ORM&rsquo;s startup behavior or something to do with Authl&rsquo;s lifetime). Either way, it&rsquo;ll take significant investigation, and this will be necessary before Flask 2.3 is released. (In retrospect I meant to pin Publ&rsquo;s Flask requirement to <code>&lt;2.3.0</code> before I did this release, but I forgot. Oops.)</p>
  218.  
  219. ]]>
  220.        </content>
  221.    </entry>
  222.    
  223.  
  224.    
  225. </feed>

If you would like to create a banner that links to this page (i.e. this validation result), do the following:

  1. Download the "valid Atom 1.0" banner.

  2. Upload the image to your own server. (This step is important. Please do not link directly to the image on this server.)

  3. Add this HTML to your page (change the image src attribute if necessary):

If you would like to create a text link instead, here is the URL you can use:

http://www.feedvalidator.org/check.cgi?url=http%3A//publ.beesbuzz.biz/feed

Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda