| AArch64 | |
| ppc64le | |
| s390x | |
| x86-64 |
- Tests require at least Python 3.8, so we use a newer Python on Leap than the system default 3.6.
- Update to version 0.21, update LLVM/Clang to version 17.
* Improve analysis of type aliases (typedef and using).
* Improve analysis of namespace aliases (namespace xyz = foobar).
* Improve support for elaborated forward declarations
(typedef struct Foo Bar).
* Improve handling of "autocast" and function return types,
particularly with complex template types.
* Add new IWYU pragma: always_keep, which lets a header announce
that it should always be kept wherever included.
* Automatically use builtin libc++ mappings if libc++ is the
active standard library.
* Improve mappings for libc++ and posix headers.
- Rebase iwyu_include_picker.patch.
- Update to version 0.20, update LLVM/Clang to version 16. * Support `IWYU pragma: export` for forward-declarations. * Silently break cycles in mappings instead of crashing. * Require full type inside `typeid`. * Improve template reporting and resugaring. * Improve reporting of explicit template instantiations. * Fix a few crashes. * Improve logging (many small fixes). * Abandon python2 for scripts in favor of python3. - Rebase fix-shebang.patch and iwyu_include_picker.patch.
- Deactivate ThinLTO on ARM: there are internal linker errors.
- Update to version 0.13, update LLVM/Clang to version 9. * Improved handling of relative includes in mappings and pragmas * Path normalization now collapses .. * Improve --no_fwd_decls not to remove required forward declarations * Improved handling of builtin templates * Don't mark forward declarations final * Tolerate using declarations in precompiled header * Add script to generate Qt mappings, and new mappings for Qt 5.11 * Use directory from compilation database if available * Numerous documentation and build improvements - Add section about pragma comments to man page. - Add link-llvm9.patch to adapt to packaging changes in LLVM. - Enable ThinLTO where possible. - Drop support for SLE12.
- Disable LTO, because -flto=<number> doesn't work with Clang.
- Update to version 0.12, update LLVM/Clang to version 8.
* New command-line option: --keep to mirror IWYU pragma: keep
* New command-line option: --cxx17ns to suggest compact C++17
nested namespaces
* Improve --no_fwd_decls to optimize for minimal number of
redeclarations
* Improved mappings for POSIX types and let mappings apply to
builtins as well
* More principled handling of explicit template instantiations
* Breaking change in iwyu_tool: extra args are no longer
automatically prefixed with -Xiwyu (so you can use them for
Clang args too)
* Better handling of template forward-decls in fix_includes.
- Run test suite in %check.
- Package license file and documentation.
- Remove unnecessary %defattr.
- Update man page.
- Rebase fix-shebang.patch.
- Update to version 0.11, update LLVM/Clang to version 7.
* Improved recognition of template and specialization uses.
* Improved CMake build system, see docs for build instructions.
* Improved mappings for Boost, Intel intrinsics and libstdc++.
* Several bug fixes and improvements.
* Add --basedir argument to interpret IWYU output from another
source tree.
* Handle namespaces better.
* Add --only_re switch to filter affected files.
* Add --reorder/--noreorder switch to toggle reordering of
includes.
- Drop obsolete llvm-link.patch.
- Rebase iwyu_include_picker.patch.
- Update man page, sort options alphabetically.
- Remove runtime dependency on clang - the builtin headers are now
included in libclang.
- Update to version 0.10, update LLVM/Clang to version 6.
* Add --no_fwd_decls option to avoid replacing includes with
forward-declarations.
* Treat definitions of free functions as uses of the
corresponding prototypes.
* Support C++11 range-for loops.
* Several template misattribution bugs fixed.
* Better support for non-ASCII encodings in fix_includes.py.
* Remove support for VCS commands from fix_includes.py.
- Change fix-shebang.patch to write python3 shebangs. (boo#1210578)
- Update to version 0.19, update LLVM/Clang to version 15.
* New `--comment_style` option to control verbosity of 'why'
comments.
* New `--regex` option to select regex dialect.
* Add support for regex replacement in mappings.
* Add `begin_keep`/`end_keep` pragmas for protecting ranges of
includes or forward-declares.
* Fix several crash bugs for unusual inputs.
* More exhaustive handling of type aliases and enums.
* Recognize IWYU pragmas in CRLF source files.
* Respect configured toolchain on macOS (and overrides via
`-nostdinc++` + `-isystem`).
* In fix_includes.py, recognize namespace alias declarations.
* Improve mappings for POSIX and libc headers.
- Update iwyu_include_picker.patch.
- Use autosetup macro. - Remove unneeded BuildRequires on Python 2.
- Update to version 0.18, update LLVM/Clang to version 14.
* Fix crash on C++20 consteval expressions.
* Use more conventional exit codes. (Breaking change!)
* Fix deprecation warning for python3.
* Fix crash on va_list on AArch64.
* Improved support for using-declarations based on new Clang
design.
- Update to version 0.17, update LLVM/Clang to version 13.
* Improve support for various C++ features (builtins, CTAD,
specializations, type aliases).
* Fix crash on invalid code.
* Remove hard dependency on x86 LLVM target.
* Improve mappings for GNU libc.
* More concise output for clang output format in iwyu_tool.
- Rebase iwyu_include_picker.patch.
- Drop obsolete remove-x86-specific-code.patch, fixed upstream.
- Update to version 0.16, update LLVM/Clang to version 12. * Let iwyu_tool accept --load/-l argument for load limiting. * Let iwyu_tool signal success/failure with exit code. * Harmonize mapping generators. * Add mapping generator for CPython. * Improve mappings for libstdc++ and Boost. - Rebase iwyu_include_picker.patch.
- Update to version 0.15, update LLVM/Clang to version 11.
* Fix crash due to undefined behavior in AST traversal.
* Improve handling of operator new including C++17 features.
* Improve handling of templates.
* In iwyu_tool, remove known compiler wrappers from the command
list.
* Improve Qt mapping generator.
* Improve boost mappings.
* Improve built-in mappings for <time.h>.
* Add built-in mappings for max_align_t, ptrdiff_t, and wchar_t.
* Support shared LLVM/Clang libraries and other improvements.
- Get rid of obsolete test workaround, which stopped working on
32-bit architectures for some reason. Instead we use plain %ctest
now, but fix the mirror directory on 64-bit architectures.
- Update to version 0.14, update LLVM/Clang to version 10. * Report non-builtin enum base types. * Disable forward-declares for decls in inline namespaces. * Make C structs forward-declarable again. * Always keep Qt .moc includes. * Include binary type traits in analysis. * In iwyu_tool, fail fast if include-what-you-use is not found. * In iwyu_tool, print all diagnostic ouptut to stderr. * In fix_includes, improve file extension detection. * Add man page for include-what-you-use. - Rebase fix-shebang.patch. - Remove upstreamed link-llvm9.patch. - Use man page from upstream. - Use %cmake_build for parallel build.
- Use c++_compiler instead of clang to avoid dependence oddities.