| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
... rather than considering only the last one.
It is a valid use case to add more properties and/or file tags
in derived items.
Change-Id: I9ebc95a3f485c16c3cc7e21723645ab87c9c1693
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
For all serializable types whose load() and store() methods simply
forward these calls to their members, the methods are removed.
Instead, the serialization is now done by the persistence facility
itself, which detects such classes by the presence of a member template
with a fixed name (using SFINAE). If the template is present, it is called,
otherwise we fall back to calling load() and store() methods.
Change-Id: I42dbbdd622e0ea0db28325acc506e41c472e0f0c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
It's silly that we have to mention each serializable data member in
both the load and the store methods.
Instead, whenever possible, forward these methods to a template that calls
the right function in the persistence backend based on its parameter.
Change-Id: I00e2dee8cdf55405f447cee27190bc97df8673e3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To add another file tag to an application one can write
Group {
fileTagsFilter: ["application"]
fileTags: ["my_additional_tag"]
}
[ChangeLog] It is now possible to add file tags to generated artifacts
by setting the fileTags property in a Group that has a fileTagsFilter.
Change-Id: Iac977011073defd532d82f015d93970e27a66ba3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Reduce the usage of PropertyMapInternal::value.
Change-Id: Ib88fca8d318c43cb1b367a33d2c96ee05c91bd32
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead, we employ our now-generic load/store interface for all
serialization operations. The advantages are two-fold:
1) It can no longer happen that carelessly written store()
functions mistakenly dump unshared strings into the build graph,
as it has happened several times in the past.
2) We get rid of enormous amounts of custom code dealing with
container (de)serialization. All of this is now done centrally by a
handful of templates in PersistentPool.
Change-Id: Ib1262da50989edda9726abd7d5a8ffdceaa0ec76
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
The old implementation was a wild mix of templates, overloads and, worst
of all, implicit assumptions about the types of container items. This
combination made it close to impossible to add support for serializing
generic containers. Now we have a sensible interface that we can build
upon.
Change-Id: I82806eaf535c16fc861bededf1b06c681d2128c0
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
On my machine, the on-disk build graph of a freshly resolved Qt Creator
super project goes down by 12% with this patch.
Change-Id: Ic86b4ba31769d7d4af407b24a0ee9845cf943a79
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Patch-set 2 includes *.cpp *.c
Every source file needs to have up-to-date license
headers in order to pass ci.
Change-Id: Ie6e493097af6f7dd6a8adff170eb856f496e689e
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
|
|
|
|
|
| |
Change-Id: I885d94bb14b325dc36767a840ebdb0be1fb59dd2
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I36d825db3a5ef32c162c3063aab1e8a1f2696f4f
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
|
|
|
|
|
| |
Change-Id: I092fca9f950de1ba38826c33b155f86feae2770b
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
|
|
|
|
|
|
|
| |
Add LGPLv3 option.
Change-Id: I8a63ad5e46a2701032b2103f791df4dec5b707e8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
|
Otherwise all changes to the implementation will have to be duplicated
in IDEs.
Change-Id: I61e6d4fa1ee9b724eb5d9de9f233dc915a6c8bc3
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|