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