From e0344827d12ceb047acadf4088abd894473155c9 Mon Sep 17 00:00:00 2001 From: Joel Rosdahl Date: Wed, 29 May 2024 21:32:49 +0200 Subject: [PATCH] chore: Update NEWS --- doc/NEWS.adoc | 160 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 160 insertions(+) diff --git a/doc/NEWS.adoc b/doc/NEWS.adoc index fa21ab1766..54a1133405 100644 --- a/doc/NEWS.adoc +++ b/doc/NEWS.adoc @@ -1,9 +1,163 @@ = Ccache news +== Ccache 4.10 + +Release date: 2024-05-29 + + +=== New features and improvements + +- Added support for GCC option `-fcallgraph-info`. + + [small]#_[contributed by Raihaan Shouhell]_# + +- Added support for GCC option `-fprofile-update`. + + [small]#_[contributed by Raihaan Shouhell]_# + +- Added support for GCC option `-fdump-ipa-clones`. + + [small]#_[contributed by Jiri Slaby]_# + +- Added support for the MSVC `/Yc` option (precompiled header). + + [small]#_[contributed by Clemens Wasser, Thomas Ferrand and Silver Zachara]_# + +- Added support for the MSVC `/Tc` and `/Tp` options (specifying + source code type). + + [small]#_[contributed by Joel Rosdahl]_# + +- Added an experimental inode cache implementation for Windows. This speeds up + ccache a lot when many headers are included, both for cache hits and cache + misses. ++ +NOTE: This feature is currently disabled by default, but interested Windows +users are encouraged to try it out by setting +https://ccache.dev/manual/4.10.html#config_inode_cache[_inode_cache = true_]. ++ +[small]#_[contributed by Thomas Ferrand]_# + +- Added knowledge of Xcode option `-ivfsstatcache`. + + [small]#_[contributed by Joel Rosdahl]_# + +- Added support for Apple Clang option `-Xpreprocessor -fopenmp` in direct mode. + + [small]#_[contributed by Joel Rosdahl]_# + +- Added knowledge of Emscripten option `--em-config`. + + [small]#_[contributed by Byoungchan Lee]_# + +- Reduced the risk of false positive direct mode hits. + + [small]#_[contributed by Joel Rosdahl]_# + +- Clear direct mode manifest on recache. + + [small]#_[contributed by Joel Rosdahl]_# + +- Optimized file reading on Windows. + + [small]#_[contributed by Clemens Wasser]_# + +- Optimized file copying performed when + https://ccache.dev/manual/4.10.html#config_hard_link[hard linking] or + https://ccache.dev/manual/4.9.html#config_file_clone[file cloning] is enabled. + + [small]#_[contributed by Raihaan Shouhell]_# + +- Use `posix_spawn(3)` for executing compiler check commands. + + [small]#_[contributed by Brendan Shanks]_# + +- The + https://ccache.dev/manual/4.10.html#config_prefix_command[_prefix_command_] + and + https://ccache.dev/manual/4.10.html#config_prefix_command_cpp[_prefix_command_cpp_] + configuration options now allow any prefix, not only programs that exist in + `PATH`. This means that _prefix_command_ now can be a program with arguments. + + [small]#_[contributed by Joel Rosdahl]_# + +- Added a new `incbin` + https://ccache.dev/manual/4.10.html#config_sloppiness[_sloppiness_] value for + ignoring presence of `.incbin` directives in the source code. + + [small]#_[contributed by Raihaan Shouhell]_# + +- Added a `--print-log-stats` option that prints a machine-parsable variant of + `--show-log-stats`. + + [small]#_[contributed Kaspar Schleiser]_# + +- Added a `--format` option for selecting JSON or tab format for `--print-stats` + and `--print-log-stats`. + + [small]#_[contributed Kaspar Schleiser]_# + +- Added a `--print-version` option for printing ccache version in + machine-parsable format. + + [small]#_[contributed by Silver Zachara]_# + +- The `--inspect` option now retains access time (atime) of the inspected file + if possible. + + [small]#_[contributed by Joel Rosdahl]_# + + +=== Bug fixes + +- Fixed reading of files larger than 2^31^ bytes on some systems where this was + a problem. + + [small]#_[contributed by Joel Rosdahl]_# + +- Improved handling of large files on 32-bit systems. + + [small]#_[contributed by Joel Rosdahl]_# + +- Nonexistent include files are allowed in preprocessor mode again, fixing + regression in ccache 4.9.1. + + [small]#_[contributed by Joel Rosdahl]_# + +- The Clang `-fdiagnostics-color` option is now handled again, fixing regression + in ccache 4.6.2. + + [small]#_[contributed by Joel Rosdahl]_# + +- Fixed assertion failure on Windows mapped network drives. + + [small]#_[contributed by Joel Rosdahl]_# + +- Fixed handling of MSVC options `/Fp` and `/Yu`. + + [small]#_[contributed by Silver Zachara]_# + +- Fixed lock file implementation on MSYS2. + + [small]#_[contributed by an anonymous user]_# + +- The "`apparent real path`" of the object file is now added to the input hash + when using `-fprofile-arcs` to avoid false positive hits in some scenarios. + + [small]#_[contributed by Joel Rosdahl]_# + +- When generating profiling information, + https://ccache.dev/manual/4.10.html#config_[_run_second_cpp_] is now forced to + true so that the coverage report won't refer to a temporary preprocessed file. + + [small]#_[contributed by Joel Rosdahl]_# + + +=== Build improvements + +- Improved handling of ccache dependencies. A new `DEPS` CMake variable selects + how software library dependencies should be located or retrieved, replacing + the old `HIREDIS_FROM_INTERNET`, `ZSTD_FROM_INTERNET` and `OFFLINE` variables. + Options are `AUTO` (the default) for automatically downloading missing + dependencies, `DOWNLOAD` for always downloading and `LOCAL` for never + downloading. See + https://github.com/ccache/ccache/blob/v4.10/doc/INSTALL.md#software-library-dependencies[_Software library dependencies_] for details. + + [small]#_[contributed by Joel Rosdahl]_# + +- Added support for using a local installation of BLAKE3, cpp-httplib, + nonstd-span and tl-expected instead of linking to bundled copies. + + [small]#_[contributed by Joel Rosdahl]_# + +- Removed bundled copies of doctest, fmt, getopt_long and xxhash. + + [small]#_[contributed by Joel Rosdahl]_# + +- Changed to use the Windows BLAKE3 implementation when building on MSYS2. + + [small]#_[contributed by Joel Rosdahl]_# + + +=== Documentation improvements + +- Improved documentation of "`gcno_cwd sloppiness`". + + [small]#_[contributed by Joel Rosdahl]_# + + == Ccache 4.9.1 Release date: 2024-02-05 + === Bug fixes - Improved detection of bad remote storage URLs gracefully. This also fixes @@ -26,6 +180,7 @@ Release date: 2024-02-05 Release date: 2023-12-30 + === New features and improvements - Made `ignore_options`/`CCACHE_IGNOREOPTIONS` also skip the option from special @@ -148,6 +303,7 @@ Release date: 2023-12-30 Release date: 2023-08-29 + === Bug fixes - Fixed various problems with parsing of MSVC response file (`.rsp`). + @@ -407,6 +563,7 @@ Release date: 2023-03-12 Release date: 2023-03-20 + === Bug fixes - Disabled the inode cache by default again since there have reports of ccache @@ -2678,6 +2835,7 @@ Release date: 2018-02-11 Release date: 2018-01-28 + === New features and enhancements - Improved instructions on how to get cache hits between different working @@ -2738,6 +2896,7 @@ Release date: 2018-01-13 Release date: 2017-02-17 + === New features and enhancements - Documented the different cache statistics counters. @@ -2802,6 +2961,7 @@ Release date: 2016-09-07 Release date: 2016-08-27 + === Notes - A C99-compatible compiler is now required to build ccache.