Merge lp:~alan-griffiths/unity-system-compositor/compatibility into lp:unity-system-compositor

Proposed by Alan Griffiths
Status: Merged
Approved by: Alan Griffiths
Approved revision: 309
Merged at revision: 308
Proposed branch: lp:~alan-griffiths/unity-system-compositor/compatibility
Merge into: lp:unity-system-compositor
Diff against target: 83 lines (+18/-0)
3 files modified
tests/include/usc/test/mock_display.h (+5/-0)
tests/unit-tests/test_mir_input_configuration.cpp (+10/-0)
tests/unit-tests/test_session_switcher.cpp (+3/-0)
To merge this branch: bzr merge lp:~alan-griffiths/unity-system-compositor/compatibility
Reviewer Review Type Date Requested Status
Mir CI Bot continuous-integration Approve
Alan Griffiths Abstain
Brandon Schaefer (community) Approve
Cemil Azizoglu (community) Abstain
Stephen M. Webb (community) Approve
Review via email: mp+321076@code.launchpad.net

Commit message

Fix build against lp:mir (and Mir 0.26!)

To post a comment you must log in.
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:309
https://mir-jenkins.ubuntu.com/job/usc-ci/56/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-usc/79
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/4469
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/4459
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/4459
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=zesty/4459
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=xenial+overlay/83
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=xenial+overlay/83/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=zesty/83
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=zesty/83/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=armhf,release=vivid+overlay/83
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=armhf,release=vivid+overlay/83/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=xenial+overlay/83
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=xenial+overlay/83/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=zesty/83
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=zesty/83/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/usc-ci/56/rebuild

review: Approve (continuous-integration)
Revision history for this message
Stephen M. Webb (bregma) wrote :

WFM

review: Approve
Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

It would be more accurate to do

#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(0, 27, 0)
class StubMirSession : public mir::frontend::Session
#else
class StubMirSession : public mir::frontend::Session, public mir::frontend::SessionExtensions
#endif

review: Abstain
Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

>
> It would be more accurate to do
>
> #if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(0, 27, 0)
> class StubMirSession : public mir::frontend::Session
> #else
> class StubMirSession : public mir::frontend::Session, public
> mir::frontend::SessionExtensions
> #endif

I don't understand what that refers to.

review: Needs Information
Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

mir::frontend::Session has diverged (due to an API break we noticed in 0.26.1 silo) in 0.26.* from the trunk. We split the couple create_buffer() functions into another object we called mir::frontend::SessionExtensions.

So it'd be more correct for StubMirSession to be inheriting from both interfaces for Mir version < 0.27.

Revision history for this message
Brandon Schaefer (brandontschaefer) wrote :

Seems reasonable to me, if we need to address the above issue we can in a different branch

Revision history for this message
Brandon Schaefer (brandontschaefer) :
review: Approve
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Autolanding.
Approved revid is not set in launchpad. This is most likely a launchpad issue and re-approve should fix it. There is also a chance (although a very small one) this is a permission problem of the ps-jenkins bot.
https://mir-jenkins.ubuntu.com/job/usc-autolanding/24/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-usc/88
    None: https://mir-jenkins.ubuntu.com/job/generic-land-mp/1326/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/4549
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=zesty/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=xenial+overlay/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=xenial+overlay/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=zesty/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=zesty/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=armhf,release=vivid+overlay/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=armhf,release=vivid+overlay/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=xenial+overlay/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=xenial+overlay/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=zesty/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=zesty/92/artifact/output/*zip*/output.zip

review: Needs Fixing (continuous-integration)
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Autolanding.
More details in the following jenkins job:
https://mir-jenkins.ubuntu.com/job/usc-autolanding/24/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-usc/88
    FAILURE: https://mir-jenkins.ubuntu.com/job/generic-land-mp/1326/console
    None: https://mir-jenkins.ubuntu.com/job/generic-land-mp/1327/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/4549
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=zesty/4539
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=xenial+overlay/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=xenial+overlay/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=zesty/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=amd64,release=zesty/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=armhf,release=vivid+overlay/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=armhf,release=vivid+overlay/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=xenial+overlay/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=xenial+overlay/92/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=zesty/92
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-usc/arch=i386,release=zesty/92/artifact/output/*zip*/output.zip

review: Needs Fixing (continuous-integration)
Revision history for this message
Alan Griffiths (alan-griffiths) :
review: Abstain
Revision history for this message
Mir CI Bot (mir-ci-bot) :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'tests/include/usc/test/mock_display.h'
2--- tests/include/usc/test/mock_display.h 2016-11-09 18:13:05 +0000
3+++ tests/include/usc/test/mock_display.h 2017-03-27 14:52:53 +0000
4@@ -21,6 +21,7 @@
5
6 #include <mir/graphics/display.h>
7 #include <mir/graphics/virtual_output.h>
8+#include <mir/version.h>
9 #include <gmock/gmock.h>
10
11 namespace usc
12@@ -53,11 +54,15 @@
13
14 void resume() override {};
15
16+#if MIR_SERVER_VERSION < MIR_VERSION_NUMBER(0, 27, 0)
17 std::shared_ptr<mir::graphics::Cursor> create_hardware_cursor(
18 std::shared_ptr<mir::graphics::CursorImage> const&) override
19 {
20 return {};
21 };
22+#else
23+ std::shared_ptr<mir::graphics::Cursor> create_hardware_cursor() override { return {}; }
24+#endif
25
26 std::unique_ptr<mir::graphics::VirtualOutput> create_virtual_output(int, int) override
27 { return std::unique_ptr<mir::graphics::VirtualOutput>{}; }
28
29=== modified file 'tests/unit-tests/test_mir_input_configuration.cpp'
30--- tests/unit-tests/test_mir_input_configuration.cpp 2017-01-19 19:49:44 +0000
31+++ tests/unit-tests/test_mir_input_configuration.cpp 2017-03-27 14:52:53 +0000
32@@ -25,6 +25,11 @@
33 #include "mir/input/mir_keyboard_config.h"
34 #include "mir/input/mir_pointer_config.h"
35 #include "mir/input/mir_touchpad_config.h"
36+#include <mir/version.h>
37+
38+#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(0, 27, 0)
39+#include <mir/input/mir_touchscreen_config.h>
40+#endif
41
42 #include <gtest/gtest.h>
43 #include <gmock/gmock.h>
44@@ -54,6 +59,11 @@
45 ON_CALL(*this, capabilities()).WillByDefault(Return(this->caps));
46 }
47
48+#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(0, 27, 0)
49+ mir::optional_value<MirTouchscreenConfig> touchscreen_configuration() const { return {}; }
50+ void apply_touchscreen_configuration(MirTouchscreenConfig const&) {}
51+#endif
52+
53 mi::DeviceCapabilities caps;
54 };
55
56
57=== modified file 'tests/unit-tests/test_session_switcher.cpp'
58--- tests/unit-tests/test_session_switcher.cpp 2017-02-06 12:48:40 +0000
59+++ tests/unit-tests/test_session_switcher.cpp 2017-03-27 14:52:53 +0000
60@@ -20,6 +20,7 @@
61 #include "src/spinner.h"
62
63 #include "mir/frontend/session.h"
64+#include <mir/version.h>
65
66 #include <gtest/gtest.h>
67 #include <gmock/gmock.h>
68@@ -105,6 +106,7 @@
69 {
70 return {};
71 }
72+#if MIR_SERVER_VERSION >= MIR_VERSION_NUMBER(0, 27, 0)
73 mir::graphics::BufferID create_buffer(mir::geometry::Size, MirPixelFormat) override
74 {
75 return {};
76@@ -113,6 +115,7 @@
77 {
78 return {};
79 }
80+#endif
81 void destroy_buffer(mir::graphics::BufferID) override
82 {
83 }

Subscribers

People subscribed via source and target branches