Commit Graph

50 Commits

Author SHA1 Message Date
Andrey Semashev
7339882ccf Added BOOST_FILESYSTEM_VERSION 4 and moved breaking path changes to v4.
Boost.Filesystem v4 will contain breaking changes from v3 that are required
for better compatibility with C++17 std::filesystem. It will also remove
the deprecated features of v3.

Updated docs to reflect the differences between v3 and v4. Updated tests
to verify both v3 and v4 where the differences are present.
2021-06-13 03:20:30 +03:00
Andrey Semashev
0ada9c0ec2 Force C++11 for compiling examples that are using C++11 features. 2021-05-19 04:14:24 +03:00
Andrey Semashev
bb116b96f6 Removed example testing scripts as they are unused. 2021-05-19 03:19:08 +03:00
Andrey Semashev
87181d517d Removed MSVC projects as they are not maintained. 2021-05-19 03:19:08 +03:00
Andrey Semashev
c03249c375 Reformatted code for more consistent look and better readability. 2021-04-24 22:37:57 +03:00
Andrey Semashev
c758552338 Moved directory tools to separate files. Reworked readdir_r support.
Directory iteration components were moved to separate files to simplify
maintenance of operations.hpp/cpp.

directory_iterator implementation on POSIX platforms has been reworked
to only allocate internal buffer when readdir_r is used. When readdir
is used, the dirent structure returned by readdir is used directly, which
eliminates the potential of buffer overrun in case if some directory name
exceeds the buffer size. This also removes the need to copy dirent members
into the buffer, which improves performance and simplifies maintenance.

For buffer size we now use the max path size as opposed to max filename
size. This is done to minimize the possibility of buffer overruns when
readdir_r is used.

On Windows, use Boost.WinAPI to configure the default target Windows version.
This removes WINVER and _WIN32_WINNT defines in Boost.Filesystem as these
macros should be defined by Boost.WinAPI now.

Additionally, exception.hpp and directory.hpp includes in operations.hpp are
marked as deprecated as operations.hpp do not need those components. Users
are encouraged to include the new headers explicitly in their code, as needed.
2019-08-01 20:34:39 +03:00
Andrey Semashev
27256f9d55 Removed asynch-exceptions=on for MSVC. 2019-01-14 20:46:59 +03:00
Andrey Semashev
c0c93a0c58 Removed linking with Boost.System from docs and examples. 2019-01-14 20:40:06 +03:00
Andrey Semashev
2c1fa1a4a0 Removed linking with Boost.System.
Since Boost.System is now header-only, no need to depend on its library.

Fixes https://github.com/boostorg/filesystem/issues/98.
2019-01-14 20:08:41 +03:00
Beman
49218481e5 Clean up some tutorial example code and fix the wording for it in the tutorial. Thanks to Anmol-Singh-Jaggi for pull request #11. 2017-08-07 20:01:08 -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
a984f70f56 A few final changes on Windows. Linux examples still to be tested and output captured. 2015-07-26 11:59:30 -04:00
Beman
03d1256acc Rename bld scripts to build. Get started modernizing, correcting, and updating the tutorial. Continue work on example programs. 2015-07-26 10:52:15 -04:00
Beman
989d108440 Switch to using html_include_files (see github.com/Beman/command-line-tools) to suck in the actual examples source code. Get rid of some unneeded includes. 2015-07-25 15:39:16 -04:00
Beman
e9d72fa16c Upgrade build infrastructure. Modernize tutorial examples to use C++11 to simplify code and make it easier to understand. Initial tutorial edits. 2015-07-25 14:47:52 -04:00
Beman
7701398d38 Add example/msvc infrastructure 2015-07-25 07:04:08 -04:00
Beman
8f75aec0e7 Remove the install as it did not work as expected. 2014-12-26 10:11:38 -05:00
Beman
fb824af6e3 Add file_size to Jamfile 2014-12-26 09:53:30 -05:00
Beman
bf1339e282 Remove use of <boost/test/prg_exec_monitor.hpp>. It has caused trouble for years, and I'm tired of fighting with it. The last straw was adding a Cygwin gcc toolset, only to have <boost/test/prg_exec_monitor.hpp> fail to link. Change to always use <boost/detail/lightweight_main.hpp>, which is trouble-free. 2014-08-06 12:16:06 -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
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 Dawes
21ec949654 filesystem testing change: use <boost/test/prg_exec_monitor.hpp> by default, define BOOST_LIGHTWEIGHT_MAIN to use <boost/detail/lightweight_main.hpp>. This gives us the better exception reporting of <boost/test/prg_exec_monitor.hpp> but provides easy fallback to <boost/detail/lightweight_main.hpp> if desired.
[SVN r78057]
2012-04-18 01:31:53 +00:00
Beman Dawes
dec6c711f0 Add missing files
[SVN r77558]
2012-03-26 13:21:35 +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
fa515c07f5 Move files into new v2 + v3 directory structure
[SVN r62653]
2010-06-09 13:00:15 +00:00
Vladimir Prus
121ad129f0 Fix Boost.Filesystem->Boost.System dependency for windows/shared.
[SVN r58028]
2009-11-29 10:03:34 +00:00
Beman Dawes
39a9f8a82b filesystem tweaks
[SVN r52921]
2009-05-11 19:27:13 +00:00
Beman Dawes
0a93531186 Add include <cwchar> in two place to fix ticket #2382
[SVN r49208]
2008-10-09 14:53:47 +00:00
Beman Dawes
e22eb55f69 Boost.Filesystem: change tests to define BOOST_FILESYSTEM_NO_DEPRECATED. Expand deprecated_test.
[SVN r48463]
2008-08-29 20:10:08 +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
c3d20c1c44 fix header name
[SVN r46807]
2008-06-28 13:20:58 +00:00
Marshall Clow
dcbe9649c2 Replaced all occurrences of non-ASCII copyright symbol with '(c)' for people using non-ASCII code pages
[SVN r43992]
2008-04-02 01:42:32 +00:00
Beman Dawes
8fb975b2b9 Fix inspect boo boos; mostly broken links
[SVN r43709]
2008-03-18 19:35:18 +00:00
Beman Dawes
4ed2439686 Refresh examples, add example build script, reflect that in docs. Apply suggestions from Darren Cook.
[SVN r41500]
2007-11-30 16:44:23 +00:00
Beman Dawes
6fbd106e94 Add copyright and license
[SVN r40767]
2007-11-05 02:34:04 +00:00
Vladimir Prus
c1840ee23f Remove V1 Jamfiles
[SVN r38516]
2007-08-08 19:02:26 +00:00
Beman Dawes
2045be22d6 Bring into compliance with N2066, TR2 Diagnostics Enhancements. Tests passing on Win32, Linux, on most modern compilers.
[SVN r35823]
2006-11-03 16:57:30 +00:00
Beman Dawes
22bb191bf0 Remove copyright symbol as it causes VC++ warnings on Windows with codepage set to non-English, particularly Asian, languages
[SVN r33295]
2006-03-09 22:15:07 +00:00
Beman Dawes
040c9372b3 Bring into sync with WG21/D1934=06-0004
[SVN r32532]
2006-02-03 20:59:04 +00:00
Beman Dawes
aac5f49666 is_file, file_flag -> is_regular, regular_flag per TR2 proposal
[SVN r32201]
2006-01-02 02:30:53 +00:00
Beman Dawes
48d4335bfc merge from i18n branch - at last!
[SVN r32079]
2005-12-16 16:40:35 +00:00
Vladimir Prus
f57c2d02b9 Update to match V1 Jamfile.
Patch from Daniel Schlyder.


[SVN r30972]
2005-09-14 07:27:59 +00:00
Vladimir Prus
8692b025bc Fix library name
[SVN r22783]
2004-05-11 06:35:31 +00:00
Beman Dawes
d0c4a18832 show sizeof(intmax_t)
[SVN r22328]
2004-02-19 14:03:50 +00:00
Beman Dawes
9c86292c6d add file_size() support
[SVN r22156]
2004-02-03 16:00:10 +00:00
Beman Dawes
790047851b update license so inspect can see it
[SVN r20959]
2003-11-26 12:45:13 +00:00
Beman Dawes
6c6191b6b5 add endl to error message
[SVN r17501]
2003-02-18 00:54:12 +00:00
Vladimir Prus
4146abcc6b Added V2 Jamfile.
[SVN r17105]
2003-01-31 09:36:08 +00:00
Beman Dawes
fadc0fc63e fs_review branch merged
[SVN r16593]
2002-12-11 19:47:00 +00:00