John Benediktsson
e50d1375a1
io: need to use libc for OS X?
2014-04-03 21:43:37 -07:00
Doug Coleman
a02e8e3cda
io.sockets.secure.openssl: Fix using list.
2014-04-02 23:11:52 -05:00
Björn Lindqvist
ee19a97869
io.sockets.windows: wrap ioctlsocket and related constants to enable
...
setting sockets in non-blocking mode
2014-04-02 16:50:20 -05:00
Björn Lindqvist
f8387a08ae
Merge:
...
io.sockets.secure.windows: use non-blocking sockets to prevent
SSL_connect from blocking
On Windows, SSL_connect may hang forever if the server doesn't send any
data. To counteract that we temporarily set the socket non-blocking and
then call select in the wait-for-fd method.
Conflicts:
basis/io/sockets/secure/openssl/openssl-tests.factor
2014-04-02 12:16:51 -05:00
Björn Lindqvist
4d8f3e8a78
io.sockets.secure.openssl: do-ssl-connect needs to call wait-for-fd
2014-04-02 12:13:21 -05:00
Björn Lindqvist
eaca04de3b
libc: several vocabs now need to depend on libc
2014-04-02 12:13:00 -05:00
Björn Lindqvist
753b2f0177
io.files: make wait-for-fd generic and dispatch depending on backend
...
do-ssl-accept need to call wait-for-fd so it needs to be generic. On
windows it's a noop but on unix it will wait for the fd.
2014-04-02 12:12:49 -05:00
Björn Lindqvist
6421af3401
io.sockets.secure.*: unification of lots of platform-independent code
...
Code that is duplicated in the backends moved to
io.sockets.secure.openssl. The wait-for-fd verb used by do-ssl-accept
doesn't have any equivalent on Windows so that needs to be
implemented.
2014-04-02 12:12:37 -05:00
Björn Lindqvist
5f38df7741
io.sockets.secure.windows: reading and writing from ssl sockets
...
Unified the drain and refill generics and put their definition in
io.files. They are now used by both the windows and unix ssl backend
for io. Windows ssl kind of works now, but the error cases are not
implemented correctly.
2014-04-02 12:12:14 -05:00
Björn Lindqvist
8c5ceb8b0c
io.files.windows: new generic words drain and refill, like in io.backend.unix
...
The purpose of these words is to abstract out the pushing of the bytes
to the ports so that you can insert the ssl layer in between. Exactly
like how drain and refill are specialized on ssl-handle in
io.sockets.secure.unix.
2014-04-02 12:12:04 -05:00
Björn Lindqvist
6ed3a09b5d
io.sockets.secure: new hook variable ssl-certificate-verification-supported?
...
t if the backend is able to verify certificates, f
otherwise. Currently certificate validation isn't implemented on Windows
2014-04-02 12:11:53 -05:00
John Benediktsson
03b7e67547
fix some help-lint errors.
2014-03-12 20:08:15 -07:00
John Benediktsson
0a2fef0775
io.sockets: change protocol-port to handle ``f`` on all platforms.
2014-03-12 07:27:39 -07:00
John Benediktsson
0a2e632d4c
io.standard-paths.unix: fix tests on arch linux.
2014-03-11 11:37:00 -07:00
John Benediktsson
b039b6a542
io.streams.string: cleanup tests.
2014-03-11 11:25:53 -07:00
John Benediktsson
ee040a242c
io.streams: some more test cases for sequence-read-until.
2014-03-10 15:29:11 -07:00
Björn Lindqvist
39b13b6736
io.sockets.secure.openssl: guard against SSL_get_peer_certificate returning null
2014-03-06 18:41:37 +01:00
John Benediktsson
332fc7bc1a
io.files.info.unix.linux: cleanup stack effects.
2014-02-27 15:26:38 -08:00
John Benediktsson
bf1f4e9aa2
io.streams.sequence: cleanup by moving type checks.
2014-02-25 09:32:47 -08:00
John Benediktsson
f243b31ddd
io.streams.sequence: rename (stream-seek) to sequence-seek.
2014-02-25 07:56:28 -08:00
John Benediktsson
ee9ead89f8
io.streams.sequence: bounds check sequence-read-until.
2014-02-25 07:52:07 -08:00
John Benediktsson
0b04d3f279
io.streams.string: faster M\ string-reader stream-readln.
2014-02-24 21:47:49 -08:00
John Benediktsson
2fe03b6711
io.streams.string: inline <string-writer> so with-string-writer is faster.
2014-02-10 20:46:25 -08:00
John Benediktsson
517268c18f
io.encodings.utf7: add copyright for Björn Lindqvist.
2014-01-11 08:55:54 -08:00
Björn Lindqvist
a47c41e45c
io.encodings.utf7: cleaned up vocab per review
...
1. Tuple is used to hold the decoding buffer instead of a global
2. Fixed problematic sequence type conversions.
2014-01-11 08:43:36 -08:00
Björn Lindqvist
797d73bb8c
io.encodings.utf7: documentation and metadata files
2014-01-11 08:43:36 -08:00
Björn Lindqvist
c286d91289
io.encodings.utf7: working utf7 decoding with tests
2014-01-11 08:43:36 -08:00
Björn Lindqvist
9a7a2648fd
io.encodings.utf7: decoder implementation, doesn't support utf7imap4 yet
2014-01-11 08:43:36 -08:00
Björn Lindqvist
9c90bc0c67
io.encodings.utf7: better encoding using the group-by combinator
2014-01-11 08:43:36 -08:00
Björn Lindqvist
900c670894
io.encodings.utf7: implementation of decoding for new codec utf7
2014-01-11 08:43:36 -08:00
John Benediktsson
1acf307e15
io.streams: make stream-element-type inline on string-reader and byte-reader.
2013-12-02 17:44:03 -08:00
Doug Coleman
a71e2d8060
io.sockets.secure.openssl: Fix docs.
2013-11-28 12:59:36 -06:00
John Benediktsson
473fdc0d84
io.encodings.string: faster decode by using sbufs.
2013-11-24 16:22:29 -08:00
John Benediktsson
13ec450ac8
io.encodings.string: faster for ascii and utf8.
2013-11-24 16:08:26 -08:00
John Benediktsson
0806a8ce15
io.encodings: string>byte-array-fast for when aux>> is f.
2013-11-24 13:43:00 -08:00
John Benediktsson
53592b9c7d
io.sockets.secure.windows: add platforms.txt.
2013-11-16 16:20:34 -08:00
Doug Coleman
4bcb356ba8
io.sockets.secure.openssl: libssl error is opaque, check that cert files
...
exist in Factor beforehand so we can get a nicer error message.
Add missing USE: and neaten up the list.
2013-11-16 15:59:31 -08:00
Björn Lindqvist
5f2238f7d4
io.sockets.secure.windows: secure socket implementation for windows, it works reasonably but certificate validation is not working correctly yet
2013-10-11 10:23:40 -07:00
Björn Lindqvist
729bd8a362
io.sockets.secure.openssl.tests: remove windows.winsock import and another test for subject-name
2013-10-11 10:23:40 -07:00
Björn Lindqvist
ad627a1395
openssl.libssl: on windows the X509_* family of functions is in a
...
different dll than the other functions in libssl
2013-10-11 10:23:40 -07:00
Doug Coleman
e407981e12
io.directories: Add with-resource-directory word and use it.
2013-09-24 13:13:39 -07:00
John Benediktsson
602e0aab94
io.ports: speed up stream-flush.
2013-09-18 19:27:40 -07:00
Björn Lindqvist
bc56b5099f
io.sockets, urls: move documentation for protocol-port
2013-09-16 17:31:37 -07:00
Björn Lindqvist
7c179f876c
unix.ffi, windows.winsock: wraps for servent functions
2013-09-16 17:31:37 -07:00
John Benediktsson
32b07016b0
io.sockets.secure.openssl: some style improvements.
2013-09-16 17:24:31 -07:00
Björn Lindqvist
44a1d61bd4
io.sockets.secure: common-name -> subject-name
2013-09-16 17:17:48 -07:00
Björn Lindqvist
c2fd5031e0
io.sockets.secure, io.sockets.secure.openssl: improved host name verification that takes into account a certificates subject alternative names.
2013-09-16 17:17:48 -07:00
Björn Lindqvist
f4f60b8ba3
io.sockets.secure.openssl: support for getting issuer name
2013-09-16 17:17:47 -07:00
Doug Coleman
7ed9365c00
io.monitors.recursive: Fry quotations - do not apply liberally.
2013-07-16 14:43:29 -07:00
Doug Coleman
36a4eb7ee1
io.monitors.recursive: Bug - <recursive-monitor> could fail and leak a file monitor.
...
Fix - Monitors tests were "leaking" dummy-monitors objects.
2013-07-16 14:30:38 -07: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
Doug Coleman
1136ed9c19
io.launcher: Fix bug -- if dispose fails, still call dispose on the other
...
resource.
2013-05-19 10:22:07 -07:00
Doug Coleman
7c1caacc35
io.launcher: Fix two potential bugs.
...
1) If first (pipe) succeeds but second one fails, first pipe leaks.
2) out>> dispose fails, then in>> dispose is never called and leaks.
2013-05-19 10:18:14 -07:00
Doug Coleman
c64cb2c886
io.pipes: If dispose on in>> throws, then out>> leaks.
2013-05-19 10:12:38 -07:00
Doug Coleman
19002c93a6
io.files.info: Longer names for file-info predicates.
2013-04-18 10:08:42 -07:00
Doug Coleman
345b5bb678
io.files.info: Add file? and symlink? words.
2013-04-18 07:35:47 -07:00
Doug Coleman
7a35d85f30
io.directories.search: Show directory entries instead of throwing them away.
2013-04-13 16:18:54 -07:00
Doug Coleman
84a93dd998
io.directories.search.windows: Windows8 doesn't find ProgramFiles with the
...
existing methods, find it in an os-env.
2013-04-09 12:19:06 -07:00
John Benediktsson
1718c69e56
io.files: use split instead of split*.
2013-03-31 16:04:11 -07:00
John Benediktsson
5a99bbaf1d
io.directories.unix: style fix to line up code.
2013-03-25 19:47:56 -07:00
Doug Coleman
4bb509ccdf
io.encodings.strict: Fix docs
2013-03-25 11:57:25 -07:00
Doug Coleman
efc2dedab4
io.pools: Fix load
2013-03-24 21:40:29 -07:00
Doug Coleman
f12633e73b
io.launcher.unix, unix.ffi: Reset ignored signal in process launcher. Fix SIG_DFL etc.
2013-03-24 12:38:02 -07:00
Doug Coleman
e0216808e2
io.encodings.strict: Rename
2013-03-24 10:11:18 -07:00
Doug Coleman
dc1adc942b
io.pools: Rename
2013-03-24 10:11:17 -07:00
Doug Coleman
20e14a96df
unix.statfs etc: Naming conflicts.
2013-03-23 22:38:38 -07:00
Doug Coleman
f4410e295a
io.files.info.windows: Fix file-info-tuple inheritance.
2013-03-23 19:14:28 -07:00
Doug Coleman
3b7d0681af
unix: rename C function kevent.
2013-03-23 17:44:00 -07:00
Doug Coleman
2761c45277
io.files.info: Fix unit test.
2013-03-23 17:20:00 -07:00
Doug Coleman
d2024a84e3
io.files.info: Rename file-info and file-system-info.
2013-03-23 16:43:32 -07:00
Doug Coleman
8c19602ae9
assocs: Add of and ?of. Change all the things at once! Fixes #701 .
2013-03-23 14:59:07 -07:00
Doug Coleman
f9ea61bf91
basis/extra: Update last usages of <sliced-groups> to <groups>.
2013-03-23 12:08:18 -07:00
Doug Coleman
8917ae9ad7
grouping: Remove <groups>, old <sliced-groups> is now <groups>. Fixes
2013-03-23 11:37:51 -07:00
John Benediktsson
67a2b9dc9a
io.encodings: speed up ascii and utf8 stream-read-until.
2013-03-18 13:35:22 -07:00
John Benediktsson
86b2dea8d5
io.encodings: remove duplication in decoder-readln.
2013-03-15 10:50:40 -07:00
John Benediktsson
68fed78c7d
io.encodings.strict: some fixes.
2013-03-15 07:55:20 -07:00
John Benediktsson
d11805228f
io.files.info.unix.linux: use string>csv instead.
2013-03-15 06:40:24 -07:00
Doug Coleman
ce72121c7a
basis: End <PRIVATE with PRIVATE>.
2013-03-10 22:36:57 -07:00
Doug Coleman
d7a61ae809
io.encodings.utf32: Fix unmatched <PRIVATE.
2013-03-10 22:20:59 -07:00
John Benediktsson
85d0c607b0
io.directories: fix docs for (directory-entries).
2013-03-06 17:35:53 -08:00
Doug Coleman
f4834ce51c
io.backend.unix: Nobody uses (refill), remove it.
2013-02-05 09:35:51 -08:00
John Benediktsson
83712ad87e
io.directories: defining "?delete-file".
2012-10-25 10:07:15 -07:00
Doug Coleman
2921829b79
windows: Attempt to fix circularity.
2012-10-24 19:03:25 -07:00
John Benediktsson
04e783a886
io.files.info.unix: errno EACCES should be handled separately.
2012-10-24 17:51:13 -07:00
John Benediktsson
83b40e44d2
io.files.info: make access checks throw on file-does-not-exist.
2012-10-24 17:40:00 -07:00
Doug Coleman
c458b7dcaf
io.files.info.windows: Implement file-readable?, writable?, and executable?
2012-10-24 17:29:32 -07:00
John Benediktsson
379f060636
io.files.info.unix: make sure to normalize so special paths work.
2012-10-24 17:11:35 -07:00
John Benediktsson
37bb5f6917
io.files.info: adding checks for read, write, or execute permissions.
2012-10-24 16:44:12 -07:00
John Benediktsson
013160df9a
change some "2drop 2drop" to "4drop".
2012-10-23 12:21:30 -07:00
John Benediktsson
87f55eb033
Change "3dup drop" to "2over".
2012-10-22 20:45:15 -07:00
John Benediktsson
adb3a15d21
io.launcher.unix: fix tests to use arch in file names.
2012-09-22 10:30:10 -07:00
Doug Coleman
0bdcf5173f
io.files.info: On my Windows7 box, D: is "not really there" and it kills
...
file-systems. Ignore errors instead of dying.
2012-09-16 17:23:25 -07:00
Doug Coleman
bcc86baf45
io.sockets: Minor cleanup.
2012-08-26 00:04:53 -07:00
Doug Coleman
30673f65cf
io.ports: More correct memory handling. There are still leaks in the tests...
2012-08-25 19:44:22 -07:00
Doug Coleman
27f445d505
assocs: Add sift-keys and sift-values. Remove three other implementations
...
of sift-values and use the new one.
2012-08-23 22:36:10 -07:00
John Benediktsson
8343c88f4d
io.sockets: fix stack effect names.
2012-08-02 14:49:50 -07:00
John Benediktsson
7d8d6cdd51
core-foundation.run-loop: remove reset on every iteration.
2012-08-01 16:59:33 -07:00
John Benediktsson
1b32690d22
io.backend.unix.multiplexors.run-loop: switch to "mx get-global".
2012-08-01 16:20:31 -07:00
John Benediktsson
1a3e8a2994
io.backend: fix docs to show nanoseconds instead of micros.
2012-08-01 12:08:18 -07:00
John Benediktsson
3e6e6458e5
core-foundation.run-loop: do less work, speeds up yield by 50%.
2012-08-01 10:57:58 -07:00
Doug Coleman
c448ea0e3e
io.launcher.windows.tests: dos2unixfy it
2012-07-25 23:18:15 -07:00
Doug Coleman
a4d7a76143
io.launcher: Bad usage of if-zero. Fixes #584 .
2012-07-25 23:17:46 -07:00
John Benediktsson
4e72d80256
Using "same?" in more places.
2012-07-21 10:22:44 -07:00
John Benediktsson
2398580eb8
io.sockets.secure.unix.debug: move to io.sockets.secure.debug (not unix specific).
2012-07-19 19:17:52 -07:00
John Benediktsson
1a73e79ef7
cleanup some use of with-scope.
2012-07-19 13:55:34 -07:00
Doug Coleman
1da8666a70
io.sockets.unix: Needs to still use namespaces. Clean up using lists.
2012-07-19 00:53:09 -07:00
Doug Coleman
42f4dc36b2
namespaces: Rename ``bind`` to ``with-variables``. Update a few places that called ``global [ ] with-variables`` to use ``with-global``.
2012-07-19 00:02:47 -07:00
John Benediktsson
2f7e8c0352
io.directories: fix mistaken refactor.
2012-07-17 08:39:31 -07:00
John Benediktsson
c507293d41
io.directories.hierarchy: faster directory-tree-files.
2012-07-17 08:25:53 -07:00
John Benediktsson
b519b52fa3
io.directories: cleanup and some performance improvements with move/copy.
2012-07-16 22:03:49 -07:00
John Benediktsson
2f325e4fee
using if-zero in even more places.
2012-07-16 19:38:49 -07:00
John Benediktsson
5cc30f46f5
using if-zero in more places.
2012-07-16 15:45:21 -07:00
Doug Coleman
82dd2ca3c9
utf16n: botched merge commit. oops
2012-06-21 09:04:09 -07:00
Doug Coleman
3dd30d2f49
issue #358 : rename ole32-error -> check-ole32-error
2012-06-21 08:38:02 -07:00
Doug Coleman
eccf5a82ae
io.files.info.windows: Fix file-systems word in two ways. First, don't
...
allocate 32k on the local alloc stack (which causes a 'double fault.')
Second, if the volume doesnt look up to a real path, don't make a dummy
object for that. volume
Use alien>native-string and native-string>alien wherever possible instead of
utf16n for Windows.
2012-06-21 08:32:53 -07:00
John Benediktsson
a20f12005a
io.files.temp: adding with-temp-directory and with-cache-directory.
2012-06-18 12:22:59 -07:00
Doug Coleman
3447136e2a
io.files.info.unix: When setting access or modified time alone, don't set the other time to 1970.
...
See #490 .
2012-06-01 16:03:41 -07:00
John Benediktsson
f53f6993ec
io.sockets: fix stack effect for <broadcast>.
2012-05-29 15:47:15 -07:00
John Benediktsson
2db76ac23c
io.sockets.windows: get the handle from the handle.
2012-05-29 11:20:55 -07:00
John Benediktsson
51fcae2d8b
io.sockets: adding "broadcast port", ideally would just be +broadcast+ or something, but this works.
2012-05-29 10:46:19 -07:00
Doug Coleman
3507b9bad7
classes:
...
- Allow methods to dispatch off union{ } and intersection{ } classes.
- Add not{ } anonymous-complement syntax.
- Define class-name for anonymous-union/intersection/complement and maybes, and clean up pprint.
- Change maybe: foo to maybe{ foo }
- Call sort-classes when making anonymous-union/anonymous-intersection classes so that they are canonicalized.
2012-05-03 19:45:30 -07:00
Joe Groff
8b9b8df457
io.files.temp.windows: fix up
2012-04-16 11:55:33 -07:00
Joe Groff
480545a683
io.files.temp: use OS tmp dir; add cache-directory
...
Change temp-directory to return an OS-sanctioned temporary directory instead of "resource:temp". Add a new function cache-directory to return an OS-sanctioned directory for storing staging images etc. Fixes #365 .
Windows implementation needs to be finished and tested.
2012-04-16 11:55:22 -07:00
Joe Groff
b26ddc37e8
io.encodings.iana: remove values
2011-11-29 13:22:23 -08:00
Joe Groff
255d024e51
io.sockets: remove unneeded USING: values
2011-11-29 09:46:51 -08:00
Joe Groff
1ef6fc03e6
remove values vocab
2011-11-28 21:26:33 -08: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
72de75b881
let's pretend BIN: HEX: OCT: never happened
2011-11-23 19:22:37 -08:00
Joe Groff
943596575a
use radix literals
2011-11-23 19:03:40 -08:00
Doug Coleman
067f9830ef
classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches.
2011-11-22 01:56:13 -08:00
Joe Groff
9b73ecdf70
io.monitors: kill outdated doc about kqueue on BSD
2011-11-17 16:56:34 -08:00
Doug Coleman
62f652a5a1
io.directories: fix delete-file on windows, add unit test
2011-11-12 18:28:07 -08:00
Joe Groff
1c99568492
io.sockets.windows: plug receive-from memory leak
...
Should fix #387 .
2011-11-11 17:56:04 -08:00
Slava Pestov
98d98ab04a
io.ports: clean up
2011-11-10 00:40:31 -05:00
Joe Groff
d685cb6502
io.ports: make read-step inline
2011-11-09 19:59:46 -08:00
Joe Groff
a67931b7c5
io.ports: fix bootstrap
...
Apparently can't use TYPED: or have HINTS: in the wrong place.
2011-11-09 16:32:47 -08:00
Joe Groff
9443f30b7d
io.backend.unix: hints on M\ fd refill
...
Trims some low-order dispatch overhead for #376 .
2011-11-09 16:32:47 -08:00
Joe Groff
5a3537b90a
io.files: add file-reader, file-writer mixins
...
This lets us do some trickery so that the stream-element-type propagates from <file-reader>/<file-writer>. For #376 .
2011-11-09 14:43:39 -08:00
Joe Groff
bab801b321
io.ports: make read-step TYPED:
...
Eliminates more dispatch. For #376 .
2011-11-09 14:13:41 -08:00
Joe Groff
63c48aa952
io.buffers, io.ports: trim some dispatch
...
For #376 . Still some work to do.
2011-11-09 13:31:02 -08:00
Joe Groff
feb8c6149a
io.backend: start signal thread after io-backend
...
The c-io-backend can't handle input-ports and raises an error during bootstrap.
2011-11-08 11:54:54 -08:00
Joe Groff
fc7c175c9f
new module unix.signals: app-level signal handlers
...
example:
IN: scratchpad USING: unix.ffi unix.signals ;
Loading resource:basis/unix/signals/signals.factor
IN: scratchpad [ V{ "Me not that kind of orc!" "Me busy, leave me alone!" "Work work" "Zug zug" } pop print flush ] SIGINFO add-signal-handler
IN: scratchpad load: 0.60 cmd: factor 41541 running 0.28u 0.16s
Zug zug
load: 0.71 cmd: factor 41541 running 0.28u 0.16s
Work work
load: 0.71 cmd: factor 41541 running 0.28u 0.16s
Me busy, leave me alone!
load: 0.73 cmd: factor 41541 running 0.28u 0.16s
Me not that kind of orc!
2011-11-08 10:21:49 -08:00
Joe Groff
8337b08d0d
io.backend.unix: startup hook for signal-pipe
2011-11-08 08:42:48 -08:00
Joe Groff
ed24890dce
io.backend.unix: init-signal-pipe function
...
Currently just reads off signal numbers and drops them.
2011-11-08 08:42:48 -08:00
Joe Groff
55a316248e
io.launcher.windows: update tests for prompt
2011-11-08 00:09:25 -08:00
Doug Coleman
69ffe6377a
io.backend.unix.macosx: Remove duplicate USE:
2011-11-02 17:47:15 -07:00
Joe Groff
8cf18d1a82
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07: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
Doug Coleman
c44a998ef4
Fix typo in tests
2011-11-02 09:15:32 -07:00
Doug Coleman
a647df58f6
Make editors use the new path-finding vocabulary and protocol.
...
Implement io.standard-paths on Windows.
2011-10-31 13:16:37 -07:00
Joe Groff
bf0c7eaa22
io.encodings.string: make binary decode/encode nop
...
Fixes #319 .
2011-10-31 11:07:44 -07:00
Doug Coleman
ada631c202
Add core-foundation.launch-services for finding the path of a bundle. Add a new standard-paths vocabulary for finding files.
2011-10-30 16:11:18 -07:00
Doug Coleman
ff27f2c3f7
Change order or articles in io.launcher.
2011-10-29 15:13:45 -07:00
Doug Coleman
eb7fd4a69b
Add options to set the child process group id or session for Unix. This fixes part of #307 .
2011-10-29 02:47:10 -07:00
Slava Pestov
5b69026f59
io.launcher: change kill-process to also close the pipe, if there is one, so that try-output-process can timeout even if the process spawns a subprocess which inherits the pipe. This fixes part of #307
2011-10-28 21:53:25 -07:00
Doug Coleman
4ebe5218c7
Update Windows for word renames, fix lint errors
2011-10-24 21:50:02 -07:00
Doug Coleman
51c033a1f6
Fix all failures in the linux64 build email
2011-10-24 19:33:09 -07:00
Doug Coleman
f9257959fd
Rename class to class-of
2011-10-24 06:47:42 -05:00
John Benediktsson
5a943b32c4
Remove stack effects from HELP: declarations.
2011-10-20 19:36:11 -07:00
John Benediktsson
fb2aab3545
Remove unused words. Fixes #132 .
2011-10-19 11:01:16 -07:00
Doug Coleman
3507a0cc4b
Don't use exception handling for handle>file-size
2011-10-19 10:15:09 -07:00
Doug Coleman
55bb863704
Create attributes>> accessor in io.files.windows
2011-10-19 03:14:19 -07:00
Doug Coleman
b58688f87d
Add throw-win32-error, use it in (delete-file)
2011-10-19 02:51:36 -07:00
Doug Coleman
5608178389
When deleting a file, if it fails with "Access is denied" then set the file
...
attributes to normal and try again. Some files in the .git directory are set
to read-only, preventing the build machines from deleting old builds.
2011-10-19 02:28:45 -07:00
Doug Coleman
55790cc6e4
Check if streams are seekable in Windows
2011-10-19 01:16:53 -07:00
Joe Groff
e40453ebee
io.streams.limited: missed INSTANCE: input-stream
2011-10-18 21:27:08 -07:00
Joe Groff
13b17fb84a
io: input-stream and output-stream mixins
2011-10-18 16:25:09 -07:00
Joe Groff
9b2634fbd7
io.files.windows: fix can-seek? and length
2011-10-18 12:42:53 -07:00
Doug Coleman
5c694767cd
Report which file doesn't get deleted on Windows.
2011-10-18 00:59:57 -07:00
Doug Coleman
24a6895436
io.sockets.windows - Add a using, output count to fix compile error. Not bad for having no Windows box.
2011-10-17 23:28:22 -07:00
Joe Groff
90e1002349
io.sockets: rename (receive) to (receive-unsafe)
2011-10-17 21:23:37 -07:00
Joe Groff
9a812cc5c9
io.ports: lift common methods onto buffered-port
2011-10-17 21:23:37 -07:00
Joe Groff
67cccc63b3
formatting
2011-10-17 21:23:36 -07:00
Joe Groff
68621c4d79
io.sockets.windows: recv to byte-array via malloc
...
WSARecvFrom on Windows does its work asynchronously, so the buffer cannot be in the managed heap during the extent of the operation.
2011-10-17 21:23:36 -07:00
Joe Groff
8fc0be3c2f
io.sockets: remove unix.ffi inserted by auto-use
2011-10-17 21:23:36 -07:00
Joe Groff
5d0ff43613
io.sockets: receive directly into byte array
2011-10-17 21:23:11 -07:00
Joe Groff
20e49c273f
io.sockets: receive-unsafe and receive-into
...
Analogous to read-unsafe/read-into for streams (and thereby TCP sockets), provide receive-unsafe and receive-into words for datagram sockets that receive into a caller-supplied buffer.
2011-10-17 21:23:11 -07:00
Joe Groff
e426512534
more stream-seekable? and stream-length methods
...
- limited-streams and throw-on-eof-streams
- string-readers and byte-readers
2011-10-17 21:23:09 -07:00
Joe Groff
863ab575e3
io.ports: stream-seekable? and stream-length
...
io.files.windows, io.backend.unix: platform-specific backends for those methods
2011-10-17 21:23:08 -07:00
Joe Groff
09f55f82fa
clean up forwarding stream-read-partial-unsafe
...
Now that "io" provides a method on object for stream-read-partial-unsafe that forwards to stream-read-unsafe, individual stream class that don't implement partial reads don't need to provide such a method themselves.
2011-10-17 21:23:06 -07:00
Joe Groff
6f12322bda
kill noncopying-reader mixin, stream-read generic
...
Now that all streams have been updated to implement the stream-read-unsafe protocol, take out the noncopying-reader shim. Turn stream-read and stream-read-partial into plain functions over the -unsafe generics.
2011-10-17 21:23:05 -07:00
Joe Groff
5c945595ee
io.encodings.string: faster decode and encode
...
stream-contents is apparently way slow for decoders. Write decode out more directly as a read1/push loop so it's faster. encode isn't quite as bad, but we can still get a 25% speed improvement by writing to an appropriately sized byte-vector.
2011-10-17 21:23:02 -07:00
Joe Groff
055196d4b7
io.streams.(limited,throwing): read-unsafe methods
2011-10-17 21:23:00 -07:00
Joe Groff
01419b3e6b
io.streams.null: read-unsafe methods
2011-10-17 21:23:00 -07:00
Joe Groff
a3b15543e1
io.ports: implement read-unsafe operations
2011-10-17 21:22:59 -07:00
Joe Groff
7e9dbde99f
io.buffers: factor out buffer-read-unsafe word
...
buffer-read-unsafe returns a length and a pointer into the buffer instead of a copy.
2011-10-17 21:22:59 -07:00
Joe Groff
d5f4b6f155
io.streams.sequence: change to provide read-unsafe
...
Change io.streams.sequence and its children io.streams.byte-array and io.streams.string to implement the -unsafe protocol and mixin noncopying-reader.
2011-10-17 21:22:59 -07:00
John Benediktsson
f20e5df501
io.files.info.unix.linux: fix more M: stack effects.
2011-10-13 17:55:30 -07:00
John Benediktsson
2d8e7c77e8
io.files.info.unix.linux: fix M: stack effect.
2011-10-13 17:38:30 -07:00
John Benediktsson
1987deb359
Fix M: stack effects.
2011-10-13 16:41:17 -07:00
John Benediktsson
24232cb095
io.crlf: add a word that reads an optional CR.
2011-10-12 12:36:54 -07:00
Doug Coleman
7228c2df2c
stream-element-type on output-ports was broken -- it looked for a stream>> slot but no such slot exists. add some unit tests
2011-10-12 01:05:01 -07:00
Doug Coleman
c74402dad9
Fix using list because I'm dumb for developing Windows changes from a Mac.
2011-10-11 13:33:44 -07:00
Doug Coleman
63fa01fd4f
Proper double-quote and backslash escaping for windows command line arguments. Fixes #245 .
2011-10-11 12:21:04 -07:00
Doug Coleman
871dfb9a3a
On Windows, escape command line arguments with double quotes with a backslash: " -> \". Fixes #245 .
2011-10-10 22:24:23 -07:00
Doug Coleman
044a03dc34
On Windows, the overlapped structure high bits were always zero, so reading through a file > 4gb would loop forever.
2011-10-07 15:04:00 -07:00
Doug Coleman
2402345794
Add examples to encode/decode docs.
2011-10-06 13:21:18 -07:00
Slava Pestov
dabbe35bd9
concurrency.mailboxes: linked-thread's error reporting should still work even when debugger.threads is not loaded. This addresses part of #95
2011-10-03 00:24:37 -07:00