Public bug reported:

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 {}
}

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

** Affects: qtdeclarative-opensource-src (Ubuntu)
     Importance: Undecided
         Status: New

** Attachment added: "Oxide patch to version new API's in 1.3"
   https://bugs.launchpad.net/bugs/1389721/+attachment/4253859/+files/diff

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1389721

Title:
  API versioning broken in some cases

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

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to