Commit Graph

1436 Commits (revert-2214-feature-commandline-documentation)

Author SHA1 Message Date
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
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
Slava Pestov a7384d5de6 io.ports: fix stream-tell implementation 2010-07-07 02:27:34 -04:00
Doug Coleman e18bde069e Clearer <pipes> word 2010-06-17 11:02:47 -05:00
Doug Coleman d487a4b045 Merge branch 'master' of http://factorcode.org/git/factor 2010-06-16 16:48:04 -05:00
Sascha Matzke c746b68c28 added doc for with-local-address 2010-06-16 22:54:53 +02:00
Doug Coleman 9840e5e147 Add a combinator to make a unique directory, set that to the current and temp directories, and then delete the directory when done. Useful when working with apps that need to write intermediate files to the current directory 2010-06-13 19:34:17 -05:00
Doug Coleman a6f0abb9a2 Rename alarms -> timers 2010-06-10 16:39:13 -05:00
Slava Pestov 8fd6a24edb ui.backend.cocoa: factor out stop-io-thread word for use by upcoming Gtk UI backend 2010-05-29 04:27:54 -04:00
Slava Pestov 66fcab3721 Fixes for out parameter changes 2010-05-23 03:27:40 -05:00
Slava Pestov 70a99e1cdb Updating code to use with-out-parameters 2010-05-23 03:07:47 -04:00
Doug Coleman e75b85de30 Update code base for new alarms api 2010-05-21 20:42:12 -05:00
Slava Pestov 949712243f io.backend.unix: make timeouts work on stdin once Doug fixes alarms 2010-05-21 19:09:15 -04:00
Doug Coleman bdecd564a3 Use keys/values where appropriate 2010-05-21 12:48:04 -05:00
Slava Pestov a8098e3182 specialized-arrays: rename byte-array>T-array to T-array-cast, and make it work with anything that responds to >c-ptr / byte-length 2010-05-18 23:09:34 -04:00
Slava Pestov 627295f094 Language change: tuple slot setter words with stack effect ( value object -- ) are now named FOO<< instead of (>>FOO) 2010-05-06 17:21:02 -04:00
Slava Pestov 60299f6d74 Eliminate some -rot from the codebase 2010-05-03 18:31:01 -04:00
Slava Pestov 64ab598225 io.launcher.unix: add timeout to a test 2010-05-03 17:34:33 -04:00
Slava Pestov c9db8f4269 io.sockets: update <datagram> docs 2010-04-27 10:52:19 -04:00
Slava Pestov 2eda6fc6aa io.encodings: add a fast-path for ascii, utf8 and 8-bit encodings when string only contains ASCII characters 2010-04-19 01:14:00 -05:00
Joe Groff ba2fa96eeb unix: don't hack _exit to have a terminating effect; just use FUNCTION: 2010-04-14 22:04:04 -07:00
Slava Pestov 46a1fb2646 Merge remote branch 'origin/abi-symbols' into fastcall-madness 2010-04-10 00:10:33 -07:00
Slava Pestov 85f3c69c70 io.monitors.recursive: don't bomb if a dsubordinate monitor is disposed of 2010-04-07 20:40:13 -04:00
Joe Groff 3e0d86f355 Merge branch 'master' of git://factorcode.org/git/factor into abi-symbols
Conflicts:
	basis/compiler/tests/alien.factor
2010-04-06 12:30:15 -07:00
Doug Coleman 51fd5e34e8 Fix bootstrap on windows 2010-04-01 18:48:41 -05:00
Joe Groff ef884ef7f2 Merge branch 'master' into abi-symbols 2010-04-01 15:28:36 -07:00
Doug Coleman 026499e64f Use flags{ instead of flags all over the place 2010-04-01 14:44:03 -05:00
Joe Groff f3dd625de6 "stdcall" -> stdcall 2010-03-31 19:29:04 -07:00
Joe Groff 65c3259761 "cdecl" -> cdecl 2010-03-31 19:20:35 -07:00
Doug Coleman dc52f177f5 Add utiltity words for io.files.unique 2010-03-31 15:09:51 -05:00
Slava Pestov f1e19aabdb threads: simplify 'suspend' combinator 2010-03-28 08:29:53 -04:00
Daniel Ehrenberg 39df2c373f Fixing vocab ambiguities in linux and windows-specific vocabs 2010-03-17 00:22:48 -04:00
Daniel Ehrenberg 512fe14e4e Merge branch 'bags' of git://github.com/littledan/Factor
Conflicts:

	basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
	basis/furnace/auth/auth.factor
	basis/stack-checker/backend/backend.factor
2010-03-16 13:28:00 -04:00
Slava Pestov 4c9ae8398c io.servers.connection: fix bogus logging 2010-03-14 17:04:36 +13:00
Joe Groff e7968ceffc mop up compiler errors from macosx load-all 2010-03-09 00:56:07 -08:00
Daniel Ehrenberg 434605c0b5 Changing some uses of prune to use members 2010-02-27 13:14:03 -05:00
Slava Pestov 17b095a524 Slices over specialized arrays can now be passed to C functions, written to binary output streams, and given to malloc-byte-array 2010-02-25 04:50:31 +13:00
Doug Coleman ebd2cce1be Add some commented out unit tests to io.ports.tests that seem like they should be supported 2010-02-24 03:33:16 -06:00
Slava Pestov ca8be54c96 io.files.unix: fix load errors arising from byte-length being moved 2010-02-24 21:20:21 +13:00
Slava Pestov af0ddd5985 Specialized arrays, structs and other objects responding to the >c-ptr / byte-length protocol can now be written to binary streams 2010-02-24 20:18:41 +13:00
Joe Groff 7844cbafab missed a dead memory>struct in io.sockets 2010-02-22 19:09:03 -08:00
Joe Groff ed18b911c8 io.sockets.windows.nt: update string c-types in alien-indirect 2010-02-21 16:49:44 -08:00
Slava Pestov eab105590b Rename io.launcher.unix.parser to simple-tokenizer since ftp.server uses it 2010-02-21 17:48:04 +13:00
Slava Pestov c3f4bcb616 Fix load errors exposed by platforms.txt change 2010-02-20 13:31:09 +13: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 5336d6f287 io.monitors.recursive: fix hang introduced by recent io.monitors change 2010-02-19 07:36:12 -05:00
Slava Pestov a343f8a31c io.monitors: if a monitor is disposed while other threads are waiting on it, an error will be thrown from next-change, instead of those threads hanging forever. This makes monitors consistent with streams and other native resources that behave in a similar manner 2010-02-20 00:23:24 +13:00
Joe Groff f06e278e17 Merge branch 'master' of git://factorcode.org/git/factor
Conflicts:
	basis/tools/deploy/shaker/shaker.factor
2010-02-15 11:50:43 -08:00
Slava Pestov 4893ebf183 Small cleanups 2010-02-16 04:04:09 +13:00
Joe Groff 1b5ba15707 Merge branch 'master' of git://factorcode.org/git/factor 2010-02-14 21:07:04 -08:00
Slava Pestov e19461d410 io.files.info: load io.files.info.unix if we're on Unix. Fixes long-standing no-method error on file-info 2010-02-15 17:15:26 +13:00
Joe Groff 1632fa6448 io.directories: directory-tree-files should include the directories too, not just their contents 2010-02-13 13:57:58 -08:00
Joe Groff 2b05f90c7b io.directories: add "directory-tree-files" and "with-directory-tree-files" words 2010-02-13 12:52:32 -08:00
Slava Pestov e2500c14d2 io.launcher.unix: sometimes both WIFEXITED and WIFSIGNALED would return true, and the wrong status would be reported 2010-02-07 18:17:53 +13:00
Slava Pestov 080609c281 Minor doc fixes 2010-02-03 22:56:32 +13:00
Brad Christensen 7381d47103 More documentation cleanup. 2010-02-03 00:05:04 -07:00
Slava Pestov 2022c2a83e io.launcher.windows: include launch descriptor in error thrown when launching a process fails 2010-02-01 12:39:29 -06:00
Doug Coleman af96673458 Better fix for ipv6 2010-01-24 15:57:06 -06:00
Doug Coleman ef5baa5b67 Handle IPv6 addresses of the form ::127.0.0.1 2010-01-24 15:40:34 -06: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 760746e2ff Fix using 2010-01-22 15:01:38 -06:00
Doug Coleman 8c1d202b4c Rename accumulator to collector, pusher to selector 2010-01-22 15:00:53 -06:00
Doug Coleman 3c09c7052c Fix using 2010-01-22 12:59:33 -06:00
Doug Coleman b7b84fc5b7 fix using 2010-01-22 12:59:27 -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
Slava Pestov 790c7afeaf io.launcher: since process timeouts only kick in when wait-for-process is called, try-output-process would hang indefinitely. Fix this by splitting up wait-for-process and wrapping stream-contents in a with-timeout 2010-01-22 12:20:37 -06:00
Slava Pestov c4f19bc117 io.servers.connection: accept-loop doesn't need to be 'inline recursive' 2010-01-18 22:23:57 +13:00
Doug Coleman 41082b5b12 Fix minor typo in <server> docs 2010-01-17 23:13:20 -06:00
Slava Pestov dd0571e69a io.buffers: fix buffer-until for iota (reported by Sascha Matzke) 2010-01-16 18:44:24 +13:00
Doug Coleman 00f58f81e1 Fix iota bug in io.files.info.windows 2010-01-15 21:17:47 -06:00
Doug Coleman 4c71d71907 random is generic now -- iota random -> random 2010-01-14 12:48:57 -06:00
Slava Pestov df4fb4a3ee Removing integers-as-sequences 2010-01-15 07:15:33 +13:00
Slava Pestov e96404327e Get optimizing compiler working without global register variables in VM 2009-12-22 15:42:49 +13:00
Doug Coleman 9fea67f3ff triyng to rice crc32 a bit 2009-12-13 02:03:06 -06:00
Doug Coleman 7369522b69 add utility words for changing file permissions 2009-12-06 17:53:35 -06:00
Joe Groff 67cc1c01be Merge branch 'master' into simd-cleanup 2009-11-26 16:14:46 -08:00
Joe Groff 4027002db7 remove SIMD:s 2009-11-25 20:21:54 -08:00
Slava Pestov 79d0211c02 Merge branch 'master' of git://factorcode.org/git/factor 2009-11-22 13:49:26 -06:00
Slava Pestov c222e5b6b1 io.launcher.unix: tests don't hang on failure 2009-11-22 13:49:10 -06:00
Doug Coleman 3a90db03c6 use CONSTANT: in epoll 2009-11-21 20:56:39 -06:00
Slava Pestov 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00
Slava Pestov 5ccce283fa Various Windows load fixes 2009-11-21 17:24:37 -06:00
Slava Pestov ffd7de02d6 Update a few places that used string C type names to use words; fixes some deploy tests 2009-11-20 03:21:48 -06:00
Doug Coleman dc1eefbcc9 update run-loop multiplexer 2009-11-19 14:18:27 -06:00
Doug Coleman adcb0df0c4 fix stack effects for nanosseconds, update io backends for nanos 2009-11-19 04:51:47 -06:00
Doug Coleman 8d43f4e911 better pipe name on windows 2009-11-18 20:04:37 -06:00
Doug Coleman 097111e7c2 use system-micros 2009-11-18 18:26:27 -06:00
Doug Coleman cc194416f9 Merge branch 'master' into startup
Conflicts:
	core/bootstrap/primitives.factor
	vm/run.hpp
2009-11-15 02:52:50 -06:00
Doug Coleman 1ff1e3f4bc add docs to 8-bit encodings vocabs, update usages 2009-11-12 18:36:20 -06:00
Doug Coleman 2b5d361cca add more 8-bit windows encodings 2009-11-12 16:42:47 -06:00
Doug Coleman b7745fea3c add new 8-BIT: word 2009-11-12 16:38:21 -06:00
Slava Pestov 064c00f78d New identity-hashcode primitive 2009-11-10 21:18:54 -06:00
Slava Pestov 2557ce1010 io.servers.packet: nothing was using it and it had a stack effect error. nuked 2009-11-09 00:53:47 -06:00
Joe Groff 138cdeff54 typo in io.files.info.windows 2009-11-07 22:23:39 -06:00
Joe Groff 61d579360d remove non-primitive-related uses of tuck from basis 2009-11-05 17:03:24 -06:00
Joe Groff fa6d7b7069 eliminate spin from basis 2009-11-05 14:05:06 -06:00
Slava Pestov 6c87f20286 Merge branch 'work' of git://github.com/carlo-kokoth/factor 2009-11-05 01:55:16 -06:00
carlok 42fc3c0f05 Add support for CP-1250 encoding 2009-11-05 07:35:16 +01:00
Slava Pestov e4ad642134 vm: 4 bit tags, new representation of alien objects makes unbox-any-c-ptr more efficient (work in progress) 2009-11-02 04:25:54 -06:00
Doug Coleman 17f0a5d41a Merge branch 'master' of git://factorcode.org/git/factor 2009-10-28 17:26:23 -05:00
Doug Coleman e376a0ece2 (normalize-path) -> absolute-path, canonicalize-path -> resolve-symlinks 2009-10-28 17:25:50 -05:00
Joe Groff 3fbe722561 Merge branch 'master' of http://factorcode.org/git/factor
Conflicts:
	basis/locals/locals.factor
	basis/peg/peg.factor
	extra/infix/infix.factor
2009-10-28 16:17:24 -05:00
Joe Groff 6e1bffb1c5 update existing code to use :> ( ) when possible 2009-10-28 16:11:33 -05:00
Doug Coleman 93de179c2f over push -> suffix!, over push-all -> append! 2009-10-28 15:29:01 -05:00
Doug Coleman bd13e018dd memq? -> member-eq?, sorted-memq? -> sorted-member-eq? 2009-10-28 15:02:00 -05:00
Doug Coleman 1476cdb974 reverse-here -> reverse! 2009-10-28 14:40:15 -05:00
Doug Coleman 7ce4b746e5 parsed -> suffix!, add append! 2009-10-28 13:38:27 -05:00
Slava Pestov 08e7d25dc5 change-each -> map!, deep-change-each -> deep-map! 2009-10-27 22:32:56 -05:00
Joe Groff 935c0797c3 update existing code for [let change 2009-10-27 22:05:37 -05:00
Slava Pestov d05127644e io.sockets.windows: fix USING: list 2009-10-23 03:40:02 -05:00
Sascha Matzke a36e7ff40a added with-local-address to bind the local address of a socket to a specific IP or IP/port combination (sometimes required to get through firewalls) 2009-10-23 08:10:03 +02:00
Joe Groff c3b8847936 update a bunch of alien-callbacks and alien-indirects to use c-type words 2009-10-21 21:10:11 -05:00
Doug Coleman 9781e5180c fix doc formatting for io.mmap 2009-10-20 22:43:11 -05:00
Doug Coleman 5b4c1aea5d run bootstrap and startup hooks inside a with-destructors. use &dispose instead of setting shutdown hooks in a couple of places 2009-10-20 18:26:10 -04:00
Doug Coleman 6b6e56a179 change add-init-hook to add-startup-hook, new add-shutdown-hook word 2009-10-19 22:17:02 -04:00
Slava Pestov 102af9badb specialized-arrays, specialized-vectors: fix potential problem if two vocabularies define different C types with the same name 2009-10-19 04:41:53 -05:00
Doug Coleman 739f61bc56 fix using 2009-10-16 19:56:48 -05:00
Doug Coleman 7e2fdfe1ec fix using for io.pathnames changes 2009-10-16 05:48:51 -05:00
Doug Coleman 42751cb148 fix io.directories.search on windows 2009-10-15 22:00:46 -05:00
Doug Coleman 211dce8cd7 add a move-file-unique word to move a file into a directory without name clashes 2009-10-15 15:29:24 -05:00
Doug Coleman 0dc734195c fix enumerating fully qualified paths by calling normalize-path first 2009-10-15 00:12:11 -05:00
Doug Coleman 7d39e51d9a add using and unit tests for mmap 2009-10-08 23:06:40 -05:00
Doug Coleman 37d0f29e4b add a couple of combinators to mmap that take a c-type to reduce conceptual overhead and boilerplate, more docs 2009-10-08 16:07:36 -05:00
Doug Coleman 81e342e755 clarify behavior of seekable/nonseekable limited streams 2009-10-05 16:16:59 -05:00
Doug Coleman 88e2ba8f31 define tell-handle on windows nt 2009-10-05 12:34:34 -05:00
Doug Coleman 84fd08d86b update docs for stream-tell 2009-10-03 19:39:06 -05:00
Doug Coleman 770405359e better tests for stream-tell 2009-10-03 19:33:54 -05:00
Doug Coleman ed1636a0c0 fix stream-tell 2009-10-03 19:26:59 -05:00
Doug Coleman aa37a57b9a take the buffer position into account on buffered-port stream-tell 2009-10-03 19:15:56 -05:00
Doug Coleman 098fd0248a support limited-streams correctly for seekable streams 2009-10-03 18:27:09 -05:00
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Slava Pestov da623ba29a Merge branch 'link' of git://github.com/klazuka/factor 2009-09-30 05:11:21 -05:00
Doug Coleman 69229032c2 define a method on stream-element-type, fix a bug in unlimited-input and add a unit test 2009-09-28 15:51:40 -05:00
Keith Lazuka bdd47b9991 help.markup: word link stack effect is now clickable 2009-09-28 10:44:46 -04:00
Slava Pestov 21f918adb6 io.backend.unix.multiplexers: add meta-data 2009-09-28 06:38:23 -05:00
Slava Pestov 530accdad9 io.mmap: fix obsolete tests and get code to inline better 2009-09-28 03:18:27 -05:00
Joe Groff 5054c954be add USING:s and rearrange definitions so macosx can compile without parsing c-type strings 2009-09-26 23:14:57 -05:00
Joe Groff b7eff85fe0 fix windows test failures 2009-09-19 10:01:12 -05:00
Joe Groff f738a4dc4e more windows loading fixes 2009-09-19 02:44:40 -05:00
Joe Groff 81db20f59e update windows.kernel32 structs (*) 2009-09-18 18:54:08 -05:00
Joe Groff e6bc708882 update openssl.libcrypto structs 2009-09-18 17:50:20 -05:00
Joe Groff 076ab42dc3 move some allocation words that don't really have much to do with c types out of alien.c-types into a new alien.data vocab 2009-09-17 22:36:05 -05:00
Doug Coleman 4f094a7ce5 fix bootstrap on openbsd 2009-09-13 00:21:57 -05:00
Doug Coleman 00e8e11d18 list file-systems with statfs instead of statvfs on openbsd 2009-09-12 21:05:26 -05:00
Keith Lazuka 726ad992a3 Pull in new literals vocab to remove bootstrap circularity
Merge branch 'master' into ui
2009-09-11 22:19:46 -04:00
Keith Lazuka 65e9c29a7b io.styles: bailed out on the with-nested-styles combinator 2009-09-11 20:35:56 -04:00
Slava Pestov 91e7e1eeea Fix the build 2009-09-10 00:47:01 -05:00
Slava Pestov 7f2e2b1777 Specialized array overhaul
- Replace hand-written specialized-arrays.* subvocabularies with new system; instead of USE:ing specialized-arrays.T, do SPECIALIZED-ARRAY: T
- Ditto for specialized-vectors; use SPECIALIZED-VECTOR:
- io.mmap.functor: removed entirely, use <mapped-array> instead
- struct-arrays and struct-vectors have been removed because specialized arrays and vectors subsume them entirely
2009-09-09 22:33:34 -05:00
Keith Lazuka a96e828d7c io.styles: renamed the 'border-width' style to 'inset'. inset takes a pair of 2 numbers (horizontal and vertical insets) 2009-09-09 15:50:25 -04:00
Keith Lazuka 1bb48ec9ea Changed Browser's "Up:" links to a traditional breadcrumbs list.
Tweaked a few colors in the Factor UI.
2009-09-09 10:44:41 -04:00
Doug Coleman 1fc0940b2a make something private 2009-09-08 17:10:19 -05:00
Doug Coleman 5a7ac3965d use raw pathnames for file-systems word 2009-09-08 17:05:05 -05:00
Doug Coleman eb558fcc9c remove deprecated inotify-event struct 2009-09-08 14:15:25 -05:00
Slava Pestov 75f7e27c6c Use new-style structs for overlapped struct on Windows 2009-09-05 16:20:58 -05:00
Slava Pestov a054ec3d64 specialized-arrays.direct is no more; instead, every specialized-array.<foo> vocabulary has a <direct-T-array> constructor 2009-09-04 22:01:55 -05:00
Slava Pestov 084c3cac3d io.launcher.windows.nt: make tests more robust 2009-09-04 21:59:11 -05:00
Slava Pestov f0d5f99d23 io.backend.windows: fix for deployment 2009-09-04 09:27:46 -05:00
Slava Pestov b238a1719f io.backend.windows.nt.privileges: fix make-token-privileges 2009-09-04 09:08:04 -05:00
Slava Pestov 223b907219 Fix sockets on Windows, and re-organize things so that windows.winsock doesn't get loaded by default 2009-09-04 05:02:33 -05:00
Slava Pestov 742db564f3 io.sockets: fix to work in deployed apps 2009-09-04 03:57:57 -05:00
Doug Coleman c6fcb32136 WHAMMY! convert io.sockets.unix 2009-09-03 17:08:54 -05:00
Doug Coleman 475530ef3d update network structs. NO WHAMMY, NO WHAMMY, NO WHAMMY...STOP!!! 2009-09-03 16:57:36 -05:00
Doug Coleman b282dd9eac Merge branch 'master' of git://factorcode.org/git/factor 2009-09-01 18:16:31 -05:00
Doug Coleman 9ad468f449 Merge branch 'master' of git://factorcode.org/git/factor 2009-09-01 15:38:52 -05:00
Slava Pestov 2037667473 io.backend.unix.multiplexers.epoll: update for STRUCT: 2009-09-01 14:46:08 -05:00
Doug Coleman eb98b49d74 openbsd defined a struct with freebsd in the name. oops..... 2009-09-01 14:18:29 -05:00
erg 4c354581a9 fix file-systems on the bsds 2009-09-01 13:16:37 -05:00
Joe Groff bce748ee81 fix newly introduced references to c-type-array 2009-08-31 12:49:09 -05:00
Joe Groff 175529c938 Merge branch 'master' of git://factorcode.org/git/factor into struct-updates 2009-08-31 12:35:47 -05:00
Doug Coleman 6ac21a8cf9 fix using 2009-08-31 12:20:56 -05:00
Joe Groff f74351ce64 Merge branch 'master' of git://factorcode.org/git/factor into struct-updates 2009-08-31 12:01:23 -05:00
Joe Groff 1a84aa7fc3 Merge branch 'master' of git://factorcode.org/git/factor into struct-updates 2009-08-31 12:01:04 -05:00
Doug Coleman 0bcd7c2619 typo 2009-08-31 12:00:39 -05:00
Doug Coleman d22a25a3ec try to fix file-systems on a few platforms 2009-08-31 11:49:29 -05:00
Doug Coleman 6c996f4d30 fix netbsd file-systems 2009-08-31 11:38:21 -05:00
Doug Coleman 27af645048 fix file-systems on freebsd 2009-08-31 11:35:52 -05:00
Joe Groff 2d37ac31be Merge branch 'master' of git://factorcode.org/git/factor
Conflicts:
	basis/environment/winnt/winnt.factor
	basis/io/files/windows/nt/nt.factor
	basis/windows/shell32/shell32.factor
2009-08-31 10:35:58 -05:00
Joe Groff c1fe3854d4 update io.files.*.windows to use specialized arrays; also, io.files.info.windows was providing buffers that were too small, so fix that 2009-08-31 09:58:04 -05:00
Doug Coleman d5a7dde7ee fix kqueue 2009-08-30 21:57:33 -05:00
Slava Pestov 5c10f390c7 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-30 21:12:23 -05:00
Slava Pestov 348311ea90 io.backend.unix: tweak test 2009-08-30 21:01:49 -05:00
Doug Coleman 05cc8babb6 update kqueue for structs 2009-08-30 20:26:25 -05:00
Doug Coleman de94e49f06 escape the class name in io.files.info 2009-08-30 20:10:41 -05:00
Doug Coleman 447be26efd remove direct uint arrays in file info 2009-08-30 11:58:30 -05:00
Doug Coleman 783eb0bb53 change all stat, statfs, statvfs and calendar structs 2009-08-30 04:06:41 -05:00
Doug Coleman d88cdffa47 Merge branch 'master' of git://factorcode.org/git/factor 2009-08-29 23:39:20 -05:00