We just released two quick updates for WPML. These updates addresses a few smaller things that came up from support after the bigger WPML 3.2.3 update.

  • Fixed a performance issue when looking up pages by slug and having a very large number of posts in the database – we're not sure if anyone except wpml.org could notice this problem. A change to an SQL statement caused heavy load on our database server. We traced it to a recent change that solved a bug. This change was enhanced to solve the bug without causing DB load. Again, this issue was only noticeable on very large databases running under heavy load (like wpml.org site).
  • Solved the problem when, in some cases, WPML was showing a corrupted settings warning – a sequence of batch plugin activations, deactivation and activation again could trigger a scary message about settings being corrupted. Even though this doesn't cause any real problem, we think that it's scary enough to justify a quick fix.
  • Fixed the xdomain script not always running, due to a dependency issue – in some cases, JS resources were not loaded.
  • Solved a problem where page slugs where given precedence over custom post type slugs when resolving permalinks, even though the URI specified the custom post type – solving this bug was what caused the performance problem for huge sites.

We understand that updating plugins is a hassle and we try to limit our updates to only the necessary ones. As I am writing this post, our developers are adding more and more automated testing to WPML. Our goal is to achieve 100% test coverage until the end of 2015. This will allow us to release updates without the fear of causing side effects. Currently, our QA cycle takes a staggering 20 work-weeks. It's run by 4 people during a whole month. We run several thousands of tests on many configurations. The amount of testing is huge and we're looking to replace much of it with automated testing.

Questions? Ideas? Suggestions? Leave your comment and we'll get back to you.