Commit Graph

1221 Commits (f7b7b5afbf419cc8ea06e1c55e21b9bb5a32cecd)

Author SHA1 Message Date
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
Doug Coleman 76580da5d5 Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183.
Fixes #209.
2011-09-29 11:28:28 -07:00
Doug Coleman e255e9f1cb Fix typo on datagram docs 2011-09-26 12:27:37 -07:00
John Benediktsson 4f42c72012 specialized-arrays: performed some cleanup.
Specifically,
    •   Created >c-array to be replacement for >T-array.
    •   Created cast-array to be generic replacement for all T-array-cast words.
    •   Created c-array@ to be generic replacement for T-array@ words.
    •   Replaced usages of <T-array> with T <c-array>
    •   Replaced usages of <direct-T-array> with T <c-direct-array>
    •   Replaced usages of >T-array with T >c-array
    •   Replaced usages of T-array-cast with T cast-array
    •   Replaced usages of malloc-T-array with T malloc-array.
    •   Removed malloc-T-array.
    •   Removed T-array-cast.
    •   Removed T-array@.
    •   Removed >T-array.

I also added (but didn't change any code to use):
    •   T c-array-type, returns T-array
    •   T c-array?, returns T-array?
    •   c-array{ T ... }, returns T-array{ ... }

Bootstraps just find on Mac OS X.  Also `load-all test-all` works for me.
2011-09-26 11:37:51 -07:00
John Benediktsson baac978767 Removing "to:" syntax from values.
Squashed commit of the following:

commit 18fef6bfa59f71dcb63b439f631c735848a9bbbb
Author: John Benediktsson <mrjbq7@gmail.com>
Date:   Mon Sep 26 11:02:26 2011 -0700

    vocabs.metadata: revert mistaken change.

commit 496b103b54034ea953882a039c08847d0eda0bb4
Author: John Benediktsson <mrjbq7@gmail.com>
Date:   Sun Sep 25 19:03:54 2011 -0700

    values: Removing "to:" syntax.
2011-09-26 11:08:26 -07:00
Doug Coleman bf2a96e9e0 Remove Windows CE from core/ basis/ and build-support/
Rename the winnt singleton to windows in core/ basis/ extra/
Rename boot images winnt -> windows
Fixes #84.
2011-09-18 23:19:06 -05:00
Doug Coleman 1b20b0c476 Make sure 0 read always returns f. Fixes issue #70.
More unit tests, fix read-until to return f f sometimes
Rename ((read-until)) to read-until-loop. Fix the stack effect declarations of (read) and handle-readln.
2011-09-09 18:51:06 -07:00
Doug Coleman 56e8ddb9cb Fix windows unit test 2011-09-07 00:35:03 -07:00
Doug Coleman 5fce2d0f27 Make "quiet" true by default. Disable quiet mode for listener, bootstrap, and deploy tool.
Move "quiet" to parser-quiet? in parser.notes. Change a few places where quiet was handle wrong.
2011-09-06 17:58:12 -07:00
Slava Pestov a8633d28c7 unix.*, io.directories.unix: remove unnecessary dependency on io.backend.unix 2011-09-01 22:31:45 -07:00
John Benediktsson 39b800907c io.files.windows: add some tests cases for UNC paths. Fixes #44. 2011-08-28 12:55:09 -07:00
John Benediktsson 3949c53343 Merge remote-tracking branch '8byte-jose/win32-unc-fix' 2011-08-28 11:46:43 -07:00
John Benediktsson 9f34c9c676 Spelling fixes to documentation. 2011-08-26 16:20:31 -07:00
Doug Coleman 4d38a02316 Revert "Try to read instead of write from a TCP connection. This gives 'Connection refused' instead of 'Broken pipe', which is much more useful."
This reverts commit 088c367b77.
2011-08-26 13:55:52 -05:00
Doug Coleman b7314a68d8 Try to read instead of write from a TCP connection. This gives 'Connection refused' instead of 'Broken pipe', which is much more useful. 2011-08-26 11:03:01 -05:00
Slava Pestov ce9b311b10 io.pipes: add unit test for Linux x86-64 epoll() problem 2011-08-25 21:37:26 -07:00
Slava Pestov dfc7326413 io.thread: if the I/O thread throws an error, call out to the fep immediately instead of going through the normal thread error mechanism, which by that point won't work anyway 2011-08-25 21:36:57 -07:00
John Benediktsson d7d1b6fea1 io.sockets: check ipv4 and ipv6 for valid address strings. 2011-08-19 14:19:09 -07:00
Erik Charlebois 662bc3b07b Fix bugs in unix ffi usage 2011-05-23 23:36:14 -04:00
Erik Charlebois 013209bd17 epoll working on linux 2011-05-23 23:36:13 -04:00
John Benediktsson 013097e617 io.launcher: fix launcher examples. 2011-04-17 18:12:23 -07:00
Anton Gorenko 090254d671 ui.backend.gtk: fix a bug with endless error messages in a console after closing of UI;
io.thread: start-io-thread always starts io-thread even if it was stopped, fix line endings;
2011-04-01 22:06:07 +06:00
Slava Pestov db29973ccb io.sockets: fix unit test on Windows 2011-02-27 14:38:47 -08:00
Slava Pestov c0de0ac15f Merge branch 'doc-fixes' of git://github.com/keitahaga/factor 2011-02-25 22:37:39 -08:00
Slava Pestov 266c6d32e7 io.sockets: add scope-id to ipv6 addrspecs, fixing a problem with connecting to localhost on Mac OS X (and other systems) where localhost is associated with a link-local address such as fe80::1 2011-02-25 22:33:28 -08:00
Slava Pestov 78a85d0b05 io.sockets.secure.unix: update unit test for close-notify change 2011-02-25 21:05:56 -08:00
Keita Haga e374d55d09 io.encodings.8-bit.latin9, io.encodings.shift-jis: fix typo in docs. offical => official 2011-02-21 02:53:35 +09:00
Keita Haga 93b3cc0a93 io.styles: remove a nl in usage example of background 2011-02-20 06:11:31 +09:00
Keita Haga 2696c59aab io.sockets: fix a few typos in docs 2011-02-06 17:40:03 +09:00
Slava Pestov 4270c6cce6 io.sockets.secure.unix: fix socket shutdown handling to make http.client work with https://www.google.com 2011-01-31 23:45:45 -05:00
Slava Pestov cc06c4e51f openssl: remove cacert.pem, since its useless and we should call SSL_CTX_set_default_verify_paths instead 2011-01-29 23:26:29 -05:00
8byte-jose b3f0ff51aa fixed handling of UNC paths under windows 2011-01-25 13:32:21 +01:00
Keita Haga 23ec49a109 io.servers: fix a couple of typos in docs 2011-01-14 19:47:52 +09:00
Keita Haga a093c454c1 io.launcher: fix typo in docs 2011-01-08 23:10:35 +09:00
Keita Haga d5fe4fecc1 remove useless whitespace in several documentation 2011-01-05 15:55:34 +09:00
Slava Pestov 13d6c6a698 Update code for alien.data changes 2010-12-26 02:08:57 -06: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
Keita Haga 7a9591674c io.directories.search: fix a couple of examples 2010-12-23 05:15:20 +09:00
Keita Haga c3189054d1 io.files.info.unix, sequences: few $examples and $unchecked-examples turn into $codes 2010-12-23 04:05:06 +09:00
Keita Haga 08656749bf io.styles: add using to all examples plus fix formatting in some examples 2010-12-04 21:25:12 +09:00
Keita Haga 04aeadbb15 io.files.info.unix: fix IN: in docs 2010-11-18 04:29:36 +09:00
Keita Haga 08cb8a4848 io.files.info.unix: fix a couple of set-file-permissions examples 2010-11-18 03:46:02 +09:00
Keita Haga ae7b44e5eb io.directories: fix typo in example 2010-11-14 17:18:56 +09:00
Slava Pestov c4a83d2d0b io.servers: don't try to open SSL sockets if they're not supported on the current platform (ie, Windows) 2010-11-13 18:32:10 -06:00
Doug Coleman 4ca9bd0bba Remove usages of <void*> and *void* 2010-10-25 13:22:50 -05:00
Doug Coleman 1f57dc326e Remove many uses of <int> and *int etc 2010-10-25 12:49:12 -05:00
Slava Pestov b10897334c io.sockets.secure: add ssl-supported? hook, and make furnace.auth and twitter vocabs use it. This makes furnace work on Windows 2010-10-24 15:54:19 -07:00
Slava Pestov fbbaef70c4 Remove stream-peek and stream-peek1, re-implement dns vocab to not need this abstraction 2010-10-08 18:55:13 -07:00
Doug Coleman 7367ff19c4 Add a method on url-addr for local ports
Remove test for code that got reverted
2010-10-08 08:42:19 -07:00
Doug Coleman d462355035 Implement and document stream-peek 2010-10-08 06:34:19 -07:00
Doug Coleman f7af445625 Add stream-peek1 and remove it from images.gif and dns. Add sequence-peek but not stream-peek (yet?) 2010-10-08 06:34:17 -07:00
Slava Pestov 89ae9d9638 Various cleanups for Doug's recent socket addressing change
- urls: now have a host/port slots again, add a new set-url-addr word
- http.server: fix host header parsing for IPv6 addresses
2010-10-06 23:00:38 -07:00
Doug Coleman 32f447d796 Since ip4/ip6 services can run on different ports, we must include which version of ip we're using instead of just a port. Make URL objects store an inet4/i nt6/inet object with host/port slots instead of storing host/port slots separately. Stricter error checking on inet4/inet6 tuple creation. Update lots of code related to the URL change. 2010-10-05 09:56:29 -05:00
Doug Coleman e48c28359e Fix io.streams.throwing word and write docs for it. Fix typo in io.streams.limited docs 2010-09-27 20:20:48 -05:00
Doug Coleman 0bbfa64b24 Squashed commit of the following:
commit 54b3e19c7407707fabddd53872559c58cd5143d2
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Mon Sep 27 19:10:15 2010 -0500

    Fix typo

commit 3207516dc93e0e1edc9f119efcc79f4484eab244
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Mon Sep 27 19:08:30 2010 -0500

    Rename io.servers.connection to io.servers
2010-09-27 19:12:33 -05:00
Doug Coleman 4ade3b6a5c Clean up io.servers.connection >insecure word 2010-09-27 19:00:54 -05:00
Doug Coleman b03268f047 Make secure-context persist longer than a millisecond when a server gets started. 2010-09-27 18:57:14 -05:00
Slava Pestov 2fb36ea1c5 io.sockets: minor cleanup 2010-09-24 01:17:33 -07:00
Doug Coleman a2a598546f Only return ipv4 addresses for binding to on linux. 2010-09-23 13:20:18 -05:00
Doug Coleman 8d3cb0d596 Remove test for icmp sockets since extra/ping implicitly tests this 2010-09-22 00:55:18 -05:00
Doug Coleman 2c42e616b4 Implement a raw port. Make ping only run on Windows and Mac because the other platforms require root privs. 2010-09-21 22:00:18 -05:00
Doug Coleman a60afaf0ec Use SOCK_RAW for ICMP sockets on windows 2010-09-21 20:03:48 -05:00
Doug Coleman 7b0a50e7d2 Squashed commit of the following:
commit 90deaafa9db083ecdb9e0e30ad3694317e616399
Merge: f392dfd 32cf7bb
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Tue Sep 21 00:33:37 2010 -0500

    Merge branch 'icmp-ping' of git://github.com/mrjbq7/factor into icmp-ping2

commit 32cf7bb0e0b876309bce248944dfeca243f02594
Author: John Benediktsson <mrjbq7@gmail.com>
Date:   Fri Sep 10 14:01:47 2010 -0700

    ping: Adding a simple IPv4 ping implementation.

commit da0c5ce7acf1407256c3ac2b98ac5b68858878c1
Author: John Benediktsson <mrjbq7@gmail.com>
Date:   Fri Sep 10 14:01:15 2010 -0700

    io.sockets.icmp: Adding ICMP support.

commit 60fdf7e7d995d63c11be87e8e1398f7bdd593833
Author: John Benediktsson <mrjbq7@gmail.com>
Date:   Fri Sep 10 14:00:48 2010 -0700

    io.sockets: Adding protocol support for sockets.

commit 2f130f1f9e0e2ea44d798beaad244a9c33b0d86a
Author: John Benediktsson <mrjbq7@gmail.com>
Date:   Fri Sep 10 14:00:28 2010 -0700

    Adding getprotobyname().
2010-09-21 11:15:33 -05:00
Doug Coleman b98f4c13ce Let the server start before trying to clean it up 2010-09-21 00:20:44 -05:00
Doug Coleman 140aa80379 Don't try to use ipv6 addresses if an OS can't bind to them 2010-09-20 23:53:18 -05:00
Slava Pestov 3bd23f2414 io.directories.hierarchy: add some tests 2010-09-20 21:36:22 -07:00
Doug Coleman 8aa22487da Fix io.servers -- if it doesn't start up, don't throw an error when it's stopped. IPV6 must be enabled on windows with the command: ipv6 install (the build machines need this before we get clean windows builds). Fix up winsock error handling. 2010-09-19 21:35:52 -05:00
Doug Coleman fd502e2c85 Fix using list 2010-09-19 19:14:56 -05:00
Doug Coleman f791c8c5d2 Squashed commit of the following:
commit 197dbe9a6733775ac0ea19b3da4bd4dc3c85418c
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 19:01:38 2010 -0500

    Fix bootstrap, move privileges to windows.privileges

commit 521c622f8afb15bf42d263c738cb990560dc29cb
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 18:26:30 2010 -0500

    Hopefully fix bootstrap

commit eb3f22928b59758b9505430034044b5b94705da2
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 18:19:05 2010 -0500

    Remove wince from factor codebase

commit 619d6c99415f46208a7ede6a04b0ccda46b15360
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 18 16:07:46 2010 -0500

    Remove Windows CE from vm/
2010-09-19 19:13:25 -05:00
Doug Coleman 87ec88ff6c Fix http tests and io.server.connection docs 2010-09-19 15:47:25 -05:00
Doug Coleman aa8c12a84b Squashed commit of the following:
commit 8a15381d30508b8f36a9e36dc3a0afc3c962c853
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sat Sep 11 14:32:30 2010 -0500

    Squash threaded-server branch
2010-09-19 13:38:02 -05:00
Doug Coleman 4a018ebdfc Squashed commit of the following:
commit fbec7374aa3f99d8f76499183920e537dc7f38b1
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sun Sep 19 13:28:47 2010 -0500

    Remove random.combinators vocab

commit 74f91aca4a961879ec57ef56114eadd5e9f6dcee
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sun Sep 19 13:28:22 2010 -0500

    Rename random.combinators to combinators.random.  Add random.data vocabulary

commit f616c3f4ceac48ac6f48836040130ba4f090c47f
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sun Sep 19 13:14:01 2010 -0500

    Add execute-random combinator, docs, and respace a few things..

commit 1ce17507e3767c78e14ecf5e27e542168a47b2a2
Merge: db359d6 b53fc83
Author: Doug Coleman <doug.coleman@gmail.com>
Date:   Sun Sep 19 12:55:53 2010 -0500

    Merge branch 'random-combinators' of git://github.com/jonenst/factor into random-combinators

commit b53fc830f3319e9bdfce02674ea480f69e1453db
Author: Jon Harper <jon.harper87@gmail.com>
Date:   Mon Aug 23 17:16:21 2010 +0200

    Random combinators vocabulary
2010-09-19 13:29:43 -05:00
Doug Coleman 7122f9fccb Make sure io.backend.windows loads the implementations for the generics it defines. Make windows.handles not depend on io.timeouts. Fix typo in win32-file-attributes. Fix bug in null-output word. Clean up error checking code. 2010-09-17 14:19:10 -05:00
Doug Coleman 06e3fc84a6 Trim using lists for io.files.windows 2010-09-16 16:10:38 -05:00
Doug Coleman 5c8316be07 Move win32-handle to windows.handles and update using lists to avoid pulling in the io backend where not necessary 2010-09-16 15:40:36 -05:00
Slava Pestov c447ca5427 io.backend.unix: remove dead code from bsd backend, fix select code 2010-09-15 21:56:42 -07:00
Slava Pestov e5b30b7518 io: minor doc fixes throughout 2010-09-11 18:43:47 -07:00
Slava Pestov f3b264522c io.directories: move directory-tree-files words to io.directories.hierarchy, where all the other *-tree stuff is 2010-09-11 18:43:47 -07:00
Doug Coleman dc4970e234 Fix file uploads by using unlimit-stream for now. Will compare solution to with-combinators tomorrow. 2010-09-08 02:50:25 -05:00
Slava Pestov afbf4e9cb2 io.sockets: make addrspecs immutable 2010-09-04 18:49:27 -07:00
Slava Pestov aa2f5ae13f io.sockets: f 0 <inet4> should work 2010-09-04 15:41:12 -07:00
Slava Pestov 4fc792629e io.sockets: clean up resolve-host 2010-09-04 14:42:05 -07:00
Slava Pestov 3d461046f0 io.sockets: factor out ipv4 and ipv6 classes for John Benediktsson's upcoming ICMP work) 2010-09-04 14:19:20 -07:00
Slava Pestov 29028d8aea io.launcher.unix: clumsy fix for a race condition 2010-09-04 12:00:23 -07:00
Slava Pestov 7374d868e7 Change how SIGPIPE is ignored, and add a unit test to io.launcher.unix to ensure that this ignoredness is not inherited by child processes 2010-09-02 22:11:45 -07:00
Slava Pestov b88b2c9b81 io.monitors.linux: fix typo 2010-08-24 23:01:37 -04:00
Slava Pestov b7182432f3 io.monitors.recursive: fix typo 2010-08-23 21:54:59 -07:00
Slava Pestov 76d2b83685 Add unless-disposed combinator to clean up some repetition, and fix bogus error reported from timer thread if an I/O operation with a set timeout fails on Windows 2010-08-23 21:12:24 -05:00
Slava Pestov cbb9ff61fb io.sockets.windows: win32-socket instances were not being unregistered from global disposables hash; also check return value of closesocket 2010-08-15 00:05:27 -05:00
Philipp Brüschweiler 352e263de6 io.files.info.unix.linux: sometimes /etc/mtab isn't properly formatted (found on arch linux) 2010-08-01 14:00:03 +02:00
Slava Pestov 6e3dee43d4 io.ports: calling '0 read' now returns an empty sequence without blocking (reported by Brennan Cheung) 2010-07-30 15:58:33 -04:00
Slava Pestov f7bd876cae io.files.unix: fix tests for recent calendar.unix vocab changes 2010-07-21 00:23:35 -04:00
Slava Pestov 446ee6896d alien.data: remove second quotation parameter from with-out-parameters, now all values are copied properly and calling 'clone' on structs in this quotation is not necessary 2010-07-16 17:32:05 -04:00
Joe Groff b04bc8640f io.streams.throwing: add test file 2010-07-09 23:36:40 -07:00
Joe Groff b1c557a825 io.streams.throwing: rename throws-on-eof -> stream-throw-on-eof and input-throws-on-eof -> throw-on-eof and change stream-throw-on-eof to leave the rigged stream on the stack, to better follow convention of other io words 2010-07-09 18:10:51 -07:00
Joe Groff fb4cbd87d4 io.streams.limited: scrape out last vestiges of unlimiting 2010-07-09 14:56:54 -07:00
Joe Groff 90b962bbd3 io.streams.throwing: implement read-until 2010-07-09 14:26:01 -07:00
Joe Groff 99db070c9e io.streams.throwing: implement tell and seek 2010-07-09 14:08:54 -07:00
Joe Groff 0bdc1514fd io.streams.limited: remove unlimit* 2010-07-09 13:52:15 -07:00
Doug Coleman 2ca509a8fe Split off io.streams.throwing from io.streams.limited and update usages of limited streams 2010-07-09 13:32:09 -05:00
Slava Pestov 01d67104f6 io.ports: fix stream-seek with seek-relative seek type (reported by Joe Groff) 2010-07-07 17:32:30 -04:00