Version bump, release v1.2.0

This commit is contained in:
Steffen Schuemann 2019-06-02 12:53:34 +02:00
parent 98dad7f0a1
commit eec82f8de6
2 changed files with 28 additions and 15 deletions

View File

@ -155,10 +155,12 @@ without that switch ([see](https://blogs.msdn.microsoft.com/vcblog/2018/04/09/ms
Be aware too, as a header-only library, it is not hiding the fact, that it Be aware too, as a header-only library, it is not hiding the fact, that it
uses system includes, so they "pollute" your global namespace. uses system includes, so they "pollute" your global namespace.
There is an additional header named `ghc/fs_std.hpp` that implements this **Hint:** There is an additional header named `ghc/fs_std.hpp` that implements this
dynamic selection of a filesystem implementation, that you can include dynamic selection of a filesystem implementation, that you can include
instead of `ghc/filesystem.hpp` when you want std::filesystem where instead of `ghc/filesystem.hpp` when you want std::filesystem where
available and ghc::filesystem where not. available and ghc::filesystem where not. It also enables the `wchar_t`
support on `ghc::filesystem` on Windows, so the resulting implementation
in the `fs` namespace will be compatible.
### Using it as Forwarding-/Implementation-Header ### Using it as Forwarding-/Implementation-Header
@ -207,9 +209,12 @@ to take precedence:
#endif #endif
``` ```
There are additional helper headers, named `ghc/fs_std_fwd.hpp` and `ghc/fs_std_impl.hpp` **Hint:** There are additional helper headers, named `ghc/fs_std_fwd.hpp` and
that use this technique, so you can simply include them if you want to dynamically select `ghc/fs_std_impl.hpp` that use this technique, so you can simply include them
the filesystem implementation. if you want to dynamically select the filesystem implementation. they also
enable the `wchar_t` support on `ghc::filesystem` on Windows, so the resulting
implementation in the `fs` namespace will be compatible.
### Git Submodule and CMake ### Git Submodule and CMake
@ -233,10 +238,10 @@ the next version.
## Documentation ## Documentation
There is almost no documentation in this release, as any `std::filesystem` documentation There is almost no documentation in this release, as any `std::filesystem`
would work, besides the few differences explained in the next section. So you might documentation would work, besides the few differences explained in the next
head over to https://en.cppreference.com/w/cpp/filesystem for a description of section. So you might head over to https://en.cppreference.com/w/cpp/filesystem
the components of this library. for a description of the components of this library.
The only additions to the standard are documented here: The only additions to the standard are documented here:
@ -314,10 +319,7 @@ P1161R1 was agreed upon on Kona 2019 meeting [see merge](https://github.com/cplu
and GCC by now switched to following its proposal and GCC by now switched to following its proposal
([GCC #86910](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86910)). ([GCC #86910](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86910)).
### Not Implemented ### Not Implemented on C++ before C++17
Besides this still being work-in-progress, there are a few cases where
there will be no implementation in the close future:
```cpp ```cpp
// methods in ghc::filesystem::path: // methods in ghc::filesystem::path:
@ -348,6 +350,13 @@ with the `path::wstring()` member
Unicode variant independant of the `UNICODE` macro and makes sharing code Unicode variant independant of the `UNICODE` macro and makes sharing code
between Windows, Linux and macOS easier. between Windows, Linux and macOS easier.
Starting with v1.2.0 `ghc::filesystem` has the option to select the more
standard conforming APi with `wchar_t` and `std::wstring` on Windows by
defining `GHC_WIN_WSTRING_STRING_TYPE`. This define has no effect on other
platforms and will be set by the helping headers `ghc/fs_std.hpp` and
the pair `ghc/fs_std_fwd.hpp`/`ghc/fs_std_impl.hpp` to enhance compatibility.
```cpp ```cpp
const path::string_type& path::native() const /*noexcept*/; const path::string_type& path::native() const /*noexcept*/;
const path::value_type *path::c_str() const /*noexcept*/; const path::value_type *path::c_str() const /*noexcept*/;
@ -446,7 +455,7 @@ to the expected behavior.
## Release Notes ## Release Notes
### v1.1.99 (wip) ### [v1.2.0](https://github.com/gulrak/filesystem/releases/tag/v1.2.0)
* Added MingW 32/64 and Visual Studio 2015 builds to the CI configuration. * Added MingW 32/64 and Visual Studio 2015 builds to the CI configuration.
* Fixed additional compilation issues on MingW. * Fixed additional compilation issues on MingW.
@ -464,6 +473,10 @@ to the expected behavior.
support for standard conforming `wchar_t/std::wstring` interface when support for standard conforming `wchar_t/std::wstring` interface when
compiling on Windows with defined `GHC_WIN_WSTRING_STRING_TYPE`, this is compiling on Windows with defined `GHC_WIN_WSTRING_STRING_TYPE`, this is
default when using the `ghc/fs_std*.hpp` header, to enhance compatibility. default when using the `ghc/fs_std*.hpp` header, to enhance compatibility.
* New feature ([#18](https://github.com/gulrak/filesystem/issues/18)), optional
filesystem exceptions/errors on unicode errors with defined
`GHC_RAISE_UNICODE_ERRORS` (instead of replacing invalid code points or
UTF-8 encoding errors with the replacement character `U+FFFD`).
* Pull request ([#20](https://github.com/gulrak/filesystem/pull/14)), fix for * Pull request ([#20](https://github.com/gulrak/filesystem/pull/14)), fix for
file handle leak in `fs::copy_file`. file handle leak in `fs::copy_file`.
* Coverage now checked in CI (~95% line coverage). * Coverage now checked in CI (~95% line coverage).

View File

@ -172,7 +172,7 @@
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - //- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
// ghc::filesystem version in decimal (major * 10000 + minor * 100 + patch) // ghc::filesystem version in decimal (major * 10000 + minor * 100 + patch)
#define GHC_FILESYSTEM_VERSION 10199L #define GHC_FILESYSTEM_VERSION 10200L
namespace ghc { namespace ghc {
namespace filesystem { namespace filesystem {