Beman
|
aaf8136856
|
Add the P0317
|
2016-07-28 06:56:59 -04:00 |
|
Beman
|
1cd06e340b
|
Implement much of R0317R1, Directory Entry Caching for Filesystem (R1), including full refresh() for Windows. Still missing most of the status query functions.
|
2016-07-27 10:12:56 -04:00 |
|
Beman
|
513c90dcae
|
All operations_unit_test.cpp and operations_test.cpp tests passing.
|
2016-04-21 10:37:36 -04:00 |
|
Beman
|
1151b7f1ff
|
Refactor Windows attribute processing into new functions status_helper() and symlink_status_helper() to eliminate duplication of code and, more importantly, to ensure that attributes processed identically regardless of context. Add test cases to operations_unit_test.cpp.
All tests passing, except cases where cache is not reporting file_not_found for dangling symlinks.
|
2016-04-20 06:47:01 -04:00 |
|
Beman
|
d0ac39369b
|
Clarify error message
|
2016-04-18 06:54:03 -04:00 |
|
Beman
|
b8208871ff
|
Change open_directory, read_dirctory, to return filename, allowing more of the existing code to be retained. Fix missing & in two places. operations_unit_test.cpp through directory_iterator_test now passing.
|
2016-04-17 20:40:38 -04:00 |
|
Beman
|
5226da223d
|
Add error_code versions of observer functions. Add friend struct detail::deacc to provide directory iteration with access to directory_entry private parts. Restore dispatch functions mistakenly removed from operations.cpp by prior commit. operations_unit_test.cpp now running partially.
|
2016-04-17 11:40:45 -04:00 |
|
Beman
|
2f6391b931
|
Add class path constexpr constants separator and dot of the type appropriate for the platform, and add class path member query functions filename_is_dot() and filename_is_dot_dot(). These add convenience and the implementations may be more efficient that user coded equivalent functions. Also add detail functions is_directory_separator() and is_element_separator(), and replace all uses of local is_separator() in path.cpp with detail::is_directory_separator().
|
2015-12-01 10:17:45 -05:00 |
|
Beman
|
3c344a5f0b
|
Revert to lexical functions back to being members of class path. This is not the time to redesign the library's lexical vs operational conventions. It would break existing users mental model of lexical vs operational.
See doc/relative_proposal.html#Add-lexical-functions for additional rationale.
|
2015-10-25 13:28:49 -04:00 |
|
Beman
|
fb365908ad
|
Clear GCC warnings.
|
2015-10-08 05:03:51 -04:00 |
|
Beman
|
c026d612f2
|
String file feature cleanup: Add string_file.hpp to filesystem.hpp. Change string_file.hpp to use boost/filesystem/fstream.hpp for I/O. Add string_file_tests function to operations_unit_test.cpp.
|
2015-10-07 10:11:18 -04:00 |
|
Beman
|
320423af98
|
Added size() function to class path. Resolves #6874, Path should have a size() member function.
|
2015-09-08 16:46:05 -04:00 |
|
Beman
|
461118d68c
|
Remove debug stmts that should have been removed by prior commit.
|
2015-09-08 16:21:01 -04:00 |
|
Beman
|
40526c67f2
|
Clean up some minor cygwin test problems.
|
2015-09-08 15:40:25 -04:00 |
|
Beman
|
9d5415d579
|
Add move constructor, move assignment, where called for in Filesystem TS.
|
2015-09-06 21:18:01 -04:00 |
|
Beman
|
8ad0258405
|
Tweak configuration.
|
2015-09-04 15:28:11 -04:00 |
|
Beman
|
5610f974be
|
Merge branch 'feature/relative2' into develop
|
2015-09-04 15:24:22 -04:00 |
|
Beman
|
a6900bf517
|
Update release history and add tests.
|
2015-09-04 13:41:20 -04:00 |
|
Beman
|
8cd5522161
|
Initial implementation and docs for path::reverse_iterator.
|
2015-09-04 11:25:22 -04:00 |
|
Beman
|
e6d10cf716
|
Fix #10766, parent_path() with redundant separator returns wrong value, by adding examples and notes to the reference documentation to show why the returned value is in fact correct, and to provide rationale for that behavior. See [path.itr], and [path.decompose] parent_path() and filename() sections of the reference docs.
|
2015-09-03 10:44:20 -04:00 |
|
Beman
|
011522bd42
|
Fix #7258, create_directories returns false if the path ends with a slash. Also fix related issues if path contains dot or dot-dot elements, and add test cases to the test suite.
|
2015-09-02 08:24:41 -04:00 |
|
Beman
|
a2d4f99cc8
|
Resolve #11166 by mitigating (i.e. reducing the likelihood of) a possible external file system race in remove(), using a slight refinement of the patch supplied by Jeff Epler. Made no attempt to fix or mitigate the thread data race in the test program provided.
|
2015-09-01 11:34:24 -04:00 |
|
Beman
|
f6aa067256
|
Minor code and comment tweaks.
|
2015-08-31 10:23:41 -04:00 |
|
Beman
|
2b019a8483
|
Fix #11288 A patch to avoid redundant string allocations
|
2015-08-30 16:44:27 -04:00 |
|
Beman
|
efe50fad52
|
Work issue, but no fix yet
|
2015-08-30 16:32:44 -04:00 |
|
Beman
|
23759ba8ec
|
Add lexically_proximate and proximate functions.
|
2015-08-25 15:05:17 -04:00 |
|
Beman
|
27f8e5fd6a
|
Minor tweaks.
|
2015-08-25 11:04:21 -04:00 |
|
Beman
|
732609a2da
|
Change member normal() and relative() to non-member lexically_normal() and lexically_relative(). See doc/relative_proposal.html#Add-lexical-functions-as-non-members for rationale.
|
2015-08-23 09:33:21 -04:00 |
|
Beman
|
c739cee694
|
Apply normal() to weakly_canonical results, but only when know to be needed or it is not known if it may be needed.
|
2015-08-19 08:43:36 -04:00 |
|
Beman
|
b54092e66f
|
Simplify expressions and remove accumulated cruft.
|
2015-08-13 09:01:59 -04:00 |
|
Beman
|
cb11081a7d
|
Finish initial proposed wording section of relative_proposal.html. Drive-by tweaks to other stuff. Add example/directory_symlink_parent_resolution.cpp, include/boost/filesystem/string_file.hpp, and related infrastructure.
|
2015-08-12 17:26:03 -04:00 |
|
Beman
|
fe71dc8729
|
Fix test where Windows and POSIX results differ
|
2015-08-10 08:34:22 -04:00 |
|
Beman
|
f5da08da74
|
Initial commit.
|
2015-08-10 08:15:24 -04:00 |
|
Beman
|
a7ac4c088f
|
Add relative_test to Jamfile, fix Cygwin/GCC C++03 enum constant usage error.
|
2015-08-10 08:09:48 -04:00 |
|
Beman
|
7d6429554a
|
Bring operational functions weakly_canonical() and relative() up to production quality: move implementations to operations.cpp, add error handling, replace tail recursion with iteration, rename weak_canonical to weakly_canonical. The weak_canonical name grated on me every type I used it.
|
2015-08-10 07:10:59 -04:00 |
|
Beman
|
34dd2c7718
|
Add a new path member function: "path normal() const;" and change the old deprecated normalize() non-const function to be implemented in terms of the new function. The implementation remains the same, except for returning by value rather than modifying in place. Motivation: Jamie Alsop has identified removal of redundant .. and . elements (i.e. normalization) as a need closely related to the relative path functionality requested by numerous Boost issue requests, the C++ LWG, and NB comments to the Filesystem TS. Given that both lexical and operational relative functionality is needed, there is less risk in providing a well-documented path::normal() lexical function.
|
2015-08-08 16:29:44 -04:00 |
|
Beman
|
6e92c9a8b2
|
Add experimental path::generic() function returning generic formatted (i.e. separators are forward slashes). Motivation: may be simpler than having a family of generic_*string functions.
|
2015-08-08 12:11:35 -04:00 |
|
Beman
|
5b8b9db1c9
|
Cleanup missed edits.
|
2015-08-08 06:18:08 -04:00 |
|
Beman
|
8a8c8abecc
|
Rename semi_canonical() to weak_canonical. The STL uses "weak" to denote reduced requirements.
|
2015-08-08 05:56:55 -04:00 |
|
Beman
|
6da5f657fb
|
Remove lexically_relative() free function. Add path::rel
|
2015-08-07 16:41:06 -04:00 |
|
Beman
|
dc794ea95b
|
Merge branch 'feature/relative' into feature/relative2
|
2015-08-06 08:08:46 -04:00 |
|
Beman
|
f35a14e004
|
Add copy_file-compilation-error-2015-05-04.cpp
|
2015-05-24 08:20:45 -04:00 |
|
Beman
|
1c104ba10f
|
Add issue tests for 4329, 5300, 10205
|
2015-03-27 20:01:52 -04:00 |
|
Beman
|
706cf988a9
|
Revise get_temp_directory() test cases. Drive-by warning removal and partial fix for TortoiseGit-related test harness crashes.
|
2015-02-03 12:11:44 -05:00 |
|
Beman
|
a89b7af83a
|
Comment out test case until fix is applied. Drive by fix of two curly brace errors that happened to cancel each other out.
|
2015-01-31 08:56:07 -05:00 |
|
Beman
|
96d5cdda3b
|
Remove test_folder. Content is now in branch test-files/utf-8, so that master and develop conform to Boost file naming policy.
|
2015-01-11 17:55:55 -05:00 |
|
Beman
|
bb5a0ff09d
|
Clear warnings, including new warnings from VC++ 2015 preview.
|
2015-01-05 10:34:24 -05:00 |
|
Beman
|
f17852e98d
|
Add test case described in ticket #4611. Behavior checked against the TS, and is working as specified. Closed the ticket as "wontfix", since there is no implementation defect.
|
2014-12-30 18:09:16 -05:00 |
|
Beman
|
9fd93a2008
|
Fix ticket #7018, operations_test.cpp does not correctly use setenv, including the suggested setenv* void fix. Added comment explaining choice of void fix rather than _putenv fix.
|
2014-12-30 11:59:53 -05:00 |
|
Beman
|
0dfb7171fb
|
Finalize issue reporting before requesting comments. Also fix some inspect issues.
|
2014-12-29 09:18:12 -05:00 |
|