Commit Graph

27364 Commits

Author SHA1 Message Date
Neil Toronto
0936d8c20b Reworked distribution API, finally happy with it (as happy as I can be without being able to partially instantiate polymorphic parent struct types)
Added docs for math/distributions (about 75% finished)
Started docs for math/array (very incomplete)
2012-11-21 21:16:35 -07:00
Robby Findler
c359e371bf add a toolbar option for being on the top,
but with the small size buttons

closes PR 13281
2012-11-21 21:43:44 -06:00
Ryan Culpepper
07c6e89899 remove cancel box, no longer needed with ffi/unsafe/alloc
Also, found the source of mem corruption: the finalizer's cancel box
(from create-ssl) was shadowed by a new box put in mzssl struct.
2012-11-21 12:56:31 -05:00
Ryan Culpepper
44177ca406 use ffi/unsafe/alloc
Fixes a memory leak in SSL_get_peer_certificate.

Fixes a memory leak (finalizer closure refers to obj) in create-ssl
for _SSL* obj. Correcting the finalizer to run caused mem corruption
(possibly due to double-freeing in mzssl-release, despite cancel box)
but changing to allocator/deallocator seems to avoid the problem.
2012-11-21 12:56:31 -05:00
Ryan Culpepper
25847a9342 lift error checking out of atomic 2012-11-21 12:56:31 -05:00
Ryan Culpepper
df10bf3421 simpler version of make-immobile-bytes 2012-11-21 12:56:31 -05:00
Ryan Culpepper
b377976ba5 use ffi/unsafe/atomic 2012-11-21 12:56:31 -05:00
Ryan Culpepper
85fba029a5 use define-cpointer-type 2012-11-21 12:56:31 -05:00
Ryan Culpepper
a5c415d15a change allocator wrapper to ignore #f results
Supports foreign functions that either allocate or return NULL
(translated to #f).
2012-11-21 12:56:30 -05:00
Ryan Culpepper
ba62b1dd57 added ssl-secure-client-connection 2012-11-21 12:39:18 -05:00
Ryan Culpepper
f446adad3f added ssl-set-ciphers! 2012-11-21 12:39:17 -05:00
Ryan Culpepper
4b4113d528 get default CA cert locations (when available)
This probably doesn't work on Windows or Mac OS X.
2012-11-21 12:39:17 -05:00
Ryan Culpepper
c632a84a95 add ssl-seal-context!
Unsealed contexts are not safe to share, because one user may
change it in a way that ruins the security of another.
2012-11-21 12:39:17 -05:00
Robby Findler
98633665b3 extend data/queue library
- add enqueue-front!

- add queue-filter!

- use the predicates instead of the /c contracts

- make queue-length take constant time

- add some random tests

- note the running times of all of the operations in the docs

- make queues be sequences directly (and use make-do-sequence
  to implement in-queue instead of building a list)

- added non-empty-queue? (note extra hypen as compared
  to the past; this seems better since the function
  wasn't exported before and we already have other
  functions named "non-empty-<something>" but not
  others namedn "nonempty-<something>")
2012-11-21 11:10:02 -06:00
Robby Findler
ac7c37812b fix dequeue! to actually not hold onto queue elements
(the comments on line 11-13 said that it did this already,
but it didn't)

also add a test case to be sure that it stays this way
2012-11-21 11:10:02 -06:00
Asumu Takikawa
f3a95ba9c7 List provides explicitly in draw contracts 2012-11-20 17:47:13 -05:00
Asumu Takikawa
b4dd3b5e1d Fail gracefully on TR struct arity errors
Closes PR 13209
2012-11-20 17:47:13 -05:00
Asumu Takikawa
7a190a41b4 Lazily init the cache for interface contracts.
This reduces the memory usage of very small classes.
It appears to have no real effect on large programs
such as DrRacket.
2012-11-20 17:47:13 -05:00
Vincent St-Amour
95d51fc892 Add new versions of for/hash: and co that the typechecker can handle.
Based on Eric Dobson's implementation.

Closes PR13248. Closes PR13249.
2012-11-20 17:45:15 -05:00
Vincent St-Amour
e2007abd7a Heterogenous -> heterogenEous.
Found by Ray Racine.
2012-11-20 17:06:51 -05:00
Vincent St-Amour
d994ba1914 Fix types of variable arity functions to work with 0-argument return values.
Closes PR13218.
2012-11-20 16:15:20 -05:00
Matthew Flatt
df4563588e switch raco pkg create' to file/tar' and `file/zip' 2012-11-20 10:12:27 -07:00
Matthew Flatt
376b1f373a switch raco pkg install' to use file/unzip' 2012-11-20 10:12:27 -07:00
Matthew Flatt
8a77d87a30 add file/unzip
Based on Dave Herman's "zip.plt" Planet package.
2012-11-20 10:12:27 -07:00
Asumu Takikawa
dcf2b0f4dc Add for-label require 2012-11-20 13:31:05 -05:00
Joe Gibbs Politz
e264e41488 Add check-match to rackunit
check.rkt:
  Added the actual check-match macro.

test.rkt:
  Just a provide statement

check-test.rkt:
  7 additional tests for check-match, and a macro to help create tests

check.scrbl:
  Documentation and examples for check-match
2012-11-20 13:02:31 -05:00
Matthew Flatt
31f7cfb486 racket/gui gtk: fix end-doc' for printer-dc%'
Contract demands a void result.
2012-11-20 07:15:28 -07:00
Matthew Flatt
fc68d02027 JIT: more buffer-limit adjustments
To cut down on PPC-specific problems, make the JIT buffer's padding
larger on that platform (since instructions tend to be larger).
2012-11-20 06:27:05 -07:00
Eli Barzilay
95541928f1 New Racket version 5.3.1.8. 2012-11-20 03:30:15 -05:00
Danny Yoo
3f54afb9fd Add rb-tree implementation in preparation for improving token-tree performance. 2012-11-19 21:06:46 -07:00
Matthew Flatt
06db2f9a74 JIT: add missing buffer-limit check
The missing check affected PPC especially.
2012-11-19 19:24:45 -07:00
Matthew Flatt
a9d2a8a764 file/untar: try to better accomodate Windows permissions 2012-11-19 17:11:21 -07:00
Matthew Flatt
68bdf190d7 switch raco pkg install' to use file/untgz' 2012-11-19 17:01:01 -07:00
Matthew Flatt
0f47069f98 add file/untgz 2012-11-19 17:01:01 -07:00
Matthew Flatt
3a76581a36 add file/untar 2012-11-19 17:01:00 -07:00
Vincent St-Amour
6a7b971cd6 Only generate ->* contracts when arguments are really optional arguments.
Closes PR13274.
2012-11-19 17:35:07 -05:00
Vincent St-Amour
bdfd7f8d6f Add -d0 flag to Chicken benchmarks.
Recommended by Mario Goulart.
2012-11-19 17:35:07 -05:00
Vincent St-Amour
29cfc48c5e Fix citation disabiguation when authors differ. 2012-11-19 17:35:07 -05:00
Asumu Takikawa
a9201f68dd Fix typo
Related to PR 13241
2012-11-19 16:29:56 -05:00
Asumu Takikawa
dc609f46f0 Fix some docs. Add an example too. 2012-11-19 15:38:13 -05:00
Matthew Flatt
3e505af4f9 remove `sirmail'
SirMail is moving to its own repo:
 https://github.com/mflatt/sirmail
Install with
 raco pkg install sirmail
2012-11-19 12:15:01 -07:00
Matthew Flatt
deb3c87c32 avoid a compiler warning 2012-11-19 09:41:32 -07:00
Matthew Flatt
0f5308514a fix docs for `time'
The `time' form allows multiple forms and as an internal-definition
context.
2012-11-19 09:38:58 -07:00
Matthew Flatt
be20ecc8f3 minor bytecode-compiler fix
A bogus flag was propagated to closure information. This flag
was ignored by the validator, but not `zo-parse'. Make the validator
reject the bogus flag, too, while fixing the compiler.
2012-11-19 09:36:16 -07:00
Matthew Flatt
702df4b07a racket/gui/dynamic: make gui-dynamic-require' pull from racket/gui/base'
It was pulling from `scheme/gui/base', instead. The one from `scheme/gui/base'
is now different and still pulls from `scheme/gui/base'.

This could break some programs that accidentally depended on `scheme/gui/base'
exports from `gui-dynamic-require', but it's more likely to fix problems.
2012-11-19 08:13:48 -07:00
Matthew Flatt
d90fbaeff4 scheme/gui/base: fix module-attach problem in `make-gui-base-namespace'
The `scheme/base' module had become unreachable from the `mred' module.
While that normally would be a good thing, it lead to troublesome
multiple instantiations of `scheme/base' that caused problems for
attaching further modules to the namespace.
2012-11-19 07:56:48 -07:00
Matthew Flatt
843aa670e9 racket/gui: fix docs for `printer-dc%' and related functions
A page-setup dialog is now available on all platforms, which means
that no dialog will appear when a `pirinter-dc%' is created. Meanwhile,
note that `end-doc' normally shows a (different) dialog.
2012-11-18 10:31:21 -07:00
Matthew Flatt
345fce71d5 another fix to bytecode compiler's propoagation of local-type info
This one is related to shifting type info when the closure is
made smaller due to lifting of something that used to be in
the closure. The `games/pousse/robot' module exposed the bug.
2012-11-18 10:31:20 -07:00
Matthew Flatt
afca33b78b fix to bytecode compiler's propoagation of local-type info
This is another old bug that could have caused validation failures
with flonums, but it showed up with fixnum tracking because fixnums
are more common (e.g., from `string-length').

There were really two bugs: information installed at the
wrong offet in one place, and a failure to detect that information
should be propagated in a different place. Fixing both avoids
a validation problem with `html/sgml-reader'.
2012-11-18 10:31:20 -07:00
Matthew Flatt
81fc033f93 JIT: refactor unboxing flostack to better support other datatypes
Instead of keeping offsets in terms of `double's, keep it in
terms of bytes. This change is a step toward putting other kinds
of values on the flostack, such as extended-precision floats.
2012-11-18 10:31:20 -07:00