[qt/qt-creator/qt-creator]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/qt-creator/qt-creator Pushed by mirror-service into branch 'master'. Changed from fd4d4ca725f2967af40f12db286cf1d0be316027 to c1888cd27a6e0c277f0740062d26fed6c0104289 Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository. This change contains the following new commits: Git commit bb56c85bc16bc67a8a18ea53e9f3ecb7fdcdb8c8 by Jarek Kobus on 23/07/2026 at 07:00.. Debugger: Fix Lldb hang from DEBUGINFOD_URLS env var CreateTarget() hangs indefinitely if this is set and the debuginfod server is unreachable (common offline/firewalled). Unset rather than clear - some clients treat empty and absent differently. Change-Id: Ia399fc7ce86d947fbb6a34466aeeb66d706aa9c8 Reviewed-by: hjk <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/bb56c85bc16bc67a8a18ea53e9f3ecb7fdcdb8c8 Git commit a4beeb4d634e3c1c11c4711b568882951733ab53 by Jarek Kobus on 23/07/2026 at 07:24.. LldbEngine: Fix watchpoint insertion via insertBreakpoint() Two bugs made every watchpoint insert fail: calling SetScriptCallbackFunction()/SetOneShot() unconditionally raised AttributeError for SBWatchpoint (only SBBreakpoint has them, aborting before any reply was sent), and the trailing describeError() fragment was concatenated onto describeBreakpoint()'s reply without the separating comma GdbMi parsing needs. Change-Id: I40559679030853a19473e93b4630d9f8c05893db Reviewed-by: hjk <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/a4beeb4d634e3c1c11c4711b568882951733ab53 Git commit 8699f2a38a036a38a1efc002793cdd1b8e3afc59 by Jarek Kobus on 23/07/2026 at 07:24.. LldbEngine: Fix catch fork insertion via insertBreakpoint() hasCapability() already claims CatchCapability, but insertBreakpoint() had no BreakpointAtFork case, so it fell into the generic pending/no-op branch. Break on the libc entry point instead. Change-Id: I2c890e6ce237a7e16703a2a9c7345caec473fd8e Reviewed-by: hjk <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/8699f2a38a036a38a1efc002793cdd1b8e3afc59 Git commit 5efc22c79ac0544fd6c3002c14b2a0ba9a152b38 by hjk on 23/07/2026 at 08:53.. Debugger: Report signal/exception stops under LLDB A crash such as a bad pointer access stopped the inferior under LLDB with only a bare "Stopped" status; unlike GdbEngine, nothing surfaced the signal. Have the LLDB bridge emit a signal-received notification on a spontaneous signal/exception stop (with signal name and description), and have the engine show the status message and, if enabled, the "Signal Received" dialog, mirroring the GDB path. Fixes: QTCREATORBUG-11049 Change-Id: Ibc26c6059b5b0f4427bbcfee6cd854e0c1c4bc62 Reviewed-by: Jarek Kobus <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/5efc22c79ac0544fd6c3002c14b2a0ba9a152b38 Git commit 960b3b529041397d8b93c44454c6f9b418aad704 by hjk on 23/07/2026 at 08:54.. ProjectExplorer: Honor the prompt-to-stop setting when closing a run tab Closing a running application's output tab unconditionally called promptToStop(), ignoring any "don't ask again" choice the user may have made. Route closeTab() through the prompt-to-stop machinery, but back it with its own setting (PromptToStopOnCloseTab, default on) instead of sharing the stop button's PromptToStopRunControl. Closing a tab is often a clean-up action, and silently killing a still-running application on tab close is more surprising than when explicitly stopping it, so the two "don't ask again" choices are kept independent. For that clean-up case, also add a "Close All Non-Running Tabs" entry to the tab context menu, alongside "Close All Tabs" and "Close Other Tabs". Assisted-by: Claude Code Change-Id: Id59d6fbb94a9208b058e7cd4ffc40b1a8b305424 Reviewed-by: Eike Ziller <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/960b3b529041397d8b93c44454c6f9b418aad704 Git commit 76b468366737de3c3761a45d0c5d4b63646a7bee by hjk on 23/07/2026 at 09:00.. TextEditor: Return a plain widget from createProjectEditor Add reusable createCodeStylePreview()/createCodeStylePreviewNote() helpers and have createProjectEditor() (and the default per-project editor) return a plain QWidget instead of a CodeStyleEditor. The per-project panel only ever used it as a widget, and per-project settings apply immediately, so no apply/cancel contract is needed there. The settings page preview now uses the same helpers. Assisted-by: Claude Code Change-Id: Ic57b8709b71cf69fa176ed977831343dc38b9cc1 Reviewed-by: Christian Stenger <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/76b468366737de3c3761a45d0c5d4b63646a7bee Git commit d1d0716dbcd66c4286d1c0fa7c2d4f1fcc28b4a9 by hjk on 23/07/2026 at 09:41.. FakeVim: Test that a Control modifier is not a plain command FakeVim already leaves keys that carry the Control modifier (without Alt) for Qt Creator shortcuts instead of matching them as plain letter commands (see isAcceptableModifier), so e.g. Ctrl-Shift-X does not act as "X". Add a regression test guarding that. The remaining part of the report, Ctrl-Shift-U inserting a "u", is the desktop input method entering Unicode code-point mode (IBus and similar); it never reaches the application and is outside FakeVim. Fixes: QTCREATORBUG-14369 Assisted-by: Claude Code Change-Id: I4dcfb54c29cbab10c65b491d84fd8e426d8d495d Reviewed-by: Cristian Adam <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/d1d0716dbcd66c4286d1c0fa7c2d4f1fcc28b4a9 Git commit 68eecaeb8c679588b69e789b689996890f1c419b by hjk on 23/07/2026 at 09:41.. FakeVim: Test the visual tab width matches the space width FakeVim sets the editor tab stop distance to the tabstop times the space width, so that tab-, space- and autoindent-indented lines line up. There was no regression guard for that. Assert that the tab stop distance equals the space width times the tabstop, for two tabstop values. Fixes: QTCREATORBUG-10367 Assisted-by: Claude Code Change-Id: I4d6c0f3d4ce3067a479d49cc747d9d5a006ae41c Reviewed-by: Cristian Adam <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/68eecaeb8c679588b69e789b689996890f1c419b Git commit c066f62e8efd399d2959d0c3743f9d44ff65e6ac by hjk on 23/07/2026 at 09:41.. FakeVim: Implement "gd" natively for Follow Symbol Route "gd" through the same request as CTRL-] / :tag so users no longer need to map a :gd Ex command. The mapped Ex command did not reach a definition in the same file. Assisted-by: Claude Code Fixes: QTCREATORBUG-27191 Change-Id: I7eb42af5f70f7bc4eac1cc104457231c2c18c087 Reviewed-by: Cristian Adam <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/c066f62e8efd399d2959d0c3743f9d44ff65e6ac Git commit eb73de204524406c2ccef77f436cf00ad728cb4b by hjk on 23/07/2026 at 10:10.. CppEditor: Expand doc comment for destructor declarations Typing "/*!" before a destructor produced only an empty comment continuation instead of a "\brief ~Foo" doc comment. The generator bailed out early because its guard for the first character of the declaration accepted only a letter, '_' or '[', but a destructor starts with '~'. Fixes: QTCREATORBUG-33584 Assisted-by: Claude Code Change-Id: Ie8518d3b8b3888ba9de49f5de55cd069c06b74d6 Reviewed-by: Christian Kandeler <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/eb73de204524406c2ccef77f436cf00ad728cb4b Git commit 170ad5b409079c491f7beea519caedb7caf9e7ce by hjk on 23/07/2026 at 10:10.. RemoteLinux: Test and tidy the "Access via" ssh -J plumbing Task-number: QTCREATORBUG-30629 Assisted-by: Claude Code Change-Id: I6bbb5abd91e87e9def64e1e56255aa20a259ed98 Reviewed-by: Christian Kandeler <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/170ad5b409079c491f7beea519caedb7caf9e7ce Git commit 0edab689da8f2f9b79c764bd91f9e730b2a36d06 by hjk on 23/07/2026 at 10:25.. CppEditor: Shift doc comment body when reindenting a selection Auto-indenting a selection (Ctrl+I) that contains a documentation comment moved the opening "/*!" line to its new indentation, but left the body and closing lines ("* \brief ...", "*/") at their old column, breaking the comment's internal alignment. The code formatter intentionally keeps a multi-line comment's continuation lines at their current column instead of recomputing it, since comment interior text is free-form. Extend CppQtStyleIndenter::indent() to shift those lines by the delta applied to the comment's opening line instead of leaving them untouched. Fixes: QTCREATORBUG-33585 Assisted-by: Claude Code Change-Id: Ide1c240189d5c27a845703a31589e87244c50991 Reviewed-by: Christian Kandeler <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/0edab689da8f2f9b79c764bd91f9e730b2a36d06 Git commit 8b6aef454cac07a8a0cd42097d5470253b803581 by David Schulz on 23/07/2026 at 10:36.. QtSupport: use osType specific possible qmake commands The default filter qmake* and qtpath* matches qmake.pdb on windows which is not a valid executable qmake. Testing those candidates takes unnecessary long in remote detection. Change-Id: I8a167d165215ecf5f76ce2f4224b9d1117ce0e19 Reviewed-by: Christian Kandeler <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/8b6aef454cac07a8a0cd42097d5470253b803581 Git commit 83bb7b6a6016ebafa002e8ccb3fbe7e033a36980 by Christian Kandeler on 23/07/2026 at 10:36.. Plugins: Clean up includes Resulting from a run of clang-include-cleaner, followed by manual corrections. Change-Id: I134c4d24519122246e7ec7a9f4fded7ba344f2b7 Reviewed-by: hjk <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/83bb7b6a6016ebafa002e8ccb3fbe7e033a36980 Git commit fef1b5e06527f10e54798a3e00c93d4542b1499c by hjk on 23/07/2026 at 10:47.. ClangFormat: Make the project code style editor a plain widget Rebuild ClangFormatProjectEditor as a plain QWidget using the shared createCodeStylePreview()/createCodeStylePreviewNote() helpers, which the factory now feeds via the C++ snippet group and preview text. The apply()/cancel() overrides are dropped: in the project view the global config widget writes through immediately and its apply/cancel are no-ops. Assisted-by: Claude Code Change-Id: Iddaa55f68abeb10893fb354888fdafdc6b15e557 Reviewed-by: Christian Stenger <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/fef1b5e06527f10e54798a3e00c93d4542b1499c Git commit c96f27f465450ff5f0708bb84a2bdf414abe3417 by hjk on 23/07/2026 at 10:48.. FakeVim: Keep cursor moves made by ex-mapped actions An Ex command mapped to a Qt Creator action runs while m_inFakeVim is set, so onCursorPositionChanged does not flag a cursor move the action makes. pullCursor() then kept the stale position and the trailing commitCursor() reverted the editor, undoing the move. Force the re-read outside visual mode, where commitCursor() has extended the selection for display and it must not be pulled back. Assisted-by: Claude Code Task-number: QTCREATORBUG-27191 Change-Id: I383587da330f608d1380d8afe7660b71afbffbb0 Reviewed-by: Cristian Adam <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/c96f27f465450ff5f0708bb84a2bdf414abe3417 Git commit 41711e426cbf7fe6824ca17fbd60f34ad971a1fc by hjk on 23/07/2026 at 10:58.. Core: Add Util.versionCompare() for reliable version checks JSON wizard expressions compared Qt versions with JavaScript's own operators, e.g. value('MinimumSupportedQtVersion') > '6.2'. That is wrong for two-digit minor versions: as strings "6.10" < "6.2", and as numbers 6.10 < 6.2 -- so anything gated on "> 6.x" silently misbehaves from Qt 6.10 on. Add a Util.versionCompare(v1, v2) JS helper backed by QVersionNumber (returns <0, 0, >0) and use it for the Qt-version checks in the autotest wizards. Fixes: QTCREATORBUG-33685 Assisted-by: Claude Code Change-Id: I1f50f7a3518e1fbccee971485e0e149873db3ede Reviewed-by: Eike Ziller <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/41711e426cbf7fe6824ca17fbd60f34ad971a1fc Git commit e4c1618f2f545490c6b93ebd20ae11b6f9540056 by pentek.imre (on behalf of Imre Péntek) on 23/07/2026 at 11:06.. QtSingleApplication: Don't hang forever when peer never acks QtLocalPeer::sendMessage() waits for the receiving instance to acknowledge the message with a timeout, but when blocking mode is requested (-block) it then calls waitForDisconnected(-1) unconditionally, even when the ack never arrived. Connecting to a QLocalServer succeeds at the OS level (kernel listen backlog) even when the peer never services its event loop. This happens in practice: every process, including pure -client invocations, registers itself in the instance list in the QtSingleApplication constructor, so a client that is itself blocked inside sendMessage() (or an otherwise frozen instance) can be selected as the message target by the next -client invocation. The new client then writes the message, times out waiting for the ack after 5 s, and hangs forever in waitForDisconnected(-1) with no feedback. The non-blocking variant correctly reports the failure and lets main() offer the "Could not send message" retry dialog; the blocking variant never gets there. Only enter the blocking wait when the message was actually acknowledged. Steps to reproduce: qtcreator & # instance A kill -STOP <pid of A> # stand-in for a blocked/frozen # first instance qtcreator -client -block file.txt # hangs forever instead of # failing after the 5 s timeout Task-number: QTCREATORBUG-34761 Change-Id: I0e545216743698daf6aec85721867b23e457120b Reviewed-by: Eike Ziller <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/e4c1618f2f545490c6b93ebd20ae11b6f9540056 Git commit 090903bbbddc953337f2097672a2e6f513858c5e by hjk on 23/07/2026 at 11:15.. Debugger: Recognize gdb debuginfod downloads in the watchdog The command watchdog is reset on every read from gdb's stdout, so the "GDB Not Responding" dialog fires only when gdb stays silent on stdout for the whole timeout. When gdb fetches debug info via debuginfod it announces the download with a single MI console line and then downloads silently, producing no output until it finishes. A download slower than the watchdog timeout therefore looked like a hang, and stopping the debugger from that dialog produced a confusing "crashed" message. Recognize the "Downloading ... separate debug info" console line, show it in the status bar, and remember that a download is in progress so that, if it stalls past the timeout, the watchdog dialog explains it is a debuginfod download (possibly a slow or unreachable server) instead of claiming gdb is not responding. Assisted-by: Claude Code Fixes: QTCREATORBUG-34811 Change-Id: I813de143a6d9fa58d8334ca55a994542b5861d61 Reviewed-by: Jarek Kobus <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/090903bbbddc953337f2097672a2e6f513858c5e Git commit c7f286a7c602cc35a1042142fd93160d51559c9c by hjk on 23/07/2026 at 11:21.. TextEditor: Remove the now-unused CodeStyleEditor::setupPreview Its two callers (the default and ClangFormat per-project editors) now use the free createCodeStylePreview()/createCodeStylePreviewNote() helpers. Assisted-by: Claude Code Change-Id: Ife9d1d838166ec01209c01da61af5a525b6d8669 Reviewed-by: Christian Stenger <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/c7f286a7c602cc35a1042142fd93160d51559c9c Git commit bba247aeeb484242a9d71a639fdec8d4f9030bf2 by hjk on 23/07/2026 at 11:21.. Debugger: Test writeMemory in the LLDB dumper test Add a "WriteMemory" case to tst_dumpers that overwrites a local via the writeMemory bridge command and checks the fetched value. The test harness resolves the variable address and issues the write before fetching variables; a new MemWrite dumper option drives it. LLDB only, as only the LLDB harness performs the memory write. Assisted-by: Claude Code Change-Id: I84da139fd822535f4c3b522c2b46b58507d81961 Reviewed-by: Jarek Kobus <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/bba247aeeb484242a9d71a639fdec8d4f9030bf2 Git commit 88bba2849e462a34ebf97eac2d4bc798db4aa5ff by hjk on 23/07/2026 at 11:30.. FakeVim: Match Vim when repeating a visual paste with "." Repeating a paste over a visual selection with "." produced mangled text: the dot command was recorded without the visual re-selection, so "." ran as a plain normal-mode paste. In Vim the redo of a paste over a visual selection records only the deletion of the selection, not the put text. So "." re-selects a same-sized region and removes it without inserting anything (the deleted text going to the unnamed register). Record the dot command that way. Verified against Vim 9.1 for character- and line-wise selections. Assisted-by: Claude Code Fixes: QTCREATORBUG-18298 Change-Id: Iab8a311490fe53bb5077afe0968d62744e9c0c0f Reviewed-by: Cristian Adam <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/88bba2849e462a34ebf97eac2d4bc798db4aa5ff Git commit 0c2a8a6b6f9eb7a63149ad1d542268d9fdb4f157 by hjk on 23/07/2026 at 11:40.. TextEditor: Retire createSettingsEditor, unify on value editors Every code style page now goes through setValueEditorCreator. A plain value editor edits the preferences live and CodeStyleAspect wraps it with the shared selector and preview; a value editor that derives from CodeStyleEditor (only ClangFormat, whose settings live in .clang-format files and the global settings) lays out its own selector and manages its own deferred apply/cancel, which CodeStyleAspect detects via qobject_cast and routes to. CodeStyleEditor is slimmed to that self-managed contract; its layout helpers, createSettingsEditor and setSettingsEditorCreator are removed. Assisted-by: Claude Code Change-Id: I363c20ca17218da03255c93e2cd902a5898fd247 Reviewed-by: Christian Stenger <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/0c2a8a6b6f9eb7a63149ad1d542268d9fdb4f157 Git commit 4088aa1564dc4044aad630bce8855243493a08ab by Jarek Kobus on 23/07/2026 at 11:49.. LldbEngine: Support plain remote-server attach without a platform AttachToRemoteServer/AttachToRemoteProcess with no lldbPlatform set (e.g. the generic "Attach to Running Debug Server" dialog) fell through to "Unsupported platform" - connect via the raw gdb-remote plugin instead, like a plain gdbserver attach. Change-Id: I57e4c7f68bd503277a4c985198aabcef760f20fc Reviewed-by: hjk <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/4088aa1564dc4044aad630bce8855243493a08ab Git commit c1888cd27a6e0c277f0740062d26fed6c0104289 by Christian Stenger on 23/07/2026 at 11:50.. SquishTests: Fix handling of save as dialog The respective label starts invisible, but gets visible on show. Do not use the first as it is handled as if a different object. Change-Id: Iae3e82adc282e651148dc570084007c639ac8e8e Reviewed-by: Jukka Nokso <[email protected]> Reviewed-by: Christian Stenger <[email protected]> https://invent.kde.org/qt/qt-creator/qt-creator/-/commit/c1888cd27a6e0c277f0740062d26fed6c0104289