Commit Graph

6 Commits

Author SHA1 Message Date
Sivert Krøvel
b080a3772c Handle nodes and properties required by MCUs in JSON conversion
Qt for MCUs uses several features in the qmlproject files which
are unknown to QDS. It is important that this information does
not get lost when converting to and from the internal JSON
project format, to avoid breaking MCU projects.

The following changes were made:
- Files nodes keep the type (ImageFiles, QmlFiles...)
- Added support for more Files node types used by MCU projects
  (ModuleFiles, InterfaceFiles, FontFiles...)
- Files nodes can have child properties
- Added a JSON object to store properties unknown to QDS.
  They may be used by Qt for MCUs, and new properties may
  be added between versions
- Added support for the MCU.Config and MCU.Module nodes
- Added a test project for MCU. This project is also tested
  with Qt for MCUs. Both the original and the converted
  project build correctly
- Added instructions for notifying the MCU team before
  modifying the MCU test cases to avoid breaking changes.

Fixes: QDS-10774
Task-number: QDS-10969
Change-Id: I0dfd7f3b150a8661fc0398a8a3d575c7e8777ef3
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
Reviewed-by: Yasser Grimes <yasser.grimes@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-11-14 12:22:36 +00:00
Burak Hancerli
ab2c25d52a QmlProject: Absolute files paths are ignored
This patch fixes issues with adding files to the project by
providing the absolute paths in the .qmlproject file.

- If a directory is given without an explicit file list,
then that directory wil be searched recursively.
- If explicit file list given without a directory, then each
file will be added to the project separately.
- If both provided, then each file wil be prefixed with given
directory, and added project separately.

Task-number: QDS-10636
Change-Id: Ia13964ce2b3f6364d1def1aa71e20ec29f6f3542
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-10-20 10:08:24 +00:00
Burak Hancerli
794cb89c2a QmlProject: Fix skipping some nodes with QDS prefix
This patch also contains the test data and updated test code for the
converters to test QDS prefixed version of .qmlproject file.

Task-number: QDS-10503
Change-Id: I496ba6f3d4d3cf90e75c2959c4196f4607677ea1
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Aleksei German <aleksei.german@qt.io>
2023-09-25 12:35:49 +00:00
Burak Hancerli
c71ebda677 QmlProject: Fix incorrect conversion of MCU property
Task-number: QDS-10376
Change-Id: Ic16d03355419281a0bf5c8bd04ba5fea317a70d4
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
2023-08-24 15:43:23 +00:00
Marco Bubke
eaf4391660 UnitTests: Make test names more readable
A majority prefers snake case for long names and because test names are
describtive they have to be long.

Change-Id: I898beb5c9f1b9ab7f7c285b6278454068744f5da
Reviewed-by: Burak Hancerli <burak.hancerli@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2023-06-07 15:49:27 +00:00
Burak Hancerli
8af0c065ac QmlProject: Reorganize unittests
Task-number: QDS-9946
Change-Id: Ib165340d13e40c6e8fba08a828ceecb312dd5dde
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2023-06-07 13:14:27 +00:00