<feed xmlns='http://www.w3.org/2005/Atom'>
<title>viewer.git/indra/llcommon/fsyspath.h, branch 26.1.1</title>
<subtitle>Megapahit's fork of the Second Life viewer.
</subtitle>
<id>https://megapahit.org/viewer.git/atom?h=26.1.1</id>
<link rel='self' href='https://megapahit.org/viewer.git/atom?h=26.1.1'/>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/'/>
<updated>2025-03-12T02:44:49Z</updated>
<entry>
<title>Merge branch 'release/2025.03' into rye/forevermac</title>
<updated>2025-03-12T02:44:49Z</updated>
<author>
<name>Jonathan "Geenz" Goodman</name>
<email>geenz@geenzo.com</email>
</author>
<published>2025-03-12T02:44:49Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=e0d14e02e152b4e75ff8bdd974677f9669163d68'/>
<id>urn:sha1:e0d14e02e152b4e75ff8bdd974677f9669163d68</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix xcode16 build errors</title>
<updated>2025-02-13T15:30:08Z</updated>
<author>
<name>Andrey Lihatskiy</name>
<email>alihatskiy@productengine.com</email>
</author>
<published>2025-02-13T14:13:50Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=ddbe1ff98159e5eae3153067e3ca6f90c10bceb4'/>
<id>urn:sha1:ddbe1ff98159e5eae3153067e3ca6f90c10bceb4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix build with C++20 including nat's changes to fsyspath</title>
<updated>2025-02-11T10:04:04Z</updated>
<author>
<name>Rye</name>
<email>rye@lindenlab.com</email>
</author>
<published>2025-01-21T06:19:18Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=635c34a17bad6435f6981163660947dbf13ee763'/>
<id>urn:sha1:635c34a17bad6435f6981163660947dbf13ee763</id>
<content type='text'>
</content>
</entry>
<entry>
<title>trailing spaces from other branches</title>
<updated>2024-09-19T16:40:56Z</updated>
<author>
<name>Nat Goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2024-09-19T16:40:56Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=be40936881a747893d03c5c003914efb3867ccd1'/>
<id>urn:sha1:be40936881a747893d03c5c003914efb3867ccd1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Ditch trailing space.</title>
<updated>2024-09-18T20:56:10Z</updated>
<author>
<name>Nat Goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2024-09-18T20:56:10Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=725e1b7d6f8ca31705372f9b391a34969f44577b'/>
<id>urn:sha1:725e1b7d6f8ca31705372f9b391a34969f44577b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Give our fsyspath an operator std::string() conversion method.</title>
<updated>2024-09-18T20:52:45Z</updated>
<author>
<name>Nat Goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2024-06-28T11:54:46Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=837a6e04d85e4f3f301e62aea3329ea61e926566'/>
<id>urn:sha1:837a6e04d85e4f3f301e62aea3329ea61e926566</id>
<content type='text'>
This is redundant (but harmless) on a Posix system, but it fills a missing
puzzle piece on Windows. The point of fsyspath is to be able to interchange
freely between fsyspath and std::string. Existing fsyspath could be
constructed and assigned from std::string, and we could explicitly call its
string() method to get a std::string, but an implicit fsyspath-to-string
conversion that worked on Posix would trip us up on Windows. Fix that.

(cherry picked from commit fbeff6d8052d4b614a0a2c8ebaf35b45379ab578)
</content>
</entry>
<entry>
<title>Introduce fsyspath subclass of std::filesystem::path.</title>
<updated>2024-09-18T20:52:08Z</updated>
<author>
<name>Nat Goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2024-04-03T16:31:43Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=e829828dcd9b989a9efb32f7c69cd8652e9857ec'/>
<id>urn:sha1:e829828dcd9b989a9efb32f7c69cd8652e9857ec</id>
<content type='text'>
Our std::strings are UTF-8 encoded, so conversion from std::string to
std::filesystem::path must use UTF-8 decoding. The native Windows
std::filesystem::path constructor and assignment operator accepting
std::string use "native narrow encoding," which mangles path strings
containing UTF-8 encoded non-ASCII characters.

fsyspath's std::string constructor and assignment operator explicitly engage
std::filesystem::u8path() to handle encoding. u8path() is deprecated in C++20,
but once we adapt fsyspath's conversion to C++20 conventions, consuming code
need not be modified.

(cherry picked from commit e399b02e3306a249cb161f07cac578d3f2617bab)
</content>
</entry>
</feed>
