New features (in development)

Compiler check functions prefix kwargs accepts arrays

The prefix kwarg that most compiler check functions support now accepts an array in addition to a string. The elements of the array will be concatenated separated by a newline.

This makes it more readable to write checks that need multiple headers to be included:

cc.check_header('GL/wglew.h', prefix : ['#include <windows.h>', '#include <GL/glew.h>'])

instead of

cc.check_header('GL/wglew.h', prefix : '#include <windows.h>\n#include <GL/glew.h>'])

Flags removed from cpp/objcpp warning level 1

-Wnon-virtual-dtor is no longer implied by meson setup -Dwarning_level=1.

String arguments to the rust.bindgen include_directories argument

Most other cases of include_directories accept strings as well as IncludeDirectory objects, so lets do that here too for consistancy.

The Rust module is stable

Mesa is using the rust module in production, so it's time to mark it as stable.

in operator for strings

in and not in operators now works on strings, in addition to arrays and dictionaries.

fs = import('fs')
if 'something' in fs.read('somefile')
  # True
endif

warning-level=everything option

The new everything value for the built-in warning_level enables roughly all applicable compiler warnings. For clang and MSVC, this simply enables -Weverything or /Wall, respectively. For GCC, meson enables warnings approximately equivalent to -Weverything from clang.

The results of the search are