Qt Contributors Summit 2019 Program/Qt for Python and beyond
Jump to navigation
Jump to search
Following the notes from the Qt for Python session
- Continuation of the plenary session
- Right now status is same as PyQt
- What can we do to make a difference and improve on QtfP
- Tooling
- Around pyside and…
- Make it easier to mix C++ and python
- Currently a lot of black magic
- Pyside2config etc…
- Using it from the outside it is too complicated
- Xml descriptions unclear, even with documentation
- Proposal: Create generators for type system
- Going through widgets as an example
- The code is the documentation right now
- What about editing the type-system, not only one-time generation?
- Does it need to be a graphical solution?
- Whatever it is, auto-completion is important/beneficial
- Whatever happens, keeping C++ API and xml description in sync is troublesome and should be addressed
- Embed the export information into the cpp?
- Doesn't need to be xml, could be changed
- Adding annotations for all Qt classes is not what we want
- Developers will not learn/use it, there needs to be automatism
- Proposal: Be not as verbose in the xml description
- Use sane defaults and only annotate corrections
- What is the amount of changes needed
- Ownership is a good example, needs to be read from the documentation and manually adapted in the xml
- We want to encourage users to start using Python extensions
- What about using the metaobject system for auto-exposing to Python?
- Currently not the case
- But what about adding items which can be introspected?
- Basically re-use Q_PROPERTY, Q_INVOKABLE,…
- Tooling around python development?
- Comparison to Rust: Cargo
- Creates projects, manages compilation, deployment etc
- Cookiecutter in python, which creates base templates
- Idea: Add tools to create project templates
- Potentially extract what Qt Creator does in the template
- Have it create a folder structure including src/tests/….
- What about creating a template for cookiecutter instead of writing a new tool?
- Cookiecutter maintainer is in Berlin as well ,potentially meet
- Modules
- Would there be any feedback on modules to add?
- What about new pure python modules within the Qt context?
- Example: Interaction with other python types, getting "python data" into QAbstractItemModel
- Example: dataframes
- Generally adaptors for existing python solutions
- Does it have marketing reception impact? Qt moving "away" from C++?
- Could be a separate solution, like Qt Lottie. Not part of the core product, but existent
- Does this need to be associated with PySide?
- If new modules are created which uses Qt/QtfP, why does it have to be in Pyside itself
- And not standalone
- Talking about the other way around
- Qt Charts has its limitations
- Use Qt / C++ for the heavy work and Figure/Canvas from matplot to visualize
- Improvements to python itself
- C++ components in Qt exposed to Python?
- Generally a C++ module exposing a "pythonish" API using Qt to do the work
- Integrate into PySide then
- Why not improve Cpython?
- It's open source after all
- Getting sidetracked
- Project based approach, if a project needs improvement let the project identify where to fix it
- Currently any python export requires manual shiboken compilation
- We should improve here and make it easier
- Idea: Some maintenance tool component which gets you latest shiboken and shiboken generator, etc…
- Qt ships clang already, why not add the rest to the standard package?
- Running out of time
- Deploying Python applications is a mess
- Python transpilers
- Use-case: What about my python application which I need on a phone
- Proposal: Wait for what others do and just use that
- Beeware: Python VM in JS