Commit Graph

33155 Commits

Author SHA1 Message Date
Eric Dobson
362747bfcd Make apply of poly functions more like regular functions. 2014-05-09 20:21:10 -07:00
Eric Dobson
5e0670d87e Add tests for empty case-lambdas in apply. 2014-05-09 20:21:10 -07:00
Matthew Flatt
5c521961b5 racket/sandbox: fix guard on attempt to flush sandbox plumber 2014-05-09 16:27:04 -06:00
Matthew Flatt
7987740d18 file/gzip: compensate for too-far lookahead 2014-05-09 15:47:01 -06:00
Robby Findler
86a96d35b7 adjust keybindings doc to be more informative, but
also never use unprintable characters
2014-05-09 12:39:51 -05:00
Jay McCarthy
723fae213c changing valid char to XML 1.1 rather than 1.0 and reverting changes from recent PR 2014-05-09 10:39:35 -06:00
Jay McCarthy
fc8075245a protect against errors in chunking or gunziping... without this there can be hangs 2014-05-09 10:39:34 -06:00
Matthew Flatt
718cbd4c41 distro-build: fix catalog relative paths
The old use of relative paths was unusual and fragile.
Proper relative paths are now supported, so generate paths
consistent with that.
2014-05-09 10:32:14 -06:00
Matthew Flatt
db1c05f78e change DrRacket doc to not attempt to render a control character 2014-05-09 09:37:25 -06:00
Matthew Flatt
e4e8a69e06 scribble: discard partial output on exception
This change avoids the problem of a bad "index.html" on a doucment
rendering error, where the presense of an "index.html" would count
as successes on a retry.
2014-05-09 09:37:24 -06:00
Matthew Flatt
0c7ebb9278 drracket: plumber for user process
The exit handler in the user process flushes via the plumber,
but maybe DrRacket could do more with the user's plumber, such as
attempting to exit instead of always forcing the old user process to
terinate when the "Run" button is clicked.
2014-05-09 08:16:21 -06:00
Matthew Flatt
01aec8f4cd racket/sandbox: plumber
A sandbox needs it own plumber so that sandboxed code cannot attach an
arbitrary callback to the plumber outside the sandbox. The plumber
outside the sandbox gets a flush callback that tells (within the
sandbox thread) the new plumber to flush.
2014-05-09 08:16:21 -06:00
Matthew Flatt
d5b42f8c50 add plumbers, remove custodian-tidy-all
In v6.0.1.7, I tried to give a port-flushing job to custodians. They
turned out to be unqualified, so let's try employing specialists.

Thanks to Eli for pointing out the problem with the v6.0.1.7 design:
attaching callbacks to custodians allows a sandboxed task to escape
through the custodian hierarchy. Plumbers avoid this problem by
having no hierarchy.
2014-05-09 07:06:27 -06:00
Sam Tobin-Hochstadt
e1ab2ffcf4 Fix contract.
First bug caught with new test.  Thanks Robby!
2014-05-08 16:19:30 -04:00
Ryan Culpepper
98ae3d8b2d v6.0.1 announcement 2014-05-08 16:10:44 -04:00
Ryan Culpepper
1618dc7018 v6.0.1 installers info 2014-05-08 15:58:42 -04:00
Matthew Flatt
fdf06e461a add raco pkg catalog-archive
The `catalog-archive` command not only copies a catalog, but also copies
all package sources referenced by the catalog to create a snapshot that
doesn't depend on any external pieces.

One reason you might want to do that is to download all packages on a
machine with general network access, and then building packages on a
(virtual) machine whose network access is limited.

This commit also adds support for relative package sources in the
catalog protocol, where a client converts a relative package source to
an absolute one.  Since the relative-to-absolute conversion happens on
clients, relative sources will be of limited use until v6.0 and v6.0.1
become deprecated.

A new `current-pkg-lookup-version` parameter corrects the misuse of
`current-pkg-scope-version` for package-catalog queries.
2014-05-08 11:03:31 -06:00
Eric Dobson
e5d4aed2fb Remove duplicate case in infer. 2014-05-07 21:13:04 -07:00
Eric Dobson
03373d1189 Add cgen/inv and use it. 2014-05-07 21:13:04 -07:00
Eric Dobson
c7645170e3 Make cset-meet take more than two arguments. 2014-05-07 21:13:03 -07:00
Robby Findler
bf9cdfb3f1 fix contract test suite responsibilities 2014-05-07 21:33:57 -05:00
Robby Findler
ce3f891209 improve any/c's random generation
by using the environment sometimes and making up (simple) functions
sometimes
2014-05-07 21:29:32 -05:00
Robby Findler
05def2ddf5 unbreak or/c opter
(the missing require meant that the wrong "or/c" was being registered in the table)
2014-05-07 21:29:32 -05:00
Robby Findler
aef9f1924b fix mzlib contract tests for or/c stronger improvements 2014-05-07 19:25:23 -05:00
Robby Findler
d812d171f9 add generator for any/c and improve generator for or/c
also improve test cases a little bit and minor Rackety
2014-05-07 19:25:22 -05:00
Robby Findler
7ec9cb0274 fix generator for or/c 2014-05-07 19:25:22 -05:00
Sam Tobin-Hochstadt
f32bbc134a Increase timeout. 2014-05-07 18:19:06 -04:00
Jay McCarthy
7740733c05 Fixing PR14478 2014-05-07 15:42:52 -06:00
Jay McCarthy
7ce7f9c2f2 cleanup for size 2014-05-07 15:42:52 -06:00
Vincent St-Amour
8e991203bc Fix contract profiler path shortening.
Was not preserving list order while shortening.
2014-05-07 14:37:43 -04:00
Sam Tobin-Hochstadt
59ee811fb3 Add test that runs TR unit tests with contracts on. 2014-05-07 12:21:25 -04:00
Sam Tobin-Hochstadt
774afb6caf Fix evaluator.rkt to work with dynamic-require. 2014-05-07 12:21:25 -04:00
Asumu Takikawa
2bd20a652e Fix registration of Opaque type alias in REPL
Closes PR 14487
2014-05-07 10:57:07 -04:00
Matthew Flatt
903e82731e fix vector-map! to not mutate immutable vectors 2014-05-07 07:41:13 -06:00
Matthew Flatt
c33707329c racket/port: add a flushing tidy callback for reencode-output-port
This change solves a long-standing problem that reencoded output
was not flushed on exit, especially in the case that the
current output port is reencoded.
2014-05-07 07:41:13 -06:00
Matthew Flatt
1bd604073a add custodian-tidy-all 2014-05-07 07:41:13 -06:00
Eric Dobson
0ba8cd9586 Fix check-subforms and reenable TR contracts. 2014-05-06 22:50:58 -07:00
Asumu Takikawa
f638247b26 Add docs for TR's filter syntax 2014-05-07 00:25:08 -04:00
Asumu Takikawa
6c97d96853 Add a syntax for some asymmetric predicate filters
Relevant for PR 14423
2014-05-07 00:25:08 -04:00
Robby Findler
2a7a6f3897 document contract-exercise 2014-05-06 21:29:19 -05:00
Robby Findler
0f16f31db9 clean up and export support for exercising values with contracts 2014-05-06 21:29:19 -05:00
Robby Findler
9a6970043a fix contract-random-generate so it picks the generation method
randomly during generation, not randomly up-front, before
generation
2014-05-06 21:29:18 -05:00
Sam Tobin-Hochstadt
3c78f7a0c8 Allow TR contracts to be turned on with an env variable. 2014-05-06 20:29:42 -04:00
Sam Tobin-Hochstadt
c324854e0e Fix contract syntax in unit signature. 2014-05-06 20:29:42 -04:00
Sam Tobin-Hochstadt
f8da26dddc Fix a test error. 2014-05-06 20:29:42 -04:00
Robby Findler
4de1583c68 make or/c and contract-stronger? collaborate
in order to make contract-stronger? work better when given the result of or/c
2014-05-06 16:33:20 -05:00
Matthew Flatt
6f259fbd42 meta/new-web/sync: add --save-temps flag 2014-05-06 14:35:02 -06:00
Sam Tobin-Hochstadt
6567ebff59 Remove dependencies on unstable/debug. 2014-05-06 14:17:04 -04:00
Sam Tobin-Hochstadt
c2d041a795 Fix package name in license. 2014-05-06 14:17:03 -04:00
Sam Tobin-Hochstadt
f83950fbab Refactor type inference to eliminate exceptions.
This provides approximately 6% speedup on
`racket -l math/scribblings/math.scrbl` and about
14% speedup on the `new-metrics` test.

Mostly this involves threading #f through the whole
of the inference process.  There are several new
macros in `typed-racket/infer/fail` which are useful
for comprehensively using Maybe-monad style
programming in Racket.  Of particular note is `%`,
which satisfies (% f e ...) => (and e ... (f e ...))
but with the obvious fixes.

This commit also weakens several contracts which
caused the build of DrRacket and/or `math` to fail
when contracts were enabled.
2014-05-06 14:17:03 -04:00