drupal planet

Upgrading large & complex sites

Upgrading Drupal websites from one major version to the next is painful. Most people solve the problem by sticking with the old version, and I've seen a lot of people give up after trying for many days. I've myself done a good amount of (successful) upgrades from Drupal 5 to Drupal 6 in the past year and decided to share my experience and hopefully help some people get through with it. My presentation Upgrading Drupal takes a look at what issues make those upgrades so damn problematic and what solutions we can implement to solve them. I'll be giving the presentation for the third time at DrupalCamp Spain this coming week-end, and I proposed it as a session for DrupalCon SF (please vote!).

The two main problems with upgrades are complexity and time: a lot of operations need to be performed in a specific order within a short period of time to minimize downtime. Any solution that addresses these two problems will need to be automated, and the best way to do this that I found involved a VCS, drush and some minimal shell scripting. The presentation is about the WHY's, and this article is about the HOW's, with more implementation details that wouldn't fit well in a presentation.

Read more

Drupal Media Camp Switzerland

Drupal Media Camp Switzerland took place this week-end, less than a year after the idea of a Swiss DrupalCamp was introduced at a Drupal user group meeting in Zurich. This event was full of good presentations, exciting moments and networking opportunities, and I believe it was very successful in increasing the adoption of the Drupal CMS on the Swiss market. It was particularly interesting to have the Swiss-german Radio DRS and the news publisher Edipresse provide yet another example showing that Drupal can support large amounts of traffic and also generated some great conversation on various topics surrounding high-traffic websites.

Read more

RDF in Core code sprint: more details

The RDF code sprint is now less than a week away, and it's time to give you a quick update. For more information have a look at the original announcement as well as last week's blog post from Stephane Corlosquet.

We now have a few more participants, with Stefan Freudenberg, Frédéric G. Marand, Mark Birbeck and John Morahan joining us. There is still room for one more person, so if you are familiar with theming, the Fields API and/or writing tests we would be happy to have you with us.

Read more

The Perfect Music Festival

If you have some friends with a Last.FM account, head over to http://perfectfestival.com, where you can generate the homepage for a fictive music festival where all their favorite bands are playing! Try something like "Hey chx, I'm going to Perfect Festival at the end of June, should I get you some tickets too?"

Read more

Test Automation

SimpleTest has brought a technology to Drupal, but also a methodology, both of which have greatly enhanced the Drupal development process. The test automation methodology is common to all testing frameworks. It is the topic of this article and will also serve as an introduction to the Intro to SimpleTest session this Friday at DrupalCon DC.

Read more

Triggering the creation of imagecache derivatives programmatically

I was recently faced with the same problem in two different projects: forcing the creation of an image derivative with imagecache so that it is available in the submit handler of the same form in which the image was uploaded. By default, imagecache generates images on demand triggered by an HTTP request, which is ideal for most cases. However, this design doesn't make it possible to trigger the generation of images programmatically, which is why I created the following code snippet.

Read more

What's in Drupal?

I was wondering what it would look like if you put all of Drupal's code into wordle. It turns out that Drupal has a lot of arrays, functions and forms, which is not too surprising. What's more interesting is a comparison between different versions of Drupal, and developers shouldn't take long to find some key differences... take a look!

Read more