===============
Version 3.19.90
===============

GNOME 3.20 is heating up and so is Builder. We've landed a bunch more
features for you since 3.19.4 and are ready for more general testing
while we stablize for the upcoming 3.20 release.

In this release, you'll find:

 • A new diagnostic provider for common gettext errors (Daiki Ueno)
 • Builder no longer bookmarks known temporary directories.
   This should make things less annoying when opening a single
   file with Builder. (Akshaya Kakkilaya)
 • The framework for User Help has landed, and we need your help to
   put together a good help story in Builder! (Alexandre Franke)
 • Terminal styling for Dark Mode has been fixed (Carlos Soriano)
 • Preferences layout was extracted into EggColumnLayout and fixed
   various Height for Width issues.
   See https://blogs.gnome.org/chergert/2016/02/05/eggcolumnlayout/
 • Preferences for disabling various diagnostic engines was added.
 • Improvements to our shared library template (Philip Withnall,
   Igor Gnatenko)
   See `ide create-project --help` for more information.
 • A configuration manager has been added to allow building various
   project configurations. A configruation editor allows you to
   create new and tweak existing configurations.
 • Support building projects inside xdg-app runtime, using
   "xdg-app build"
 • Support for building inside of a jhbuild runtime (Patrick Griffis)
 • Various tooltips were added to the user interface (Piotr Drąg,
   Adrian Zatreanu)
 • The line change gutter got support for rendering deleted lines.
 • Ctags got support for coalescing similar completion results. (chandu)
 • Cursor location history and ctags were moved to .cache directories.
   (Megh Parikh)
 • Libide, Egg, and Template-GLib headers are now installed to
   $(includedir)/gnome-builder-@VERSION@. This allows building C
   and vala plugins out of tree.
 • Support for enabling pylint via GNOME Code Assistance was added.
 • You can search for projects in the greeter using the directory name.
 • An empty state splash was added to the editor.
 • Various workarounds for recent changes in Vala.
 • Various fixes to the command bar availability (Sebastien Lafargue)
 • Vim improvements (Sebastien Lafargue)
 • Plugins can remove preferences when unloading (Sebastien Lafargue)
 • Many improvements to translations (Alexandre Franke, Anders Jonsson,
   Artur de Aquino Morais, Aurimas Černius, Balázs Meskó,
   Baurzhan Muftakhidinov, Chao-Hsiung Liao, Daniel Mustieles,
   Dušan Kazik, Fran Dieguez, Gábor Kelemen, Mario Blättermann,
   Piotr Drąg, Rafael Fontenelle, Rūdolfs Mazurs)

Happy Hacking!

Please help us shake out the bugs by running Builder and reporting
bugs to https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-builder


==============
Version 3.19.4
==============

It's been far too long since our last release, and things are heating up
for GNOME 3.20. Builder has underone a major overhaul since 3.18 and
still has a few major pieces still to land this cycle.

 • Perspectives have been implemented to allow for clearer groupings
   of application features and plugins.
 • Preferences has undergone substantial redesign. Preferences now
   use a custom perspective rather than a dialog window.
   - There is still an height-for-width bug to resolve in the layout
     of preference items.
 • A new "ide" command exposing various Builder features to command
   line users.
 • Global search has gotten some style cleanup.
 • Builders custom CSS was rewritten for recent gtk+ changes.
 • A build panel has been added.
 • A Todo plugin was added to track todo items.
 • Perspectives can handle URI opening, allowing for perspectives
   such as a "glade perspective" to handle opening .ui files.
 • Builder-1.0.gir was dropped, in favor of Ide-1.0.gir.
 • Embedded plugins and dependency solving now works.
 • Plugin APIs were simplified.
 • Multi-process separation support using IdeWorker. Plugins can now
   easily move work to a subprocess and communicate via D-Bus. Jedi
   has been ported to multi-process mode for Python auto-completion.
 • Lots of Vim-mode improvements.
 • Vala plugin improvements.
 • External plugins are now supported.
 • Plugins can be loaded and unloaded.
 • Loads of bug and build system fixes.
 • Project greeter and project creation have been rewritten for
   perspectives.
 • Plugins now have automatic resources for menus.ui and css themes.
 • Various keybinding improvements.
 • Control+click works for navigating to type definitions.
 • scrolloffset has much improved and gained support for negative
   values, which works in the opposite direction (top down).
 • Search movements have been simplified.

And much, much more!

Please help us shake out the bugs by running Builder and reporting
bugs to bugzilla.gnome.org.


==============
Version 3.18.1
==============

Just like the 3.16 cycle, we are moving fast despite the dot release
nature of this cycle. We have a lot to get done and we want our lovely
users helping us test this young program.

A short list of updates since 3.18.0:

 • Initial support for Vala. Until we move this out of process, we do
   expect that things are a bit leaky. This plugin is written in Vala
   and requires libvala-0.30. It supports autocompletion, as-you-type
   error highlighting, a symbol tree, and jump to definition. We would
   love for the vala community continue helping make this plugin great.
 • You can now write plugins in Vala. *.vapi are generated for libide-1.0
   and gnome-builder-1.0.
 • Autocompletion, in most scenarios, will be much faster. Check out
   https://blogs.gnome.org/chergert/2015/10/05/post-guadec-catchup/ for
   more information on how this was done.
 • Most autocompletion engines now support fuzzy completion. This means
   that "gtkwidshow" will match "gtk_widget_show".
 • A few crashers were fixed.
 • --enable-*-plugin now works correctly.
 • Content type loading was fixed so that Makefile.am are no longer opened
   by totem.
 • Python jedi completion has been improved.
 • Fix some coverity warnings.
 • A new button has been added to the editor to jump to the next warning
   or error.
 • The C indenter is a bit more friendly to alternate coding styles.
 • Reindent line support has landed (tab in emacs, == in vim, ctrl+alt+i
   as default).
 • A new font for the overview map has been enabled. It is called BuilderBlocks
   and is a generic block font based on Tofu from Behdad Esfahbod.
 • The ctags plugin can now defer tags generation to automakes `make ctags`.
 • You can now draw marks for spaces, tabs, newlines, non-breaking whitespace,
   trailing and leading spaces.
 • Many translation updates including (French, Hungarian, Kazakh, Korean,
   Spanish, Finnish, Esperanto, Czech, Italian, Brazilian Portuguese, Polish,
   German, and Serbian).
 • Improvements to the search workflow.
 • Various vim and emacs compatability and stability improvements.
 • Jedi completion proposals now show the correct word and lower probability
   of functions that start with __.
 • Symbol tree panel stability improvements.


Thanks to all of our more than 20 contributors since 3.18.0!


==============
Version 3.18.0
==============

GNOME 3.18 is here, and so is Builder!

A short list of updates since 3.17.92:

 • buffer: release symbol resolver aggressively
 • build: disable device manager/mingw plugins by default
 • cindent: ensure we don't loop forever looking for context
 • counters: add vsdo fallback on linux and no rdtscp instruction
 • counters: mask CPU bits from rdtscp instruction on x86_64
 • editor: release underlying document aggressively to prevent leaks
 • editor: <shift>k in vim mode to request documentation
 • editor: add simple goto line popover, activate with ctr+i in gedit mode
 • editor: fix crash upon DnD to editor
 • keybindings: use ctrl+alt+o for global search in gedit mode.
 • map-bin: ignore size adjustment when floating bar is not used
 • plugins: show plugin greyed out if it is disabled
 • search: disable progress bar in search results
 • search: fix popover bug when clearing search text
 • search: make the search entry more forgiving to smaller sizes
 • search: show more search results by default
 • symbol-tree: fix cache timeout to use milliseconds
 • theme: fix styling of view controls in stack header
 • view-stack: allow focusing the view stack by clicking on the header

We have marked the mingw and device manager plugins as experimental because
they are not implemented to the point of being useful. We suggest that
packagers do not ship them as part of the 3.18.0 release.

-- Christian



===============
Version 3.17.92
===============

Another Builder release is here!

This release is a snapshot before the final 3.18 release expected next week.
This gives packages a chance to ensure that everything is in working order
for the 3.18 release.

We'd like to remember everything that Builder is still a beta product and we
are working hard towards implementing all the requested features.

There are lots of changes this cycle, some more infrastructure than cosmetic.
A few of them are as follows:

 • Progress on implementing UI designs.
 • A new shortcuts dialog to help you discover features.
 • A new plugin engine powered by Libpeas. Currently, only in-tree plugins
   are supported. Plugins can be written in C or Python3.
 • A new workspace layout with panels which can be extended by plugins.
 • Completion with support for GObject Introspection for Python3 using Jedi.
 • Progress on device manager and CPU graphs.
 • Symbol tree is now shown in a panel which reduces widget overhead.
 • Loading of previous buffers is faster.
 • Read-only snippets viewer has been added to preferences.
 • Read-only plugin viewer in preferences.
 • Build systems can now be implemented as plugins.
 • Support for Terminals using VTE.
 • Editor overview map has been moved into GtkSourceView.
 • Smart backspace has been moved into GtkSourceView.
 • Builder gained printer support.

Thanks again to all our translators that kept things up to date while we
churned through bugs late in the cycle. We hope to do this less as we come
out of beta.

For those that are *very* adventurous, Builder should compile on OS X now with
a properly configured jhbuild toolchain. Additionally, we have maintained
compatability with FreeBSD and OpenBSD thanks to generous contributions.

Notes to packagers

 • We now install multiple private shared libraries to $prefix/gnome-builder/
 • Plugins are installed to $prefix/gnome-builder/plugins/

I'd like to thank our nearly 40 contributors this cycle for all your patches
and time spent on making Builder great!

-- Christian



==============
Version 3.16.3
==============

Your Builder development team has been working hard to build on the
tremendous momentum of the last few months. 3.16.3 is like each of it's
predecessors, packed with new features and bug fixes.

I'd like to personally thank everyone who contributed bugs during the cycle.
You keep us on our toes.

This release shows a sharp spike in contributions from new and existing
GNOME community members. I'm very happy to see this happening and look
forward to building Builder together.

Of note in this release:

 • A new source code minimap, recently pushed upstream into GtkSourceView.
 • A new greeter based on recent design work.
 • A new XML highlighter to highlight matching XML elements.
 • Support for ctags-based auto-completion.
 • High-performance, mutli-threaded counters that can be enabled with
   --enable-rdtscp. These are disabled by default as they require newer
   Intel Core i[357] features. ide-list-counters can be used to extract
   them from a running or crashed process.
 • The preferences interface has been vastly improved.
 • Search improvements.
 • A strftime format completion provider for Python.
 • Additional emacs, vim, and default keybindings.
 • Experimental support for building autotools projects with mingw.
 • Python auto-indenter improvements.
 • Many CSS style improvements on Adwaita.
 • Additional support for recursive-automake-based projects.
 • Some features have made configurable with gsettings.
 • Layered settings support for project vs global settings.
 • Improved modelines support.
 • Support for parsing DOAP files.
 • Various memory leaks were plugged.
 • Incremental highlighting has more aggressive invalidation.
 • Various race conditions in autotools support were fixes.
 • OpenBSD and FreeBSD build system fixes.
 • Many translation improvements.
 • libide-1.0.so and Ide-1.0.typelib are now installed to a private
   directory.

Thanks to everyone who contributed to this release!

 • Alexandre Franke
 • Carlos Soriano
 • Christian Hergert
 • Daniel Mustieles
 • Elad Alfassa
 • Erick Pérez Castellanos
 • Garrett Regier
 • Kalev Lember
 • Marek Černocký
 • Patrick Griffis
 • Piotr Drąg
 • Sebastien Lafargue
 • Ting-Wei Lan
 • TingPing
 • Wolf Vollprecht
 • Yosef Or Boczko


==============
Version 3.16.2
==============

Based on early feedback from 3.16.1, I'm announcing a followup release.
This is primarily a bug-fix release.

 • Fix double free in dummy vcs.
 • Fix project tree loading in dummy vcs.
 • Fix workbench action names in emacs mode.
 • Improve sorting of filenames in project tree.
 • Ensure loading of files matching content types supported by
   GtkSourceLanguage.
 • Enable project tree by default.
 • Enable project tree icons by default.
 • Add rename file in project tree.
 • Add move to trash in project tree.
 • Sort previously opened projects before projects discovered by miners.
 • Use sysconf() for page size (fixes building on OpenBSD).
 • Various clang build fixes.
 • Use arrow down instead of hamburger for search bar.
 • Fix unicode in markdown live preview.

Thanks to everyone that tested 3.16.1 and provided feedback!


==============
Version 3.16.1
==============

GNOME 3.16.1 is here, and so is a new release of Builder!

While most projects are focused on improving stability for 3.16.1, Builder is
quickly adding the features you need. This is only possible because we are
still an early preview application.

Some highlights of the over 300 new commits in this release:

 • Improved project tree including support for creating files and folders,
   opening with external programs based on content-type, and file-manager
   integration. (Christian Hergert, Garrett Regier)
 • A new incremental semantic syntax highlighting engine.
 • Semantic highlighting for C and C++ using Clang AST.
 • Document selection popover to ease switching between documents.
 • Symbols navigator for C and C++ files.
 • Apply "Fix-It" for C and C++ as provided by Clang.
 • Highlight build warnings in squiggly yellow lines.
 • Improvements to dark theme.
 • Improvements to Builder's style scheme for C and C++ languages.
 • "Jump to definition" support for C and C++ languages.
   Ctrl+] or gd in vim mode, <alt>period in emacs mode.
 • A new project selection and creation dialog on startup.
 • Git clone support from new project dialog.
 • "Find other file" similar to emacs to switch between source and header
   files in C and C++.
 • Improvements to scroll-offset which allows you to keep a given number
   of lines above and below the cursor. (Carlos Soriano, Christian Hergert)
 • Respect Gtk's "sort-directories-first" GSetting. (Garrett Regier)
 • Improvements to VIM mode including support for :bnext, :bprevious,
   :buffers and :ls (Alexandre Franke, Sebastien Lafargue)
 • Split support for HTML view (Sebastien Lafargue)
 • Build fixes for FreeBSD (Ting-Wei Lan)
 • Build fixes for OpenBSD (Antoine Jacoutot)
 • Support for editing "application/x-php" files.
 • Support extraction of CFLAGS from out-of-tree, non-recursive automake.
   (Christian Hergert, Giovanni Campagna)
 • A new symbolic icon (Jakub Steiner)
 • Improvements to handling of drafts (Paolo Borelli)
 • Improvements to autotools builders (Paolo Borelli)
 • Many translation updates including Czech, Polish, and Hebrew.
   (Marek Černocký, Piotr Drąg, and Yosef Or Boczko)

I'd like to thank everyone that filed bugs, submitted patches, translated,
tested, or plans to test Builder.

Together, great things are possible.


==============
Version 3.16.0
==============

It is my distinct pleasure to announce the first preview release of
GNOME Builder!

GNOME Builder is a new development environment being developed in
conjunction with the GNOME desktop. While Builder is an alpha product,
it is under heavy development. We look forward to early testers and
encourage everyone to try things out and file bugs and feature requests.

I'd like to thank the Gedit and GtkSourceView team for all of their hard
work integrating features from Builder upstream as well as adding
features we needed. Additionally the GLib and Gtk+ teams were incredibly
helpful to keep us moving.

Builder is built in conjunction with LibIDE. This new shared library
provides the necessary abstractions to build a modern IDE. It includes
auto-completion, auto-indenters, buffer management, a source editor,
abstractions for build systems, version control, file settings,
translation units, diagnostics, symbols, search engines, snippets, local
and external devices, documentation, animations, and more.

Some highlights of this release are:

 · A beautiful new GtkSourceView theme influenced by design grid paper.
 · Integrated source editor based on GtkSourceView.
 · Live diagnostics as you type for C, C++ via Clang.
 · Live diagnostics as you type for Python, Ruby, CSS, JavaScript, JSON,
   Vala, Go, and others via gnome-code-assistance.
 · Highlighting of added/changed lines within the source editor.
 · Robust Vim and Emacs emulation.
 · Multiple views into single file. Both horizontal and vertical splits
   are supported.
 · Navigation history to jump back and forward within modified files.
 · Robust snippet engine including support for GLib 2.44 style GObjects.
 · Quick search to locate files within your project as well as
   documentation in devhelp.
 · Smart backspace to simplify using spaces instead of tabs.
 · A command bar to execute internal GActions and Vim style commands
   with autocompletion.
 · An implementation of Vim's scrolloffset.
 · Restoration of insertion cursor when reloading a file.
 · Autocompletion based on current words in loaded buffers.
 · Experimental support for autocompletion based on clang.
 · Support for vim, emacs, and kate style modelines.
 · Editorconfig support.
 · Experimental read-only support for autoconf/automake based build
   systems.
 · Robust auto-indenters for GNU C89, Python, and XML.
 · Experimental project tree (available via F9).
 · Experimental support for building automake based projects.
 · Keybinding replay for command repeat in Vim emulation.
 · Autosaving of modified buffers, never lose a change.
 · Scripting via Python (CPython) or JavaScript (Gjs) and GObject
   Introspection.
 · Dynamic power management when running on laptop battery.
 · HTML and Markdown live preview.
 · Autocompletion of g_date_time_format() format parameters.
 · Type ahead search with rubberbanding.

We wont be slowing down any time soon. Thanks to everyone for your
support, I cannot wait for what is ahead.

-- Christian Hergert


==============
Version 3.15.4
==============

This is the first preview release of Builder as we continue our journey to
GNOME 3.16!

Being that this is such an early release, we'd really appreciate it if you
took the time to file bugs as you find them.

You can report bugs using bugzilla at the following URL:

  https://bugzilla.gnome.org/enter_bug.cgi?product=gnome-builder

