Commit Graph

1758 Commits

Author SHA1 Message Date
Matthew Flatt
e4759d6931 first cut at submodules
original commit: 3d69dfab863c116439ce5b747dbc69852db74938
2012-03-09 10:34:56 -07:00
Eli Barzilay
e8c17f99a1 Big newline at EOF scan.
original commit: f7c67b49a49a723534454ce561cd060e63889480
2012-02-29 00:28:11 -05:00
Matthew Flatt
a2ce5dbafd fix zip/gzip bug
Closes PR 12605

original commit: f9247ff3a5a772c8a314a4c9444e449c5b113053
2012-02-27 08:34:26 -05:00
Robby Findler
b2faf6534a added nand, nor, and implies to racket/bool
original commit: 4b2f78477a2f6144044fc2645750f07be923d85d
2012-02-19 08:05:11 -06:00
Matthew Flatt
0bc53ba416 handle-evt' cannot wrap handle-evt'
The prohbition against `handle-evt' on `handle-evt' is as
document and as originally intended. I'm not sure why it
was allowed.

Existing programs that use `handle-evt' incorrectly
can break. I found and fixed one incorrect use and one
questionable use in the Racket tree (which is a small
minority of the uses of `handle-evt' in the tree).

original commit: 084278fabcb3416250d7155faef674a31dac60b6
2012-02-15 18:59:24 -07:00
Jay McCarthy
fbea030c27 Fixing PR12443
There is a big comment in thread.rkt that explains the problem and the
"fix". I think something better could and should be done, but I don't
know what it is.

original commit: 022ce2d8d7de60d63d21eb67119466283d9e8be3
2012-01-03 15:05:37 -07:00
Eli Barzilay
2410b71326 Revise `net/sendmail'.
* Move the `X-Mailer' header to the top, so that the interesting headers
  are all together at the bottom (the top gets littered by server
  headers anyway).

* Use `subprocess' directly (`process*' wasn't really doing anything
  more than that).

* Allow the sender to be `#f', leaving the header out.  This makes all
  sendmails that I've used use the username that is running the process.

* Just search for a sendmail program: don't barf on windows, so it can
  be used in case there is a sendmail.exe executable there.

* Remove `no-mail-recipients' to make it in-line with other racket code
  that doesn't raise super-specific exceptions.

* Use port counting instead of doing the counts manually, much simpler
  code.

original commit: f9d07d84009e69a0202390fd828c00d330c19611
2011-12-20 15:53:40 -05:00
Matthew Flatt
d2112c9652 enable R5RS map' & for-each' (i.e., mmap' and mfor-each') inlining
original commit: 4b1f74671429f6d8955c6afa98569821fec9e8c7
2011-12-18 07:27:32 -07:00
Matthew Flatt
5a80a3b6e4 add datum-case', etc. as syntax/datum'
This library is used by Redex, which wants a `syntax'-like template
language, but for datum values instead of syntax objects. Using
`datum-case' and `datum' generates much less code. Redex uses
only a small part of the general functionality, so adding
`syntax/datum' could be overkill. It's implemented by generalizing
the `syntax-case' and `syntax' pattern matching and template
constructing code, though; it's not a lot of extra code, and it's
easiest to generalize completely. We may find other uses for
datum templates, too.

original commit: 25dd8727cb8aca54dc7c5cbf1814f2049234ad1d
2011-12-12 08:13:20 -07:00
Matthew Flatt
56a3841aa8 fix `print-convert' on cyclic hash key
Closes PR 12373

original commit: 0772cdf2e37a6ce4a634704816fef784d19d58cd
2011-11-26 17:09:23 -07:00
Robby Findler
4c1e4fd288 add add-make-prefix-to-constructor tests
original commit: c87cd47c64e443f11155d9dd78bf33c9281de11a
2011-11-24 09:42:55 -06:00
Matthew Flatt
d2604d85bb fix pconvert test
original commit: a40d0f0dd100214bbfff01ddd5a6b9a0e3d19275
2011-11-24 05:58:30 -07:00
Robby Findler
2d0fbd1f0c fix the module reader for the case when there are non-ASCII unicode characters
in comments before the #lang line

also add an #:init-position argument to peeking-input-port

original commit: d00aed6f1b2934f591204ea9b97199fae698ceae
2011-11-03 17:13:17 -05:00
Eli Barzilay
fff213f279 Removed the `plot' collection, in preparation for adding the new one instead.
original commit: e01e46b7728cbf52a79f46b873fce009a8291f12
2011-10-05 04:09:10 -04:00
Matthew Flatt
e85c17b090 add date*' and exn:fail:syntax:unbound'
The `date*' structure type is an extension of `date' with
`nanosecond' and `time-zone-name' fields.

The `seconds->date' function now accepts a real and returns a
`date*'. The fractional part of its argument goes into the
`nanosecond' field.

original commit: ac8990d5195312fa7c71966bdfaa925905902ca8
2011-09-29 09:22:10 -06:00
Ryan Culpepper
ee460be5b2 revert some (require racket/pretty) to (require scheme/pretty)
original commit: afc9210599b6abf3f4c2c62d57249ccda88f80c2
2011-09-28 19:01:27 -06:00
Ryan Culpepper
e3d2327c7c removed useless requires
original commit: c7f86d276c68b12e87dc46cef4a8e1b95538f88d
2011-09-27 19:28:44 -06:00
Matthew Flatt
4d0895ccff add var-ref->mod-decl-insp' and switch cur-code-insp' uses
Macros and other tools that need syntax privilege used
`(current-code-inspector)' at the module top-level to try to
capture the right code inspector at load time. It's more
consistent to instead use the enclosing module's declaration-time
inspector, and `var-ref->mod-decl-insp' provides that. The
new function works only on references to anonymous variables,
which limits access to the inspector.

The real function name is longer, of course.

original commit: 0197902309c5400d463393829a88282c627dafd2
2011-09-20 13:50:36 -06:00
Kevin Tew
46a7e2ab15 dynamic-place now pipes standard io to standard out and error much like system.
original commit: b6972a3b7f867a187df24bba5718107621e3729f
2011-09-15 14:53:58 -06:00
Matthew Flatt
2b861d3e67 generalized `begin-for-syntax'
original commit: d3c56c9f13327d07513f8b6bf7ea0230acb7f489
2011-09-08 14:06:00 -06:00
Jon Zeppieri
c69253c388 Moved `net/url' code from unit to module.
original commit: d44a7a480a162f413e6f1f761c96f8aa14b5be58
2011-09-05 15:22:39 -04:00
Jon Zeppieri
7e1422f5c2 Moved `net/uri-codec' code from unit to module.
original commit: 3f69d4c8e86a9ccd4732e6f4ebb8ec905009c979
2011-09-05 15:22:39 -04:00
Jon Zeppieri
00534ded33 Moved `net/smtp' code from unit to module.
original commit: 647d3fb3657ec8f44dfcff74f0b5aebc3882e286
2011-09-05 15:22:39 -04:00
Jon Zeppieri
72a2be1b88 Moved `net/sendmail' code from unit to module.
original commit: 9ab674fd0cf1d857534e402f7867cd54412c0dc8
2011-09-05 15:22:38 -04:00
Jon Zeppieri
bddc8c4ae5 Moved `net/qp' code from unit to module.
original commit: d034297c768145a90f5d7527e557fcb6f892a62e
2011-09-05 15:22:38 -04:00
Jon Zeppieri
b4764faf3a Moved `net/pop3' code from unit to module.
original commit: 54deaac318f2bb76d9be56193aa4a1e83c1828f9
2011-09-05 15:22:38 -04:00
Jon Zeppieri
f2b3885666 Moved `net/nntp' code from unit to module.
original commit: df5fef0c95631daca92d5dbbe5822765b43e8e5b
2011-09-05 15:22:38 -04:00
Jon Zeppieri
78bce17be3 Moved `net/mime' code from unit to module.
original commit: 67ca846fd9440eec9c154ca5cde7d3019f12f821
2011-09-05 15:22:38 -04:00
Jon Zeppieri
7836a1050b Moved `net/imap' code from unit to module.
original commit: 9ae38402112eb4808abedd6df6350e9d8e97dbad
2011-09-05 15:22:38 -04:00
Jon Zeppieri
b53142f3a9 Moved `net/head' code from unit to module.
original commit: 095ee4e00761f1286ddcd600041e11df3425d931
2011-09-05 15:22:38 -04:00
Jon Zeppieri
875dd118ec Moved `net/ftp' code from unit to module.
original commit: 03237c06f2754ed75450defc61ad5da979adb47a
2011-09-05 15:22:38 -04:00
Jon Zeppieri
a32d226378 Moved `net/dns' code from unit to module.
original commit: a0eac7ac5c663fae4c57d3d6bf851da744d97e46
2011-09-05 15:22:38 -04:00
Jon Zeppieri
311fa622a0 Moved `net/cgi' code from unit to module.
original commit: a5222b948186d80552ff70ee154c86719d1db758
2011-09-05 14:17:36 -04:00
Jon Zeppieri
f5de3bb7a4 Moved `net/base64' code from unit to module.
original commit: 01041988759108dc93201ea8825dabd7bb651d1b
2011-09-05 14:13:04 -04:00
Eli Barzilay
8e2b1955b5 `purify-http-port' returns a new port, so make it close the old one.
original commit: 18e8b92fa1b4a34e3e79384fb528cf248c1952e3
2011-08-18 18:11:09 -04:00
Eli Barzilay
5555e8ccb9 Typo in error message.
original commit: cc69dfbd7192055b776c60ef4ef07d79171bf574
2011-08-17 10:00:55 -04:00
Jay McCarthy
eefd959974 De-unitizing cookies and making the serializable
original commit: b207f1051ac8845c75f2d2296dadbd0e88cbe397
2011-08-15 10:06:21 -06:00
Matthew Flatt
4692fba599 ftp: fix data download for some servers
original commit: 1c1d1934f4f597ee87778c01d356dfdba9eb5721
2011-08-10 08:28:13 -06:00
Matthew Flatt
8e79dbf235 syntax-taint repairs
for problems exposed by more agressive arming of `lambda'
and `#%app'

original commit: 001cb75bac6166541c2fc6803b4e1061743cbce3
2011-08-09 16:33:17 -06:00
Matthew Flatt
4138a2dc50 add `prop:liberal-define-context'
original commit: 39a96dd699a7bb287668cf97d76698fcbb3df1aa
2011-08-09 16:33:16 -06:00
Eli Barzilay
88cec89c03 Make mzlib/etc' reprovide identity' from `racket/function'.
original commit: d952a05ea9cbc974e65dd45b04adbf752bfd3b50
2011-08-06 20:59:16 -04:00
Eli Barzilay
2757ab7d15 Add an optional path argument to `ftp-directory-list'.
original commit: 5a7ddd66114035237e29f76d9632775b9c38810c
2011-08-05 01:14:16 -04:00
Eli Barzilay
8142ffa4d9 Return a file size string when possible.
This takes the advice from
  http://files.stairways.com/other/ftp-list-specs-info.txt
further: search for the date by an explicit occurrence of a known month
name.  This means that we won't see files with bad names (they'd be
filtered out of the result), but the filtered out entries are ones that
would not be usable with `ftp-make-file-seconds'.

When the month is found, and the entry is a file, look for a number
preceding the month, and if found, return it as the file size string.
This is a minor change in the API.  (But it's probably better to either
revise it further, or eventually make it irrelevant by exposing the
interesting functionality via `net/url'.)

original commit: 6a1336e75edff75b7fc8a22a31d776acadc536eb
2011-08-05 01:14:16 -04:00
Eli Barzilay
38c93addda Removed a bunch of bytes->strings conversions since output does that anyway.
Also got rid of `filter-tcp-data', and just use `port->lines' instead.

original commit: 4daaa846369f47f9e1c43cbae22673d8fa0693ba
2011-08-05 01:14:16 -04:00
Eli Barzilay
cf2a703ad4 Make `ftp-make-file-seconds' use a correct year instead of 2002.
This function was using 2002 when there's no year...  Updated it to use
the last occurrence of the guessed date, as described at
  http://files.stairways.com/other/ftp-list-specs-info.txt

This function still looks pretty bogus -- the RFC does *not* say
anything about the format of response to `LIST', so it's whatever
semi-random thing the server does.  (The above link looks like an
attempt to fix it, but I didn't see anything more official than that.)
From some looking around, it looks like ftp clients just try a bunch of
patterns against the text.  Add also warnings in the documentation about
this.

original commit: 234015b34d43a602dfcabe9365de9027531c2f9f
2011-08-05 01:14:16 -04:00
Eli Barzilay
7d51058755 Use UTF-8 and CRLF in the ftp client
RFC 2640 specifies that all transport strings are assumed UTF-8 if they
can be parsed as such.  To make this complete it should really send a
FEAT and check that the result has "UTF8", but it's kind of redundant
since there's not much else to do if it isn't.

Also, switch to a more correct line endings of CRLF when sending
messages to the server.

original commit: ba48669ead349f3b9454ec12014f7e73d13c49c3
2011-08-05 01:14:16 -04:00
Matthew Flatt
543bfedad2 another error-message fix
original commit: 2146a020c05bb0cdc0fa9427e321ef7840e959da
2011-07-31 05:09:49 -06:00
Eli Barzilay
61d3c80212 fix error reporting in `reencode-output-port'
Closes PR 12077

original commit: 61f628f2c6cdd5ae355156f6c37b2c458af1e2c3
2011-07-25 23:46:16 -04:00
Matthew Flatt
4757e1cc6a fix error reporting in `reencode-input-port'
Closes PR 12076

original commit: e01ee43300a163bddd89240f75d3198cd9d2aa8d
2011-07-25 13:11:05 -04:00
Robby Findler
fd0971909b missed a spot in the addition of chaperone info for opt/c
original commit: 7820db9f8d37f2a65ebda21402bd551886494d64
2011-07-21 09:38:22 -05:00