Skip to content

1.0.0-beta.42

Pre-release
Pre-release
Compare
Choose a tag to compare
@daveaglick daveaglick released this 10 May 15:24
· 162 commits to main since this release
  • Breaking change: Deleted IFile.GetCacheHashCodeAsync() and replaced it with an implementation of ICacheCode.
  • Breaking change: Renamed IContentProvider.GetCacheHashCodeAsync() and replaced it with an implementation of ICacheCode.
  • Breaking change: Renamed IDocument.GetCacheHashCodeAsync() and replaced it with an implementation of ICacheCode.
  • Added a new "cache" folder that contains caching artifacts to improve performance, deleting it won't harm anything but it should be left if possible to improve initial generation performance.
    Also note that the "cache" folder likely shouldn't be committed to a repository, though it's designed to support that scenario when warranted (I.e. relative paths, etc.).
  • Compiled Razor assemblies (including layouts and partials) are now cached to disk which dramatically improved initial generation performance by not recompiling files that haven't changed.
  • Added IFile.ReadAllBytesAsync() and IFile.WriteAllBytesAsync().
  • Added IFile.WriteFromAsync(), IFile.AppendFromAsync(), and IFile.CopyToAsync() extension methods to more easily copy a file from/to a stream.
  • Added IReadOnlyFileSystem.CachePath and related extensions, methods, etc. to provide a path where cache files should be stored and set to "cache" by default (which should be excluded in .gitignore).
  • The write tracking data is now cached in a file so if the output folder has not changed and the content is the same, files don't need to be written even on the first execution.
  • Added an ICacheCode interface to provide a standard deterministic .GetCacheCodeAsync() method and implemented it in IDocument, IContentProvider, and IFile.
  • Changed the console output encoding and the ProcessLauncher child process console encodings to UTF-8 so emoji and other Unicode characters will render correctly from child processes.
  • Fixed a bug with the --help CLI option and command description escaping (#186).
  • Added ability to set the temp and cache paths via the CLI.