Hi Pawel,
I have attached a patch of unity-china-music-scope with new APIs at
https://bugs.launchpad.net/ubuntu/+source/unity-china-music-scope/+bug/1131569.
Would you like to sponsor us to upload it?
Regards,
Jonas
At 2013-03-15 17:26:30,"Pawel Stolowski"
<pawel.stolowski@xxxxxxxxxxxxx> wrote:
Weihua, all,
As you might or might now know, the API changes we planned for
13.04 didn't land on time. We're currently working on finishing
the transition to the new API and finishing/polishing some areas
(in particular the new Home Scope); there is a Feature Freeze
Exception bug filed to get the new stack landed if FFE is
approved. In other words, you should port your scope to the new
API and have a branch ready for merging when all the base
infrastructure we're working on lands, otherwise your scope won't
work in 13.04.
The latest API is available in libunity-7.0 branch of libunity,
there is a number of scopes ported to it already, plus Unity Dash
branch. There are two options for you when porting:
- base your scope on DeprecatedScope* class, which requires only
minimal changes to your code;
- inherit your scope on AbstractScope; this requires more changes
as you need to implement a number of abstract methods; this is
the recommended way.
Both options impose no real changes to "business logic" of
scopes. If you choose option #1, you should be able to migrate
your code in a matter of few hours tops.
Here is the FFe bug I mentioned:
https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1154229
There you'll find all relevant branches, information about ppa
etc. Take a look at any of the scopes linked there (for default
Ubuntu scopes such as applications, files etc. you need to be
looking at -libunity7-compatible branches). 100 scopes such as
"wikipedia" and other listed there are using the AbstractScope
approach, while our default scopes use DeprecatedScope API.
Kind Regards,
Pawel
On 01/30/2013 02:15 AM, 张卫华 wrote:
Dear Pawel,
As you wrote in last email:
Until all these changes land in Ubuntu 13.04 repositories
(which should happen in ~2-3 weeks), the only way to test a
scope against new API is:
- install latest Dee from trunk and libunity-7 branch (don't
install system-wide as this would break your current Unity
environment; install them in a dedicated subdirectory).
- compile your scope against libunity-7 and run it manually
from a terminal.
- test search queries with 'tool/libunity-tool -g' from
libunity-7 branch.
We begin to port unity-china-music-scope to new API. Before I
start my work I have some questions:
1. how to install latest Dee and libunity-7 branch in a
dedicated subdirectory? Do you mean old version and new version
can exist together?
2. how to test search queries with 'tool/libunity-tool -g' from
libunity-7 branch?
Cheers,
Weihua