<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Filesystem on Gulrak.net</title><link>https://gulrak.net/tags/filesystem/</link><description>Recent content in Filesystem on Gulrak.net</description><generator>Hugo</generator><language>en</language><copyright>(C) 1999-2019 by Steffen Schümann, Hamburg</copyright><lastBuildDate>Sun, 19 Jul 2026 12:56:40 +0200</lastBuildDate><atom:link href="https://gulrak.net/tags/filesystem/index.xml" rel="self" type="application/rss+xml"/><item><title>ghc::filesystem Release v1.5.16</title><link>https://gulrak.net/posts/2026-ghc-filesystem-release-v1-5-16/</link><pubDate>Sun, 19 Jul 2026 12:56:40 +0200</pubDate><guid>https://gulrak.net/posts/2026-ghc-filesystem-release-v1-5-16/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.16" target="_blank" rel="noopener"&gt;v1.5.16&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;After a much too long break, this release collects all the fixes that
accumulated in the meantime: better UNC path handling on Windows, directory
iteration and &lt;code&gt;proximate()&lt;/code&gt; in builds without exception support, &lt;code&gt;EINTR&lt;/code&gt;
retry handling on POSIX, subsecond modification times, and a modernized CI
configuration. Sorry for the very long delay!&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.14</title><link>https://gulrak.net/posts/2023-ghc-filesystem-release-v1-5-14/</link><pubDate>Sun, 05 Mar 2023 13:13:28 +0100</pubDate><guid>https://gulrak.net/posts/2023-ghc-filesystem-release-v1-5-14/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.14" target="_blank" rel="noopener"&gt;v1.5.14&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release brings build support for Haiku and GNU/Hurd, fixes a directory
iterator issue on Windows where all files subsequent to a symlink were
treated as symlinks, a POSIX issue with colons in filenames, a Y2038 bug on
Windows and various other issues.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.12</title><link>https://gulrak.net/posts/2022-ghc-filesystem-release-v1-5-12/</link><pubDate>Sun, 03 Apr 2022 12:32:45 +0200</pubDate><guid>https://gulrak.net/posts/2022-ghc-filesystem-release-v1-5-12/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.12" target="_blank" rel="noopener"&gt;v1.5.12&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release adds Solaris as a new supported platform, defines a &lt;code&gt;PATH_MAX&lt;/code&gt;
fallback for POSIX platforms without one, updates Catch2 to v2.13.7 and adds
macOS 11 to the automatically tested platforms.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.10</title><link>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-10/</link><pubDate>Sat, 23 Oct 2021 17:31:02 +0200</pubDate><guid>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-10/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.10" target="_blank" rel="noopener"&gt;v1.5.10&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release replaces some unnecessary expensive shared pointer usage in the
Windows implementation, changes &lt;code&gt;fs::remove_all&lt;/code&gt; to just delete symbolic
links instead of following them, and moves the CI from &lt;em&gt;travis-ci.org&lt;/em&gt; to
GitHub Workflows.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.8</title><link>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-8/</link><pubDate>Mon, 14 Jun 2021 22:19:16 +0200</pubDate><guid>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-8/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.8" target="_blank" rel="noopener"&gt;v1.5.8&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This is a small bugfix release, fixing &lt;code&gt;fs::create_directories&lt;/code&gt; on Windows
to no longer break on long filenames.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.6</title><link>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-6/</link><pubDate>Mon, 24 May 2021 10:26:44 +0200</pubDate><guid>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-6/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.6" target="_blank" rel="noopener"&gt;v1.5.6&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release fixes &lt;code&gt;ghc::filesystem&lt;/code&gt; erroneously treating mounted
folders/volumes as symlinks, adds missing support for &lt;code&gt;char16_t&lt;/code&gt;, &lt;code&gt;char32_t&lt;/code&gt;
and on C++20 &lt;code&gt;char8_t&lt;/code&gt; literals, and brings experimental first QNX compile
support.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.4</title><link>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-4/</link><pubDate>Sun, 21 Mar 2021 19:14:29 +0100</pubDate><guid>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-4/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.4" target="_blank" rel="noopener"&gt;v1.5.4&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release further optimizes directory iteration, with performance for
&lt;code&gt;recursive_directory_iterator&lt;/code&gt; over large trees now somewhere between
libc++ and libstdc++, and brings preliminary support for Cygwin.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.2</title><link>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-2/</link><pubDate>Sat, 27 Feb 2021 20:57:35 +0100</pubDate><guid>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-2/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.2" target="_blank" rel="noopener"&gt;v1.5.2&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release brings performance optimizations on the POSIX backend, where
tests with &lt;code&gt;recursive_directory_iterator&lt;/code&gt; over a larger directory tree got
about 20%-25% faster, improved &lt;code&gt;string_view&lt;/code&gt; support and various fixes.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.5.0</title><link>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-0/</link><pubDate>Sun, 07 Feb 2021 14:10:36 +0100</pubDate><guid>https://gulrak.net/posts/2021-ghc-filesystem-release-v1-5-0/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.5.0" target="_blank" rel="noopener"&gt;v1.5.0&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release is the result of a major refactoring: on Windows &lt;code&gt;fs::path&lt;/code&gt; now
stores the &lt;em&gt;native&lt;/em&gt; path-representation with &lt;code&gt;wchar_t&lt;/code&gt; as &lt;code&gt;value_type&lt;/code&gt;,
removing a mutable cache that was inherently not thread-safe and avoiding
lots of conversions on calls to the Win-API.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.4.0</title><link>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-4-0/</link><pubDate>Thu, 31 Dec 2020 10:42:30 +0100</pubDate><guid>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-4-0/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.4.0" target="_blank" rel="noopener"&gt;v1.4.0&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14, C++17 and C++20.&lt;/p&gt;
&lt;p&gt;This release brings C++20 enhancements, when compiled with C++20:
&lt;code&gt;char8_t&lt;/code&gt;/&lt;code&gt;std::u8string&lt;/code&gt; support and the &lt;em&gt;spaceship operator&lt;/em&gt; &lt;code&gt;&amp;lt;=&amp;gt;&lt;/code&gt; for
&lt;code&gt;fs::path&lt;/code&gt;. Additionally &lt;code&gt;LWG_2936_BEHAVIOUR&lt;/code&gt; is now on by default.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.3.10</title><link>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-10/</link><pubDate>Sun, 27 Dec 2020 13:36:47 +0100</pubDate><guid>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-10/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.3.10" target="_blank" rel="noopener"&gt;v1.3.10&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;This is a small bugfix release, fixing issues with &lt;code&gt;Source&lt;/code&gt; parameters that
are string views and making the bit operations for filesystem bitmasks
&lt;code&gt;constexpr&lt;/code&gt; as they should be.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.3.8</title><link>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-8/</link><pubDate>Sun, 15 Nov 2020 22:55:33 +0100</pubDate><guid>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-8/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.3.8" target="_blank" rel="noopener"&gt;v1.3.8&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;This release fixes the dynamic &lt;code&gt;std::filesystem&lt;/code&gt; switching helpers to respect
the macOS deployment target, an issue with &lt;code&gt;skip_permission_denied&lt;/code&gt; on SIP
protected folders on macOS, and the handling of NTFS reparse points to
mapped volumes.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.3.6</title><link>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-6/</link><pubDate>Sat, 10 Oct 2020 09:40:10 +0200</pubDate><guid>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-6/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.3.6" target="_blank" rel="noopener"&gt;v1.3.6&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;This release fixes symlink evaluation on Windows, enhances the performance
of path handling and directory iteration, and root names are now case
insensitive on Windows, introducing the new &lt;code&gt;LWG_2936_BEHAVIOUR&lt;/code&gt; switch.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.3.4</title><link>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-4/</link><pubDate>Sun, 30 Aug 2020 10:00:54 +0200</pubDate><guid>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-4/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.3.4" target="_blank" rel="noopener"&gt;v1.3.4&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;This release brings support for compilation with disabled exceptions, better
Android and emscripten support, fixes for clang++ with C++17 on Windows and
some performance related refactoring.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.3.2</title><link>https://gulrak.net/posts/2020-std-filesystem-release-v1-3-2/</link><pubDate>Mon, 30 Mar 2020 22:54:30 +0200</pubDate><guid>https://gulrak.net/posts/2020-std-filesystem-release-v1-3-2/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.3.2" target="_blank" rel="noopener"&gt;v1.3.2&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;This Release added CI support for FreeBSD and ARM Linux, thanks to generous
support with pull requests from &lt;em&gt;nightlark&lt;/em&gt;, and some bug fixes. The two new
platforms are possible with the service of &lt;em&gt;Cirrus CI&lt;/em&gt; and &lt;em&gt;Drone&lt;/em&gt;.&lt;/p&gt;</description></item><item><title>std::filesystem Implementation Corner Cases, part 2</title><link>https://gulrak.net/posts/2020-std-filesystem-corner-cases-2/</link><pubDate>Sat, 08 Feb 2020 23:30:19 +0100</pubDate><guid>https://gulrak.net/posts/2020-std-filesystem-corner-cases-2/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;A &lt;a href="https://stackoverflow.com/questions/60130796/return-value-of-stdfilesystemcreate-directories-on-paths-with-trailing-sla" target="_blank" rel="noopener"&gt;question on StackOverflow&lt;/a&gt;

was pointing at another corner case where the current implementations of
std::filesystem differ, it is about the handling of a trailing directory
seperator when calling &lt;code&gt;std::filesystem::create_directories()&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.3.0</title><link>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-0/</link><pubDate>Sat, 08 Feb 2020 19:30:35 +0100</pubDate><guid>https://gulrak.net/posts/2020-ghc-filesystem-release-v1-3-0/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.3.0" target="_blank" rel="noopener"&gt;v1.3.0&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;The main reasong for this release is the switch from BSD-3-Clause license to the MIT license.&lt;/p&gt;
&lt;p&gt;I originally decided on BSD because of the detailed clauses it features, to make things clear,
but it was not an easy decision at that time, but I had to pick one.&lt;/p&gt;
&lt;p&gt;About a week ago I was asked if it would be possible to use MIT license and at first I was
against a change, but I thought about it and decided a even ore liberal license would
give more projects the chance to use it, so my only concern left was, if I would be able
to reach all contributors and if they would agree to the license change.&lt;/p&gt;
&lt;p&gt;I was amazed to see, all anserwed in just a few days and all agreed so they made the
decision an easy one for me.&lt;/p&gt;</description></item><item><title>std::filesystem Implementation Corner Cases</title><link>https://gulrak.net/posts/2019-std-filesystem-corner-cases/</link><pubDate>Sun, 22 Dec 2019 13:24:31 +0100</pubDate><guid>https://gulrak.net/posts/2019-std-filesystem-corner-cases/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;On this years &lt;a href="https://meetingcpp.com/2019/" target="_blank" rel="noopener"&gt;Meeting C++&lt;/a&gt;
 I had the chance to talk
with a lot of people and it was very inspirational. With some I talked about
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;ghc::filesystem&lt;/a&gt;
, my implementation of a
C++17 &lt;code&gt;std::filesystem&lt;/code&gt; compatible library. Part of this discussions was about
some corner cases I found during my tests, and I was trying to remember the
details when I was having the chance to talk to &lt;a href="https://twitter.com/NicoJosuttis" target="_blank" rel="noopener"&gt;@NicoJosuttis&lt;/a&gt;
.
He among others was interested in these issues, as they might be rooted in unclear passages of the standard.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.2.10</title><link>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-10/</link><pubDate>Sun, 24 Nov 2019 16:42:51 +0100</pubDate><guid>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-10/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released the bugfix release &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.2.10" target="_blank" rel="noopener"&gt;v1.2.10&lt;/a&gt;
 of &lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17 &lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for
C++11, C++14 and C++17. There were some issues, all on the Windows part, so it was time to fix them with
a release.&lt;/p&gt;
&lt;p&gt;While at it, I updated the CI configuration files to add newer compilers and the set used for CI and tests
is now:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;macOS 10.12: Xcode 9.2 (clang-900.0.39.2), GCC 9.2, Clang 9.0, macOS 10.13: Xcode 10.1, macOS 10.14: Xcode 11.2&lt;/li&gt;
&lt;li&gt;Windows: Visual Studio 2017, Visual Studio 2015, Visual Studio 2019, MinGW GCC 6.3 (Win32), GCC 7.2 (Win64)&lt;/li&gt;
&lt;li&gt;Linux (Ubuntu): GCC (5.5, 6.5, 7.4, 8.3, 9.2), Clang (5.0, 6.0, 7.1, 8.0, 9.0)&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ghc::filesystem Release v1.2.8</title><link>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-8/</link><pubDate>Fri, 15 Nov 2019 09:10:03 +0200</pubDate><guid>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-8/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;During these days I&amp;rsquo;m on the &lt;a href="https://meetingcpp.com/2019/" target="_blank" rel="noopener"&gt;Meeting C++ 2019&lt;/a&gt;
 and so far it is a great event. This morning before leaving my hotel, I used the inspirational spirit and released v1.2.8 of &lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
. This is mostly a bugfix release, but there is a new CMake option to select wether or
not an install target should be added to the build files.&lt;/p&gt;
&lt;p&gt;Additionally, five pull requests found their way into this release, and I want to thank the supporters for their work.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.2.6</title><link>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-6/</link><pubDate>Sat, 21 Sep 2019 17:45:08 +0200</pubDate><guid>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-6/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released v1.2.6 of &lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
. The main reason was an
issue with &lt;code&gt;fs::path::preferred_seperator&lt;/code&gt;. The previous implementation didn&amp;rsquo;t compile on pre-C++17 compilers when the seperator was accessed. The Bugfix for &lt;a href="https://github.com/gulrak/filesystem/issue/27" target="_blank" rel="noopener"&gt;#27&lt;/a&gt;
, was a bit more work than expected, but now it works on all tested compilers.&lt;/p&gt;
&lt;p&gt;Additionally, two pull requests found their way into this release, and I want to thank the supporters for their work.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.2.4</title><link>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-4/</link><pubDate>Sun, 11 Aug 2019 10:21:07 +0200</pubDate><guid>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-4/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released v1.2.4 of &lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
.
It mainly contains a fix for issue &lt;a href="https://github.com/gulrak/filesystem/pull/22" target="_blank" rel="noopener"&gt;#22&lt;/a&gt;
,
where &lt;code&gt;ghc::filesystem::copy()&lt;/code&gt; wouldn&amp;rsquo;t allways forward given &lt;code&gt;copy_options&lt;/code&gt; to
a &lt;code&gt;ghc::filesystem::copy_file()&lt;/code&gt; call.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.2.2</title><link>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-2/</link><pubDate>Sun, 23 Jun 2019 16:50:38 +0200</pubDate><guid>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-2/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released a bugfix version of &lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
.
It only contains a fix for issue &lt;a href="https://github.com/gulrak/filesystem/pull/21" target="_blank" rel="noopener"&gt;#21&lt;/a&gt;
,
where compiling on Alpine Linux with &lt;code&gt;musl&lt;/code&gt; instead of &lt;code&gt;glibc&lt;/code&gt; chooses the wrong &lt;code&gt;strerror_r&lt;/code&gt;
signature.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;musl&lt;/code&gt; headers sadly don&amp;rsquo;t conform to the preprocessor expression of the linux man
file &lt;code&gt;(_POSIX_C_SOURCE &amp;gt;= 200112L || _XOPEN_SOURCE &amp;gt;= 600) &amp;amp;&amp;amp; ! _GNU_SOURCE&lt;/code&gt;
for &lt;code&gt;strerror_r&lt;/code&gt;, so there was no well defined preprocessor way of solving this.&lt;/p&gt;</description></item><item><title>ghc::filesystem Release v1.2.0</title><link>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-0/</link><pubDate>Sun, 02 Jun 2019 13:13:26 +0200</pubDate><guid>https://gulrak.net/posts/2019-ghc-filesystem-release-v1-2-0/</guid><description>&lt;img style="margin: 4px 0 4px 10px; width: 64px; height: 64px; float: right;" src="https://gulrak.net/img/cpp_logo.png"&gt;
&lt;p&gt;Today I released &lt;a href="https://github.com/gulrak/filesystem/releases/tag/v1.2.0" target="_blank" rel="noopener"&gt;v1.2.0&lt;/a&gt;
 of
&lt;a href="https://github.com/gulrak/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;ghc::filesystem&lt;/code&gt;&lt;/a&gt;
, my implementation of C++17
&lt;a href="https://en.cppreference.com/w/cpp/filesystem" target="_blank" rel="noopener"&gt;&lt;code&gt;std::filesystem&lt;/code&gt;&lt;/a&gt;
 for C++11, C++14 and C++17.&lt;/p&gt;
&lt;p&gt;This release added MinGW 32/64 and Visual Studio 2015 builds to the CI
configuration and brought new optional features, like a standard conforming
&lt;code&gt;wchar_t&lt;/code&gt;/&lt;code&gt;std::wstring&lt;/code&gt; interface on Windows and optional unicode errors,
along with a set of bug fixes.&lt;/p&gt;</description></item></channel></rss>