# Publ: Development Blog

Entries tagged rant, help wanted, community or planning

# v0.3.19, now with extra tagging goodness!

Posted Monday, March 4 at 3:47 PM (a year ago)

I’ve released Publ v0.3.19, which now finally has a tagging system, which is only one of the oldest issues that was still open.

Here’s a list of what’s been added or changed since 0.3.18:

### Credits

I want to thank Karina Antonio for implementing image cropping.

# v0.3.18, now with better asset management!

Posted Wednesday, February 27 at 9:38 PM (a year ago)

I’ve just released v0.3.18, with the following changes:

• Add date grouping properties to entry
• Add a pages property to view
• Provide the current category object to the error handler
• Support linking to non-image/non-entry local files
• Added, then removed, some performance micro-optimizations that only caused problems

More details about the major changes below!

Update: I released a hotfix as 0.3.18.1 because there was a last-minute bug that snuck in while I was trying to silence a new pylint error. Oops.

# v0.3.11

Posted Saturday, December 15 at 1:08 AM (a year ago)

v0.3.11 is now released, with the following changes:

• A more complete fix for how to handle image sets and inline images with respect to paragraphs
• Better cleanup for spurious empty paragraphs
• Improved internal entry link handling

Detailed descriptions of the changes are below.

# Goodbye peewee, hello PonyORM

Posted Wednesday, September 19 at 2:27 AM (a year ago)

For a number of reasons, I have replaced the backing ORM. Previously I was using peewee, but now I’m using PonyORM. The primary reason for this is purely ideological; I do not want to use software which is maintained by someone with a track record of toxic behavior. peewee’s maintainer responds to issues and feature requests with shouting and dismissive snark; PonyORM’s maintainer responds with helpfulness and grace. I am a strong proponent of the latter.

PonyORM’s API is also significantly more Pythonic, and rather than abusing operator overloads for clever query building purposes, it abuses Python’s AST functionality to parse actual Python expressions into SQL queries. Seriously, look at this explanation of it and tell me that isn’t just amazing.

# v0.1.19: creeping ever closer to beta status

Posted Sunday, May 27 at 5:22 PM (2 years ago)

The amount of stuff I’m having to fix in Publ to support beesbuzz.biz is diminishing rapidly! Here’s what’s happened since 0.1.18:

• Improved the Path-Alias redirection logic; now it will do a 301 Permanently Moved for inbound Path-Aliased requests, and if a Path-Alias points to an entry with a Redirect-To it will redirect directly to that URL instead (and it will be a 302, same as the old Redirect-To behavior)
• Pagination can now be weekly; you can use entry.archive(paging='week'), and a ?date= view parameter ending in _w will provide a weekly view instead.
• Better default formatting for view.range, and an addition of a week format parameter there

# So much for Dreamhost

Posted Friday, May 25 at 9:42 PM (2 years ago)

One of the overarching reasons I decided to build Publ the way I did was in order to take advantage of Dreamhost’s support for Passenger WSGI. I was expecting that to be the primary means of hosting my main site (which is way too big for a Heroku instance) and given how smoothly things were working with this site on Dreamhost I figured it wouldn’t be a big deal.

However, there was a huge monkey wrench thrown into things when I switched my site’s configuration over to Passenger; despite all of my configuration being exactly the same between publ.beesbuzz.biz and beesbuzz.biz, the rendition cache on beesbuzz.biz was getting its permissions set wrong, and there was some rather weird behavior with how it was making the temporary files to begin with.

In investigating this I attempted to upgrade my packages on publ.beesbuzz.biz, and all h*ck broke loose.

# Dates are hard

Posted Friday, May 18 at 12:00 PM (2 years ago)

There’s an old joke in programming, that the two hardest things to do are naming things, cache invalidation, and off-by-one errors. But this doesn’t pay sufficient respect to one of the other hardest things, namely handling date and time.

# The Trouble with PHP

Posted Tuesday, May 8 at 12:00 AM (2 years ago)

I’ve had people ask me why I’m not building Publ using PHP. While much has been written on this subject from a standpoint of what’s wrong with the language (and with which I agree quite a lot!), that isn’t, to me, the core of the problem with PHP on the web.

So, I want to talk a bit about some of the more fundamental issues with PHP, which actually goes back well before PHP even existed and is intractibly linked with the way PHP applications themselves are installed and run.

(I will be glossing over a lot of details here.)