Re: [Development] QmlImportPath

2012-10-26 Thread Koehne Kai
> -Original Message-
> From: Wehmer, Matthias [mailto:matthias.weh...@draeger.com]
> Sent: Friday, October 26, 2012 10:43 AM
> To: Koehne Kai; chris.ad...@qinetic.com.au
> Cc: development@qt-project.org
> Subject: RE: [Development] QmlImportPath
> 
> The problem is also, that it causes inconsistencies under Windows, i.e. there
> are now some cases where the case of the letters matter and some others
> where it doesn't matter at all. We've discussed the paths in the QtCreator,
> so they distinct between Upper and lower letters.
> But for example it is possible to import libraries in .pro files without 
> taking
> care of Upper and lower cases (LIBS +=  -lLibrary with windows is
> the same as LIBS +=  -llibrary), such that this .pro file may not be 
> unix
> compatible.
> So whatever solution may be chosen for this matter (case sensivity with
> windows) in my opinion it should at least be consistent within Qt and its
> qmake system.

Well, the solution is obviously not be to make the rest of Qt case sensitive on 
a case insensitive file system!

Actually I'd like to ask for a decision here whether we:

* keep the current behavior
  - adding a (bold) section to the documentation of e.g. 
Q[Declarative|Qml]View::setSource() , Q[Declarative|Qml]Engine::setBaseUrl 
explaining the matter
  - adding an official API to make paths correctly cased on Windows
* change behavior in one of the ways I proposed.

For the reasons I already explained I would prefer the latter.


I understand that the current behavior had its place when QML was mostly about 
targeting a device, with Windows or Mac as the development host. But if we're 
serious with QML in Windows applications the current behavior is just not 
acceptable. We're replacing easy to spot problems in the development process 
(Added file, doesn't work on the device, let's see) with bugs that happen only 
to the 110th user who happens to type "C:\PROGRAM FILES" when installing your 
software. And no software I know cares about cases in paths on Windows. Only 
QML does.


Regards

Kai

 
> Greetings Matthias
> 
> -Original Message-
> From: Koehne Kai [mailto:kai.koe...@digia.com]
> Sent: Donnerstag, 25. Oktober 2012 12:36
> To: Chris Adams
> Cc: Wehmer, Matthias; development@qt-project.org
> Subject: RE: [Development] QmlImportPath
> 
> > -Original Message-
> > From: Chris Adams [mailto:chris.ad...@qinetic.com.au]
> > Sent: Thursday, October 25, 2012 2:23 AM
> > To: Koehne Kai
> > Cc: Wehmer, Matthias; development@qt-project.org
> > Subject: Re: [Development] QmlImportPath
> >
> > [...]
> > I believe that the problem is that (as Aaron states in that change
> > request) if we don't enforce case-sensitivity, we get the unfortunate
> > situation that an application which works on Windows, or Mac OS X, might
> not work on Linux.
> > By enforcing case sensitivity, we ensure that the application works on
> > all platforms without requiring any changes.  In the past, we had
> > heaps of bug reports about this exact issue, until we started
> > enforcing case sensitivity on all platforms.
> 
> Hi,
> 
> I understand the reasoning, but there's pain on the other side too: As soon as
> you integrate QML like Qt Creator does, you're likely hit by problems. Just
> look at the list of linked bugs in Qt Creator under
> 
> https://bugreports.qt-project.org/browse/QTBUG-17529
> 
> Absolute paths that work for the rest of Qt break for QML ... The counter
> measure is 'normalizing' paths handed over to QtDeclarative/QtQml, but
> there's not even a Qt API for it. Now you could argue that Qt Creator is
> somehow special, but Matthias isn't the first external one complaining
> about this, there have been others before too ...
> 
> So all in all, I think the current strict checking does more harm than good.
> Alternatives I see are:
> 
>  - normalizing paths handed over via public API (this is what my patch does)
>  - change error into a warning
>  - just check for file names, not directories
>  - get rid of the check altogether, and maybe warn about potential problems
> in the Qt Creator IDE
> 
> > I've added Martin Jones to that change request to get his opinion, but
> > I would be surprised if changing this behaviour at this point in time
> > is sensible.
> >
> > Cheers,
> > Chris.
> 
> 
> PS: Is there any other interpreter / compiler being so strict about file 
> casing
> like we are? I don't think I've encountered one ...
> 
> ---
> This communication contains confidential information. If you are not the
> intended recipient please return this email to the

Re: [Development] QmlImportPath

2012-10-26 Thread Wehmer, Matthias
The problem is also, that it causes inconsistencies under Windows, i.e. there 
are now some cases where the case of the letters matter and some others where 
it doesn't matter at all. We've discussed the paths in the QtCreator, so they 
distinct between Upper and lower letters.
But for example it is possible to import libraries in .pro files without taking 
care of Upper and lower cases (LIBS +=  -lLibrary with windows is the 
same as LIBS +=  -llibrary), such that this .pro file may not be unix 
compatible. 
So whatever solution may be chosen for this matter (case sensivity with 
windows) in my opinion it should at least be consistent within Qt and its qmake 
system.

Greetings Matthias

-Original Message-
From: Koehne Kai [mailto:kai.koe...@digia.com] 
Sent: Donnerstag, 25. Oktober 2012 12:36
To: Chris Adams
Cc: Wehmer, Matthias; development@qt-project.org
Subject: RE: [Development] QmlImportPath

> -Original Message-
> From: Chris Adams [mailto:chris.ad...@qinetic.com.au]
> Sent: Thursday, October 25, 2012 2:23 AM
> To: Koehne Kai
> Cc: Wehmer, Matthias; development@qt-project.org
> Subject: Re: [Development] QmlImportPath
> 
> [...]
> I believe that the problem is that (as Aaron states in that change request) if
> we don't enforce case-sensitivity, we get the unfortunate situation that an
> application which works on Windows, or Mac OS X, might not work on Linux.
> By enforcing case sensitivity, we ensure that the application works on all
> platforms without requiring any changes.  In the past, we had heaps of bug
> reports about this exact issue, until we started enforcing case sensitivity on
> all platforms.

Hi, 

I understand the reasoning, but there's pain on the other side too: As soon as 
you integrate QML like Qt Creator does, you're likely hit by problems. Just 
look at the list of linked bugs in Qt Creator under

https://bugreports.qt-project.org/browse/QTBUG-17529

Absolute paths that work for the rest of Qt break for QML ... The counter 
measure is 'normalizing' paths handed over to QtDeclarative/QtQml, but there's 
not even a Qt API for it. Now you could argue that Qt Creator is somehow 
special, but Matthias isn't the first external one complaining about this, 
there have been others before too ...

So all in all, I think the current strict checking does more harm than good. 
Alternatives I see are:

 - normalizing paths handed over via public API (this is what my patch does)
 - change error into a warning
 - just check for file names, not directories
 - get rid of the check altogether, and maybe warn about potential problems in 
the Qt Creator IDE

> I've added Martin Jones to that change request to get his opinion, but I
> would be surprised if changing this behaviour at this point in time is
> sensible.
>
> Cheers,
> Chris.


PS: Is there any other interpreter / compiler being so strict about file casing 
like we are? I don't think I've encountered one ... 

---
This communication contains confidential information. If you are not the 
intended recipient please return this email to the sender and delete it from 
your records.

Diese Nachricht enthaelt vertrauliche Informationen. Sollten Sie nicht der 
beabsichtigte Empfaenger dieser E-mail sein, senden Sie bitte diese an den 
Absender zurueck und loeschen Sie die E-mail aus Ihrem System.

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] QmlImportPath

2012-10-25 Thread Koehne Kai
> -Original Message-
> From: Chris Adams [mailto:chris.ad...@qinetic.com.au]
> Sent: Thursday, October 25, 2012 2:23 AM
> To: Koehne Kai
> Cc: Wehmer, Matthias; development@qt-project.org
> Subject: Re: [Development] QmlImportPath
> 
> [...]
> I believe that the problem is that (as Aaron states in that change request) if
> we don't enforce case-sensitivity, we get the unfortunate situation that an
> application which works on Windows, or Mac OS X, might not work on Linux.
> By enforcing case sensitivity, we ensure that the application works on all
> platforms without requiring any changes.  In the past, we had heaps of bug
> reports about this exact issue, until we started enforcing case sensitivity on
> all platforms.

Hi, 

I understand the reasoning, but there's pain on the other side too: As soon as 
you integrate QML like Qt Creator does, you're likely hit by problems. Just 
look at the list of linked bugs in Qt Creator under

https://bugreports.qt-project.org/browse/QTBUG-17529

Absolute paths that work for the rest of Qt break for QML ... The counter 
measure is 'normalizing' paths handed over to QtDeclarative/QtQml, but there's 
not even a Qt API for it. Now you could argue that Qt Creator is somehow 
special, but Matthias isn't the first external one complaining about this, 
there have been others before too ...

So all in all, I think the current strict checking does more harm than good. 
Alternatives I see are:

 - normalizing paths handed over via public API (this is what my patch does)
 - change error into a warning
 - just check for file names, not directories
 - get rid of the check altogether, and maybe warn about potential problems in 
the Qt Creator IDE

> I've added Martin Jones to that change request to get his opinion, but I
> would be surprised if changing this behaviour at this point in time is
> sensible.
>
> Cheers,
> Chris.


PS: Is there any other interpreter / compiler being so strict about file casing 
like we are? I don't think I've encountered one ... 

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] QmlImportPath

2012-10-24 Thread Chris Adams
Hi,

> we are still having problems with the QmlImportPath. There is also already
> > a bug reported:
> >
> > https://bugreports.qt-project.org/browse/QTBUG-
> > 20539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-
> > tabpanel  > 20539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-
> > tabpanel>
>
> Sounds pretty much like
> https://bugreports.qt-project.org/browse/QTBUG-17529 , or a variant of
> it. I don't know whether the patch I've proposed at
> https://codereview.qt-project.org/#change,33415 would help you though,
> since it fixes the problem only for absolute paths set to
> QtQUickView::setSource and QQmLEngine::setBaseUrl ... Actually I'm more
> than ever convinced that QML shouldn't check for file case sensitivity at
> all (on case insensitive file systems), or at least not in folder names.
> Feel free to vote.
>

I believe that the problem is that (as Aaron states in that change request)
if we don't enforce case-sensitivity, we get the unfortunate situation that
an application which works on Windows, or Mac OS X, might not work on
Linux.  By enforcing case sensitivity, we ensure that the application works
on all platforms without requiring any changes.  In the past, we had heaps
of bug reports about this exact issue, until we started enforcing case
sensitivity on all platforms.

I've added Martin Jones to that change request to get his opinion, but I
would be surprised if changing this behaviour at this point in time is
sensible.

Cheers,
Chris.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


Re: [Development] QmlImportPath

2012-10-24 Thread Koehne Kai
> -Original Message-
> From: development-bounces+kai.koehne=digia@qt-project.org
> [mailto:development-bounces+kai.koehne=digia@qt-project.org] On
> Behalf Of Wehmer, Matthias
> Sent: Wednesday, October 24, 2012 9:56 AM
> To: development@qt-project.org
> Subject: [Development] QmlImportPath
> 
> Hi everybody,
> 
> 
> 
> we are still having problems with the QmlImportPath. There is also already
> a bug reported:
> 
> https://bugreports.qt-project.org/browse/QTBUG-
> 20539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-
> tabpanel <https://bugreports.qt-project.org/browse/QTBUG-
> 20539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-
> tabpanel>

Sounds pretty much like https://bugreports.qt-project.org/browse/QTBUG-17529 , 
or a variant of it. I don't know whether the patch I've proposed at 
https://codereview.qt-project.org/#change,33415 would help you though, since it 
fixes the problem only for absolute paths set to QtQUickView::setSource and 
QQmLEngine::setBaseUrl ... Actually I'm more than ever convinced that QML 
shouldn't check for file case sensitivity at all (on case insensitive file 
systems), or at least not in folder names. Feel free to vote.

Regards

Kai

___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development


[Development] QmlImportPath

2012-10-24 Thread Wehmer, Matthias
Hi everybody,

we are still having problems with the QmlImportPath. There is also already a 
bug reported:
https://bugreports.qt-project.org/browse/QTBUG-20539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel

Reminder: The problem looks like this. We have a custom plugin which is 
installed in the default import directory in the Qt path. Here it works fine 
with any Qml files. The problem occurs if we want to change the location of the 
plugin. For example we moved it to the directory of the executable. It is 
recognized, that there is a plugin there. Anyway we just get a white screen and 
the following error message:
"File name case mismatch for """

I've also found this: 
http://doc.qt.digia.com/qt-quick3d-snapshot/qt3d-troubleshooting.html#problem-7-case-mis-match-on-loading-qml-plugins
 (Problem 7).

Probably they are connected. Does anyone know, if this is gonna be solved in 
the Qt 5 RC1?
In my opinion this is a really bothering issue that should be resolved quickly 
as it is a potential cause of many errors, that are hard to detect.
Maybe you have more information on this topic or now another solution then just 
reinstallaing everything without any Capital letters in the paths. :)

Greetings
Matthias
---
This communication contains confidential information. If you are not the 
intended recipient please return this email to the sender and delete it from 
your records.

Diese Nachricht enthaelt vertrauliche Informationen. Sollten Sie nicht der 
beabsichtigte Empfaenger dieser E-mail sein, senden Sie bitte diese an den 
Absender zurueck und loeschen Sie die E-mail aus Ihrem System.
___
Development mailing list
Development@qt-project.org
http://lists.qt-project.org/mailman/listinfo/development