|
Boost : |
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2021-11-12 12:30:29
On 11/12/21 04:15, Marshall Clow via Boost wrote:
> The master branch is is now open for post-beta merges, but only as described in the Post-Beta Merge Policy.
> See <https://github.com/boostorg/wiki/wiki/Releases%3A-Beta-Merge-Policy <https://github.com/boostorg/wiki/wiki/Releases%3A-Beta-Merge-Policy>>
>
> Reminder: The master branch closes for the release on Wednesday, December 1st.
> Full calendar here: https://www.boost.org/development/ <https://www.boost.org/development/>
I would like to merge Boost.Filesystem develop to master:
https://github.com/boostorg/filesystem/compare/master...develop
Break down by commits:
https://github.com/boostorg/filesystem/commit/d13461be0f8fafe2d63b87141bcd1416f740c7fd
https://github.com/boostorg/filesystem/commit/ecbab750b2c49b3d5805dbd3f4c285fc2a7ca941
https://github.com/boostorg/filesystem/commit/0d413a5e4fbdb6c7c1ac9b54ae5298c9967a082b
In v4, path appends (operator/, operator/=, path::append) now recognize
root name and root directory in the appended paths and behave closer to
C++17. v3 path appends are unchanged.
https://github.com/boostorg/filesystem/commit/cc763cb48efea3dac897752d403d5bc229d78b59
absolute() reworked to account for the v4 path appends change. It also
fixes incorrect behavior for v3, when the input path was already
absolute - the old implementation used to add a root name from the base
path in this case.
https://github.com/boostorg/filesystem/commit/37bfbbb376caac04e222af65baa1ed850207e38c
Updated canonical/weakly_canonical to also accommodate changed v4 path
appends.
https://github.com/boostorg/filesystem/commit/0aee13c162ccfe88fa3415791bd312b0be480dbf
This completes v4 path appends change by adding a trailing separator
when the appended path is empty, like C++17.
https://github.com/boostorg/filesystem/commit/0307f58a8b2176f6709d3d7df33924464ee4961e
Update v4 path::lexically_normal to avoid appending the trailing dot
filename when the original path ends with a separator. This complements
the earlier change in v4 path::filename and path::iterator (which is
already in master) to omit the trailing dot and also matches C++17.
Also, for v3 and v4 the directory separators in the root name are now
converted to preferred separators. This matches C++17 and improves
behavior wrt. UNC paths on Windows.
https://github.com/boostorg/filesystem/commit/7fc42097cf7977fb4d5b908c4a3090500a492533
Fixes potential linking errors in case if the compiler is set to
preserve unused inline functions. This was reported in
https://github.com/boostorg/filesystem/issues/215.
For clarity, Boost.Filesystem v3 is currently the default and v4 is the
new (experimental) version that aims for better compatibility with
C++17. All changes have passed the CI tests.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk