Commit Graph

5585 Commits

Author SHA1 Message Date
David Schulz
f0ad5813b9 LanguageClient: more FileName to FilePath renaming
Change-Id: I803211d462b442b6881a02e870d2cd816675e0d9
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-09-17 08:15:40 +00:00
Eike Ziller
8df0653bf8 Merge remote-tracking branch 'origin/4.10'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/projectexplorer/gcctoolchain.cpp
	src/plugins/qmldesigner/components/stateseditor/stateseditormodel.cpp

Change-Id: Iffdf48e782a734107ea170ebb3812e997cea0e7b
2019-09-12 09:08:04 +02:00
Eike Ziller
ed9177f74c CppTools: Move ProjectUpdateInfo to ProjectExplorer
Used for updating project parts, so move it near RawProjectPart.

Change-Id: I77aeffbdbfb3d2ec0de600f61dcf7fbb7a355a98
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-09-12 06:37:41 +00:00
Eike Ziller
9cc45fe1fb CppTools: Move RawProjectPart to ProjectExplorer
Doesn't have any dependencies into CppTools anymore, therefore moving it
reduces the dependencies of the project managers to CppTools as well.

Change-Id: Ibe728abe59eb88a8877943dca1f48a85163e27ac
Reviewed-by: hjk <hjk@qt.io>
2019-09-11 06:22:12 +00:00
Cristian Adam
486aaabd21 CMake Build: Use same Qt compiler defines for tests
Source code needed adjustments though.

Change-Id: I78b4610a6bb895a385c7c30a6c92c97a276b89dd
Reviewed-by: hjk <hjk@qt.io>
2019-09-10 15:05:59 +00:00
Eike Ziller
8452264a18 CppTools: Move QtVersion and BuildTargetType
QtVersion to utils/cpplanguage_details.h which already contains similar
flags.

BuildTargetType to ProjectExplorer, next to BuildTargetInfo (but not in the
same header to not pull that in everywhere).

Removes dependency on ProjectPart from RawProjectPart.

Change-Id: I5791065e4266f20c2657ee4b1b594df04b238a1c
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2019-09-10 07:31:21 +00:00
David Schulz
d72632acd6 Debugger: add dumper for std::initializer_list
Change-Id: I223182cecf1f04dbc9908dc993a8800c1633c48b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-09-09 11:35:24 +00:00
Cristian Adam
ad0dcb9668 CMake build: Build fix for tst_debugger_simplifytypes
simplifytype.cpp is included also in tst_debugger_dumpers, which
has a GUI pch.

Because CMake has global internal file structures, simplifytype.cpp
will get the PCH flags from tst_debugger_dumpers, which will be
reused in tst_debugger_simplifytypes.

This patch makes sure the PCH from tst_debugger_dumpers has all
the dependencies in tst_debugger_simplifytypes

Change-Id: I715cb551f2f75a619b21999ea521976470068c3f
Reviewed-by: hjk <hjk@qt.io>
2019-09-06 09:25:59 +00:00
Nikolai Kosjar
e6d16b6747 ClangTools: Support loading exported diagnostics
Add a new toolbar button to load diagnostics exported with

   $ clang-tidy -export-fixes=/path/to/file
   $ clazy-standalone -export-fixes=/path/to/file (master version)

Change-Id: I8316fe0706a18222e68220ef4fbfdc7ae8d09804
Reviewed-by: David Schulz <david.schulz@qt.io>
2019-09-03 09:39:48 +00:00
Nikolai Kosjar
0ba729e527 Import YAML-Parser yaml-cpp
Version: tags/yaml-cpp-0.6.2
  License: MIT

yaml-cpp requires c++11 and since yaml-cpp 0.6 there is no dependency on
boost anymore.

A YAML parser is needed for the ClangTools plugin to parse exported
diagnostics from clang-tidy/clazy:

  $ clang-tidy -export-fixes=/tmp/tidy.yaml source.cpp

The imported source is stripped of unneeded files as documented with

  src/libs/3rdparty/yaml-cpp/patches/0001-yaml-cpp-Strip-unneeded-sources.patch
  (generated with "git format-patch -D")

Change-Id: Ib0a521b5aff4b1cd058eb480bfb99fde4b320dc7
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-30 08:42:22 +00:00
Marco Bubke
99e841d140 UnitTests: Add return value to mock function
Otherwise we try to get access a negative index. The real implementation
will never return a negative value, so the shouldn't the mock function.

Change-Id: I369e168bd18530b39fa5e2a622a716b30b8b344c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:54:06 +00:00
Marco Bubke
9f805b7e8a ClangRefactoring: Improve follow symbol and usage
Change-Id: Idb42010443e4560489ef067e54d05b4e567598e9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:53:45 +00:00
Marco Bubke
c174eb378a Clang: Reduce database accesses
If we prefetch data from the database to the caches we reduce the database
transaction calls which are quite expensive.

Change-Id: I617a0d886807402e0a94291a913a77f989970b55
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:53:32 +00:00
Marco Bubke
e0ca44e7bc CLang: Improve locking in StringCache
If there is no mutex we can skip some calls.

Change-Id: I3f2cc2d8da142bab28ace496a59711346aa1b5a0
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:52:56 +00:00
Marco Bubke
199746143a Clang: Bulk add project file paths to database
This project part container generation because there is not anymore one
single access to the database for every file path.

Change-Id: I5f82022262fe89a976729d48ee4f098b74a1e1d1
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:52:09 +00:00
Marco Bubke
947cb9ed4e Clang: Improve file path cache
Change-Id: I940dc63c0fc95fbb826ed7d19a1ac1e4db5a542c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:51:56 +00:00
Marco Bubke
f9fb4508d4 Clang: Optimize file path cache
We now fetch all directories and sources from the database at file
path cache creation.

Change-Id: I92510b49a234128f4c82b840611db82ead3f1a54
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:51:28 +00:00
Marco Bubke
4280a68d9f ClangPchManager: Watch unchanged PCHs
Change-Id: I7f4c0f12e4fbf3714e5bfe7655cfa13cac85f71f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:50:52 +00:00
Marco Bubke
56d611e0a3 ClangPchManager: Update PCHs if time stamps of dependencies changed
If there is a newer file than the last indexing or if a file is added or
removed from the project or system PCH we have to reindex the project and
maybe the system PCH.

Change-Id: Ibce2a244190a79b5c422c469c065ddc11e44b2cb
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:50:39 +00:00
Marco Bubke
f1be7793c4 ClangPchManager: Expose more internals from BuildDependenciesProvider
We will need it later.

Change-Id: Ic2c85780bf965be8e4c8603fed365d806576fdc6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:50:26 +00:00
Marco Bubke
d086bbdc9a ClangPchManager: Fix transactions in precompiled header storage
Change-Id: Ia0333ef7110c97a42d73c70c33157849323fb34d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:50:15 +00:00
Marco Bubke
578b70e998 Clang: Add fetchTimeStamps to PrecompiledHeaderStorage
Change-Id: I75552a971fbc39a81e14e3b9ec0c5125d3858025
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:50:02 +00:00
Marco Bubke
0fe6811acd ClangPchManager: Use TimeStamp instead of long long
Change-Id: If8a429238d31492506c68bb523ceeb4bacad157e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:49:48 +00:00
Marco Bubke
1e703a6901 ClangRefactoring: Remove file status collection
It is not needed anymore. If we need it again we can reintroduce it.

Change-Id: If8897ddb404daaf52b249ddd3763deb685c35fe5
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:49:31 +00:00
Marco Bubke
cc78969bdb Clang: Improve updating of PCHs
Instead of deleting the path and time stamp of the project PCH we always
set the time stamp but delete only the path if PCH creation failed. A
failed PCH will be no rebuilt if the files changed. We have to add that
feature later.

Change-Id: I1094271f9ead5d906e94b68ac91c0becd2371ca9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:49:16 +00:00
Marco Bubke
cdda564946 Clang: Set indexing time stamp by dependent sources
Instead of using the time stamp from clang we simply set one time stamp
for all dependent sources.

Change-Id: I0adbe59d46c88ddd1ac491a7f7db568bcf2ac540
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:48:54 +00:00
Marco Bubke
2fd72ed9d9 Clang: Remove reset from ModifiedTimeChecker
Change-Id: I8eb7258e929ad851310b3dfae818152eed88960e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:48:12 +00:00
Marco Bubke
4e5e4899d5 Clang: Improve modified timer checker
Make the algorithm a little bit more clear.

Change-Id: I71b04cdd947272edf9fade8f93b7300a945a2fc8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:47:49 +00:00
Marco Bubke
eadd37572a Clang: Move transactions to storage
We call the function anyway only isolated from other queries, so we can
move the transaction guards to the project storage.

Change-Id: I7cca26b25c2258856c68821671085c0a68044693
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2019-08-27 11:47:29 +00:00
Eike Ziller
38feea7e25 Merge remote-tracking branch 'origin/4.10'
Change-Id: Idfe86eb91c7a9a16f15d528a2a03beecca1cb208
2019-08-27 09:47:14 +02:00
Dmitry Nuzhdin
309e345818 Debugger: Fix mapping std::set in Locals window via gdb
Currently QtCreator incorrectly shows content of a std::set.
For example set {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
is shown as {0, 1, 2, 1, 2, 1, 2, 1, 2}.

Change-Id: Idaff66451827657ef129aa3d27895c43938e6fdc
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: hjk <hjk@qt.io>
2019-08-26 16:11:23 +00:00
Christian Kandeler
567a0db6dd Utils::Environment: Consider target OS type when sorting
That is, use case-insensitive sorting on Windows, so that e.g. "Path"
will not appear after "PROCESSOR_REVISION".

Fixes: QTCREATORBUG-22786
Change-Id: I42d469b6079037d1062dbd5b273f5aa8ade25e79
Reviewed-by: hjk <hjk@qt.io>
2019-08-22 10:29:22 +00:00
Christian Kandeler
6d3f236aab Utils::Environment: Use expanded values
The Environment class is supposed to support values with references to
other variables, but we failed to actually expand them in most places.

Fixes: QTCREATORBUG-22687
Change-Id: I108cb59d3b4571471423455240f6f4f1cf64bf05
Reviewed-by: hjk <hjk@qt.io>
2019-08-20 12:39:16 +00:00
hjk
a11320bbe9 More on QTime::start() deprecation
Change-Id: Icb53308b5eb95dfc2ae39e221677471ff260a2c1
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-19 10:53:00 +00:00
Christian Stenger
10b32863ca Tests: Fix compile
Broke with e027ed5e96.

Change-Id: Ic79537865f42c4d6190d262fcf73399ed42b3035
Reviewed-by: hjk <hjk@qt.io>
2019-08-14 11:39:49 +00:00
Tobias Hunger
1e9ee0ce1d CMakeLists: Allow for internal plugin registration
add_qtc_plugin now takes a flag "INTERNAL_ONLY". These internal plugins
will not show up in the project configuration nor in the feature summary.

This flag is used by the tests that build plugins.

Change-Id: I1912dd62221b2624ed7326df381fbbceccefbdac
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-09 09:05:54 +00:00
Eike Ziller
a81c1aab2c Merge remote-tracking branch 'origin/4.10'
Change-Id: I273a1e8f5f9e54756befbc398c2c2754534ff128
2019-08-09 09:43:16 +02:00
Christian Stenger
ca32a47122 Squish: Use parameters for mouseClick
Another partial revert for e8727fcae2.

Change-Id: Ieba9b7ea75421858698e0da0133278408e2b5ee1
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2019-08-09 06:13:12 +00:00
Eike Ziller
e5543eaebf Merge remote-tracking branch 'origin/4.10'
Change-Id: Id9cab641788f93cda9a81da9f156614b91d87b2a
2019-08-01 11:58:56 +02:00
Cristian Adam
12e61a9e1b CMake Build: Fix build
Change-Id: Ie066f6b4fe0f0dda5d5fdd6a734c4b8408164dd1
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-07-31 13:19:36 +00:00
hjk
ae66f63390 Debugger: Disable QObject connection and signal display
Besides the announced change to QObject guts in a5a859e72 there has been
at least 6e0b5dadc and possibly more, so give up here.

Change-Id: I84201cef9f2a7515f082f4c3310bdc96f7a4216d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-31 12:18:02 +00:00
Robert Loehning
5d3010a722 Squish: Use parameters in another call to mouseClick(...)
Reverts e8727fcae2 for this line.

Change-Id: I98e789ef3e09b3d33e53ced23177795e1e226a1e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-31 11:05:30 +00:00
hjk
47cd385536 QmlProjectManager: Remove warnings in file format test
Change-Id: I6c37f7da544c8e568ca33ecd4573cddaba173e04
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-31 08:06:59 +00:00
hjk
b2daf07573 Debugger: Fix QFileDumper
Some QRingBuffer member got removed in 8f92baf5c9.

Change-Id: Ie0066db3b61bff25751a4886cb4b584cc4db49bf
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-31 07:28:02 +00:00
Eike Ziller
7de82409fc Merge remote-tracking branch 'origin/4.10'
Change-Id: I7a7bc552e09de1fbee98402c97e3a35f0e2c952a
2019-07-31 08:27:20 +02:00
Robert Loehning
e425d88b6b Squish: Update clang detection in tst_default_settings
Change-Id: Ia1e0332253a309eae9579fff5cae2659a6089c50
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-30 13:29:05 +00:00
Robert Loehning
4cfcdc65a5 Squish: Use parameters in another call to mouseClick(...)
Reverts e8727fcae2 for this line.

Change-Id: I6ac752985fb9bcb66a38d7f97d8cc8dc33da4189
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-30 13:28:43 +00:00
Thomas Hartmann
c3e3d40f90 QmlDesigner: Extend test
Change-Id: I3850814303bc791934044f10a955cfcbc78e76ef
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-07-30 13:10:02 +00:00
Robert Loehning
a968789324 Squish: Stabilize tst_qml_js_console
Change-Id: Id5c72fffddcbf88ece36b4109621e10e2a030532
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-30 09:24:47 +00:00
Robert Loehning
1ac8927665 Squish: Update tst_openqt_creator
Change-Id: I2fed662652f7f8f5cbe4b281bdde5791ea57e2d7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-07-29 10:16:33 +00:00