Benjamin Pollack
7184771c31
io.directories: improve file moving words
...
move-file previously had inconsistent behavior on Windows and unixes.
This unifies the behavior to the common case (just get 'er done), while
also introducing an obviously named word, move-file-atomically, to
handle the case where you need an atomic file primitive.
Fixes #1772
2017-01-06 15:43:34 -08:00
Björn Lindqvist
6a76bf9084
io.directories.unix: normalize-path doesn't need to be called
...
It is already called by the words copy-file delegates to.
2016-06-15 01:25:53 +02:00
Björn Lindqvist
dbcfc178ff
io.directories.unix,environment.unix: better to use
...
native-string-encoding over hardcoding utf8
2015-10-01 15:52:51 +02:00
John Benediktsson
7badef25ce
libc: reduce code duplication.
2014-11-21 10:19:12 -08:00
John Benediktsson
39093727b1
libc: rename (io-error) to throw-errno.
2014-11-21 09:29:45 -08:00
Doug Coleman
be232dac9b
io.backend: Remove duplicate definition of file-mode. Add mkdir-mode using non-magic symbols. Cleanup imports.
2014-10-24 17:16:40 -07:00
John Benediktsson
4ca5b2ccb3
Revert "unix.ffi: be more explicit about dirent64."
...
This reverts commit edf456149330d44995b1c8bdf61a1c5d2617ed9c.
2014-04-29 14:02:30 -07:00
John Benediktsson
5dd26a9066
unix.ffi: be more explicit about dirent64.
2014-04-29 13:54:27 -07:00
John Benediktsson
09dec78603
io.directories.unix.linux: fix using.
2014-04-29 13:38:27 -07:00
John Benediktsson
26ff963758
io.directories: faster directory-entries by caching dirent structs.
2014-04-29 13:22:56 -07:00
Björn Lindqvist
eaca04de3b
libc: several vocabs now need to depend on libc
2014-04-02 12:13:00 -05:00
Doug Coleman
ec1ecbe549
io.directories.unix: If you mount a .iso, all the file types are +unknown+ according to directory-files.
...
Fall back to file-info on +unknown+ file types and use with-directory in with-unix-directory so the paths are correct for file-info.
Fixes #911 .
2013-07-11 09:46:26 -07:00
John Benediktsson
5a99bbaf1d
io.directories.unix: style fix to line up code.
2013-03-25 19:47:56 -07:00
John Benediktsson
2f325e4fee
using if-zero in even more places.
2012-07-16 19:38:49 -07:00
Joe Groff
25ec33dc10
io.directories.unix: remove redundant using
2011-11-28 20:36:46 -08:00
Joe Groff
4c0d73da3c
io.files.info: fix circularity
...
Remove the undocumented and redundant "copy-file-and-info" word, since "copy-file" does the same thing, and the circular dependency on "io.directories" was causing some deploys to fail
2011-11-28 19:37:01 -08:00
Joe Groff
7754ab2c06
io.directories.unix: make copy-file copy perms
...
Like the docs claim it does
2011-11-27 12:37:54 -08:00
Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Doug Coleman
94db86a6db
Make "foo.private" require load foo instead.
...
Move require from vocabs.loader to vocabs. Update everything.
Fixes #201 .
2011-11-02 11:50:03 -07:00
Slava Pestov
a8633d28c7
unix.*, io.directories.unix: remove unnecessary dependency on io.backend.unix
2011-09-01 22:31:45 -07:00
Erik Charlebois
662bc3b07b
Fix bugs in unix ffi usage
2011-05-23 23:36:14 -04:00
Slava Pestov
75560699ea
Move <ref>, deref and little-endian? from alien.c-types to alien.data, remove <c-object>
2010-12-25 16:55:36 -08:00
Doug Coleman
4ca9bd0bba
Remove usages of <void*> and *void*
2010-10-25 13:22:50 -05:00
Doug Coleman
026499e64f
Use flags{ instead of flags all over the place
2010-04-01 14:44:03 -05:00
Slava Pestov
95bfc8a240
vocabs.metadata: replace unportable tag with a platforms.txt file for more fine-grained control. Rename unportable tag to untested for remaining cases
2010-02-20 13:30:49 +13:00
Slava Pestov
4893ebf183
Small cleanups
2010-02-16 04:04:09 +13:00
Doug Coleman
7c40fc1a36
unix-system-call io-error -> unix-system-call drop
...
make unix.ffi, unix.ffi.linux unportable
fix spacing in io.cpp before refactoring
2010-01-23 09:07:35 -06:00
Doug Coleman
3c09c7052c
Fix using
2010-01-22 12:59:33 -06:00
Doug Coleman
8d952277a2
Handle EINTR in a lot of cases where it wasn't handled before. Split off unix into unix.ffi and unix.
2010-01-22 12:59:24 -06:00
Doug Coleman
07fcb43a06
Make unix-system-call retry the call immediately upon hitting EINTR. Use unix-system-call wherever EAGAIN or EINPROGRESS are not handled. Handle EINTR if connect returns it.
2010-01-22 12:59:17 -06:00
Doug Coleman
d8be0561fb
make a struct for dirents on linux, not a <c-object>
2009-08-30 22:49:35 -05:00
Doug Coleman
14973eacb5
update dirent for structs
2009-08-30 22:11:42 -05:00
Joe Groff
a6c8e91f88
fix directory-entries so we can bootstrap again
2009-08-25 23:50:27 -05:00
Doug Coleman
0ef5826b86
remove the rest of the unportable fields from dirent for now
2009-05-11 22:03:07 -05:00
Doug Coleman
e3a3aea5de
d_off is missing on macosx, remove for now
2009-05-11 21:56:09 -05:00
erg
3bf8e41eef
fix bootstrap errors, add missing files
2009-05-07 16:53:32 -05:00
erg
8c19ab04c9
use open64 instead of open on linux. use stat64 instead of stat on
...
linux. add word to report if a file is sparse
2009-05-07 16:41:37 -05:00
Slava Pestov
cd53c2bd37
produce and produce-as: don't need third quotation either
2009-02-28 15:31:34 -06:00
Slava Pestov
2fe934ba9d
Remove some code duplication in io.directories.unix
2009-02-15 20:36:04 -06:00
Slava Pestov
034022ec7f
Add meta-data
2008-12-16 00:43:32 -06:00
Slava Pestov
59a5e554d4
Split up io.directories further, move file types to io.files.types. Bunny demo no longer pulls in file-info and file-system-info code, reducing image size by 35kb
2008-12-15 00:01:06 -06:00
Slava Pestov
dccbb84629
Updating unit tests for I/O re-organization
2008-12-14 21:21:44 -06:00
Slava Pestov
50e214c152
io.files split up and general refactoring work in progress
2008-12-14 20:03:00 -06:00