YOURLS 1.5.1 Released

I’m happy to announce that YOURLS 1.5.1 is available and waiting for you. Get it quick, the first 1,000 installs get 20% off the regular price!

What’s new

YOURLS 1.5.1 is a “minor” release, as in “there are no really new important features but lots of improvements and bug fixes”. Some very cool stuff nonetheless, which are:

  • You can now encrypt your passwords in the config file instead of storing them in clear text. See Using encrypted salted passwords
  • YOURLS stat pages now uses the new Google Visualization API. See that page for example.
  • Stat pages are much more intelligently generated, SQL wise. That alone makes it worth upgrading
  • The API is now JSONP compliant, for all you Javascript nerds
  • Drop a favicon in the /user directory and YOURLS’ll use it

You can check a slightly more detailed changelog.txt and, if you’re really wanting to keep an eye on development, follow @YOURLS (for more general news about YOURLS, and other stuff, you’ll want to follow Ozh instead — much more entertaining :)

15 second updating

That’ll be a quick update: just upload the new archive to overwrite all your files, and that’s it. No scary update page to remind you that everything should go fine but you should backup everything just in case. Note that I’m not saying that you shouldn’t backup regularly anyway :)

Oh, and while you’re downloading the latest archive, spend a second or two on and give that “social” icons the spanking they deserve! The Showcase section has been recently updated and, man, there are quite a few cool things around made with or for YOURLS!

What’s next

I shall now start to make up my mind about the next database schema for 1.6 and work on the next iteration. This will imply lots of DB changes and I’m truly scared because this is my sucky area :)

I’m also currently pondering over moving the project on Github or not, see previous blog post on that subject.

OK, those last two paragraphs make me sound like I just can’t make any quick decision, but, Ma, I swear this isn’t what it looks like! :)

Now be a good boy and tell a friend to update while you’re updating, will you?

Short URL to this post:

Should YOURLS be on GitHub instead?

I’m regularly asked if there’s a chance that YOURLS be hosted on GitHub instead of Google Code as it is now.

Sure, GitHub is sexier, the web interface is much slicker, trendy and all. On the other hand, Google Code is here to stay forever or so, I know SVN, the YOURLS project has all its ticket and source history there and, despite being a bit raw sometimes, the interface and the service get the job done.

One argument I’ve been given a couple of times is “you’d get more contribution on GitHub”, but I’m not convinced: why would it be easier on GitHub (just because you just click “Pull Request” and save the minor step of generating a diff file?). The counter argument that easily comes to my mind is: spending hours on learning new tools and migrating the project and its history (issues and commits).

But maybe I’m not seeing the big picture and there are factual reasons why hosting on GitHub would be more beneficial to the YOURLS project. If you believe that’s the case, please do comment and convince me :)

Short URL to this post:

Forums are gone

I decided to remove the forums on this site. Long story made short: I’m uberfedup with dealing with spam and I’d rather do something productive with my too rare free time (and, to be honest, I’m surprised it lasted so long before I decided this)

So long, chinese spammers. Sorry for the (very few) users who felt this was useful.

Short URL to this post:

YOURLS goodies: forums, nightly builds and hook list.

There are a few things I’ve discreetly mentioned over the past weeks, either on Twitter (follow me!) or through the project wiki pages, that are well worth an official blog post: forums, nightly builds and hook list.

1. Forums!

Some time ago, I’ve setup a few YOURLS forums. There are currently 3 forums:

  1. General discussion: show off your cool public interface or personalized YOURLS index page with stats and stuff, discuss anything, bounce ideas.
  2. Plugins: anything related to plugins. Introduce yours and ask for feedback, suggest plugin ideas.
  3. Help Wanted!: if you have a problem and need someone to lend a hand, try here. The project issue tracker is not suitable for personal support requests (its goals are to report defects or suggest feature requests, not troubleshoot your own unique personal .htaccess issue), but this forum is. Maybe some freelancers will even get a couple paid gigs here too?

If these forums do meet a need and become active, I may ask a few volunteers to help moderate it in the future.

2. Nightly builds!

There are now YOURLS nightly builds generated, well, every night. This is aimed at users who want to update their install (either to code plugins or to fix bugs without waiting for an official package) and don’t know how to update YOURLS with SVN.

For the record, unless stated otherwise the current trunk version of YOURLS is safe to run on a live site. For instance, I run it on and also my personal URL shortener,, and things have always been fine.

Remember: when coding plugins, it’s recommended to use the latest available, that is either running trunk or installing a nightly build. Which leads to me third point:

3. Hook list!

YOURLS plugin coders will be pleased to know that there is now an exhaustive and always up to date list of YOURLS actions and filters. This list is generated every night against the current trunk version, thanks to the help of a smart user who crafted a neat perl script.

Short URL to this post:

Happy New Year and a Plugin

Happy New Year, fellow YOURLS users. May this year bring all sorts of shortened URLs to you and your family!

I’m done writing my upcoming book about WordPress plugins (Professional WordPress Plugin Development) so I’m back on being able to dedicate some free time to YOURLS again. Ain’t that good news? :)

Also, I’ve added a new plugin to the Wiki Docs: this one lets you Ignore Bots from your stats and click counts.

Short URL to this post:

YOURLS 1.5 Released

I’m delighted to announce the availability of the YOURLS 1.5 “Ronnie James Dio” release.

\m/ Dio \m/

First, in the tradition of an Open Source CMS I particularly love and steal code from, I decided to baptize YOURLS release after the name of a musician, so I elected to pick someone I truly heart and who has been often with me when coding recently. But this post isn’t about me being a metalhead, right? So, back to YOURLS. What’s new?

Plugins. OMG PLUGINS!!1

The big new feature in YOURLS is a very cool plugin API. Plugins are simple PHP files that extend or modify features of YOURLS. Plugins are uberly cool because you can change how things work without modifying core files, and this way update YOURLS without losing your changes. Plugins are rather simple to write, and the package comes with a few sample plugins that you can use as examples to build your own. If you happen to also know that Open Source CMS I love, you’ll see that things are very similar.

Lots of cool stuff!

This release introduces other cool features or improvements:

  • You can move your config.php in the new /user directory where plugins live. This way, when you want to update YOURLS, simply delete everything except your /user folder and upload fresh files.
  • Shortening links is now more convenient than ever. There are 4 different bookmarklets, and the very handy “Prefix-n-shorten” feature allows you to simply type your site URL before any URL (like sho.rt/http://very-long-url-to-shrink/bleh).
  • Page titles are now saved when you shorten a long URL

Check the almost detailed changelog, or the very detailed commit log for more. Or, you know what? Simply check what’s new in the admin area of your YOURLS setup :)

But it still sucks :(

All things are not perfect yet and there will be a few bugs to axe. In particular, you may experience a few kinks when YOURLS will be fetching the title of a remote page with funky characters.

Also, this release is still using a, hmmm, “rather poor”? yeah, seems polite enough, rather poor DB structure that is more or less what I implemented when I began coding on YOURLS and when I didn’t plan for success or fun features. This DB schema will be just fine for most installs and use, but it’s not scalable and is difficult to make evolve.

So, the next release may be a quick 1.5.1 in a couple of weeks if I get enough feedback to fix a few things I left in 1.5, and then I’ll start working on the major rethinking of the DB structure (and a sure fun updater script) that is a pre-requisite to implement a load of other exciting features.

Another thing I need to improve is the community side. Version 1.4.3 have been downloaded more than 15,000 times so I guess there are a few thousands users now. Issues on the project are fine to report bugs or suggest features, but it’s too limited for the growing number of people seeking advice or help. I also want a simple way for people to share their plugins, so I’ll probably set up some kind of forum soon.

Shorten up!

Thank you for using YOURLS. I hope you’ll enjoy it as much as I enjoyed making it and improving it thanks to the invaluable feedback I got from a few users. Have fun!

Short URL to this post:

Hello world!

Welcome to WordPress. This is your first post. Edit or delete it, then start blogging YOURLS’ Blog! I’ll try to separate things from my main blog and post updates about YOURLS here (the major stuff will be probably cross-posted on both anyway)

As some of you know, I’m pretty busy at the moment, but still working on the 1.5 release (no, no ETA)

Short URL to this post: