170f483655
Add test/config_info.cpp to increase macro state reporting in hopes of easing debugging on remote machines.
Beman
2017-01-08 15:23:42 -05:00
4ccb6c38f2
Start release history for 1.64
Beman
2016-12-30 14:52:52 -05:00
2550f407f4
MinGW defines __MINGW32__ rather than _MSC_VER, so also test for __MINGW32__ to see if setenv/unsetenv workaround needed.
Beman
2016-12-30 10:09:31 -05:00
7f1a6992e3
Fix errno propagation in space(p, ec).
Christoph Müllner
2016-12-12 00:42:54 +01:00
97cb638138
Fix typos in documentation.
Jakub Wilk
2016-12-07 12:49:16 +01:00
163631cc7d
ticket #12574 was just user confusion, but are the tests are worth keeping.
Beman
2016-11-28 08:29:08 -05:00
15c7706111
Fix create directory testing boo boo; Turns out " " is a valid file and directory name on Linux (and I'm guessing other POSIX-like systems). Add a POSIX-only test; "/foo" was reported to cause a crash on an earlier version. Don't test this on Windows since a user may well have sufficient permissions to create a directory in root.
Beman
2016-11-24 14:34:00 -05:00
4e4374336cFix#7307, remove_all(dirname,ec) throws on write protected directories. This is a tough one to test. There are three internal function calls where errors might arise, and it would take too much time to write tests for each of those cases. Someday we will have Titus Winter's mock installable file system, but for now are relying on code inspection rather than testing.
Beman
2016-11-23 12:02:09 -05:00
e34b838041
Document a couple of pull requests.
Beman
2016-11-23 10:51:47 -05:00
216720de55Fix#12495, create_directories() crashes when passed empty string as path, from Samantha Ritter. Also affected create_directory(). Charles Olivi submitted a pull request with some particularly helpful test cases.
Beman
2016-11-23 09:58:43 -05:00
5004d7b177Fix#12578 - Bug in directory_iterator, recursive_directory_iterator, equality testing of copied iterator also at end.
Beman
2016-11-23 09:21:32 -05:00
a3c1014b21
Tweak release history.
Beman
2016-11-23 05:33:53 -05:00
fcb98ee37e
Rename generic() to generic_path(), since generic is a keyword in C++/CX.
Felix Bruns
2016-04-27 14:05:45 +02:00
de527c6862
Refactor push_directory() logic so it is easier to reason about.
Beman
2016-04-18 10:41:07 -04:00
413240cc09
WinCE has no current directory
Giel van Schijndel
2015-10-29 18:24:38 +01:00
a682eaa476
Remove two constants that are no longer used. Quiets warnings.
Beman
2015-12-01 11:01:11 -05:00
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().
Beman
2015-12-01 10:17:45 -05:00
7b31aa0259
Fix typo in issue # and link (Daniel Krügler)
Beman
2015-11-21 08:06:49 -05:00
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.
Beman
2015-10-25 13:28:49 -04:00
b0091c2eeb
Revert to lexical functions 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.
Beman
2015-10-25 08:23:40 -04:00
8c179bf1df
Add 1.58.0 BOOST_SCOPED_ENUM fix history
Beman
2015-10-25 05:47:45 -04:00
7e3e5ef60cFix#11733, Missing unistd.h include in boost/libs/filesystem/src/unique_path.cpp by apply a patch from Idar Tollefsen.
Beman
2015-10-16 16:03:45 -04:00
06968ee032
Fix pull request 17, 'some_function() noexcept = default;' from Antony Polukhin, by never relying on "= default". Antony's pull request would have fixed the problem interaction with noexcept by eliminating the noexcept. I preferred to retain the noexcept rather than the "= default", as applying "= default" has been exceedingly troublesome for both VC++ and GCC due to interactions between the two C++11 features. GCC interactions varied not just for the version, but also for the platform.
Beman
2015-10-08 07:19:55 -04:00
74c5f5fe3e
Fix a forward declaration that was missed in a prior pull request. This clears a GCC warning.
Beman
2015-10-08 07:04:13 -04:00
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.
Beman
2015-10-07 10:11:18 -04:00
c3f9a2ec92
Correct some file names
Beman
2015-09-18 10:39:38 -04:00
f4644ef881
Define BOOST_FILESYSTEM_NO_CXX11_DEFAULTED_RVALUE_REFS for GCC <= 4; GCC 4.8.5 was failing on FreeBSD although not on other platforms. Since move semantics is an optimization, it doesn't break anything to be conservative.
Beman
2015-09-15 07:38:28 -04:00
53c502cb47
Remove unused deprecated include
Marcel Raad
2015-09-13 21:40:29 +02:00
9befbd2448
Fix bug in file_status and recursive_directory_iterator: C++ turns an explicit constructor with all arguments except first defaulted into non-explicit single argument constructor.
Beman
2015-09-12 09:27:39 -04:00
2d4035269b
Add GCC 4.4 to compilers that did not support defaulted rvalue refs.
Beman
2015-09-11 15:11:46 -04:00
4f0afc361f
Add #11062 to list of resolved tickets.
Beman
2015-09-10 15:48:07 -04:00
320423af98
Added size() function to class path. Resolves#6874, Path should have a size() member function.
Beman
2015-09-08 16:46:05 -04:00
461118d68c
Remove debug stmts that should have been removed by prior commit.
Beman
2015-09-08 16:21:01 -04:00
40526c67f2
Clean up some minor cygwin test problems.
Beman
2015-09-08 15:40:25 -04:00
9d5415d579
Add move constructor, move assignment, where called for in Filesystem TS.
Beman
2015-09-06 21:18:01 -04:00
353851e144
First pass of applying BOOST_NOEXCEPT. For recursive_directory_iterator only, began process of supporting both old and new names for functions whose name changed in the Filesystem TS. Planning started for adding move constructors and move assignments per the TS.
Beman
2015-09-06 08:30:58 -04:00
1c82e5d39e
Apply BOOST_NOEXCEPT, and a few other drive by corrections.
Beman
2015-09-05 17:55:14 -04:00
b5eba804c1
Add some links.
Beman
2015-09-05 16:02:00 -04:00
9910eccc13
Documentation for functions lexically_normal, lexically_relative, relative, and weakly_canonical.
Beman
2015-09-05 12:02:31 -04:00
5610f974be
Merge branch 'feature/relative2' into develop
Beman
2015-09-04 15:24:22 -04:00
a6900bf517
Update release history and add tests.
Beman
2015-09-04 13:41:20 -04:00
8cd5522161
Initial implementation and docs for path::reverse_iterator.
Beman
2015-09-04 11:25:22 -04:00
2af843f782
Add list of closed tickets.
Beman
2015-09-04 10:25:18 -04:00
e6d10cf716Fix#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.
Beman
2015-09-03 10:44:20 -04:00
0c68ce8962
Use same style sheet as the rest of the documentation. Tweak tab font size. Fix excessively long lines in tables, synopsis
Beman
2015-09-03 09:11:21 -04:00
011522bd42Fix#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.
Beman
2015-09-02 08:24:41 -04:00
a2d4f99cc8Resolve#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.
Beman
2015-09-01 11:34:24 -04:00
b2774a00a5Fix#11175, out-of-date documentation causing users to incorrectly expect that the library could be used with exceptions disabled.
Beman
2015-08-31 14:37:36 -04:00
f6aa067256
Minor code and comment tweaks.
Beman
2015-08-31 10:23:41 -04:00
2b019a8483Fix#11288 A patch to avoid redundant string allocations
Beman
2015-08-30 16:44:27 -04:00
810f40becf
Add a quote from the standard
Beman
2015-08-30 16:33:39 -04:00
efe50fad52
Work issue, but no fix yet
Beman
2015-08-30 16:32:44 -04:00
90517e4596Fix#11447, __OpenBSD__ macro name misspelled, by applying a patch submitted by Jasper Lievisse Adriaanse.
Beman
2015-08-29 10:13:36 -04:00
0ab46a3315Fix#9454, Boost Filesystem [library build] not compiling when BOOST_FILESYSTEM_NO_DEPRECATED is defined, by applying a patch submitted by Makesim
Beman
2015-08-29 09:57:09 -04:00
5e5b529dc2Fix#10591, boost::filesystem does not build on iOS 8, by applying a patch submitted by Daniel Seither.
Beman
2015-08-28 16:41:13 -04:00
d80e67f4b6
Start release history for 1.60.0
Beman
2015-08-28 10:11:35 -04:00
26b24ed329
Fix a race condition in unique_path.
Sebastian Redl
2015-08-27 11:42:56 +02:00
23759ba8ec
Add lexically_proximate and proximate functions.
Beman
2015-08-25 15:05:17 -04:00
27f8e5fd6a
Minor tweaks.
Beman
2015-08-25 11:04:21 -04:00
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.
Beman
2015-08-23 09:33:21 -04:00
ac3fe66c4d
Improve standardese of weakly_canonical() by replacing C++ code with prose specification.
Beman
2015-08-22 09:51:07 -04:00
c739cee694
Apply normal() to weakly_canonical results, but only when know to be needed or it is not known if it may be needed.
Beman
2015-08-19 08:43:36 -04:00
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.
Beman
2015-08-12 17:26:03 -04:00
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.
Beman
2015-08-10 07:10:59 -04:00
2101376680
Replace tail recursion with iteration.
Beman
2015-08-09 09:53:05 -04:00