JavaScript on a diet

July 14th, 2011


My name is Kaja and I’m in Desktop QA doing first-line bug testing on Windows.

Here’s the newest snapshot featuring numerous Core updates including:

  • Improved handling of coordinates and widths inside the layout engine (see the changelog for more details)
  • <video preload>, a simple form of bandwidth management where the author can give a hint about how much buffering is acceptable
  • Site compatibility fixes
  • Stability fixes
  • Memory fixes

We have also updated Carakan to use an improved, compact object model which increases overall performance, and reduces the engine’s memory usage by up to 6-7% (in some cases even more).

The Core team will continue to improve on this, and will post a more detailed explanation on the Core Concerns blog in the future, but here’s a quick summary from the Core team for now:

The Carakan engine internally uses automatic classes to keep track of object properties and their types. We’ve recently expanded the scope and power of these internal classes significantly to also record the layout (or shape) of the objects along with their property types. Carakan is, as a result, able to reduce the overhead per object, but the richer type information also enables the generation of better JITed code. The task represents the rollout of this improved, compact object model, demonstrating some of the incremental improvements made. Much more to come.

With such a big update to Core, please watch out for regressions and let us know if you see anything interesting.

Known issues

  • Opera may crash when reloading pages with Dragonfly open
  • Intermittent freezing on some sites (such as Facebook)

WARNING: This is a development snapshot: It contains the latest changes, but may also have severe known issues, including crashes, and data loss situations. In fact, it may not work at all.