[racket-dev] drafting the v5.1 release announcement
Here are some items I pulled from the commit log
Robby:
823b6629aae7a1c668c2dffb2d89a16fc4a5889c
add an extra check to make sure drracket is more likely to startup
when things go wrong in strange ways
Please merge to the 5.1 release branch
ce4bf97bde32032b0663c623d8ef1f2158a96fae
monitor the font size preference in order to redo the one-line size
computation for the search bar
closes PR 11687
0411cddba53914a33af88d720fd4d05634aac016
added set/c and made sets print as set, seteq, or seteqv
closes PR 11454
670d58d134eaf2dc5ed6ef4ea60f53d66321acda
added un/cache-image, a function that enables/disables the drawing
cache in 2htdp/image images
b77847904e4d05a731ca331c7d84e3532c980521
adjust the way the () colorer status thingy draws
2f009ca529fcbe4ebe496379a5403cbcf1a0cd14
changed the way equal<%> and snip% interact. Specifically:
- snip% now implements equal<%>
its equal-to? delegates to other-equal-to?.
- snip%'s other-equal-to and equal-hash-code and
equal-secondary-hash-code all just amount to using eq?. The
setup is here just to make snip% be the one that declares
that it implements equal<%> so that various snips can adjust
other-equal-to? (and the hash code methods)
- image-snip% no longer implements equal<%>
(but it extends snip% and it overrides other-equal-to?
and the hash-code methods to do what they always did)
4917d2af4a680de5380f0b82ef13f82d216d7d76
added freeze to 2htdp/image
d1fe2766559133ba3913c5aef1f3f72c1a8be758
adjust the bug report form so that hitting return does not submit
the bug report
as mentioned in PR 11551
0542d3ca7084579b1c209ee52e52edcc59a6ad53
added support for saving bug reports (for ease of offline submission)
also cleaned up a bunch of little things in the bug report
implementation:
- the abort had race conditions
- formatted the collections a little bit better (hopefully)
- broke the implementation up into multiple files
- fixed broken interaction with drracket (the drracket frame mixin
is now being used properly)
18dacad6c825e4fb18b37f1eae259d6c73419fc6
a first attempt at a rewording of the blame error messages to admit
the possibility that the contract was wrong and also to claim that
fixing the blamed module or the contract is all that is required
note that two test cases are failing, but only because they depend
on the wording of the error messages; once that is set, I'll fix them.
a63bbf82abb4b43b59d67ce9383c21b3ad1074ee
added current-trace-results
Matthew:
dfa36afa894ecc4a9626ecbe1ba36e4ff1f00a77
change `floating-point-bytes->real' to always produce a flonum
ff0a591b7beaadf68053b1f0beba2595a442aef0
change FFI `_float' to coerce to Racket double-precision flonum
3ef32d915ba6d07e5191aa980ba0a936e1970462
make inexacts `eqv?' only when precision is the same
plus some other small fixes
b5bc288f676a81129ea93aaffeaebefa18831879
Windows: fix `path-list-string->path-list' to throw away quotes
--- which seems to be what the command shell does with quotes in
PATH, at least; Microsoft isn't in the habit of documenting this
sort of thing
fb406390b7dbb44f8811d2ff07f058019c026715
fix readline port to obey port protocol & use interaction port handler
--- in particular, it no longer blocks on a read request; the
call to the readline library now uses a separate thread,
so that the input port can return an event
069a7c2b4871477bf35a120b33ff5d7358e23a7c
add `current-get-interaction-input-port' and adjust `racket/gui'
so that GUI events are dispatched while a REPL is blocked on input
b112fd76df4305b178a7e761fe0d29214a37c518
add `reparent' to `subwindow<%>'
98822cf1f989efd7c22f5d9587a65aeee29f26c0
adjust `racket/gui' and dependencies to survive a locked preference file
- adds a `#:timeout-lock-there' argument to `get-preference'
- fixes preference looup in `racket/gui'
- make preference names consistently use `GRacket' and consistently
fall back on `MrEd' names
- fix Emacs-style undo mode while we're at it
d8e123753c40fadc6d51513cf1fa5e4eca614bc8
gtk: enable input-method (e.g., Chinese) support
79cd92859c9f6227abfd2a97ca0f3aa209d2c6eb
disable user-specific setup on `make install' by default
and add a `--enable-userspecific' flag for `configure'
d6fc7da7501ff636ebf13639def6909aaa4feb47
add `refresh-now' to `canvas%'
--- this method doesn't have to be built in, but it
encapsulates a common and not-too-obvious pattern
13ddab969b7a071f3b0a532a19f579cdf6e2cb9a
enable ptherads by default for OpenBSD
55693e090f5f9686b286e69f1181565895194846
add `port-try-file-lock?' and `port-file-unlock'
7319b539f0fcef27637a507367e64bfce1808931
win64: initial CGC build
cc82d3728525b5bac3f2cb91d249d5404a7a3bd0
Scribble Latex image support (missed an earlier commit)
421519994d42ccd5a731e6b0b914ddf283988318
make SSL listeners events
aa7c4b53d9c2962536b3a37bb244600d7216289e
add `codeblock' to Scribble
Matthias:
814a847323262813cd2382a020aaa152089b1501
made to-draw/on-draw in big-bang mandatory; Closes PR 11663
Blake:
4676662e4b25f2c43433289433932523bd5c00aa
moved demodularizer from github to collects and added it to raco
Mike:
fa854f62fc22a81cbb3aa0efa1997ade18c9e7c3
Add vector signatures, and `vector-of' to the HtDP signature syntax.
Vincent:
4ac36fd59bc35cb0d60cb050cfaae21d213064c8
Added the new single-precision float function to TR.
ac76d963b0e4b70c17753b22833c630f3d71cd1b
Enable single-precision floats by default.
46f086282d7302e7e015109c9f945a92350e384c
Bytes are a sequence of the new Byte type.
d4c93cc12e6df893ba2e782f0e0ea5529738315a
TR's numeric tower is now built from unions of non-overlapping base
types.
A lot of the work that was done by special-casing number types can
now be
done by TR's handling of unions. This makes it easier to add more
numeric
types to the tower and should make writing down types for numeric
primitives much less error-prone.
In addition, this commit adds several numeric types that will help get
tighter bounds on integer arithmetic, such as Index types. They will
have
to be integrated to the base environment before they can be useful.
Casey:
f7fd6ee68996564d73ed71055182c4c425c240d1
Changes the term generator to produce shorter sequences
It now uses the (local) size bound instead of the (global) attempt
count.
Kevin:
b88ff8983710da79e8f4b2fc05748b08fc5e92cd
racket/draw gradient support
Eli:
40610643bfc705dd014090ca9e3a0567b38a9567
Make `take' less forceful -- so now (take 0 (error "foo")) returns '()
instead of throwing an error.
9e302a7106f5cbfe3e08c2d6ae17775ce70ac8f6
Rename `sequence' library to `stream', move from `racket/base' to
`racket'.
Jay:
d6d9f3ef8cbd8f6cd65e7e5d20e76fd69b01d968
Adding dynamic/c and coerce/c
Stevie:
a04b8d989936e64e29d2ae123da39159c2cdf2e6
Change instanceof/c to allow more contracts.
Now instanceof/c no longer checks explicitly for a class/c contract, so
or/c or and/c of class/c contracts succeed.
92775c5e4ee55986da9fec18a171c59b8fb4f64f
Add instanceof.
The instanceof contract combinator takes a class contract. The
resulting
contract protects objects using the external field and method contracts
in the class contract.
0c4658f718ad9a4d5b857c06785650247316d705
Conversion of -> to impersonators.
On 02/09/2011 01:37 PM, Matthew Flatt wrote:
> Let's get the ball rolling on the release announcement. Here are draft
> bullets for the drawing and GUI libraries:
>
> * The `racket/draw' library --- which implements the drawing half the
> GUI toolkit --- is a new implementation built on top of the Cairo
> drawing library and the Pango text-rendering library.
>
> The `racket/draw' library can be used independent of the
> `racket/gui/base' library and without a graphics display (e.g.,
> without an X11 connection).
>
> The new library has one small incompatibility with the old GUI
> toolbox: 'xor drawing is no longer supported. The new library has
> many additional features: rotation and general affine
> transformations, PDF and SVG drawing contexts, gradients, and
> alpha-channel bitmaps.
>
> * The `racket/gui/base' library is a new implementation built on top
> of Win32 under Windows, Cocoa (instead of Carbon) under Mac OS X,
> and Gtk (instead of Xt) under Unix/X.
>
> Unix/X users will see the biggest difference with this change.
> DrRacket and all Racket GUI programs take on the desktop theme for
> menus, buttons, and other GUI widgets.
>
> The GRacket executable is no longer strictly necessary for running
> GUI programs, because the `racket/gui/base' library can be used from
> Racket. To the degree that a platform distinguishes GUI and console
> applications, however, the GRacket executable still offers some
> additional GUI-specific functionality (e.g., single-instance
> support).
>
> The new library includes small incompatibilities with the old GUI
> toolbox: the `send-event', `current-ps-afm-file-paths', and
> `current-ps-cmap-file-paths' functions have been removed. The
> `racket/gui/base' library re-exports `racket/draw', so it includes
> the same drawing functionality as before (except for 'xor drawing).
>
> _________________________________________________
> For list-related administrative tasks:
> http://lists.racket-lang.org/listinfo/dev