Description
TL;TR: We are planning to deprecate functions accepting boost::filesystem::path
and replace with C++17 std::filesystem
What
Currently, Boost.Filesystem support is optional, guarded with macro BOOST_GIL_IO_ADD_FS_PATH_SUPPORT checked in number of the I/O extension headers.
It is reasonable to replace the boost::filesystem
with std::filesystem
whenever GIL code is compiled using C++17,
unless user explicitly desires to use Boost.Filesystem via an appropriate #define
.
Why
-
We, @stefanseefeld & @mloskot, don't see any added value in function overloads such as
make_dynamic_image_reader
that usefilesystem::path
over just passingstd::string
orchar const*
and leaving the conversion from thepath
tostring
to the converting constructors or user. -
Avoid Boost.Filesystem as direct and mandatory dependency.
Briefly, we considered automatically replacing boost::filesystem
with std::filesystem
, depending on compiler and target C++ version, but we quickly landed at the point 1. Plus, the <filesystem>
detection heuristics would not be as straightforward as one may expect.
When
As soon as possible - along with complete C++11 switch