Today I've released GNOME Web 3.12. This release is fantastic — the result of a collective effort of GNOME developers, designers, contributors, and of the excellence that WebKitGTK+ 2.4 provides. I've usually felt pretty excited with Web releases —result perhaps of Stockholm syndrome, you'd say— but, quite frankly, I believe that anyone who has tried Web during this development cycle will agree with me that we're reaching a milestone in user-experience and maturity of the project that is far beyond anything we've done in the past. That's why I feel particularly proud of our achievements and confident that you'll love Web, too. But enough with the preamble, let's see what's new in this release.

One process per tab, for improved stability and responsiveness: Ever since Web started using WebKit2, we've had an architecture that allowed us to split the application into different processes. One of these processes, the so-called Web process is the one in charge of handling the web content, and is split from the Epiphany process. The advantage of this model is that, shall the web content or bugs in the JavaScript engine cause a crash, the UI will not be affected. Unfortunately, up to Web 3.10, this one web process was shared among all tabs and windows, so that a crash caused by one page would lose you all the pages in the browser. But since Web 3.12, and thanks to the impressive effort of the WebKit team that Carlos has led, we've moved to a different process model. One process per tab means that every tab in the browser will have its own web process, so that no unresponsive or crashing tab will have an impact on the rest of the browser. This feature is configurable, for those who might want to opt out.

A new and modern location/title headerbar: With the last release we started leaning in a bold direction by displaying only the location entry and getting rid of the title bar. Not everyone was immediately pleased with this choice, as for some people being able to see the page title is also important. After several rounds of design discussion, and thanks to the tireless Yosef, we finally merged a major change to the UI, which now includes a headerbar that displays the page title and location, and turns into the location entry on click or whenever the page is loading. The result is beautiful, see it by yourself!

The overview has been turned into an HTML page: Loren did a great job transforming the existing GtkIconView / GtkListStore - based overview into a dynamic HTML page. The advantages of this, besides serving of a good test case for UI/Web process communication and letting us getting rid of thousands of lines of code, is that the overview becomes an easily themable and animatable HTML document. Thanks to this, in no time Jakub came up with a beautiful style:

Most dialogs have been cleaned up and revamped: This was a result of the work started by Jon during the WebKitGTK+ hackfest. History, passwords, cookies, and other dialogs have a new face, and they all look pretty much as you'd expect from a GNOME 3.12 application.

The incognito mode has also received a facelift: Thanks to Jon, instead of using the dark theme variant, we now have proper theming for incognito windows.

Now you can configure your search engine from the preferences: Despite the popularity that DuckDuckGo has among our users, there are still people who would rather use a different search engine. Michael Catanzaro has contributed with an addition to the preferences dialog that allows users to choose the search engine they prefer, without having to resort to change their gsettings manually.

Many other UI improvements: including several fixes to the Downloads bar, beautiful tabs, and improved style of our about: pages.