Difference between revisions of "Qt for Python Development Notes"

From Qt Wiki
Jump to: navigation, search
(12. July 2018)
m (07. November 2019: typo)
 
(125 intermediate revisions by 9 users not shown)
Line 1: Line 1:
[[Category:Qt for Python]]  
+
[[Category:Qt for Python]]
== 2018 ==  
+
== 2019 ==
  
==== 12. July 2018 ====
+
==== 07. November 2019 ====
 +
- Documentation improvements are coming, more people involved.
 +
- Qt World Summit feedback
 +
  - First time we had a Qt for Python booth,
 +
  - Request to improve the Python+QML story
 +
  - Suggestions to have a better experience in QtCreator
 +
  - In general the people really liked the integration with modules like matplotlib, pandas, opencv, scikit-image
 +
  - The voice assistant also was really well received, this involve many other modules like Deepspeech, rasa, mozilla tts technologies, etc.
 +
- Documentation will be written for the NumPy compatibility patch.
 +
- Planned work on a Python 3.8 leak.
 +
- After the chain of patches improving the namespace in shiboken, there are some issues with Python 2.7
 +
- New template for Qt for Python on QtCreator will be merge soon.
  
  - Work on shiboken's type system ([https://bugreports.qt.io/browse/PYSIDE-672 PYSIDE-672]) merged
+
==== 24. October 2019 ====
  - Started checking the XML elements/attributes of the typesystem language to identify unused elements ([https://bugreports.qt.io/browse/PYSIDE-743 PYSIDE-743])
+
  - Release Qt for Python 5.13.2
  - Started looking at emerging new API of Qt 5.12, which unveiled bugs in shiboken
+
    - 5.13.2 branch exists -> testing and final build on the way
  - Finished the port of new examples related to [https://bugreports.qt.io/browse/PYSIDE-738 PYSIDE-738]
+
    - aiming for release on 1st Nov 2019
  - Fix a Python 3.7 hang/crash ([https://bugreports.qt.io/browse/PYSIDE-737 PYSIDE-737])
+
  - 5.15 branch is still broken
  - Fix a Python 3.7 compatibility issue ([https://bugreports.qt.io/browse/PYSIDE-741 PYSIDE-741])
+
  - further requirements mgmt/grooming ongoing
  - Work on hinting stubs for Python IDEs ([https://bugreports.qt.io/browse/PYSIDE-735 PYSIDE-735])
+
  - name spacing modification
  - Will return to documenting PEP 384 at the weekend, promised.
+
    - hiding namespaces like QtCharts from Python and adding ability to shiboken to work with inline namespaces
 +
    - https://bugreports.qt.io/browse/PYSIDE-990
 +
    - https://bugreports.qt.io/browse/PYSIDE-1074
 +
  - removed pyside-uic and pyside-rcc -> tooling is 100% Qt
 +
  - QSettings related bug fix caused regression, more fixes were needed
 +
  - Qt World Summit 2019 preparations (demos, shipping etc)
 +
  - translator script from C++ to Python being done
 +
    - translates 90% of the code (enough to simplify the snippet conversion process)
 +
  - Numpy work complete for now
 +
  - started working on Python 3.8 (https://bugreports.qt.io/browse/PYSIDE-939)
 +
  - for now Python 3.5 support stays as is
  
==== 5. July 2018 ====
+
==== 24. October 2019 ====
 +
  - struggling with coin and therefore none of the scheduled releases went out
 +
  - worked on multiple \brief attributes appearing in the docs
 +
  - discussions started how to improve the general Qt for Python doc index page
 +
  - investigating hiding C++ inline namespaces (e.g. Qt3D and QtCharts name spaces)
 +
  - https://bugreports.qt.io/browse/PYSIDE-795 -> complete for 5.14 (merge pending)
 +
    -> pysequence can be handled
 +
  - Adopting Python 3.8 and removing support for 3.5 in Qt for Python 5.14
 +
  - converter from C++ to Python worker approaching point of being usable for doc snippet conversion
 +
  - moving some docs from wiki to official QtfP docs
  
  - Work on shiboken's type system ([https://bugreports.qt.io/browse/PYSIDE-672 PYSIDE-672])
+
==== 17. October 2019 ====
  - Fixed COIN for macOS/dev branch ([https://bugreports.qt.io/browse/PYSIDE-734 PYSIDE-734] / [https://bugreports.qt.io/browse/PYSIDE-724 PYSIDE-724])
+
  - Qt for Python 5.14 release -> not build-able with current Qt 5.14 release
  - helped with a very old bug ([https://bugreports.qt.io/browse/PYSIDE-60 PYSIDE-60])
+
    -> Qt Declarative needs change to enable QtfP binaries
  - started type hinting support ([https://bugreports.qt.io/browse/PYSIDE-735 PYSIDE-735])
+
  - Qt for Python 5.15
  - Investigating the slowness of our bindings ([https://bugreports.qt.io/browse/PYSIDE-727 PYSIDE-727])
+
      -> currently not possible in CI
  - Working on expanding the examples related to QtCharts and fixing a few other examples.
+
  - Qt for Python 5.13.2
 +
      -> in principle 5.13 branch is releasable (except there is an elaborate set of doc patches)
 +
  - split of QtfP project modules continues
 +
    -> dependencies defined via yaml
 +
    -> adds the ability to also sign produced wheel.
 +
  - more example work
 +
  - working on a semi translator to translate C++ snippets to Python
 +
  - visit to PyConDE
 +
  - QSharePointer related fixes being worked on
 +
  - numpy proof-of-concept ([https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795]) is available
 +
  - removed uic and rcc from pyside-setup since the Qt tools support Python now
 +
  - exploring the idea to include designer in the Python wheels
 +
  - discussion on supported Python versions (can we add 3.8 and remove 3.5?)
 +
      -> more comms on the mailing list can be expected
  
==== 28. June 2018 ====
+
==== 26. September 2019 ====
 +
  - Porting guide (C++ -> Python) ready for staging
 +
  - Further snippet handling improvements
 +
      - being split out and translating them to Python
 +
  - general bug cleanups/triaging
 +
  - working on new template for Python to create ui files
 +
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
 +
  - OPCUA viewer example port completed
 +
  - added more Qt 5.14 API to Qt for Python 5.14
 +
  - [https://bugreports.qt.io/browse/PYSIDE-1087 PYSIDE-1087] in progress
  
  - Fixed some bugs for the 11.1 release (fix [https://bugreports.qt.io/browse/PYSIDE-570 PYSIDE-570] , [https://bugreports.qt.io/browse/PYSIDE-693 PYSIDE-693])
+
==== 19. September 2019 ====
  - code cleanup in shiboken
+
  - Roadmapping session for Qt for Python 5.15 & 6.0 on 8. October
  - Added option for C++ language level to shiboken
+
  - experimenting with new configuration changes in coin and how they affect Qt for Python
  - Doc fixes, start using conditional section the Qt documentation
+
  - Porting tutorial (C++ -> Python) was pushed for review
  - Worked on PYSIDE-641 to handle the case of undefined len().
+
  - Progress on porting the C++ snippets to Python
  - Started work on method hinting. Discussion with the Wing IDE guys.
+
      -> will be a longer process
  - Fixed issue related to the QLibraryPath
+
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
  - Fixing a couple of examples.
+
    -> streamline-ing some code sections in the process
 +
  - focus on validating existing bugs
 +
  - otherwise the team dealt with impact of a cmake based Qt build system
 +
  - porting QtOpcua to Qt for Python
 +
      - particular work went into to opcuaviewer example
  
==== 21. June 2018 ====
+
==== 12. September 2019 ====
- Publishing snapshot wheels was disabled for some time, but is now back online.
+
  - Work on QtOpcUa continued [https://bugreports.qt.io/browse/PYSIDE-952 PYSIDE-952]
- The team has been mainly solving issues related to the first set of wheels from the Technical Preview.
+
  - Work on example for Qt Summit
  - Missing DLLs for the Windows wheels
+
  - Work on [https://bugreports.qt.io/browse/PYSIDE-1057 PYSIDE-1057]
  - Examples incompatibility due to previous changes, missing resources, etc.
+
  - Prototyped QStringView support
  - Wrong paths associated to the QLibraryInfo class
+
  - [https://bugreports.qt.io/browse/PYSIDE-1087 PYSIDE-1087] huge speed patch ready for review
- PEP 384: Tried to further reduce the patch size and to avoid Introduction of PepType.  
+
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
    Stopped after it turned out to be impossible.
 
- Documentation:
 
  - There are many snippets that contains the C++ counterpart, so there is a lot of effort to translate them to Python
 
  - Continued on documenting the Limited API after it is now fixed.
 
  
==== 14. June 2018 ====
+
==== 5. September 2019 ====
- Official Tech Preview released yesterday: http://blog.qt.io/blog/2018/06/13/qt-python-5-11-released/
+
  - Qt for Python 5.13.1 & 5.12.5
- focus has been on release details and following up on comments and feedback after the release
+
    - RTA for 5.13.1 released
- The team is grateful for all the suggestions and constructive feedback.
+
    - 5.12.5 released next week
 +
  - Branching
 +
    - challenge is the building of Qt 6 while maintaining a stable Qt for Python build
 +
    - one solution might be a QfP build for selected modules only
 +
  - Team is planning a roadmapping session for QfP 5.15 release
 +
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
 +
  - quite a few bugs have been fixed e.g. [https://bugreports.qt.io/browse/PYSIDE-1051 PYSIDE-1051]
 +
  - Looking at QStringView exposure in Python
 +
  - Continued work on uic/rcc tooling
 +
  - General tooling improvements when working with QtCreator and Python
 +
  - Updated some build instructions for QfP on Fedora
  
==== 07. June 2018 ====
+
==== 29. August 2019 ====
- Last steps for TP
+
  - Releases (5.12.5 & 5.13.1) upcoming
  - Latest changes merged (PEP related plus other features)
+
  - Release candidate wheels under test for both releases (Linux & macOS, Win is outstanding)
  - ActivePython 3.6.0 broken
+
      - last patch for 5.13.1 is [https://bugreports.qt.io/browse/PYSIDE-1079 PYSIDE-1079]
  - PyPi wheel size issue: Still no answer from PyPi :(
+
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] continued progress
  - Documentation check (code examples need to work)
+
  - new look at our example basket
  - Blog posts
+
  - continued work on [https://bugreports.qt.io/browse/PYSIDE-1033 PYSIDE-1033]
  - wheels upload? documentation url change? etc
+
  - uic and rcc can output python code -> needs deployment changes in Pyside2 -> target release Qt for Python 5.14
- Things to do
+
      - adding support in QtCreator being able to deal with the above python tools
  - pyside2-tools update sha
 
  - merge the last commits from 5.9 to 5.11 to dev
 
  - create release branch
 
  - update version number
 
  - create a tag once we know the final version.
 
  
==== 31. May 2018 ====
+
==== 22. August 2019 ====
  - ready for TP?
+
  - Work on QtOpcUa started [https://bugreports.qt.io/browse/PYSIDE-952 PYSIDE-952]
  - 32bit win wheels not available yet
+
  - Solved [https://bugreports.qt.io/browse/PYSIDE-1079 PYSIDE-1079] partially, need the structure
  - request to upload larger than usual pypi wheels filed with pypi/warehouse project
+
    of 5.14 to implement the typing.Optional feature.
  - some wheel renaming related patches still pending to comply with pypi requirements
+
  - Solved and closed [https://bugreports.qt.io/browse/PYSIDE-1077 PYSIDE-1077] wrong init code
  - PEP changes have merged earlier this week
+
  - Solved [https://bugreports.qt.io/browse/PYSIDE-1073 PYSIDE-1073], waiting for review
  - example patches still under review
+
  - Refined and closed [https://bugreports.qt.io/browse/PYSIDE-945 PYSIDE-945].
  - documentation not packaged as part of release (published on doc.qt.io on day of release)
 
  - ByteArray changes re-based on top of PEP patches -> to be merged until end of week
 
  - have release candidate wheels early next week for testing
 
  - aim to release it on 13th June 2018 (might shift till Monday (18th June) afterwards)
 
- assessed missing bindings situation
 
  
==== 24. May 2018 ====
+
==== 15. August 2019 ====
- discuss details of pypi uploads (accounts, processes and limits)
+
   - Partially solved [https://bugreports.qt.io/browse/PYSIDE-1052 PYSIDE-1052] (constants missing).
  - need package size extension from pypi
+
   - Solved at the same time [https://bugreports.qt.io/browse/PYSIDE-945 PYSIDE-945].
  - naming issues for packages
+
     Solved a QtCore.Slot() bug that dates back to 2010-11-03.
  - download.qt.io will be backup distribution source
+
   - Work on [https://bugreports.qt.io/browse/PYSIDE-1073 PYSIDE-1073] trying to fix the bug.
  - need to verify pypi working
+
   - Work on [https://bugreports.qt.io/browse/PYSIDE-1051 PYSIDE-1051] trying to fix the bug.
- package finalization and testing (limits on changes?)
+
   - Merges/work on continuous integration infrastructure (preparing 5.13.1)
  - entering code freeze mode very soon (limited commitment for time being)
 
  - pep changes
 
      -> 1 test failure, 1 build failure
 
      -> attribution and doc improvements still to be done
 
  - ByteArray changes (interdependence with PEP)
 
  - potential doc changes
 
    -> tab browser example to be finished
 
    -> latest logo files need to be pushed
 
  - final release testing
 
  - TP blog post
 
 
==== 17. May 2018 ====
 
- updated icons/images for Qt for Python project
 
- PEP updates
 
  - completed the feature implementation but some bug fixing still open
 
  - discussed how heap type change and PEP changes could be easily reviewed/merged (huge patch set series)
 
- coin
 
  - 5.11 & 5.6 broken, 5.9 & dev working
 
  - waiting for larger coin update which will enable QtForPython to be more independent from Qt CI configurations
 
  - Win32 (VS2015 only) pip received some changes but not quite available yet (subject to coin update)
 
  - Temporary Win32 wheels tests looked promising
 
- missing bindings for QtCore/Network/Multimedia/GUI/widgets added (https://wiki.qt.io/Qt_for_Python_Missing_Bindings needs updating)
 
- bindings for QtScxml in the works
 
- known issue when dealing with unicode data/strings (seg faults)
 
- various documentation fixes
 
- dynamic System clang builds with Linux supported
 
- small build fixes
 
- Decreased wheel sizes
 
- more work on blog posts and examples.
 
 
 
==== 10. May 2018 ====
 
- skipped due to public holidays
 
 
 
==== 03. May 2018 ====
 
- coin
 
  - 5.6 still blocked, 5.9/5.11/dev working
 
  - Win32 pip still on backlog
 
- documentation
 
  - references to Shiboken being worked on
 
  - dot images finally working on https://doc-snapshots.qt.io/qtforpython/index.html
 
  - various fixes to non-class related docs
 
- PEP updates
 
  - integration attempts have revealed some issues with shiboken, private ctors/dtors
 
  - one patchset series for PEP support and Heap Type changes pending
 
- license updates
 
- working on Python 2 & 3 type differences (avoiding developers having to deal with these differences)
 
- Tab Browser example merged
 
 
 
==== 26. April 2018 ====
 
- New icons for project in work
 
- 5.9 branch working  (5.11 branch is broken due to issues on the Qt side)
 
- snapshot tool for Windows broken (crashing) -> fix pending but blocked by CI
 
- in the mean time only mac and Linux snapshots working at the moment
 
- 5.6 branch broken as well as 5.9 changes for qt5.git need to be merged to 5.6 too
 
- delivery of 32bit Windows binaries not started
 
- tiny bug fixes and other types of cleanups (e.g. build scripts) left and right
 
- General replacement of Pyside name against Qt for Python (module name remains as Pyside)
 
- APIExtractor documentation still being merged to git
 
- style sheet issues being addressed
 
- QtWebEngineCore bindings finally merged
 
- PEP work ongoing (and coin to work)
 
 
 
==== 19. April 2018 ====
 
- COIN finally back in working shape
 
- Further fixes for documentation, module pages, experimentally tried to show in Qt Assistant
 
- Tab Browser example further improved
 
- Qt for Python blog posts being worked on
 
- Continued working on WebEngine issues
 
- Some investigation and preparations to make WebEngine apps work with PyInstaller (very early phase, still doesn't work)
 
- Pending patch for QtWebEngineCore bindings
 
- Installation adjustments for standalone builds on Windows
 
- Heap types are complete. Starting integration with PEP 384.
 
- Finished the integration between ApiExtractor and Shiboken documentation.
 
- Worked on a couple of blog posts.
 
- Wiki structure and started to write the Tutorials
 
 
 
==== 12. April 2018 ====
 
- Getting Started guide under works by doc engineer
 
- focus on fixing coin on Mac & RedHat 7.4 (looks promising so far)
 
- shiboken documentation and diagrams being updated
 
  - old and unused docs dir shall be cleaned out
 
- Tab Browser example improved
 
- License page generated based on attribution files
 
- lots of discussion when to release Qt for Python TP
 
  - after Qt 5.11 release (scheduled for 31.5.)
 
  - likely to be mid June (stay tuned)
 
- WebEngine issues
 
  - needs updated qt.conf files to be deployed for apps
 
- Heap types (work in progress)
 
- still more work in pipeline to get code PEP 384 ready (Heap types are prerequisite)
 
- Qt for Python blog posts being worked on
 
 
 
==== 5. April 2018 ====
 
- first doc snapshot is up and running: https://doc-snapshots.qt.io/qtforpython/
 
- more work to be done to automate generation of snapshots
 
- briefly talked about technical blog post opportunities
 
- pdb files from Windows wheels removed (reducing the wheel size)
 
- improving the tab browser example
 
- coin currently not accepting changes
 
  - currently lots of pending patches start to create backlog
 
- Heap type taking longer than expected
 
- qApp macro reference leaks finally resolved
 
- quite a few formatting changes to enforce a common coding style
 
- lots of smaller fixes
 
 
 
==== 29. March 2018 ====
 
- skipped due to Easter holidays
 
 
 
==== 22. March 2018 ====
 
- Release process (do we follow Qt?)
 
  - Release manager provides packages
 
  - RTA testing to be setup -> for each package we run RTA
 
  - Request to be put on mailing list
 
  - Current Test setup proposal
 
    - Win10 (Python 3.6)
 
    - Linux (Python 3.6/2.7)
 
    - Mac (Python 3.6/2.7)
 
  - To be defined a test set (//TODO)
 
  - Testing information to be collected in wiki
 
- Documentation
 
  - QML advanced tutorial documentation updated
 
  - Landing page in the works
 
  - snapshot still delayed by other qdoc bugs
 
  - style sheet update considered
 
  - so far only dealt with class docs, started to include unrelated doc pages
 
- snapshot testing (angle & webengine not properly packaged on Windows)
 
- enum support improved (dealing with scoped enums and enum values)
 
- general bugfixing to increase stability and address mem leaks
 
- Talks to PyData submitted
 
- Qt Charts examples ported
 
- Proper support for QFlags being worked on
 
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] fixed
 
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] first heap type protoype under review proving that concept works
 
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560] depends on PYSIDE-595
 
- CI side
 
  - coin did Python updates which temporarily broke Linux wheels
 
  - briefly discussed manylinux request on mailing list (Qt forms bottom line, no point to extend beyond scope of Qt)
 
  - final list of wheels for release (win, linux, mac) x 2 (2.7 & 3.x Python)
 
 
 
==== 15. March 2018 ====
 
- Fix to create 3.6 Linux wheels under review.
 
- Fix scriptableapplication build on Windows, and other small bugs.
 
- Two QtCharts examples were ported and abstracts were written to submit PyData talks
 
- Updating the QML advanced tutorial and adding index.rst and gettingstarted.rst
 
- Tried the wheel pkgs for python 27 on Linux. Works OK except the webengine example, which gives random crashes.
 
- Docs: [https://bugreports.qt.io/browse/PYSIDE-620 PYSIDE-620 Shadow build issue] fixed, fixed usage of deprecated Sphinx API,
 
- Continued on [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560], currently  Windows problem with Linkage
 
- Debugging on [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595], final stages
 
- Fixed [https://bugreports.qt.io/browse/PYSIDE-258 PYSIDE-258]
 
 
 
==== 08. March 2018 ====
 
- msvcrt.dll to be shipped on Windows
 
- wheel snapshots are automatically generated
 
   - start with public availability under http://download.qt.io/snapshots/ci/
 
  - snapshots to public pypi server under discussions
 
- discussion on how to increase value of official pyside mailing list http://lists.qt-project.org/mailman/listinfo/pyside
 
- looking at build issues on Windows (improving error handling)
 
- Participation in Python User Group meeting in Berlin (https://www.meetup.com/Python-Users-Berlin-PUB/events/xhqwhpyxfblb/)
 
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] - Heap Type conversions ongoing
 
  - test bed created for easier development
 
- [https://bugreports.qt.io/browse/PYSIDE-363 Documentation]
 
  -> Managed to make libxml, libxsl an optional dependency falling back to QtXmlPatterns (despite [https://bugreports.qt.io/browse/QTBUG-66925 QTBUG-66925])
 
  -> Small fixes to doc modifications
 
  -> Fix class inheritance diagrams for nested classes
 
 
 
==== 01. March 2018 ====
 
- automatic snapshot process almost in place (pending reviews) (RTA to follow)
 
- general bug fixing (including build and version problems)
 
- most community Pyside1 pages point to official Pyside 2 (Qt for Python) wiki pages
 
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] - Heap Type conversions ongoing
 
- documentation improving
 
  -> class diagrams being generated
 
  -> missing links and references
 
  -> dependencies to qdoc bugs
 
  -> snapshot process in works
 
- added support for scoped enums in pyside
 
- Important things discussed:
 
  - PySide2 versioning (current proposal WIP patch at https://codereview.qt-project.org/#/c/221767/)
 
    - Do official releases follow Qt branch names? -
 
      -> yes (minor release of Pyside is bound to same minor release of Qt
 
      -> patch level version may differ
 
    - Will we have snapshots, and if so, will they be uploaded to pip? How will we handle snapshot versions?
 
      -> tentative yes, if public pip server supports snapshots Pyside should be good citizen
 
    - alpha / beta / RC versioning?
 
      -> Pyside should follow the Qt schema
 
    - Probably need to take into account PEPs for versions pushed to Pypi.
 
    - Shiboken / PySide2 versions in sync?
 
      -> yes, they should be in sync
 
    - Will we specify a version for 5.6 branch?
 
      -> yes, but no packages being made
 
    - Are we sticking to the package name PySide2, but follow Qt 5.x versions as PySide2 versions?
 
      -> Pyside2_5.11.0 as in https://codereview.qt-project.org/#/c/221767/
 
  - Do we want to deploy msvcrt dlls into Windows packages?
 
    -> needs more research - is it really needed ?
 
  - Do we want to ship debug symbols for Qt inside the PySide2 packages?
 
    -> not for now
 
  - Do we want to ship debug Qt shared libraries for macOS packages? (not possible on Windows, not applicable on Linux afaik).
 
    -> not for now
 
   - How will the pip upload process look like? Manual uploads? Who takes care of it?
 
    -> Qt release team will take care of it
 
  - Current branching policies:
 
    -> 5.6 branch stops being merged into 5.9 (after pending patches have merged) -> cherry-pick mode
 
    -> 5.9 is base line for patches and being forward merged to 5.11
 
    -> no packages from 5.9 & 5.6 (interested parties need to get it from git)
 
    -> 5.11 becomes branch for first TP
 
    -> dev is feature development
 
    -> all first TP release related patches go to 5.9 (and 5.11 subsequently)
 
 
 
==== 22. February 2018 ====
 
- dev branch is still/again broken in CI, seems like pyside issues
 
- changes to create automatic snapshots out of CI is still under review
 
- Numerous small fixes to the [https://bugreports.qt.io/browse/PYSIDE-363 doc] generation, significantly bringing down the number of documentation warnings
 
- Massaged build rules to improve built packages
 
  - Removed unnecessary _utils.py file [https://bugreports.qt.io/browse/PYSIDE-600 PYSIDE-600]
 
  - Changed wheel package names to contain both PySide2 version and Qt version against which it was built [https://bugreports.qt.io/browse/PYSIDE-613 PYSIDE-613]
 
  - Finally got libclang to be deployed into packages
 
  - Improved build process not to copy unnecessary symlinks and duplicating libraries when creating wheel (so that you don't get 3x size increase because of 3x number of WebEngine libraries) [https://bugreports.qt.io/browse/PYSIDE-495 PYSIDE-495]
 
  - Fixed wheel package names to contain correct minimum deployment target with which macOS was built with (on further analysis, this will need further improvement) [https://bugreports.qt.io/browse/PYSIDE-612 PYSIDE-612]
 
  - Fixed rpath handling for QtWebEngineProcess when creating standalone packages on macOS [https://bugreports.qt.io/browse/PYSIDE-605 PYSIDE-605]
 
- Added CMake build rules for scriptable application example [https://bugreports.qt.io/browse/PYSIDE-597 PYSIDE-597]
 
- Investigated and fixed a heap corruption bug in a test that caused constant crashes on macOS CI runs
 
- Reduced number of warnings when running shiboken to create user bindings (like scriptable application example) [https://bugreports.qt.io/browse/PYSIDE-587 PYSIDE-587]
 
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595]: Making slow progress, still debugging. It's a difficult process, but assumption is that it will work.
 
- Havent's merge [https://codereview.qt-project.org/#/c/220083/ this new patch] because we should be 200% sure it's properly working.
 
- Working on a few bugs [https://bugreports.qt.io/browse/PYSIDE-106 PYSIDE-106] [https://bugreports.qt.io/browse/PYSIDE-570 PYSIDE-570]
 
- One of the bugs [https://bugreports.qt.io/browse/PYSIDE-611 PYSIDE-611] was valid only for 5.6, but I noticed a strange behaviour on 5.9, so I will keep working on it, even after we move 5.6 to cherry pick mode.
 
 
 
==== 15. February 2018 ====
 
- CI broken, 5.6 & dev branch broken, 5.9 just got working again
 
- first TP will be 5.11 based (needs 5.11 git branches, 5.6 branch goes into cherry-pick mode, 5.9 branch remains main target)
 
- more modules added to doc, qt3d & qtquick has some special handling
 
- snippet work ongoing
 
- snapshot generation on the agenda
 
- lots of bug fixing e.g.: [https://bugreports.qt.io/browse/PYSIDE-104 PYSIDE-104]
 
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
 
 
 
==== 8. February 2018 ====
 
- Looking through previous EuroPython talks to write a proposal for this year.         
 
- Working on a few bugs (fixed a couple related to objects references),               
 
  - that sadly will open new issues with memory management. A further analysis on this matter could improve the current memory leaks on PySide.                         
 
- Trying to "organise" a little the typesystem XML files.                             
 
- Working on [https://bugreports.qt.io/browse/PYSIDE-104 PYSIDE-104] that ended up being a general issue on PySide about a proper verification between slots and signals arguments, to find the best match.
 
- Merged a few build related changes in 5.6
 
  - Pending change for [https://bugreports.qt.io/browse/PYSIDE-593 PYSIDE-593]
 
  - Pending change for [https://bugreports.qt.io/browse/PYSIDE-605 PYSIDE-605]
 
  - Merged changes for [https://bugreports.qt.io/browse/PYSIDE-603 PYSIDE-603] and [https://bugreports.qt.io/browse/PYSIDE-604 PYSIDE-604]
 
- Investigated and attached minimal reproducible example for [https://bugreports.qt.io/browse/PYSIDE-585 PYSIDE-585]
 
- Investigated some macOS build related aspects for package release
 
- 5.6 CI is unblocked, but 5.9 CI is blocked due to qtbase issues (version bumping)
 
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560] waiting for view
 
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] work ongoing, not ready yet
 
- [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363]  Documentation: Fixed images, fix handling of qdocconf files  that contain several modules. Looking at snippet resolution.
 
- Problems with Qt3D due to refactoring of Qt3Dextras in 5.10. Pushed  [https://codereview.qt-project.org/#/c/219105/ patch] suggestion.
 
 
 
==== 1. February 2018 ====
 
- Continued work on documentation [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363], fixed static pages, add more modules, fixed parameters to qdoc, images
 
- The GettingStarted wiki is getting better, besides a cleaning it a bit
 
  - moved the topics around to have guidelines by supported platform (''a la Qt'')
 
  - have received feedback and trying to add more information
 
- Addressed bugs:
 
  - [https://bugreports.qt.io/browse/PYSIDE-34 PYSIDE-34]
 
  - [https://bugreports.qt.io/browse/PYSIDE-264 PYSIDE-264]
 
  - cleaning a bit Shiboken's XML files.
 
  - [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
 
    - ported to 5.9, extended to 18 header files
 
     - solved unicode problem
 
    - reduced the patches to be minimal (avoid many #ifdef's, use a verbose macro name if possible)
 
    - made everything compile but one announced file: "object.h" depends on the heaptypes solution ([https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595]). Removed WIP status,review pending.
 
  - [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595]
 
    - Started experimenting
 
    - turned out that the signature extension barfed because it could no longer find the type "__name__". The function PyType_Type.tp_new needs to be called to provide the "ht_name" attribute that is used in heaptypes.
 
- solving the attribution file issues.
 
- Pending patches to fix libICU issues
 
- Pending patches to fix OpenSSL issues [https://bugreports.qt.io/browse/PYSIDE-599 PYSIDE-599]
 
- Pending patches to deploy libclang library for shiboken
 
- Improved documentation about OpenSSL dependency
 
- Pending patches for cleaning up build scripts a bit (logging and refactoring)
 
- Pending patches to reduce barrage of warnings [https://bugreports.qt.io/browse/PYSIDE-587 PYSIDE-587]
 
- Pending patch for adding CMake build rules for the scriptable_application example (useful as a reference on how to use shiboken for custom bindings) [https://bugreports.qt.io/browse/PYSIDE-597 PYSIDE-597]
 
- Old 5.6 CI integration issue fix, but a new issue appeared that was fixed for 5.9 and dev, but still blocks 5.6
 
- Updated the qml basics tutorial
 
 
 
==== 25. January 2018 ====
 
- Pyside not renamed
 
- Releasing preparation
 
  - pip packages created by coin
 
  - Automated release testing (RTA) (installing pip, launching an example)
 
  - final selection of release package targets to be define closer to release (depending on current stable ABI work)
 
- Investigation doc issues when using prefix & shadow builds
 
- Need to identify prime demos/examples
 
- Started to rework [[PySide2 GettingStarted|Getting Started Guide]] wiki
 
- Addressed cmake build issues
 
- Handling libICU issues (causing linker issues when importing QtCore)
 
- Continued work on [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
 
 
 
==== 18. January 2018 ====
 
  - macOS framework fix (should ignore qt4 system headers)
 
  - another patch on top to fix OpenGL integer types on mac / Linux (GLuint64, GLint64)
 
  - Fixed so that PySide 5.6/5.9 is not linked against the Python shared / static library (this was wrong because the symbols need to be picked up by the dynamic loader from the python interpreter itself). http://bugreports.qt.io/browse/PYSIDE-522
 
  - Completed move of examples from pyside-examples.git to pyside-setup
 
  - added additional OpenGL2 core example
 
  - fixed testrunner (these silently failed since forever) https://codereview.qt-project.org/#/c/216732/
 
  - fixed issues whereby wrong QObject ctors were selected
 
  - removed webkit from Pyside2 build 
 
  - talk about Windows specific instructions for [[PySide2 GettingStarted|Getting Started Guide]]
 
  - Qt3D issues in Qt 5.10 fixes
 
  - clazy warning fixes
 
  - Stable ABI work (started to convert implementations) (see [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560])
 
    - requires adoption of HeapTypes
 
  - QML tutorial updates
 
  - Doc snapshots being prepared
 
 
 
==== 11. January 2018 ====
 
- multi pyside packages (not easy to do)
 
  - unlikely to achieve until TP
 
  - a package per python release (3.4, 3.5, 3.6, 2.7)
 
  - package per platform (win 32bit|64bit, mac, linux)
 
  - long term task to convert to reduced Python API (to support multi 3x packages)
 
  => have to cut some targets: one 3x and 2.7 release
 
  -> create doc howto to encourage custom builds for not covered platform combo
 
  -> do we need commercial for release
 
- pysinstaller is an installer
 
  -> deployqt tool not necessary
 
  -> documentation required stating the option
 
- rename import options
 
  - rename via alias possible
 
  -> still an issue when looking up particular types but probably manageable 
 
  - renaming option: Qt4Pyton, QtPy, QtPython, Python4Qt, Qt
 
- example shift
 
  - https://codereview.qt-project.org/#/c/215900/
 
- Basics for doc generation toolchain
 
- Issues where cmake picks up platform Qt references where it should use a Qt custom install
 
- Qt3D bindings still under progress
 
- [https://bugreports.qt.io/browse/PYSIDE-34 PYSIDE-34] & [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
 
- Documentation
 
  - minor doc fixes
 
  - documenting examples
 
 
 
==== 4. January 2018 ====
 
- multi pyside packages (not easy to do)
 
- renaming Pyside to "Qt for Python"
 
  - quite challenging due to implied import and lib changes
 
  - alias for existing imports would be beneficial
 
- discussion around existing function test
 
  -> working assumption is that we ignore added function and check for existing base line only
 
  -> effort too large to maintain every single new addition
 
- discussed issues around concurrent existing Qt builds while building pyside (potential cross leakage)
 
- various fixes to doc generation steps (see [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363])
 
- discussed need for good examples as part of documentation
 
  -> considered options to cleanup and remove need for submodule
 
 
 
== 2017 ==
 
 
 
<div class="mw-collapsible mw-collapsed" style="overflow:auto;">
 
 
 
==== 21. December 2017 ====
 
- Issues building for Windows for Python 2 and 3 (on coin)
 
- discussing potential pyside demo/example for RTA purposes
 
- Continued work on macOS / Qt 4 header issues, progress is there
 
  - breaks GL signature test on Linux, needs further investigation
 
- Investigated PyInstaller (potential option to deploy apps written with Pyside)
 
  - seems to work almost out-of-the-box for deploying PySide apps
 
- Investigated building one package compatible with multiple Python 3.x minor versions
 
  - not possible currently, will require a lot of work, possibly not feasible
 
  => we need to build 3.4,3.5,3.6 * win, linux, mac packages = 9 packages
 
  => 3 more for each platform and Python 2.x
 
  => commercial packages?
 
- lots of discussions and fixing of doc tool chain (qdoc in dev currently broken)
 
  - adding documentation has begun in earnest
 
- continued work on PYSIDE-578
 
 
 
==== 7. December 2017 ====
 
- pip wheel installation
 
  - adding support for simultaneously python 2 and 3 builds
 
  - open issues: test installation towards multi python 3 versions
 
  - delivery channel for Pyside binaries (pip server? local install from qt account download?)
 
- investigate options to have sth like pyinstallqt (pysinstaller is a possibility)
 
- final keyword support by shiboken
 
- Qt3D bindings patch close to completion - > requires some Qt changes in 5.9.4 or later Qt
 
- fixing pyside build issues when encountering Qt 4 headers on macOS
 
- PYSIDE-578 (testing procedure/testrunner) -> adds heuristic to adapt to failure rates (flakiness handling)
 
  - concerns that running all tests 5 times adds too much load on the CI (test runs needed)
 
 
 
==== 30. November 2017 ====
 
- packaging related coin changes
 
- last weeks merges between 5.6 and 5.9+ blocking coin have been fixed (in particular on RHEL)
 
  - 5.9 + 5.6 are passing, dev has some private Qt changes which will affect pyside/dev
 
- lots of coin infrastructure issues
 
- RTA test wheels added (install and launch single example)
 
- crash bugs in 5.6 branch reported but not details known yet (waiting for more details)
 
- some discussion what changes should be put to 5.6 vs 5.9 branch
 
- Qt3D bindings started
 
  - some changes in qt3d/5.9 required)
 
  - shiboken bugs discovered in the process (virtual function guessing & some comparison operators for namespace generated)
 
- small regression related to rpath handling on Linux
 
- open pip wheel issues:
 
  - handling of multi Python version wheels
 
- testrunner bugs addressed and reducing flakiness
 
- issues in Pyside when building with gcc 7.x
 
- qdoc from qt5/dev is required for pyside due to webxml support
 
  - it is a problem for the pyside/5.9 branch
 
 
 
==== 23. November 2017 ====
 
- pip wheel support issues on Linux solved (not yet verified)
 
  -> libICU usage on Linux should be enabled via pyside setup script
 
  -> downloaded from qt account download area
 
  - discussion how to do wheel builds for different Qt base lines -> implies to different wheel packages
 
  - need to evaluate how different python versions on various Linux distros impact wheel binaries
 
  - target: 6 wheels (2 per platform for 2.7 & 3.5+ Python)
 
  - OpenGL example
 
  - merge 5.6-> 5.9 attempted
 
    - signature update to match Qt 5.9 ABI/signatures
 
    - plenty of testing flakiness and also test crashes
 
  - improvements to signature tests
 
 
 
==== 16. November 2017 ====
 
- Build system cleanup. It is now possible to build only a subset of Qt modules per cmd line option
 
  -  this is not complete and may need further patches
 
- Added QAxContainer, more classes from 5.10
 
- Preparing to add Qt3D
 
- Removed flaky test
 
- further research on how pip wheels might be used for Pyside
 
  - seems to work well on win & macOS
 
   - problems on Linux related to libICU (or in general due to different system libraries)
 
- implemented and tested --standalone feature for the main Qt platforms [https://bugreports.qt.io/browse/PYSIDE-558 PYSIDE-558]
 
- open question remains how 3rdparty Pyside deployment path might look like
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510]
 
 
 
==== 9. November 2017 ====
 
- Work on simplifying the build system, made it possible to specify a module subset to build
 
- [https://bugreports.qt.io/browse/PYSIDE-558 PYSIDE-558] Fixing rpaths and making --standalone work on the 3 platforms. Result: Self-contained binary wheels. Needs Review.
 
- Trying to setup the project for building the docs. I managed to build the rsts from the patch in gerrit but running sphinx on those rsts results in errors about python 2 style code.
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] work continued
 
 
 
==== 2. November 2017 ====
 
- Releasing:
 
   - continued work on macOS installer
 
  - binaries must be patched during the install from repo (rpath setting)
 
  - adopting the scripts from Qt for Pyside
 
  - made pip install work on Mac -> would be alternative to online installer approach
 
    - two deployment choices available
 
- discussions on how void* pointer should be handled, two options on the table
 
  - add additional Pyside module handling such pointers
 
  - add feature to shiboken to transparently add the support to any arbitrary C++/pyside project using shiboken
 
- documentation snapshot generated
 
- simplified setup-pyside and related build script options
 
 
 
==== 26. October 2017 ====
 
- Releasing:
 
  - test repo for online installer created (mac seems to deploy)
 
  - first evaluation of suggested installer approach on various platforms
 
- Documentation:
 
  - Qt doc team joined the effort
 
  - first experiences are collected
 
  - should new documentation be done in rst rather than qdoc format?
 
  - Getting started, General platform requirements and general fixes turning up during generation
 
- [https://bugreports.qt.io/browse/PYSIDE-571 PYSIDE-571] received further fixes and reviews
 
- REDHAT not working on Coin (caused by gcc header issues)
 
- other minor improvements
 
 
 
==== 19. October 2017 ====
 
- Discuss open Pyside 2 release & documentation
 
- Release packaging suggestion
 
  - Qt for Python installed via Qt installer and python scripts pointed to module via PYTHON_PATH
 
  - create test online repository for Qt installer
 
  - follow up how this Pyside installation approach might impact deployment of Python apps using Qt for Python
 
  - Linux distros shipping Pyside? (not sure yet either)
 
- coin
 
  - breakage in CI provisioning due to competing Python binaries coming from MSVC 2017
 
  - coin template needs updating
 
- [https://bugreports.qt.io/browse/PYSIDE-571 PYSIDE-571] work progressing (ready for review)
 
- lots of fixes in Pyside dev branch and
 
- feedback from Qt World Summit:
 
  - is Pyside on Android and iOS?
 
  - iOS probably out since platform cannot have interpreted code
 
  - Scriptable application use case was a sought after feature
 
  - qdoc got WebXML patch -> open question which version to use for doc generation across the various pyside versions
 
    - add script to support single command to generate documentation
 
 
 
==== 12. October 2017 ====
 
- no update due to Qt World Summit 2017
 
 
 
==== 05. October 2017 ====
 
- Qt DataVisualization port has finished including an example
 
- Coin no progress due to pending Qt 5.9.2 release
 
- webxml support being implemented inside qdoc (beginning of the pyside documentation toolchain)
 
 
 
==== 28. September 2017 ====
 
- 5.6 and 5.9 branches are *finally* enforced by CI - yeeeaaahh
 
- Dev branch is still missing some forward merges before it can be enabled.
 
- port of QtDataVisualization progressing
 
- fixed bugs: [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510], [https://bugreports.qt.io/browse/PYSIDE-517 PYSIDE-517], [https://bugreports.qt.io/browse/PYSIDE-562 PYSIDE-562], [https://bugreports.qt.io/browse/PYSIDE-564 PYSIDE-564]
 
- [https://bugreports.qt.io/browse/PYSIDE-156 PYSIDE-156] in progress, first example of qApp protection, benchmark of impact ongoing
 
 
 
==== 21. September 2017 ====
 
 
 
- Prototyping and exploring of Pyside packaging options
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] done and merged
 
- [https://bugreports.qt.io/browse/PYSIDE-156 PYSIDE-156] being addressed thanks to [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510]
 
- [https://bugreports.qt.io/browse/PYSIDE-487 PYSIDE-487] Qt Data Visualization port progressing
 
 
 
==== 14. September 2017 ====
 
- Coin
 
  - 5.6 testing is back online (5.9 target unblocking pending a merge)
 
  - Packaging of Pyside started to become a discussion topic
 
    - Standard PIP deployment
 
    - Separate delivery via the usual Qt account channel
 
- void* support has a pending patch (https://codereview.qt-project.org/#/c/205124/ and related example https://codereview.qt-project.org/#/c/205272/)
 
- Documentation work ongoing
 
  - WebXML support was added to qdoc - see [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363]
 
   - inputting the resulting WebXML to shiboken gave promising results
 
  - Qt Creator gain ability to fold away Python license headers
 
- Signature patch (https://codereview.qt-project.org/#/c/198654/)
 
 
 
==== 7. September 2017 ====
 
- Pyside CI broken (timeout for tests is zero)
 
  - Pyside provisioning scripts are very fragile
 
  - Qt's own  provisioning is interfering when e.g. Pyside relevant tools get changed by Qt
 
  - new ideas and redesign is likely to be needed
 
- New Bindings: QRegularExpression, QVersionNumber, QUuid,
 
- Discussions around Documentation for pyside
 
  - couple of options for generation pipeline
 
    1.) qdoc generates WebXML -> Shiboken converts WebXML to ReST (used to work in Qt 4 days)
 
    2.) qdoc is lib which creates AST - > shiboken uses the AST to generate ReST
 
    3.) \pyside to document python classes (lots of documentation effort and not ReST integratable)
 
    4.) minimalistic approach is to merely link to the Qt object class reference (python specific docs are somewhat separate
 
- [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516] further investigation how to deal with void* APIs
 
  -> prototyping ongoing
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] redesigned once again (no more internal Python dependencies, Python version independent implementation)
 
 
 
==== 31. August 2017 ====
 
- 5.9 passes on all platforms but one (10.10 still failing)
 
  -> fix for provisioning scripts pending
 
- 5.6 no problems at hand (all passing)
 
- [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516] hit a dead end
 
  -> fundamental way of passing vertex data (void*) pointer between Python and C++ not addressed yet
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] complete
 
 
 
==== 24. August 2017 ====
 
- Coin 5.9 provisioning is in place, but there are some issues with paths to tools which are being addressed
 
- Build issue on Windows 10 5.9 branch, addressed by patch in review https://codereview.qt-project.org/#/c/203406/
 
- Fix to macOS build when old Qt 4.8 is present, addressed by patch https://codereview.qt-project.org/#/c/203313/
 
- [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516] progress on bringing in more of the QOpenGL classes
 
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560] stable ABI was investigated, decision is required
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] finalizing license modifications
 
- [https://bugreports.qt.io/browse/PYSIDE-156 PYSIDE-156] ongoing implementation for fixing qApp crashes
 
- [https://bugreports.qt.io/browse/PYSIDE-552 PYSIDE-552] in process of being merged
 
- [https://bugreports.qt.io/browse/PYSIDE-562 PYSIDE-562] pending patch
 
- [https://bugreports.qt.io/browse/PYSIDE-563 PYSIDE-563] in process of being merged
 
- PySide 2 presentation being prepared for Qt World Summit 2017
 
 
 
==== 17. August 2017 ====
 
- Almost everyone is still on holiday - not much progress
 
- PySide 5.9 branch CI changes are still pending integration / ongoing due to issues with the CI infrastructure switch
 
- Investigation ongoing regarding QSSL classes on 5.9 branch
 
- PYSIDE-510 - ongoing work to make separation of different licensed code
 
- PYSIDE-156 - initial work to stop crashes when using methods that require an allocated QApplication instance
 
- PYSIDE-558 - initial investigation on how to proceed
 
- Updated the PySide2 wiki documentation to clear up build steps and requirements.
 
 
 
==== 10. August 2017 ====
 
- holiday time is hampering project at the moment -  not much progress
 
- CI changesin Qt affected Pyside project such that focus was on different CI matters
 
- [https://bugreports.qt.io/browse/PYSIDE-557 PYSIDE-557] being addressed
 
- some very minor issues were fixed
 
 
 
==== 03. August 2017 ====
 
- PYSIDE-510 under code review https://codereview.qt-project.org/198654
 
  -> license issues have to be addressed
 
  -> some testing aspects still open (delayed till later on)
 
  -> investigation of impact on deployment across multiple python run-time versions required
 
- missing bindings script/wiki page updated: [[PySide2_Missing_Bindings|Missing PySide2 bindings]]
 
- first working array support has been delivered (some adjustments still required), now proceeding to extend for OpenGL [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516]
 
- Missing classes in works (e.g. QAbstractnativeEventFilter, QFileLock,....)
 
  -> revealed some issues of handling void* pointers
 
 
 
==== 27. July 2017 ====
 
- Fix for [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] causes lots crashes in auto tests
 
  -> more investigation ongoing
 
- coin
 
  - since 5.6 is now enforced by Qt CI the focus shifted to the 5.9 branch of Pyside
 
  - still encountering build issues on 5.6 though
 
  - cmake upgrade for macOS 10.10
 
  - missing virtual env for macOS 10.12 being deployed
 
  - msvc 2013 being removed from CI targets
 
  - clang on OpenSuSE deployment ongoing
 
  - lots of effort went into debugging the above Coin issues
 
- numpy support for 2d array feature development progressing ([https://bugreports.qt.io/browse/PYSIDE-354 PYSIDE-354])
 
 
 
==== 20. July 2017 ====
 
- coin
 
  - license test passing
 
  - setup issues wit Python 3 and msvc 2008 vs 2015 issues
 
  => need to install newer Python 3 binaries
 
  => otherwise looks like enforced testing can be set alive on 5.6 branch
 
  - 5.9 still having clang header issues
 
- 2D array support work in progress
 
- [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] -> waiting for PYSIDE-510 dependency
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510]-> issues with Python 2.x left
 
- need to get a handling what functions are not supported by pyside due to exclusions or missing support in shiboken
 
 
 
==== 13. July 2017 ====
 
- coin
 
  - Production coin was updated today and all fixes are finally executed
 
  - 5.6
 
  - macOS 10.11 machines have Python 2.6, which causes test script to fail due its usage of a
 
          module added in 2.7. Investigation in progress on the best way to fix this.
 
  - build failure with Windows 8.1 (msvc2013-x86)
 
  - 5.9
 
  - macOS 10.12 missing virtual env (https://codereview.qt-project.org/200006)
 
  - Rest Linux/macOS configs are failing various build issues
 
  - dev is still pending for qt5 merge from 5.9 
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] development completed, test added, needs review
 
- [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] ongoing work
 
- [https://bugreports.qt.io/browse/PYSIDE-550 PYSIDE-550] investigated, needs a working solution to allow proper building on distros that separate Qt private headers into separate packages
 
- [https://bugreports.qt.io/browse/PYSIDE-354 PYSIDE-354] ongoing work on C / C++ array support in PySide, some questions remains on how to deal with xml syntax and multiple dimensions.
 
 
 
==== 29. June 2017 ====
 
- coin
 
  - Qt 5.6 all coin changes for Pyside are done but waiting for coin production update (after Qt 5.9.1 release)
 
  - Pyside/Qt 5.6 on new OpenNebula infrastructure confirmed to run
 
  - Qt 5.9 based setup still misses clang libs (merge pending)
 
  - Pyside/Qt 5.9 test failure fixes on macOS
 
- worked on array support (passing arrays between Pyside and Qt API) - work in progress ([https://bugreports.qt.io/browse/PYSIDE-354 PYSIDE-354])
 
- continued work on debug builds across the platforms
 
- embedded Python example under review (further testing across the platforms)
 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] finished (not yet merged) -> revealed a few more  problems in [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] & [https://bugreports.qt.io/browse/PYSIDE-308 PYSIDE-308]
 
- added a way to dynamically detect the available Qt modules in Pyside
 
 
 
==== 22. June 2017 ====
 
- building pyside on Win with debug and non-debug
 
- QSSL* classes do not build on macOS & Windows (patch in progress)
 
- dll name handling work finished (build system issues were addressed)
 
- PYSIDE-531 discussions
 
- coin
 
  - followup from 18 May (windows issues in coin)
 
  - test runner changes being merged should address this
 
  - new regression on macOS targets though
 
  - 5.9 issues due to clang continue to exist (will be addressed after 5.6 is enforced)
 
 
 
==== 15. June 2017 ====
 
- dll name handling fixed across the platforms (e.g. pkgconfig handling)
 
- PYSIDE-500 fixed
 
- PYSIDE-331 is still not done (in parts a module by module fix is required)
 
- PYSIDE-510 ongoing
 
- no further progress on coin
 
- Getting started guide has been updated dealing with Qt 5.6 and Qt 5.9 based Pyside builds
 
- scriptable Pyside example been developed to demonstrate SDK-like usage of Pyside
 
- lots of small infrastructure changes/fixes
 
 
 
==== 8. June 2017 ====
 
- Proposed solution for PYSIDE-500
 
- Further work on example for PYSIDE-526, work on shiboken2 command line handling to ease usage with qmake
 
- Updated Getting started Wiki
 
- Introspection work continued (PYSIDE-510)
 
 
 
==== 1. June 2017 ====
 
- PYSIDE-500
 
- https://wiki.qt.io/PySide2_GettingStarted needs a serious cleanup
 
  - 5.6 vs 5.9 differences not explained
 
  - specify exact version matching conditions
 
- pyside repo merge completed
 
  - Coin changes required to catchup - > recent CI issues have caused delay
 
- Introspection work continued (PYSIDE-510) -> not yet complete
 
- qtcharts and related examples have been ported (5.9 only)
 
- license header checks of Pyside for Coin able to distinguish branches
 
- Array support for Pyside missing (numpy_array support?)
 
 
 
==== 18. May 2017 ====
 
- Coin
 
  - Win nodes didn't run the cleanup functions -> test failures due to artifacts -> no solution yet
 
  - Clang issues persist and this must be addressed in the broader scope of Qt/qdoc depending on libclang too
 
    -> until this point in time the setup is a manual one for pyside/5.9+
 
- merge of psyide repositories -> no objections against the plan in the community
 
  -> merge will happen in the next few days (pyside.git, pyside-setup.git and shiboken.git become one repo)
 
  -> examples, wiki and tools will remain as they are
 
- QOpenGL* porting continuing
 
- qttext2speech ported to Pyside2
 
- failing QML tests in Qt 5.9 based Pyside
 
- PYSIDE-510 - introspection solution in the works
 
- Qt World Summit Berlin 2017 (talk for Pyside being handed in)
 
 
 
==== 12. May 2017 ====
 
- looked into the Windows tests failures, and the reason might be related to how we copy around build artifacts, leading to an incorrect folder structure. Coin team to look at it.
 
- Fixed a small regression in 5.9 with building on macOS after some cmake changes that happened in 5.6
 
- Implemented, tested, reviewed and committed the multimedia widgets examples
 
- documentation from Pyside1 days can not be generated anymore
 
  -> new approach required using exiting Qt5 doc tools
 
- QOpenGL* port to Pyside has started -> missing support for arrays in shiboken
 
  - more thorough design discussion needed
 
- Coin
 
  - provisioning for clang in Qt CI ongoing: https://codereview.qt-project.org/#/c/192517/10
 
 
 
==== 04. May 2017 ====
 
- Coin
 
  - libclang 4.0 provisioning available (code reviews ongoing -> enabler for Pyside and qdoc testing)
 
  - 5.6 coin issues resolved
 
  - macOS related CI/cmake failures were resolved
 
  - some CI sync issues among pyside submodules (always submodules HEAD is tested)
 
  => may have to change once we come closer to the final release ->
 
  => fine as long as we are in heavy development mode
 
  - discussion around Ubuntu and OpenSuse configurations
 
  - minimal cmake requirements not met on all distros
 
    - 5.6 only be build using RedHat 6.6
 
    - 5.9 builds have updated Linux distros -> may be able to obtain a new cmake version without hacking the standard toolchain
 
- QtMultimedia and QRaster* API bindings further completed
 
- added tests and examples for the above bindings/APIs
 
- PYSIDE-510 (required for simplified and more generic testing of bindings)
 
- PYSIDE-504 work is ongoing
 
- PYSIDE-507 -> avoid hardcoded includes when certain Qt modules are not available
 
- brief discussion whether to merge the shiboken and pyside repo
 
  -> advantages from a CI perspective and reduces pyside setup complexity
 
 
 
==== 26. April 2017 ====
 
- Coin
 
  - provision for 5.9+ branches -> we would like to use libclang 4.0
 
  - test still not yet executed due to branch mismatch which pulls in dev branches
 
- missing bindings in QtCore/QtGui/QtMultimedia - work in progress
 
- clang support done (except for a Mac issue)
 
  - Pyside clang version required Qt 5.7 or later
 
- [https://bugreports.qt.io/browse/PYSIDE-500 PYSIDE-500] done
 
- work on PYSIDE-500, 502, 504, 497 will continue
 
- qdoc work started trying to recover whatever documentation is left from Pyside 1.x
 
 
 
==== 20. April 2017 ====
 
- Fix for [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] broke the Windows build; under investigation
 
- Refactoring, fixed build warnings
 
- Looked at debug builds on Windows
 
 
 
==== 13. April 2017 ====
 
- discussion around merge policies between 5.9 and 5.6 branch
 
- Linux debug library issues fixed
 
- PYSIDE-488 fixed via workaround
 
- fixed a unit tests
 
- worked on qdoc/html generation in Pyside (failed so far - waiting for qdoc maintainer feedback)
 
- PYSIDE-331 patches merged -> more bugs found in the meantime
 
 
 
==== 6. April 2017 ====
 
- 5.6 branch created
 
- 5.9 branch to be created as well (easier setup for Qt 5.9 testing in Coin)
 
- Coin
 
  - not passing build platforms have been disabled
 
  - otherwise COIN passing on 5.6 (except for 2 failing test) -> soon to be enforced
 
  - license checker passing in dev
 
- clang changes merged to dev branch (after reviews)
 
  - clang provisioning on Coin still missing
 
- for now shiboken is not a generic C++ bindings generator (targeting Qt use cases only)
 
- TODO: enabling the generation of documentation from repos
 
- fixed mixed usage of debug and release build (no debug builds for windows)
 
- [PYSIDE-331] work continuing - fixed, tests are missing
 
  
==== 30. March 2017 ====
+
==== 8. August 2019 ====
- Coin
+
  - Licenses on Pypi
  - some platforms passing and will be enabled by default
+
    - pypi is used for commercial and open source users
  - MinGW, some OSX and cross compile targets remain out
+
    - currently only publishing the open source license -> will add second "commercial" license
- will branch pyside dev branches to 5.6, new dev becomes clang branch
+
   - Releasing
   - regular merges from 5.6 -> dev will start happening
+
    - 5.13.1 release is being prepared
  - Pyside 5.6 branch will continue to work against Qt 5.6
+
    - 5.12.5 follows later this month
- need reviews for [https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323] to merge clang changes
+
  - Documentation changes
  - Qt 5.10, 5.9 (on main desktop plawtforms working)
+
    - Qt for Python Logo updated
   - for now the Pyside dev development will be based on Qt 5.9 (to be bumped up later on)
+
    - CSS updates -> (lots of suggestions/bug reports from the community)
- [PYSIDE-331] - in progress
+
   - PYSIDE-951 (primitive type support) merged and done
- [PYSIDE-156] -  
+
  - PYSIDE-795 (Numpy support progressing)
 +
  - ported simpletreewidget from C++ to python
 +
  - restructuring cmake setup with the aim to have a more modular build selection
  
==== 23. March 2017 ====
+
==== 1. August 2019 ====
- Coin
+
  - (Summer break)
   - progressing
+
   - PYSIDE-795 (numpy support is progressing)
- More tests fixed
+
  - PYSIDE-951 (primitive pointer types ready for review)
- wip/clang branch created, will receive Clang parser port with instructions
+
  - Fixed pyside-setup 5.14 branch building (addressing lots of deprecation changes)
- Refactoring of shiboken, replaced QtXml classes by QXmlStreamReader allowing for stricter error checking
 
  
==== 16. March 2017 ====
+
==== 25. July 2019 ====
- Coin
+
   - (Summer break)
   - the fixes are still integrating or are under review (no further progress until this is done)
+
  - continuing on PYSIDE-795: documentation,
- clang parser replacement [https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323]
+
    - supporting the iterable protocol (will become sub-task)
  - most test failures related to clang are fixed
+
    - augmenting incomplete classes (QtPrintSupport)
  - tests ran pretty much through on Qt 5.9 (Windows and Linux - Mac not yet verified)
+
    - checking and correcting function signatures according to PYSIDE-951
  - code cleanups in shiboken
 
  - will create feature branch on all pyside repos to get the clang patch series under CI control
 
  - merges from regular pyside branches into clang branch will commence
 
  - readme required that explains how clang is to be built (if not provided by platform)
 
- [PYSIDE-331] - in progress
 
  
==== 09. March 2017 ====
+
==== 18. July 2019 ====
- Coin
+
   - (Summer break)
   - lots of changes in Gerrit for Pyside and coin
+
   - Some progress related to Bug fixing is being done.
   - the outcome has to be check once everything merged
+
   - bug fixing on signatures accessing "__doc__" on a module function.
  - upcoming clang dependencies in shiboken introduces new requirements for Coin
+
   - continued on PYSIDE-795
  - clang changes to be dealt with after pyside branching
 
- clang
 
  - first complete bindings generation with Qt 5.6 and Qt 5.9
 
  - some failing unit tests which have to be looked at individually
 
   - actual merge depends on pyside branching which in turn depends on recent Coin changes
 
- smart pointer support
 
  - patches generally done, gerrit review ongoing
 
  - rather large patch
 
- created list of missing bindings in Pyside ([https://wiki.qt.io/PySide2_Missing_Bindings Missing Bindings])
 
   - mostly class level view, global functions at al not covered
 
- Jira cleanup
 
  - PYSIDE-464, PYSIDE-217, Pyside-224 fixed
 
  - most bugs reviewed now and valid ~100 bugs were identified
 
  
==== 02. March 2017 ====
+
==== 11. July 2019 ====
- Coin
+
  - visiting EuroPython
   - Coin runs tests on Windows and OSX (some failures in the test - to be investigated)
+
   - discussed roadmap for 5.14 release (check out Pyside Jira project with FixVersion 5.14)
   - Windows provisioning somewhat blocked due to CI issues
+
   - continued CI configuration setup for pyside-setup
   - no progress on Linux
+
   - continued on shared pointer bugs(PYSIDE-1024 & PYSIDE-1043)
  - OSX 10.8 ran tests with expected results
+
   - assert triggering for certain types (PYSIDE-1037)
  - OSX 10.9 has issues due to Pyside not supporting namespace builds of Qt
+
   - further changes for PYSIDE-951
- clang
+
   - numpy enhancements (PYSIDE-795) (documentation and tests improvements)
   - preprocessor has remaining issue
 
    -> with clang compiler but gcc seems OK
 
    -> Qt Core wrapper close to compiling (QHash issues remaining)
 
- Smart pointer work continues
 
   - some uses cases work, other use cases might remain
 
- [https://bugreports.qt.io/browse/PYSIDE-364 PYSIDE-364] was fixed (patch pending)
 
- General error review on bugreports.qt.io
 
   - 50% done (prioritized bugs are handled/checked bugs - "done" bugs)
 
- ran address and leak sanitizer over Pyside which resulted in some worrying cases (need to be addressed going forward)
 
  
==== 22. February 2017 ====
+
==== 04. July 2019 ====
- [https://bugreports.qt.io/browse/PYSIDE-462 PYSIDE-462] Improved solution approved
+
  - Qt for Python 5.13.0 released
- [https://bugreports.qt.io/browse/PYSIDE-205 PYSIDE-205] Hard-to-detect memory leak plugged
+
  - Experimented with cross compiling
   - slow memory leak found in shiboken with thousands of false positives
+
    - not easily possible -> build system needs major work
   - used differential analysis of valgrind output
+
  - New control system for Qt for Python (isolates Qt4Python CI configuration from coin)
- Clang: Fixed Preprocessor handling (set defines, include paths), got minimal binding tests to pass, now adapting MetaBuilder and PySide to what Clang finds when parsing Qt. Good news: Very little need to set Q_DOC or other magic defines
+
    - more flexible way of working as not dependent on coin release
- Coin: Slow progress, currently struggling with provisioning
+
  - [https://bugreports.qt.io/browse/PYSIDE-951 PYSIDE-951] finish
- extensive bug triaging ongoing in Pyside Jira project
+
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] work continues
 +
  - fixed QFlags handling
 +
  - had trouble merging pyside to dev branch
 +
   - some discussions around smart pointer handling in Qt4Python
 +
   - https://bugreports.qt.io/browse/PYSIDE-634 ready to be merged
 +
  - https://bugreports.qt.io/browse/PYSIDE-1010
  
==== 16. February 2017 ====
+
==== 27. June 2019 ====
- Coin (no update - other priorities in release/CI team)
+
  - about to finish [https://bugreports.qt.io/browse/PYSIDE-951 PYSIDE-951]
- Clang (progressing on pre-processor work)
+
  - fixed "Fix qApp import of QCoreApplication"
- PYSIDE-315 closed
+
   - cleanup formatting of all source code and modern C++11 features
- PYSIDE-462 more review needed
+
   - final re-working of "Example: Move the SQL statements", improving the C++ code as well
- Shared pointer API very slowly progressing (lots of different fixes needed)
 
- QMimeDataBase support added
 
- QUrlQuery support blocked on QDOC defines in Qt sources (shiboken sets the wrong define)
 
- chasing memory leaks (PSYIDE-205)
 
- extensive bug triaging ongoing in Pyside Jira project
 
   - confirming and testing the reported bugs (70 of 200 processed)
 
   - some smaller bugs were fixed in the process
 
- quite a few bugs were discovered this week while working on the above items, e.g.:
 
  - deployment of pyside applications partly broken due to hard-coded install paths in Qt libs
 
  - Qt events are swallowed when Pyside error/exception occurs
 
  
==== 9. February 2017 ====
+
==== 20. June 2019 ====
- Clang progressed
+
  - Release
  - pure C++ tests for API extractions are passing (C++ parsing based on clang)
+
    - Qt for Python 5.12.4 released today
  - even works with cmake
+
    - Qt for Python 5.13.0 wheels done -> still need testing
   - old C++ preprocessor still to be replaced
+
   - Coin configurations to be separated from qt5.git (will become part of pyside-setup.git
   - working through old preprocessor and checking what magic it did and how clang might be able to replace it
+
   - SQL example was updated (to be more pythonic)
- PYSIDE-315 & PYSIDE-462 fixes pending for review
+
  - Shared pointer related fixes being done
- COIN
+
  - reopened https://bugreports.qt.io/browse/PYSIDE-1033 (how to build shiboken) after reviewing the current situation
   - continue progress an getting more platforms to pass (unblocking one step at a time)
+
  - macOS build issue being addressed
  - Windows (32bit) and mac are building, Win 64bit still not building
+
   - https://bugreports.qt.io/browse/PYSIDE-951
   - OSX and Windows are stopping in the test runner phase
+
   - team got commit rights for pyinstaller project repository
   - missing cmake update still on Linux (provisioning update required)
+
   - TQtC is sponsoring PyCon DE
  
==== 26 January 2017 ====
+
==== 12. June 2019 ====
- PYSIDE-315
+
  - Example polish, introduced QSaveFile, fixed tabbed browser [https://bugreports.qt.io/browse/PYSIDE-1022 PYSIDE-1022]
   - principle fix merged but some minor improvements still pending
+
   - Fixed [https://bugreports.qt.io/browse/PYSIDE-1017 PYSIDE-1017], named parameters in added functions
- Pyside-462
+
   - Started to look at some issues with smart pointers, [https://bugreports.qt.io/browse/PYSIDE-1024 PYSIDE-1024], [https://bugreports.qt.io/browse/PYSIDE-1016 PYSIDE-1016] related to [https://bugreports.qt.io/browse/PYSIDE-454 PYSIDE-454]
  - essentially a feature request as C++ default parameters are not yet supported by Pyside
+
   - Making progress in the embedded support story.
   - discussion ongoing how to address the problem
+
    - After trying the setup.py approach, there was a lot of modifications involve in our build process, so it was not considered a good option.
- COIN
+
    - a CMake approach is currently being used, and shiboken generator and the python module are successfully cross-compiled, but still, there is work to do.
  - 10.11, 10.9 & 10.8 build passes
+
   - Final solution of qApp embedding [https://bugreports.qt.io/browse/PYSIDE-571 PYSIDE-571]. After a long Odyssey of breaking solutions, qApp macro works now as expected with embedding.
  - 10.10 still failing during build
+
  - PyInstaller maintainer still did not reply as promised on 2019-06-04 phone call.
   - Progress on Windows and running into new problems further down the path
 
  - Redhat failed to general brokenness of the platform in CI
 
  - Ubuntu no further progress
 
- clang parser work progressing
 
  - completeness of work is currently measured by passing unit tests
 
  - there is a long way to go
 
   - see [https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323] and associated patches for progress monitoring
 
- Fixed regression which prevented Pyside to compile with Qt 5.5.1
 
- shared pointer support
 
- no update on 2nd February 2017 (next week)
 
  
==== 19 January 2017 ====
+
==== 6. June 2019 ====
- PYSIDE-315
+
  - Summer holidays affecting releasing? Any estimate when we would have:
   - a possible fix is pending, some minor performance improvements are still possible
+
    - Qt for Python 5.13.0 (Qt still on RC0)
   - caused by different signal/slot ordering in Qt4 and Qt 5
+
    - Qt for Python 5.12.4 (in the next few weeks)
- COIN
+
   - discussed options how to sign wheel content
   - issues on 10.8 and 10.9 platforms should pass now
+
   - cross compilation of Qt for Python (work in progress)
   - 10.11 & 10.10 still have issues
+
    -> investigating options on how to achieve that in an easy way
   - Windows timeout problem fix in COIN (but no COIN update until 5.8.0 released)
+
   - fixed build on CentOS
   - Linux builds are failing
+
   - https://bugreports.qt.io/browse/PYSIDE-1017
    - Ubuntu 14.04 fails due to cmake issue
+
   - https://bugreports.qt.io/browse/PYSIDE-1016
    - Redhat 6.6 & OpenSuse 13.01 deferred
+
   - https://bugreports.qt.io/browse/PYSIDE-1024
   - current COIN freeze for 5.8.0 release affecting patching of COIN for Pyside
+
   - https://bugreports.qt.io/browse/PYSIDE-1019
   - next steps in priority -> run tests on 10.8/10.9 and get Linux running
+
   - https://bugreports.qt.io/browse/PYSIDE-795 (NumPy)
- PYSIDE-79 regression fixed as well (some interaction between PYSIDE-315 & PYSIDE-79)
+
  - discussed commit issues with pyinstaller maintainer
- PYSIDE-462 to be looked at next
+
  - QtC will have presence on PyCon DE
- clang parser work progressing
 
  
==== 12 January 2017 ====
+
==== 23. May 2019 ====
- PYSIDE-315
+
   - Qt 6 (e.g. Pyside 6.0?) https://bugreports.qt.io/browse/PYSIDE-904
   - sorting of slots/signal connection changed on Qt side and Pyside side has not caught up
+
   - Pyinstaller issues being a bottle neck at the moment for the deployment story
   - had similar connection issues on the QML side, need to investigate whether there is a connection
+
   - Qt for Python 5.12.4 release
- PYSIDE-79
+
    - patches are accumulating
   - caused a regressions (not yet investigated)
+
    - TODO: branching, changelog, testing
- fixed OpenGL types not being recognized on MacOS (partly fixed)
+
   - Qt for Python 5.13 release status
- API's with shared/smart pointers in Qt don't work
+
    - need cleanup in Jira of fix versions
   - has potential long term effects and investigation has started into the reasons
+
    - Qt 5.13 blog post
- Refactoring shiboken in preparation for clang
+
    - start generating 5.13 release wheels for testing
- COIN currently runs tests with namespaced Qt
+
   - Discussed Python 2 EOL on 1.1.2020
  - short term fix to exclude namespaced Qt builds with Pyside (broken on MacOS 10.9)
+
    - Current proposal is dropping Python 2 support in Qt for Python 6
   - other failures: missing libraries on MacOS (10.11), missing provisioning on Windows, cmake issues on 10.10
+
    - Python 2 users can continue to use Qt for Python 5.15
  - unknown state on Linux (current Redhat too old)
 
- Prioritization after status round:
 
  - PYSIDE-315 to be investigated based on recent signal/slot patches for QML
 
  - Smart pointer issues reduced in priority to provide space for PYSIDE-315 & PYSIDE-79 regression
 
- verify that COIN runs testrunner (not just building Pyside)
 
  -> not yet verified since we are still failing builds in COIN
 
  
==== 5 January 2017 ====
+
==== 16. May 2019 ====
- COIN update
+
   - Team member attended PyCon US
   - COIN changes merged (no further patches pending)
+
   - Work on tutorials
   - need to run an integration test
+
   - [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] [https://bugreports.qt.io/browse/PYSIDE-1003 PYSIDE-1003] Final fix checked in
   - issues related to different build platforms still to be expected
+
  - [https://bugreports.qt.io/browse/PYSIDE-735 PYSIDE-735] Make generate_pyi crash on real ImportErrors, only!
- Continue with clang
+
   - [https://bugreports.qt.io/browse/PYSIDE-1004 PYSIDE-1004] writable signatures implemented but needs to change
  - backtracking a bit (reusing some node API's during parsing but otherwise use clang to populate the tree)
 
- test blacklisting reviewed (some removed - mostly signal related ones, one new regression)
 
- regressions in QtQuick were worked around (caused by recent Qt Quick changes)
 
- issues with macos framework style includes in Qt
 
- PYSIDE-315 debugging ongoing, very hard to track down
 
   - was it a regression from a previous Pyside release (e.g. Qt 5.4?!?
 
- hard-copied Qt 5.4 based headers still in existence
 
  - updated needed but would shut Qt 5.4 users out
 
</div>
 
  
== 2016 ==
+
==== 9. May 2019 ====
<div class="mw-collapsible mw-collapsed" style="overflow:auto;">
+
  - Final fixes to uic to be able to generate Python [https://bugreports.qt.io/browse/PYSIDE-797 PYSIDE-797]
 +
  - Refactorings in libpyside
 +
  - Work on SQL book tutorial
 +
  - Research into using Clang C++ API
 +
  - [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] [https://bugreports.qt.io/browse/PYSIDE-1003 PYSIDE-1003] Final fix is waiting for approval
 +
  - Viewer tool for [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803] nearly ready for browsing code
  
==== 22 December 2016 ====
+
==== 2. May 2019 ====
- lots of discussions around the COIN patches
+
  - 5.12.3 released
  - source archive setup being under review
+
  - Looking into OpenGL version functions [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955]
  - Qt 5.6 provisioning patches merged
+
  - Improved shiboken2 progress message output
  - CI uses Python 2.7 at this stage
+
  - Sped up shiboken2 class generation significantly
- clang C++ parsing continues
+
  - Improved code generated for multiple inheritance
- fix of some Pyside unit tests (now have a clean slate again)
+
  - First look at 5.14 API
- finished QtQuick port
+
  - Fixed Problems with PyInstaller after removal of Coin glitches
- some overflow problems have been fixed in shiboken
+
  - Wrote viewer tool to finally support [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803]
  
==== 15 December 2016 ====
+
==== 25. April 2019 ====
  - COIN changes pending for testing infrastructure
+
  - Preparation for Qt for Python 5.12.3 release.
  -> https://codereview.qt-project.org/177136 (Pyside change)
+
  - Replaced QtXmlPatterns by libxml2/libxslt for documentation generation
  -> https://codereview.qt-project.org/176968 (Coin change)
+
  - Testing and final polishing of Python output mode of uic 5.14
  -> https://codereview.qt-project.org/179662 (Provisioning changes)
+
  - New signatures related to PYSIDE-989
  -> https://codereview.qt-project.org/179663 (Provisioning changes)
+
  - Looking into OpenGL version functions [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955]
- waiting for COIN development team to review/accept the pending changes
+
  - Improving the usability of the "--reuse-build" option
- no update in PYSIDE-315 (under investigation)
+
  - fixing new PyInstaller problem with Python 2.7.16
- Flushed out a couple of shiboken, QML, qml example bugs
 
- Some bugs related to parser delayed until clang parser task done (https://bugreports.qt.io/browse/PYSIDE-322)
 
- most basic shiboken API extractor test to pass (global enumeration test)
 
- some trouble with int size data types
 
  -> Python 2 & 3 are different and the relevant C++ data types are yet again different from platform to platform
 
  
==== 8 December 2016 ====
+
==== 18. April 2019 ====
  - COIN patches pending approval
+
  - Usage of QtXmlPattern in doc tool chain of Qt for Python
   - Windows provisioning reviewed
+
   - xml pattern deprecated in Qt 5.13
   - Linux, Pyside, COIN itself
+
   - working on libxml2 replacement (has issues on platforms w/o libxml2 support)
  - Clang changes progressing, comparing AST tree from old parser and clang
+
  - in the long term, the qdoc generation process should really produce python docs too
  - PYSIDE-79 done
+
  - updated coin to continue to include QtXmlPattern for Qt for Python builds
  - PYSIDE-315 under investigation
+
- [https://bugreports.qt.io/browse/PYSIDE-996 PYSIDE-996] fixed on SuSE but not yet RedHat
  - QtQuick patches taking shape (some template magic and function pointer
+
- working on docs to provide hints when working with pyinstaller
  features in Qt cannot be parsed by shiboken)
+
  - [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955] in progress
 +
  - New attempt on [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803]
 +
  - shiboken [https://bugreports.qt.io/browse/PYSIDE-995 PYSIDE-995] call operator support
 +
  - custom scene graph rendering node in Python (related to PYSIDE-955 PYSIDE-989)
 +
- improving primitive type conversion (by the various OpenGL related bugs like PYSIDE-989 or PYSIDE-955)
  
==== 1 December 2016 ====
+
==== 11. April 2019 ====
  - COIN  
+
  - PyInstaller problems identified as COIN bugs [https://bugreports.qt.io/browse/PYSIDE-996 PYSIDE-996]
  - PYSIDE-79 there seems to be a final work around (https://codereview.qt-project.org/#/c/176374/)
+
  - continuing with [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795]
   - fixing a few tests in the process
+
   - handling pointers which are arrays arrays (patch defunct after too many other changes)
- clang update
+
   - identifying remaining bad spots that need improving
   - dumping AST, identifying the required info
+
- Started work on [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955]
  - work in progress...
+
  - Started diagnosis of [https://bugreports.qt.io/browse/PYSIDE-995 PYSIDE-995]
  - problems with global static QObjects on the Qt side calling back into Python during app exit
+
- Continued on work enabling extending namespaces across modules
  - may require some changes on the Qt side
 
  
==== 24 November 2016 ====
+
==== 4. April 2019 ====
  - automatic COIN triggering for submodules work in progress
+
  - working in Wiki page on how to port a C++ application to Qt for Python (over time should turn into tutorial)
  - several discussions on this topic this week
+
- further discussion how to handle snippets
  - Clang investigation (what library to use)
+
  - more tutorials (especially for PYSIDE-901)
  - fixing bugs on Qt side for Pyside
+
  - Further work on cross compilation for ARMv7
  - Qt QML support almost done, work will continue with Qt Quick
+
  - Various fixes for Shiboken to handle namespaces in Qt better
  - PYSIDE-79 work story continues
+
  - Improve Shiboken documentation composition/layout
  - reference counting not quite accurate but point of deallocation of ref count not identifiable
+
- Bugfixing related to Qt file handling
  
==== 17 November 2016 ====
+
==== 28. March 2019 ====
  - Pyside team suffering from sickness -> not much progress this week
+
  - Qt for Python 5.12.2 released last on 22. March 2019
  - Pyside-79 fix had a lot of negative side effects (breaking existing tests)
+
  - started to write up documentation on how to deploy with pyinstaller
   - internal object reference counting is the predominant issue at hand
+
  - finding quite a few issues when using pyinstaller on Windows (and particular Python 2)
  - continue to work on the bug (no resolution yet as delayed due to sickness)
+
   - macOS & Linux less problematic
  - COIN some progress but still open discussions on branching policy required
+
- worked on documentation issues (like missing links for easier browsing)
 +
  - investigated issues where shiboken didn't handle C++ namespaces across modules
 +
- handle nullptr usage properly in docs
 +
- more translation of C++ snippets to Python (is a never ending task as there are thousands of C++ snippets)
  
==== 11 November 2016 ====
+
==== 21. March 2019 ====
  - PYSIDE-79 being fixed
+
  - Qt for Python 5.12.2 release activities
  - PYSIDE-315 to be addressed
+
  - some bugs and general CI issues kept delaying the generation of the final release wheels
- Shiboken and Clang
+
  - most bugs were related to pyinstaller and other deployment tools
  - familiarizing with clang and its parser's inner working
+
  - one last cxfreeze bug being integrated
  - added experimental qmake project definition for shiboken (makes work in Qt Creator easier)
+
  - next/subsequent set of wheels will be 5.12.2 release
  - Qt QML on Pyside work progressing
+
  - Lots of installer related discussions in the team
  - work on COIN did not progress due to conflicting priorities inside COIN development
+
  - question is which installer/deployment tool to use/recommend
 +
  - current decision is to provide guides/documentation for at least fbs and pyinstaller
 +
- review of project's current release practices (in particular in the area of QA)
 +
  - no outcome at this stage
 +
  - addressed issues in dev branch related to changes in Qt dev branch
 +
  - Qt for Python team joined Qt doc team to talk about ways how to improve Qt for Python docs
  
==== 3 November 2016 ====
+
==== 14. March 2019 ====
  - working through the QML stack esnuring all required API's are exported (https://codereview.qt-project.org/#/c/175682/)
+
  - Fixed broken documentation formatting; added deprecation information
- small build system patches
+
- [https://bugreports.qt.io/browse/QTBUG-74424 QTBUG-74424] 5.13 Release blocker affecting doc generation occurred
  - PYSIDE-79 work progressing
+
  - [https://bugreports.qt.io/browse/PYSIDE-932 PYSIDE-932]/[https://bugreports.qt.io/browse/PYSIDE-942 PYSIDE-942]: The embedding patch is mostly
- OpenGL support fixed (PYSIDE-314)
+
   working, but needs some refinement to be complete:
- COIN issues
+
   - The .pyc generation contradicts the Limited API and must be changed to
   - repo interdepencies not working yet, suggestion under discussion and to be implemented
+
    use source code.
   - most license checks have been fixed
+
   - The code isolation must be made explicit and complete, so that installers
   - Qt 5.6 based Pyside to skip check
+
    ''don't recognize'' that there is something.
  - after branching for C++11 work the dev branch should work from license check perspective
+
    Right now this was done in the wrong direction.
   - eventually the entire CI needs to run through (more hidden problems could be hidden)
+
   Not much code and time necessary, just fixing ''the right'' bits.
  - Started working on C++11 compliant parser for shiboken
+
  - PYSIDE-934 The Buffer protocol for Python 2 needed a special flag to be compatible.               
  - libclang will be used
+
- Added more features for the Python project wizards on QtCreator https://codereview.qt-project.org/#/c/255686/
  - first target is to replace the AST tree implementation
+
- Created a new tutorial for a workshop https://github.com/cmaureir/qtforpython_workshop
  - requires clang setup in the CI
 
  
==== 27 October 2016 ====
+
==== 7. March 2019 ====
  - Work on WebKit/WebEngine support
+
  - Qt for Python 5.12.2 release
  - Further work on [https://bugreports.qt.io/browse/PYSIDE-431 COIN] support
+
  - waiting for final patch before release (PYSIDE-942/PYSIDE-932)
  - Planning meeting
+
- Setting up test envs for Python 3.7 & 3.5 (so far testing was always done on Python 3.6) -> work in progress
  - Workshop for C++11 support in Pyside ([https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323])
+
- QML tutorial under review (https://codereview.qt-project.org/#/c/254044/10)
 +
- how to integrate deprecation infos from Qt to the Python side
 +
- Python output to rcc [https://bugreports.qt.io/browse/PYSIDE-855 PYSIDE-855]
 +
  - [https://bugreports.qt.io/browse/PYSIDE-95 PYSIDE-95] fixed
 +
  - Experimented with MicroPython
 +
  - Found the reason for [https://bugreports.qt.io/browse/PYSIDE-966 PYSIDE-966]: A memory leak was fixed by ctypes.
  
==== 20 October 2016 ====
+
==== 28. February 2019 ====
  - [https://bugreports.qt.io/browse/PYSIDE-355 Qt Quick support] submitted
+
- Discussion on adding more python testing environments to be certain 3.5+ versions are properly working.
  - [https://bugreports.qt.io/browse/PYSIDE-314 QtOpenGL support] submitted
+
  - [https://bugreports.qt.io/browse/PYSIDE-953 PYSIDE-953] fixed
  - Further work on [https://bugreports.qt.io/browse/PYSIDE-431 COIN] support, license headers
+
  - [https://bugreports.qt.io/browse/PYSIDE-934 PYSIDE-934] almost done
==== 13 October 2016 ====
+
  - [https://bugreports.qt.io/browse/PYSIDE-931 PYSIDE-931] almost done
  - Qt CI update
+
  - refcount bug fixes mathplotlib crashes:
   - Coin changes have merged but integration not yet working
+
   - [https://bugreports.qt.io/browse/PYSIDE-928 PYSIDE-928]
   - Qt CI enables on Pyside side merged
+
   - [https://bugreports.qt.io/browse/PYSIDE-937 PYSIDE-937]
   => COIN integration fails with license issues
+
   - [https://bugreports.qt.io/browse/PYSIDE-943 PYSIDE-943]
  => requires review of license conditions for all files, some files are not even relicensable
+
- WIP: Embedding to solve signature problems dependency of support directory since 5.12.1 . Will solve 
   => skipping license check for now, most likely to be done later again but requires changes to license check script
+
   - [https://bugreports.qt.io/browse/PYSIDE-942 PYSIDE-942]  missing support, PyInstaller  (was solved but involves PyInstaller change)
   - more issues of interworking between QtCI and Pyside expected (won't be visible until license problems resolved)
+
   - [https://bugreports.qt.io/browse/PYSIDE-932 PYSIDE-932] missing support, cx_freese
  Open issue: does a change in Pyside repo trigger a rebuild of everything?
 
  - Qt QML support progressing and first patches merged
 
  - serious bugs have been fixed, more complex QML examples are now working
 
  
==== 29 September 2016 ====
+
==== 21. February 2019 ====
  - Coin integration close but not merged
+
  - research on how to do ad hoc releases of Pyside 2 for bug fixes like last weeks meta data change (and otherwise no further source change)
  - Bugfixing in particular on the shiboken parser side
+
- Qt 5.12.2 about to be released -> should have a Qt for Python 5.12.2 release
  - QML/Python binding and tests fixed -> general check all day-to-day aspects of QML are working
+
  - discussed installer related crash bug following 5.12.1 release [https://bugreports.qt.io/browse/PYSIDE-932 PYSIDE-932] etc.
  - QML examples porting
+
- tutorials works (based on recent Qt for Python youtube videos)
  -> still some failing tests
+
  - prepared discussions with doc team meeting next week (on Python support)
  -> Check all QML/Quick class are exported
+
- some more work on [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795]
 +
- work to distinguish array types from pointer variables
 +
- [https://bugreports.qt.io/browse/PYSIDE-946 PYSIDE-946] under development
 +
- [https://bugreports.qt.io/browse/PYSIDE-934 PYSIDE-934] void* type handling
 +
  - [https://bugreports.qt.io/browse/PYSIDE-938 PYSIDE-938] under review
 +
- Current Creator 4.9 beta released today added Python project templates
 +
- PEP 518 (project format for Python projects) -> needs Qt Creator support
  
==== 22 September 2016 ====
+
==== 14. February 2019 ====
  - Refactored Shiboken, udnerstanding build sequences
+
  - 5.12.1 wheels had meta data issues and were redone with fixed meta data
  - black list for unit tests defined and tested
+
  - discussed improving the integration of Python example code into Qt for Python docs
  - fixing of tests
+
  - [https://bugreports.qt.io/browse/PYSIDE-921 PYSIDE-921]
  - QML example fixing continued (QML bindings not working)
+
  - improved signature matching for custom types
  - Pyside side for COIN done (pending integration checks)
+
  - [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] fixed and merged
  - COIN integration still wip due to long test and retest cycles
+
  - [https://bugreports.qt.io/browse/PYSIDE-922 PYSIDE-922] fixed
  - pyside and shiboken repo to be relicensed similar to other Qt products
+
  - [https://bugreports.qt.io/browse/PYSIDE-45 PYSIDE-45] fixed
  => this should address any issues regarding the status of generated code too
+
  - looking at crashes when importing pandas & numpy (the order of imports matters when working around it)
 
   
 
   
==== 16 September 2016 ====
+
==== 7. February 2019 ====
  - Pyside side for CI testing ready for testing
+
  - Fixed 5.13 deprecation warnings (which unearthed that we had a dependency on QString::isNull() vs isEmpty() in shiboken)
- status of COIN side to be determined. Code exists need help from CI team to confirm status.
+
  - Fixed a large number of shiboken code generation warnings (revealing some issues)
- build system infrastructure improvements in pyside setup
+
  - Provided s solution for one issue mentioned at PYSIDE-725 (apparently Sharon Woods from US is involved in some consulting?)
- Qt logging now working
+
  - Will start formal release tag marking in Jira (matching Qt style)
- and more
+
  - Data visualization tutorial fixes
- Update on bug handling
+
  - Talking about further integration of existing examples into general docs
  - PYSIDE-88 continuing
+
  - [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803] further investigation - no conclusion yet
  - PYSIDE-349 (Multimedia ported)
+
  - [https://bugreports.qt.io/browse/PYSIDE-921 PYSIDE-921] fixed
  - PYSIDE-344 fix pending on codereview
+
  - [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] investigated - fix seems at hand
  - make debug builds of Pyside work (OSX works, Linux has work in progress patch, Windows side awaiting contribution)
+
  - [https://bugreports.qt.io/browse/PYSIDE-924 PYSIDE-924] fixed issue where Q_PROPERTY flags were not properly passed on to Qt
  - QML support work in progress
+
  - restructured cmake files adding a master cmake file (simplifies opening of project in IDEs)
  - examples are slowly ported with aim to identify bugs
+
  - Now it's possible to open the whole project (PySide2 + Shiboken2) on QtCreator using the global CMakeList.txt
 
+
- worked on issues related to the setup.py and how to execute it.
==== 25 August 2016 ====
 
- Properly implementing QML experience in Pyside
 
  - Unit test fixing
 
- automated CI testing for Pyside
 
  - working locally but still failures occurring on various other test machines
 
 
 
==== 4 August 2016 ====
 
- Additional Pyside examples under review
 
- Fixed warnings coming from Shiboken
 
 
 
==== 21 July 2016 ====
 
 
 
  - main Pyside 2 example port done
 
- additional examples to fill gaps are being ported (as per prio list)
 
  - CI patches running, but still gaps (should be done by next week)
 
  - about 86% of auto test working (failing count of test 80+ auto test)
 
  - [[pyside-Teststatus|Project Test Status]]
 
 
 
==== 14 July 2016 ====
 
 
 
- Pyside 2 examples ported
 
  - OpenGL & SVG not working
 
- QtQuick 2 is in strange situation (QtQml depends on QtQuick)
 
- Python 3 realed Unicode handling not working with Qt
 
  - QMessageBox hangs
 
- no documentation for any example
 
- lots of warnings when building wrapper
 
- results: https://paste.kde.org/pgje2toyh/mlbqic
 
  - COIN setup for pyside https://codereview.qt-project.org/#/c/158336/
 
  - Qt 5.7 still blocked due to missing C++11 support in shiboken
 
  - food for ideas: https://steveire.wordpress.com/
 
 
 
  
==== 7 July 2016 ====
+
==== 31. January 2019 ====
 +
- Preparing 5.12.1 release
 +
  - Packages are looking good, likely to be released at same time as Qt 5.12.1 release
 +
- Submitted class bindings of Qt RemoteObjects for [https://bugreports.qt.io/browse/PYSIDE-862 PYSIDE-862]
 +
- Added classes QWebEngineHistory, WebEngineHistoryItem with required fix [https://bugreports.qt.io/browse/PYSIDE-906 PYSIDE-906]
 +
- Have calls to method annotated as deprecated issue a warning
 +
- Fixed warnings, prepared Qt 5.13 bindings (based on current 5.13 API additions)
 +
- Looked into [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816], [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803]
 +
- Data visualization tutorial added
 +
- working on ways of substitution of C++ specific terms in docs against Python equivalents (e.g. nullptr and bool)
  
  - automated CI testing
+
==== 24. January 2019 ====
- patches for Pyside and Qt CI side required
+
  - Release branch for 5.12.1 exist
  - Testing somewhat more complicated due to closed nature of Qt CI
+
  - There was some issues in CI with 5.12 branch earlier this week and it was pretty much blocked. All issues should be solved now.
  - script to port examples to Qt 5 -> https://bugreports.qt.io/issues/?jql=labels%20%3D%20exampleport5
+
  - Prepared class bindings of Qt RemoteObject for PYSIDE-862 for review
  - all examples to remain BSD licensed
+
  - Some creativity to keep integrations going due to COIN issues
</div>
+
  - Investigation of PYSIDE-803 is ongoing. The issue needs deep analysis to isolate the problem.
  
=== Backlog ===
+
==== 17. January 2019 ====
 +
- Fixed PYSIDE-908, further investigation into PYSIDE-803 (free threading)
 +
- QfP 5.12.1 release being prepared
 +
- PYSIDE-797 (uic change ready for review)
 +
- PYSIDE-862 (Qt RemoteObject module support)
 +
- PYSIDE-634 being fixed
 +
- started to look at true cross compilation (PYSIDE-802)
 +
- Improving Qt Creator project template support (QTCREATORBUG-21824)
  
The list below represents some short term targets and long term ideas for Pyside2 development. There is no guarantee that this will happen as written down. It is meant as a short reminder and idea collection for future development. In the long term this list is likely to move to https://bugreports.qt.io/browse/PYSIDE.
+
==== 10. January 2019 ====
 +
- Scope for Qt for Python 5.13 release
 +
  -> relevant tasks marked with Fixversion 5.13 in bugreports.qt.io
 +
  -> feature freeze for Qt for Python 5.13 (April 2019)
 +
- looked into case of corrupted meta data of wheel
 +
- supporting named arguments for signals
 +
- some minimal support in Qt Creator to create a Qt for Python project
 +
- bug hunting in 5.12.0 release
 +
- working on Pyside-797
 +
- further analysis of PYSIDE-803, working on an implementation plan
  
# First time with Pyside (Document how to get started on this wiki)
+
==== 3. January 2019 ====
# Testing Infrastructure
+
- Completed: Complete The Signature Introspection (PYSIDE-510)
## What has been done so far?
+
- After the release there has been a couple of new reported bugs that we are working on:
## Qt CI support ([https://bugreports.qt.io/browse/PYSIDE-431 PYSIDE-431])
+
  - There was some outdated documentation issue regarding Slots()
### make test
+
  - A couple of issues with multiple inheritance like: PYSIDE-868
### cmake based build system (all repos)
+
  - and with QPlainTextEdit PYSIDE-886
### pip installable Pyside
+
- Restarted investigation of PYSIDE-803
#### CI has to setup virtual Python environment
 
#### Use pip to install/build Pyside (release bundling)
 
  
# Future changes to PySide
+
== 2018 ==
## Gaps (modules & API)
 
### Identify the extent of the gaps by porting existing examples from Qt4 to Qt5 (done)
 
### Plugin system (in what form or shape do we need it is uncertain - some failing tests exist already)
 
### Prepare a summary of gaps for other modules
 
## Fundamental Architecture changes
 
### Shiboken
 
#### Clang support ([https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323])
 
### QtQML support ([https://bugreports.qt.io/browse/PYSIDE-355 PYSIDE-355])
 
## MyPy (type annotation - fully typed Python API)
 
## General Python features and their adoption in PySide (e.g. Async I/O)
 
## Creator and tooling
 
### Fix QtC debugger to understand Python/C++ mixed internals
 
## Documentation generation
 
## Deployment of apps
 
## Debugging support
 
  
# Must have tasks for first release
+
* [[Qt for Python Development Notes 2018]]
## Packaging (e.g. pip deployment? )
 
## Clarify Installer story
 
## Documentation
 
## Product placement decisions
 
### Licensing
 
### Naming
 
### etc
 
## Complete CI coverage
 

Latest revision as of 00:55, 12 November 2019

2019

07. November 2019

- Documentation improvements are coming, more people involved.
- Qt World Summit feedback
 - First time we had a Qt for Python booth,
 - Request to improve the Python+QML story
 - Suggestions to have a better experience in QtCreator
 - In general the people really liked the integration with modules like matplotlib, pandas, opencv, scikit-image
 - The voice assistant also was really well received, this involve many other modules like Deepspeech, rasa, mozilla tts technologies, etc.
- Documentation will be written for the NumPy compatibility patch.
- Planned work on a Python 3.8 leak. 
- After the chain of patches improving the namespace in shiboken, there are some issues with Python 2.7
- New template for Qt for Python on QtCreator will be merge soon.

24. October 2019

  - Release Qt for Python 5.13.2
    - 5.13.2 branch exists -> testing and final build on the way
    - aiming for release on 1st Nov 2019
  - 5.15 branch is still broken
  - further requirements mgmt/grooming ongoing
  - name spacing modification
    - hiding namespaces like QtCharts from Python and adding ability to shiboken to work with inline namespaces
    - https://bugreports.qt.io/browse/PYSIDE-990
    - https://bugreports.qt.io/browse/PYSIDE-1074
  - removed pyside-uic and pyside-rcc -> tooling is 100% Qt
  - QSettings related bug fix caused regression, more fixes were needed
  - Qt World Summit 2019 preparations (demos, shipping etc)
  - translator script from C++ to Python being done
    - translates 90% of the code (enough to simplify the snippet conversion process)
  - Numpy work complete for now
  - started working on Python 3.8 (https://bugreports.qt.io/browse/PYSIDE-939)
  - for now Python 3.5 support stays as is

24. October 2019

  - struggling with coin and therefore none of the scheduled releases went out
  - worked on multiple \brief attributes appearing in the docs
  - discussions started how to improve the general Qt for Python doc index page
  - investigating hiding C++ inline namespaces (e.g. Qt3D and QtCharts name spaces)
  - https://bugreports.qt.io/browse/PYSIDE-795 -> complete for 5.14 (merge pending)
   -> pysequence can be handled
  - Adopting Python 3.8 and removing support for 3.5 in Qt for Python 5.14
  - converter from C++ to Python worker approaching point of being usable for doc snippet conversion
  - moving some docs from wiki to official QtfP docs

17. October 2019

  - Qt for Python 5.14 release -> not build-able with current Qt 5.14 release
    -> Qt Declarative needs change to enable QtfP binaries
  - Qt for Python 5.15 
     -> currently not possible in CI
  - Qt for Python 5.13.2
     -> in principle 5.13 branch is releasable (except there is an elaborate set of doc patches)
  - split of QtfP project modules continues
    -> dependencies defined via yaml
    -> adds the ability to also sign produced wheel.
  - more example work
  - working on a semi translator to translate C++ snippets to Python
  - visit to PyConDE
  - QSharePointer related fixes being worked on
  - numpy proof-of-concept (PYSIDE-795) is available
  - removed uic and rcc from pyside-setup since the Qt tools support Python now
  - exploring the idea to include designer in the Python wheels
  - discussion on supported Python versions (can we add 3.8 and remove 3.5?)
     -> more comms on the mailing list can be expected

26. September 2019

  - Porting guide (C++ -> Python) ready for staging
  - Further snippet handling improvements
     - being split out and translating them to Python
  - general bug cleanups/triaging
  - working on new template for Python to create ui files
  - PYSIDE-795 (numpy) progressing
  - OPCUA viewer example port completed
  - added more Qt 5.14 API to Qt for Python 5.14
  - PYSIDE-1087 in progress

19. September 2019

  - Roadmapping session for Qt for Python 5.15 & 6.0 on 8. October
  - experimenting with new configuration changes in coin and how they affect Qt for Python
  - Porting tutorial (C++ -> Python) was pushed for review
  - Progress on porting the C++ snippets to Python
     -> will be a longer process
  - PYSIDE-795 (numpy) progressing
    -> streamline-ing some code sections in the process
  - focus on validating existing bugs 
  - otherwise the team dealt with impact of a cmake based Qt build system
  - porting QtOpcua to Qt for Python
     - particular work went into to opcuaviewer example

12. September 2019

  - Work on QtOpcUa continued PYSIDE-952
  - Work on example for Qt Summit
  - Work on PYSIDE-1057
  - Prototyped QStringView support
  - PYSIDE-1087 huge speed patch ready for review
  - PYSIDE-795 (numpy) progressing

5. September 2019

  - Qt for Python 5.13.1 & 5.12.5
    - RTA for 5.13.1 released
    - 5.12.5 released next week
  - Branching
    - challenge is the building of Qt 6 while maintaining a stable Qt for Python build
    - one solution might be a QfP build for selected modules only
  - Team is planning a roadmapping session for QfP 5.15 release
  - PYSIDE-795 (numpy) progressing
  - quite a few bugs have been fixed e.g. PYSIDE-1051
  - Looking at QStringView exposure in Python
  - Continued work on uic/rcc tooling
  - General tooling improvements when working with QtCreator and Python
  - Updated some build instructions for QfP on Fedora

29. August 2019

  - Releases (5.12.5 & 5.13.1) upcoming
  - Release candidate wheels under test for both releases (Linux & macOS, Win is outstanding)
     - last patch for 5.13.1 is PYSIDE-1079
  - PYSIDE-795 continued progress
  - new look at our example basket
  - continued work on PYSIDE-1033
  - uic and rcc can output python code -> needs deployment changes in Pyside2 -> target release Qt for Python 5.14
     - adding support in QtCreator being able to deal with the above python tools

22. August 2019

  - Work on QtOpcUa started  PYSIDE-952
  - Solved PYSIDE-1079 partially, need the structure
    of 5.14 to implement the typing.Optional feature.
  - Solved and closed PYSIDE-1077 wrong init code
  - Solved PYSIDE-1073, waiting for review
  - Refined and closed PYSIDE-945.

15. August 2019

  - Partially solved PYSIDE-1052 (constants missing).
  - Solved at the same time PYSIDE-945.
    Solved a QtCore.Slot() bug that dates back to 2010-11-03.
  - Work on PYSIDE-1073 trying to fix the bug.
  - Work on PYSIDE-1051 trying to fix the bug.
  - Merges/work on continuous integration infrastructure (preparing 5.13.1)

8. August 2019

  - Licenses on Pypi
    - pypi is used for commercial and open source users
    - currently only publishing the open source license -> will add second "commercial" license
  - Releasing
    - 5.13.1 release is being prepared
    - 5.12.5 follows later this month
  - Documentation changes
    - Qt for Python Logo updated
    - CSS updates -> (lots of suggestions/bug reports from the community)
  - PYSIDE-951 (primitive type support) merged and done
  - PYSIDE-795 (Numpy support progressing)
  - ported simpletreewidget from C++ to python
  - restructuring cmake setup with the aim to have a more modular build selection

1. August 2019

  - (Summer break)
  - PYSIDE-795 (numpy support is progressing)
  - PYSIDE-951 (primitive pointer types ready for review)
  - Fixed pyside-setup 5.14 branch building (addressing lots of deprecation changes)

25. July 2019

  - (Summer break)
  - continuing on PYSIDE-795: documentation, 
    - supporting the iterable protocol (will become sub-task)
    - augmenting incomplete classes (QtPrintSupport)
    - checking and correcting function signatures according to PYSIDE-951

18. July 2019

  - (Summer break)
  - Some progress related to Bug fixing is being done.
  - bug fixing on signatures accessing "__doc__" on a module function.
  - continued on PYSIDE-795

11. July 2019

  - visiting EuroPython
  - discussed roadmap for 5.14 release (check out Pyside Jira project with FixVersion 5.14)
  - continued CI configuration setup for pyside-setup
  - continued on shared pointer bugs(PYSIDE-1024 & PYSIDE-1043)
  - assert triggering for certain types (PYSIDE-1037)
  - further changes for PYSIDE-951
  - numpy enhancements (PYSIDE-795) (documentation and tests improvements)

04. July 2019

  - Qt for Python 5.13.0 released
  - Experimented with cross compiling
    - not easily possible -> build system needs major work
  - New control system for Qt for Python (isolates Qt4Python CI configuration from coin)
    - more flexible way of working as not dependent on coin release
  - PYSIDE-951 finish
  - PYSIDE-795 work continues
  - fixed QFlags handling
  - had trouble merging pyside to dev branch
  - some discussions around smart pointer handling in Qt4Python
  - https://bugreports.qt.io/browse/PYSIDE-634 ready to be merged
  - https://bugreports.qt.io/browse/PYSIDE-1010

27. June 2019

  - about to finish PYSIDE-951
  - fixed "Fix qApp import of QCoreApplication"
  - cleanup formatting of all source code and modern C++11 features
  - final re-working of "Example: Move the SQL statements", improving the C++ code as well

20. June 2019

  - Release 
    - Qt for Python 5.12.4 released today
    - Qt for Python 5.13.0 wheels done -> still need testing
  - Coin configurations to be separated from qt5.git (will become part of pyside-setup.git
  - SQL example was updated (to be more pythonic)
  - Shared pointer related fixes being done
  - reopened https://bugreports.qt.io/browse/PYSIDE-1033 (how to build shiboken) after reviewing the current situation
  - macOS build issue being addressed
  - https://bugreports.qt.io/browse/PYSIDE-951
  - team got commit rights for pyinstaller project repository
  - TQtC is sponsoring PyCon DE

12. June 2019

  - Example polish, introduced QSaveFile, fixed tabbed browser PYSIDE-1022
  - Fixed PYSIDE-1017, named parameters in added functions
  - Started to look at some issues with smart pointers, PYSIDE-1024, PYSIDE-1016 related to PYSIDE-454
  - Making progress in the embedded support story.
    - After trying the setup.py approach, there was a lot of modifications involve in our build process, so it was not considered a good option.
    - a CMake approach is currently being used, and shiboken generator and the python module are successfully cross-compiled, but still, there is work to do.
  - Final solution of qApp embedding PYSIDE-571. After a long Odyssey of breaking solutions, qApp macro works now as expected with embedding.
  - PyInstaller maintainer still did not reply as promised on 2019-06-04 phone call.

6. June 2019

  - Summer holidays affecting releasing? Any estimate when we would have:
    - Qt for Python 5.13.0 (Qt still on RC0)
    - Qt for Python 5.12.4 (in the next few weeks)
  - discussed options how to sign wheel content
  - cross compilation of Qt for Python (work in progress)
    -> investigating options on how to achieve that in an easy way
  - fixed build on CentOS 
  - https://bugreports.qt.io/browse/PYSIDE-1017
  - https://bugreports.qt.io/browse/PYSIDE-1016
  - https://bugreports.qt.io/browse/PYSIDE-1024
  - https://bugreports.qt.io/browse/PYSIDE-1019
  - https://bugreports.qt.io/browse/PYSIDE-795 (NumPy)
  - discussed commit issues with pyinstaller maintainer
  - QtC will have presence on PyCon DE

23. May 2019

  - Qt 6 (e.g. Pyside 6.0?) https://bugreports.qt.io/browse/PYSIDE-904
  - Pyinstaller issues being a bottle neck at the moment for the deployment story
  - Qt for Python 5.12.4 release
    - patches are accumulating
    - TODO: branching, changelog, testing
  - Qt for Python 5.13 release status
    - need cleanup in Jira of fix versions
    - Qt 5.13 blog post
    - start generating 5.13 release wheels for testing
  - Discussed Python 2 EOL on 1.1.2020
    - Current proposal is dropping Python 2 support in Qt for Python 6
    - Python 2 users can continue to use Qt for Python 5.15

16. May 2019

  - Team member attended PyCon US
  - Work on tutorials
  - PYSIDE-816 PYSIDE-1003 Final fix checked in
  - PYSIDE-735 Make generate_pyi crash on real ImportErrors, only!
  - PYSIDE-1004 writable signatures implemented but needs to change

9. May 2019

 - Final fixes to uic to be able to generate Python PYSIDE-797
 - Refactorings in libpyside
 - Work on SQL book tutorial
 - Research into using Clang C++ API
 - PYSIDE-816 PYSIDE-1003 Final fix is waiting for approval
 - Viewer tool for PYSIDE-803 nearly ready for browsing code

2. May 2019

 - 5.12.3 released
 - Looking into OpenGL version functions PYSIDE-955
 - Improved shiboken2 progress message output
 - Sped up shiboken2 class generation significantly
 - Improved code generated for multiple inheritance
 - First look at 5.14 API
 - Fixed Problems with PyInstaller after removal of Coin glitches
 - Wrote viewer tool to finally support PYSIDE-803

25. April 2019

- Preparation for Qt for Python 5.12.3 release.
 - Replaced QtXmlPatterns by libxml2/libxslt for documentation generation
 - Testing and final polishing of Python output mode of uic 5.14
 - New signatures related to PYSIDE-989
 - Looking into OpenGL version functions PYSIDE-955
 - Improving the usability of the "--reuse-build" option
 - fixing new PyInstaller problem with Python 2.7.16

18. April 2019

- Usage of QtXmlPattern in doc tool chain of Qt for Python
  - xml pattern deprecated in Qt 5.13
  - working on libxml2 replacement (has issues on platforms w/o libxml2 support)
  - in the long term, the qdoc generation process should really produce python docs too
  - updated coin to continue to include QtXmlPattern for Qt for Python builds
- PYSIDE-996 fixed on SuSE but not yet RedHat
- working on docs to provide hints when working with pyinstaller
- PYSIDE-955 in progress
- New attempt on PYSIDE-803
- shiboken PYSIDE-995 call operator support
- custom scene graph rendering node in Python (related to PYSIDE-955 PYSIDE-989)
- improving primitive type conversion (by the various OpenGL related bugs like PYSIDE-989 or PYSIDE-955)

11. April 2019

- PyInstaller problems identified as COIN bugs PYSIDE-996
- continuing with PYSIDE-795
  - handling pointers which are arrays arrays (patch defunct after too many other changes)
  - identifying remaining bad spots that need improving
- Started work on PYSIDE-955
- Started diagnosis of PYSIDE-995
- Continued on work enabling extending namespaces across modules

4. April 2019

- working in Wiki page on how to port a C++ application to Qt for Python (over time should turn into tutorial)
- further discussion how to handle snippets
- more tutorials (especially for PYSIDE-901)
- Further work on cross compilation for ARMv7
- Various fixes for Shiboken to handle namespaces in Qt better
- Improve Shiboken documentation composition/layout
- Bugfixing related to Qt file handling

28. March 2019

- Qt for Python 5.12.2 released last on 22. March 2019
- started to write up documentation on how to deploy with pyinstaller
  - finding quite a few issues when using pyinstaller on Windows (and particular Python 2)
  - macOS & Linux less problematic
- worked on documentation issues (like missing links for easier browsing)
- investigated issues where shiboken didn't handle C++ namespaces across modules
- handle nullptr usage properly in docs
- more translation of C++ snippets to Python (is a never ending task as there are thousands of C++ snippets)

21. March 2019

- Qt for Python 5.12.2 release activities
 - some bugs and general CI issues kept delaying the generation of the final release wheels
 - most bugs were related to pyinstaller and other deployment tools
 - one last cxfreeze bug being integrated
 - next/subsequent set of wheels will be 5.12.2 release
- Lots of installer related discussions in the team
 - question is which installer/deployment tool to use/recommend
 - current decision is to provide guides/documentation for at least fbs and pyinstaller
- review of project's current release practices (in particular in the area of QA)
 - no outcome at this stage
- addressed issues in dev branch related to changes in Qt dev branch
- Qt for Python team joined Qt doc team to talk about ways how to improve Qt for Python docs

14. March 2019

- Fixed broken documentation formatting; added deprecation information
- QTBUG-74424 5.13 Release blocker affecting doc generation occurred
- PYSIDE-932/PYSIDE-942: The embedding patch is mostly
  working, but needs some refinement to be complete:
  - The .pyc generation contradicts the Limited API and must be changed to 
    use source code.
  - The code isolation must be made explicit and complete, so that installers 
    don't recognize that there is something.
    Right now this was done in the wrong direction.
  Not much code and time necessary, just fixing the right bits.
- PYSIDE-934 The Buffer protocol for Python 2 needed a special flag to be compatible.                 
- Added more features for the Python project wizards on QtCreator https://codereview.qt-project.org/#/c/255686/
- Created a new tutorial for a workshop https://github.com/cmaureir/qtforpython_workshop

7. March 2019

- Qt for Python 5.12.2 release
 - waiting for final patch before release (PYSIDE-942/PYSIDE-932)
- Setting up test envs for Python 3.7 & 3.5 (so far testing was always done on Python 3.6) -> work in progress
- QML tutorial under review (https://codereview.qt-project.org/#/c/254044/10)
- how to integrate deprecation infos from Qt to the Python side
- Python output to rcc PYSIDE-855
- PYSIDE-95 fixed
- Experimented with MicroPython
- Found the reason for PYSIDE-966: A memory leak was fixed by ctypes.

28. February 2019

- Discussion on adding more python testing environments to be certain 3.5+ versions are properly working.
- PYSIDE-953 fixed
- PYSIDE-934 almost done
- PYSIDE-931 almost done
- refcount bug fixes mathplotlib crashes:
  - PYSIDE-928
  - PYSIDE-937
  - PYSIDE-943
- WIP: Embedding to solve signature problems dependency of support directory since 5.12.1 . Will solve  
  - PYSIDE-942  missing support, PyInstaller  (was solved but involves PyInstaller change)
  - PYSIDE-932  missing support, cx_freese

21. February 2019

- research on how to do ad hoc releases of Pyside 2 for bug fixes like last weeks meta data change (and otherwise no further source change)
- Qt 5.12.2 about to be released -> should have a Qt for Python 5.12.2 release
- discussed installer related crash bug following 5.12.1 release PYSIDE-932 etc.
- tutorials works (based on recent Qt for Python youtube videos)
- prepared discussions with doc team meeting next week (on Python support)
- some more work on PYSIDE-795
- work to distinguish array types from pointer variables
- PYSIDE-946 under development
- PYSIDE-934 void* type handling
- PYSIDE-938 under review
- Current Creator 4.9 beta released today added Python project templates
- PEP 518 (project format for Python projects) -> needs Qt Creator support

14. February 2019

- 5.12.1 wheels had meta data issues and were redone with fixed meta data
- discussed improving the integration of Python example code into Qt for Python docs
- PYSIDE-921
- improved signature matching for custom types
- PYSIDE-816 fixed and merged
- PYSIDE-922 fixed
- PYSIDE-45 fixed
- looking at crashes when importing pandas & numpy (the order of imports matters when working around it)

7. February 2019

- Fixed 5.13 deprecation warnings (which unearthed that we had a dependency on QString::isNull() vs isEmpty() in shiboken)
- Fixed a large number of shiboken code generation warnings (revealing some issues)
- Provided s solution for one issue mentioned at PYSIDE-725 (apparently Sharon Woods from US is involved in some consulting?)
- Will start formal release tag marking in Jira (matching Qt style)
- Data visualization tutorial fixes
- Talking about further integration of existing examples into general docs
- PYSIDE-803 further investigation - no conclusion yet
- PYSIDE-921 fixed
- PYSIDE-816 investigated - fix seems at hand
- PYSIDE-924 fixed issue where Q_PROPERTY flags were not properly passed on to Qt
- restructured cmake files adding a master cmake file (simplifies opening of project in IDEs)
  - Now it's possible to open the whole project (PySide2 + Shiboken2) on QtCreator using the global CMakeList.txt
- worked on issues related to the setup.py and how to execute it.

31. January 2019

- Preparing 5.12.1 release
  - Packages are looking good, likely to be released at same time as Qt 5.12.1 release
- Submitted class bindings of Qt RemoteObjects for PYSIDE-862
- Added classes QWebEngineHistory, WebEngineHistoryItem with required fix PYSIDE-906
- Have calls to method annotated as deprecated issue a warning
- Fixed warnings, prepared Qt 5.13 bindings (based on current 5.13 API additions)
- Looked into PYSIDE-816, PYSIDE-803
- Data visualization tutorial added
- working on ways of substitution of C++ specific terms in docs against Python equivalents (e.g. nullptr and bool)

24. January 2019

- Release branch for 5.12.1 exist
  - There was some issues in CI with 5.12 branch earlier this week and it was pretty much blocked. All issues should be solved now.
- Prepared class bindings of Qt RemoteObject for PYSIDE-862 for review
- Some creativity to keep integrations going due to COIN issues
- Investigation of PYSIDE-803 is ongoing. The issue needs deep analysis to isolate the problem.

17. January 2019

- Fixed PYSIDE-908, further investigation into PYSIDE-803 (free threading)
- QfP 5.12.1 release being prepared
- PYSIDE-797 (uic change ready for review)
- PYSIDE-862 (Qt RemoteObject module support)
- PYSIDE-634 being fixed
- started to look at true cross compilation (PYSIDE-802)
- Improving Qt Creator project template support (QTCREATORBUG-21824)

10. January 2019

- Scope for Qt for Python 5.13 release
  -> relevant tasks marked with Fixversion 5.13 in bugreports.qt.io
  -> feature freeze for Qt for Python 5.13 (April 2019)
- looked into case of corrupted meta data of wheel
- supporting named arguments for signals
- some minimal support in Qt Creator to create a Qt for Python project
- bug hunting in 5.12.0 release
- working on Pyside-797
- further analysis of PYSIDE-803, working on an implementation plan

3. January 2019

- Completed: Complete The Signature Introspection (PYSIDE-510)
- After the release there has been a couple of new reported bugs that we are working on:
 - There was some outdated documentation issue regarding Slots()
 - A couple of issues with multiple inheritance like: PYSIDE-868
 - and with QPlainTextEdit PYSIDE-886
- Restarted investigation of PYSIDE-803

2018