Timothee Cour
2356d0603f
followup #17398 : getTempDir, getConfigDir now do not have trailing DirSep ( #17402 )
...
* followup #17398 : `getTempDir`, `getConfigDir` now do not have trailing DirSep
* fix test
2021-03-18 13:25:56 +01:00
Roman Inflianskas
31424b3808
stdlib/os: add isAdmin ( #17012 )
...
* stdlib/os: add isAdmin
* uint8 -> cuchar, assert isAdmin on Azure
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
* Update lib/pure/os.nim docs
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
* Address comments on #17012
* Raise on errors in #17012
* Check the result of FreeSid in #17012
* Change case in #17012
* Fix memory leak in #17012
* Address comments in #17012
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
2021-03-07 22:40:16 +01:00
flywind
0e3ea16554
use lowercase --define switches ( #17283 )
2021-03-07 12:08:41 +01:00
Juan Carlos
4982d1c662
https://github.com/nim-lang/Nim/pull/15826/files#r585368355 ( #17233 )
2021-03-03 11:58:05 +01:00
Roman Inflianskas
e9b360c5df
stdlib/os: handle symlinks in copy/move functions ( #16709 )
...
* stdlib/os: handle symlinks in copy/move functions
- Added optional `options` argument to `copyFile`, `copyFileToDir`, and
`copyFileWithPermissions`. By default, symlinks are followed (copy files
symlinks point to).
- `copyDir` and `copyDirWithPermissions` copy symlinks as symlinks (instead of
skipping them as it was before).
- `moveFile` and `moveDir` move symlinks as symlinks (instead of skipping them
sometimes as it was before).
- Added optional `followSymlinks` argument to `setFilePermissions`.
See also: https://github.com/nim-lang/RFCs/issues/319
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
* Address comments in #16709
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
* Address comments in #16709 (second iteration)
Skip symlinks on Windows.
Co-authored-by: Timothee Cour <timothee.cour2@gmail.com >
2021-02-04 18:57:41 +01:00
Timothee Cour
917f12ae52
2.5x- 3x faster copyFile on osx ( #16883 )
2021-02-01 17:38:17 -08:00
flywind
6d442a40a6
use doAssert in tests ( #16486 )
2020-12-28 14:13:21 +01:00
Timothee Cour
3eac9b2344
os: add overload copyFile*(source, dest: string, isDir = false) ( #15537 )
...
* os: add overload copyFile*(source, dest: string, isDir = false)
* renamed to copyFileToDir
2020-10-11 20:43:01 +02:00
Timothee Cour
bf604c6829
normalizeExe ( #14668 )
2020-06-15 10:57:34 +02:00
Timothee Cour
d573581eb7
remove isMainModule from json,os,sequtils ( #14572 )
...
* move json.isMainModule => tjson
* move isMainModule => tos,tsequtils
2020-06-06 11:50:46 +02:00
Timothee Cour
7ce0358351
fix #13222 : make relativePath more robust and flexible ( #13451 )
...
* * relativePath(foo) now works
* relativePath(rel, abs) and relativePath(abs, rel) now work (fixes #13222 )
* relativePath, absolutePath, getCurrentDir now available in more targets (eg: vm, nodejs etc)
* fix bug: isAbsolutePath now works with -d:js; add tests
* workaround https://github.com/nim-lang/Nim/issues/13469
* remove `relativePath(path)` overload for now
* add back changelog after rebase
2020-04-21 23:53:55 +02:00
Timothee Cour
1d665adecd
[RFC] 'walkDir' now has a new 'checkDir' flag, to mimic behaviour of other languages ( #13642 )
...
Co-authored-by: narimiran
2020-03-20 16:39:55 +01:00
Andreas Rumpf
62c113ebc7
fix #13579 joinPath("/foo/", "../a") is now /a ( #13586 )
2020-03-05 15:31:22 +01:00
Timothee Cour
0c312ad898
fix #13455 ; joinPath(a,b) now honors trailing slashes in b (or a if b = "") ( #13467 )
...
* fix #13455 ; joinPath(a,b) now honors trailing slashes in b (or a if b = "")
* fix test windows
2020-02-26 11:25:27 +01:00
Andrey Makarov
3dad130034
fix 3 minor bugs in joinPath (see #13455 ) ( #13462 ) [backport]
2020-02-23 20:22:46 +01:00
Timothee Cour
a43583f9c8
relativePath("foo", "foo") is now ".", not "" ( #13452 )
2020-02-22 09:07:53 +01:00
Timothee Cour
3a5056dc70
fix lots of bugs with parentDir, refs #8734 ( #13236 )
2020-01-23 13:39:41 +01:00
Timothee Cour
7356bc29b7
new os.isRelativeTo ( #13212 )
2020-01-23 00:45:16 +01:00
Timothee Cour
b355ef2a72
fix #13211 relativePath("foo", ".") ( #13213 )
2020-01-21 15:48:19 +01:00
Tomohiro
509f53b782
On windows, os.relativePath returns path as is when roots are different ( #12329 )
...
* On windows, os.relativePath returns path as is when roots are different
* Implement os.sameRoot without windows API
* Fix compile error when compiling lib/nimhcr.nim
* Fix compile error when compiling lib/nimhcr.nim on Windows
2019-10-07 19:57:16 +02:00
Tomohiro
64d5e25821
Fix how relativePath handle case sensitiviy ( #12312 ) [backport]
2019-10-01 09:09:59 +02:00
pgkos
296dfae8af
Fixes splitfile ( #11918 ) [bugfix]
2019-08-15 15:22:14 +02:00
Kaushal Modi
7182922622
[feature] Added os.delEnv; add delEnv support to nimscript too ( #11466 )
...
[feature] Fixes https://github.com/nim-lang/Nim/issues/11452 .
2019-06-15 11:32:26 +02:00
Kaushal Modi
2334680b3d
Use TMPDIR env var if available to get the temp dir name ( #11443 ) [bugfix]
...
Additionally, use normalizePathEnd to suffix the dir name with "/" or
"\" as appropriate for the current OS.
Fixes https://github.com/nim-lang/Nim/issues/11439 .
2019-06-10 19:59:51 +02:00
narimiran
f0be575ed1
move tests from tospaths to tos, fixes #9671
...
Also, change some of `echo`s to `doAssert`.
2019-01-23 22:04:00 +01:00
Timothee Cour
9af85fb69f
fixes #10273 execShellCmd now returns nonzero when child killed with signal + other fixes ( #10274 )
...
* s/exitStatus(...)/exitStatusLikeShell(...)/
* fix #10273 execShellCmd now returns nonzero when child exits with signal
* test case for #10249 and explanation for the bug
* fix test failure
* add tests/nim.cfg
2019-01-13 09:00:39 +01:00
alaviss
b6257f3f21
os.walkDir: correctly evaluate paths when relative = true ( #10057 ) [backport]
2018-12-21 14:12:48 +01:00
Timothee Cour
fc7df3283c
fix test failure
2018-12-19 16:11:23 -08:00
Timothee Cour
656770402c
fix #8255 numerous issues with splitFile
2018-12-19 16:11:23 -08:00
Timothee Cour
25d3539da7
[os] fix #10017 regression, fix #10025 regression ( #10018 )
...
* [os] fix #10017 regression
* [os] fix #10025 regression
2018-12-18 12:43:25 +01:00
Araq
ce9815bcf5
os.nim: use the new pathnorm.normalizePath implementation
2018-12-14 08:57:55 +01:00
Oscar Nihlgård
e5aae93bfe
Add relative parameter to walkDirRec
2018-11-26 22:08:45 +01:00
Timothee Cour
3bef851143
fix #8225 os.isHidden was buggy on posix ( #8315 )
...
* fix #8225 isHidden was broken on posix
* scope rest of tos.nim under blocks to avoid variable scope bugs
2018-10-15 00:22:34 +02:00
alaviss
dad290accb
os: use unlink() to remove file ( #9220 )
...
removeFile() behavior should now be consistant between Windows and POSIX
Fixes #9200
2018-10-09 15:37:36 +02:00
Yasuhiro Horimoto
aa8249d177
Fix #9126 : use splitPath instead of substr
2018-09-30 23:20:14 +09:00
Timothee Cour
674bd7bfad
fix wrong arch defined(osx) ( #8492 )
2018-08-02 01:19:29 +02:00
Federico Ceratto
d65429d857
Add normalizePath and tests
2018-07-06 20:21:39 +01:00
Andreas Rumpf
20950ee073
make test green for OSX
2018-07-06 11:26:36 +02:00
Oscar Nihlgård
05b447374b
Use higher time resolution when available in os.nim ( #7709 )
2018-06-04 14:56:56 +02:00
Andreas Rumpf
013e11fcc4
add copyDir stdlib test
2017-01-10 11:27:03 +01:00
Araq
7f8a02d0c6
make tos.nim green on Windows
2016-12-13 09:01:53 +01:00
Dmitry Polienko
1cd4799b01
Improve as previously discussed
...
Better name for exposed primitive function, checks for pre-existing files
2016-10-22 18:39:10 +07:00
Dmitry Polienko
45b432b901
Revert createDir signature, expose rawCreateDir
2016-10-22 17:37:28 +07:00
Dmitry Polienko
48ef6761d8
Make createDir return discardable bool
2016-10-22 12:29:03 +07:00
Joey Payne
33146a74c1
Add os tests for directory creation, iteration and deletion
2016-06-20 14:32:01 -06:00
Adam Strzelecki
e80465dacf
tests: Trim .nim files trailing whitespace
...
via OSX: find . -name '*.nim' -exec sed -i '' -E 's/[[:space:]]+$//' {} +
2015-09-04 23:04:32 +02:00
Clay Sweetser
ce5a494927
Changed tests and tools to use 'discard' statements instead of 'nil' for empty blocks.
2014-02-15 18:57:03 -05:00
Araq
20b5f31c03
new tester; all tests categorized
2014-01-13 02:10:03 +01:00