Skip to content

Commit 4e24f11

Browse files
authored
Added release notes for Filesystem, Iterator. (#653)
1 parent 023edf8 commit 4e24f11

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

release-notes/boost_1_92_0.adoc

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,20 @@ See the Hub Container chapter in the Container documentation for more informatio
8888
** Added `unchecked_emplace_back` and `unchecked_push_back` to `boost::container::vector`, `boost::container::static_vector`, and `boost::container::small_vector`.
8989
** Implemented pass:[C++23] https://wg21.link/P1518[P1518] change: modified allocator-extended constructors for all containers so that the deduction guides for containers are not overconstrained.
9090

91+
* boost_phrase:library[Filesystem,/libs/filesystem/]:
92+
** Marked templated versions of `initial_path` as deprecated and removed from *v4*. Use the non-templated versions instead.
93+
** Use `readdir` instead of `readdir_r` on more POSIX platforms, specifically on Mac OS and other Apple operating systems,
94+
FreeBSD, OpenBSD, DragonFly BSD, NetBSD, QNX 6.0 and later, Solaris 10 and later and Illumos-based systems. Solaris users
95+
with gcc are recommended to define `__SunOS_5_x` macros according to their target Solaris version (e.g. `__SunOS_5_11`)
96+
when building Boost. (boost_gh:issue[filesystem,349])
97+
** Support for platforms with non-thread-safe `readdir` is deprecated and will be removed in a future release. Although not
98+
required until https://pubs.opengroup.org/onlinepubs/9799919799/functions/readdir.html[POSIX.1-2024], on modern systems
99+
`readdir` is thread-safe when used with separate `DIR` objects in different threads and on some systems `readdir_r` is
100+
marked as deprecated. POSIX.1-2024 has been updated accordingly and also marked `readdir_r` as obsolescent, with a planned
101+
removal in a future version of the specification.
102+
** On POSIX platforms, handle `EINTR` error code returned from `opendir`, `readdir` and equivalents. Although not documented,
103+
this error code, reportedly, may be returned on Apple operating systems and some BSD systems.
104+
91105
* boost_phrase:library[Geometry,/libs/geometry/]:
92106
** Improvements (`geometry`):
93107
*** Drop `varray` implementation in favor of Boost.Container `static_vector` (boost_gh:pr[geometry,1458]).
@@ -122,6 +136,12 @@ handling of rewritten relational operators (boost_gh:pr[icl,54]).
122136
*** AIX build fix: fix return type in `get_invalid_systemwide_thread_id` (boost_gh:pr[interprocess,280]).
123137
*** Locks in `message_queue_t` cover more code than intended (boost_gh:issue[interprocess,281]).
124138

139+
* boost_phrase:library[Iterator,/libs/iterator/]:
140+
** Added `is_*_iterator_v` variable templates in pass:[C++14] and later, equivalent to the corresponding
141+
iterator traits.
142+
** The `distance` and `advance` algorithms are now constrained by requiring `is_iterator` to return `true`
143+
for the iterator arguments. (boost_gh:pr[iterator,96])
144+
125145
* boost_phrase:library[Lockfree,/libs/lockfree/]:
126146
** This release is the last to support pass:[C++14]. Future releases will require pass:[C++17].
127147
** Added new `boost::lockfree::mpsc_weak_queue`, a multi-producer, single-consumer queue.

0 commit comments

Comments
 (0)