Commit Graph

321 Commits

Author SHA1 Message Date
Beman Dawes
719fc1f18d Merge pull request #16 from MarcelRaad/patch-1
Remove unused deprecated include
2015-09-16 15:28:00 -04:00
Beman
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. 2015-09-15 07:38:28 -04:00
Marcel Raad
53c502cb47 Remove unused deprecated include
The comment in boost/iterator.hpp mentions that the file is obsolete and will be deprecated, and it is not used anyway.
2015-09-13 21:40:29 +02:00
Beman
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. 2015-09-12 09:27:39 -04:00
Beman
2d4035269b Add GCC 4.4 to compilers that did not support defaulted rvalue refs. 2015-09-11 15:11:46 -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
9d5415d579 Add move constructor, move assignment, where called for in Filesystem TS. 2015-09-06 21:18:01 -04:00
Beman
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. 2015-09-06 08:30:58 -04:00
Beman
1c82e5d39e Apply BOOST_NOEXCEPT, and a few other drive by corrections. 2015-09-05 17:55:14 -04:00
Beman
5610f974be Merge branch 'feature/relative2' into develop 2015-09-04 15:24:22 -04:00
Beman
8cd5522161 Initial implementation and docs for path::reverse_iterator. 2015-09-04 11:25:22 -04:00
Beman
efe50fad52 Work issue, but no fix yet 2015-08-30 16:32:44 -04:00
Beman
0ab46a3315 Fix #9454, Boost Filesystem [library build] not compiling when BOOST_FILESYSTEM_NO_DEPRECATED is defined, by applying a patch submitted by Makesim 2015-08-29 09:57:09 -04:00
Beman
23759ba8ec Add lexically_proximate and proximate functions. 2015-08-25 15:05:17 -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
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
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
2101376680 Replace tail recursion with iteration. 2015-08-09 09:53:05 -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
9706dbb9b1 Revert "Change the name of path::relative to path::relative_to to distinguish it a bit from path::relative_path."
This reverts commit d5fb8323f8.

Leave possible renaming for bikeshed discussions. KISS.
2015-08-08 05:44:30 -04:00
Beman
d5fb8323f8 Change the name of path::relative to path::relative_to to distinguish it a bit from path::relative_path. 2015-08-07 16:50:47 -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
eb9cac384e Edit comments to clarify dependencies. 2015-01-10 11:35:47 -05:00
Beman
c0b5754ab8 Fix ticket #10388, an occasional failure of temp_directory_path to deal correctly with the trailing separator. A path member function remove_trailing_separator() was added publicly since this may be useful to users. 2015-01-10 09:31:44 -05:00
Beman
bb5a0ff09d Clear warnings, including new warnings from VC++ 2015 preview. 2015-01-05 10:34:24 -05:00
Beman
0dfb7171fb Finalize issue reporting before requesting comments. Also fix some inspect issues. 2014-12-29 09:18:12 -05:00
Beman
490c2c3298 For all path_traits convert() and dispatch() functions provide two overloads, one with a "const codecvt_type&" argument, and one without. The overload without a codecvt argument calls path::codecvt() iff a conversion actually needs to be performed. Change all uses of path_traits convert() and dispatch() functions call the appropriate overload, rather than calling with path::codecvt() as a default. This limits the impact of locale("") initialization failures on Linux and other non-BSD POSIX systems to programs that actually depend on locale(""). It further ensures that exceptions thrown as a result of such failures occur after main() has started, and so can be caught. 2014-10-27 19:20:17 -04:00
Beman
1262a9f0d2 Fix C++03 compile failures for previous commit. 2014-10-24 11:46:50 -04:00
Beman
d57509c558 For compiled operational function detail::copy_file, pass detail::copy_options, a plain-old enum, rather than a BOOST_SCOPED_ENUM. We cannot pass a BOOST_SCOPED_ENUM to a compled function because it will result in an undefined reference if the library is compiled with -std=c++0x but the use is compiled in C++03 mode, or vise versa. Fixes tickets #6124, #6779, and #10038. 2014-10-24 10:58:42 -04:00
Beman
76d209567f Refactor dot_path and dot_dot_path into functions, to prevent path constructor being called before main() starts. In theory that is harmless when path::value_type is the same as value_type of the ctor Source, but eliminating it simplifies reasoning about program correctness. 2014-08-22 11:31:42 -04:00
Beman
4d64f34c01 Add non-const overloads for the value_type and string_type to avoid calling codecvt(). Fixes ticket #9219. 2014-08-17 09:22:32 -04:00
Beman
750a82e20d Revert "Merge branch 'develop' of github.com:boostorg/filesystem into develop"
This reverts commit 4610afc49e, reversing
changes made to 6623bde4fe.
2014-08-05 09:16:57 -04:00
Beman
4635e93d02 Add move semantics to file_status per DTS. Fix incorrect synonym in perms. Add file_status constructor test cases. 2014-07-24 15:38:48 -04:00
Beman
f0ce9bd649 Missed a few perms value changes that were on next DTS page. 2014-07-23 15:58:04 -04:00
Beman
038bce7e2d DTS: enum perms changed to enum class perms. Constant names have changed; synonyms provided. 2014-07-23 15:35:44 -04:00
Beman
21a66a331a Update enum class file_type constant values per DTS. 2014-07-23 14:16:53 -04:00
Beman
98b29a72e5 Fix-up of prior merge conflict resolution from develop. 2014-07-23 09:39:26 -04:00
Beman
99a94662b2 Merge branch 'develop' into ts-develop
Conflicts:
	include/boost/filesystem/operations.hpp
	test/operations_test.cpp
2014-07-22 20:55:58 -04:00
Beman
040be88815 Rework the recursive_directory_iterator::increment function to always make progress, even when errors occur. 2014-07-20 16:44:28 -04:00
Beman
2774f0e927 Merge comments from abandoned revision; they were helpful even though the code changes were premature. 2014-07-20 09:31:06 -04:00
Beman
ecce3f06d7 Revert "Merge branch 'avdv-fix-5403' into develop"
This reverts commit eaa5f27fc1, reversing
changes made to 23d2fcb9e0.

Although the changes made by the pull request fixed the presenting symptom, the lack of an "always makes progress" invariant is the real problem. The plan is to attack the lack of invariant first, then make further changes are needed.
2014-07-20 09:15:17 -04:00
Beman
eaa5f27fc1 Merge branch 'avdv-fix-5403' into develop 2014-07-19 14:42:08 -04:00
Beman
044b98373c All char16_t/char32_t dependencies #ifdef'ed out. All test/msvc/filesystem.sln tests pass. 2014-07-10 14:43:22 -04:00
Beman
fcb9600f91 Merge updates from Beman's Github repo. Unstable. 2014-07-09 14:47:13 -04:00
Claudio Bley
2cf9db8570 Fix trac ticket 5403
This resolves a bug where the directory_iterator at the top of the stack
is invalid (ie. an end iterator) if an error occurs. So, you cannot
dereference it, and you cannot use any other method (e.g. no_push) on
it, otherwise std::abort will be called.

Avoid pushing an end iterator onto the directory stack.

[1] https://svn.boost.org/trac/boost/ticket/5403
[2] https://svn.boost.org/trac/boost/ticket/6821#comment:5
2014-07-09 07:57:45 +02:00
Beman
b1b1cea3c4 Rename relative to lexically_relative. Add semi_canonical() and relative(). 2014-05-29 15:42:11 -04:00
Beman
eb153b72dc Change perms::all_all and perms::perms_mask to absolute values to quiet intellisense warnings. 2014-05-09 13:45:55 -04:00
Beman
c73dab3e56 Add BOOST_NOEXCEPT to filesystem_error 2014-05-09 09:27:56 -04:00
Beman
7cfff1821e initial implementation of relative(). 2014-05-05 11:54:27 -04:00
Beman
5697539c5b Sync operations.hpp with TS. 2014-05-05 08:07:46 -04:00
Beman
c5b34af36a Revert "Create first merge point for Git"
This reverts commit 907260eea3, reversing
changes made to f45977684a.

The reverted commit undid a number of previous (i.e. svn) merges from trunk to branches/release. I don't know why it went wrong, although it may have been operator error on my part.
2013-12-28 08:25:42 -05:00
Beman Dawes
bb0fe7585c Add BOOST_FOREACH support. Correct C++11 range-based for statement enabler signatures. Improve test coverage. Clears feature requests #5896 and #6521.
[SVN r79451]
2012-07-12 13:53:17 +00:00
Beman Dawes
af67382a81 Add directory_iterator and recursive_directory_iterator free functions begin and end so that these iterators can be used with range-based for statements.
[SVN r79409]
2012-07-10 21:17:20 +00:00
Beman Dawes
d1a72fd781 Revert to BOOST_FILESYSTEM_STATIC_LINK as the default if no linkage macros supplied. See http://www.boost.org/doc/libs/1_49_0/libs/config/doc/html/boost_config/boost_macro_reference.html#boost_config.boost_macro_reference.macros_for_libraries_with_separate_source_code
Add test to verify correct default.

[SVN r78273]
2012-04-30 15:00:21 +00:00
Beman Dawes
6115c31640 Filesystem: Fix #6819; A path operand with a source that was a one character array was treated as empty, even if it wasn't empty. Such arrays can occur and be non-empty in unions or in code using C variable length array idioms.
[SVN r78136]
2012-04-22 15:07:08 +00:00
Beman Dawes
5ee2bb4189 Filesystem: Add path::operator+= and concat functions to tack on things like suffixes or numbers. Suggested by Ed Smith-Rowland and others.
[SVN r78065]
2012-04-18 14:46:15 +00:00
Beman Dawes
1207aac116 filesystem: Move compare() implementation to path.cpp, thus clearing gcc warning about header implementation of class with dll interface.
[SVN r78006]
2012-04-16 13:36:28 +00:00
Beman Dawes
da4f223c5b Fix #6690 and #6737, resolving static linking related problems with VC++ 8 through 11. Note that this fix may reintroduce codecvt thread safety problems #4889, #6320, for these compilers if static linking is used.
[SVN r78000]
2012-04-15 20:34:19 +00:00
Beman Dawes
43c13a59d6 Make BOOST_x_DYN_LINK tbe default
[SVN r77999]
2012-04-15 20:16:18 +00:00
Beman Dawes
03195bfb17 Tighten config.hpp and Jamfile logic before attaching static build problems.
[SVN r77997]
2012-04-15 19:16:49 +00:00
Beman Dawes
82c5b7533b Fix #4065, Boost Filesystem lexicographic path comparison inconsistent. The fix included adding path::compare functions, and cleanup and refactoring of the path relational operators code. Some of the code fixed is used by other functions, so some unrelated bugs may also have been fixed.
[SVN r77669]
2012-03-31 15:53:24 +00:00
Beman Dawes
e946c54f07 Fix missing file
[SVN r77556]
2012-03-26 13:11:43 +00:00
Beman Dawes
7941871477 Filesystem - Delete v3 directories no longer needed. Cleanup links, namespaces, and other residue from dual v2/v3 support.
[SVN r77555]
2012-03-26 12:44:24 +00:00
Beman Dawes
16099b4c7d Filesystem - Move V3 files and directories into place
[SVN r77554]
2012-03-26 12:31:06 +00:00
Beman Dawes
883ba9b788 Filesystem - delete v2 directories, forwarding files.
[SVN r77553]
2012-03-26 12:27:17 +00:00
Beman Dawes
052300e0fb Revert changes made to trunk by mistake.
[SVN r77496]
2012-03-23 12:01:07 +00:00
Beman Dawes
91f1359280 Delete boost/filesystem/*.hpp
[SVN r77495]
2012-03-23 11:52:58 +00:00
Beman Dawes
4558bd2cb7 Add class path preferred_separator
[SVN r77357]
2012-03-17 12:53:25 +00:00
Beman Dawes
21a1d5b384 Fix #5653, recursive_directory_iterator(error_code) can still throw filesystem_error.
Fix a second bug, discovered while testing 5653; recursive_directory_iterator::increment with error_code argument was not reporting the end iterator.

[SVN r76667]
2012-01-24 19:43:11 +00:00
Beman Dawes
ce92bed563 Apply recursive_directory_iterator patch contributed by Daniel Aarno, fixing #5652 for cyclic symlinks
[SVN r76556]
2012-01-17 16:00:22 +00:00
Beman Dawes
19fba833e1 Add test cases and fixes for class path errors when assignment or appends used self or portion of self as source. Fixes ticket #3714
[SVN r76541]
2012-01-16 15:59:27 +00:00
Beman Dawes
ca788b18fd Remove spurious semicolon causing problem for gcc in pedantic mode.
[SVN r76423]
2012-01-12 00:22:45 +00:00
Beman Dawes
60e042752e Fix for old Sun compilers __SUNPRO_CC <= 0x5100 that don't fully support fchmodat. Fix test failure on some POSIX systems that grant write permission to group and others.
[SVN r75133]
2011-10-27 15:37:11 +00:00
Beman Dawes
67c7b055e3 Add support for permissions. Docs to follow.
[SVN r74950]
2011-10-15 16:02:20 +00:00
Beman Dawes
9d28593943 Added operational function canonical(), suggested by David Svoboda, who also provided pseudo-code.
[SVN r74683]
2011-10-04 01:10:17 +00:00
Daniel James
57d50f3f99 Remove some unnecessary checks in path equality.
[SVN r74530]
2011-09-22 23:56:12 +00:00
Daniel James
2e6cc63e65 Filesystem: add hash_value.
[SVN r73827]
2011-08-16 22:15:55 +00:00
Beman Dawes
94420d4b61 Fix #5764 - add template qualified; reported to be required on QNX6.3.2 host (gcc-3.3.5)
[SVN r73795]
2011-08-15 19:29:26 +00:00
Beman Dawes
56f9f0ce5f Clarify codecvt comment
[SVN r73213]
2011-07-18 11:28:38 +00:00
Beman Dawes
33f638feee Fix problem of locale("") exception being thrown before main() starts on misconfigured (e.g. LANG="bad name") POSIX systems. Resolves the most serious aspect of tickets 4688, 5100, 5289.
[SVN r72855]
2011-07-02 14:43:18 +00:00
Beman Dawes
bad343a65b Change BOOST_ASSERT to BOOST_ASSERT_MSG when there was a && "..."
[SVN r71376]
2011-04-19 02:05:55 +00:00
Beman Dawes
0d1143710d Fix for STLPort (#5217)
[SVN r69220]
2011-02-23 20:16:41 +00:00
Beman Dawes
d4dce24d77 Cleanup code (pointed out by Denis Shevchenko)
[SVN r69076]
2011-02-20 13:35:53 +00:00
Beman Dawes
063dcbe36f Fix #5188 to clear gcc warning
[SVN r68863]
2011-02-14 15:02:47 +00:00
Beman Dawes
5e72f795c6 Merge changes from https://github.com/Beman/filesystem. Important changes include fix for serious Windows reparse point bug, code cleanup, reference doc fixes and addition of missing functions, and the addition of symlink_option for recursive_directory_iterator.
[SVN r68837]
2011-02-13 15:02:27 +00:00
Beman Dawes
880c8ae8ec fix status() to report non-symlink reparse point correctly.
[SVN r67599]
2011-01-02 22:06:26 +00:00
Beman Dawes
d65642912c Clear several GCC 4.6 warnings. Change V2 code to use BOOST_THROW_EXCEPTION.
[SVN r67577]
2011-01-02 16:49:28 +00:00
Beman Dawes
cc697684a1 Undeprecate unique_path(). Instead, add a note mentioning the workaround for lack of thread safety and possible change to cwd. unique_path() is just too convenient to deprecate!
[SVN r67571]
2011-01-02 14:59:04 +00:00
Beman Dawes
8f617d3de7 Clean up tabs, replace C-style assert with BOOST_ASSERT
[SVN r67497]
2010-12-30 02:05:34 +00:00
Beman Dawes
fa169c3af8 Fix #4891, again, clearing problem if BOOST_FILESYSTEM_VERSION defined in <boost/config/user.hpp>
[SVN r67066]
2010-12-06 13:17:45 +00:00
Beman Dawes
81a9ee92bd Verify, clarify, document, that <boost/config/user.hpp> can be used to specify BOOST_FILESYSTEM_VERSION. Fixes #4891.
[SVN r66996]
2010-12-04 00:39:20 +00:00
Beman Dawes
96e3b893b0 Make V3 the default. Change docs accordingly. Partial fix for ticket #4897
[SVN r66987]
2010-12-03 18:17:01 +00:00
Beman Dawes
563adf1424 Fix #4912
[SVN r66945]
2010-12-01 14:30:39 +00:00
Beman Dawes
bdc335d937 Add temp_directory_path function, contributed by Jeff Flinn. Many thanks to Jeff for the complete implementation, with tests and documentation!
[SVN r66028]
2010-10-16 21:03:43 +00:00
Beman Dawes
dffd55a868 Fix #4663, filesystem objects falsely identified as symlinks. operations_test.cpp refactored and various symlink related tests added. Fixes to bugs found as a result, in addition to the 4663 bug.
[SVN r65916]
2010-10-11 20:22:02 +00:00
Beman Dawes
09e36404c6 Fix #4712
[SVN r65818]
2010-10-07 21:45:04 +00:00
Beman Dawes
47c7ac4699 Fix #4799. The same bug occurred in three places. One of these may have been the source of reported problems with remove_all. Several other problems in documentation and tests were also found and will be addressed separately.
[SVN r65765]
2010-10-05 16:55:19 +00:00
Beman Dawes
b9b832760a Fix #4487 V2 create_hard_link problem with old Windows SDK
[SVN r65371]
2010-09-10 12:51:00 +00:00
Beman Dawes
6bf14c6a44 Add path_traits::is_pathable and use it to prevent several path member templates from being considered for overload resolution of non-pathable types. Fixes problem reported by Adam Badura.
[SVN r64986]
2010-08-24 18:35:41 +00:00
Beman Dawes
147e18b93c Remove path array optimization; problematic when array contains a string shorter than the array length. Reported by Adam Badura.
[SVN r64928]
2010-08-19 17:03:38 +00:00
Beman Dawes
e8a6a7bd82 include <cwchar> for mbstate_t
[SVN r64884]
2010-08-18 11:47:14 +00:00
Beman Dawes
91b24db22c Fixes for libraries not supporting wide character strings: correct existing V2 workarounds (thanks to John Maddock), V3 library components null compile if no support, #error earlier and in more files if using V3 with unsupported library.
[SVN r64623]
2010-08-05 21:27:55 +00:00
Daniel James
480dab0416 Inline some deprecated filesystem methods, so that they can be included in more than one compile unit.
[SVN r64246]
2010-07-22 07:49:05 +00:00
Beman Dawes
419cf13dd2 Revert to absolute() being an operations free function, and provide semantics for the Windows case where the base argument was not absolute.
[SVN r63524]
2010-07-02 17:04:20 +00:00
Beman Dawes
c5a8d1eef9 Deprecate initial_path as too error prone without C++ runtime support.
[SVN r63500]
2010-07-01 18:55:41 +00:00
Beman Dawes
c469a8c430 Reverse logic so that standard library file I/O is assumed *not* to have wide character path extension, thus defaulting to the safer choice.
[SVN r63452]
2010-06-30 15:20:21 +00:00
Beman Dawes
a20f1ed674 Fix old Dinkumware without file stream wchar_t overloads
[SVN r63406]
2010-06-28 14:40:40 +00:00
Beman Dawes
440841e5c7 Use "funny" codecvt facet instead of UTF-8 to detect failures on systems that default to UTF-8. Fix generic_string bug with codecvt argument.
[SVN r63400]
2010-06-27 20:41:08 +00:00
Beman Dawes
4564459e77 Document path::codecvt_type arguments
[SVN r63285]
2010-06-24 15:02:30 +00:00
Beman Dawes
42c23163cd Provide const codecvt& arguments for all applicable class path functions
[SVN r63283]
2010-06-24 11:10:37 +00:00
Beman Dawes
8ab8021270 Workaround for IBM, old GCC, and other non-conforming compilers.
[SVN r63226]
2010-06-22 10:56:51 +00:00
Beman Dawes
152886d0f8 Fix #4248 W.R.T. BOOST_FILESYSTEM_NO_DEPRECATED and BOOST_SYSTEM_NO_DEPRECATED
[SVN r63185]
2010-06-21 13:13:20 +00:00
Beman Dawes
998233d767 Use boost::io::quoted I/O manipulator as a better solution to embedded spaces. See #3863
[SVN r63136]
2010-06-20 13:41:26 +00:00
Beman Dawes
77b673eba7 Add missing #include <locale>
[SVN r63025]
2010-06-16 20:13:00 +00:00
Beman Dawes
6e69563ab7 Reorder code to workaround clang problem (Chris Jefferson)
[SVN r62976]
2010-06-15 15:40:04 +00:00
Beman Dawes
9234a778cd Fix #3863, stream I/O with space in named failed to roundtrip
[SVN r62919]
2010-06-13 17:33:39 +00:00
Beman Dawes
ad2cbcc987 Fix symbol visibility problem causing Linux/GCC test failures
[SVN r62890]
2010-06-13 01:38:46 +00:00
Beman Dawes
9d1cd71b5a Fix #3241
[SVN r62876]
2010-06-12 20:44:23 +00:00
Beman Dawes
a24b21a169 All tests passing on Windows, gcc + msvc. Changed convenience_test to eliminate chance of test directory name race condition when multiple tests run together.
[SVN r62767]
2010-06-10 21:02:31 +00:00
Beman Dawes
7922c919d8 V2 tests added. All tests passing on at least one compiler, none passing on all compilers
[SVN r62759]
2010-06-10 20:02:39 +00:00
Beman Dawes
ea03205dd3 All V3 tests passing
[SVN r62704]
2010-06-10 01:03:56 +00:00
Beman Dawes
98d00b2e88 Add Build and Test support. Build is working, a few tests are working.
[SVN r62662]
2010-06-09 15:07:03 +00:00
Beman Dawes
3b51e980ae Initial source code changes to achieve integration
[SVN r62659]
2010-06-09 14:05:57 +00:00
Beman Dawes
fa515c07f5 Move files into new v2 + v3 directory structure
[SVN r62653]
2010-06-09 13:00:15 +00:00
Beman Dawes
91715967a5 Upgrade system and filesystem to conform system_category and generic_category interface to N3090, the current C++0x working paper, section 19.5, System error support.
Refactor API macros into a new header, boost/system/api_config.hpp.

Prohibit user definition of API macros. Rationale: ensure all translation units use same definitions, cut number of environments that need to be tested.

[SVN r62313]
2010-05-30 15:38:32 +00:00
Beman Dawes
7aed6d4ed7 Use new symbol visibility macros
[SVN r62203]
2010-05-25 16:15:01 +00:00
Beman Dawes
f2b77331e1 Fix #3884
[SVN r59622]
2010-02-10 17:21:41 +00:00
Beman Dawes
f0a2284419 Fix #3385, add test cases
[SVN r56139]
2009-09-10 17:25:20 +00:00
Beman Dawes
de50f3c5b2 Filesystem: apply supplied patch to fix #3176
[SVN r54066]
2009-06-18 21:01:54 +00:00
Beman Dawes
594e0c5d8e Filesystem: add basic_path::clear() to fix #3186, clear() missing
[SVN r54055]
2009-06-18 15:48:19 +00:00
Beman Dawes
0aaa65e768 Fix Filesystem #2925, copy_file atomiticity
[SVN r53073]
2009-05-17 15:55:46 +00:00
Beman Dawes
7bc9e5db73 Filesystem: fix #3008, improving namespace discipline to avoid naming conflicts with the C++0x std library.
[SVN r52922]
2009-05-11 19:51:44 +00:00
Beman Dawes
32724c2724 Fix #2948 - Path typedef moved to namespace boost::filesystem
[SVN r52410]
2009-04-16 01:51:05 +00:00
Beman Dawes
dff8252505 Filesystem: path operator==, !=; use string comparison rather than !(lhs < rhs) && !(rhs < lhs) because the result is the same yet the direct string compare is much more efficient than operator<, which uses lexicographical_compare.
[SVN r50674]
2009-01-19 18:38:28 +00:00
Beman Dawes
86e1ddeacd Filesystem: add specializations to eliminate warnings, thus fixing #2543
[SVN r50556]
2009-01-12 17:02:20 +00:00
Beman Dawes
8add21928f Filesystem: fix #2224 (Hajo Kirchhoff)
[SVN r49481]
2008-10-29 11:52:07 +00:00
Beman Dawes
33487a8aeb Filesystem: add macros and deprecated names sections to docs
[SVN r49316]
2008-10-13 14:30:47 +00:00
Beman Dawes
abf6fecd65 Apply filesystem patches from ticket #2352
[SVN r49081]
2008-10-01 14:21:19 +00:00
Beman Dawes
bfe1453fe4 Fix boost/filesystem/convenience.hpp bug; fully remove deprecated features
[SVN r48462]
2008-08-29 20:06:23 +00:00
Beman Dawes
01108afd29 Revert 'remove' changes inadvertently committed by 47006. Fully apply ticket #1972 'remove' fixes.
[SVN r48377]
2008-08-25 15:35:34 +00:00
Beman Dawes
b4c278776a Provide deprecated functions has_branch_path and has_leaf, inadvertently omitted from 1.36.0
[SVN r48374]
2008-08-25 12:25:34 +00:00
Beman Dawes
5c6536a9f3 Restore deprecated basic_directory_entry names inadvertently removed
[SVN r48192]
2008-08-18 13:23:10 +00:00
Beman Dawes
60a1930821 Clear gcc shadow problems (Grant Erickson)
[SVN r47923]
2008-08-01 00:00:58 +00:00
Beman Dawes
fb65347b54 After extensive discussion on the list with Dave Abrahams, Vladimir Prus, and others, rename basic_path::leaf() -> filename, branch_path -> parent_path, replace_leaf -> replace_filename. Add basic_path member functions stem, extension, replace_extension.
[SVN r47181]
2008-07-07 12:20:04 +00:00
Beman Dawes
001c15dd32 Rename is_regular() to is_regular_file
[SVN r47131]
2008-07-06 12:10:42 +00:00
Beman Dawes
3ee73a0df7 Partial resolution of ticket #1972; remove() issues for POSIX are cleared. Added regression test cases covering self-reference and cyclic symlinks.
[SVN r47006]
2008-07-02 21:05:54 +00:00