← Back to team overview

ubuntu-phone team mailing list archive

Re: [Ubuntu-appstore-developers] Switching Click framework to 14.04 Dev

 

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 27/02/14 12:12, Martin Albisetti wrote:> On Sat, Feb 22, 2014 at
12:05 AM, Michael Hall <mhall119@xxxxxxxxxx> wrote:
>> We would like to be able to start using the ubuntu-sdk-14.04-dev 
>> framework version for the Ubuntu App Showdown which is going to
>> start next week.  Can everybody with a work item respond to this
>> email
with an
>> update on their progress so we know where we stand?
> 
> So, I think the plan is to use "ubuntu-sdk-14.04-qml" and 
> "ubuntu-sdk-14.04-cordova" (or similar names) instead of just a 
> unified framework like "ubuntu-sdk-14.04". While the work to
> support more frameworks is landing in the appstore, I think this
> needs some certainty before we allow anything other than 
> ubuntu-sdk-13.10 into the store.

As long as the required frameworks declared by the packages are an
exact match to a subset of those declared as supported by the client
at request time, the branch we're planning to roll out on Monday will
handle that.

In other words, if packages can declare a dependency on

  "ubuntu-sdk-14.04-dev"

and clients send queries with

  "framework:ubuntu-sdk-14.04-dev"

or even

  "framework:ubuntu-sdk-13.10,framework:ubuntu-sdk-14.04-dev"

it's all good; if packages can declare a dependency on

  "ubuntu-sdk-14.04-qml"

and clients are only going to be sending

  "framework:ubuntu-sdk-14.04"

clients aren't going to get the results they're expecting.

This isn't quite as simple as just making framework queries use an OR
instead of an AND, or even just using prefix matching.  For example,
an OR query doesn't satisfy the "and nothing else" requirement in
"requires ubuntu-sdk-13.10 and nothing else", so the package that
depends on

  "ubuntu-sdk-13.10 AND other-framework-13.10"

will still be visible to the client claiming

  "framework:ubuntu-sdk-13.10"

Nor does it hide the package that requires

  "ubuntu-sdk-15.10 AND other-framework-13.10"

from the client which has

  "ubuntu-sdk-13.10 AND other-framework-13.10".

"ubuntu-sdk-14.04*" matches both "ubuntu-sdk-14.04" and
"ubuntu-sdk-14.04-dev", but are we expecting packages that depend on
"ubuntu-sdk-14.04-dev" to work on devices that only "ubuntu-sdk-14.04"?

Framework handling is going to have to get a lot more intelligent in
each of the SDK/devportal, Click Package Index and possibly clients to
be able to handle the "Debian dependency relationship field" syntax,
but that can be done iteratively.  As things currently stand, I think
we've covered the expected scenarios.

JT
- -- 
James Tait, BSc. | https://launchpad.net/~jamestait/
Software Engineer, Canonical Online Services, Web and Ops Team
Ubuntu - Linux for human beings | www.ubuntu.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlMPYm0ACgkQyDo4xMNTLiZOQQCfQjvWL0uwmNotVfnvZOXvzGOs
UUIAoIjp5kPv5au/DhdiigjE1FLt1qot
=Bcfz
-----END PGP SIGNATURE-----


Follow ups

References