Commit Graph

30195 Commits

Author SHA1 Message Date
Mike Sperber
5302353055 Synch German string constants with latest. 2013-08-17 15:02:02 +02:00
Matthew Flatt
72a4191aa9 raco pkg update: allow packages sources as replacements
When an argument to `raco pkg update` is a package source,
use it to place the currently installed package.

Also, make the set of available command-line arguments more
consistent, especially for `raco pkg install` and `raco pkg update`.

Finally, fix the `--update-deps` flag, including checking
the dependencies of each updated packages based on then update,
instead of the pre-updated package.
2013-08-17 06:03:10 -06:00
Matthew Flatt
6baf90e3be Documentation and adjustments to `clear'-related hash and set operations
Document and adjust `hash-clear!', `hash-clear', and `hash-empty?'.

Also, add `hash-copy-clear'.

The clear operations are constant-time for a non-impersonated
hash table, otherwise they always remove keys one-by-one to
trigger the impersonator's interpositions.

The `hash-clear' operation works only on immutable hash tables,
in contrast to the original implementation. The new `hash-copy-clear'
works on both immutable and mutable hash tables. The "copy"
in its name is meant to suggest a difference with `hash-clear',
even on immutable hash tables: any chaperone on the input
is not on the outpue.

Change `set-clear' to be like `hash-clear', and add
`set-copy-clear'.

(Changes are in consultation with Carl.)
2013-08-17 06:03:10 -06:00
Robby Findler
5aeca646d4 fix a bug found by the lexer stress test
Unfortunately, not the bug I was hoping to find.
This bug appears to be very old, however; perhaps
as old as the colorer itself.
2013-08-17 06:09:23 -05:00
Robby Findler
42566f1dc4 add a "random clicking" test for the 2d lexer 2013-08-17 06:09:23 -05:00
Matthew Flatt
c02aeb75f0 scribble-lib package: keep "doc" subcollection in source package 2013-08-16 16:59:46 -06:00
Matthew Flatt
8eac4c18e8 meta/pkg-push: extra dependency note 2013-08-16 15:25:41 -06:00
Matthew Flatt
2b1b41cd50 make site: fix PDF doc link 2013-08-16 15:25:40 -06:00
Matthew Flatt
6fc868d5b9 raco pkg show: note when auto-installed packages are not shown
Otherwise, imagine uninstalling packages without `--auto', using `raco
pkg show' to confirm that none are left, and be surprised by a later
error about installed packages.
2013-08-16 15:25:40 -06:00
Matthew Flatt
6b8d84c745 meta/pkg-push: fix typo 2013-08-16 15:25:40 -06:00
Robby Findler
a953425af4 adjust htdp tests for the change to require in 736c8ca12b 2013-08-16 16:05:38 -05:00
Robby Findler
efd2683301 adjust the drracket, menu-based teachpacks to be found via info.rkt files
Pre 6.0, the teachpacks were found using collection-path, but that doesn't
work anymore. Pre this commit, they were found by using

  (collection-file-path "image.rkt" "teachpack" "htdp")

and

  (collection-file-path "image.rkt" "teachpack" "2htdp")

and then looking for files in the same directory. This worked, but is
a total hack.

This commit changes to an info.rkt-based setup, but the changes ended up
percolating around the teachpack & teaching languages implementation more
than I would have liked (specifically because the internal
datastructure for a teachpack references was an sexp of the form:

  `(lib ,(? string-without-slashes?) ...)

but now teachpack references can be arbitrary results of
path->module-path, which never seems to be the above (instead using
the slash-based `lib' module paths)).

So a bunch of places in the teaching langauges code changed to
recognize the right slashes for the teachpacks that have always been
there to preseve the DrRacket API and fall back to just showing the
module path otherwise. There may be places I've missed, tho, that
are expecting the simple lib form and may now be surprised.

On the upside, 3rd parties (via new packages) can now add things
to the teachpack menu item. On the downside (beyond the likely
bugs I've just introduced in this commit), we're supposed to be
getting rid of this dialog, not making it more extensible.
2013-08-16 14:08:41 -05:00
Robby Findler
736c8ca12b loosen the syntactic restrictions on htdp teaching languages' require
Specifically, allow single-argument 'lib' require specs
2013-08-16 14:07:56 -05:00
Robby Findler
21ac868253 use new shrink-path-wrt in drracket 2013-08-16 14:07:56 -05:00
Robby Findler
27e9759bd5 add shrink-path-wrt 2013-08-16 14:07:55 -05:00
Robby Findler
c3e81c8d16 typo 2013-08-16 14:07:55 -05:00
Matthew Flatt
1347073cc5 fix immutable hash tree balancing
When an existing entry in the AVL tree for an immutable hash
is replaced with a new one, the new one did not always get
the right depth, which could throw off the tree balance.
2013-08-16 11:35:40 -06:00
Matthew Flatt
6a6d60dd5f setup/dirs: add `find-user-links-file' 2013-08-16 10:24:18 -06:00
Matthew Flatt
f8a225f741 faster paths for parameter lookup
Calling a parameter function (with no arguments) can be 2-3 times
as fast as before.
2013-08-16 10:24:18 -06:00
Matthew Flatt
8e20aa1cbf fix some missing native-library dependencies 2013-08-16 10:24:17 -06:00
Matthew Flatt
494a428a94 meta/pkg-push: add module and dependency information 2013-08-16 10:24:17 -06:00
Matthew Flatt
6035db418f pkg/lib: add `pkg-directory->module-paths' 2013-08-15 18:18:42 -06:00
Matthew Flatt
21bba8a10b package system: clients extract version-specific info from a catalog result
When a client sends a query to a package catalog, it includes a
version number in the query, and a package catalog can customize its
response to the version. That approach allows evoluation of the way
that versions are mapped to results, but it does not allow a
directory-implemented catalog to offer version-specific information.
Allowing both the server and the client to filter on the version is
even more flexible, and in particular allows a directory-implemented
catalog to include version-specific mappings.
2013-08-15 18:18:42 -06:00
Matthew Flatt
d97950cbe7 pkg catalog protocol: document 'versions field 2013-08-15 18:18:42 -06:00
Matthew Flatt
fb62686d8a raco pkg catalog-{show,copy}: add `--version' flag 2013-08-15 18:18:42 -06:00
Matthew Flatt
6235da4e58 fix docs for `call-with-default-reading-parameterization' 2013-08-15 18:18:42 -06:00
Carl Eastlund
47a568c490 Moved tech terms for "implemented" and "supported" generic methods.
These terms are now documented with define-generics rather than gen:set, and the
terms are "implemented generic method" and "supported generic method" rather
than the over-general "implements" and "supports".
2013-08-15 20:12:44 -04:00
Carl Eastlund
acc4afad6f Added raise-support-error and exn:fail:support to racket/generic.
The exn:fail:support exception is used to signal "unsupported" values for
generic methods, e.g. a vector as argument to dict-remove.  Right interface,
just the wrong kind of instance.  The exception type helps define the notion of
a "supported" method, since a method might have a fallback implementation yet
some values are not considered "supported".
2013-08-15 20:10:31 -04:00
Stephen Chang
766761f6b4 edit docs for gen:set methods
- classify methods into 3 categories:
  - no fallbacks
  - fallbacks that require an "implementation" of another method,
    ie not another fallback
  - fallbacks that require "support" of another method
    --- can be another fallback
2013-08-15 14:44:50 -04:00
Robby Findler
a496cb5a17 Define the pre-installed teachpacks to be those teachpacks
that are in the same directory as the image teachpack (for
htdp and htdp/2e)

closes PR 13967

This isn't the best solution: it would be better if I could
get the directory containing any collection whose name is
teachpack/htdp, but that doesn't seem easy with the current
set of functions

also, bring down below 102 columns
2013-08-15 12:53:40 -05:00
Robby Findler
3980acef04 fix cmd-. shortcut's call to set-position
(so it no longer sets the range to a strange thing (in some cases))
2013-08-15 12:53:39 -05:00
Matthew Flatt
6b16d0b9de cm: change an "internal" error to show OS-level error 2013-08-15 06:21:19 -06:00
Matthew Flatt
ec38dbb99a Makefile: fix source mode for snapshots 2013-08-15 06:21:19 -06:00
Matthew Flatt
d586ea4e99 pkg/path: improve use of cache in `path->pkg'
Cache exploded package paths, which cuts about half
(more than a second) of the start-up time for
`raco setup' on my machine.
2013-08-15 06:21:19 -06:00
Robby Findler
4efdfd6aa9 fix unstable/2d/match so that it doesn't duplicate the bodies of
the cells any more (but still gets the binding right)

The patterns are still being duplicated, so actual code might still
be being duplicated
2013-08-14 21:24:05 -05:00
Eli Barzilay
9e299ea15d Fix props errors
The only error that I see now is due to "collects" which doesn't exist.
I've left it in since it looks like it was added explicitly for some
reason in 5504627.
2013-08-14 21:19:07 -04:00
Robby Findler
593ab2d51f overwrite mode repairs
also make keys.rkt test suite be less likely to corrupt the
preferences file (when run in standalone mode)
2013-08-14 17:46:28 -05:00
Vincent St-Amour
0f4ff899e6 Comment typo. 2013-08-14 17:09:14 -04:00
Eli Barzilay
c069b8e51c Fix output of keys.
They need to be encoded in the same way that strings are
encoded.  (Report and fixed by Phil Roberts.)

Also added a FIXME about leftover occurrences of \U in the output.

Closes PR 13966.
2013-08-14 16:51:31 -04:00
Robby Findler
431a520ed8 add error message with the right form name 2013-08-14 15:46:31 -05:00
Robby Findler
506566ac6a rewrote unify* to use #2dmatch 2013-08-14 15:46:31 -05:00
Robby Findler
5cc2ec0cca adjust 2dmatch so that it copies more code
but this also means that multi-column cells can
refer to variables in the column header (ditto
for multi-row cells)

the code duplication can be fixed with a little
more smarts at the match level, I believe
(see comment in source)
2013-08-14 07:20:52 -05:00
Robby Findler
428ba39862 disable batch-io-xexpr.rkt in drdr 2013-08-14 07:20:51 -05:00
Matthew Flatt
1cd844d0a6 Support non-GNU `make' 2013-08-13 17:26:21 -06:00
Matthew Flatt
35608b36b4 setup/getinfo: change bootstrap mode to try bytecode
Loading "info.rkt" files always from source turns out to be
expensive (adding 1 second or so on my machine to the startup
time for `raco setup'). Change bootstrap mode to try the compiled
form and fall back to source if its doesn't work.
2013-08-13 16:05:36 -06:00
Matthew Flatt
3f8475d6a9 optimizer: certain bitwise-operation patterns always produce fixnums 2013-08-13 16:05:36 -06:00
Matthew Flatt
de322740a6 file/gzip: misc clean-up
Separate state and functions, and convert a key loop to functional
style. As it turns out, this has no significant effect on performance,
but it looks a lot better to me.
2013-08-13 16:05:36 -06:00
Matthew Flatt
1acdcf2fb9 speed up gzip by moving struct definitions
Moving the `define-structs' to the module top level
makes it easier for the JIT and cuts compression time by
about 1/3.
2013-08-13 16:05:36 -06:00
Matthew Flatt
ccb31f4153 fix name handling in `tar-gzip' 2013-08-13 16:05:36 -06:00
Asumu Takikawa
19904cee7a Fix reference typo for datum->syntax
Closes PR 13965
2013-08-13 16:02:46 -04:00