ghc::filesystem Release v1.3.6

2020-10-10 07:46
Heute habe ich [v1.3.6](https://github.com/gulrak/filesystem/releases/tag/v1.3.6) von [`ghc::filesystem`](https://github.com/gulrak/filesystem) veröffentlicht, meiner Implementation der C++17-Komponente [`std::filesystem`](https://en.cppreference.com/w/cpp/filesystem) für die Sprachversionen C++11, C++14 and C++17.

Mit diesem Release gehören CentOS 7 und 8 zu den CI-getesteten und unterstützten Platformen. Des weiteren wurde die fs::path-Klasse optimiert so das bei verschiedenen Operationen weniger Kopien oder temporäre Objekte benutzt werden.

Die Änderungen in v1.3.6:

  • Pull request #74, on Windows symlink evaluation used the wrong reparse struct information and was not handling the case of relative paths well, thanks for the contribution.
  • Refactoring for #73, enhanced performance in path handling. the changes lead to much fewer path/string creations or copies, speeding up large directory iteration or operations on many path instances.
  • Bugfix for #72, the TestAllocator in filesystem_test.cpp was completed to fulfill the requirements to build on CentOS 7 with devtoolset-9. CentOS 7 and CentOS 8 are now part of the CI builds.
  • Bugfix for #70, root names are now case insensitive on Windows. This fix also adds the new behaviour switch LWG_2936_BEHAVIOUR that allows to enable post C++17 fs::path::compare behaviour, where the comparison is as if it was an element wise path comparison as described in LWG 2936 and C++20 [fs.path.compare]. It is default off in v1.3.6 and will be default starting from v1.4.0 as it changes ordering.

Ich danke allen Beteiligten für ihre Unterstützung!