Merge lp:~larryprice/libertine-scope/restructure into lp:libertine-scope

Proposed by Larry Price
Status: Merged
Approved by: Christopher Townsend
Approved revision: 61
Merged at revision: 53
Proposed branch: lp:~larryprice/libertine-scope/restructure
Merge into: lp:libertine-scope
Diff against target: 658 lines (+130/-115)
32 files modified
CMakeLists.txt (+35/-22)
README.md (+1/-12)
data/CMakeLists.txt (+2/-16)
data/libertine-scope.ini.in (+0/-7)
debian/control (+1/-1)
po/CMakeLists.txt (+11/-5)
po/POTFILES.in.in (+1/-1)
scope/CMakeLists.txt (+2/-0)
scope/apps/CMakeLists.txt (+28/-13)
scope/apps/action.cpp (+6/-5)
scope/apps/action.h (+1/-1)
scope/apps/applauncher.cpp (+1/-1)
scope/apps/blacklist.cpp (+1/-1)
scope/apps/config.h.in (+0/-1)
scope/apps/container.cpp (+1/-1)
scope/apps/container.h (+1/-1)
scope/apps/hidden_apps.cpp (+1/-1)
scope/apps/libertine-scope.ubuntu_libertine-scope.ini.in.in (+11/-0)
scope/apps/libertine.cpp (+2/-2)
scope/apps/preview.cpp (+2/-2)
scope/apps/query.cpp (+4/-4)
scope/apps/query.h (+3/-3)
scope/apps/scope.cpp (+5/-5)
scope/apps/scope.h (+1/-1)
tests/CMakeLists.txt (+1/-1)
tests/fake_container.h (+1/-1)
tests/fake_libertine.h (+1/-1)
tests/scopefixture.h (+1/-1)
tests/test_blacklist.cpp (+1/-1)
tests/test_hidden_apps.cpp (+1/-1)
tests/test_preview.cpp (+1/-1)
tests/test_query.cpp (+2/-2)
To merge this branch: bzr merge lp:~larryprice/libertine-scope/restructure
Reviewer Review Type Date Requested Status
Christopher Townsend Approve
Libertine CI Bot continuous-integration Approve
Review via email: mp+299981@code.launchpad.net

Commit message

Restructure libertine-scope in preparation for adding the store scope.

Description of the change

Restructure libertine-scope in preparation for adding the store scope.

Also verifying that everything compiles correctly on vivid+overlay.

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

PASSED: Continuous integration, rev:57
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/41/
Executed test runs:
    SUCCESS: https://jenkins.canonical.com/libertine/job/build/175
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=vivid+overlay,testname=default/136
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=xenial+overlay,testname=default/136
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=yakkety,testname=default/136
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=vivid+overlay,testname=default/136
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=xenial+overlay,testname=default/136
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=yakkety,testname=default/136
    None: https://jenkins.canonical.com/libertine/job/lp-generic-update-mp/138/console
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-0-fetch/178
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=vivid+overlay/163
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=xenial+overlay/163
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=yakkety/163
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/156
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/156/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/156
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/156/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/156
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/156/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/156
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/156/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/156
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/156/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/156
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/156/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/41/rebuild

review: Approve (continuous-integration)
58. By Larry Price

Merge

Revision history for this message
Libertine CI Bot (libertine-ci-bot) wrote :

PASSED: Continuous integration, rev:58
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/43/
Executed test runs:
    SUCCESS: https://jenkins.canonical.com/libertine/job/build/185
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=vivid+overlay,testname=default/145
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=xenial+overlay,testname=default/145
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=yakkety,testname=default/145
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=vivid+overlay,testname=default/145
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=xenial+overlay,testname=default/145
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=yakkety,testname=default/145
    None: https://jenkins.canonical.com/libertine/job/lp-generic-update-mp/144/console
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-0-fetch/188
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=vivid+overlay/173
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=xenial+overlay/173
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=yakkety/173
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/166
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/166/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/166
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/166/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/166
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/166/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/166
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/166/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/166
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/166/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/166
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/166/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/43/rebuild

review: Approve (continuous-integration)
Revision history for this message
Christopher Townsend (townsend) wrote :

This breaks Debian package installs. When installing the package, it puts the scope in /unity-scopes/libertine-scope which is obviously not where we want it:)

review: Needs Fixing
59. By Larry Price

Need to include GNUInstallDirs before using CMAKE_INSTALL_FULL_LIBDIR

Revision history for this message
Libertine CI Bot (libertine-ci-bot) wrote :

PASSED: Continuous integration, rev:59
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/44/
Executed test runs:
    SUCCESS: https://jenkins.canonical.com/libertine/job/build/187
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=vivid+overlay,testname=default/147
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=xenial+overlay,testname=default/147
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=yakkety,testname=default/147
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=vivid+overlay,testname=default/147
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=xenial+overlay,testname=default/147
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=yakkety,testname=default/147
    None: https://jenkins.canonical.com/libertine/job/lp-generic-update-mp/145/console
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-0-fetch/190
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=vivid+overlay/175
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=xenial+overlay/175
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=yakkety/175
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/168
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/168/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/168
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/168/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/168
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/168/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/168
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/168/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/168
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/168/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/168
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/168/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/44/rebuild

review: Approve (continuous-integration)
Revision history for this message
Christopher Townsend (townsend) wrote :

The icon is not found for the "Desktop Apps" scope when installing the Debian package.

review: Needs Fixing
60. By Larry Price

Installing icon in correct location

Revision history for this message
Libertine CI Bot (libertine-ci-bot) wrote :

PASSED: Continuous integration, rev:60
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/45/
Executed test runs:
    SUCCESS: https://jenkins.canonical.com/libertine/job/build/188
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=vivid+overlay,testname=default/148
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=xenial+overlay,testname=default/148
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=yakkety,testname=default/148
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=vivid+overlay,testname=default/148
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=xenial+overlay,testname=default/148
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=yakkety,testname=default/148
    None: https://jenkins.canonical.com/libertine/job/lp-generic-update-mp/146/console
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-0-fetch/191
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=vivid+overlay/176
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=xenial+overlay/176
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=yakkety/176
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/169
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/169/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/169
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/169/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/169
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/169/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/169
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/169/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/169
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/169/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/169
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/169/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/45/rebuild

review: Approve (continuous-integration)
Revision history for this message
Christopher Townsend (townsend) wrote :

Trying to hide or show an icon/app no longer works as expected.

The previous behavior would set the scope back to the main view. With this MP, it just stays in the preview and when going back to the main view, the icon is (sometimes) still there.

review: Needs Fixing
61. By Larry Price

Fixing canned queries which send show/hide back to main view

Revision history for this message
Libertine CI Bot (libertine-ci-bot) wrote :

PASSED: Continuous integration, rev:61
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/46/
Executed test runs:
    SUCCESS: https://jenkins.canonical.com/libertine/job/build/189
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=vivid+overlay,testname=default/149
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=xenial+overlay,testname=default/149
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=amd64,release=yakkety,testname=default/149
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=vivid+overlay,testname=default/149
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=xenial+overlay,testname=default/149
    SUCCESS: https://jenkins.canonical.com/libertine/job/test-0-autopkgtest/label=i386,release=yakkety,testname=default/149
    None: https://jenkins.canonical.com/libertine/job/lp-generic-update-mp/147/console
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-0-fetch/192
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=vivid+overlay/177
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=xenial+overlay/177
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-1-sourcepkg/release=yakkety/177
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/170
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=vivid+overlay/170/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/170
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=xenial+overlay/170/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/170
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=amd64,release=yakkety/170/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/170
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=vivid+overlay/170/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/170
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=xenial+overlay/170/artifact/output/*zip*/output.zip
    SUCCESS: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/170
        deb: https://jenkins.canonical.com/libertine/job/build-2-binpkg/arch=i386,release=yakkety/170/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://jenkins.canonical.com/libertine/job/lp-libertine-scope-ci/46/rebuild

review: Approve (continuous-integration)
Revision history for this message
Christopher Townsend (townsend) wrote :

Ok, good

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2016-06-28 18:52:06 +0000
3+++ CMakeLists.txt 2016-07-19 20:20:31 +0000
4@@ -1,4 +1,6 @@
5-cmake_minimum_required(VERSION 3.0)
6+cmake_minimum_required(VERSION 3.0.2)
7+cmake_policy(SET CMP0048 NEW)
8+
9 project(libertine-scope
10 VERSION 1.2
11 LANGUAGES CXX)
12@@ -24,40 +26,46 @@
13
14 # Search for our dependencies
15 include(GNUInstallDirs)
16-find_package(PkgConfig)
17+find_package(PkgConfig REQUIRED)
18 find_package(Intltool)
19 find_package(Qt5Core REQUIRED)
20-find_package(Qt5Gui REQUIRED)
21-
22-pkg_check_modules(SCOPE libunity-scopes>=0.6.0 REQUIRED)
23-pkg_check_modules(UAL ubuntu-app-launch-2>=0.5.0 REQUIRED)
24-pkg_check_modules(LIBERTINE libertine REQUIRED)
25+find_program(INTLTOOL_MERGE intltool-merge)
26+
27+# useful variables
28+set(APPS_LIB_DIR ${CMAKE_INSTALL_FULL_LIBDIR}/unity-scopes/libertine-scope/)
29+set(APPS_DATA_DIR ${CMAKE_INSTALL_FULL_DATADIR}/unity/scopes/libertine-scope/)
30+set(SCOPE_NAME "libertine-scope")
31+set(SCOPE_DISPLAY_NAME "Desktop Apps")
32+set(PACKAGE_NAME "libertine-scope.ubuntu_${SCOPE_NAME}")
33+option(CLICK_MODE "Installs to a contained location" off)
34+
35+add_definitions(-DSCOPE_NAME="${SCOPE_NAME}")
36+add_definitions(-DGETTEXT_PACKAGE="${SCOPE_NAME}")
37+
38+pkg_check_modules(SCOPE libunity-scopes>=1.0.0 REQUIRED)
39+pkg_check_modules(UAL ubuntu-app-launch-2>=0.9.0 REQUIRED)
40+pkg_check_modules(LIBERTINE libertine>=0.99 REQUIRED)
41
42 # Add our dependencies to the include paths
43 include_directories(
44 ${CMAKE_SOURCE_DIR}
45- ${CMAKE_SOURCE_DIR}/libertine-scope
46 ${SCOPE_INCLUDE_DIRS}
47 SYSTEM ${UAL_INCLUDE_DIRS}
48 ${LIBERTINE_INCLUDE_DIRS}
49 )
50
51-set(PACKAGE_NAME "libertine-scope.ubuntu")
52 set(APP ${PROJECT})
53
54 # Important project paths
55-# Use this SCOPE_INSTALL_DIR when building the debian
56-set(SCOPE_INSTALL_DIR ${CMAKE_INSTALL_FULL_LIBDIR}/unity-scopes/libertine-scope/)
57-# USE this when building the click
58-#set(SCOPE_INSTALL_DIR "/libertine-scope")
59+if (CLICK_MODE)
60+ set(SCOPE_INSTALL_DIR "/libertine-scope")
61+else()
62+ set(SCOPE_INSTALL_DIR ${CMAKE_INSTALL_FULL_LIBDIR}/unity-scopes/libertine-scope/)
63+endif(CLICK_MODE)
64+
65 set(SCOPE_NAME "libertine-scope")
66 set(GETTEXT_PACKAGE "${SCOPE_NAME}")
67
68-# If we need to refer to the scope's name or package in code, these definitions will help
69-add_definitions(-DPACKAGE_NAME="${PACKAGE_NAME}")
70-add_definitions(-DSCOPE_NAME="${SCOPE_NAME}")
71-add_definitions(-DGETTEXT_PACKAGE="${GETTEXT_PACKAGE}")
72-
73 # This command figures out the target architecture and puts it into the manifest file
74 execute_process(COMMAND dpkg-architecture -qDEB_HOST_ARCH
75 OUTPUT_VARIABLE CLICK_ARCH
76@@ -66,15 +74,20 @@
77
78 # Configure and install the click manifest and apparmor files
79 configure_file(manifest.json.in ${CMAKE_CURRENT_BINARY_DIR}/manifest.json)
80-install(FILES
81+if (CLICK_MODE)
82+ install(FILES
83+ ${CMAKE_CURRENT_BINARY_DIR}/manifest.json
84+ "libertine-scope.apparmor"
85+ DESTINATION "/")
86+else()
87+ install(FILES
88 ${CMAKE_CURRENT_BINARY_DIR}/manifest.json
89 "libertine-scope.apparmor"
90 DESTINATION ${SCOPE_INSTALL_DIR})
91-#Use this DESTINATION when building click
92-# DESTINATION "/")
93+endif()
94
95 # Add our main directories
96-add_subdirectory(libertine-scope)
97+add_subdirectory(scope)
98 add_subdirectory(data)
99 add_subdirectory(po)
100
101
102=== modified file 'README.md'
103--- README.md 2016-01-06 14:55:03 +0000
104+++ README.md 2016-07-19 20:20:31 +0000
105@@ -19,18 +19,7 @@
106 Testinmg the Scope
107 ------------------
108
109-To test the built scope, it needs to be be installed into a staging area first.
110-That's because the Unity test tools have rigid assumptions about the layout of various
111-installed data files, and the division between the sources and the built
112-artifacts that the CMake toolchain delivers do not meet those assumptions. SO
113-be it: installing into a staging area is no great hassle, but if you forget to
114-do it in your compile/install/run cycle you will meet with frustration.
115-
116 Without system installation, you can test the scope using the unity-scope-tool
117 package available in the Ubuntu archives.
118
119-Here's the typical build/install/test cycle.
120-
121- make install DESTDIR=/tmpstaging/
122- unity-scope-tool /tmp/staging/usr/local/lib/unity-scopes/libertine-scope/libertine-scope.ini
123-
124+ unity-scope-tool build/scope/apps/libertine-scope.ubuntu_libertine-scope.ini
125
126=== modified file 'data/CMakeLists.txt'
127--- data/CMakeLists.txt 2016-06-13 18:06:36 +0000
128+++ data/CMakeLists.txt 2016-07-19 20:20:31 +0000
129@@ -1,26 +1,12 @@
130 # Put the ini files in the build directory next to the scope
131 # .so file so that the test tools can find them.
132-intltool_merge_translations(
133- "libertine-scope.ini.in"
134- "${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}_${SCOPE_NAME}.ini"
135- ALL
136- UTF8
137-)
138-
139-# Install the scope ini files
140-install(
141- FILES
142- "${CMAKE_CURRENT_BINARY_DIR}/${PACKAGE_NAME}_${SCOPE_NAME}.ini"
143- DESTINATION
144- ${SCOPE_INSTALL_DIR}
145-)
146
147 # Install the scope images
148 install(
149 FILES
150- "icon.png"
151+ "apps.png"
152 DESTINATION
153- ${SCOPE_INSTALL_DIR}
154+ ${APPS_DATA_DIR}
155 )
156
157 install(
158
159=== renamed file 'data/icon.png' => 'data/apps.png'
160=== renamed file 'data/icon.svg' => 'data/apps.svg'
161=== removed file 'data/libertine-scope.ini.in'
162--- data/libertine-scope.ini.in 2016-07-15 19:52:28 +0000
163+++ data/libertine-scope.ini.in 1970-01-01 00:00:00 +0000
164@@ -1,7 +0,0 @@
165-[ScopeConfig]
166-_DisplayName=Desktop Apps
167-_Description=Surface and launch DEB-packaged X11-based applications.
168-Art=screenshot.png
169-Author=The Canonical Libertine Team <libertine-team@lists.launchpad.net>
170-Icon=icon.png
171-Keywords=apps
172
173=== modified file 'debian/control'
174--- debian/control 2016-05-04 14:37:57 +0000
175+++ debian/control 2016-07-19 20:20:31 +0000
176@@ -9,7 +9,7 @@
177 dh-translations,
178 google-mock,
179 intltool,
180- libunity-scopes-dev (>= 0.6.0),
181+ libunity-scopes-dev (>= 1.0.0),
182 liburl-dispatcher1-dev,
183 libubuntu-app-launch2-dev,
184 liblibertine-dev,
185
186=== modified file 'po/CMakeLists.txt'
187--- po/CMakeLists.txt 2016-06-28 17:15:54 +0000
188+++ po/CMakeLists.txt 2016-07-19 20:20:31 +0000
189@@ -5,9 +5,16 @@
190 GETTEXT_PACKAGE ${GETTEXT_PACKAGE}
191 )
192
193-intltool_install_translations(
194- GETTEXT_PACKAGE ${GETTEXT_PACKAGE}
195-)
196+if (CLICK_MODE)
197+ intltool_install_translations(
198+ ALL
199+ GETTEXT_PACKAGE ${GETTEXT_PACKAGE}
200+ )
201+else()
202+ intltool_install_translations(
203+ GETTEXT_PACKAGE ${GETTEXT_PACKAGE}
204+ )
205+endif(CLICK_MODE)
206
207 file(GLOB_RECURSE ALL_POFILES "*.po")
208
209@@ -15,5 +22,4 @@
210 SOURCES
211 POTFILES.in.in
212 ${GETTEXT_PACKAGE}.pot
213- ${ALL_POFILES}
214-)
215+ ${ALL_POFILES})
216
217=== modified file 'po/POTFILES.in.in'
218--- po/POTFILES.in.in 2016-02-27 03:27:46 +0000
219+++ po/POTFILES.in.in 2016-07-19 20:20:31 +0000
220@@ -1,2 +1,2 @@
221-[type: gettext/ini] data/libertine-scope.ini.in
222+[type: gettext/ini] scope/apps/libertine-scope.ubuntu_libertine-scope.ini.in.in
223 @GENERATED_POTFILES@
224
225=== added directory 'scope'
226=== added file 'scope/CMakeLists.txt'
227--- scope/CMakeLists.txt 1970-01-01 00:00:00 +0000
228+++ scope/CMakeLists.txt 2016-07-19 20:20:31 +0000
229@@ -0,0 +1,2 @@
230+# add_subdirectory(libertine-store)
231+add_subdirectory(apps)
232
233=== renamed directory 'libertine-scope' => 'scope/apps'
234=== modified file 'scope/apps/CMakeLists.txt'
235--- libertine-scope/CMakeLists.txt 2016-06-07 21:09:04 +0000
236+++ scope/apps/CMakeLists.txt 2016-07-19 20:20:31 +0000
237@@ -1,26 +1,25 @@
238-SET (CMAKE_AUTOMOC ON)
239+set (CMAKE_INCLUDE_CURRENT_DIR ON)
240+set (CMAKE_AUTOMOC ON)
241
242 pkg_check_modules(URL_DISPATCHER REQUIRED url-dispatcher-1)
243
244 # Find all the sources
245-file(GLOB_RECURSE
246- SCOPE_SOURCES
247+file(GLOB_RECURSE SCOPE_SOURCES
248 "*.cpp"
249 "*.h"
250 )
251
252-add_library(scope SHARED
253+add_library(apps SHARED
254 ${SCOPE_SOURCES}
255 )
256
257 include_directories(${URL_DISPATCHER_INCLUDE_DIRS})
258
259-target_link_libraries(scope
260+target_link_libraries(apps
261 ${SCOPE_LDFLAGS}
262 ${UAL_LDFLAGS}
263 ${LIBERTINE_LDFLAGS}
264 Qt5::Core
265- Qt5::Gui
266 ${URL_DISPATCHER_LIBRARIES}
267 )
268
269@@ -29,11 +28,27 @@
270 "${CMAKE_CURRENT_SOURCE_DIR}/config.h"
271 )
272
273-set_target_properties(scope
274+set_target_properties(apps
275 PROPERTIES
276- OUTPUT_NAME "${PACKAGE_NAME}_${SCOPE_NAME}"
277-)
278-install(TARGETS scope
279- LIBRARY DESTINATION ${SCOPE_INSTALL_DIR}
280-)
281-
282+ OUTPUT_NAME ${PACKAGE_NAME}
283+)
284+
285+install(TARGETS apps
286+ LIBRARY DESTINATION "${APPS_LIB_DIR}"
287+)
288+
289+set(APPS_INI_TARGET ${PACKAGE_NAME}.ini)
290+configure_file(
291+ ${APPS_INI_TARGET}.in.in
292+ ${APPS_INI_TARGET}.in
293+)
294+
295+add_custom_target(${APPS_INI_TARGET} ALL
296+ COMMENT "Merging translations into ${APPS_INI_TARGET}"
297+ COMMAND LC_ALL=C ${INTLTOOL_MERGE} -d -u ${CMAKE_SOURCE_DIR}/po ${APPS_INI_TARGET}.in ${APPS_INI_TARGET} >/dev/null
298+)
299+
300+install(
301+ FILES "${CMAKE_CURRENT_BINARY_DIR}/${APPS_INI_TARGET}"
302+ DESTINATION "${APPS_LIB_DIR}"
303+)
304
305=== modified file 'scope/apps/action.cpp'
306--- libertine-scope/action.cpp 2016-06-13 20:47:13 +0000
307+++ scope/apps/action.cpp 2016-07-19 20:20:31 +0000
308@@ -16,9 +16,9 @@
309 * Kyle Nitzsche <kyle.nitzsche@canonical.com>
310 */
311
312-#include "libertine-scope/action.h"
313-#include "libertine-scope/config.h"
314-#include "libertine-scope/hidden_apps.h"
315+#include "scope/apps/action.h"
316+#include "scope/apps/config.h"
317+#include "scope/apps/hidden_apps.h"
318 #include <unity/scopes/ActivationResponse.h>
319 #include <unity/scopes/CannedQuery.h>
320 #include <url-dispatcher.h>
321@@ -40,6 +40,7 @@
322 {
323 }
324
325+
326 usc::ActivationResponse
327 Action::activate()
328 {
329@@ -52,14 +53,14 @@
330 {
331 hidden_->add(QString::fromStdString(result()["app_id"].get_string()));
332
333- usc::CannedQuery cq(SCOPE_PKG + "_" + SCOPE_APP);
334+ usc::CannedQuery cq(SCOPE_PKG);
335 return usc::ActivationResponse(cq);
336 }
337 else if (action_id_ == "show")
338 {
339 hidden_->remove(QString::fromStdString(result()["app_id"].get_string()));
340
341- usc::CannedQuery cq(SCOPE_PKG + "_" + SCOPE_APP);
342+ usc::CannedQuery cq(SCOPE_PKG);
343 return usc::ActivationResponse(cq);
344 }
345 return usc::ActivationResponse(usc::ActivationResponse::Status::NotHandled);
346
347=== modified file 'scope/apps/action.h'
348--- libertine-scope/action.h 2016-06-13 20:47:13 +0000
349+++ scope/apps/action.h 2016-07-19 20:20:31 +0000
350@@ -19,7 +19,7 @@
351 #ifndef SCOPE_ACTION_H_
352 #define SCOPE_ACTION_H_
353
354-#include "libertine-scope/scope.h"
355+#include "scope/apps/scope.h"
356 #include <unity/scopes/ActionMetadata.h>
357 #include <unity/scopes/ActivationQueryBase.h>
358 #include <unity/scopes/ActivationResponse.h>
359
360=== modified file 'scope/apps/applauncher.cpp'
361--- libertine-scope/applauncher.cpp 2016-05-04 17:56:13 +0000
362+++ scope/apps/applauncher.cpp 2016-07-19 20:20:31 +0000
363@@ -14,7 +14,7 @@
364 * along with this program. If not, see <http://www.gnu.org/licenses/>.
365 */
366
367-#include "libertine-scope/applauncher.h"
368+#include "scope/apps/applauncher.h"
369 #include <ubuntu-app-launch/registry.h>
370
371
372
373=== modified file 'scope/apps/blacklist.cpp'
374--- libertine-scope/blacklist.cpp 2016-06-13 20:47:13 +0000
375+++ scope/apps/blacklist.cpp 2016-07-19 20:20:31 +0000
376@@ -13,7 +13,7 @@
377 * You should have received a copy of the GNU General Public License
378 * along with this program. If not, see <http://www.gnu.org/licenses/>.
379 */
380-#include "libertine-scope/blacklist.h"
381+#include "scope/apps/blacklist.h"
382
383 #include <QFile>
384 #include <QTextStream>
385
386=== modified file 'scope/apps/config.h.in'
387--- libertine-scope/config.h.in 2016-06-08 15:45:39 +0000
388+++ scope/apps/config.h.in 2016-07-19 20:20:31 +0000
389@@ -17,7 +17,6 @@
390 #define LIBERTINE_SCOPE_CONFIG_H_
391
392 const std::string SCOPE_PKG = "@PACKAGE_NAME@";
393-const std::string SCOPE_APP = "@SCOPE_NAME@";
394 const std::string ROOT_DEPT_ID = "root_dept";
395 const std::string HIDDEN_DEPT_ID = "hidden_dept";
396
397
398=== modified file 'scope/apps/container.cpp'
399--- libertine-scope/container.cpp 2016-05-04 17:56:13 +0000
400+++ scope/apps/container.cpp 2016-07-19 20:20:31 +0000
401@@ -14,7 +14,7 @@
402 * along with this program. If not, see <http://www.gnu.org/licenses/>.
403 */
404
405-#include "libertine-scope/container.h"
406+#include "scope/apps/container.h"
407
408
409 Container::
410
411=== modified file 'scope/apps/container.h'
412--- libertine-scope/container.h 2016-05-04 17:56:13 +0000
413+++ scope/apps/container.h 2016-07-19 20:20:31 +0000
414@@ -17,7 +17,7 @@
415 #define LIBERTINE_SCOPE_CONTAINER_H
416
417
418-#include "libertine-scope/applauncher.h"
419+#include "scope/apps/applauncher.h"
420 #include <string>
421 #include <vector>
422
423
424=== modified file 'scope/apps/hidden_apps.cpp'
425--- libertine-scope/hidden_apps.cpp 2016-06-14 13:07:51 +0000
426+++ scope/apps/hidden_apps.cpp 2016-07-19 20:20:31 +0000
427@@ -13,7 +13,7 @@
428 * You should have received a copy of the GNU General Public License
429 * along with this program. If not, see <http://www.gnu.org/licenses/>.
430 */
431-#include "libertine-scope/hidden_apps.h"
432+#include "scope/apps/hidden_apps.h"
433
434 #include <QFile>
435 #include <QTextStream>
436
437=== added file 'scope/apps/libertine-scope.ubuntu_libertine-scope.ini.in.in'
438--- scope/apps/libertine-scope.ubuntu_libertine-scope.ini.in.in 1970-01-01 00:00:00 +0000
439+++ scope/apps/libertine-scope.ubuntu_libertine-scope.ini.in.in 2016-07-19 20:20:31 +0000
440@@ -0,0 +1,11 @@
441+[ScopeConfig]
442+_DisplayName=@SCOPE_DISPLAY_NAME@
443+_Description=Surface and launch DEB-packaged X11-based applications.
444+Art=screenshot.png
445+Author=The Canonical Libertine Team <libertine-team@lists.launchpad.net>
446+Icon=@APPS_DATA_DIR@/apps.png
447+_SearchHint=Search apps
448+Keywords=apps
449+
450+[Appearance]
451+LogoOverlayColor=#ffffffff
452
453=== modified file 'scope/apps/libertine.cpp'
454--- libertine-scope/libertine.cpp 2016-06-04 20:23:12 +0000
455+++ scope/apps/libertine.cpp 2016-07-19 20:20:31 +0000
456@@ -14,8 +14,8 @@
457 * along with this program. If not, see <http://www.gnu.org/licenses/>.
458 */
459
460-#include "libertine-scope/libertine.h"
461-#include "libertine-scope/container.h"
462+#include "scope/apps/libertine.h"
463+#include "scope/apps/container.h"
464 #include <liblibertine/libertine.h>
465 #include <glib.h>
466
467
468=== modified file 'scope/apps/preview.cpp'
469--- libertine-scope/preview.cpp 2016-06-10 15:11:56 +0000
470+++ scope/apps/preview.cpp 2016-07-19 20:20:31 +0000
471@@ -14,8 +14,8 @@
472 * along with this program. If not, see <http://www.gnu.org/licenses/>.
473 */
474
475-#include "libertine-scope/preview.h"
476-#include "libertine-scope/config.h"
477+#include "scope/apps/preview.h"
478+#include "scope/apps/config.h"
479 #include <unity/scopes/PreviewReply.h>
480 #include <unity/scopes/Variant.h>
481 #include <unity/scopes/VariantBuilder.h>
482
483=== modified file 'scope/apps/query.cpp'
484--- libertine-scope/query.cpp 2016-07-15 19:52:28 +0000
485+++ scope/apps/query.cpp 2016-07-19 20:20:31 +0000
486@@ -14,10 +14,10 @@
487 * along with this program. If not, see <http://www.gnu.org/licenses/>.
488 */
489
490-#include "libertine-scope/query.h"
491-#include "libertine-scope/container.h"
492-#include "libertine-scope/config.h"
493-#include "libertine-scope/localization.h"
494+#include "scope/apps/query.h"
495+#include "scope/apps/container.h"
496+#include "scope/apps/config.h"
497+#include "scope/apps/localization.h"
498 #include <unity/scopes/CategorisedResult.h>
499 #include <unity/scopes/CategoryRenderer.h>
500 #include <unity/scopes/QueryBase.h>
501
502=== modified file 'scope/apps/query.h'
503--- libertine-scope/query.h 2016-06-14 16:49:24 +0000
504+++ scope/apps/query.h 2016-07-19 20:20:31 +0000
505@@ -16,9 +16,9 @@
506 #ifndef LIBERTINE_SCOPE_QUERY_H_
507 #define LIBERTINE_SCOPE_QUERY_H_
508
509-#include "libertine-scope/libertine.h"
510-#include "libertine-scope/blacklist.h"
511-#include "libertine-scope/hidden_apps.h"
512+#include "scope/apps/libertine.h"
513+#include "scope/apps/blacklist.h"
514+#include "scope/apps/hidden_apps.h"
515 #include <unity/scopes/ReplyProxyFwd.h>
516 #include <unity/scopes/SearchQueryBase.h>
517 #include <QStringList>
518
519=== modified file 'scope/apps/scope.cpp'
520--- libertine-scope/scope.cpp 2016-06-13 20:47:13 +0000
521+++ scope/apps/scope.cpp 2016-07-19 20:20:31 +0000
522@@ -13,12 +13,12 @@
523 * You should have received a copy of the GNU General Public License
524 * along with this program. If not, see <http://www.gnu.org/licenses/>.
525 */
526-#include "libertine-scope/scope.h"
527+#include "scope/apps/scope.h"
528
529-#include "libertine-scope/preview.h"
530-#include "libertine-scope/query.h"
531-#include "libertine-scope/action.h"
532-#include "libertine-scope/localization.h"
533+#include "scope/apps/preview.h"
534+#include "scope/apps/query.h"
535+#include "scope/apps/action.h"
536+#include "scope/apps/localization.h"
537 #include <sstream>
538 #include <url-dispatcher.h>
539 #include <QFile>
540
541=== modified file 'scope/apps/scope.h'
542--- libertine-scope/scope.h 2016-01-19 21:10:09 +0000
543+++ scope/apps/scope.h 2016-07-19 20:20:31 +0000
544@@ -16,7 +16,7 @@
545 #ifndef LIBERTINE_SCOPE_SCOPE_H_
546 #define LIBERTINE_SCOPE_SCOPE_H_
547
548-#include "libertine-scope/libertine.h"
549+#include "scope/apps/libertine.h"
550 #include <unity/scopes/PreviewQueryBase.h>
551 #include <unity/scopes/QueryBase.h>
552 #include <unity/scopes/ReplyProxyFwd.h>
553
554=== modified file 'tests/CMakeLists.txt'
555--- tests/CMakeLists.txt 2016-06-13 18:06:36 +0000
556+++ tests/CMakeLists.txt 2016-07-19 20:20:31 +0000
557@@ -11,7 +11,7 @@
558 )
559
560 target_link_libraries(${test_name}_exe
561- scope
562+ apps
563 Qt5::Core
564 gmock
565 gmock_main
566
567=== modified file 'tests/fake_container.h'
568--- tests/fake_container.h 2016-04-27 16:33:00 +0000
569+++ tests/fake_container.h 2016-07-19 20:20:31 +0000
570@@ -17,7 +17,7 @@
571 #define LIBERTINE_SCOPE_FAKE_CONTAINER_H_
572
573
574-#include "libertine-scope/container.h"
575+#include "scope/apps/container.h"
576
577
578 /**
579
580=== modified file 'tests/fake_libertine.h'
581--- tests/fake_libertine.h 2016-06-14 16:23:32 +0000
582+++ tests/fake_libertine.h 2016-07-19 20:20:31 +0000
583@@ -17,7 +17,7 @@
584 #define LIBERTINE_SCOPE_FAKE_LIBERTINE_H_
585
586
587-#include "libertine-scope/libertine.h"
588+#include "scope/apps/libertine.h"
589
590
591 /**
592
593=== modified file 'tests/scopefixture.h'
594--- tests/scopefixture.h 2016-04-15 12:41:58 +0000
595+++ tests/scopefixture.h 2016-07-19 20:20:31 +0000
596@@ -17,7 +17,7 @@
597 #define LIBERTINE_SCOPE_SCOPEFIXTURE_H_
598
599 #include <functional>
600-#include "libertine-scope/scope.h"
601+#include "scope/apps/scope.h"
602 //#include <unity/scopes/testing/TypedScopeFixture.h>
603 #include "tests/fake_container_json.h"
604 #include "tests/fake_libertine.h"
605
606=== modified file 'tests/test_blacklist.cpp'
607--- tests/test_blacklist.cpp 2016-06-14 13:07:51 +0000
608+++ tests/test_blacklist.cpp 2016-07-19 20:20:31 +0000
609@@ -13,7 +13,7 @@
610 * You should have received a copy of the GNU General Public License
611 * along with this program. If not, see <http://www.gnu.org/licenses/>.
612 */
613-#include "libertine-scope/blacklist.h"
614+#include "scope/apps/blacklist.h"
615 #include <gtest/gtest.h>
616 #include <QDir>
617 #include <QTemporaryDir>
618
619=== modified file 'tests/test_hidden_apps.cpp'
620--- tests/test_hidden_apps.cpp 2016-06-14 13:07:51 +0000
621+++ tests/test_hidden_apps.cpp 2016-07-19 20:20:31 +0000
622@@ -13,7 +13,7 @@
623 * You should have received a copy of the GNU General Public License
624 * along with this program. If not, see <http://www.gnu.org/licenses/>.
625 */
626-#include "libertine-scope/hidden_apps.h"
627+#include "scope/apps/hidden_apps.h"
628 #include <gtest/gtest.h>
629 #include <QDir>
630 #include <QTemporaryDir>
631
632=== modified file 'tests/test_preview.cpp'
633--- tests/test_preview.cpp 2016-06-06 22:38:47 +0000
634+++ tests/test_preview.cpp 2016-07-19 20:20:31 +0000
635@@ -14,7 +14,7 @@
636 * along with this program. If not, see <http://www.gnu.org/licenses/>.
637 */
638
639-#include "libertine-scope/preview.h"
640+#include "scope/apps/preview.h"
641 #include <unity/scopes/Variant.h>
642 #include <gtest/gtest.h>
643 #include <unity/scopes/ActionMetadata.h>
644
645=== modified file 'tests/test_query.cpp'
646--- tests/test_query.cpp 2016-06-14 16:49:24 +0000
647+++ tests/test_query.cpp 2016-07-19 20:20:31 +0000
648@@ -14,8 +14,8 @@
649 * along with this program. If not, see <http://www.gnu.org/licenses/>.
650 */
651
652-#include "libertine-scope/query.h"
653-#include "libertine-scope/config.h"
654+#include "scope/apps/query.h"
655+#include "scope/apps/config.h"
656 #include "tests/fake_libertine.h"
657 #include <unity/scopes/SearchMetadata.h>
658 #include <unity/scopes/CannedQuery.h>

Subscribers

People subscribed via source and target branches