I would also recommend not cluttering the changelog with details of internal changes that users of Mir won't ever need to understand. e.g. All but one of these are meaningless to the public Mir SDK so should not be mentioned;
396 + - config, frontend: remove force_threads_to_unblock_callback()
397 + - Protect input region member of surface data, hold mutex to access
398 + hidden member.
399 + - config: ConfigurationOptions::default_ipc_threads can be a constant.
400 + - debian: Provide platform packages managed with dpkg alternatives.
401 + - Add the ability to load device traces, both udev and ioctls, in the
402 + UdevEnvironment test helper.
403 + - test_client_input.cpp: Remove unused global "mir_test_socket".
404 + - Sundry improvements to mir::udev.
That's not all. I just picked it as an example. Only line 400 would qualify as meaningful to anyone else, so release notable.
The diff to tagged release 0.1.6 is good. Only changelog differs.
Only mentions of last minute bugs are missing from changelog:
bug 1285955
bug 1207312
I would also recommend not cluttering the changelog with details of internal changes that users of Mir won't ever need to understand. e.g. All but one of these are meaningless to the public Mir SDK so should not be mentioned;
396 + - config, frontend: remove force_threads_ to_unblock_ callback( ) tions:: default_ ipc_threads can be a constant. input.cpp: Remove unused global "mir_test_socket".
397 + - Protect input region member of surface data, hold mutex to access
398 + hidden member.
399 + - config: ConfigurationOp
400 + - debian: Provide platform packages managed with dpkg alternatives.
401 + - Add the ability to load device traces, both udev and ioctls, in the
402 + UdevEnvironment test helper.
403 + - test_client_
404 + - Sundry improvements to mir::udev.
That's not all. I just picked it as an example. Only line 400 would qualify as meaningful to anyone else, so release notable.