Skip to content

Commit

Permalink
chore: Update NEWS
Browse files Browse the repository at this point in the history
  • Loading branch information
jrosdahl committed May 29, 2024
1 parent 8294763 commit e034482
Showing 1 changed file with 160 additions and 0 deletions.
160 changes: 160 additions & 0 deletions doc/NEWS.adoc
Original file line number Diff line number Diff line change
@@ -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<path>` and `/Tp<path>` 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
Expand All @@ -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
Expand Down Expand Up @@ -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`). +
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -2738,6 +2896,7 @@ Release date: 2018-01-13

Release date: 2017-02-17


=== New features and enhancements

- Documented the different cache statistics counters.
Expand Down Expand Up @@ -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.
Expand Down

0 comments on commit e034482

Please sign in to comment.