aboutsummaryrefslogtreecommitdiff
path: root/libbutl/filesystem.cxx
AgeCommit message (Collapse)AuthorFilesLines
2020-08-31Fix assertion failure in path_search() on WindowsKaren Arutyunov1-4/+7
Also fix the similar potential assertion failure in fdstream.
2020-08-06Revert Windows rm/mv sharing violation retries increaseBoris Kolpackov1-2/+2
2020-08-05Increase Windows rm/mv sharing violation retries to 60s for testingBoris Kolpackov1-2/+4
2020-07-16On Windows increase fdopen() retry timeout on ERROR_SHARING_VIOLATION up to ↵Karen Arutyunov1-4/+4
2 seconds from 1 Also do the same for mventry(), and try_rmfile().
2020-07-07On Windows make fdopen() to retry for a second on ERROR_SHARING_VIOLATION errorKaren Arutyunov1-1/+4
2020-06-24Restructure touch_file() control flow to produce consistent failuresBoris Kolpackov1-52/+56
2020-06-24Don't use utime() on WindowsBoris Kolpackov1-26/+74
It has the seconds precision even if the time is unspecified.
2020-03-17Fix mkanylink() to complete relative target against link directory when ↵Karen Arutyunov1-4/+16
create hardlink or copy
2020-03-17Add readsymlink(), followsymlink(), and try_followsymlink()Karen Arutyunov1-233/+571
2020-03-11Fix race in dir_iterator::next() for 'ignore dangling symlinks' modeKaren Arutyunov1-54/+110
2020-03-11On Windows try to create directory symlink and fallback to creating junction ↵Karen Arutyunov1-41/+42
on error
2020-03-09Add more support for symlinks on WindowsKaren Arutyunov1-438/+651
See mksymlink() for details of the symlinks support on Windows.
2020-03-03Revert previous (erroneously pushed to master) commitKaren Arutyunov1-100/+5
2020-03-02BackupKaren Arutyunov1-5/+100
2020-02-06Drop copyright notice from source codeBoris Kolpackov1-1/+0
2019-10-01Move path match to path-pattern.?xxKaren Arutyunov1-408/+2
2019-09-28Swap entry and pattern parameters in path_match()Karen Arutyunov1-4/+4
2019-09-27Add support for bracket expressions in wildcard pattern matchingKaren Arutyunov1-36/+284
2019-09-25Get rid of used uninitialized GCC warningBoris Kolpackov1-1/+1
2019-08-14Add mkanylink() filesystem functionBoris Kolpackov1-0/+56
2019-06-03Fix missing for Windows traits alias renamingKaren Arutyunov1-2/+2
2019-06-03Rename traits alias to traits_type for basic_path, basic_url, and ↵Karen Arutyunov1-2/+2
string_table class templates
2019-05-23Improve path_traits convenience overloadsBoris Kolpackov1-1/+1
2019-05-03Partially dismantle modularization using Modules TS semanticsBoris Kolpackov1-4/+4
2019-02-16Fix non-detecting dangling junctions if built with mingw gccKaren Arutyunov1-46/+78
2019-02-15Fix rmdir_r() that may throw system_error regardless of ignore_error flag valueKaren Arutyunov1-7/+18
2019-02-15Fix directory symlinks support on WindowsKaren Arutyunov1-77/+101
2019-01-16Update copyright yearKaren Arutyunov1-1/+1
2018-12-01Change path_search() to only match directory absent components in 'match ↵Karen Arutyunov1-25/+4
absent' mode
2018-11-30Add match_absent flag for path_{search,match}() functionsKaren Arutyunov1-8/+46
2018-11-26Add note on "filesystem time" on WindowsBoris Kolpackov1-1/+8
2018-09-05Keep trying to remove file for a second on WindowsKaren Arutyunov1-19/+36
The thinking is that there can be some Windows process analyzing newly created files and so preventing their removal.
2018-09-04Minor comment changeBoris Kolpackov1-1/+1
2018-09-03Keep trying to move filesystem entry for a second on WindowsKaren Arutyunov1-14/+38
The thinking is that there can be some Windows process analyzing newly created files and so preventing their move or removal.
2018-06-01Remove redundant assertion in path_match(path, path, dir_path)Karen Arutyunov1-14/+6
2018-05-19Update copyright yearKaren Arutyunov1-1/+1
2018-05-18Fix broken dangling symlinks detection by dir_iteratorKaren Arutyunov1-6/+6
2018-05-18Add ignore_dangling parameter to dir_iterator() ctorKaren Arutyunov1-19/+50
2018-04-28Fix try_rmfile() to remove symlinks on WindowsKaren Arutyunov1-9/+24
2018-04-28Few bug fixesBoris Kolpackov1-1/+1
2018-04-28Improve rmsymlink() interfaceBoris Kolpackov1-7/+6
2018-04-28Add support for directory symlinks on WindowsKaren Arutyunov1-19/+174
2018-03-20Fix compile-time errors when build with clang on MacOSKaren Arutyunov1-6/+8
2018-03-19Add support for copying file timestamps by cpfile()Karen Arutyunov1-36/+167
2018-02-08Make try_rmfile() to delete read-only files on WindowsKaren Arutyunov1-2/+26
2017-11-23Make some functions staticBoris Kolpackov1-10/+12
This works around an assertion in a modularized build with Clang.
2017-10-04Add ignore_error parameter for path_entry() and *_exists() functionsKaren Arutyunov1-10/+10
2017-09-22Initial modularization with both Clang and VC hacksBoris Kolpackov1-11/+36
Note: gave up on VC about half way though.
2017-07-22Add touch_file() filesystem functionBoris Kolpackov1-0/+29
2017-06-15Adapt for ln testscript builtinKaren Arutyunov1-1/+25