Commit Graph

1304 Commits (d16e4272b2bc1fab74b28b78314080e12355e31c)

Author SHA1 Message Date
John Benediktsson e477f6996f Fix comments to be ! not #!. 2015-09-08 16:15:10 -07:00
John Benediktsson ceb75057da change ERROR: words from throw-foo back to foo. 2015-08-13 16:13:05 -07:00
John Benediktsson c9bd438d18 io.launcher: fix bad refactor. 2015-08-13 06:51:44 -07:00
Doug Coleman b6be8685c3 basis: ERROR: changes. 2015-08-13 03:20:39 -07:00
Doug Coleman 02008979d9 factor: Change ERROR: foo ; to define ``throw-foo`` instead of having ``foo`` throw implicitly. The old ``foo`` still throws implicitly because this is a big change to get right in one patch, but it should be removed soon. 2015-08-12 15:26:18 -05:00
Doug Coleman e0d1b14e5c factor: don't need FROM: namespaces => set or namespaces:set anymore 2015-08-12 11:25:57 -05:00
Doug Coleman 46587f8457 factor: arch -> arch-name. fix breakage caused by other patch. 2015-08-12 11:08:24 -05:00
Doug Coleman 16fac5981e io.styles: image -> image-style in docs too 2015-08-12 09:09:41 -05:00
Doug Coleman 330c7ba156 factor: Removing SLOT: nth/at/global in favor of using change: at for tuple slots named ``at`` and change-at for hashtables.
Redo many FROM: and QUALIFIED: and using lists.
2015-08-12 08:49:02 -05:00
Doug Coleman 00338f62f3 factor: put inline on same line as ; for experimentation 2015-08-10 12:55:27 -05:00
John Benediktsson 2a3427bdff io.files.info: use directory?, symbolic-link?, and regular-file?. 2015-08-05 18:33:35 -07:00
Doug Coleman 23899e2d83 io.files.windows: Need the SLOT: file from io.sockets.secure.openssl 2015-07-30 00:05:37 -07:00
John Benediktsson 823524c3a0 io.backend.unix.macosx: change to << require >>. 2015-07-28 19:33:24 -07:00
John Benediktsson e26493b97b io.backend.unix.macosx: change USE: to require. 2015-07-28 19:13:29 -07:00
Björn Lindqvist 5e29aac0a6 Docs: various more compiler-related docs 2015-07-28 17:58:28 -07:00
Doug Coleman 1fcf96cada factor: remove """ string syntax for now. there are HEREDOC:, STRING:, escaping \", and something else soon. 2015-07-25 22:59:56 -07:00
Doug Coleman 89ffe8fa82 io.encodints.iso2022: fix unit tests 2015-07-21 19:33:08 -07:00
Doug Coleman c1a330ac7a io.encodings.iso2022: use $ instead of making ESC a parsing word. 2015-07-21 17:33:14 -07:00
John Benediktsson 5eec781b40 use ``if*`` instead of ``dup [ ] [ drop ] if``. 2015-07-20 22:24:30 -07:00
Doug Coleman 2f6548d6d2 factor: fix breakage with word renamings. 2015-07-20 05:51:16 -07:00
Doug Coleman 618330b31e factor: rename system:vm -> vm-path to differentiate it from vm:vm (which is a STRUCT:) 2015-07-20 00:10:29 -07:00
Doug Coleman 5f8426cfbe factor: rename files that are not loadable on mac, too 2015-07-19 16:55:36 -07:00
Doug Coleman 0176591527 factor: actual patch to remove ; from all c/fortran functions 2015-07-19 16:25:30 -07:00
Doug Coleman 4ec2311406 factor: Trim whitespace after ! comments and a few USING: lines that got skipped before. 2015-07-18 20:14:22 -07:00
John Benediktsson 5d6632514a io.sockets: make host-name a hook and throw correct errors. 2015-07-16 13:15:14 -07:00
Doug Coleman 892c62e1dc factor: second stab at [ ] [ ] unit-test -> { } [ ] unit-test 2015-07-03 09:39:59 -07:00
Doug Coleman 59f3b1ea57 Revert "factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!"
Needs a bit more work.

This reverts commit 7e54cc2824.
2015-07-02 13:47:06 -07:00
Doug Coleman 7e54cc2824 factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool! 2015-07-02 11:36:08 -07:00
Doug Coleman 999aa7c897 factor: clean up spaces in -tests files 2015-07-02 10:34:01 -07:00
Doug Coleman e3cb325040 factor: clean up whitespace in -docs files 2015-07-02 10:31:22 -07:00
Doug Coleman 352e5de16a core, basis, extra: Remove DOS line endings from files.
Remove whitespace from end of lines.
Add a newline to the end of each file.
2015-06-29 17:25:40 -07:00
Doug Coleman 9d2c641a99 io.standard-paths: On mac when you launch Factor from the doc it doesn't have the login shell PATH variable for paths such as /usr/local/bin for homebrew. Add a word that finds things in this path as well.
Note that launching a binary found this way needs the full path, as the PATH variable itself is not modified and the binary will still not be in PATH if it wasnt before.
2015-06-24 18:44:09 -07:00
Doug Coleman 6e60c811ac core: Rename create to create-word, create-in to create-word-in. 2015-06-08 12:47:35 -07:00
Doug Coleman 2ee3516bf1 io.files.unique: Better docs for with-unique-directory. 2015-06-01 15:22:05 -07:00
John Benediktsson 22402a2e07 Revert "io.standard-paths: adding support for PATHEXT."
This reverts commit be9bff0e5b.
2015-06-01 14:59:36 -07:00
John Benediktsson be9bff0e5b io.standard-paths: adding support for PATHEXT. 2015-06-01 14:57:47 -07:00
John Benediktsson 0d7c3c5291 io.standard-paths: add ?find-in-path. 2015-06-01 14:26:38 -07:00
John Benediktsson 2884f8dabe io.standard-paths.windows: use map-find. 2015-06-01 14:26:27 -07:00
Doug Coleman cf3ccd0abe io.directories.search: Add some more combinators for finding files. 2015-05-21 22:35:24 -07:00
Doug Coleman 12bd42c663 io.monitors: Fix using, speed up test from 3 second timeouts to 100ms timeouts. 2015-05-19 12:37:07 -07:00
Doug Coleman 0962b4a697 io.monitors: Run each set of monitors tests in its own directory. Fixes #1106. 2015-05-19 10:50:58 -07:00
John Benediktsson b366a06c41 use reject instead of [ ... not ] filter. 2015-05-12 18:50:34 -07:00
Björn Lindqvist ba8caa72fb io.crlf: the lf>crlf and crlf>lf words looks generally useful, lets put them in io.crlf to reduce some code duplication 2015-05-12 09:32:05 -07:00
Doug Coleman f2c67d6ab4 io.directories.search: Add two tests for find-up-to-directory, one that finds a file and one that doesn't. 2015-05-08 21:02:29 -07:00
Doug Coleman 2aa6ce7e8c io.directories.search: fix inline recursive combinator compilation. fix
reversed logic for containing-directory
2015-05-07 16:49:32 -07:00
Doug Coleman 510f605df9 io.directories.search: Add find-up-to-root combinator and helper words.
Example:  "c:\\factor64\\.git\\objects" [ ".txt" tail? ] find-up-to-root .
"c:\\factor64\\.git"
2015-05-05 23:26:52 -07:00
Doug Coleman 74f5eacec7 editors.visual-studio-code: Support for m$ft's new code editor. Can't
figure out command line parameters yet.
io.files.temp.windows: Make (get-appdata-directory) not private and rename
it to get-appdata-directory.
2015-04-30 18:21:15 -07:00
Doug Coleman 7895e0fcaa io.launcher.windows tests: Use unique-file instead of temp-file. Fixes 2015-04-01 15:44:55 -07:00
John Benediktsson 3f3c11c446 ui.backend.cocoa: fix reset of thread-timer. 2015-01-17 15:58:57 -08:00
John Benediktsson be173c8a43 core-foundation.run-loop: cleanup timer-thread code. 2015-01-17 14:16:24 -08:00
John Benediktsson 3515a45b84 io.launcher: fix stack effects. 2014-12-30 17:23:24 -08:00
John Benediktsson 3e7bc051d4 io.launcher: fix docs for with-process-reader and with-process-writer. 2014-12-30 15:04:34 -08:00
John Benediktsson 9fd568267d io.launcher: add versions of with-process that preserve process and status. 2014-12-30 14:51:23 -08:00
John Benediktsson 83f7b31910 io.launcher: cleanup public interface, make some things private or internal. 2014-12-30 10:04:09 -08:00
Doug Coleman c59a025288 io.ports: Make buffered-port not have a length because of Linux virtual files and TCP sockets.
Related to issues #1256 and #1259.
2014-12-23 13:47:50 -08:00
John Benediktsson 76761b2e59 more minor cleanup. 2014-11-30 19:26:23 -08:00
John Benediktsson 49bcbaee7a removing small and unnecessary files. 2014-11-29 17:24:42 -08:00
Doug Coleman d23ab51ce8 io.files: Move with-cd to the tests file so that nobody uses it. My bad. Basically nobody should ever use cd or cwd for anything. Fixes #1214. 2014-11-23 01:39:36 -08:00
Doug Coleman aff0150a8c io.files: add with-cd. Related to #1214. 2014-11-22 22:21:35 -08:00
John Benediktsson 7badef25ce libc: reduce code duplication. 2014-11-21 10:19:12 -08:00
John Benediktsson 39093727b1 libc: rename (io-error) to throw-errno. 2014-11-21 09:29:45 -08:00
John Benediktsson 3f362dfc99 destructors: change check-disposed not to drop the disposable. 2014-11-21 08:19:05 -08:00
John Benediktsson 45bd145596 io: use errno case instead of cond. 2014-11-20 19:46:14 -08:00
John Benediktsson c0b4c1adb1 io.buffers: unsafe code is more unsafe. 2014-11-20 17:46:36 -08:00
John Benediktsson 25f3032d04 io.ports: use fixnum where possible, assert c-ptr since we use memcpy. 2014-11-20 17:19:16 -08:00
John Benediktsson f6ed37a6f7 io.ports: some cleanup before optimizations. 2014-11-20 16:19:39 -08:00
John Benediktsson e55af0ebfe io.buffers: simplify test word. 2014-11-20 15:46:07 -08:00
John Benediktsson c60a3e6e80 io.buffers: adding a buffer-read-into that can take a c-ptr or a sequence. 2014-11-20 14:40:43 -08:00
John Benediktsson 0a31a7c17a io.backend.unix: { fixnum } read will be a { fixnum } . 2014-11-20 13:23:53 -08:00
Doug Coleman 0fe5b2d90f io.directories: Add unit test for #890. 2014-11-18 14:11:13 -08:00
Doug Coleman 831ec24b14 io.sockets.windows: Spacing cleanup. 2014-11-18 14:06:24 -08:00
Doug Coleman 09f0edfb2f io.launcher.windows: Don't cd to directory when calling run-process. Fixes 2014-11-18 14:03:06 -08:00
Doug Coleman cab001234a io.sockets.windows: Fix unit test--recover leaves socket on stack, nip
it.
2014-11-18 14:02:44 -08:00
John Benediktsson 0826d8468c io.launcher: really minor cleanup. 2014-11-16 20:31:50 -08:00
John Benediktsson f79d61060e io.buffers: cleanup interface a bit. 2014-11-16 18:54:24 -08:00
John Benediktsson b7ed0a431c basis/extra: cleanup some platform requires. 2014-11-15 14:25:12 -08:00
John Benediktsson d6b6f3893d basis/extra: switch to "vocab." os name>> append require. 2014-11-13 13:00:44 -08:00
Björn Lindqvist bbab41ade4 io.sockets.windows.tests: plugs the socket leaks (#1104) 2014-11-12 19:32:44 -08:00
Benjamin Pollack 2c3dd8c3c8 Remove executable bit from tons of files that aren't 2014-11-05 20:40:42 -08:00
John Benediktsson 21b4e31d60 Revert "io.backend.unix.macosx: Trying to change instances of USE: to require if"
This reverts commit 4bab33bddb.
2014-11-01 15:29:37 -07:00
Doug Coleman 4bab33bddb io.backend.unix.macosx: Trying to change instances of USE: to require if
the vocab must be loaded but no symbols are directly depended upon.
2014-11-01 13:16:13 -07:00
John Benediktsson 321186f6c5 io.backend.unix.macosx: need this for deploy. 2014-10-27 19:40:22 -07:00
John Benediktsson 8033741135 io/ui: slim down the USE: list 2014-10-24 17:33:27 -07:00
Doug Coleman be232dac9b io.backend: Remove duplicate definition of file-mode. Add mkdir-mode using non-magic symbols. Cleanup imports. 2014-10-24 17:16:40 -07:00
Doug Coleman 026aa163c8 io.launcher.windows: Make unit tests show that process fails rather than
reporting bogus error. Fixes #1152 (it wasn't really a bug, just bad
tests).
2014-10-16 16:40:49 -07:00
Doug Coleman d8121a9622 io.launcher.windows.test/env.factor: Fix script for new . behavior. 2014-10-07 13:51:13 -07:00
Björn Lindqvist c1187500de io.ports.tests: better to use with-disposal than calling the dispose word explicitly 2014-09-24 14:40:34 -07:00
Björn Lindqvist 47c16ed078 io.streams.limited.tests: use with-stream in the tests to ensure that the pipes are disposed 2014-09-24 14:40:34 -07:00
John Benediktsson d6019337f9 core-foundation: define some more callbacks. 2014-08-05 16:09:04 -07:00
John Benediktsson 8c58b99b1d Revert "openssl: define a startup-hook so that openssl initializes automatically"
This reverts commit 981ea313a0.

Conflicts:
	basis/openssl/openssl.factor
2014-08-05 12:14:53 -07:00
John Benediktsson fec182d2d8 io.backend.unix.multiplexers.run-loop: don't enable-all-callbacks twice. 2014-08-05 10:31:42 -07:00
Björn Lindqvist 60ffe0680e kernel: new combinator 2with = with with 2014-07-22 07:40:13 -07:00
John Benediktsson 5771cae818 io.monitors.recursive: fix second test. 2014-07-11 18:03:37 -07:00
Doug Coleman 4e67fac92d io.monitors.recursive: On Windows, at least, a recursive file monitor gets
set up for every single file. This is causing OOM errors on win32, so
let's just test resource:core\io instead.
2014-07-11 17:15:20 -07:00
Doug Coleman 3ad3e33006 io.launcher: Example is not very cross-platform. 2014-07-10 11:21:33 -07:00
Doug Coleman 6ea98afc99 io.sockets.secure.openssl: We don't care what the error is as long as it fails. 2014-07-09 22:32:32 -07:00
Doug Coleman baa9bed236 io.launcher: Fix help-lint for Windows. The examples don't work on
Windows, so disable them.
2014-07-09 23:19:58 -05:00
Doug Coleman 377180baf6 io.sockets.secure.windows: Fix using, remove duplication. 2014-07-07 21:44:40 -05:00
Doug Coleman 59c5373263 io.sockets.secure: Another fix for cross-platform openssl. 2014-07-07 18:45:22 -07:00
Doug Coleman 075a86f5d9 io.sockets.secure: Move some code from secure.unix to secure.openssl. Add a hook for finding sockets to upgrade. 2014-07-07 18:34:41 -07:00
Doug Coleman 79b0948377 io.backend.unix.multiplexers.run-loop: Really fix bug #775! 2014-07-04 01:50:45 -07:00
Doug Coleman 138ec84642 io.files.temp.macosx: Create the cache and temp directories every time. Fixes #1089. 2014-07-03 23:41:20 -07:00
John Benediktsson 0c7a5b7c84 io.backend.unix.multiplexors.select: some cleanup. 2014-06-26 13:49:48 -07:00
Björn Lindqvist a4e98529fa io.launcher.windows.tests: many of the tests can result in utf8-encoded strings 2014-06-10 08:10:21 -07:00
Björn Lindqvist 981ea313a0 openssl: define a startup-hook so that openssl initializes automatically 2014-06-06 14:12:09 -07:00
John Benediktsson 57f9d78892 improve help by linking to types directly. 2014-05-23 20:20:15 -07:00
John Benediktsson ab969b072c io.directories.search: some cleanup. 2014-05-20 14:46:01 -07:00
John Benediktsson 3fb1532bd6 io.directories.search: add quot stack effects, simplify find-all-files. 2014-05-20 12:29:02 -07:00
John Benediktsson 7e4f2ec618 io.directories.search: faster directory traversal. 2014-05-20 12:06:11 -07:00
John Benediktsson 8293425783 io.encodings.ascii: moving to core. 2014-05-20 11:47:38 -07:00
John Benediktsson 98935b7f15 docs: change ``{ $quotation "( x -- y )" }`` to ``{ $quotation ( x -- y ) }``. 2014-05-18 20:09:10 -07:00
John Benediktsson 4ca5b2ccb3 Revert "unix.ffi: be more explicit about dirent64."
This reverts commit edf456149330d44995b1c8bdf61a1c5d2617ed9c.
2014-04-29 14:02:30 -07:00
John Benediktsson 5dd26a9066 unix.ffi: be more explicit about dirent64. 2014-04-29 13:54:27 -07:00
John Benediktsson 09dec78603 io.directories.unix.linux: fix using. 2014-04-29 13:38:27 -07:00
John Benediktsson 26ff963758 io.directories: faster directory-entries by caching dirent structs. 2014-04-29 13:22:56 -07:00
Doug Coleman 50ca01a4d8 io.sockets.windows: Fix using. 2014-04-23 20:07:32 -07:00
John Benediktsson e3323818cc io.sockets.secure.openssl: disable tests for now. 2014-04-22 08:16:53 -07:00
John Benediktsson 06912460b4 io.sockets.secure.openssl: use must-fail-with. 2014-04-22 07:41:23 -07:00
John Benediktsson e7a74e0e61 io.standard-paths.unix: fixing the tests for Ubuntu. 2014-04-22 07:40:57 -07:00
Doug Coleman 876b430ec9 io.standard-paths.unix: Fix ifconfig test. 2014-04-21 23:45:45 -07:00
John Benediktsson 6f87c2afc7 io.sockets: use must-fail-with for resolve-host errors. 2014-04-20 10:02:04 -07:00
John Benediktsson 24cb41aa13 io.sockets: don't need "0 or" for addrinfo. 2014-04-20 09:30:03 -07:00
Björn Lindqvist e1206d5ef1 io.sockets: add word addrinfo-error to signal host lookup failures
If the getaddrinfo call fails, and you want to handle that failure in
a structured way, then you need a designated error type to know what
went wrong.
2014-04-20 09:29:31 -07:00
Björn Lindqvist 516ffcc311 io.sockets.secure.openssl.tests: more and better SSL_connect tests
Better error handling so it should be easier to see why the tests fail
on the build server (#1036).
2014-04-18 10:06:46 -07:00
Björn Lindqvist df3417c5b7 io.sockets.secure.openssl: more docs 2014-04-18 10:06:46 -07:00
Björn Lindqvist e473ef628d io.sockets.secure.openssl: big refactoring, all error handling merged into one check-ssl-error word 2014-04-18 10:06:46 -07:00
Björn Lindqvist b72fa3ba0a Docs: fixed doc example errors triggered by help-lint and added with-disposal where applicable 2014-04-14 08:42:10 -07:00
Björn Lindqvist 9b28623b4f Docs: examples for io.launcher words 2014-04-14 08:42:09 -07:00
Björn Lindqvist 2cbea3cb31 Docs: a few more examples for words that were missing them 2014-04-14 08:42:09 -07:00
Björn Lindqvist a3eba146fd io.sockets: example for the with-socket function 2014-04-14 08:42:09 -07:00
Björn Lindqvist b79bd45908 io.sockets: example for resolve-host 2014-04-14 08:42:08 -07:00
Doug Coleman d123f589f7 io.sockets.secure.openssl: Check error code in unit test. 2014-04-08 12:08:58 -07:00
John Benediktsson 5e129a8964 more libc fixes. 2014-04-04 08:03:46 -07:00
John Benediktsson e50d1375a1 io: need to use libc for OS X? 2014-04-03 21:43:37 -07:00
Doug Coleman a02e8e3cda io.sockets.secure.openssl: Fix using list. 2014-04-02 23:11:52 -05:00
Björn Lindqvist ee19a97869 io.sockets.windows: wrap ioctlsocket and related constants to enable
setting sockets in non-blocking mode
2014-04-02 16:50:20 -05:00
Björn Lindqvist f8387a08ae Merge:
io.sockets.secure.windows: use non-blocking sockets to prevent
SSL_connect from blocking

On Windows, SSL_connect may hang forever if the server doesn't send any
data. To counteract that we temporarily set the socket non-blocking and
then call select in the wait-for-fd method.

Conflicts:
	basis/io/sockets/secure/openssl/openssl-tests.factor
2014-04-02 12:16:51 -05:00
Björn Lindqvist 4d8f3e8a78 io.sockets.secure.openssl: do-ssl-connect needs to call wait-for-fd 2014-04-02 12:13:21 -05:00
Björn Lindqvist eaca04de3b libc: several vocabs now need to depend on libc 2014-04-02 12:13:00 -05:00
Björn Lindqvist 753b2f0177 io.files: make wait-for-fd generic and dispatch depending on backend
do-ssl-accept need to call wait-for-fd so it needs to be generic. On
windows it's a noop but on unix it will wait for the fd.
2014-04-02 12:12:49 -05:00
Björn Lindqvist 6421af3401 io.sockets.secure.*: unification of lots of platform-independent code
Code that is duplicated in the backends moved to
io.sockets.secure.openssl. The wait-for-fd verb used by do-ssl-accept
doesn't have any equivalent on Windows so that needs to be
implemented.
2014-04-02 12:12:37 -05:00
Björn Lindqvist 5f38df7741 io.sockets.secure.windows: reading and writing from ssl sockets
Unified the drain and refill generics and put their definition in
io.files. They are now used by both the windows and unix ssl backend
for io. Windows ssl kind of works now, but the error cases are not
implemented correctly.
2014-04-02 12:12:14 -05:00
Björn Lindqvist 8c5ceb8b0c io.files.windows: new generic words drain and refill, like in io.backend.unix
The purpose of these words is to abstract out the pushing of the bytes
to the ports so that you can insert the ssl layer in between. Exactly
like how drain and refill are specialized on ssl-handle in
io.sockets.secure.unix.
2014-04-02 12:12:04 -05:00
Björn Lindqvist 6ed3a09b5d io.sockets.secure: new hook variable ssl-certificate-verification-supported?
t if the backend is able to verify certificates, f
otherwise. Currently certificate validation isn't implemented on Windows
2014-04-02 12:11:53 -05:00
John Benediktsson 03b7e67547 fix some help-lint errors. 2014-03-12 20:08:15 -07:00
John Benediktsson 0a2fef0775 io.sockets: change protocol-port to handle ``f`` on all platforms. 2014-03-12 07:27:39 -07:00
John Benediktsson 0a2e632d4c io.standard-paths.unix: fix tests on arch linux. 2014-03-11 11:37:00 -07:00
John Benediktsson b039b6a542 io.streams.string: cleanup tests. 2014-03-11 11:25:53 -07:00
John Benediktsson ee040a242c io.streams: some more test cases for sequence-read-until. 2014-03-10 15:29:11 -07:00
Björn Lindqvist 39b13b6736 io.sockets.secure.openssl: guard against SSL_get_peer_certificate returning null 2014-03-06 18:41:37 +01:00