Commit Graph

5172 Commits

Author SHA1 Message Date
hjk
4452e85710 Debugger: Split error messages in debugger output tests
Having one per line makes them easier to read.

Change-Id: I4f4288ac26415cf9930c8b377972c391bd223ee4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-11-01 11:27:40 +00:00
Eike Ziller
30f71eddf8 Merge remote-tracking branch 'origin/4.2'
Conflicts:
	qbs/modules/qtc/qtc.qbs
	qtcreator.pri

Change-Id: I245212bd45104636b1c9737b36d3db3e4af23092
2016-11-01 09:30:49 +01:00
hjk
4f7821a71f Debugger: Disable Nim dumper auto test
Needs manual testing in the common case that the
intended crash does not occur.

Change-Id: I99de4f466df9e3a470a6bcb98b819d15da3a7067
Reviewed-by: hjk <hjk@qt.io>
2016-11-01 08:14:10 +00:00
Marco Bubke
aa97e29920 Clang: Add ostream for clang::StringRef
Change-Id: Ibafb1c179fcc49f1df330537ad6dc9addba5618d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-10-31 14:23:44 +00:00
Eike Ziller
f1d3e7c8e7 runextensions: Add convenience method for result handler
Change-Id: Ibe7e62049f165276fdedcd04d8311324f6bc5d19
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-10-31 09:31:02 +00:00
hjk
bd2653fbaa Debugger: Introduce and use type ids instead of type in dumpers
Change-Id: I569d13d4f5d66cf1606b2b5d047b415659de539b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-28 08:11:38 +00:00
hjk
0bf4bfcade Debugger: Don't optimize dumper tests
Better finish a slow build than waiting forever for a potentially
faster one.

Change-Id: Idec49294ec10f8dee41b061b3eeb7bf1e696d2a5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-27 06:49:25 +00:00
Thomas Hartmann
e9b4cab807 QmlDesigner: Adding manual test for cpp mockups
This is a typical test case for mocking cpp types.

Change-Id: Ibd76429c3d1190c46a223062d77d676f728fec77
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-10-25 13:36:27 +00:00
hjk
f7214157b9 Debugger: Don't force dumper test to be build with forced debug
Does not seem to be needed and breaks builds on OS X 10.10 with
qmake CONFIG+=release CONFIG-=debug BUILD_TESTS=1:
"ld: library not found for -lUtils_debug"

Change-Id: I3c3e91d4045768f56ed6737410e09666e4e182ad
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-24 12:06:25 +00:00
Nikolai Kosjar
4fbdbdb1ee Clang: Fix delayed reparse of dirty and visible but not current documents
1. Open document foo.h
2. Create a split and open foo.cpp (#including "foo.h")
3. Edit foo.h (e.g. by introducing a syntax error, so that foo.cpp will
   indicate header errors in the toolbar or as info bar)
=> Actual: foo.cpp will be reparsed immediately.
 Expected: foo.cpp should be reparsed after a delay.

This saves resources (cpu time) and minimizes poping up of the header
info bar while editing header files in splits.

Regression introduced by

    commit 380d756a03
    Clang: Hook up supportive translation unit on first edit

Change-Id: Ib5fd90e49415dfc3aefacab7cd627b0e1937f5fc
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-18 11:39:01 +00:00
Eike Ziller
02a39c013f Merge remote-tracking branch 'origin/4.1' into 4.2
Conflicts:
	src/plugins/ios/iostoolhandler.cpp
	src/shared/qbs
	src/tools/3rdparty/iossim/iossim.qbs
	src/tools/3rdparty/iossim_1_8_2/main.mm

Change-Id: Ied9cafec4f1ee93d9e524f095f5c6b1480b2f054
2016-10-17 16:16:07 +02:00
Oswald Buddenhagen
e4fd1f2e0c fix build of qmldesigner coretests against namespaced qt
Change-Id: I6fcd87a4f1a3e59994ca13d559a215b789f02e96
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
2016-10-14 14:24:34 +00:00
hjk
cdb218a3e1 Debugger: Show raw object data for pixmap
"Separate display" can be triggered for QRasterPlatformPixmap on
the embeddded QImage.

Task-number: QTCREATORBUG-17107
Change-Id: Ib54a6f76f634b0dcf601836dc10609f212581d14
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-13 10:08:33 +00:00
Robert Loehning
bd8c12c94c Squish: Update tst_session_handling again
Someone removed the numbers again.
This reverts commit 816d0010c2.
Also, the sessionList was replaced.

Change-Id: I23e135e5b240321e30097c0d1d48c82cb24b6c49
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-13 09:19:34 +00:00
Eike Ziller
5b47c653c1 Merge remote-tracking branch 'origin/4.1' into 4.2
Change-Id: Ibe4cd5522e1d87d56d2aae7a429282b41bf18647
2016-10-12 16:02:47 +02:00
Marco Bubke
d6858b2f9f Clang: Fix unused warning
Change-Id: I1ed0698eb9ea2d73e4ccc6540121610b30d5f646
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-10-12 11:25:36 +00:00
Robert Loehning
b729d6da7f Squish: Update tst_git_clone
Change-Id: Ie775ae993651b51699ebfedbe6b37c823392435e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-12 11:02:49 +00:00
Robert Loehning
169723dd87 Squish: Fix openVcsLog() when an OutputWindow is already shown
Change-Id: I47432b7367f238a92921bffb030eada902327bd5
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-12 11:02:27 +00:00
Robert Loehning
8acca9f37b Squish: Fix error handling in tst_git_clone
Change-Id: Id59ba23361beb0994f400647680e4facb223d22f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-12 11:02:10 +00:00
Eike Ziller
f45c59eb8a Merge remote-tracking branch 'origin/master' into 4.2
Change-Id: I96904f9c65b6c25bb4e04ca34e2d1acb27b8dd58
2016-10-12 10:15:59 +02:00
Marco Bubke
63ae993bf2 Clang: Add output argument highlighting
This adds a mix-in for writable functions arguments.

Change-Id: I758f7fef77d992ea25395db550571ccb081fd5fd
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2016-10-12 08:01:48 +00:00
Nikolai Kosjar
9d55d8485c Clang: Show info bar for parse errors in header files
...because those errors can lead to a substantial performance/functional
regression.

The actual diagnostics (possibly with children) are shown as details in
the info bar.

The info bar can be hidden with the "Do Not Show Again" button.
Re-enabling the info bar is possible with the new editor tool bar
button.

Change-Id: I03394ff8e3c84127946b0b791930b28a385f5a46
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-11 14:01:14 +00:00
Marco Bubke
eb55c1a4e4 Clang: Fix highlightingmarks include test
Change-Id: I3e3f34a7155149a4a12fb8cea3102aba10bb5fc7
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2016-10-11 10:55:01 +00:00
Nikolai Kosjar
bf5c1cc4fb Clang: Avoid duplicate jobs without changes in-between
This could happen, e.g. with this message order:

  >>> updateTranslationUnitsForEditor()
  add job<1>
  run job<1>
  >>> updateVisibleTranslationUnits(Utf8String(), {})
  >>> updateVisibleTranslationUnits(path, {path})
  add job<2>
  finish job<1>
  run job<2> -- Ops, nothing is changed but job<2> is started

This led to an outdated translation unit (e.g. wrong highlighting).

Now JobQueue checks for duplicates in the queue and checks all the
currently running jobs.

Change-Id: I05843fddcbd21ce0489681c283227c0027ded428
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:37:20 +00:00
Nikolai Kosjar
380d756a03 Clang: Hook up supportive translation unit on first edit
Parsing happens rotationally on the translation units.

The recently parsed translation unit is used for completion jobs while
the older version is used for parse jobs.

Advantages:
  A1. A completion job cannot be blocked anymore by currently running
      parse job.
  A2. Faster triggering of parse jobs. A reparse was triggered about
      1650ms after the last keystroke. This is down to 500ms now since we
      do not have a blocking translation unit for the completion anymore.

Disadvantages:
  D1. Memory consumption is doubled for an edited document.
      This could be addressed by suspending the second translation unit
      after some time of inactivity.
  D2. Setup of the supportive translation unit takes some time.

Change-Id: I958c883c01f274530f5482c788c15cd38d6f4c3e
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:36:59 +00:00
Nikolai Kosjar
a85d5c7222 Clang: Return updated documents
Change-Id: Id4b1267914019ac56cdd132c6d597167a1f2b9a9
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:36:48 +00:00
Nikolai Kosjar
c8cec2dd0d Clang: Base JobQueue on translation unit
This enables a job per translation unit instead of per document.

This does not change any behavior yet.

Change-Id: Iafb8dab5da32b53dbb3010c16241bf89cbb81b38
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:36:33 +00:00
Nikolai Kosjar
8d443b40b7 Clang: Extract long clock/time_point references
Change-Id: If2790263e9a314f27762c57cf6bf4ef67f93a84b
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:36:24 +00:00
Nikolai Kosjar
1a426d9f01 Clang: Support second translation unit
A TranslationUnit is owned by TranslationUnits now. TranslationUnits
allows to add another TranslationUnit and to update/query the recently
and previously parsed translation unit.

This does not change any behavior yet.

Change-Id: I8a2f0cc05d3e51bf739dd5d7c4da14b54147f3ab
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:35:48 +00:00
Nikolai Kosjar
c12d01fb41 Clang: Add job queue for each document
...in preparation for follow-up changes. This will enable e.g. a timer
per document.

This does not change any behavior yet.

Change-Id: Ic1dc06de602373c666d47ce7a95ab99e56d389d5
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-10 12:35:35 +00:00
Robert Loehning
816d0010c2 Squish: Update tst_session_handling for numbered sessions
Change-Id: I2821f55440e13eeb9ca81589ffd746e713ae0e16
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-10 10:36:19 +00:00
Christian Stenger
f7e4c2fb4c Tests: Fix compilation
Introduced with c1e3fd9f3e.

Change-Id: I5a760efa5c6e300ad5a4b5951492e57b03d0b50c
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-10-10 05:19:30 +00:00
Robert Loehning
54a7188c27 Squish: Cloning installer-framework instead of jom in tst_git_clone
jom's repository can be cloned quicker than Squish can cancel the
procedure, making the test instable. Cloning installer-framework
takes a couple of seconds longer.

Change-Id: I032a4bf60cfd3b070e4c311fbd1dae5b81e8fcd1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-07 10:17:20 +00:00
hjk
e234bbd88b Debugger: Add dumper for Nim's string and sequence types
... and make the auto test infrastructure able to handle
a test. To pass the test, some Nim compiler must be
accessible.

Change-Id: I707aa72c0f3a2ea35c7131cba490cafb41617f6c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-06 13:39:02 +00:00
hjk
d4ef385d59 Debugger: Improve QJSValue dumper on 32 bit
Change-Id: I18937a92d5202a58d9f3d786c6cc37f8176b2692
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-10-06 09:18:10 +00:00
Eike Ziller
90cf4487a5 Merge remote-tracking branch 'origin/4.1'
Conflicts:
	src/plugins/autotest/qtest/qttestoutputreader.cpp

Change-Id: I4b323f2f3041d015fa04b9a25ec925f3b3e2411f
2016-10-05 15:28:04 +02:00
Nikolai Kosjar
ae92b68154 Clang: Remove some needless bools
Change-Id: Ia845c803fce85ad0e29e2cf6b64820b86599bac6
Reviewed-by: David Schulz <david.schulz@qt.io>
2016-10-05 07:25:45 +00:00
hjk
da00b0202e Debugger: Use types instead of type names in dumper array handling
Change-Id: I5c4b6e0e0de077fbead467dd1b042c379c9a0dd3
Reviewed-by: hjk <hjk@qt.io>
2016-09-30 15:06:37 +00:00
hjk
fad7be6caa Debugger: Make QLocale dumper test pass on Qt 5.6 again
QLocale::DefaultNumberOptions is new in 5.7

Change-Id: Iaf55dcacd8ca5a0bbb92f25df4983aed276cda7f
Reviewed-by: hjk <hjk@qt.io>
2016-09-30 14:30:50 +00:00
hjk
ffe85ff5a2 Debugger: Adjust StdList dumper test expectation to reality
Change-Id: I366bba71ae122635d8159085396df80a2ae301db
Reviewed-by: hjk <hjk@qt.io>
2016-09-30 13:56:21 +00:00
Christian Stenger
3adef3cc7c Squish: Remove OSX specific workaround
Change-Id: I9e43c47c5ef2422d46e10b9f2fd88454b4352c30
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2016-09-30 10:09:10 +00:00
Orgad Shaneh
ed12120bf2 QmlDesigner: Fix test compilation
Change-Id: I092b28d10af15edff77a6806cd71554cc5be0d73
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-09-29 23:58:48 +00:00
hjk
a71fb44404 Debugger: Re-enable two std::map test cases
Whatever the problem was seems to be fixed by now.

Change-Id: I0990614f5ed5b4f61f0e7d1017603fc317ada6d1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-09-28 13:26:34 +00:00
hjk
856c347300 Debugger: Use now-standard mechanism for std::unordered_map dumper
Change-Id: Iceea7d369e53220622edb6272e72750b6512148f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-09-28 12:49:25 +00:00
hjk
cbcc556614 Debugger: Make the 'use last value for short display' trick permanent
Change-Id: I4c8b50751ed4ad605bbd02287147a904d8aec58b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-09-28 08:48:43 +00:00
hjk
a2c83874d3 Debugger: Some dumper improvements for QV4 types
Start displaying QV4::Value again for numeric values
and QJSValue for ints, doubles and strings.

Change-Id: I18ce226c21168087ce280cb05aa0e250bd3187d9
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2016-09-27 15:20:25 +00:00
Christian Stenger
d1c8c5ded3 Squish: Disable gcc compile check on OSX
Change-Id: I6537bb9e20c9d16689cea520a01b28da8f2ed468
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2016-09-27 04:43:17 +00:00
hjk
5efa84830b Debugger: Remove use of native values in dumper.py
Lowers the barrier for other debugger backends.

Change-Id: I09e0ad09548b6b4220175245cc0d845ac5aa29d0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2016-09-26 14:07:00 +00:00
hjk
e08b1a070b Debugger: Add a dumper of QStaticStringData
Change-Id: I5e4ebc31eaf7cce76b8cfd1a5c9635441eccc797
Reviewed-by: hjk <hjk@qt.io>
2016-09-22 13:39:12 +00:00
Thomas Hartmann
325f63c732 QmlDesigner: Implementing dynamic node properties
The model now supports dynamic node properties. e.g.:
Item {
    property Item item: Item {
    }
}


In this case Property::dynamicpropertyType() is Item and
Property::isDynamic() is true.

To create such a property I added:
NodeProperty::setDynamicTypeNameAndsetModelNode().

It is not supported to reparent nodes in an out of
dynamic node properties. The model throws an exception in this case.
This is currently not required on the application level and not
supported by the rewriter.

Change-Id: Ie05325663c481d8583dc45bee38b559c190fbb30
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-09-22 10:57:29 +00:00