Merge pull request #10980 from Rmys/master

qtcreator-8.0.2
This commit is contained in:
Rmys
2022-11-11 18:10:22 +03:00
committed by GitHub
4 changed files with 153 additions and 35 deletions
+11 -9
View File
@@ -3,23 +3,25 @@
# Licensed under the GNU General Public License, version 3. # Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt # See the file http://www.gnu.org/copyleft/gpl.txt
from pisi.actionsapi import autotools from pisi.actionsapi import autotools
from pisi.actionsapi import qt5 from pisi.actionsapi import cmaketools
from pisi.actionsapi import shelltools
from pisi.actionsapi import pisitools from pisi.actionsapi import pisitools
from pisi.actionsapi import qt5
from pisi.actionsapi import get from pisi.actionsapi import get
#WorkDir="qt-creator-opensource-src-%s" % get.srcVERSION() #WorkDir="qt-creator-opensource-src-%s" % get.srcVERSION()
def setup(): def setup():
pisitools.dosed("qtcreator.pri", "libexec/qtcreator", "lib/qtcreator") pisitools.dosed("qtcreator.pri", "libexec/qtcreator", "lib/qtcreator")
pisitools.dosed("src/tools/tools.pro", "libexec", "lib") # pisitools.dosed("src/tools/tools.pro", "libexec", "lib")
cmaketools.configure("-DCMAKE_INSTALL_PREFIX=/usr \
shelltools.system("qmake LLVM_INSTALL_DIR=/usr QBS_INSTALL_DIR=/usr \ -DCMAKE_INSTALL_LIBEXECDIR=lib \
CONFIG+=release QMAKE_CFLAGS_ISYSTEM=-I \ -DWITH_DOCS=ON \
DEFINES+=QBS_ENABLE_PROJECT_FILE_UPDATES \ -DBUILD_DEVELOPER_DOCS=ON \
QTC_PREFIX=/usr qtcreator.pro") -DBUILD_QBS=OFF \
-DQTC_CLANG_BUILDMODE_MATCH=ON \
-DCLANGTOOLING_LINK_CLANG_DYLIB=ON")
def build(): def build():
qt5.make() qt5.make()
def install(): def install():
qt5.install() qt5.install()
@@ -0,0 +1,60 @@
From bd00cc8bf8742a0c344266879cef680093bfdbf0 Mon Sep 17 00:00:00 2001
From: Christian Kandeler <christian.kandeler@qt.io>
Date: Wed, 10 Aug 2022 15:37:31 +0200
Subject: LanguageClient: Introduce timeout for restart counter
While it makes sense to stop trying to restart a continuously crashing
server, the restart counter should be reset regularly, as it's not
critical if the server restarts "once in a while" during a longer
programming session.
Change-Id: Ia2efca28ae4a4dba72da947d9eb776e3909d0cb3
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
---
src/plugins/languageclient/client.cpp | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/plugins/languageclient/client.cpp b/src/plugins/languageclient/client.cpp
index 78a2a259c9..c624b13979 100644
--- a/src/plugins/languageclient/client.cpp
+++ b/src/plugins/languageclient/client.cpp
@@ -197,6 +197,11 @@ public:
connect(&m_shutdownTimer, &QTimer::timeout, this, [this] {
LanguageClientManager::deleteClient(q);
});
+
+ m_restartCountResetTimer.setSingleShot(true);
+ m_restartCountResetTimer.setInterval(5 * 60 * 1000);
+ connect(&m_restartCountResetTimer, &QTimer::timeout,
+ this, [this] { m_restartsLeft = MaxRestarts; });
}
~ClientPrivate()
@@ -307,7 +312,9 @@ public:
AssistProviders m_clientProviders;
QMap<TextEditor::TextDocument *, AssistProviders> m_resetAssistProvider;
QHash<TextEditor::TextEditorWidget *, LanguageServerProtocol::MessageId> m_highlightRequests;
- int m_restartsLeft = 5;
+ static const int MaxRestarts = 2;
+ int m_restartsLeft = MaxRestarts;
+ QTimer m_restartCountResetTimer;
InterfaceController *m_clientInterface = nullptr;
DiagnosticManager *m_diagnosticManager = nullptr;
DocumentSymbolCache m_documentSymbolCache;
@@ -1511,8 +1518,11 @@ bool Client::reset()
bool ClientPrivate::reset()
{
- if (!m_restartsLeft)
+ if (!m_restartsLeft) {
+ m_restartCountResetTimer.stop();
return false;
+ }
+ m_restartCountResetTimer.start();
--m_restartsLeft;
m_state = Client::Uninitialized;
m_responseHandlers.clear();
--
cgit v1.2.1
@@ -0,0 +1,42 @@
From 8276bd265bb5440690e58876901c8c70a4f446a6 Mon Sep 17 00:00:00 2001
From: Aaron Barany <akb825@gmail.com>
Date: Sat, 27 Aug 2022 14:21:47 -0700
Subject: LanguageClient: Adjust restart limits
Changed restart timer to 2 minutes and max restarts to 5 for restarting
language client after it exits unexpectedly. This avoids disabling the
language client with clangd 14 in situations where it's likely to crash
during normal editing.
Change-Id: I333bb9d67ed1dbba2b52a1cd916f5d1cf3c0b60b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
---
src/plugins/languageclient/client.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/plugins/languageclient/client.cpp b/src/plugins/languageclient/client.cpp
index c86462bee4..49778d8f79 100644
--- a/src/plugins/languageclient/client.cpp
+++ b/src/plugins/languageclient/client.cpp
@@ -177,7 +177,7 @@ public:
});
m_restartCountResetTimer.setSingleShot(true);
- m_restartCountResetTimer.setInterval(5 * 60 * 1000);
+ m_restartCountResetTimer.setInterval(2 * 60 * 1000);
connect(&m_restartCountResetTimer, &QTimer::timeout,
this, [this] { m_restartsLeft = MaxRestarts; });
}
@@ -301,7 +301,7 @@ public:
AssistProviders m_clientProviders;
QMap<TextEditor::TextDocument *, AssistProviders> m_resetAssistProvider;
QHash<TextEditor::TextEditorWidget *, LanguageServerProtocol::MessageId> m_highlightRequests;
- static const int MaxRestarts = 2;
+ static const int MaxRestarts = 5;
int m_restartsLeft = MaxRestarts;
QTimer m_restartCountResetTimer;
InterfaceController *m_clientInterface = nullptr;
--
cgit v1.2.1
+40 -26
View File
@@ -13,7 +13,7 @@
<IsA>app:gui</IsA> <IsA>app:gui</IsA>
<Summary>Lightweight, cross-platform integrated development environment</Summary> <Summary>Lightweight, cross-platform integrated development environment</Summary>
<Description>Lightweight, cross-platform integrated development environment</Description> <Description>Lightweight, cross-platform integrated development environment</Description>
<Archive type="tarxz" sha1sum="a3135cc9eff3cf0932753bfd5b0fa1dfecae841a">https://download.qt.io/official_releases/qtcreator/4.14/.4.14.1/qt-creator-opensource-src-4.14.1.tar.xz</Archive> <Archive type="tarxz" sha1sum="630ae3abe9b773d6a34374b8de11a5cf244ba703">https://download.qt.io/official_releases/qtcreator/8.0/8.0.2/qt-creator-opensource-src-8.0.2.tar.xz</Archive>
<BuildDependencies> <BuildDependencies>
<Dependency>libgcc</Dependency> <Dependency>libgcc</Dependency>
<Dependency>libX11-devel</Dependency> <Dependency>libX11-devel</Dependency>
@@ -21,26 +21,32 @@
<Dependency>git</Dependency> <Dependency>git</Dependency>
<Dependency>mesa-devel</Dependency> <Dependency>mesa-devel</Dependency>
<Dependency>openssh</Dependency> <Dependency>openssh</Dependency>
<Dependency versionFrom="5.15.2">qt5-quickcontrols</Dependency> <Dependency versionFrom="5.15.5">qt5-sql-mysql</Dependency>
<Dependency versionFrom="5.15.2">qt5-base-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-sql-odbc</Dependency>
<Dependency versionFrom="5.15.2">qt5-declarative-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-sql-sqlite</Dependency>
<Dependency versionFrom="5.15.2">qt5-linguist</Dependency> <Dependency versionFrom="5.15.5">qt5-sql-postgresql</Dependency>
<Dependency versionFrom="5.15.2">qt5-serialport-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-quickcontrols</Dependency>
<Dependency versionFrom="5.15.2">qt5-quickcontrols2</Dependency> <Dependency versionFrom="5.15.5">qt5-base-devel</Dependency>
<Dependency versionFrom="5.15.2">qt5-svg-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-declarative-devel</Dependency>
<Dependency versionFrom="5.15.2">qt5-xmlpatterns</Dependency> <Dependency versionFrom="5.15.5">qt5-linguist</Dependency>
<Dependency versionFrom="5.15.2">qt5-webkit-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-serialport-devel</Dependency>
<Dependency versionFrom="5.15.2">qt5-x11extras-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-quickcontrols2</Dependency>
<Dependency versionFrom="5.15.2">qt5-assistant-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-svg-devel</Dependency>
<Dependency versionFrom="5.15.2">qt5-designer-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-xmlpatterns</Dependency>
<Dependency versionFrom="5.15.2">qt5-script-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-webkit-devel</Dependency>
<Dependency versionFrom="5.15.2">qt5-webengine-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-x11extras-devel</Dependency>
<Dependency versionFrom="5.15.5">qt5-assistant-devel</Dependency>
<Dependency versionFrom="5.15.5">qt5-designer-devel</Dependency>
<Dependency versionFrom="5.15.5">qt5-script-devel</Dependency>
<Dependency versionFrom="5.15.5">qt5-webengine-devel</Dependency>
<Dependency>valgrind</Dependency> <Dependency>valgrind</Dependency>
<Dependency>llvm-clang-devel</Dependency> <Dependency>llvm-clang-devel</Dependency>
<Dependency>llvm</Dependency> <Dependency>llvm</Dependency>
<Dependency>llvm-mlir</Dependency>
</BuildDependencies> </BuildDependencies>
<Patches> <Patches>
<!--Patch>qtcreator-preload-plugins.patch</Patch--> <Patch level="1">qtcreator-languageclient2.patch</Patch>
<Patch level="1">qtcreator-languageclient3.patch</Patch>
</Patches> </Patches>
</Source> </Source>
@@ -48,19 +54,20 @@
<Name>qtcreator</Name> <Name>qtcreator</Name>
<Summary>Lightweight, cross-platform integrated development environment</Summary> <Summary>Lightweight, cross-platform integrated development environment</Summary>
<RuntimeDependencies> <RuntimeDependencies>
<Dependency>zstd</Dependency>
<Dependency>elfutils</Dependency> <Dependency>elfutils</Dependency>
<Dependency>llvm-libs</Dependency> <Dependency>llvm-libs</Dependency>
<Dependency>llvm-clang</Dependency> <Dependency>llvm-clang</Dependency>
<Dependency versionFrom="5.15.2">qt5-svg</Dependency> <Dependency versionFrom="5.15.5">qt5-svg</Dependency>
<Dependency versionFrom="5.15.2">qt5-base</Dependency> <Dependency versionFrom="5.15.5">qt5-base</Dependency>
<Dependency versionFrom="5.15.2">qt5-base-devel</Dependency> <Dependency versionFrom="5.15.5">qt5-base-devel</Dependency>
<Dependency versionFrom="5.15.2">qt5-script</Dependency> <Dependency versionFrom="5.15.5">qt5-script</Dependency>
<Dependency versionFrom="5.15.2">qt5-webkit</Dependency> <Dependency versionFrom="5.15.5">qt5-webkit</Dependency>
<Dependency versionFrom="5.15.2">qt5-designer</Dependency> <Dependency versionFrom="5.15.5">qt5-designer</Dependency>
<Dependency versionFrom="5.15.2">qt5-assistant</Dependency> <Dependency versionFrom="5.15.5">qt5-assistant</Dependency>
<Dependency versionFrom="5.15.2">qt5-serialport</Dependency> <Dependency versionFrom="5.15.5">qt5-serialport</Dependency>
<Dependency versionFrom="5.15.2">qt5-declarative</Dependency> <Dependency versionFrom="5.15.5">qt5-declarative</Dependency>
<Dependency versionFrom="5.15.2">qt5-webengine</Dependency> <Dependency versionFrom="5.15.5">qt5-webengine</Dependency>
</RuntimeDependencies> </RuntimeDependencies>
<Files> <Files>
<Path fileType="executable">/usr/bin</Path> <Path fileType="executable">/usr/bin</Path>
@@ -82,6 +89,13 @@
</Package> </Package>
<History> <History>
<Update release="15">
<Date>2022-11-11</Date>
<Version>8.0.2</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="14"> <Update release="14">
<Date>2021-02-24</Date> <Date>2021-02-24</Date>
<Version>4.14.1</Version> <Version>4.14.1</Version>