It’s been only 2 weeks since we released Typo 6.1.3 and Typo 6.1.4 is already here. 2 weeks ago, we were sure that Typo was stable enough to ensure a long term release while we would work on our new major release.
3 things prevented us to do so.
First, a new Rails version was released with another important security fix. Typo 6.1.4 comes with that fix so you should definitely upgrade.
Second, we had the opportunity to fix some bugs, and that was another very good reason to release.
Three, we have done a huge documentation effort lately, and we thought it would be a good idea to have it released as well. The doc is now used to automatically deploy our Web Site on typosphere.org. Oh, and we’ve also changed our Twitter account, you can now follow us on @gettypo.
Once again, we’d like to thank our contributors Marcel M. Cary, Nicolas Blanco and randomecho for their… contribution to Typo.
Moved #defaulttextfilter so Trackback can use it (Marcel M. Cary).
Fixed typo news and latest posts date format with distanceoftimeinwords (Marcel M. Cary)
Fixed Heroku deployment Gemfile (Nicolas Blanco)
Fixes a bug where already published articles publication date would be changed by autosave (issue 141).
Fixed secret token generation on existing blog (issue 142).
Fixed an issue where textfilter showed always as ‘none’, even if set before to markdown (issue 69).
I love how History tricks you by repeating itself. There’s a lot of irony in the way insignificant events build the perfect running gag in real life. 9 years ago, Tobias Luetke started Typo in a Starbucks because of a typo in his calendar. Today, I was in a Starbucks releasing Typo 6.1.3 because of a glitch in my agenda. History repeating.
I love free software communities too, when it stops arguing about politics and trolling licences to focus on code and releasing software for the fun of it.
Open source world is wonderful. The more active a project, the more contributors it find. Exactly 2 years ago, I was writing (in French) about how Github would kill open source software communities. I still believe a single word of it, even though Github is amazing to make project activity more visible. Typo has 1180 forks and is followed by 858 people without advertising about it. Latest release happened 2 weeks ago, and we had more contribution that I would have expected from 4 great contributors : Nicolas Bianco, Soon Van, Mcary, and Diego Elio Pettenò, who’s been packaging Typo on Gentoo for years.
Typo 6.1.3 is probably the latest of the 6.1 series, and a bug fixing only release. We’re now going to work on Typo 6.2, a feature based release.
For a comprehensive list of fixes, please refer to Typo 6.1.3 Changelog.
The biggest contribution was pushed by Nicolas Bianco. It fixes file upload on Amazon S3. His work andgreat ideas make Typo easier to use on Heroku than ever.
Soon Van has been doing a great work on i18n, documentation and interface consistency.
Diego Elio Pettenò fixed various plugins and text filters that make use of Flickr API.
Mcary fixed live search plugin and behavior consistency within the admin interface.
Ticket nº86 : Media list did not reload after uploading a resource.
Ticket nº103 : Fixes a security issue by changing the scret token at setup time. Displays a warning message when default secret token is used.
Ticket nº123 : fixes the links available on the dashboard for both contributors and publishers.
Ticket nº124 : Fixes the html editor look and feel when the window gets too small.
Ticket nº129 : the default theme would not take all the blog options into account.
It’s been a while since you haven’t heard of us, and we first wanted to wish you a happy new year. As 2013 is starting, we’re happy to release Typo 6.1.2, the second of the Remi Ochlik series, nammed after a French photographer who was killed in Syria a few days after getting a World Press Photo, the most prestigious award for photojournalists.
This new Typo release comes with a major security bugfix that affects every Ruby on Rails version so far, and make your hosting vulnerable. If you’ve been using a prior Typo version, then it’s time for you to upgrade as soon as possible. This is mission critical, no kidding.
New feature and improvements
Typo 6.1.2 is the first one to run out of the box on a Heroku instance. You just need to change the config/storage.yml file to switch to Amazon S3. This will make Typo deployment much more easier, and we plan to make it even more simple in the next few months.
Typo’s been translated in a few more language, we’re happy to welcome the Norvegian and Simple Chinese versions. Other translations have been improved as well.
The possibility of Typo sidebar plugins have been extended with the possibility to add new settings on existing plugins without reloading them.
This version also provides the usual bug fixes:
A bug in the article list within the admin has been fixed. Selecting “all articles” would not display drafts.
Some usability issues regarding the menu highlight have also been fixed.
Solves an issue where the SEO titles would not be saved when submitting the form.
Autosave when using the visual editor has also been saved.
After a few months of musing, working and slacking, and a few commits too, we’re proud to announce the release of Typo 6.1 “Rémi Ochlik”. Rémi Ochlik was a French photographer who was killed in Syria a few days after getting a World Press Photo, the most prestigious award for photojournalists.
Typo 6.1.0 is the first release designed for Ruby 1.9 only, and the last one for Rails 3.0 series. Oh, and it’s still not running on Heroku even though some people managed to do it with some limitations.
This release was meant to be dedicated to bug fixing and improving our base code. It also comes with a few nice feature.
Bootstraped, a new default theme
True Blue 3 is not our default theme anymore. It was replaced by Bootstraped, a new Twitter Bootstrap 2 based theme. Bootstraped is meant to be an easy to use framework for theme developers to create new templates. The choice of Bootstrap was an easy one, as none of us is a designed.
A redesigned back office
The administration was also revamped with Twitter Bootstrap. It’s still running Bootstrap 1.4, as 2.0 was released after we finished the work. Swithcing would have delayed this release too much.
The new editor, easier to use with more visibility.
The comments listing. The color pills make knowing what’s what easier.
Initial database loading: users don’t have to run
rake db:migrate when starting Typo for the first time. Trying to connect to the blog loads the database schema and data.
CKEditor was upgraded to 3.6.2. It now supports modern browsers and is a bit more stable.
User can now create categories within the editor.
Fully customizable 404 pages.
URL shortener can now be used to external links, always better to promote your brand.
Added a per state filtering on articles and draft listing: default (everything but draft), published articles, drafts, publication pending, withdrawn
Added custom permalinks for categories.
If you don’t use them, drop them! We’ve removed a few feature from Typo. Some of them will come back later, some not.
So long Typogarden and thank you for the fish
Typogarden is no more. We’ve lost the domain, which ended its long and painful agony. All these themes were a hastle to maintain, most of them were designed back in 2005, and no one had the time to care about them. This also means no more theme catalogue, which was removed from the admin.
Typogarden will come back under another form, maybe as a featured theme catalogue with the most up to date Typo themes.
No more complicated categories interfaces
Bye bye theme editor
A theme editor is a great ad handy thing when it’s complete and actually working. This one was working but not complete and practical enough to be left as is. We had the choice between fixing it and removing it. It will probably come back later, under another form.
We’ve fixed a bunch of bugs, some of them being reported by you, some of them discovered by use.
Issue #46: Fixed comments management bulk operations.
Issues #48, #55: ActionView::Template::Error (settings was supposed to be a Hash, but was a String).
Issue #57: Fixed CKEditor file upload.
Issue #62: Fixed redirects not being correctly updated when updating a permalink.
Fixed the way permalinks are generated.
Fixed switching back and fort between simple and visual editor.
Now using publishedat, not createdat to determine when comments shall be closed.
Fixed a bug with controllers having empty indexes rendering errors.
Fixed a bug setting up a post as published everytime you edit it even for a draft.
Fixed comment moderation when using Akismet.
Fixed comments filtering when not running Typo in English.
Fixed autosave buttons display.
Now causes bundler to fail when database.yml does not exist.
Avoids accidentally loading old drafts.
We’re releasing tonight Typo 6.0.9 as Rails 3.0.10 brought many critical security fixes that would affect Typo, which means you really should upgrade now. This version also brings a couple of improvement some bug squashing and Yannick’s usual refactoring and performances tweaking.
The security issues addressed by Rails 3.0.10 are:
- Filter Skipping bugs
- SQL Injection issues
- Parse error in strip_tags
- UTF-8 escaping vulnerability
It’s now possible to create a new category within the article editor. This quite useful feature brings Thomas back from the dead and this makes us very happy.
Displaying a password protected article within a category would make Typo crash when using the default layouts.
Using Typo standard live search views in a theme would make the application crash.
Issue #42: creating a new user from the administration crashes the application.
Fixes an issue with Redcloth 4.2.7.
Issue #39: Time.parse apparently hiccups when the timestamp string contains “GMT+0000 (UTC)”
Fixes a bug where attachment thumbnails would not be created at upload from the editor and API.
Fixes a bug in the new sanitization module when running under Ruby 1.9.2.
Once again, we want to thank the growing Typo community for their help on improving their favourite blogging engine (at least we hope so), and, in particular Huy Dinh for fixing some too long existing bugs.
Being the eighth of the Irving Penn series, this new Typo release comes only 3 days after the latest one, but it fixes a bunch of serious bugs that were discovered while using Typo 6.0.7 in the wild.
Adding per tags and categories templates
Typo is now able to provide a different template according to the category and tag you visit. This is useful for some sites which need such a level of customization. To use them, just add a views/categories/category-permalink.html.erb or a views/categories/category-permalink.html.erb file in your theme. Typo will use that file when displaying this category.
Fixes a bug in the meta title generation when displaying an article, a category or a tag.
Fixes the custom tracking field making the site crashing when used.
Fixes a bug on tags removal not working.
Moving our bug tracker to Github
We’ve decided to move our bug tracker from Lighthouse to Github. In the past years, Github ticketing system has gained in feature and maturity while Lighthouse has been stalling, not being really convenient to use. This move allows us to centralize our tools in a single place. The new bug reporting place is now https://github.com/fdv/typo/issues
It’s been the third release in 11 days, but thanks to all our beta testers, I hope it’s the latest bugfix one. We want to thank in alphabetical order Mitch Pirtle, Lars Tobias Skjong-Børsting, Mathieu Poussin and Rhaamo for their bug hunting operation.
After releasing Typo 6.0.6, we realized that we left a few critical bugs unfixed. It seems that none of us actually ran our tests against Ruby 1.9.2, and things that were working under certain circumstances were breaking against a different environment.
So this release provides nothing bug bug fixing, which is not so bad, after all.
File upload was completely broken due to a behavior change in ActionDispatch::Http::UploadedFile between Rails 3.0.2 and Rails 3.0.3. File upload in itself is pretty hard to test, and we failed at this point.
Image resize was completely broken too due to a version change of minimagick. Reverting back to minimagick 1.3.3 did the trick.
Under PostgreSQL, initial migration would set an empty post_type despite a default set to read. It seems that PostgreSQL won’t fill the field value when created with existing inserts.
Mathieu Poussin added Recaptcha support on all bundled themes.
Pages view was broken under Ruby 1.9.2 due to an encoding issue. There was also an encoding bug in post_type edition and creation.
Despite extensive testing, pagination was broken due to a buggy will_paginate 3.0.4 beta. Reverting to 3.0.2 did the job.
Last but not least, a change in the way Google handles RSS queries caused dashboard load to take ages.
That’s all (for now). We’ll try to to better this time.
5 weeks after releasing Typo 6.0.5, we’re proud to release Typo 6.0.6 into the wild. With 403 files changed, 8526 insertions and 4961 deletions (before generating the CHANGELOG) this is our biggest release of all time. This was made possible thanks to Yannick François joining the core team, the growing amount of active contributors and a very crappy weather above Europe during our summer holiday.
You can download Typo 6.0.6 at https://github.com/downloads/fdv/typo/typo-6.0.6.zip or https://github.com/downloads/fdv/typo/typo-6.0.6.tgz. A demo is set up at http://demo.typosphere.org.
What’s under the hood?
Rails 3.1 ready
We’ve got a long way since Typo was first released for Rails 0.6 and Ruby 1.8.4. Typo 6.0.6 is now Rails 3.1.0 ready and runs on both Ruby 1.8.7 and 1.9.2. We’re now waiting for Passenger (mod_rails) to be fully Rails 3.1 compliant to switch to this new exciting Rails version.
Adoption of microblogging has made URL shorteners an important part of our daily browsing life. Hosted services may disappear one day or another taking your shortened URL with them, so we have given Typo its own URL shortener.
When you publish a new article, Typo generates a shortened URL that will redirect to your content. No more risks of disappearing shortened URLs, YOU keep the control.
Silvio Relli did a great job adding Recaptcha support to Typo 6.0.6. Recaptcha is a captcha system that both fights against spam and uses successful decodings to helps digitise books.
You can use both Recaptcha and Akismet on a Typo installation.
New toys for plugin developpers
We wanted to make Typo easier to extend for plugin developpers. Typo 6.0.6 introduces a bunch of new tools for them.
Users custom fields
Users can now have an infinite nummer of custom fields, that will be used by plugins developpers without having to modify the database. Settings are easy to add and easy as pie to use.
Contents custom fields
Articles and pages can now have an infinite nummer of custom fields, that will be used by plugins developers without having to modify the database. These custom fields are easy to add and easy as pie to use.
Custom routes for plugins
User defined plugins can now use their own route without changing the original routing files. This allows plugin developers to create powerful extensions without to worry about what Typo’s routing file looks like.
A powerful SEO oriented blogging engine
We’ve worked a lot on SEO, aiming at being as powerful as Yoast SEO Plugin on Wordpress. This release is a first step with the following feature.
Support for rel=’canonical’ in pages header to avoid duplicate content.
A canonical page is the preferred version of a set of pages with highly similar content. It’s common for a site to have several pages listing the same set of products. For example, one page might display products sorted in alphabetical order, while other pages display the same products listed by price or by rating. For example: http://www.example.com/product.php?item=swedish-fish&trackingid=1234567&sort=alpha&sessionid=5678asfasdfasfd http://www.example.com/product.php?item=swedish-fish&trackingid=1234567&sort=price&sessionid=5678asfasdfasfd If Google knows that these pages have the same content, we may index only one version for our search results. Our algorithms select the page we think best answers the user’s query. Now, however, users can specify a canonical page to search engines by adding a link element with the attribute rel=”canonical” to the head section of the non-canonical version of the page. Adding this link and attribute lets site owners identify sets of identical content and suggest to Google: “Of all these pages with identical content, this page is the most useful. Please prioritize it in search results.”
A custom template for meta title and description
Since meta title and description are very important for SEO, it is very important to be able to setup its own content. Typo now provides powerful customizable templates for both of them, with nice default enabled.
Making meta keywords optionnal
Since search engines do not consider meta keywords anymore, some people want to disable them to save on their page weight. This option makes it possible.
New content templates
Typo can now handle multiple content types through dedicated templates. Let’s say you want to display text articles and pictures only. Just create the content type, write a quick template for rendering, write your article, and your done. This new feature comes with handy helpers to generate per template menu…
This makes Typo theming even more powerful.
Control your cache from the admin
The long removed cache sweeping interface is now back, with interesting statistics about cached files.
Attached images are now generated in 3 sizes: original, medium and thumb. Both medium and thumb sizes can be defined in the administration.
Pictures albums in lightbox
Typo Lightbox macro now supports set parametre, which allows you to create nice photo albums.
More readability and usability
The admin sections have been reorganized for more readability and usability. We’ve redisigned some interfaces, work still in progress.
Typo code is as old as Rails, which means we still carry old, deprecated code. This version brings lots of refactoring, dead code removal, speed optimization and even more testing.
Lars Tobias Skjong-Børsting has been doing a great job providing a full norwegian translation in an impressively short time.
With code refactoring usually comes bug squashing. This version got rid of more bugs than a full tank of DDT would have, without the cancer effect.
A community effort
Typo 6.0.6 would have never been possible without our community of contributors, listed in alphabetical order: Huy Dinh, Fish, Justin B. Kay, Maarten Mulders, Silvio Relli, Melanie Shebel, Lars Tobias Skjong-Børsting, Eric Sorenson, Yule.
It’s been 3 weeks since we last released a Typo version, and we want to thank all our users who provided great feedback â€“ mostly bug reports, nobody’s perfect. We’ve had a hard time fixing them as these bugs were mostly due to the upgrade to Rails 3.0, but tonight we’re happy to release Typo 6.0.4, fourth of both the Irving Penn series and 2011.
Integrated version checker
When displaying the dashboard, typo will check for the latest release and will display a message accordingly:
- A notice if Typo’s just a minor version behind.
- A warning if Typo’s a sub version behind.
- An error message if Typo’s a major version behind
Our dashboard was almost completely redesigned, making information easier to get and prettier.
Utility Sidebar Widget
A utility sidebar widget was added, displaying various links to Login page, RSS, Typo documentation. This Widget is enabled by default when creating a new blog making the sidebar prettier.
Editable RSS description
RSS description is now editable from the admin. You can add as much HTML as you want to make nice RSS footers.
Having 3 Typo commiters out of 4 being French while having an incomplete French translation full of mistakes was a shame. This is now fixed thanks to great work by Ollivier Robert and Sylvain Abelard.
Invalid publishing time when using a non UTC timezone.
With Rails 2, Active Record used to store contents using local time for timestamps. Rails 3 uses UTC instead, creating a gap between the publishing time and the user’s time. Typo 6.0.4 fixes this making Active Record behave like it should on Rails 3.
Broken theme editor.
A change in the way File.read should be called between Ruby 1.8.6 and Ruby 1.8.7 broke theme file loading. Also theme editor did not raise an error when trying to load non existing files.
Broken migrations when creating a new blog.
Rails 3 upgrade broke initial migration as it was trying to use a non loaded model.
Broken sidebar save button
Upgrade to Rails 3 with use of prototypelegacyhelper plugin broke many AJAX saving feature. This caused sidebars not to be saved anymore.
Broken image links in administration style.
Background images would not load when using Typo in a sub URI.
Broken cache system.
The way caching used to work caused a stale file descriptor bug having the cache not being generated anymore after a sweep.
Broken cache system with sub URIs.
Cache could not be accessed when using a site deployed in a sub URI, making it useless.
Broken sites with https.
Blogs using https would break because Typo was only expecting URLs to start with http only.
Broken Flickr and Lightbox macro filters.
By escaping macro tags, BlueCloth was breaking Flickr and Lightbox macros. This would happen when using Markdown, Textile or Markdown + Smartypants.
If you’re using any of the Typo 6.0 series, you really should upgrade to 6.0.3 as it fixes a lot of AJAX related bugs. Having a good unit tests coverage is not always enough, and human test are always worth spending the time we didn’t have. Hopefully, Fabiano Francesconi has been doing a great work reporting bugs he was falling on tonight while I was fixing them.
As usual, you can download Typo at http://typosphere.org/stable.tgz or http://typosphere.org/stable.zip.
A few things fixed by Typo 6.0.3:
- Sidebar settings being saved since nothing seemed to happen and the sidebar form would eventually look dead afterwards.
- Comments preview breaking on most legacy themes, including built in Typographic, Scribbish, Dirtylicious and Standard Issue.
- Category drag and drop reorder would not do anything.
- Admin content filtering would render an error.