Warning, /sdk/clazy/Changelog is written in an unsupported language. File is not indexed.
0001 # Changelog 0002 0003 * v1.12 (TBD) 0004 0005 * v1.11 (January 21st 2022) 0006 - New Checks: 0007 - use-arrow-operator-instead-of-data 0008 - use-static-qregularexpression 0009 - unexpected-flag-enumerator-value 0010 - Removed inefficient-qlist check (Fixed in Qt6) 0011 0012 * v1.10 (July 20th 2021) 0013 - Requires C++17 0014 - Fixed a -Wclazy-lambda-in-connect false-positive 0015 - Fixed crash in copyable-polymorphic when PCH was enabled 0016 0017 * v1.9 (Jan 10th, 2021) 0018 - Fixed clazy slowdown introduced in 1.8. I can be up to 4x faster now. 0019 - range-loop was split in range-loop-detach and range-loop-reference 0020 - Fixed -Wclazy-connect-non-signal false positives 0021 0022 0023 * v1.8 (November 22nd, 2020) 0024 - New Checks: 0025 - qt6-qhash-signature 0026 - qt6-header-fixes 0027 - qt6-deprecated-api-fixes 0028 - use-chrono-in-qtimer 0029 - fixit for missing-qobject-macro 0030 0031 0032 * v1.7 (June 29th, 2020) 0033 - New Checks: 0034 - overloaded signal 0035 - invalid JNI signatures 0036 - qstring-comparison-to-implicit-char 0037 - qt6-qlatin1string-to-u 0038 - connect-non-signal: Fix case where it didn't find the pmf 0039 - qstring-arg warns when using QLatin1String::arg(int), as it casts to QChar 0040 - Building clazy itself is 30% faster 0041 - heap-allocated-small-trivial-type: less false-positives 0042 0043 0044 * v1.6 (October 12, 2019) 0045 - New Checks: 0046 - heap-allocated-small-trivial-type 0047 - signal-with-return-value 0048 - qproperty-type-mismatch, contributed by Jean-Michaƫl Celerier 0049 - Removed level3. Moved all level3 checks to manual level. Doesn't make sense to enable all of them. 0050 Each one must be carefully considered. 0051 - Fixed regressions with LLVM 9.0 0052 - Minimum LLVM was bumped to 5.0 0053 - Fixit infrastructure was overhauled 0054 - Clazy no longer rewrites files directly, to avoid races when parallel invocations change the same header. 0055 - Clazy now exports a yaml file with the replacements, to be applied with clang-apply-replacements. 0056 The same way other clang tooling does it. 0057 - The way to enable code rewrite is now: -Xclang -plugin-arg-clazy -Xclang export-fixes for clang 0058 or -export-fixes=somefile.yaml for clazy-standalone 0059 - All other fixit arguments and fixit env variables were removed 0060 - Thanks to Christian Gagneraud for contributing the fixit yaml exporter! 0061 0062 0063 * v1.5 (January 31st, 2019) 0064 - New Checks: 0065 - ifndef-define-typo 0066 - lowercase-qml-type-name 0067 - qrequiredresult-candidates 0068 - New Fixits: 0069 - range-loop now supports adding missing refs or const-ref 0070 - range-loop now supports adding qAsConst() 0071 - function-args-by-ref now adding missing refs or const-ref (experimental) 0072 - Introduced CLAZY_FIXIT_SUFFIX env variable 0073 - Removed support for the obscure -DCLAZY_BUILD_UTILS_LIB to simplify the CMakeLists.txt 0074 - Renamed the clazy plugin from ClangLazy.so to ClazyPlugin.so 0075 - fully-qualified-moc-types now warns for slot/invokable return values too. 0076 They need to be fully qualified for QML. 0077 - Fixed a crash (clang assert) in raw-environment-function 0078 0079 0080 * v1.4 (September 23rd, 2018) 0081 - New Checks: 0082 - connect-by-name 0083 - skipped-base-method 0084 - qstring-varargs 0085 - fully-qualified-moc-types 0086 - qt-keywords, with fixit included 0087 - qhash-with-char-pointer-key 0088 - wrong-qevent-cast 0089 - static-pmf 0090 - raw-environment-function 0091 - empty-qstringliteral 0092 - auto-unexpected-qstringbuilder now also warns for lambdas returning QStringBuilder 0093 - performance optimizations 0094 - Added -header-filter=<regex> option to clazy-standalone. Only headers matching the regexp will 0095 have warnings, besides the .cpp file from the translation unit, which is never filtered out. 0096 - Added -ignore-dirs=<regex> option to clazy-standalone, and its CLAZY_IGNORE_DIRS env variable equivalent. 0097 - Added CLAZY_HEADER_FILTER env variable which adds above functionality to both clazy and clazy-standalone 0098 - unused-non-trivial-variable got unused-non-trivial-variable-no-whitelist option 0099 - unused-non-trivial-variable got user-blacklist and user-whitelist support 0100 - container-inside-loop is now a manual check instead of level2 0101 - HiddenLevel was renamed to ManualLevel 0102 - connect-3arg-lambda now warns when passing a lambda to QTimer::singleShot() or QMenu::addAction() 0103 without a context object 0104 - old-style-connect warns for QMenu::addAction() and QMessageBox::open() too now 0105 0106 0107 * v1.3 (November 26th, 2017) 0108 - New checks: 0109 - thread-with-slots 0110 - connect-3arg-lambda 0111 - qproperty-without-notify 0112 - virtual-signal 0113 - overridden-signal 0114 - qhash-namespace 0115 - const-signal-or-slot 0116 - lambda-unique-connection 0117 - missing-qobject-macro is now a level2 check, instead of level1. Because, people can omit Q_OBJECT intentionally. 0118 - Added -only-qt option, which will make clazy bailout early on non-Qt files. 0119 For this purpose, the definition of a Qt file is whenever -DQT_CORE_LIB is passed, 0120 which is usually the case in most build systems. 0121 - Added -qt-developer option, when building Qt with clazy it will honour specific guidelines for Qt, 0122 which are not many right now but the list will grow. 0123 0124 0125 * v1.2 (July 8th, 2017) 0126 - clazy-standalone executable. Allows to run clazy against a JSON compilation database 0127 instead of as a plugin. clang-tidy doesn't support loading external modules (https://bugs.llvm.org/show_bug.cgi?id=32739) 0128 so this is a good workaround. 0129 - qt-compat mode. Allows to disable Qt5 specific checks by passing -Xclang -plugin-arg-clazy -Xclang qt4-compat 0130 - New checks: 0131 - install-event-filter 0132 - qcolor-from-literal 0133 - strict-iterators 0134 - connect-not-normalized 0135 - returning-data-from-temporary now checks for temporary QByteArrays casting to char* when returned 0136 - returning-data-from-temporary now checks for assignment too, not only return statements 0137 - unused-non-trivial-variable now warns for unused QList, QVector and many more types 0138 - ASTMatchers based checks are now supported 0139 - clang 3.7 was dropped due to ASTMatchers source incompatibilities. 0140 - Use clazy v1.1 for clang >= 3.6 support 0141 - clazylib.so no longer gets built by default, only the plugin (ClangLazy.so) 0142 gets built. Pass -DCLAZY_BUILD_UTILS_LIB=ON to enable the utils library if 0143 you're developing tools using clazy's convenience functions, which you're 0144 probably not. 0145 - CLAZY_INSTALL_NO_HEADERS option was removed. Either install the utils library 0146 and headers or nothing at all. By default nothing is installed, except 0147 the plugin and man pages. 0148 0149 0150 * v1.1 (February 20th, 2017) 0151 0152 - macOS and Windows support 0153 - New checks: 0154 - child-event-qobject-cast 0155 - ctor-missing-parent-argument 0156 - returning-data-from-temporary 0157 - qt-macros 0158 - base-class-event 0159 - connect-non-signal 0160 - incorrect-emit 0161 - tr-non-literal 0162 - Fixes against : 0163 - clang 4.0 0164 - Qt 5.9 0165 - 60% performance improvement 0166 - Fixed many false positives 0167 0168 0169 * v1.0 (September 12th, 2016) 0170 - (...) 0171 0172 0173 * v0.0.1 (June 10th, 2015) 0174 - (...)