← Back to team overview

ubuntukylin-members team mailing list archive

ask for sponsor

 

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
  





Follow ups