On Thu, Feb 18, 2010 at 11:30 AM, Zach Laine
On Thu, Feb 18, 2010 at 8:43 AM, Beman Dawes
wrote: The first beta release of Boost.Filesystem Version 3 is now available.
The documentation can be viewed at http://mysite.verizon.net/beman/v3/index.htm
The descriptions for portable_name() and portable_directory_name() appear to be at odds.
portable_name() : ... && (name is "." or "..", and the first character not a period or hyphen)
portable_directory_name(): ... && (name is "." or ".." or contains no periods)
Should portable_name() be "... && (name is "." or "..", or contains no periods) && (first character not a hyphen)"? Maybe I'm missing something?
I haven't looked at these in years. They need to be brought up to date. Added to do list.
Also, in the tut3.cpp tutorial code, there's no mention of the dangers of using "*it" inside the directory_iterator loop. IIRC, in previous Filesystem revisions, this would throw if you did not have adequate permissions to see the file to which "it" refers. Has this changed?
Nice catch! No, nothing is changed. The code is not robust.
If not, I think that you should either wrap the body of the loop in a try-catch block, or use one of the non-throwing function overloads, and indicate to the user what the exception safety concerns are.
Yes, this would be a great place to introduce the non-throwing function overloads. Added to do list. I
think the tutorial code should exhibit enough robustness that the user can just cut-and-paste to get the basic code needed to use the library.
Definitely. If anyone spots other robustness issues, be sure to let me know. Thanks, --Beman