mir 0.17.1+16.04.20151105.1-0ubuntu1 source package in Ubuntu
Changelog
mir (0.17.1+16.04.20151105.1-0ubuntu1) xenial; urgency=medium [ Alberto Aguirre ] * New upstream release 0.17.1 (https://launchpad.net/mir/+milestone/0.17.1) - No ABI changes. Bug fix release only. - Bugs fixed: . compositing never stops when external monitor is connected (LP: #1499039) . half screen on external monitor (LP: #1511538) . Nested servers don't apply their display configuration at startup (LP: #1492269) . libmircookie1 package does not list libnettle as dependency (LP: #1513225) . unity-system-compositor crash, no interaction on windowed mode (LP: #1511095) . mir_connection_get_egl_pixel_format() crashes (LP: #1510218) . [regression] mir-client-platform-mesa-dev pkg-config file dropped (LP: #1509005) [ CI Train Bot ] * New rebuild forced. mir (0.17.0+15.10.20151008.2-0ubuntu1) wily; urgency=medium [ Alexandros Frantzis ] * New upstream release 0.17.0 (https://launchpad.net/mir/+milestone/0.17.0) - ABI summary: Only servers and graphics drivers need rebuilding; . Mirclient ABI unchanged at 9 . Mirserver ABI bumped to 35 . Mircommon ABI unchanged at 5 . Mirplatform ABI bumped to 11 . Mirprotobuf ABI bumped to 3 . Mirplatformgraphics ABI bumped to 6 . Mirclientplatform ABI unchanged at 3 - Enhancements: . Introduce libmircookie, a simple mechanism for a group of cooperating processes to hand out and verify difficult-to-forge timestamps to untrusted 3rd parties. . More refactorings to support renderers other than GL. . Add MirBlob to the client API - a tool for serializing and deserializing data. . Introduce a libinput based input platform, not yet used by default. . Provide a mechanism for the shell to send events on surface construction. . Provide mir::shell::DisplayConfigurationController allowing shells to correctly change the display configuration, notifying clients as appropriate. . New DSO versioning guide. . Send events pertaining to the output a surface is currently on (dpi, form factor, scale) to clients. - Bug fixes: . [enhancement] XMir specific documentation should live in its own subsection (LP: #1200114) . Nested servers need cursor support (LP: #1289072) . Mir cursor is missing/invisible until the client sets it multiple times (LP: #1308133) . [regression] Fullscreen software surfaces (like Xmir -sw) can crash the Mir server (LP: #1493721) . [usc] Mir gives up and shuts down due to input with multimonitor qtmir (std::exception::what: Failure sending input event) (LP: #1496069) . Mouse cursor disappears upon entering the surface area of a nested client (LP: #1496849) . [android] input is not dispatched when attaching an external monitor (LP: #1498045) . [android] input coordinates are scaled incorrectly when an external display is connected (LP: #1498540) . [android] std::exception::what: error during hwc set() when unplugging external monitor (LP: #1498550) . tests do not compile without precompiled headers (LP: #1498829) . [android] std::exception::what: Failed to monitor fd: Operation not permitted when unplugging external display in a nested configuration (LP: #1499042) . Mir suddenly no longer builds since 'mesa (11.0.0-1ubuntu1) wily': /usr/include/EGL/eglplatform.h:100:35: fatal error: android/native_window.h: No such file or directory (LP: #1499134) . [android] various crashes when unplugging external display on a nested configuration (LP: #1501927) . Cursor becomes visible by itself when an external monitor is connected (LP: #1502200) . mesa FTBFS due to missing Requires in mirclient (LP: #1503450) [ CI Train Bot ] * New rebuild forced. mir (0.16.1+15.10.20150930.1-0ubuntu1) wily; urgency=medium [ Daniel van Vugt ] * New upstream release 0.16.1 (https://launchpad.net/mir/+milestone/0.16.1) - No ABI changes. Bug fix release only. - Bugs fixed: . Mir suddenly no longer builds since 'mesa (11.0.0-1ubuntu1) wily': /usr/include/EGL/eglplatform.h:100:35: fatal error: android/native_window.h: No such file or directory (LP: #1499134) [ CI Train Bot ] * New rebuild forced. mir (0.16.0+15.10.20150921.1-0ubuntu1) wily; urgency=medium [ Daniel van Vugt ] * New upstream release 0.16.0 (https://launchpad.net/mir/+milestone/0.16.0) - ABI summary: Only servers and graphics drivers need rebuilding; . Mirclient ABI unchanged at 9 . Mirserver ABI bumped to 34 . Mircommon ABI unchanged at 5 . Mirplatform ABI bumped to 10 . Mirprotobuf ABI bumped to 2 . Mirplatformgraphics ABI bumped to 5 . Mirclientplatform ABI unchanged at 3 - Enhancements: . Significantly shortened buffer holding time for system compositors should yield higher/smoother frame rates. . Progress on new buffer semantics work. . Mir-on-x platform refinements, including support for guest platform, key combinations, rotation, display window size. . Enhanced cross-compilation, including multi-distro, and multi-arch support. . Added message auth code to make_event functions. Older implementations are now marked as deprecated. . Added EventBuilder for input platforms to use to construct events. . Improved logging. . Added protobuf versioning support. . Support for the NATIVE_WINDOW_CONSUMER_USAGE_BITS query. . Added utilities to detect the capabilities of an input device. . Initial refactoring to support renderers other than GL. . Optimized ANR logic to decide less frequent wakeups. . Allow clients to set their surface event handler up front. . Added ability to provide for setting a scale on BufferStream. - Bug fixes: . [regression] ubuntu-emulator fails to start Mir demos (LP: #1486535) . Overlayed framedropping clients freeze on mako (LP: #1391261) . [regression] Screen flickering and error messages on Android overlay surfaces: <ERROR> MirBufferStream: Error processing incoming buffer error registering graphics buffer for client use (LP: #1441553) . [silo0] exception thrown in cursor management code around monitor removals/additions (LP: #1483779) . mirclient.pc lists protobuf in Requires.private (LP: #1483876) . Overlays don't rotate when mga::DisplayBuffer is rotated (LP: #1485070) . cross-compile-chroot.sh fails on wily since the archive transition to GCC 5 (LP: #1486823) . [ FAILED ] ExchangeBufferTest.server_can_send_buffer (tests/integration-tests/test_exchange_buffer.cpp:441: Failure) (LP: #1487967) . Client fails to work with multiple client platform versions installed (LP: #1488500) . CI test failure in ClientLatency.triple_buffered_client_uses_all_buffers (LP: #1491876) . Intermittent CI failure in DisplayConfigurationTest.changing_focus_from_client_with_config_to_client_without_config_configures_display (LP: #1494663) . acceptance test ClientLatency.double_buffered_client_uses_all_buffers does not measure latency accurately (reports low latency when we know it's higher) (LP: #1447947) . make ptest returns 0 when tests fail (LP: #1454250) . [regression] Mir is holding buffers much longer than it used to (LP: #1480164) . Acceptance test fails under debuild: ClientCredsTestFixture.session_authorizer_receives_pid_of_connecting_clients (LP: #1483097) . dpkg-shlibdeps: warning: debian/mir-platform-graphics-mesa-x4/usr/lib/x86_64-linux-gnu/mir/server-platform/server-mesa-x11.so.4 contains an unresolvable reference to symbol _ZN3mir6events10make_eventElNSt6chrono8durationIlSt5ratioILl1ELl1000000000EEEE17MirKeyboardActionjij: (LP: #1483469) . [regression] surface remains invisible when changing from state minimized/hidden to any other (LP: #1483909) . android external monitor doesn't respect overlay disable option (LP: #1484638) . [regression] Clients hang without explanation when connecting to older servers since r2730 (LP: #1486496) . [regression] Intermittent test failure BufferQueue/WithThreeOrMoreBuffers.queue_size_scales_with_client_performance (LP: #1487197) . client api minor version was not updated in mir 0.15 (LP: #1488542) . On Wily/mesa-kms starting a server with a "test client" crashes the server (LP: #1489806) . The MirDisplayConfiguration returned on the client can be incorrect (LP: #1491937) . The MirDisplayConfiguration returned on the client can be incorrect - part 2 (LP: #1493741) . sbuild cross compile broken (LP: #1493895) . Segmentation fault in MesaBufferIntegration.* (LP: #1495459) . lintian says: W: mirtest-dev: extended-description-line-too-long (LP: #1483470) . SYSYEM_SUPPORTS_O_TMPFILE - typo (LP: #1483797) . sbuild cross compile encounters difficulties with our python dependency (LP: #1494317) . touchpad produces mouse events with zeroed relative_x and relative_y axes (LP: #1496814) [ CI Train Bot ] * New rebuild forced. mir (0.15.1+15.10.20150903-0ubuntu1) wily; urgency=medium [ Kevin Gunn ] * released-rebuild-for-vivid-overlay mir (0.15.1+15.10.20150825-0ubuntu1) wily; urgency=medium [ Alberto Aguirre ] * New upstream release 0.15.1 (https://launchpad.net/mir/+milestone/0.15.1) - Bug fixes: . Client API minor version was not updated (LP: #1488542) . [regression] ubuntu-emulator fails to start Mir demos (LP: #1486535) [ CI Train Bot ] * No-change rebuild. mir (0.15.0+15.10.20150818-0ubuntu1) wily; urgency=medium [ Daniel van Vugt ] * New upstream release 0.15.0 (https://launchpad.net/mir/+milestone/0.15.0) - ABI summary: Only servers and graphics drivers need rebuilding; . Mirclient ABI unchanged at 9 . Mirserver ABI bumped to 33 . Mircommon ABI unchanged at 5 . Mirplatform ABI bumped to 9 - Enhancements: . Add support for Mir-on-X11. . Latency reduction optimizations (around ~15ms reduction in total): Reduced input event resampling latency by 5ms. Reduced output latency (in system compositors) by around 10ms with the introduction of "predictive bypass". And we're not finished; future Mir releases should reduce latency further. . Introduced a python3-based Mir performance framework. . Lots of preparation for an architectural overhaul of buffer swapping, required in the least to support future optimizations like nested bypass. . Added a new cursor: crosshair . Added support for 15/16-bit client pixel formats ("high colour"). . Added a new client function to make picking the right pixel format for a given EGLConfig super simple: mir_connection_get_egl_pixel_format . Added application-not-responding detection . Added client API for specifying input region shape. . Fixed the remaining threading flaws identified by ThreadSanitizer and turned it on permanently for all continuous integration in future. . Added support for relative pointer motion events (e.g. for gaming). - Bug fixes: . Fix focus issues breaking autopilot tests entering text (LP: #1468029) . Fix mir tests failure on armhf with GCC5 (LP: #1478213) . mir_buffer_stream_swap_buffers_sync can hang constraints (LP: #1479899) . Loading libmirclient.so twice leads to a segfault in libmirprotobuf.so (LP: #1391976) . Visible corruption in SDL apps (LP: #1460149) . MultiThreadedCompositor::destroy_compositing_threads hangs/deadlocks on shutdown or display reconfiguration (LP: #1471909) . ctest/"make test" reports 100% tests pass even when some fail. (LP: #1472911) . Mir server crashed - GLib-CRITICAL **: g_source_get_context: assertion 'source->context != NULL || !SOURCE_DESTROYED (source)' failed (LP: #1473869) . USC crash on multimonitor unplug [std::exception::what: error during hwc prepare()] (LP: #1474891) . [regression] Input focus delay after switching app back into focus (LP: #1480654) . GLibMainLoopTest.propagates_exception_from_server_action fails with GCC 5 in armhf (LP: #1482274) . [enhancement] Mir lacks relative mouse support (LP: #1276322) . ShmBuffer ignores pixel_format (LP: #1424909) . Fullscreen bypassed clients stutter with double buffers when other clients are running (LP: #1447896) . [regression] Demo servers crash on start-up if MIR_ENABLE_TESTS=OFF (LP: #1439078) . [regression] The software cursor has a rectangular shadow around it in mir_proving_server (LP: #1447911) . TestClientCursorAPI.cursor_passed_through_nested_server fails intermittently (LP: #1462088) . [enhancement] Add support for high colour (15/16-bit colour) clients (LP: #1469673) . android-input logs are not flushed as soon as they happen (LP #1470204) . Android: rotated display config not applied when an external monitor is hot-plugged (LP: #1471858) . [regression] Clients are blocked in swap buffers when the screen turns off (LP: #1475120) . [regression] Some Mir EGL demos don't get bypassed any more in fullscreen (LP: #1480755) . [regression] Multi-finger gestures are often not detected as finished (LP: #1481570) . Connection error when no client-platform (drivers) installed is confusing (LP: #1473268) . Compositor report shows overlays ("bypass") is never used by mir_proving_server on Android, even for fullscreen surfaces (LP: #1474231) mir (0.14.0+15.10.20150723.1-0ubuntu1) wily; urgency=medium [ Andreas Pokorny ] * Fix missing ABI renaming in Mirplatform * Bump Mirserver platform graphics to 3 * Fix mirprotobuf ABI break * Fix g++-5.0 compilation (LP: #1475994) [ CI Train Bot ] * New rebuild forced. mir (0.14.0+15.10.20150715-0ubuntu1) wily; urgency=medium [ Andreas Pokorny ] * New upstream release 0.14.0 (https://launchpad.net/mir/+milestone/0.14.0) - ABI summary: All clients and all servers need building; . Mirclient ABI bumped to 9 . Mirserver ABI bumped to 32 . Mircommon ABI bumped to 5 . Mirplatform ABI bumped to 8 - Enhancements: . mir_demo_server: tweaks, features and improvements . More MirEvent-2.0 related changes and unifications . New SurfaceInputDispatcher to replace the android InputDispatcher . New Threaded dispatcher for Dispatchable added . Rework of the relationship of surfaces and buffer streams to allow attaching multiple buffer streams to a surface. . Preparation work for new buffer semantics . fd leaks in tests eliminated and leak check activated for unit and integration tests . Further TSAN reported issues removed . Preparation work for mir-on-x: splitting of mesa platform in common and KMS parts . Further rework of input stack focused on test infrastructure . Persistent id request for surfaces added . Integration-tests cleaning: switch tests to in-process server . A first end-to-end input test added in privileged-tests . "mesa" platform renamed to "mesa-kms" (LP: #1381330) . [enhancement] Mir servers should allow client connections only after server start-up has finished (LP: #1451844) . build-dependency on g++-4.9 dropped (LP: #1452320) - Bug fixes: . Crash because uncaught exception in mir::events::add_touch (LP: #1437357) . [vegetahd] android buffer allocator does consider hwc alignment constraints (LP: #1461314) . [regression] Touch input does not work at all any more (LP: #1464174) . Mir emits a mir_motion_action_hover_exit event before of a mir_motion_action_pointer_down (LP: #1419048) . [testsfail] NestedInput.nested_event_filter_receives_keyboard_from_host failure in CI (LP: #1462033) . [testsfail] InputEvents.reach_nested_client in CI (LP: #1463315) . [regression] titlebar in "canonical" example WM + KeyRepeatDispatcher causes deadlock (LP: #1464690) . CI failure in TestClientInput.clients_receive_many_button_events_inside_window (LP: #1465231) . mir-client-platform-mesa-dev package dependency is incorrect (LP: #1465642) . Repeat input events keep being emitted even when user switches to different VT (LP: #1465669) . libmirprotobuf's ABI can be broken when modifying protobuf message definitions (LP: #1465883) . Spurious Failure in ClientLibrary.highly_threaded_client (LP: #1466492) . failure in CI in BufferStreamArrangement.arrangements_are_applied (LP: #1466594) . [arale] software buffers have flickering line artefacts (LP: #1418035) . can't load app purchase UI without a U1 account (LP: #1450377) . [arale] Software cursor appears slightly corrupt on arale (black spots in place of white) (LP: #1451309) . [regression] Dragging windows by the titlebar is incredibly slow and laggy (LP: #1454128) . [regression] Opacity controls (Alt+mousewheel) don't work any more (LP: #1454518) . [regression] No API for creating freestyle surfaces (LP: #1457987) . [vivid-overlay] input-stub.so fails to load on i386 (LP: #1458689) . client API version has wrong version (LP: #1461312) . abi-dump-base make target is broken (LP: #1461697) . Stopping input in a nested server stops VT switching (LP: #1465585) . Pointer events are not mapped to correct output by nested Mir (LP: #1465692) . Loading libmirclient.so twice leads to a segfault in libmirprotobuf.so (LP: #1391976) mir (0.13.3+15.10.20150617-0ubuntu1) wily; urgency=medium [ Alberto Aguirre ] * New upstream release 0.13.3 (https://launchpad.net/mir/+milestone/0.13.3) - Bug fixes: . mir-client-platform-mesa-dev package dep is incorrect (LP: #1465642) . Avoid allocating mir protobuf message objects on stack (LP: #1465883) mir (0.13.2+15.10.20150605-0ubuntu1) wily; urgency=medium [ Alberto Aguirre ] * New upstream release 0.13.2 (https://launchpad.net/mir/+milestone/0.13.2) - Bug fixes: . Wrong client API version (LP: #1461312) . Add quirk to force buffer width alignment on some devices (LP: #1461314) [ CI Train Bot ] * New rebuild forced. mir (0.13.1+15.10.20150520.1-0ubuntu1) wily; urgency=medium * Bump upstream version number to add test binaries to orig tarball. * Do minimal porting required to prepare for building on ppc/ppc64el. * Disable testsuite on powerpc until big-endian porting is complete. mir (0.13.1+15.04.20150520-0ubuntu1) vivid; urgency=medium [ Cemil Azizoglu ] * New upstream release 0.13.1 (https://launchpad.net/mir/+milestone/0.13.1) - ABI summary: No ABI break. Servers and clients do not need rebuilding. . Mirclient ABI unchanged at 8 . Mircommon ABI unchanged at 4 . Mirplatform ABI unchanged at 7 . Mirserver ABI unchanged at 31 - Bug fixes: . Can't load app purchase UI without a U1 account (LP: #1450377) . Crash because uncaught exception in mir::events::add_touch (LP: #1437357) mir (0.13.0+15.04.20150512-0ubuntu1) vivid; urgency=medium [ Alan Griffiths ] * New upstream release 0.13.0 (https://launchpad.net/mir/+milestone/0.13.0) - Very large release as the previous 0.12 series contained only minimal bug fixes... - Enhancements: . New demo clients for input testing: mir_demo_client_eglsquare and mir_demo_client_target. . Demo clients: mir_demo_client_tooltip, mir_demo_client_animated_cursor . mir_demo_client_fingerpaint now processes input asynchronously to drawing for a more fluid experience. . New, default window manager in mir_demo_server . mir_demo_server option (--arw-file) to make socket filename globally rw . mir_demo_server demonstrates use of config file . Added support to mir_proving_server for rendering window title strings . Demo servers (mir_proving_server, mir_demo_server): Introduce support for Alt+` switching of windows in multi-window clients. . Added client API support for constructing input method surfaces. . Introduce "buffer streams" properly. This is a generalization of the most basic functionality of a surface. . Log useful OpenGL information on server start-up. . Add support for HWC 1.4 . Add display and fencing information to the layers in the HWC report . Add a report_vsync method to display report . Support for second display when running on "android" driver stack . Server buffering strategy is configurable by --nbuffers=N (or environment MIR_SERVER_NBUFFERS=N) . Explicit support for configuring window management in libmirserver. . Remove surface configurator & placement strategy configuration points . Added experimental environment variable MIR_CLIENT_INPUT_RATE=Hz for tweaking the input resampling rate a client experiences (0 = off). Also raised the default input rate from 55Hz to 59Hz for visibly smoother touch scrolling. . Added keymap setting support for surfaces. . Improved automated testing of latency. . Replaced and rewrote automated ABI checking. . New client APIs for basic window management; setting window titles, self-resizing, size constraints and changing type. . Introduced dynamically loadable input platforms. . Work towards libinput integration . Added proof-of-concept support for Snappy packaging for Ubuntu Core. . Drop support for C++11. Now C++14 is required to build Mir. . Deprecated MirEventDelegate. Now you just pass the two fields as parameters directly to mir_surface_set_event_handler(). . Legacy functions for creating surfaces marked deprecated . Minor redesign of the new input event API introduced in 0.10/11, so that identifiers are shorter and less convoluted. . Drop libmirclient dependency on client-platform drivers . Drop libmirserver dependency on client-platform drivers . Use the ABI version in platform library names and packages . Rework to reduce "abstraction leaks" in the graphics platform . Add thread sanitizer build option . Update KVM Instructions . Update CMAKE to use CMAKE_*_OUTPUT_DIRECTORY - ABI summary: Servers need rebuilding, but clients do not; . Mirclient ABI unchanged at 8 . Mircommon ABI bumped to 4 . Mirplatform ABI bumped to 7 . Mirserver ABI bumped to 31 - Bug fixes: . vivid fails to build Mir as of 2015-03-22: error: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Werror=cpp] (LP: #1435127) . [regression] Mir servers freeze on startup (mouse and keyboard not responsive) (LP: #1444061) . [enhancement] Add support for video/HDMI output on Android (LP: #1296538) . [enhancement] Set custom cursors (LP: #1380463) . [regression] mali, powervr locks up with around the introduction or removal of a third overlay (LP: #1413211) . [regression] Client functions residing in libmircommon (LP: #1415321) . USC - mouse cursor on AMD graphics is drawing incorrectly (LP: #1417581) . [testsfail] SurfaceSwapBuffers.does_not_block_when_surface_is_not_composited fails in CI (LP: #1418002) . Compositing is triggered continously and needlessly when there are occluded surfaces with available buffers (LP: #1418081) . mir_demo_server doesn't emit hover_exit events (LP: #1418569) . SessionMediator locks mutexes in one thread and unlocks them in another (LP: #1427976) . ProtobufResponder::send_response_result race (LP: #1428402) . Some protobuf Closure objects can access dead objects (LP: #1433330) . valgrind on armhf fails with with many errors (LP: #1435186) . [regression] QtMir and USC can't build with lp:mir - fatal error: mir/events/event_builders.h (LP: #1436212) . [regression] mir_acceptance_tests.TestClientInput is hanging (LP: #1436644) . [regression] libmirclient crashes when calling mir_surface_set_event_handler() twice [InputTransport.cpp:110: android::InputChannel::InputChannel(const String8&, int): Assertion `false && "\"result != 0\""' failed.] (LP: #1438160) . [regression] Surfaces can't overlap screen edges any more (LP: #1438660) . losing touches in arale when home button is pressed (LP: #1439285) . [krillin] mirscreencast only creates a still picture, not a playable movie (LP: #1439549) . [regression] Unity8 doesn't detect input sent from USC with latest mir development code (LP: #1439719) . Intermittent CI failures in tests expecting created surfaces to have specific size (LP: #1440088) . [regression] [testsfail] failure in CI on SimpleDispatchThreadTest.keeps_dispatching_after_signal_interruption (LP: #1441620) . [android] Screencasting causes other clients to stop rendering (LP: #1441759) . Intermittent CI failures in MultiThreadedCompositor.does_not_block_in_start_when_compositor_thread_fails (LP: #1442020) . Flickering showing stale buffers on Krillin (LP: #1444047) . Acceptance tests link with static versions of client library and server components (LP: #1445473) . [regression] mir_acceptance_tests: TestClientCursorAPI.cursor_passed_through_nested_server is crashing most of the time (LP: #1447430) . [regression] Clients log verbose info on startup: "Loader: Loading module: ..." (LP: #1414883) . [enhancement] Missing client function for surface resizing (LP: #1420573) . [regression] [multimonitor] Clients (sometimes) run at double frame rate if overlapping two monitors. (LP: #1420678) . [enhancement] Need a client API to specify resize limitations (LP: #1421591) . [enhancement] Add surface morph client API (LP: #1422522) . The process for updating packaging for ABI changes is cumbersome and error-prone (LP: #1427207) . [regression] mir_acceptance_tests.NestedServer failure in clang CI (LP: #1430000) . DisplayConfigurationOutput.physical_size_mm is undefined/zero (LP: #1430315) . Dragging objects in a nested server or a client stutters slightly (LP: #1436192) . [regression] mir_proving_server: Super+N/Super+C does nothing now (LP: #1437166) . [regression] "Playground" event filters get registered twice (LP: #1437174) . [regression] <WARNING> Platform Probing: Failed to probe module. (LP: #1438536) . [regression] Move/resizing in mir_proving_server freezes if the cursor is outside the window (LP: #1438621) . [testsfail] CI failure in ClientLibraryErrorsDeathTest. creating_surface_synchronosly_on_malconstructed_connection_is_fatal (LP: #1438702) . Exceptions thrown due to EGL failures don't include EGL error codes (LP: #1444938) . Can't switch between sibling windows of multi-window apps (LP: #1445538) . [regression] specifying -DMIR_PLATFORM to one platform causes cmake failure (LP: #1447729) . mir_demo_server(_minimal): Can't move surfaces to overlap screen edges (LP: #1447882) . [regression] mir_demo_standalone_render_surfaces fails to start on krillin (LP: #1449198) . [regression] MIR_CLIENT_PERF_REPORT=log now shows "0" for the surface name (LP: #1415305) . Nested display leaks its EGLContext (LP: #1418910) . SimpleDispatchThreadTest.doesnt_call_dispatch_after_first_false_return fails when run repeatedly (LP: #1440005) . Surfaces are not properly released in CustomWindowManagement. state_change_requests_are_associated_with_correct_surface (LP: #1445418) . android reports that the gpu can only support 1 simultaneous output (LP: #1446304) . Support dynamic mouse cursor icons (LP: #1447839) mir (0.12.1+15.04.20150324-0ubuntu1) vivid; urgency=medium [ Alexandros Frantzis ] * New upstream release 0.12.1 (https://launchpad.net/mir/+milestone/0.12.1) - Bug fixes: . [regression] mali, powervr locks up with around the introduction or removal of a third overlay (LP: #1413211) . USC - mouse cursor on AMD graphics is drawing incorrectly (LP: #1417581) . mir_demo_server doesn't emit hover_exit events (LP: #1418569) . SessionMediator locks mutexes in one thread and unlocks them in another (LP: #1427976) . ProtobufResponder::send_response_result race (LP: #1428402) . Some protobuf Closure objects can access dead objects (LP: #1433330) . DisplayConfigurationOutput.physical_size_mm is undefined/zero (LP: #1430315) . vivid fails to build Mir as of 2015-03-22: error: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Werror=cpp] (LP: #1435127) . valgrind on armhf fails with with many errors (LP: #1435186) mir (0.12.0+15.04.20150228-0ubuntu1) vivid; urgency=medium [ Alberto Aguirre ] * New upstream release 0.12.0 (https://launchpad.net/mir/+milestone/0.12.0) - Packaging changes: . Client platform packages now include the Mir client platform ABI number. Thusly, mir-client-platform-(mesa|android) is replaced by mir-client-platform-(mesa|android)2 . Server graphics platform packages now include the Mir graphics platform ABI number. Thusly, mir-platform-graphics-(mesa|android) is replaced by mir-platform-graphics-(mesa|android)1 - ABI summary: Servers need rebuilding, but clients do not; . Mirclient ABI unchanged at 8 . Mircommon ABI unchanged at 3 . Mirplatform ABI unchanged at 6 . Mirserver ABI bumped to 30 - Bug fixes: . [regression] Platform libraries and packages are not versioned thus are not installable in parallel (LP: #1423591) . [regression] Deadlock in TimeoutFrameDroppingPolicy logic (LP: #1421255) [ CI Train Bot ] * New rebuild forced. mir (0.11.0+15.04.20150209.1-0ubuntu1) vivid; urgency=medium [ Daniel van Vugt ] * New upstream release 0.11.0 (https://launchpad.net/mir/+milestone/0.11.0) - Packaging changes: . Due to changes in the Mir driver model the client platforms are no longer versioned by soname. Thusly libmirplatform5driver-(mesa|android) is replaced by mir-client-platform-(mesa-android). A new package mir-client-platform-mesa-dev is introduced containing headers previously in mirplatform-dev. - Enhancements: . Lots more major plumbing in the Android code, on the path to supporting external displays. . Add support for clang 3.6. . Major redesign of server classes in mir::shell,scene and friends (still in progress). . Added client API for creating dialogs and tooltips. . Added new surface states: mir_surface_state_hidden and mir_surface_state_horizmaximized. . Performance: Use optimally efficient fragment shading when possible. . Performance: (Desktop) Composite using double buffering instead of triple to reduce visible lag. . mir_proving_server: Can now resize windows from any edge or corner using the existing Alt+middlebuttondrag. . mir_proving_server: Added some demo custom shaders (negative and high contrast modes: Super+N/C). . mir_proving_server: Can now close clients politely via Alt+F4. . Added MirPointerInputEvent (part of the new input API, the old MirMotionEvent is still supported also for now). - ABI summary: Servers need rebuilding, but clients do not; . Mirclient ABI unchanged at 8 . Mircommon ABI unchanged at 3 . Mirplatform ABI bumped to 6 . Mirserver ABI bumped to 29 - Bug fixes: . [regression] mir_demo_server exits immediately with boost bad_any_cast exception (LP: #1414630) . need way to position menus and tooltips (relative positioning to parent) (LP: #1324101) . GLibMainLoopTest failure seen in CI (LP: #1413748) . Clang builds fail in CI (LP: #1416317) . segfault in mir::compositor::GLProgramFamily::Shader::init() (LP: #1416482) . GLRenderer: The default fragment shader is sub-optimal for alpha=1.0 (LP: #1350674) . mesa::DisplayBuffer::post_update is triple buffered - more laggy than it needs to be (LP: #1350725) . Cannot connect to nested server when started from a differen vt (LP: #1379266) . [testfail] AsioMainLoopAlarmTest fails in CI (LP: #1392256) . Compositor report inconsistently reports frame time during bypass, and render time otherwise (LP: #1408906) . [regression] mir_demo_client_fingerpaint doesn't paint anything any more (with the mouse) (LP: #1413139) . Hardware cursor is always slightly ahead of the composited image (LP: #1274408) . integration tests are outputting (too many) DisplayServer log messages (LP: #1408231) . [regression] deploy-and-test.sh doesn't work any more (unless you have umockdev installed already) (LP: #1413479) . Color Inverse on display. Toggle Negative Image (LP: #1400580) . mir-ubuntu-vivid-armhf-ci fails consistently (LP: #1407863) . Double-buffered surfaces may lag or freeze if event driven and not constantly redrawing (LP: #1395581) . Pointer motion and crossing events are missing (LP: #1417650) mir (0.10.0+15.04.20150107.2-0ubuntu1) vivid; urgency=medium [ Daniel van Vugt ] * New upstream release 0.10.0 (https://launchpad.net/mir/+milestone/0.10.0) - Enhancements: . Added support for Android HWC 1.3 devices. . Plumbing/preparation to support external displays on Android devices. . Reduced build dependencies. . Client API: Added version macros. . Began work on automatic driver probing, to intelligently choose the best driver for you. . Demo shell (mir_proving_server): Added desktop zoom feature using Super + mouse wheel. . Demo renamed: mir_demo_server_shell -> mir_proving_server . Other demo servers merged into -> mir_demo_server . Wider support for display buffer pixel formats in the mesa driver, for wider hardware support. . Performance: On mesa/desktop at least; only hold compositor buffers for the duration of the render, instead of the duration of the frame. Following this change the compositor report can now finally report render time instead of frame time. . Mir now starts reliably when a TV is connected by HDMI, and up to 4K resolution (2160p) is known to work. . Plenty more enhancements logged in the bugs list below. - ABI summary: Servers need rebuilding, but clients do not; . Mirclient ABI unchanged at 8 . Mircommon ABI unchanged at 3 . Mirplatform ABI bumped to 5 . Mirserver ABI bumped to 28 - Bug fixes: . [regression] Mir servers (since 0.9) randomly crash in malloc due to heap corruption (LP: #1401488) . USC - mouse cursor on AMD graphics is drawing incorrectly (LP: #1391975) . Mir fails to start when a TV is connected by HDMI [std::exception::what: Invalid or inconsistent display configuration] (LP: #1395405) . Input/event driven clients may freeze indefinitely (LP: #1396006) . Mir server crashes with "std::exception::what: Failed to get front buffer object" when trying to fullscreen a surface (LP: #1398296) . Switching windows with a Trusted Prompt Session active loses the trusted prompt session (LP: #1355173) . CI test failure in multiple tests (LP: #1401364) . dh_install: usr/bin/mir_demo_server exists in debian/tmp but is not installed to anywhere (LP: #1401365) . [regression] demo-shell: Instead of moving surfaces they now fly off-screen (LP: #1403702) . [regression] Binaries are no longer runnable on other machines (or in other directories) (LP: #1406073) . [i865] unity-system-compositor fails to start: Failed to choose ARGB EGL config (LP: #1212753) . Mir's compositor holds buffers (blocking clients) for the duration of the frame, even when not necessary. (LP: #1264934) . Screen goes blank (black) briefly during display config changes which don't affect the display mode (LP: #1274359) . [enhancement] There should be a quit signal sent to sessions instead of killing them directly (LP: #1304257) . MirMotionEvent.action needs stronger typing (to MirMotionAction etc) (LP: #1311699) . CompositorReport as used by DefaultDisplayBufferCompositor can't measure render time (LP: #1350716) . Full screen (bypassed) surfaces (e.g. GLMark2Test) are missing frames and appear to freeze or judder with swap interval 0 (LP: #1379685) . Trusted prompts need to be part of the lifecycle (LP: #1384950) . [testfail] BasicThreadPool.recycles_threads in CI (LP: #1391488) . acceptance_tests are too chatty (LP: #1394221) . mir_connection_create_surface callback is sometimes called twice on error (LP: #1394873) . File descriptor leaks in tests using UsingStubClientPlatform (LP: #1395762) . DisplayLayout resizes a surface to 1x1 if you ask it to fullscreen a surface that's partially offscreen (LP: #1398294) . Surfaces can consume input events before they're visible. (LP: #1400218) . dpkg-shlibdeps: Lots of warnings about libmirplatformstub.so (LP: #1401373) . Leaks in death tests can cause subsequent tests in the same process to fail (LP: #1402160) . [regression] lintian: E: mir-demos: binary-or-shlib-defines-rpath ... (LP: #1406098) . [regression] Mir utils can't run from the build tree any more (LP: #1407557) . fd reception code is not exeception-safe when unexpected numbers of fds are received (LP: #1394362) . Mir reports vertical refresh rates slightly inaccurately (LP: #1407558) . [Enhancement] Add an API to lock surface orientation (LP: #1382209) . Bootloop with system language Turkish on the Nexus 4 (LP: #1398984) . Remove the implicit assumption that there every surface can be mapped to an input handle. (LP: #1216727) . When revealing hidden surfaces wait for them to become exposed before sending events which we expect them to receive (LP: #1407783) [ Ubuntu daily release ] * New rebuild forced mir (0.9.0+15.04.20141125-0ubuntu1) vivid; urgency=medium [ Alberto Aguirre ] * New upstream release 0.9.0 (https://launchpad.net/mir/+milestone/0.9.0) - Enhancements: . New simpler API to configure and run a mir server. . The event loop is now based on GLib's main loop library instead of Boost.Asio. . For Android platforms, the server now sends buffer fence fds to its clients instead of potentially stalling the compositor thread waiting for them to be signalled. . New client debug interface to translate from surface to screen coordinates. - ABI summary: Servers need rebuilding, but clients do not; . Mirclient ABI unchanged at 8 . Mircommon ABI bumped to 3 . Mirplatform ABI bumped to 4 . Mirserver ABI bumped to 27 - Bug fixes: . Add a debug interface to translate from surface to screen coordinates (LP: #1346633) . Ensure a buffer requested by a surface is not delivered after the surface is deleted (LP: #1376324) . Overlays are not displayed onscreen in some positions (LP: #1378326) . Server aborts when an exception is thrown from the main thread (LP: #1378740) . Fix race causing lost alarm notifications (LP: #1381925) . Avoid lifecycle notifications racing with connection release (LP: #1386646) . Improve error checking and reporting for the client library (LP: #1390388) . Mir demo-shell now detects power button using proper Linux scan codes (LP: #1303817) . A prompt session with an invalid application pid should be an error (LP: #1377968) . When XDG_RUNTIME_DIR is defined but pointing to a non-existing directory use "/tmp" (LP: #1304873) . [regression] demo-shell bypass is not used on fullscreen surfaces if there are windowed surfaces behind (LP: #1378706) . Mir upgrade through dist-upgrade installs incorrect platform (LP: #1378995) . Fix Mir progressbar example using internal glibc defines(LP: #239272) . Stop the default_lifecycle_event_handler raising SIGHUP while disconnecting (LP: #1386185) . [regression] Mir fails to build with MIR_ENABLE_TESTS=OFF (LP: #1388539) . [regression] mir_demo_server_basic does not start (LP: #1391923) [ Ubuntu daily release ] * New rebuild forced mir (0.8.0+14.10.20141010-0ubuntu2) vivid; urgency=medium * No change rebuild to get debug symbols on all architectures. mir (0.8.0+14.10.20141010-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * New upstream release 0.8.0 (https://launchpad.net/mir/+milestone/0.8.0) - Enhancements: . Less sensitivity to ABI breaks - many headers unused by external projects are now hidden and not installed by -dev packaes. If you require any headers that are missing, just ask. . Touchspots: --enable-touchspots to servers; visually shows touch locations (warning: This affects performance LP: #1373692). . Client performance reporting: Any Mir client can now get accurate performance information (frame rate, render time, buffer lag etc) logged to stdout. Just set env MIR_CLIENT_PERF_REPORT=log . Further improved touch responsiveness, with less lag and smoother scrolling (so long as you don't enable touchspots). . Slightly faster builds using precompiled headers. . Turn hardware overlays on by default. When in use, this halves the CPU usage of a Mir server. Already enabled in unity-system-compositor. . More scripting to detect ABI breaks. . Improved src/ tree consistency (renamed "src/shared" to "src/common"). . Improved fatal signal design: Changed from SIGTERM to SIGHUP delivered to clients on unexpected server disconnection. . Improved library/package design to allow concurrent installations of different Mir versions without conflicts. . Fd reception code is now common to client and server. - ABI summary: Servers need rebuilding, but clients do not; . Mirclient ABI unchanged at 8 . Mircommon ABI bumped to 2 . Mirplatform ABI bumped to 3 . Mirserver ABI bumped to 26 - API changes between Mir 0.7 and 0.8: . Lots of headers removed from the public SDK! We have only hidden headers not known to be used by any known projects. Please let us know if anything is missing - https://bugs.launchpad.net/mir/+filebug . graphics::Platform - interface changed significantly. . Lots of server API changes to support touchspots. . File descriptors now passed as type Fd instead of int32_t. - Bug fixes: . [regression] Mir deb packages with versioned names cannot be installed simultaneously any more (LP: #1293944) . A frozen client can hang the whole server (LP: #1350207) . QtMir FTBFS: fatal error: mir/input/input_channel.h: No such file or directory (LP: #1365934) . [regression] platform-api fails to build against Mir 0.8 (LP: #1368354) . Mir FTBFS with gcc 4.9.1-14 (utopic update): auto_unblock_thread.h:44:46: error: no matching function for call to ‘std::thread::thread(<brace-enclosed initializer list>)’ (LP: #1369389) . [regression] Compositing is jerky and stutters during touch events (LP: #1372850) . unit test fails: AndroidInputReceiverSetup.slow_raw_input_doesnt_cause_ frameskipping (LP: #1373826) . intermittent hang in TestClientInput (LP: #1338612) . TestClientInput.scene_obscure_motion_events_by_stacking fails intermittently (LP: #1361757) . [regression] First frame is composited as black (even though the client has provided a non-black frame) (LP: #1362444) . Some mali drivers crash after repeatedly creating/destroying the mir compositor threads (LP: #1362841) . [android] SIGTERM to server with connected client causes crash (LP: #1364637) . [regression] acceptance tests fails in ServerDisconnect.causes_client_to_terminate_by_default (LP: #1364772) . [regression] symbol lookup error: /usr/lib/arm-linux-gnueabihf/libmirserver.so.24: undefined symbol: _ZTIN7android7RefBaseE (libmirserver 0.6.1 doesn't work with libmircommon 0.7.0) (LP: #1364890) . [regression] Mir FTBFS with g++-4.8 [error: ISO C++ forbids casting between pointer-to-function and pointer-to-object] (LP: #1366134) . Intermittent CI failure in DemoPrivateProtobuf.client_calls_server (LP: #1367353) . Overly strict libmirplatform* dependencies are blocking CI (LP: #1370866) . [regression] mir demo servers segfault on shutdown (LP: #1371619) . Nested server crashes with SIGSEGV on shutdown in eglDestroyContext() (LP: #1372276) . [regression] Moving/resizing clients in a nested server is very jerky/stuttery (LP: #1372300) . [regression] Bypass/overlays are toggling constantly (LP: #1373689) . [regression] Mir server uses too much CPU during touch scrolling (LP: #1373809) . Intermittent test failures in TestClientCursorAPI.* (LP: #1342567) . clang emits lots of warnings about lttng headers (LP: #1348472) . [enhancement] Draw input event location (LP: #1323522) . demo shell: Keep colours consistent, regardless of the physical pixel format of your framebuffer (LP: #1375660) . tests: Fix SharedLibraryProber test runs on i386. (LP: #1375829) . Touchspots rendered as squares on some devices (LP: #1373698) . The headers needed to use features shown in the acceptance tests are not published (LP: #1375301) . update-all-ABI-sha1sums.sh and install_on_android.sh are no longer executable. (LP: #1376547) . Fix arm64 package by adding arm64 to the shared library prober test. (LP: #1379478) mir (0.7.3+14.10.20140918.1-0ubuntu1) utopic; urgency=medium [ Andreas Pokorny ] * New upstream release 0.7.3 (https://launchpad.net/mir/+milestone/0.7.3) - Bug fixes . Fix constructor syntax errors (LP: #1369389) . server: Workaround for unresponsive clients causing the server to hang (LP: #1350207) . Relax strict dependencies of graphics drivers on an exact version of the libmirplatform2 package. It's blocking CI. (LP: #1370866) . Update cmake scripts to current version of gcovr. [ Ubuntu daily release ] * New rebuild forced mir (0.7.2+14.10.20140912-0ubuntu1) utopic; urgency=medium [ Alexandros Frantzis ] * New upstream release 0.7.2 (https://launchpad.net/mir/+milestone/0.7.2) - Bug fixes . Restore support for gcc-4.8/trusty (LP: #1366134) mir (0.7.1+14.10.20140909.1-0ubuntu1) utopic; urgency=medium [ Alberto Aguirre ] * New upstream release 0.7.1 (https://launchpad.net/mir/+milestone/0.7.1) - Bug fixes . Recycle compositor threads by using a thread pool (LP: #1362841) mir (0.7.0+14.10.20140829-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * New upstream release 0.7.0 (https://launchpad.net/mir/+milestone/0.7.0) - Enhancements: . Test suite: Reworked mechanism to override Mir client functions . Demo shell: Detect custom rendering (decorations) to make it compatible with overlay optimizations . Make sure to preserve fd resources until the end of the sending of the message . Add test cases and script for tracking changes to the new ABIs: libmircommon, libmirplatform . Symbols file for libmirplatform . Symbols file for libmircommon . Symbols file for libmirserver . Various improvements to the SessionMediator test . Various build related improvements . Print testcase output during package build . Abort test when InProcessServer startup fails . Link the integration and unit tests against the server objects . Add a document detailing the useful tests to run and the useful logs to collect when troubleshooting a new android chipset . Enable motion event resampling and prediction for a more responsive touch experience. - ABI summary: Servers need rebuilding, but clients do not . Mirclient ABI unchanged at 8 . Mircommon ABI bumped to 1 . Mirplatform ABI bumped to 2 . Mirserver ABI bumped to 25 - API changes between Mir 0.6 and 0.7: . mirserver: Deleted function - frontend::Shell::create_surface_for(). If you have the std::shared_ptr<frontend::Session> session, you can just do session->create_surface(params) instead to get a SurfaceId. . mirplatform: class BufferID has been replaced with a typedef. Also, the BufferIPCPacker interface has changed slightly [pack_fd()]. - Bug fixes: . Ensure we process lifecycle events before the nested server is torn down (LP: #1353465) . Fix race in InputTestingServerConfiguration (LP: #1354446) . Fix fd leaks in prompt session frontend code and tests (LP: #1353461) . Detect the additional things the demo shell draws on the renderable list and avoid calling the optimized post function if they are being drawn (LP: #1348330) . Client: Fix SIGTERM dispatch in our default lifecycle event handler (LP: #1353867) . DemoRenderer: Don't try to create a texture of width zero. (LP: #1358210) . Fix CI failures (LP: #1358698) . Fix build failure: "variable ‘rc’ set but not used" which happens in release mode when NDEBUG is set (LP: #1358625) . Only enumerate exposed input surfaces to avoid delivering events to occluded surfaces (LP: #1359264) . Android: do not post driver cancelled buffers (LP: #1359406) . Client: Ensure our platform library stays loaded for as long as it is needed by other objects (LP: #1358191) . Examples: Register the DemoCompositor with the Scene to properly process visibility events (LP: #1359487) . mir_demo_client_basic: Don't assert on user errors like failing to connect to a Mir server (LP: #1331958) . Tests: Explicitly depend on GMock target to avoid build races (LP: #1362646) . Some Mir clients spin at 100% CPU if the server dies (LP: #1340120) [ Ubuntu daily release ] * New rebuild forced mir (0.6.1+14.10.20140814-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * New upstream release 0.6.1 (https://launchpad.net/mir/+milestone/0.6.1) - Bugs fixed: . libmircommon-dev 0.6.0+14.10.20140811-0ubuntu1 fails to install/upgrade, does not replace mircommon-dev 0.5.1+14.10.20140728-0ubuntu1 (LP: #1348515) . Nexus 4 client lock up observed (LP: #1352883) [ Ubuntu daily release ] * New rebuild forced mir (0.6.0+14.10.20140811-0ubuntu1) utopic; urgency=medium [ Cemil Azizoglu ] * New upstream release 0.6.0 (https://launchpad.net/mir/+milestone/0.6.0) - mirclient ABI unchanged at 8. Clients do not need rebuilding. - mirserver ABI bumped to 24. Servers need rebuilding, but probably don't need modification: . Host lifecycle event listener for nested servers introduced. . Add query function to BasicSurface. . The (deprecated) function the_ipc_factory() is now removed. . Removed legacy support for overriding the focus controller or the frontend shell. . Added support for a common type for managing fd's. . Moved testdraw library to examples directory. . Added support for droping stale frames when a surface becomes exposed. - Enhancements: . Split underlying data transport out of MirSocketRpcChannel. . Introduced two new client-side functions : mir_surface_get_focus and mir_surface_get_visibility. . Added symbolic names for cursors. . Made "shared" code a true shared library. . Provide linker scripts to control symbols exported by [mesa|android] libmirclientplatform. . Correct xcursor loader test to fail properly instead of segfaulting. . Make mir::Fd type copy constructible. . Miscellaneous packaging related enhancements. . Miscellaneous build related enhancements. . Added automated test cases for detecting ABI breakage. . examples/fingerpaint: Enable frame dropping so it's faster and more responsive. . mirprotobuf folded into new libmircommon. . Don't propagate exceptions to graphics driver code. . Dropped unused/minimally used dependencies : boost-filesystem, boost-thread, boost-chrono, boost-regex. . platform: provide support for customizing Mir's behavior when a fatal_error occurs. . Expose an interface for touch visualization. - Bugs fixed: . Mir servers crash with SIGABRT - assertion failed at buffer_queue.cpp:136 - "!pending_client_notifications.empty()" (LP: #1335481) . [regression][hammerhead] Mir fails to start on Nexus 5 & 10 as it fails to turn vsync signal on (LP: #1345533) . [qtcomp] Random crash in Mir input when running AP tests: [terminate called after throwing an instance of '...' what(): assign: File exists] when constructing a mir::AsioMainLoop::FDHandler (LP: #1346952) . CI builds fail when trying to install libmircommon-dev (LP: #1348518) . [regression] Mir 0.6 GL clients crash immediately on startup (Mesa is trying to use X11 instead of Mir) (LP: #1350163) . qmlscene crashed with SIGSEGV in _M_release() on quit (LP: #1342694) . Clients cannot create surfaces when the screen is off (LP: #1344024) . The packaging of headers and libraries is confused (LP: #1347522) . [regression] Intermittent CI failure in ClientLibrary.receives_surface_dpi_value (LP: #1348095) . Installing mir-demos also unexpectedly installs *-dev packages (LP: #1297100) . mir_unit_tests: XCursorLoader.loads_cursors_from_testing_theme crashes on N4 (LP: #1342029) . [performance] Mir is spending at least 8% of its time in __android_log_print() (LP: #1343074) . [performance] Mir demo shell spends ~12% of its time in vector allocation under DemoRenderer::tessellate_*() (LP: #1349698) . mir_client_library_debug.h functions do not have C linkage (LP: #1349742) . mir client API is missing getters for some surface attributes (LP: #1336553) . Building Mir outputs lots of warnings about Android logging functions in 3rd_party/ (LP: #1348467) . The "shared" code should be a shared library (LP: #1341502) . Finish the removal of mirprotobuf library (LP: #1351133) . Release overlay buffers when screen is turned off (LP: #1350961) . mir_demo_server_shell --disable-overlays false renders incorrectly on android (partial fix for LP: #1348330) . Remember to honor MIR_ENABLE_TESTS and not emit tests if it's disabled (LP: #1352800) . Make it easier to separate command line options used by Mir from those used elsewhere (LP: #1351255) . Expose create_native_platform in libmirplatformgraphics.so (LP: #1353658) . Add versioning and pkg config to libmirplatform (LP: #1293944) . unity-system-compositor FTBFS against Mir: undefined reference to `...@MIR_CLIENT_8' (LP: #1355021) [ Ubuntu daily release ] * New rebuild forced mir (0.5.1+14.10.20140728-0ubuntu1) utopic; urgency=medium [ Kevin Gunn ] * Fixed: Crash due to racing input registration & surface removal (LP: #1346952) [ Ubuntu daily release ] * New rebuild forced mir (0.5.0+14.10.20140724-0ubuntu1) utopic; urgency=medium [ Kevin Gunn ] * Fixed: Crashing on assert of empty client notification queue (LP: #1335481) mir (0.5.0+14.10.20140722-0ubuntu1) utopic; urgency=medium [ Kevin Gunn ] * Fixed: [regression] Mir fails to start on Nexus 5 / Nexus 10 (LP: #1345533) mir (0.5.0+14.10.20140717-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * New upstream release 0.5.0 (https://launchpad.net/mir/+milestone/0.5.0) - mirclient ABI unchanged at 8. Clients do not need rebuilding. - mirserver ABI bumped to 23. Servers need rebuilding, but probably don't need modification: . DefaultServerConfiguration/Cursor API: Cursor interfaces changed, most notably CursorImages moved from ::mir::graphics to ::mir::input. . DefaultServerConfiguration: New "prompt" API. . DefaultServerConfiguration: "clock" member is now static. . SessionAuthorizer: New functions. . ServerConfiguration: New function added: the_prompt_connector(). - Enhancements: . Add AddressSanitizer cmake build type. . frontend, client API, tests: add support for prompt session permissions and for client detecting errors. . server: Ensure our emergency cleanup handling infrastructure is signal-safe. . Implement and enable an xcursor based image loader for cursors. . Fix warnings raised by the new g++-4.9. . shared, scene: Introduce a generic listener collection. . MirMotionEvent: Define a struct typedef to allow for pointer_coordinates to be used individually. - Bugs fixed: . Nexus 10 leaks during overlay operations (LP: #1331769) . MultiThreadedCompositor deadlocks (LP: #1335311) . Intermittent test failure in ClientSurfaceEvents can client query orientation (LP: #1335741) . Intermittent test failure in ClientSurfaceEvents/OrientationEvents (LP: #1335752) . Intermittent memory error in ClientSurfaceEvents on orientation query (LP: #1335819) . mir_unit_tests.EventDistributorTest.* SEGFAULT (LP: #1338902) . [regression] Device locks randomly on welcome screen (LP: #1339700) . Intermittent deadlock when switching to session with custom display config & closing other session (LP: #1340669) . Mir cursor has no hotspot setting, assumes (0, 0) (LP: #1189775) . clang built mir_unit_tests.ProtobufSocketCommunicatorFD crashes intermittently (LP: #1300653) . g++-4.9 binary incompatibilities with libraries built with g++-4.8 (LP: #1329089) . [test regression] SurfaceLoop fails sporadically on deleting surfaces for a disconnecting client (LP: #1335747) . Intermittent test failure ServerShutdown when clients are blocked (LP: #1335873) . [regression] mir_demo_client_multiwin is displayed with obviously wrong colours (LP: #1339471) . Partially onscreen surfaces not occluded when covered by another surface (LP: #1340078) . SurfaceConfigurator::attribute_set always say "unfocused" for focus property changes (LP: #1336548) mir (0.4.1+14.10.20140714-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * Bug fix release 0.4.1 (https://launchpad.net/mir/+milestone/0.4.1) fixes: - [regression] Device locks randomly on welcome screen (LP: #1339700) mir (0.4.0+14.10.20140701.1-0ubuntu1) utopic; urgency=medium * New upstream release 0.4.0 (https://launchpad.net/mir/+milestone/0.4.0) - mirclient ABI bumped to 8. Clients need rebuilding. . Add surface attribute for visibility. . Add surface orientation API. - mirserver ABI bumped to 22. Shells need rebuilding. . Change compositor::Scene to expose compositor::SceneElements instead of graphics::Renderables. . Change various input and Surface classes to support the client cursor API. . Support unregistering fd handlers in the EventHandlerRegister and related interfaces (MainLoop). . server: Change mc::Scene to deal in mc::SceneElements instead of mg::Renderables. . Add visibility tracking to mc::SceneElement interface and implementations. . Move InputChannelFactory into DefaultServerConfiguration. - Unregister FD Handler from EventHandlerRegister. - Sending user input events through Surfaces. - Allow setting the orientation of a server surface. - Enable client cursor API. - Enable support for USB touchscreens. - Various test improvements. - Bugs fixed: . can't display toolbar after dismissing it (LP: #1332632) . [regression] demo client connection crashes the server (LP: #1334010) . demo server locks up in certain scenarios with --disable-overlays false when starting/stopping second clients (LP: #1329868) . MultiThreadedCompositor deadlocks (LP: #1335311) . Intermittent memory error in ClientSurfaceEvents.client_can_query_current_orientation (LP: #1335819) . Intermittent hang & fail in mir_acceptance_tests.TestClientCursorAPI.* (LP: #1332011) . MirClientSurfaceTests tests leak fds and eventually hang when ran repeatedly (LP: #1333673) . [testfail] Intermittent "Invalid read" in MirSurfaceSwapBuffersTest. swap_buffers_does_not_block_when_surface_is_not_composited (LP: #1334287) . android: support alpha blending during hwc overlay (LP: #1329879) mir (0.3.0+14.10.20140618.1-0ubuntu1) utopic; urgency=medium [ Cemil Azizoglu ] * New upstream release 0.3.0 (https://launchpad.net/mir/+milestone/0.3.0) - mirclient ABI unchanged, still at 7. Clients do not need rebuilding. - mirserver ABI bumped to 21. Shells need rebuilding. . Divide swap_client_buffers into separate functions. . Allow buffer swapping even when compositor is turned off or blocked. (LP: #1308843, 1308844) . Wire the cursor client API through the session mediator to the surface observer. . Generate destination alpha for alpha enabled display buffers. . Named threads. . Support for prompt sessions : https://wiki.ubuntu.com/Security/TrustStoreAndSessions. - mirscreencast screenshots now produce images with correct color instead of transparency. - Rename bind_to_texture->gl_bind_to_texture. - Refinements in test infrastructure. - Phablet: allow disabling the overlays via a command line switch. - Unify the DisplayBuffer interface's optimization functions behind post_renderables_if_optimizable. - Clean up the DisplayDevice interface so that it doesn't require the functions are called in any particular order. - Phablet: graphics: android: preserve buffer ownership for onscreen overlay layers until the subsequent display posting. - Allow the platform to register emergency cleanup handlers in order to restore the graphics system to a sane state when the server fails abruptly. - Bugs fixed: . Mirscreencast outputs translucency instead of shadows, producing incorrect images. (LP: #1301210) . JSON formatting. (LP: #1324902) . Fix input_area_contains to work properly in global coordinates even when input_rectangles is updated. (LP: #1261647) . Allow a moment for clients to acquire a buffer. (LP: #1317370) . Generate correct alpha by changing blending equation to assume pre-multiplied alpha sources. (LP: #1318852) . Rework the recomposition messaging so that the DisplayBufferCompositor is no longer involved. (LP: #1319907) [ Ubuntu daily release ] * New rebuild forced mir (0.2.0+14.10.20140605-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * New upstream release 0.2.0 (https://launchpad.net/mir/+milestone/0.2.0) - mirclient ABI unchanged, still at 7. Clients do not need rebuilding. - mirserver ABI bumped to 20. Shells need rebuilding. . Cursor::set_image() parameters changed. . Display::the_cursor() renamed to Display::create_hardware_cursor() . Platform::create_display() requires a new parameter; gl_program_factory . Renderable::buffer() no longer accepts any parameter at all. Multi- monitor frame sync is guaranteed in other ways now. . Scene::generate_renderable_list() renamed to renderable_list_for(id) where id is an opaque compositor ID of your choosing. . Scene::set_change_callback() replaced by the more generic: add_observer() and remove_observer() functions. . Added default implementation for SceneObserver. . SessionCreator renamed to ConnectionCreator. . ConnectedSessions renamed to Connections. . ProtobufSessionCreator renamed to ProtobufConnectionCreator. . SessionAuthorizer: pid_t parameters replaced by SessionCredentials. . Massive architectural changes to Input-everything. . Surface no longer implements Renderable, but emits one via compositor_snapshot(). . Pass the full renderable list to Renderer::render(). . Graceful handling of exceptions thrown from server threads. . Clarify size position interfaces in the Surface classes. . Plumbing for trusted sessions. . Allow posting and managing custom main-loop actions. . Timer extension. . Identify client process when client connects to Mir not when socket connects. . Use the ServerActionQueue for display config. . Recomposition signal moved to the MultiThreadedCompositor. . Make timer service replaceable. . Clarify assumptions about how many buffers a client can fill without blocking. . Introduce EmergencyCleanup interface. - Demo shell enhancements: . You can now change graphics modes on the fly using Ctrl+Alt+(-/=). To reset to the preferred mode use Ctrl+Alt+0. . The above mode changing as well as existing screen rotation keys (Ctrl+Alt+arrows) are now per-display; only applied to the monitor the mouse pointer is on. . New shell controls documented. - A new testing category, performance test, was introduced. It currently runs glmark2-es2 and compares the result to a minimum threshold. - MIR_VERSION_MINOR is tied to MIRSERVER_ABI in the sense that a change in the former now requires dependent projects that a rebuild is necessary. - SwitchingBundle was replaced by BufferQueue. - Expand credentials to include uid/gid for session authorizer. - Bypass control is now Mesa-specific and tied to the command line options. So the environment variable MIR_BYPASS has changed to MIR_SERVER_BYPASS. - Ongoing architectural changes in the compositor/renderer logic to prepare for overlay support, and to reduce locking overhead. - Made InputDispatcher replaceable. - Progress made on new cursor interfaces with the end goal of client and toolkit control of the mouse cursor appearance. More work required. - Updated cross-compile docs and scripts to support the latest utopic devel images. - Replaced uses of android::sp with std::shared_ptr. - Client cursor API infrastructure. - Enabled eglSwapInternal(0). - Make texture caching algorithm reuseable. - Add a DPI surface attribute. - Exclude arm64 from build. - Bugs fixed: . Mir doesn't install cleanly if docs are not built. (LP: #1304271) . Unity-system-compositor crashed [what(): Failed to set DRM crtc]. (LP: #1294510) . [regression] unity8 fails to load libmirplatformgraphics (undefined symbol: _ZN3mir8graphics9GLProgramD1Ev). (LP: #1317200) . [regression] unity8 rendering artifacts. (LP: #1317260) . [regression] [BufferQueue] BufferQueueTest.compositor_never_owns_client_buffers occasionally crashes with: what(): unexpected release: buffer was not given to compositor. (LP: #1317801) . Hardcoded size for serialization buffers is neither reliable nor secure. (LP: #1320187) . [regression] [BufferQueue] mir does not composite last client given buffer. (LP: #1321861) . [regression] stale frame on seen on greeter when screen is unblanked and toolkit/apps are laggy/throttled. (LP: #1321886) . [regression] [BufferQueue] current_buffer_users vector memory usage grows unbounded. (LP: #1317808) . Intermittent test failures in CustomInputDispatcherFixture.custom_input_dispatcher_receives_input. (LP: #1318587) . [regression] [BufferQueue] Race condition in BufferQueue::compositor_acquire could underflow shared_ptr refcount and delete prematurely, crash. (LP: #1318632) . Overflow in mir::client::rpc::MirSocketRpcChannel::receive_file_descriptors as reported by address sanitizer. (LP: #1320821) . [regression] [input] Scroll events are now always zero: event.motion.pointer_coordinates[0].vscroll. (LP: #1321077) . CI failures in CustomInputDispatcherFixture .custom_input_dispatcher_gets_started_and_stopped. (LP: #1321215) . [regression] Mir cursor vanishes after switching VTs. (LP: #1323225) . Server library links against libmirserverlttng. (LP: #1323317) . [DRM/GBM] Killing (or crashing) Mir often leaves the screen blank and difficult to recover. (LP: #1189770) . Frame rates of GL clients are limited to 60Hz on Android, even with swapinterval=0. (LP: #1206400) . mir_surface_is_valid(NULL) crashes instead of returning false. (LP: #1248474) . [regression] tests/unit-tests/shell/test_mediating_display_changer.cpp is not compiled and executed. (LP: #1312832) . Android platform does not reset the compositionType to HWC_FRAMEBUFFER before prepare() on every frame. (LP: #1314399) . The client process is identified when the socket connects, not when the client connects to Mir. (LP: #1314574) . [regression] Clients can't acquire multiple buffers any more. (LP: #1315302) . [regression] Enabling SwitchingBundleTest DISABLED_synchronous_clients_only_get_two_real_buffers now crashes with no usable stack trace. It used to only fail. (LP: #1315312) . [regression] [BufferQueue] double-buffered client freezes as no buffer is returned on compositor_release. (LP: #1319765) . Uninitialized mem in OutputBuilder.hwc_version_11_success. (LP: #1312867) . [enhancement] In the tests make it possible to get a DefaultConfiguration initialized from the command line (LP: #1316987) . ci train blocked due to missing arm64 libandroid-properties-dev. (LP: #1323504) [ Ubuntu daily release ] * New rebuild forced mir (0.1.9+14.10.20140430.1-0ubuntu1) utopic; urgency=medium [ Daniel van Vugt ] * New upstream release 0.1.9 (https://launchpad.net/mir/+milestone/0.1.9) - mirclient ABI unchanged, still at 7. Clients do not need rebuilding. - mirserver ABI bumped to 19. Shells need rebuilding. - More libmirserver class changes and reorganization, including; . Moving things from shell:: to scene:: . Rewriting/refactoring surface factories. - Added an id() to Renderable. - Scene/Renderer interfaces: . Scene is no longer responsible for its own iteration (no for_each any more). Instead you should iterate over the list returned by Scene::generate_renderable_list(). - Bugs fixed: . Stale socket issue. (LP: #1285215) . Qt render gets blocked on EGLSwapBuffers. (LP: #1292306) . Lock order violated found in helgrind (potential deadlock). (LP: #1296544) . [regression] SwitchingBundle in framedropping mode can hang. (LP: #1306464) . [DPMS] Display backlight turns back on almost immediately after being turned off. (LP: #1231857) . Wrong frame is seen on wake up/resume/unlock. (LP: #1233564) . Nested platform is not testable (LP: #1299101) . [regression] mir_demo_server_shell crashes on display resume. (LP: #1308941) . Multi-threaded composition is actually mostly serialized by SurfaceStack::guard. (LP: #1234018) . Mirscreencast slows down compositing and makes it very jerky. (LP: #1280938) . Mirscreencast can cause clients to render faster than the screen refresh rate. (LP: #1294361) . Screen turns on when a new session/surface appears. (LP: #1297876) . mir-doc package is >56MB in size, expands to >100MB of files. (LP: #1304998) . [regression] Clang: 'mir::test::doubles::MockSurface::visible' hides overloaded virtual function [-Woverloaded-virtual]. (LP: #1301135) . [regression] GLRenderer* unit tests have recently become noisy. (LP: #1308905) . FocusController::set_focus_to() no longer seems to raise a session to the top. (LP: #1302689) [ Ubuntu daily release ] * New rebuild forced mir (0.1.8+14.04.20140411-0ubuntu1) trusty; urgency=medium [ Daniel van Vugt ] * New upstream release 0.1.8 (https://launchpad.net/mir/+milestone/0.1.8) - mirclient ABI unchanged, still at 7. Clients do not need rebuilding. - mirserver ABI bumped to 18. Shells need rebuilding. - Server API changes affecting shells: . GLRenderer::tessellate() changed syntax. . graphics::Platform::create_display() has a new parameter allowing you to customize the compositor's (E)GL configutation. . Renderable::buffer(unsigned long frameno) is now: Renderable::buffer(void const* user_id). See below. . Renderable::should_be_rendered_in() is replaced by a more natural: Renderable::visble() . input::Surface::name() returns by value instead of reference now, to ensure future thread safety. - Switched EventHub device enumeration and hotplug to Udev. NOTE! This means mir_test_* can't run natively on touch devices any more without some setup first: sudo mount -o remount,rw / sudo apt-get update sudo apt-get install -y umockdev umockdev-run -- bin/mir_unit_tests - Added logging for HWC events. - Continued consolidation of Surface classes toward a simpler architecture. - Introduced "RenderableList" as the way to sample the Scene contents, and started using that in the default compositor. - Introduced physical length units and conversion (geometry::Length) in preparation for arbitrary DPI rendering. - Added some decorations to demo-shell; shadows and basic title bars, all anti-aliased and high-DPI scalable. - Multi-monitor frame sync has been redesigned to eliminate the need for frame number tracking. - Bugs (and enhancements) resolved: . [enhancement] Please move input detection to libudev (LP: #1237784) . [enhancement] Add a clamping resize mode to GLRenderer (LP: #1259887) . [regression] Intermittent loss of multimonitor frame sync (LP: #1290306) . [enhancement] Make GL config options configurable (LP: #1290780) . memcheck-test doesn't test anything when DISABLED_GTEST_DISCOVERY is enabled (LP: #1291876) . "Error opening DRM device" is always followed by "Unknown error -(some negative number)" (LP: #1292384) . Rendering/composition gets stopped early (LP: #1293896) . Ubuntu Touch Settings and terminal apps are not rendering correctly on rotate. (LP: #1294048) . [regression] Apps are much slower to open (LP: #1294051) . Settings app opens to a blank screen unless given enough time to render or the app is touched (LP: #1294053) . TestClientInput/DemoPrivateProtobuf memory leak is causing regular CI test failures (LP: #1295231) . OSK touch events "fall through" and hit surface behind them (LP: #1297878) . [enhancement] add a test for composite of last client post (LP: #1298596) . [regression] Surfaces vanish as soon as their edges touch the edge of screen (LP: #1301115) * Cherry-picked from future release 0.1.9: - Bug fix: mirplatformgraphics does not have boost program options in its symbol table (LP: #1301040) - Bug fix: unity8 crashed with SIGSEGV in glDeleteTextures() from mir::scene::GLPixelBuffer::~GLPixelBuffer() from mir::scene::ThreadedSnapshotStrategy::~ThreadedSnapshotStrategy() (LP: #1256360) [ Ubuntu daily release ] * New rebuild forced mir (0.1.7+14.04.20140318-0ubuntu1) trusty; urgency=low [ Alberto Aguirre ] * Fix not compositing the client's last posted buffer (LP: #1294048, LP: #1294051, LP: #1294053, LP: #1290306) In single-display cases the number of ready buffers decreases after a buffer is acquired by the rendering operator. Determine if there will be uncomposited buffers before acquiring a buffer so it works for single and multi display use cases. (LP: #1294048, #1290306, #1294051, #1294053) mir (0.1.7+14.04.20140317.1-0ubuntu1) trusty; urgency=medium [ Daniel van Vugt ] * New upstream release 0.1.7 (https://launchpad.net/mir/+milestone/0.1.7) - mirserver ABI bumped to 17 - mirclient ABI unchanged, still at 7. Clients do not need rebuilding. - Server API changes (AKA why doesn't my code build any more?): . Class "CompositingCriteria" has been removed. It's replaced by the more flexible "Renderable" interface. This also resulted in parameter changes for the Renderer and scene filtering classes. . The function "DisplayConfiguration::configure_output()" has been removed. Instead, please use the new mutable version of "DisplayConfiguration::for_each_output()" with which you can modify the output structure passed in on each iteration. . Exposed formerly private class "GLRenderer" and demonstrated how to override its behaviour in demo-shell. This area is under construction and may experience further major changes. - Added initial support for hardware (HWC) overlays to accelerate rendering and reduce power consumption. Not complete yet. - Screen rotation: Added mouse cursor rotation support, so you can now still control things on a rotated screen. Still missing rotation of the cursor bitmap itself. - Lots of fixes to support nested Mir servers (see below). - Major simplification to how surface size/position/transformation interact, making transformations much easier to manage and work with. - Bugs fixed: . ./cross-compile-chroot.sh: line 83: popd: build-android-arm: invalid argument popd: usage: popd [-n] [+N | -N] (LP: #1287600) . Key events sent to the wrong client (and delayed) (LP: #1213804) . Nested servers never receive input events (in their filters) (LP: #1260612) . Software clients crash immediately on nested servers - what(): Failed to mmap buffer (LP: #1261286) . MirMotionEvent lacks local coordinates. Reports only screen coordinates. (LP: #1268819) . Nested Mir crashes with - what(): MesaNativePlatform::create_internal_client is not implemented yet! (LP: #1279092) . clients fail to find some libraries if mir installed via "make install" (LP: #1285566) . Nested server hangs with multimonitor and internal clients. (LP: #1287282) . [regression] Multi-monitor frame sync no longer works (not synchronized), and frames skip/jump/stutter (LP: #1288570) . Mir FTBFS: /usr/bin/ld: cannot find -lmirtestdraw (when cmake .. -DMIR_ENABLE_TESTS=OFF) (LP: #1283951) . nested Mir library calls next_buffer() during startup (LP: #1284739) . Building Mir produces lots of warnings from GLM headers about deprecated degrees values vs radians (LP: #1286010) . [enhancement] screencast of a single window (LP: #1288478) . Nexus4 + mir_demo_client_eglplasma starts to stutter after a while (LP: #1189753) . --host-socket documented default argument isn't used as default (LP: #1262091) [ Ubuntu daily release ] * New rebuild forced mir (0.1.6+14.04.20140310-0ubuntu1) trusty; urgency=medium [ Kevin Gunn ] * Cherry-picked from future release 0.1.7: - Enhancement: options: Make it easier to customize DefaultConfiguration - Bug fix: Don't pass a parameter to bash's popd command. It doesn't expect one and will return an error from cross-compile-chroot.sh. (LP: #1287600) * New upstream release 0.1.6 (https://launchpad.net/mir/+milestone/0.1.6) - mirserver ABI bumped to 16. - Server API changes: . Report classes have moved to new namespaces/components. Please consult the server headers. . General clean-ups and virtual function changes affecting the ABI (a rebuild is required for all shells). - mirclient ABI unchanged, still at 7. Clients do not need rebuilding. - Add new feature: Screen recording ("screencasting") as demonstrated by the new mir-util "mirscreencast". - debian: Provide platform packages managed with dpkg alternatives. - Add new valgrind suppressions (mostly for armhf right now) - tools: Add new libmirclientplatform.so to install_on_android.sh. - Add "mir_demo_standalone_render_overlays", which is a free-standing example of overlay support. - Proper DisplayConfiguration for the AndroidDisplay to be better prepared for multi-monitor Android. - Commenced/continued simplifying the surface class hierarchy: BasicSurface has now absorbed SurfaceData. - Dynamically load the client platform library. - Bugs fixed: . Exceptions thrown from within compositing threads were untraceable, resulting in a bunch of undebuggable crash reports (LP: #1237332) . Ensure we close drm device file descriptors on exec. (LP: #1284081) . nested render_surfaces fails on N4 [std::exception::what: Failed to compile vertex shader:] (LP: #1284597) . examples: correct "fullscreen-surfaces" option. (LP: #1284554) . Fix mutex data race reported by helgrind in integration test: SwapperSwappingStress (LP: #1282886) . scene: Return null snapshots for sessions without surfaces (LP: #1281728) . tests: Address some raciness in MesaDisplayTest.drm_device_change_event_triggers_handler. (LP: #1283085) . tests: Suppress spurious memory errors occuring when running the unit tests on armhf with valgrind. (LP: #1279438) . Mir shows an old frame on client startup (for Mesa GL clients) (LP: #1281938) . tests: Add expectation to validate second SessionAuthorizer method is called wit correct parameter. (LP: #1218436) . Set field "current_format" when sending a display config to the server. (LP: #1277343) . Fix crash in android devices by working around a subtle threading bug, use a dummy thead_local array to push the gl/egl context TLS into a region where the future wait code does not overwrite it. (LP: #1280086) . compositor: calling SwitchingBundle::force_requests_to_complete() can be a no-op when there are no requests. (LP: #1281145) . tests: Don't emit an "add" uevent manually when adding a device (LP: #1281146) . config: reduce size of default RPC thread pool. (LP: #1233001) . Clients freeze on startup if 10 or more are already running (LP: #1267323) . Fix Nexus 10 leaking FDs in the hwc prepare/set loop. (LP: #1278658) . Parallelize page flipping with rendering of the next frame, fixing stuttering observed in multi-monitor clone mode (LP: #1213801) . Ubuntu trusty update "glm 0.9.5.1-1" broke Mir builds. Work around the change. (LP: #1285955) . Screencast feature by compositing to offscreen buffer (LP: #1207312) [ Ubuntu daily release ] * New rebuild forced mir (0.1.5+14.04.20140212-0ubuntu1) trusty; urgency=medium [ Kevin Gunn ] * Cherry-picked from future release 0.1.6: - frontend, shell: provide the client process ID in the shell::Session interface (LP: #1276704) * New upstream release 0.1.5 (https://launchpad.net/mir/+milestone/0.1.5) - mirclient ABI bumped to 7 - mirserver ABI bumped to 15 - Refactoring to support client-controled RPC. - Add an translucent server example (use sparingly, this will kill performance!) - Add workaround for Qualcomm Snapdragon 8960 driver bug. - android-input: Improve debug output - Screen rotation support half done (rotation of the screen works but input rotation not implemented yet). - Add groundwork for overlay support to take better advantage of mobile hardware features and optimize composition in future. - Add support for HWC 1.2 (Android 4.4) - Add groundwork for screencasting (screen recording). - Optimized surface resizing, significantly reducing event flooding for some input configurations like touch. - Bugs fixed: . Surfaces no longer visible at all on Nexus 10 (LP: #1271853) . mir nested server failure: what(): error binding buffer to texture (LP: #1272041) . Unity does not process events from evdev device created before unity is restarted (autopilot tests) (LP: #1238417) . mir_unit_tests can't run on touch images any more (missing libumockdev.so.0) (LP: #1271434) . chmod 777 /tmp/mir_socket is no longer sufficient for non-root clients to connect to a root server (LP: #1272143) . Nexus7(2013) flo framerate maxes out at 30fps (LP: #1274189) . libmirserver user is unable to #include <mir/frontend/template_protobuf_message_processor.h> (LP: #1276162) . libmirclient user cannot "#include <mir/client/private.h>" (LP: #1276565) . AndroidInternalClient.internal_client_creation_and_use hangs on Nexus 10 (LP: #1270685) . Tests that use the InProcessServer bind the default socket file (LP: #1271604) . BasicConnector threads exit immediately (LP: #1271655) . Integration tests TestClientIPCRender.test_accelerated_render fails on Galaxy Nexus and Nexus4 (LP: #1272597) . Android backend unit-tests FTBS on amd64 (LP: #1276621) . Erroneous use of last_consumed in SwitchingBundle::compositor_acquire (LP: #1270964) mir (0.1.4+14.04.20140204-0ubuntu1) trusty; urgency=medium [ Daniel van Vugt ] * New upstream release 0.1.4 (https://launchpad.net/mir/+milestone/0.1.4) - Fixed snapshotting and flicker problems for Unity8 on various Nexus devices. - Enhanced reporting of performance information: . Report input latency in InputReport/InputReceiverReport. . Added a CompositorReport for logging compositor performance and state. - Added a new package "mir-utils" containing new tools: . mirping: Displays round-trip times between client and server . mirout: Displays the monitor layout/configuration details - Added GL texture caching to improve performance when multiple surfaces are visible. - Added opacity controls to mir_demo_server_shell - Mir server ABI bumped to 13. Client ABI bumped to 5. - Removed lots of Android headers, replaced by build-dep: android-headers - Added support for translucent nested servers. - tests: Fix unitialized values and incorrect fd closing loops - Fix unitialized values and incorrect fd closing loops. - client: Add basic MirScreencast C API. - config: start moving default values for config options from all the call sites to the setup - tests: Provide a helper for running clients with a stub ClientPlatform. - android: split out HWC layers into their own file and add a mga::CompositionLayer type that depends on the interface mg::Renderable. - client: Add basic MirOutputCapture class. - client: Don't create mesa ClientBuffer objects from invalid MirBufferPackages. - Optimize surface resizing to avoid doing anything if the dimensions are unchanged. - SwitchingBundle - add operator<< for debugging. - support hwcomposer 1.2 for android 4.4 on nexus 4 (which needs hwc1.2 support). This patch adds hwc1.2 device construction, as well as progs the 'skip' layer in HWC to the buffer properties of the framebuffer. - demo-shell: Add simple keyboard controls to rotate outputs; Ctrl + Alt + <arrow-key>. Fixes: https://bugs.launchpad.net/bugs/1203215. - frontend: exposing internals of the RPC mechanism to enable custom function calls to be added. - Make udev wrapper into a top-level citizen - compositor: ignore double requests to start or stop the MultiThreadedCompositor. - Add DisplayBuffer::orientation(), to tell the Renderer if we need it to do screen rotation in GL (for platforms which don't implement rotation natively) Fixes: https://bugs.launchpad.net/bugs/1203215. - graphics: add an post_update function that takes a list of renderables to the display buffer. This will let the display buffer take advantage of full-surface overlays on android. - android-input: Improve debug output - the stock qcom 8960 hwcomposer chokes on getDisplayAttributes if the submitted arrays are not at least size 6. patched the qcom android 4.2 hwcomposer driver on the ubuntu touch images to work properly, but causes us problems with in-the wild drivers, and the new 4.4 drivers. Make sure we always submit a larger-than-needed array to this function. - frontend: refactoring to make it easier to expose the underlying RPC transport on the server side. - Don't assume pressure value is zero if not yet known - build: Expose options to allow building but not running tests by default. - Translucent Server which prefers a transparent pixel format - frontend: refactor ProtobufMessageProcessor to separate out generic response sending logic from specific message handling. - client: expose the part of the client RPC infrastructure needed for downstream to prototype their own message sending. - Bugs fixed: . unity8 display flickers and stops responding on Nexus 7 (grouper) (LP: #1238695) . Mir gets textures/buffers confused when running both scroll and flicker demos (LP: #1263592) . Some snapshots on Nexus10 upside-down (LP: #1263741) . mir_unit_tests is crashing with SIGSEGV in libhybris gl functions (LP: #1264968) . Some snapshots on Nexus10 have swapped red/blue channels (LP: #1265787) . Bypass causes some non-bypassed surfaces (on top) to be invisible (LP: #1266385) . helgrind: Possible data race - MirConnection::mutex not used consistently (LP: #1243575) . helgrind: Lock order violated (potential deadlock) in ConnectionSurfaceMap (LP: #1243576) . helgrind: Possible data race - inconsistent locking in PendingCallCache (LP: #1243578) . helgrind: Lock order violated in mir::client::ConnectionSurfaceMap::erase(int) (LP: #1243584) . [enhancement] Allow a Mir nested server to have a transparent background (LP: #1256702) . Compiling without tests fails (-DMIR_ENABLE_TESTS=NO) (LP: #1263724) . examples, doc: Make it clear and consistent how to use a non-root client with a root compositor endpoint. (LP: #1272143) . Avoid linking to umockdev on platforms (android) which don't yet use it. This allows mir_unit_tests to run on touch images again (LP: #1271434) . Workaround for N4 nested server issue. This change removes mir_pixel_format_bgr_888 - HAL_PIXEL_FORMAT_RGB_888 from the list of supported pixel formats on android. (LP: #1272041) . Don't ask glUniformMatrix4fv to transpose your matrix. That option was officially deprecated between OpenGL and OpenGL|ES. And some drivers like the Nexus 10 don't implement it, resulting in incorrect transformations and even nothing on screen! (LP: #1271853) . Fixes: bug 1272143 (LP: #1272143) . fix integration test failure on the galaxy nexus that was due to creating two surfaces and registering the same buffer twice. Fixes: (LP: #1272597) . Implement screen rotation in GLRenderer, for platforms which can't do it natively in DisplayBuffer. (LP: #1203215) . Add an "orientation" field to output structures in preparation for screen rotation. It's not yet functionally wired to anything. (LP: #1203215) . Only use SwitchingBundle::last_consumed after it has been set. Otherwise SwitchingBundle::compositor_acquire could follow a bogus code path. (LP:#1270964) . tests: Override configuration to avoid creating an (unused) filesystem endpoint for connections when using InProcessServer. (LP: #1271604) . frontend: ensure that BasicConnector threads don't exit immediately. (LP: #1271655) [ Ubuntu daily release ] * New rebuild forced mir (0.1.3+14.04.20140108-0ubuntu3) trusty; urgency=medium * No-change rebuild against libprotobuf8 (this time from a clean tree) mir (0.1.3+14.04.20140108-0ubuntu2) trusty; urgency=medium * No-change rebuild against libprotobuf8 mir (0.1.3+14.04.20140108-0ubuntu1) trusty; urgency=low [ Daniel van Vugt ] * Preparing for release 0.1.3 [ Ubuntu daily release ] * Automatic snapshot from revision 1170 mir (0.1.2+14.04.20131128.1-0ubuntu2) trusty; urgency=low * No-change rebuild for ust. mir (0.1.2+14.04.20131128.1-0ubuntu1) trusty; urgency=low [ Kevin Gunn ] * New upstream release 0.1.2 - graphics: android: improve interface for mga::DisplayDevice so its just concerned with rendering and posting. - surfaces: rename "surfaces" component to "scene". - surfaces, shell: Migrate Session data model from shell to surfaces. - graphics: change fill_ipc_package() to use real pointers. - mir_client_library.h: Fix typo "do and locking" should be "do any locking". - API enumerations cleanup: Remove slightly misleading *_enum_max_ values, and replace them with more accurate plural forms. - test_android_communication_package: Do not expect opened fd to be >0, we may have closed stdin making this a valid value (LP: #1247718). - Update docs about running Mir on the desktop to mention new package ubuntu-desktop-mir. - offscreen: Add a display that renders its output to offscreen buffers - graphics: android: fix regression for hwc1.0 devices introduced in r1228 (LP: #1252433). - OffscreenPlatform provides the services that the offscreen display needs from the Platform. - graphics: android: consolidate the GLContexts classes in use. - Fix uninitialized variable causing random drm_auth_magic test failures. (LP: #1252144). - Add a fullyish functional Udev wrapper. This currently sits in graphics/gbm, but will be moved to the top-level when input device detection migrates. - Add resizing support to example code; demo-shell and clients. - eglapp: Clarify messages about pixel formats (LP: #1168304). - Adds support to the MirMotionEvent under pointer_coordinates called tool_type. This will allow clients to tell what type of tool is being used, from mouse/finger/etc. (LP: #1252498) - client,frontend: Report the real available surface pixel formats to clients. (LP: #1240833) - graphics: android: 1) change hwc1.1 to make use of sync fences during the compositor's gl renderloop. Note that we no longer wait for the render to complete, we pass this responsibility to the driver and the kernel. 2) support nexus 10. (LP: #1252173) (LP: #1203268) - shell: don't publish SurfacesContainer - it can be private to shell. - gbm: Don't mess up the VT mode on setup failure Only restore the previous VT mode during shutdown if it was VT_AUTO. - Fix a crash due to a failed eglMakeCurrent() call when in nested mode. - shell: unity-mir uses shell::FocusSetter - make the header public again - Add resize support to client surfaces (mir::client::MirSurface). - graphics: android: support 'old aka 2012' nexus 7 hwc (nvidia tegra3 SoC) better. (LP: #1231917) - Add resize support to *ClientBuffer classes. Now always get dimensions from the latest buffer package. - android: support driver hooks for the Mali T604 (present in nexus 10) - Add width and height to the protocol Buffer messages, in preparation for resizable surfaces. - surfaces, shell, logging, tests: don't publish headers that can be private to surfaces. surfaces/basic_surface.h, surfaces/surface_controller.h and shell/surface_builder.h - examples: Restore GL framebuffer binding when destroying the render target - examples, surfaces, shell: remove render_surfaces dependency on BasicSurface - geometry: remove implementation of streaming operators from headers (LP: #1247820) - Eliminate the registration order focus sequence, folding it's functionality in to the session container. - Ensure the session mediator releases acquired buffer resources before attempting to acquire a new buffer on behalf of the client. This fixes performance regression (LP: #1249210). - Some cleanups to test_client_input.cpp. - Factor out a bunch of "ClientConfigCommon". - Small cleanup to session container test to increase encapsulation. - shell, surfaces: Another step in "fixing" the surfaces hierarchies - only publish interfaces and putting the data model into surfaces. - graphics: android: HWC1.1 use EGL to get further information about the framebuffer pixel format. - Fix FTBS using use_debflags=ON (building for android-armhf). (LP: #1248014) - Add a client input receiver report. - doc: doxygen 1.8.4 complains about an obsolete config so ran "doxygen u Doxyfile.in". - Implement resize() for the server-side Surface classes. - android: clean up mga::DisplayBuffer and mga::DisplayBufferFactory - Add resize() support to BufferStream, in preparation for resizable surfaces. - Merge metadata changes from the newly reconstructed lp:mir - tests: Deduplicate mg::GraphicBufferAllocator stubs. - examples: Remove spurious use of mir/shell/surface.h. - frontend: remove ClientTrackingSurface from the Surface class hierarchy - Bumping ABI on server to libmirserver11. - Don't mention "Renderable". That interface hasn't existed for quite some time now. - android-input: Assign more unique touch ids [ Ubuntu daily release ] * Automatic snapshot from revision 1167 mir (0.1.1+14.04.20131120-0ubuntu1) trusty; urgency=low [ Daniel van Vugt ] * New upstream release 0.1.1 - Add unit tests for V/H scroll events. - surfaces: avoid publishing some internal headers, tidy up default configuration, integrate surfaces report. - client: Add mir_connection_drm_set_gbm_device() - graphics: avoid publishing some internal headers. - Fixed: unity-system-compositor FTBFS on trusty against new Mir (libmirserver9) (LP: #1244192) - compositor: avoid publishing some internal headers. - shell: Add set_lifecycle_state() to the Session interface. - frontend: avoid publishing some internal headers - logging: avoid publishing some internal headers. - Allow specifying the nested server name by passing --name= or setting MIR_SERVER_NAME=. - graphics,gbm: Inform the EGL platform about the used gbm device when using the native GBM platform - examples: Restore GL state after initializing buffers, fixing crashes observed in render_surfaces (LP: #1234563) - Continue refactoring the mir android display classes. - shell: Hoist focus control functions needed by unity-mir into FocusController interface - client: Remove the timeout for detecting server crashes - Avoid a race condition that could lead to spurious failures of server shutdown tests (LP: #1245336) - test_client_input.cpp: Bump reception time-out in client test fixture. (LP: #1227683) - Ensure StubBufferAllocator returns buffers with the properties requested, and not the same old hardcoded constants. - Update docs and scripting for trusty. - compositor: Make DefaultDisplayBufferCompositorFactory private to the compositor component. - Ignore warnings clang treats as errors, about unused functions being generated from macros in <lttng/tracepoint.h> (LP: #1246590) - Add resize() support to BufferBundle. This is the first step and lowest level of surface resize support. - Clean up constants relating to SwitchingBundle. - Fix the armhf chroot setup script to point to the right library, so cross compiling can work again (LP: #1246975) - shell: avoid publishing some internal headers. - input: avoid publishing some internal headers. * Bump timeouts used in socket testing. It seems 100ms isn't always enough, which leads to spurious test failures (LP: #1252144) (LP: #1252144) * Fix uninitialized variable causing random drm_auth_magic test failures. (LP: #1252144). (LP: #1252144) [ Ubuntu daily release ] * Automatic snapshot from revision 1165 mir (0.1.0+14.04.20131030-0ubuntu1) trusty; urgency=low [ Ubuntu daily release ] * New rebuild forced [ Alan Griffiths ] * client: Remove the timeout for detecting server crashes There are valid cases when the server blocks for an indeterminate amount of time during a client request, like when a next_buffer request blocks because a surface is not visible or the server is paused. In such cases, the timeout mechanism we used to detect server crashes caused the clients to fail. Furthermore, the clients seem able to detect server crashes without the timeout, rendering it needless anyway. (LP: #1245958) [ Ubuntu daily release ] * Automatic snapshot from revision 1161 mir (0.1.0+14.04.20131028-0ubuntu1) trusty; urgency=low [ Daniel van Vugt ] * Bump version 0.1.0 * Add method for testing if Rectangle::contains(Rectangle), which is the basis of any occlusion detection. (LP: #1227739) * Add support for traversing the Scene from front surface to back. This is required for occlusion detection at least (coming soon). . (LP: #1227739) * Optimization: Turn off blending for surfaces that are not blendable. On some systems this can have a noticeable performance benefit. * Avoid rendering surfaces that are fully hidden by other surfaces. This is particularly important for mobile device performance. (LP: #1227739) . (LP: #1227739) * Remove orphaned tags, which appear to have come from the Compiz project (!?) Add tags for the most recent releases up to 0.0.16. No files changed, only tags. * Fix significant performance issues LP: #1241369 / LP: #1241371, and probably more(!) Added regression test to catch such regressions and revert the offending commit r1049. (LP: #1241369, #1241371) [ Brandon Schaefer ] * When Scroll events come in we don't keep around the android vscroll hscroll data. Store it now. (LP: #1233089) [ Albert Astals ] * Fix mismatched free() / delete / delete [] reported by valgrind [ Alexandros Frantzis ] * server: Extend server status (formerly pause/resume) listener to report "started" events This change is needed by users of libmirserver, so they can properly synchronize external interactions with the server. (LP: #1239876) * graphics,examples: Don't enable more outputs than supported when changing the display configuration. (LP: #1217877) * client: Allow clients to call API functions after a connection break has been detected When a client tries to call an API function after a connection break has been detected in a previous API call, the client blocks in the new call. This happens because in MirSocketRpcChannel::notify_disconnected() the pending RPC calls are not forced to complete, since the channel has already been marked as 'disconnected' by the failure in the previous call. Note that if the break is first detected while calling an API function, then that call doesn't block, since this is the first time we call MirSocketRpcChannel::notify_disconnected() and the pending RPC calls are forced to complete. This commit solves this problem by always forcing requests to complete when a communication failure occurs, even if a disconnection has already been handled. This is preferred over the alternative of manually calling the completion callback in a try-catch block when calling an RPC method because of: 1. Correctness: In case the communication problem first occurs in that call, the callback will be called twice, once by notify_disconnected() and once manually. 2. Consistency: The callback is called from one place regardless of whether the communication problem is first detected during that call or not. (LP: #1201436) * graphics: Improve signature of native platform initialization method Use an interface to provide the functionality needed by native platforms. [ Eleni Maria Stea ] * Test GBMBufferAllocatorTest.bypass_disables_via_environment overrides the MIR_BYPASS env variable, causing other tests that use the MIR_BYPASS to fail when we run the unit-tests with -- gtest_repeat=N, N>1. Set back the MIR_BYPASS env. var. (LP: #1238000) [ Kevin DuBois ] * fix: lp 1239577 TestClientIPCRender (an android-only gfx driver test) was hanging due to changes in signal handling. refactor the test, changing the cross-process sync mechanism so it doesn't use sigcont. (LP: #1239577) * graphics: android: eliminate one of the two DisplayBuffers. both hwc/gpu displays use the same displaybuffer now. . [ Daniel d'Andrada ] * Add InputReader performance test. [ Alan Griffiths ] * logging: correct component tag in connector report. * client: fix hang(s) in client API when server dies. (LP: #1227743) * Fix failing acceptance-test: ServerShutdown/OnSignal.removes_endpoint_on_signal (LP: #1237710) Avoid fatal_signal_cleanup getting caught in a loop restoring itself and then re-entering itself. This could happen in some permutations of acceptance-tests where run_mir is entered with fatal_signal_cleanup already set up from previous tests' server instances. (LP: #1237710) * CMake: remove creation of link to non-existent file. * shared: some utility functions to provide some consistent ways to use RAII and application of these functions to some code that has had RAII related discussions recently. * config: separate out the configuration options from the configuration builder. * config: ensure USC can access DefaultConfigurationOptions::parse_options (LP: #1244192) (LP: #1244192) [ Ubuntu daily release ] * Automatic snapshot from revision 1161 mir (0.0.15+13.10.20131014-0ubuntu2) trusty; urgency=low * No change rebuild for Boost 1.54 transition. mir (0.0.15+13.10.20131014-0ubuntu1) saucy; urgency=low [ Kevin Gunn ] * bump version 0.0.15 [ Ubuntu daily release ] * Automatic snapshot from revision 1133 mir (0.0.14+13.10.20131011-0ubuntu1) saucy; urgency=low [ thomas-voss ] * Clean up duplicate instances of the valid connections set. Remove the static instances from the header file. (LP: #1238312) Requested to be merged directly to lp:mir by didrocks, tvoss. (LP: #1238312) [ Ubuntu daily release ] * Automatic snapshot from revision 1097 mir (0.0.14+13.10.20131010-0ubuntu1) saucy; urgency=low [ Colin Watson ] * Don't build-depend on valgrind on arm64 for now, as it is not yet ported there. [ Ubuntu daily release ] * Automatic snapshot from revision 1095 mir (0.0.14+13.10.20131009.4-0ubuntu1) saucy; urgency=low [Kevin Gunn] * bump version to 0.0.14 [ Robert Carr ] * Hold ms::Surface alive from msh::Surface, and remove the explicit throw calls. This way holding a shared_ptr to msh::Surface becomes safe (as long as you drop it eventually!). (LP: #1234609). (LP: #1234609) [ Alan Griffiths ] * client: use lock_guard as it is simpler than unique_lock. (fix for mallit) frontend: Remove the endpoint first when shutting down. Fixes bug lp#1235159. (LP: #1235159) [ Ubuntu daily release ] * Automatic snapshot from revision 1093 mir (0.0.13+13.10.20131003-0ubuntu1) saucy; urgency=low [ Kevin Gunn ] * bump version to 0.0.13 [ Daniel d'Andrada ] * Fix for LP#1233944 Fixes the Mir-side of bug https://bugs.launchpad.net/mir/+bug/1233944 Event files are first created with root:root permissions and only later udev rules are applied to it, changing its permissions to root:android-input and therefore making it readable by unity8-mir in short: Retry opening a file when its permissions change as it might be readable now. (LP: #1233944) [ Robert Carr ] * Fix for LP#1233944 Fixes the Mir-side of bug https://bugs.launchpad.net/mir/+bug/1233944 Event files are first created with root:root permissions and only later udev rules are applied to it, changing its permissions to root:android-input and therefore making it readable by unity8-mir in short: Retry opening a file when its permissions change as it might be readable now. (LP: #1233944) [ Ubuntu daily release ] * Automatic snapshot from revision 1089 mir (0.0.12+13.10.20131001.1-0ubuntu1) saucy; urgency=low [ Michael Terry ] * merge latest dev branch. [ Kevin DuBois ] * merge latest dev branch. [ Daniel d'Andrada ] * merge latest dev branch. [ Ubuntu daily release ] * Automatic snapshot from revision 1086 mir (0.0.12+13.10.20130926.1-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Bump version to 0.0.12 [ Alexandros Frantzis ] * tests: Fix compiler warning about maybe-uninitialized struct member [ Ubuntu daily release ] * Automatic snapshot from revision 1084 mir (0.0.11+13.10.20130924.1-0ubuntu1) saucy; urgency=low [ kg ] * bump version for ABI break (LP: #1229212) [ Robert Ancell ] * Allow an application to override the options being populated. * Pass the program options to parse_options(). * Add missing include for std::cerr. * Report when paused and resumed via configuration. (LP: #1192843) * Add missing directory separator when searching for a config file to parse. [ Kevin Gunn ] * change test timeouts and fix fence. [ Alexandros Frantzis ] * examples: Only check key information for key events This fixes a memory error reported by valgrind for examples that use eglapp. * shell: Apply the base configuration on a hardware change only if no per-session configuration is active. * graphics: consolidated fixed for nested code and examples on android stack. [ Eleni Maria Stea ] * graphics: Pull in Eleni's changes to get the DRM fd to init GBM from the host Mir instance. [ Didier Roche ] * remove (unused in the ppa as we have libmirserver3) hack to force depending and building against the exact same version. [ Robert Carr ] * Add DPMS configuration API. (LP: #1193222) * Deduplicate mtd::NullDisplayConfig and mtd::NullDisplayConfiguration. * Fix multiple internal client surfaces on android. (LP: #1228144) * change test timeouts and fix fence. * Add DPMS API and GBM/android impls. [ Kevin DuBois ] * platform, graphics: support nested (mir-on-mir) rendering on the Android platform. [ Michael Terry ] * Change how Mir chooses socket locations to make it simpler for a nested-Mir world, by using MIR_SOCKET as the host socket if no other host socket is provided and passing MIR_SOCKET on to any children. Also, change --nested-mode to --host-socket for clarity and add -- standalone to force standalone mode. [ Daniel d'Andrada ] * android-input housekeeping - Updated README - Removed some dead code. [ Daniel van Vugt ] * Add DPMS configuration API. (LP: #1193222) * Add a "flags" field to MirBufferPackage so that clients can find out if the buffer they've been given is scanout-capable. This is normally something a client should never need to know. However there are two specialized cases where it's required to fix bugs in the intel and radeon X drivers: LP: #1218735, LP: #1218815 The intel fix (already landed) contains a hack which will be updated after this branch lands. (LP: #1218815, #1218735) * GBM: Ensure that we don't create scanout buffers if bypass is explicitly disabled from the environment. (LP: #1227133) . (LP: #1227133) [ Alan Griffiths ] * graphics: Pull in Eleni's changes to get the DRM fd to init GBM from the host Mir instance. * input: Separate the code for dispatching input from that reading it. * graphics: Hook up nested surfaces events to input. * input: Connect nested input relay to input dispatch. * graphics: Simplify NativeAndroidPlatform out of existence. * tests: Fixes to get the tests "passing" on android/arm stack. (LP: #1226284) * graphics: consolidated fixed for nested code and examples on android stack. * examples: add command-line options to examples so the Mir server connection can be selected. * change test timeouts and fix fence. * client: Add client side support for connecting via an existing FD. [ Łukasz 'sil2100' Zemczak ] * Revert revision 1054 ABI-change (the libmirclient3 one), which seems to cause a lot of problems. [ Ubuntu daily release ] * Automatic snapshot from revision 1081 mir (0.0.10+13.10.20130904-0ubuntu1) saucy; urgency=low [ Kevin DuBois ] * fix lp:1220441 (a test for android display ID was not updated). (LP: #1220441) [ Ubuntu daily release ] * Automatic snapshot from revision 1051 mir (0.0.10+13.10.20130903-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * SwitchingBundle: Simplify and clarify guarantees that compositor_acquire always has a buffer to return without blocking or throwing an exception. The trade-off is that to enforce the guarantee we need to permanently reserve one buffer for compositing. This reduces the flexibility of SwitchingBundle a little, such that minimum nbuffers is now 2. This was originally requested by Alexandros, as the potential throw concerned him. Although, it was logically guaranteed to never happen for other reasons. The second reason for doing this is to eliminate recycling logic, which while safe and correct, was quite confusing. So this change further proves that that logic (now removed) is not to blame for frame ordering bugs. . [ Christopher James Halse Rogers ] * Synthesise an unfocused event on destruction of a focused window We probably need to rethink focus entirely, but this is an incremental improvement that I need. [ Ubuntu daily release ] * Automatic snapshot from revision 1049 mir (0.0.10+13.10.20130902-0ubuntu1) saucy; urgency=low [ Alan Griffiths ] * graphics: tidy up the roles and responsibilities of nested classes. [ Ubuntu daily release ] * Automatic snapshot from revision 1046 mir (0.0.10+13.10.20130830.1-0ubuntu1) saucy; urgency=low [ Alan Griffiths ] * config, input: make nested::HostConnection available in input::NestedInput. [ Ubuntu daily release ] * Automatic snapshot from revision 1044 mir (0.0.10+13.10.20130830-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Dramatically improved multi-monitor frame synchronization, using a global frame count equivalent to the highest refresh rate of all monitors. This is much more reliable than the old logic which was based on timers. This fixes LP: #1210478. (LP: #1210478) * Remove dead code: surfaces::Surface::compositor_buffer() It's unused. Though I suspect in future we might or should go back to using it instead of accessing the buffer stream directly (r856). . [ Alan Griffiths ] * graphcs, config: make the nested HostConnection available in configuration. [ Ubuntu daily release ] * Automatic snapshot from revision 1042 mir (0.0.10+13.10.20130829.2-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * eglapp: Add a new option -oN to force the surface placement onto output N. Unfortunately we haven't yet written any tool to tell you what your output IDs are. [ Ubuntu daily release ] * Automatic snapshot from revision 1038 mir (0.0.10+13.10.20130829.1-0ubuntu1) saucy; urgency=low [ Alan Griffiths ] * config, input: default_android_input_configuration.cpp should only use public headers. * config, input: Stubbed version of input for nested mir. [ Ubuntu daily release ] * Automatic snapshot from revision 1036 mir (0.0.10+13.10.20130829-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Add "composition bypass" support, whereby fullscreen surfaces are allowed to go straight to the display hardware without being composited at all, hence avoiding the overhead of any OpenGL or texturing where possible. Hardware support: intel: Excellent radeon: Good, but REQUIRES kernel 3.11.0 nouveau: Good, but REQUIRES kernel 3.11.0 android: No bypass implemented yet. (LP: #1109963) [ Ubuntu daily release ] * Automatic snapshot from revision 1033 mir (0.0.10+13.10.20130828.1-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * I've noticed some confusion in the community around the purposes of the mir_demo_* binaries. For example: - Users expected mir_demo_client to do something. - Users expected mir_demo_server to be useful, when they would get more use from mir_demo_server_shell. - Users thought mir_demo_client_{un}accelerated were the only examples of {un}accelerated clients. This proposal renames mir_demo_client_* to more accurately describe what they are and what they do. . [ Alan Griffiths ] * graphics: make nested code compatable with "bypass" branch. [ Ubuntu daily release ] * Automatic snapshot from revision 1031 mir (0.0.10+13.10.20130828-0ubuntu1) saucy; urgency=low [ Alan Griffiths ] * graphics.nested: sketch out NestedOutput implementation. [ Eleni Maria Stea ] * removed the struct NativeGBMPlatform from gbm_platform.cpp and added a NativeGBMPlatform class instead. [ Ubuntu daily release ] * Automatic snapshot from revision 1028 mir (0.0.10+13.10.20130827.1-0ubuntu1) saucy; urgency=low [ Alan Griffiths ] * ipc: add a protocol version to the wire protocol so that we can bump it in future. * graphics::nested: Handling of output configuration changes. * graphics.nested: Hookup NestedDisplay to display change notifications. [ Daniel van Vugt ] * Introducing mir_demo_client_progressbar. It's pretty boring; designed to simulate key repeat scrolling in a terminal, as an aid for tracking down bug 1216472. . (LP: #1216472) [ Eleni Maria Stea ] * changed the GBMBufferAllocator constructor and class to use the gbm_device instead of the GBMPlatform to remove the dependency from the mg::Platform interface - this way we can use the GBMBufferAllocator with the NativeGBMPlatform (nested mir). [ Ubuntu daily release ] * Automatic snapshot from revision 1025 mir (0.0.10+13.10.20130827-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Allow the Mir server socket to be set with the MIR_SOCKET enviroment variable. [ Ubuntu daily release ] * Automatic snapshot from revision 1019 mir (0.0.10+13.10.20130826.1-0ubuntu1) saucy; urgency=low [ Christopher James Halse Rogers ] * Fix server-side tracking of client buffers When the server knows the client has a given buffer cached it only needs to send the BufferID rather than the full IPC package. While this is an optimisation, it's also required for correctness - the client will not clean up fds for buffers it has cached, so if the server sends a full IPC package for a buffer the client knows about any buffer fds leak. The buffer cache is per-surface on the client side, but was per-session on the server side. This meant that the server did not accurately track the client's buffers, resulting in it sending unexpected fds that the client then leaked. Fix this by making the buffer tracker per-surface server-side. [ Ubuntu daily release ] * Automatic snapshot from revision 1017 mir (0.0.10+13.10.20130826-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Fix uninitialized fields causing strange exceptions in some clients such as fingerpaint and multiwin since r991. (LP: #1215754) The uninitialized field output_id was only introduced in r991. Of course, giving it an invalid value should not cause such wacky exceptions. I'll log a bug to improve the error checking separately. (LP: #1215754) [ Ubuntu daily release ] * Automatic snapshot from revision 1015 mir (0.0.10-0ubuntu1) saucy; urgency=low * New release mir (0.0.9+13.10.20130825.1-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Disambiguate an exception message which could come from three places: Output has no associated crtc with more rich and meaningful information: Output <NAME> has no associated CRTC to <ACTION> on. [ Robert Carr ] * SessionMediator must hold only a weak reference to the session. (LP: #1195089) [ Ubuntu daily release ] * Automatic snapshot from revision 1012 mir (0.0.9+13.10.20130825-0ubuntu1) saucy; urgency=low [ Ricardo Mendoza ] * Add whitespace to prevent errors in non -fpermissive compilations. [ Ubuntu daily release ] * Automatic snapshot from revision 1009 mir (0.0.9+13.10.20130823.3-0ubuntu1) saucy; urgency=low [ Alan Griffiths ] * mir: std::hash support for mir::IntWrapper<> . [ Ubuntu daily release ] * Automatic snapshot from revision 1007 mir (0.0.9+13.10.20130823.2-0ubuntu1) saucy; urgency=low [ Ricardo Mendoza ] * * Implement lifecycle events interface. [ Ubuntu daily release ] * Automatic snapshot from revision 1005 mir (0.0.9+13.10.20130823.1-0ubuntu1) saucy; urgency=low [ Kevin DuBois ] * Send focus notifications to client. (LP: #1196744, #1192843, #1102757, #1201435) [ Robert Carr ] * Send focus notifications to client. (LP: #1196744, #1192843, #1102757, #1201435) [ Alan Griffiths ] * graphics: spike of NestedDisplayConfiguration. [ Ubuntu daily release ] * Automatic snapshot from revision 1003 mir (0.0.9+13.10.20130823-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * event_sender.cpp: I've never seen this before. So it should not have my name on it. [ Ubuntu daily release ] * Automatic snapshot from revision 1000 mir (0.0.9+13.10.20130822.1-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Revert the grey background. It's too visually intrusive while we don't yet have the ability to give a shell any control over compositing (and override GLRenderer::clear) like it should eventually have. (LP: #1215322). (LP: #1215322) [ Alan Griffiths ] * graphics: Fills in some more bits of NestedDisplay. [ Ubuntu daily release ] * Automatic snapshot from revision 998 mir (0.0.9+13.10.20130822-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * eglplasma: Don't include the alpha component in gradient calculations. We want the whole surface to be opaque. (LP: #1215285). (LP: #1215285) [ Ubuntu daily release ] * Automatic snapshot from revision 995 mir (0.0.9+13.10.20130821.1-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Make compositor::Scene lockable. This allows us to do multiple operations on a scene atomically using a nice simple: std::lock_guard<Scene> lock(scene); In the short term, this is required by the bypass branch. In the longer term it will also be useful if/when Scene gets an iterator. * Check a connection is valid (not NULL) before trying to dereference it. Such a NULL dereference led to worrying valgrind errors seen in LP: #1212516. (LP: #1212516) [ Alan Griffiths ] * graphics: hard-wire nested Mir to create an output for every host output. [ Alexandros Frantzis ] * Allow clients to specify the output they want to place a surface in. Only fullscreen placements are supported for now, but the policy is easy to change. This MP breaks the client API/ABI, so I bumped the client ABI version. I took this opportunity to rename some fields in MirDisplayConfiguration to improve consistency. . [ Ubuntu daily release ] * Automatic snapshot from revision 993 mir (0.0.9+13.10.20130821-0ubuntu1) saucy; urgency=low [ Brandon Schaefer ] * Release the mir surfaces when done in multiwin demo. * Clean up config->cards when were are deleting the display config. [ Alexandros Frantzis ] * server: Handle both user initiated and hardware display changes with MediatingDisplayChanger Enhance MediatingDisplayChanger to handle both user initiated display changes and hardware changes, by making it implement two interfaces for the two responsibilities (mg::DisplayChanger, mf::DisplayChanger). * shell: Notify sessions when the display configuration changes This patchset implements client notifications for display configuration changes. It also adds a mir_demo_client_display_config example which can be used to test and demo client initiated display configuration changes. Use of the example uncovered some issues that are also fixed by this patchset (see individual commits for more info). * shell: Add infrastructure for emitting and handling session related events. * shell: Support per-session display configurations This MP adds support for per-session display configurations, i.e., configurations that are active only when the client that submitted them has the focus. mir_connection_apply_display_config() now changes the session display configuration instead of the base/global one. [ Alan Griffiths ] * graphics::nested: sketch out some more of the nested mir implementation. * tests: Workaround for test timeout under valgrind. (LP: #1212518) * config: use the DisplayServer to hold ownership of system components, not the DefaultServerConfiguration. * graphics: Start on the NativePlatform interface. * graphics: Split the output state out of the NestedDisplay class. [ Daniel van Vugt ] * setup-android-dependencies.sh: Update for saucy flipped phablet images. * Give Mir a grey background by default, so you can see which monitors it is using. [ Eleni Maria Stea ] * graphics::nested: sketch out some more of the nested mir implementation. * nested_platform.cpp functions. [ Robert Carr ] * Pass session through placement strategy. [ Christopher James Halse Rogers ] * Add a little extra debugging API. * Add missing mutex around display config call. [ Ubuntu daily release ] * Automatic snapshot from revision 988 mir (0.0.9+13.10.20130813-0ubuntu1) saucy; urgency=low [ Daniel d'Andrada ] * Add mir_surface_type_inputmethod enum value. [ Ubuntu daily release ] * Automatic snapshot from revision 970 mir (0.0.9+13.10.20130812.4-0ubuntu1) saucy; urgency=low [ Alexandros Frantzis ] * server,client: Add type, preferred mode and max. simultaneous outputs information to the display configuration. [ Ubuntu daily release ] * Automatic snapshot from revision 968 mir (0.0.9+13.10.20130812.3-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * eglapp: Add sizing parameters: -f (fullscreen) and -s WxH (specific size). [ Alan Griffiths ] * frontend, examples, tests: provide a utility to adapt frontend::Surface to the graphics::InternalSurface interface. [ Ubuntu daily release ] * Automatic snapshot from revision 966 mir (0.0.9+13.10.20130812.2-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Remove apport hook - we're not installing it and libraries don't have hooks anyway. Apps that use libmirserver will have hooks (unity-system-compositor, unity-mir). (LP: #1204284) [ Alexandros Frantzis ] * protobuf: Pass a DisplayConfiguration submessage with the Connection. [ Ubuntu daily release ] * Automatic snapshot from revision 963 mir (0.0.9+13.10.20130812.1-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Fix libmirserver dependent packages requiring the exact version - it hadn't been updated for the soname change in revision 948. (LP: #1210811) [ Alan Griffiths ] * platform: workaround link errors on i386/g++ 4.8.1. (LP: #1208774) [ Ubuntu daily release ] * Automatic snapshot from revision 960 mir (0.0.9-0ubuntu1) saucy; urgency=low * New release mir (0.0.8+13.10.20130810-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Remove documentation on the system-compositor-testing PPA now everything is in main/universe in saucy. [ Kevin DuBois ] * Add an object for sending display config change messages to all connected clients (globally). [ Daniel van Vugt ] * Fix the compositor side of lag observed between input events and the screen. This is half the fix for LP: #1199450. The other half of the fix is to resolve client buffers arriving out of order, which has not been fully diagnosed but is known to be resolved by the "switch" branch. . (LP: #1199450) [ Ubuntu daily release ] * Automatic snapshot from revision 956 mir (0.0.8+13.10.20130809.4-0ubuntu1) saucy; urgency=low [ Michael Terry ] * Pass on the owning Session when creating Surfaces. (LP: #1200035) [ Ubuntu daily release ] * Automatic snapshot from revision 952 mir (0.0.8+13.10.20130809.3-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Simplify and generalize buffer swapping to support arbitrary numbers of: - buffers - compositors - clients This is a unified N-buffers algorithm which supports any positive number of buffers, as well as dynamically switching between synchronous and asynchronous behaviour. So it does everything the existing code does and more. The key requirement is to support an arbitrary number of (different) simultaneous compositor acquisitions, as is needed for bypass support (coming soon). This then leads to the requirement that a compositor and a snapshot buffer should be acquired differently. Because a snapshot should never consume frames, only observe them. On the other hand, a compositior acquire must consume a frame (if available) so as to guarantee correct ordering when more than one are acquired simultaneously in bypass mode. Also fixes LP: #1199717 and is half the fix for LP: #1199450. (LP: #1199450, #1199717) [ Alan Griffiths ] * doc, tools: update instructions for "flipped" image. [ Christopher James Halse Rogers ] * Split out unversioned Mir platform package to fix upgrades across libmirserver SONAME bumps. [ Ubuntu daily release ] * Automatic snapshot from revision 950 mir (0.0.8+13.10.20130808.2-0ubuntu1) saucy; urgency=low [ Alexandros Frantzis ] * gbm: Don't try to allocate buffers with unsupported formats. (LP: #1124948) [ Ubuntu daily release ] * Automatic snapshot from revision 946 mir (0.0.8+13.10.20130808.1-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * VT switch on alt+ctrl+Fn. * Add missing iostream import. This was accidentally removed in revision 939. Local builds and CI builds both seem to have treated this as a warning; debian package builds as an error. Fixes packaging builds. [ Robert Carr ] * Add an interface by which the shell may be notified of and interfere with surface configuration requests. [ Alexandros Frantzis ] * Bring back revision 931 with a fix for the crash it caused (LP: #1209053). (LP: #1209053) * examples: Quit the example servers and standalone programs when Ctrl+Alt+Backspace is pressed. [ Maarten Lankhorst ] * Re-introduce console support, and ignore control characters. (LP: #1102756, #1195509) [ Ubuntu daily release ] * Automatic snapshot from revision 944 mir (0.0.8+13.10.20130807.3-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * platform: Install and use mirplatform headers. (LP: #1209104) [ Daniel van Vugt ] * Revert r931. It is causing instant and widespread crashes (LP: #1209053). (LP: #1209053) [ Alan Griffiths ] * platform: remove spurious ${MIR_COMMON_PLATFORM_LIBRARIES}. * platform: Install and use mirplatform headers. (LP: #1209104) [ Christopher James Halse Rogers ] * Fix multihead API usage in EGL example clients. [ Ubuntu daily release ] * Automatic snapshot from revision 937 mir (0.0.8+13.10.20130807.1-0ubuntu1) saucy; urgency=low [ Kevin DuBois ] * Add support for sending display change events to the client to the api/protocol. [ Ricardo Salveti de Araujo ] * Just use libhardware instead of libhybris when building mir (avoid conflicts with egl/gles) . [ Alan Griffiths ] * graphics: Split off platform abstraction as a shared library. * graphics: Split off platform abstraction as an LGPL shared library. [ Alexandros Frantzis ] * display_server: Don't configure the display while the display server is paused Don't configure the display while the display server is paused. Postpone the configuration until the display server resumes. * server: Make EventFilter customization easier. [ Ubuntu daily release ] * Automatic snapshot from revision 932 mir (0.0.8+13.10.20130806-0ubuntu1) saucy; urgency=low [ Kevin DuBois ] * Add protobuf message and api for requesting display configuration change. Requests to change the display are authorized by the shell authorizer . [ Alan Griffiths ] * 1. establish a MirConnection during the NestedPlatform initialization 2. check that the socket filename that is used by the nested mir to accept connections is not the same with the host mir's socket filename 3. release the connection when the NestedPlatform is deleted. [ Eleni Maria Stea ] * 1. establish a MirConnection during the NestedPlatform initialization 2. check that the socket filename that is used by the nested mir to accept connections is not the same with the host mir's socket filename 3. release the connection when the NestedPlatform is deleted. [ Colin Watson ] * The upcoming arm64 architecture is called arm64, not armel64. [ Alexandros Frantzis ] * gbm,compositor: Misc multimonitor related fixes. (LP: #1208354) [ Ubuntu daily release ] * Automatic snapshot from revision 925 mir (0.0.8+13.10.20130803-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * fingerpaint: Paint on single clicks, and not just drags. This helps in testing input/buffer lag issues ;). [ Robert Carr ] * Replace SingleVisibilityFocusMechanism with a simpler and more flexible mechanism based around raising the surface. * Do not target hidden surfaces for pointer events. [ Alan Griffiths ] * graphics: Break the dependency of graphics platforms on MainLoop. [ Christopher James Halse Rogers ] * Fix mir_connection_get_display_info There's no guarantee that config->displays[0] will be valid, and indeed it's always invalid in all my tests. This causes a segfault when trying to dereference the current mode of an inactive display. [ Ubuntu daily release ] * Automatic snapshot from revision 920 mir (0.0.8+13.10.20130802-0ubuntu1) saucy; urgency=low [ Daniel van Vugt ] * Fix crashing demo clients, since the introduction of multimonitor. (LP: #1207145). (LP: #1207145) * tools/install_on_android.sh: Don't upload to/test in Android directories. We don't need to now that the phablet images are flipped. /tmp is much safer. Also don't hardcode a particular ABI (which was wrong). . [ Alan Griffiths ] * graphics, compositor: Move compositor/buffer_properties.h and compositor/graphic_buffer_allocator.h to graphics. * graphics, compositor: Move buffer_ipc_packer.h to graphics. * graphics/gbm: negate negative error codes returned by drm so they can be interpreted by boost. [ Alexandros Frantzis ] * examples: Add option to specify the display configuration policy to use We offer three display configuration policies to all the examples that use configurations based on mir::example::ServerConfiguration: 1. clone (default) 2. sidebyside (outputs are placed side-by-side in the virtual space, in increasing connector id order) 3. single (only the first, in connector id order, is used). [ Ubuntu daily release ] * Automatic snapshot from revision 914 mir (0.0.8+13.10.20130801-0ubuntu1) saucy; urgency=low [ Kevin DuBois ] * connect multi-display info from the display, to the client by improving SessionMediator. * prepare for global event sending (like display resizing) by separating the ability to send messages into distinct classes that is used in the client request service loops clean up constructors that aren't used, functions that aren't needed as well. [ Robert Carr ] * Support monitor input channels for the shell. [ Eleni Maria Stea ] * stub Platform functions to NestedPlatform replaced create_nested_platform with a call to the NestedPlatform constructor in the default_server_configuration.cpp. [ Alexandros Frantzis ] * gbm: Handle the cursor properly with multiple monitors. [ Ubuntu daily release ] * Automatic snapshot from revision 907 mir (0.0.8+13.10.20130731.2-0ubuntu1) saucy; urgency=low [ Dmitrijs Ledkovs ] * Use explicit boost-dev packages. [ Alexandros Frantzis ] * gbm: Support non-cloned display configurations. [ Thomas Voß ] * Adjust documentation to account for lightdm/packaging changes. * Don't make Mir become a process group leader, to avoid CTRL-C killing the X server. [ Alan Griffiths ] * test_framework: Provide boost exception diagnostics. * graphics: Remove use of frontend::Surface from graphics interface & implementation. [ Daniel van Vugt ] * Don't run Android commands which are no longer valid in flipped phablet images. They will only kill your connection to the device. (LP: #1206369). (LP: #1206369) * Fix documentation to suit the new "flipped" phablet images. Also remove extraneous comment which could cause copy/paste mistakes. [ Eleni Maria Stea ] * mir option --nested-mode <host-socket>. * added a native platform interface in include/server/mir/graphics/native_platform.h added a new static library for the nested platform added some stub create_native_platform and create_nested_platform functions to be called when mir runs in nested mode. [ Ubuntu daily release ] * Automatic snapshot from revision 901 mir (0.0.8+13.10.20130730-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Use the soname in the filename of all the public libraries. Explicityly set soname for libmirserver and libmirprotobuf. [ Daniel van Vugt ] * Separate MockBufferAllocator for reuse in other test cases. * Silence noisy integration tests (Uninteresting mock function calls) (LP: #1192618). (LP: #1192618) * Distinguish between a buffer locked for composition vs snapshotting. The difference will become very important with the introduction of bypass. Stay tuned. [ Alexandros Frantzis ] * graphics, shell: move GLPixelBuffer to shell. * compositor: Introduce and use a different DisplayBufferCompositor object per non-cloned output. * geometry: Use an closed-open representation for Rectangle end points. [ Thomas Voß ] * Adjust the Process class to correctly trace child processes. This should help a lot in avoiding/diagnosing races on armhf. [ Kevin DuBois ] * expand client api so that multiple MirDisplayInfo can be returned for multimonitor situations. * add a function to the client api to query the possible formats to create a surface with. * client: decouple MirConnection from MirEvent a bit. stop two-step initialization of the client rpc channel. [ Robert Carr ] * Add surface lifecycle notification to the session listener. * Build test_android_input_registrar.cpp. [ Alan Griffiths ] * graphics, shell: move GLPixelBuffer to shell. [ Maarten Lankhorst ] * Fixes LP: #1195509. (LP: #1195509) [ Ubuntu daily release ] * Automatic snapshot from revision 890 mir (0.0.8-0ubuntu1) saucy; urgency=low * New release mir (0.0.7+13.10.20130721ubuntu.unity.next-0ubuntu1) saucy; urgency=low [ Robert Ancell ] * Update debian/copyright for 3rd_party files. (LP: #1194073) * update to xmir instructions. * Put demos back into bin, not libexec. It's confusing, conflicts with the documentation and makes it harder to run them. * Add some XMir diagnostic and recovery documentation. * Update docs to refer to saucy, not raring. * Display command line options error when failed. * Remove dead tag code in SessionManager. * Remove dead code in ProtobufSocketCommunicator. * Releasing 0.0.6 * Close the platform file descriptors on destruction of MirConnection. (LP: #1198022) * Remove libancilliary and implement required functionality directly. * add xmir guide to debug. * Only use a DRM device if it has connections. (LP: #1197708) * Add instructions on how to compile Mesa and X.Org with Mir support. (LP: #1193261) [ Jussi Pakkanen ] * Explicitly create output directory before running custom command. [ Alexandros Frantzis ] * graphics: Implement GLBufferPixels to extract buffer pixels using GL. * lttng: Install tracepoint provider libraries in private lib subdirectory. * surfaces: Fix Surface::flag_for_render() Fixes lp:1195105. (LP: #1195105) * compositor: Manage the rendering target properly in the compositing threads. * shell: Implement Session::take_snapshot() method. * graphics: Add Display::configure() method. * server: Support handlers for file descriptors in MainLoop. * graphics: Reconfigure the Display when the display configuration changes. * tests: Fix race condition in MockDRM leading to memory errors Previously, because we allocated and returned memory in two step, using a unique storage point to hold the allocated memory, there was the potential for memory errors (e.g. double frees) in multithreaded tests (like drm_close_not_called_concurrently_on_ipc_package_destruction). (LP: #1197408) * server: Make symbols of loaded SharedLibraries available globally. * gbm: Provide different functions for validating server and client Mesa EGL native displays. (LP: #1177902) * gbm: Update mesa egl native display validation function names Update mesa egl native display validation function names to match the ones used by Mesa. * graphics: Introduce a DisplayConfigurationPolicy to set up DisplayConfigurations. * geometry: Add Rectangles class to hold a collection of rectangles. * android: Separate Display and DisplayBuffer implementations. * graphics: Fall back to reading RGBA pixel data in GLPixelBuffer if BGRA is not supported. * Replace ViewableArea with more fitting interfaces. [ Eleni Maria Stea ] * minor fix of typo in the example: mir_client_accelerated. * fixed invalid C++ code, which was using a non-standard gcc language extension, for named initialization of structure elements. [ Stephen M. Webb ] * disable running the integration test suite on arm architecture during the packaging builds (lp: #1195265). (LP: #1195265, #1195260) [ Didier Roche ] * lttng: Install tracepoint provider libraries in private lib subdirectory. * build-dep on valgrind as it's used in integration tests. (LP: #1195265) * only build on archs we support. * Don't build on powerpc. * Disable unity armhf tests, they are failing the armhf build on buildds. [ Kevin DuBois ] * unify advance_client_buffer and client_buffer() interfaces on ms::Surface. change the ms::Surface class so that it does not hold the client resource on behalf of the clients, the frontend or native windows do. * android drivers have an interface for the drivers to obtain a strong reference to the native window type. Allow the drivers to acquire this strong reference to the buffer backing their texture/fbo. * Activate sending a "swapinterval" signal over IPC. Add client api for software clients to request different swapintervals. (eglSwapInterval is not glued together just yet) Currently only swapinterval of 0 or 1 is supported. (LP: #1130553) * link eglSwapInterval hook in gbm driver to the ipc message to enable swapinterval0. This makes eglSwapInterval (1) or (0) work for gbm ipc clients only. * fix: lp:1196647 (test bug results in crash in android unit tests) bug was just in test code on android. (LP: #1196647) * fix: lp1192742 by cleaning up FD's when an android client unregisters its native_handle_t. (LP: #1192742) * saucy's default boost version is 1.53, yet the cross compile script was still on 1.49. switch script to 1.53. * begin cleanup of ms::Surface by breaking "ms::Surface : public mi::SurfaceTarget" inheritance the input system was using the surface object (specifically the std::weak_ptr<mi::SurfaceTarget> to the ms::Surface) as its 'key' for coordinating the surfaces. This bound the input system tightly to the surface stack, which prevented any proxying of ms::Surface and made the lifetime of ms::Surface tangled. This change breaks this dependency by making ms::Surface own an InputChannel, instead of it being a SurfaceTarget. * remove google mock from the internal source tree. Rather, use the google-mock package and build the source externally. (LP: #1185265, #1194017) * disable running the integration test suite on arm architecture during the packaging builds (lp: #1195265). (LP: #1195265, #1195260) * break ms::Surface : public mg::Renderable dependency, paving the way for a more sensible interface surrounding our ms::Surface object. Also ensure that graphics data is maintained synchronously. Remove most state from ms::Surface. * fixes: lp:1200782 by freeing fd's associated with buffer package. (LP: #1200782) [ Kevin Gunn ] * this is to change the doc's fpr preinstalled binaries to reference using the system-compositor-testing ppa. * update to xmir instructions. * add xmir guide to debug. [ Alan Griffiths ] * graphics, config: Dynamically load the graphics platform. * config: allow graphics platform library to be selected by command- line/config. (LP: #1118909) * docs: A move towards house style for the webpages. * Make gmock and umockdev dependencies of the tests, clean up, and make not building tests an option. (LP: #1196987) * client: remove some unnecessary memory allocation, copying and threading. * frontend: Guard SessionMediator::session against race conditions. * frontend: remove redundant and misleading comment. * frontend: cut down memory allocations by pre-allocating and reusing buffers. * geometry: more tractable construction of objects. (LP: #1199756) * tests: rework test to prevent test input events being missed before handler is registered. (LP: #1200236) * geometry: make geometry compound types easier to construct. (LP: #1199756) * doc: use house font and colors for coding guidelines. * mir: Simpler IntWrapper that doesn't need type tags upfront. * graphics, conpositor: Move dependencies of graphics platform into graphics. * graphics: Delete unused file - include/server/mir/graphics/framebuffer_backend.h. * graphics, compositor: Move the rendering interfaces and code to compositor. * graphics, compositor: move BufferBasic to graphics. * graphics::gbm: delete unused headers. [ Christopher James Halse Rogers ] * Improve GBM platform's device probing, by actually making it probe devices. * Fix clearly-broken code, for which clang produced deliberately broken output. * Fix two issues caught by Clang's static analyser. * I like clang's error messages. Let's keep Mir building on clang. * Make libmirclient not aggressively signal-unsafe by blocking signals on our IO thread. Fixes infinite loop in XMir (LP: #1199319). (LP: #1199319) * Document XMir drivers too. [ Sebastien Bacher ] * Small copyright fixes (lp: #1195647). (LP: #1195647) [ Daniel van Vugt ] * Cache the transformation matrix; only recalculate it when some part of the transformation changes. (LP: #1193020) . (LP: #1193020) * Don't pass a clang-only option to gcc. It will not understand and cause build failure (LP: #1194385). (LP: #1194385) * Fix build failure due to differing exception specifiers. noexcept destructors should be enforced in derived classes if the base uses them. (LP: #1194703). (LP: #1194703) * Document thread safety pitfalls about client-side callbacks. . * Fix mismatched destructor exception specifiers causing build failure in gcc 4.7. Also fix struct/class mismatches that some compilers will treat as an error. (LP: #1196415). (LP: #1196415) * mir_demo_client_unaccelerated: Add an FPS count, and a "-n" option to disable vsync (set swap interval to 0). * mir_demo_client_egl*: Add a "-n" option to disable syncing to vblank (hence to use swap interval == 0). * Initial attempts at making the Mir client API thread safe. Ordinarily you would not build locking into an API, however the fact that Mir clients implicitly get multiple threads created for them makes it important for the API itself to be automatically thread safe. I've tried to avoid API changes, but adding a new function: mir_wait_for_one was necessary. This is because mir_wait_for doesn't work if multiple threads are waiting on the same thing simultaneously. And the fact that waiting at all is optional means we can't change the behaviour of mir_wait_for -- it must always wait for all outstanding results (which is only safe in clients where the waiting happens in a single thread). . * Work around GCC issue 50043 which is causing build failures on raring. (LP: #1199210) The gcc bug is only fixed in 4.8/saucy. (LP: #1199210) * MockDisplayConfigurationPolicy: Work around gcc-4.7 bugs causing build failure on raring. (LP: #1200064). (LP: #1200064) * Another workaround for gcc-4.7 bugs causing build failure. (LP: #1200107). (LP: #1200107) * buffer_swapper_spin.h: Remove dead code: initialize_queues. * Remove unused interface surfaces::GraphicRegion It became unused when Kevin's work landed in r856 yesterday. . * Rename compositor::Renderables --> compositor::Scene What is a "Renderables"? It's the interface by which we know the scene graph, or the model of how all the surfaces relate to each other. Right, then call it a scene graph... but the word "graph" might imply a particular structure. And we don't want to imply such things in an interface. So just call it "scene". That makes slightly more sense than imagining what a "Renderables" (singular) is. * Fix comments which mention incorrect namespaces for Buffer following yesterday's landings. [ Ricardo Mendoza ] * Fix broken tests/unit- tests/client/android/test_client_android_registrar.cpp due to unused return value. [ Thomas Voß ] * Wait for vt to become active if we need to activate it. * Remove disabling asio's epoll reactor implementation from the package build flags. * Introduce cmake options to be able to selectively switch acceptance, integration and unit tests on/off. (LP: #1195265) [ Thomi Richards ] * Remove workaround for bug #1198022. (LP: #1198022) [ Robert Carr ] * Add raise method to surface stack. * Remove cucumber and all references. (LP: #1194075) * Add support for shaped input regions. * Store MirMotionAction as integer due to usage of extra bits by android input stack. (LP: #1197108) * Fix obscurance of touch events according to stacking. * Extract DefaultServerConfiguration::the_cursor_listener from DefaultServerConfiguration::the_input_configuration. (LP: #1192916) * Implement a connection authorization mechanism. * Correct test_surface_stack.cpp ordering tests. * Move the DepthId in surface creation to msh::SurfaceCreationParameters. [ Ubuntu daily release ] * Automatic snapshot from revision 874 (ubuntu-unity/next) mir (0.0.7-0ubuntu1) saucy; urgency=low * New release mir (0.0.6-0ubuntu1) saucy; urgency=low * New release mir (0.0.5-0ubuntu1) saucy; urgency=low * Misc a numerous package fixes. * Automatic snapshot from revision 766 (bootstrap) mir (0.0.4-0ubuntu1) raring; urgency=low * change mesa header to clean up the file and add swapinterval 0 hook mir (0.0.3-0ubuntu1) raring; urgency=low [ Bryce Harrington ] * Add apport hook, source_mir.py mir (0.0.2-0ubuntu2) raring; urgency=low * Put mir in split mode mir (0.0.2-0ubuntu1) raring; urgency=low * New upstream release * debian/control: - libmirclient-demos breaks older version of mir mir (0.0.1-0ubuntu1) quantal; urgency=low * Initial release -- Alberto Aguirre <email address hidden> Thu, 05 Nov 2015 21:54:17 +0000
Upload details
- Uploaded by:
- Alberto Aguirre
- Sponsored by:
- CI Train Bot Account
- Uploaded to:
- Xenial
- Original maintainer:
- Ubuntu Developers
- Architectures:
- any all
- Section:
- x11
- Urgency:
- Medium Urgency
See full publishing history Publishing
Series | Published | Component | Section |
---|
Downloads
File | Size | SHA-256 Checksum |
---|---|---|
mir_0.17.1+16.04.20151105.1.orig.tar.gz | 1.6 MiB | 8fa76e716e097e7df001e410f19f9efcd3f82a65b62c308c87d66421603d2a50 |
mir_0.17.1+16.04.20151105.1-0ubuntu1.diff.gz | 56.0 KiB | c24b3d1933f33e2343def8a47497e7577dc6620e5c20c938e0191bbd4b9061fc |
mir_0.17.1+16.04.20151105.1-0ubuntu1.dsc | 4.7 KiB | ec9a05562fa38c61ce67eb67d333bba989526b6b9a555a1ba2917a66446f8fe9 |
Available diffs
Binary packages built by this source
- libmirclient-debug-extension-dev: Display server for Ubuntu - client debug interface headers
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package contains both a shared library containing the client side of
various optional debugging interfaces and the development headers required
to use them.
.
This is primarily useful for developing Mir servers, low-level client
toolkits, or for automated testing in constrained environments.
.
Not all Mir servers have the capability to service these APIs; end-user
applications SHOULD NOT depend on this library.
.
This package contains the development headers required to develop against
the debug extensions.
- libmirclient-debug-extension1: Display server for Ubuntu - optional client debug interfaces
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package contains both a shared library containing the client side of
various optional debugging interfaces and the development headers required
to use them.
.
This is primarily useful for developing Mir servers, low-level client
toolkits, or for automated testing in constrained environments.
.
Not all Mir servers have the capability to service these APIs; end-user
applications SHOULD NOT depend on this library.
- libmirclient-debug-extension1-dbgsym: debug symbols for package libmirclient-debug-extension1
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package contains both a shared library containing the client side of
various optional debugging interfaces and the development headers required
to use them.
.
This is primarily useful for developing Mir servers, low-level client
toolkits, or for automated testing in constrained environments.
.
Not all Mir servers have the capability to service these APIs; end-user
applications SHOULD NOT depend on this library.
- libmirclient-dev: Display server for Ubuntu - development headers
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files required to develop against Mir.
- libmirclient9: Display server for Ubuntu - client library
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared library needed by client applications for Mir.
- libmirclient9-dbgsym: debug symbols for package libmirclient9
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared library needed by client applications for Mir.
- libmircommon-dev: Display server for Ubuntu - development headers
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files required for server and/or client development.
- libmircommon5: Display server for Ubuntu - shared library
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared libraries required for the Mir server and client.
- libmircommon5-dbgsym: debug symbols for package libmircommon5
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared libraries required for the Mir server and client.
- libmircookie-dev: Produce and verify spoof-resistant timestamps - development headers
libmircookie provides a simple mechanism for a group of cooperating processes
to hand out and verify difficult-to-forge timestamps to untrusted 3rd parties.
.
This package contains the development headers for building programs that
generate or verify the attestable timestamps.
- libmircookie1: No summary available for libmircookie1 in ubuntu xenial.
No description available for libmircookie1 in ubuntu xenial.
- libmircookie1-dbgsym: No summary available for libmircookie1-dbgsym in ubuntu xenial.
No description available for libmircookie1-
dbgsym in ubuntu xenial.
- libmirplatform-dev: Display server for Ubuntu - development headers
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files required for hardware/driver support development.
- libmirplatform11: Display server for Ubuntu - platform library
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared libraries required for the Mir server to interact with
the underlying hardware platform.
- libmirplatform11-dbgsym: debug symbols for package libmirplatform11
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared libraries required for the Mir server to interact with
the underlying hardware platform.
- libmirprotobuf3: Display server for Ubuntu - RPC definitions
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared library containing the Google Protobuf definitions
required for Mir clients and servers.
- libmirprotobuf3-dbgsym: debug symbols for package libmirprotobuf3
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains the shared library containing the Google Protobuf definitions
required for Mir clients and servers.
- libmirserver-dev: Display server for Ubuntu - development headers
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files required to build Mir servers.
- libmirserver35: No summary available for libmirserver35 in ubuntu xenial.
No description available for libmirserver35 in ubuntu xenial.
- libmirserver35-dbgsym: No summary available for libmirserver35-dbgsym in ubuntu xenial.
No description available for libmirserver35-
dbgsym in ubuntu xenial.
- mir-client-platform-android3: No summary available for mir-client-platform-android3 in ubuntu xenial.
No description available for mir-client-
platform- android3 in ubuntu xenial.
- mir-client-platform-android3-dbgsym: No summary available for mir-client-platform-android3-dbgsym in ubuntu xenial.
No description available for mir-client-
platform- android3- dbgsym in ubuntu xenial.
- mir-client-platform-mesa-dev: Display server for Ubuntu - client platform library for Mesa development files
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files required to use the platform specific capabilities of
the Mir Mesa backend.
- mir-client-platform-mesa3: No summary available for mir-client-platform-mesa3 in ubuntu xenial.
No description available for mir-client-
platform- mesa3 in ubuntu xenial.
- mir-client-platform-mesa3-dbgsym: No summary available for mir-client-platform-mesa3-dbgsym in ubuntu xenial.
No description available for mir-client-
platform- mesa3-dbgsym in ubuntu xenial.
- mir-demos: Display server for Ubuntu - demonstration programs
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains demo applications that use the Mir display server
- mir-demos-dbgsym: debug symbols for package mir-demos
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains demo applications that use the Mir display server
- mir-doc: API documentation for mir
This package installs the mir API documentation.
- mir-graphics-drivers-android: Display server for Ubuntu - android driver metapackage
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package depends on a full set of graphics drivers for running Mir on top
of an existing Android driver stack.
- mir-graphics-drivers-desktop: Display server for Ubuntu - desktop driver metapackage
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package depends on a full set of graphics drivers for traditional desktop
systems.
- mir-platform-graphics-android6: No summary available for mir-platform-graphics-android6 in ubuntu xenial.
No description available for mir-platform-
graphics- android6 in ubuntu xenial.
- mir-platform-graphics-android6-dbgsym: No summary available for mir-platform-graphics-android6-dbgsym in ubuntu xenial.
No description available for mir-platform-
graphics- android6- dbgsym in ubuntu xenial.
- mir-platform-graphics-mesa-kms6: No summary available for mir-platform-graphics-mesa-kms6 in ubuntu xenial.
No description available for mir-platform-
graphics- mesa-kms6 in ubuntu xenial.
- mir-platform-graphics-mesa-kms6-dbgsym: No summary available for mir-platform-graphics-mesa-kms6-dbgsym in ubuntu xenial.
No description available for mir-platform-
graphics- mesa-kms6- dbgsym in ubuntu xenial.
- mir-platform-graphics-mesa-x6: No summary available for mir-platform-graphics-mesa-x6 in ubuntu xenial.
No description available for mir-platform-
graphics- mesa-x6 in ubuntu xenial.
- mir-platform-graphics-mesa-x6-dbgsym: No summary available for mir-platform-graphics-mesa-x6-dbgsym in ubuntu xenial.
No description available for mir-platform-
graphics- mesa-x6- dbgsym in ubuntu xenial.
- mir-platform-input-evdev3: No summary available for mir-platform-input-evdev3 in ubuntu xenial.
No description available for mir-platform-
input-evdev3 in ubuntu xenial.
- mir-platform-input-evdev3-dbgsym: No summary available for mir-platform-input-evdev3-dbgsym in ubuntu xenial.
No description available for mir-platform-
input-evdev3- dbgsym in ubuntu xenial.
- mir-renderer-gl-dev: Display server for Ubuntu - GL Renderer development files
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files that define the interfaces through which platforms and
renderers access the functionality needed to render with GL.
- mir-test-tools: Display Server for Ubuntu - stress tests and other test tools
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains a tool for stress testing the Mir display server
- mir-test-tools-dbgsym: debug symbols for package mir-test-tools
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains a tool for stress testing the Mir display server
- mir-utils: Display server for Ubuntu - utility programs
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains utility programs for probing and controling a Mir server.
- mir-utils-dbgsym: debug symbols for package mir-utils
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains utility programs for probing and controling a Mir server.
- mirtest-dev: Display server for Ubuntu - test development headers and library
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
Contains header files and static library for testing of server and/or client
development.
- python3-mir-perf-framework: Display server for Ubuntu - performance testing framework
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
.
This package contains a python3 framework to facilitate writing performance
tests for Mir. It also contains a few interesting performance tests written
using the framework.