On 12/12/12 12:22, Sorvig Morten wrote: > On Dec 11, 2012, at 4:25 AM, Alan Alpert <[email protected]> wrote: >> import Qt 5.0 >> >> Which imports all QML modules in the Qt Essentials released with 5.0.0
If the idea is to import the essentials, then call it that: "import QtEssentials (from Qt) 5.0" - it would look weird enough to explain why you can't combine this "Qt5" module with, say, cascades or something similar. >> (except QtQuick 1). It would be the equivalent of >> >> import QtQml 2.0 >> import QtQuick 2.0 >> import QtQuick.Window 2.0 >> import QtQuick.Particles 2.0 >> import QtAudioEngine 1.0 >> import QtMultimedia 5.0 >> import QtWebkit 3.0 > How about allowing imports without the version number? Oh, how many times we have discussed this :) I'll agree that the "import QtQml from Qt 5.0" is cleaner. But my "ceterum censeo" on the QML versioning and why (the way it's implemented - though not necessarily the way it was envisioned and described in Alan's post) is fundamentally broken: QML import statements try to link code to *VERSIONS* and not *API*s (hold your thoughts there for a second and let that sink in - the difference is subtle, but important). The insult-to-injury there is that the versions mentioned there are actually ID strings and contain no semantics or relations. What I would like to see a lot more is the logic applied for the good old C++ side: major version means compatibility, minor version means features, not ad-hoc numbering schemes. So if I do an Import QtQml 2 (or QtQml 2.*, or 2.0+) it means I'm good with anything that provides 2.0 or a compatible API. If you have QtQml 3.0, it means you had an API break and then it's perfectly fine to say 'bork, import failed'. > You're basically asking to opt-out of the versioning system. If we > thought that was a good idea, we wouldn't require all module imports > to be versioned. Short explanation is that your deployed applications > could easily break and there's no real need to skip versioning. Long > explanation is here: http://alan.imagin-itis.net/?p=322 . http://www.youtube.com/watch?v=ThWq5WN32_c Short story: there is no *hard* compatibility guarantee anyway, so one might as well let people do what they want and not pull the rug from underneath them randomly. Best regards, Attila _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
