← Back to team overview

touch-packages team mailing list archive

[Bug 1389721] Re: API versioning broken in some cases

 

Actually we have revisions and we use the same declaration for
components in UI Toolkit as well. And the revisioning of ViewItems
attached  properties are also broken, see
https://code.launchpad.net/~zsombi/ubuntu-ui-toolkit/listitem-
expansion/+merge/254375, where I had to do an ugly workaround to get the
revisioned API accepted in Expansion.qml test code.

** Changed in: qtdeclarative-opensource-src (Ubuntu)
   Importance: Undecided => High

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to qtdeclarative-opensource-
src in Ubuntu.
https://bugs.launchpad.net/bugs/1389721

Title:
  API versioning broken in some cases

Status in qtdeclarative-opensource-src package in Ubuntu:
  New

Bug description:
  With Oxide 1.2 being the version that's shipping in the RTM image, I
  want to start correctly versioning new API's so that we can upgrade
  Oxide OTA safely without breaking existing applications. I'm testing
  the attached patch for Oxide to add a revision to API's that were
  added in 1.3, but running the test suite results in the following
  failure:

  Output:
  ----------------------------------------------------------
  file:///home/chr1s/src/oxide/oxide/qt/tests/qmltests/core/tst_CustomURLSchemes.qml:11:11: ".allowedExtraUrlSchemes" is not available due to component versioning.
         context.allowedExtraUrlSchemes: [ "test", "bar" ]
                 ^
  ********* Start testing of qml-core-test *********
  Config: Using QtTest library 5.3.0, Qt 5.3.0
  QWARN  : qml-core-test::tst_CustomURLSchemes::compile()
    /home/chr1s/src/oxide/oxide/qt/tests/qmltests/core/tst_CustomURLSchemes.qml produced 1 error(s):
      /home/chr1s/src/oxide/oxide/qt/tests/qmltests/core/tst_CustomURLSchemes.qml:11,11: ".allowedExtraUrlSchemes" is not available due to component versioning.
    Working directory: /home/chr1s/src/oxide/oxide/objdir/qt/tests/qmltests
    View: QQuickView, import paths:
      '/home/chr1s/src/oxide/oxide/objdir/out/bin'
      '/home/chr1s/src/oxide/oxide/objdir/out/imports'
      '/usr/lib/x86_64-linux-gnu/qt5/qml'
    Plugin paths:
      '.'

  FAIL!  : qml-core-test::tst_CustomURLSchemes::compile() ".allowedExtraUrlSchemes" is not available due to component versioning.
     Loc: [/home/chr1s/src/oxide/oxide/qt/tests/qmltests/core/tst_CustomURLSchemes.qml(11)]

  After scratching my head for a while, I can't see what I'm doing wrong
  here.

  If I run the following simple QML app, I can access the property
  correctly:

  - test.qml:

  import QtQuick 2.0
  import com.canonical.Oxide 1.3

  WebView {
    focus: true
    width: 960
    height: 540

    url: "https://www.google.com";

    context: WebContext {
      allowedExtraUrlSchemes: []
    }
  }

  However, if I run this simple app instead, then it fails with the same
  message I see in the unit tests:

  - test.qml:

  import QtQuick 2.0
  import com.canonical.Oxide 1.3

  TestWebView {
    focus: true
    width: 960
    height: 540

    url: "https://www.google.com";

    context.allowedExtraUrlSchemes: []
  }

  - TestWebView.qml

  import QtQuick 2.0
  import com.canonical.Oxide 1.3

  WebView {
    context: WebContext {}
  }

  This last example works fine without a revision number on this API.

  I consider this to be a blocker for being able to update Oxide OTA, as
  we're not able to version new API's with this bug

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qtdeclarative-opensource-src/+bug/1389721/+subscriptions


References