Merge from qt6.8 branch#1106
Conversation
Log: as title
log: as title
log: as title
add -fpic Log: as title.
Log: Change-Id: Id5c85a4f865e619ed1dd16dbee397d197f0fcfd2
enable fpic flag Log: Change-Id: I1ae86cb8051484b80c455874ee3427436a168370
Log: Change-Id: I897dcd763bffadd1f6a5f1d6ab74422fcf9f8e8a
Log: Change-Id: Ifd5519f7b06a9f59bac0155a7b57d53e1900371d
Change-Id: I496ba14479a12ccb4b69c05b3863acf435a77913
|
Warning
|
|
TAG Bot TAG: 1.4.9 |
Reviewer's Guide by SourceryThis pull request merges changes from the qt6.8 branch. It includes updates for Qt6 compatibility, migration from QRegExp to QRegularExpression, and various bug fixes and improvements. No diagrams generated as the changes look simple and do not need a visual representation. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey @deepin-mozart - I've reviewed your changes - here's some feedback:
Overall Comments:
- The Qt version checks could be simplified by using
QT_VERSION >= QT_MAKE_VERSION(6, 0, 0). - Consider using
QDir::home()instead ofQDir::homePath()for better code clarity.
Here's what I looked at during the review
- 🟡 General issues: 5 issues found
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
| setSelection(lineFrom, indexFrom, lineTo, indexTo); | ||
| QStringList lines = selectedText().split(QRegExp("\\r\\n|\\n|\\r")); | ||
| QStringList lines = selectedText().split(QRegularExpression("\\r\\n|\\n|\\r")); | ||
| for (const QString &line : lines) { |
There was a problem hiding this comment.
suggestion: Replace QRegExp with QRegularExpression for splitting text.
This update aligns with Qt6 improvements. Be sure the regex semantics remain consistent with the previous implementation.
Suggested implementation:
QStringList lines = selectedText().split(QRegularExpression(R"(\r\n|\n|\r)"));
QStringList lines = selectedTexts.split(QRegularExpression(R"(\r\n|\n|\r)"));
| QString name; | ||
| QString path; | ||
| bool operator ==(const ToolChainParam ¶m) { | ||
| bool operator ==(const ToolChainParam ¶m) const { | ||
| return (this->name == param.name && this->path == param.path); | ||
| } |
There was a problem hiding this comment.
suggestion: Maintain const correctness for operator==.
Marking the equality operator as const allows for comparisons on const instances and increases overall code safety.
| QString name; | |
| QString path; | |
| bool operator ==(const ToolChainParam ¶m) { | |
| bool operator ==(const ToolChainParam ¶m) const { | |
| return (this->name == param.name && this->path == param.path); | |
| } | |
| QString name; | |
| QString path; | |
| bool operator ==(const ToolChainParam ¶m) const { | |
| return (this->name == param.name && this->path == param.path); | |
| } |
| this, &DirectoryGenerator::handleItemUpdated, | ||
| Qt::UniqueConnection); | ||
| QtConcurrent::run(ginfo.parser, &DirectoryAsynParse::parseProject, info); | ||
| QtConcurrent::run([ginfo, &info](){ ginfo.parser->parseProject(info); }); |
There was a problem hiding this comment.
question (bug_risk): Review lambda capture to avoid potential lifetime issues.
Capturing 'info' by reference in an asynchronous lambda might lead to dangling references if 'info' goes out of scope. Consider capturing it by value to ensure thread safety.
| @@ -46,4 +46,4 @@ file(GLOB ICON "${CMAKE_CURRENT_SOURCE_DIR}/configures/*.svg") | |||
|
|
|||
| install(FILES ${SUPPORTFILES} DESTINATION "${SOURCES_INSTALL_RPEFIX}/configures") | |||
There was a problem hiding this comment.
issue (typo): Typo: SOURCES_INSTALL_RPEFIX
Did you mean SOURCES_INSTALL_PREFIX?
Suggested implementation:
install(FILES ${SUPPORTFILES} DESTINATION "${SOURCES_INSTALL_PREFIX}/configures")
install(FILES ${ICON} DESTINATION "${SOURCES_INSTALL_PREFIX}/configures/icons")
| install(FILES ${SUPPORTFILES} DESTINATION "${SOURCES_INSTALL_RPEFIX}/configures") | ||
| install(FILES ${DESKTOPFILES} DESTINATION "/usr/share/applications") | ||
| install(FILES ${ICON} DESTINATION "${SOURCES_INSTALL_RPEFIX}/configures/icons") | ||
| install(FILES ${ICON} DESTINATION "${SOURCES_INSTALL_RPEFIX}/configures/icons") No newline at end of file |
There was a problem hiding this comment.
issue (typo): Typo: SOURCES_INSTALL_RPEFIX
Did you mean SOURCES_INSTALL_PREFIX?
There was a problem hiding this comment.
合并过程暂不处理这类问题,保证原子性
|
Note
详情{
"src/plugins/core/uicontroller/controller.cpp": [
{
"line": " QDesktopServices::openUrl(QUrl(\"https://github.com/linuxdeepin/deepin-unioncode/issues\"));",
"line_number": 1206,
"rule": "S35",
"reason": "Url link | f8f0d2a7c7"
},
{
"line": " QDesktopServices::openUrl(QUrl(\"https://uosdn.uniontech.com/#document2?dirid=656d40a9bd766615b0b02e5e\"));",
"line_number": 1213,
"rule": "S35",
"reason": "Url link | f9197a3d4e"
}
],
"debian/control": [
{
"line": "Homepage: http://www.deepin.org",
"line_number": 49,
"rule": "S35",
"reason": "Url link | 6fe814dfb7"
}
],
"3rdparty/unioncode-qtermwidget-0.14.1/lib/TerminalDisplay.cpp": [
{
"line": " \"<a href=\\"http://en.wikipedia.org/wiki/Flow_control\\">suspended</a>\"",
"line_number": 3214,
"rule": "S35",
"reason": "Url link | 4c5b21a1de"
}
]
} |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: deepin-mozart, Kakueeen The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Summary by Sourcery
Port the project to support both Qt5 and Qt6, addressing compatibility issues and updating code to work with newer Qt versions
Enhancements:
Build:
CI: