aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-09-11Add support for arguments in default options files helpersKaren Arutyunov5-148/+354
2020-09-07Add normalize() function to host/URL class templatesKaren Arutyunov5-103/+512
Also add IPv6 verification to host constructor.
2020-08-31Fix assertion failure in path_search() on WindowsKaren Arutyunov3-14/+35
Also fix the similar potential assertion failure in fdstream.
2020-08-27Add ability to pass alternative dir separator to path::canonicalize()Boris Kolpackov2-13/+32
This, for example, can be used to make paths with forward slashes on Windows.
2020-08-24Recognize *-nto-qnx target triplets, extract versionBoris Kolpackov2-13/+21
2020-08-24Add target_triplet::representation() in addition to string()Boris Kolpackov3-17/+46
Also stop stripping `none-` prefix from the system component.
2020-08-18Add ability to create empty process_envBoris Kolpackov1-0/+2
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-29Work around glibc bug #14898 (GitHub issue #2)Boris Kolpackov2-8/+33
2020-07-21Change to version 0.14.0-a.0.zBoris Kolpackov1-1/+1
2020-07-18Release version 0.13.0v0.13.0Boris Kolpackov1-3/+3
2020-07-16On Windows increase fdopen() retry timeout on ERROR_SHARING_VIOLATION up to ↵Karen Arutyunov2-6/+6
2 seconds from 1 Also do the same for mventry(), and try_rmfile().
2020-07-14Override TERM environment variable on Windows when running lessBoris Kolpackov1-1/+15
2020-07-07On Windows make fdopen() to retry for a second on ERROR_SHARING_VIOLATION errorKaren Arutyunov2-4/+37
2020-07-03Canonicalize license in manifestKaren Arutyunov1-1/+1
2020-07-01Use legal{} target type for legal documentation (LICENSE, AUTHORS, etc)Boris Kolpackov1-2/+2
2020-06-30Expose command_run()'s @-substitution functionalityBoris Kolpackov3-66/+124
Also add support for different opening and closing substitution characters.
2020-06-29Add path::combine(string,separator)Boris Kolpackov3-13/+106
In particular, this can be used to recombine a path during iteration: dir_path r; for (auto i (d.begin ()); i != d.end (); ++i) r.combine (*i, i.separator ());
2020-06-26Improve std::optional to better deal with lack of copy/move constructorsKaren Arutyunov3-6/+126
2020-06-24Restructure touch_file() control flow to produce consistent failuresBoris Kolpackov1-52/+56
2020-06-24Don't use utime() on WindowsBoris Kolpackov3-27/+77
It has the seconds precision even if the time is unspecified.
2020-06-23Add note that access time tests may fail with if running on noatime mountBoris Kolpackov2-0/+6
For example, this happens on NetBSD.
2020-06-19Adapt mv builtin tests to terminology changeKaren Arutyunov1-6/+6
2020-06-19Fix terminologyBoris Kolpackov1-3/+3
2020-06-19Get rid of deprecated use of enums in bitmasksBoris Kolpackov1-24/+22
2020-06-18Complete NetBSD compatibilityBoris Kolpackov11-29/+44
2020-06-18Add NetBSD compatibilitymagenbluten5-5/+15
2020-06-11Add date builtinKaren Arutyunov6-0/+492
2020-06-11Add workaround for MinGW GCC bug so to_stream(timestamp) properly handles %e ↵Karen Arutyunov3-17/+55
specifier
2020-06-03Add builtin weightKaren Arutyunov4-31/+57
Also invent the notion of external builtin (builtin_info::function is NULL).
2020-05-30Fix process_path() constructorKaren Arutyunov2-2/+9
2020-05-28Regenerate options parsing codeBoris Kolpackov1-41/+42
2020-05-25Add putback depth char_scanner template parameterKaren Arutyunov3-42/+42
2020-05-18Add sensitize_strlit() for sanitizing C string literalsBoris Kolpackov2-0/+36
2020-04-14Improve process_path::empty()Boris Kolpackov1-4/+6
2020-04-10Replace build-email manifest value with build-warning-emailKaren Arutyunov1-1/+1
2020-04-10Add process_path(effect) constructorBoris Kolpackov2-2/+13
2020-04-07Add ability to print process_env environmentBoris Kolpackov4-1/+176
2020-04-07Bump build2 version requirement to 0.13.0- (need config directive)Boris Kolpackov1-2/+2
Note that this means there will be no upgrade support for this release.
2020-04-01Add daytime() functionKaren Arutyunov3-0/+50
2020-03-17Fix mkanylink() to complete relative target against link directory when ↵Karen Arutyunov5-9/+23
create hardlink or copy
2020-03-17Fix ln builtin not to complete relative target against working directoryKaren Arutyunov5-24/+38
Now it preserves the relative path when creates a symlink and completes it against the link directory when creates a hardlink or a copy.
2020-03-17Add readsymlink(), followsymlink(), and try_followsymlink()Karen Arutyunov8-263/+843
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 Arutyunov2-53/+51
on error
2020-03-10Fix directory symlink tests failing on Windows in Developer ModeKaren Arutyunov4-101/+88
2020-03-09Add more support for symlinks on WindowsKaren Arutyunov16-701/+1532
See mksymlink() for details of the symlinks support on Windows.
2020-03-09Fix file_empty() to follow symlinksKaren Arutyunov1-1/+1
2020-03-09Add workaround for MinGW GCC bug #84583 (produces CRCRLF sequences in ↵Karen Arutyunov1-34/+17
preprocessed files)