Mir 0.1.3

Mir Holidays Edition 2013

Milestone information

Daniel van Vugt
Release registered:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata


Assigned to you:
No blueprints or bugs assigned to you.
2 Alan Griffiths, 3 Alexandros Frantzis, 1 Andreas Pokorny, 1 Chris Gagnon, 2 Chris Halse Rogers, 4 Daniel van Vugt, 2 Kevin DuBois
No blueprints are targeted to this milestone.
15 Fix Released

Download files for this release

After you've downloaded a file, you can verify its authenticity using its MD5 sum or signature. (How do I verify a download?)

File Description Downloads
download icon mir-0.1.3.tar.bz2 (md5, sig) Mir 0.1.3 source 53
last downloaded 68 weeks ago
Total downloads: 53

Release notes 

* Nested servers now work on desktop and Android, with some caveats: https://bugs.launchpad.net/mir/+bugs?field.tag=nested
* Surface resizing support is now complete and generates MirResizeEvent for clients.
(the above features require Mesa patches already found in Ubuntu trusty: https://launchpad.net/ubuntu/+source/mesa)
* Software buffers now use shared memory, for correctness, portability, and significantly increased performance.
* Lots of bug fixes and clean-ups.
* Mir server ABI bumped to 12. No client ABI change.


View the full changelog

* shell, frontend: Partial cleanup of the logic around advance_client_buffer()
* compositor: remove mc::OverlayRenderer
* compositor, shell: More cleanup of the logic around secure_client_buffer()
* Add a MirBool type to the client API so that client function declarations are more self-documenting and easier to understand.
* gbm: Add server side infrastructure for SHM buffer support
* clean up unit tests (ran under android) so there's no uninitialized value errors for the unit-tests/graphics/android tests, and make the tests run without gmock warning, unexpected call errors. (LP: #1172184)
* enables testing on armhf, does not run valgrind on unit-tests because it's currently failing
* compositor: improve mc::Renderer interface so it is not concerned with BufferS
tream state, just with posting a buffer using OpenGL.
* Add mir_event_type_resize / MirResizeEvent, allowing clients to react immediately to surface resizing. (LP: #1227744)
* graphics: android: enable legacy hook for turning display on and off in the FB device.
* gbm: Enable shared memory software buffers
* GBMDisplayTest: Timeout and fail the test rather than hanging indefinitely
* tests/gbm: Expect the correct number of udev notificiations
* android,gbm: Change license to LGPL-3 and move to src/platform.
* mir_demo_server_shell: Don't restart the compositor after turning the screen off. It will just start spinning unthottled (LP: #1255818) and generates worrying visuals (while bug 1231857 is also unresolved).
* Unify redundant PixelFormat typedefs into one: MirPixelFormat (LP: #1110115)
* tools: Use debootstrap to resolve the dependencies of Mir's build-dependencies, rather than maintaining a list of the full transitive dependency chain of all Mir's build-dependencies.
* mir_demo_server_shell: Add droid-friendly controls for power management (sleep using the power button).
* scene: remove one of the Surface classes (other Surface classes beware!)
* Split the InputTest client fixture out of test_client_input.cpp in to a mtf::InputTestingClientConfiguration utility class.
* gbm: Remove GBM/gbm prefix from classes and files
* scene: remove a session parameter we do not need nor want
* client: Remove GBM/gbm prefix from classes and files
* tests: disable test that exposes racy client API code (LP: #1245803).
* The code path to initialize nested display was going and opening up the display hardware functions (but not using them). This was causing problems because it meant older devices that can't open up the display hardware in more than one process were choking, and newer devices required 'video' group permissions to work. This changes things so that nested display doesn't access any display hardware (LP: #1258056)
* graphics, compositor, frontend: stop passing out shared_ptr to client buffer a
nd stick to a raw pointer.
* shell, scene: Make the annoying shell::SurfaceController private to scene.
* gbm: Rename gbm namespace to mesa.
* tools/setup-partial-armhf-chroot: Leave the chroot set up so the next build is fast.
* tests: some cleanup of test code prompted by tests failing on CI.
* remove pointless class, "SurfaceState".
* doc/building_source_for_android.md: Don't make armhf an implicit architecture for the cross-compiling host. We don't need to since we explicitly request download of armhf packages.
* tools: Don't try getting non-existent package 'android-platform-headers' (LP: #1261637)
* tests: Wait for server to really start up when running tests
* Logging: Add timestamps to log messages and change the prefix format to be more like that of kernel/Xorg logs.
* Logger: Don't use template parameters where only function parameters are needed.
* Move default_configuration.cpp out of libmirsharedlogging and into a new library libmirsharedenv where it makes more sense.
* tests: Use steady_clock to keep track of timeouts and intervals
* Fixes the build problem with the current chroot setup. This fixes Mir build failures (LP: #1262305).
* client: slim down the mcl::SurfaceMap interface.
* tests: test fixture to run an in-process Mir server.
* Tidy up output of logging::InputReport.
* nested: Check for, and prefer, EGL_KHR_surfaceless_context over dummy pbuffer surfaces. It seems that at least one of our Android stacks doesn't support EGL_KHR_surfaceless_context, and Mesa doesn't support pbuffer surfaces. Fixes nested on Mesa (LP: #1260635).
* test: separate concerns of stubbing server configuration for tests and cross process test synchronization. (LP: #1262754)

0 blueprints and 15 bugs targeted

Bug report Importance Assignee Status
1253876 #1253876 unit-tests hangs in GBMDisplayTest.drm_device_change_event_triggers_handler 2 Critical Chris Halse Rogers  10 Fix Released
1260635 #1260635 Nested servers fail to start on desktop: std::exception::what: Could not create egl surface 2 Critical Chris Halse Rogers  10 Fix Released
1261637 #1261637 cross-compile-chroot.sh fails [E: Couldn't find these debs: android-platform-headers] 2 Critical Daniel van Vugt  10 Fix Released
1262305 #1262305 Cross compiling fails with "error: '__uint64_t' does not name a type" 2 Critical Andreas Pokorny  10 Fix Released
1203004 #1203004 Tests disabled on armhf 3 High Chris Gagnon  10 Fix Released
1227744 #1227744 [enhancement] Resizable surfaces 3 High Daniel van Vugt  10 Fix Released
1245803 #1245803 Occasional acceptance-test FAIL: ClientPidTestFixture.authorizer_may_prevent_connection_of_clients 3 High Alan Griffiths  10 Fix Released
1248075 #1248075 Critical: Illegal type-casting of GBM buffers in clients 3 High Alexandros Frantzis  10 Fix Released
1249242 #1249242 Performance regression: mir_demo_client_flicker is skipping frames on desktop (GBM) 3 High Alexandros Frantzis  10 Fix Released
1258056 #1258056 nested mir on android fails on galaxy nexus 3 High Kevin DuBois  10 Fix Released
1262754 #1262754 Intermittent acceptance test failure in DemoInProcessServer.client_can_connect 3 High Alan Griffiths  10 Fix Released
1157196 #1157196 Mir does not work in vmware virtual machine due to drm open failure 4 Medium Alexandros Frantzis  10 Fix Released
1255818 #1255818 mir_demo_server_shell: On screen power off (Alt+P) rendering restarts immediately, and without any vsync. Severe tearing and fan noise ensues. 4 Medium Daniel van Vugt  10 Fix Released
1110115 #1110115 PixelFormat is in namespace "geometry" 5 Low Daniel van Vugt  10 Fix Released
1172184 #1172184 unit-tests are noisy 5 Low Kevin DuBois  10 Fix Released
This milestone contains Public information
Everyone can see this information.