Commit Graph

40544 Commits

Author SHA1 Message Date
Julien Delplanque
2e56976dab Fixed small typo. 2019-12-10 06:09:32 -07:00
Paulo Matos
529c0e93a8
Correct which racket is built for CS bootstrap (#2952) 2019-12-10 09:17:43 +01:00
Matthew Flatt
a319b7e073 cs: wake up main thread blocked on fsemaphore
If a future posts to an fsemaphore that the main thread is waiting on
but went to sleep, then be sure to wake up the main thread.

Relevant to #2957
2019-12-09 07:18:16 -07:00
Matthew Flatt
6db1bdda1b cs: fix touch on a future blocked on a fsemaphore
Relevant to #2957
2019-12-09 06:25:39 -07:00
Ben Greenman
8e884089a2
doc: pidefterm -> deftech (#2956)
Use `deftech` for "structure subtype" so that Typed Racket can more
easily reference it
2019-12-08 17:55:26 -05:00
Matthew Flatt
db626bde3d schemify: don't copy uninterned symbols across module boundary
As pointed out by @gus-massa at racket/ChezScheme#15
2019-12-08 06:22:20 -07:00
Matthew Flatt
602c7b0331 avoid some GC tests on CGC
Relevant to #2954 #2955
2019-12-07 17:10:31 -07:00
Matthew Flatt
6e958d8339 net/sendurl: doc correction 2019-12-07 16:39:44 -07:00
Reuben Thomas
26e3651ef9 net-lib/net/sendurl.rkt: use same executable filtering on all systems
Use “cmd.exe” on Windows. This enables us to have a list (of length one on
macOS and Windows) of launcher executables on all platforms, and use
send-url/unix, now renamed to send-url/simple, to launch all URLs without a
query or fragment.
2019-12-07 16:38:38 -07:00
Reuben Thomas
a17c0fa0f8 net-lib/net/sendurl.rkt: use send-url/trampoline for all queries/fragments
Since we need send-url/trampoline for URLs containing a query or fragment in
the default case on all OSes, simplify the code and always use it for such
URLs.
2019-12-07 16:38:38 -07:00
Reuben Thomas
0680a2e2ee net-lib/net/sendurl.rkt: overhaul and simplify; support xdg-open on Unix
Unix: Cut down all-unix-browsers: add xdg-open, which is standard and can
launch applications for files instead of a browser, like the macOS and
Windows equivalents; remove defunct browsers galeon, camino, skipstone,
htmlview, and the rare dillo. Make opera use try-remote, which is identical
to the code it was using. xdg-open cannot handle queries or fragments in
URLs, so for this case factor out send-url/trampoline from send-url/win and
use it.

macOS: Remove try-to-find-macosx-users-browsers, and use “open” instead of
“osascript”; “open” uses the user’s configured browser. As before, it is
still possible to specify a particular browser.

Windows: Shorten and simplify the justification of the trampoline, which is
mostly out of date, though the trick is still needed.
2019-12-07 16:38:38 -07:00
Reuben Thomas
e4d43fa0dc net-lib/net/sendurl.rkt: remove systype function
XonX is defunct, so this function is no longer needed.
2019-12-07 16:38:38 -07:00
Matthew Flatt
83ae4cd9a4 README.md: add a setence to describe Racket
Based on #2929 by @joshuafitzmorris
2019-12-07 11:22:20 -07:00
Matthew Flatt
965ea4ff2b increase timeout for "deterministic-zo.rkt" test
Racket CS needs more time.
2019-12-07 06:14:41 -07:00
Matthew Flatt
fc9ccb8e8f cs: unbreak boot file concatenation 2019-12-06 19:04:53 -07:00
Matthew Flatt
16f1ae7895 cs: add "repeats N more times" printing for error traces 2019-12-06 16:29:17 -07:00
Matthew Flatt
2e53a4c4ff schemify: deterministic order for some cross-inline info 2019-12-06 16:20:52 -07:00
Matthew Flatt
baab2b9974 cs: avoid full paths attached to functions
Source locations are attached to functions for backtraces. With
traditional Racket, those source locations are connected to the
machinery of `current-write-relative-directory` and
`current-load-relative-directory` to avoid absolute paths, but that
machinery is difficult to integrate into the Racket CS compilation
model. So, since they're "just" for stack traces, save only a couple
of elements of the path.
2019-12-06 16:20:52 -07:00
Matthew Flatt
f664483c05 docs: unbreak Reference 2019-12-05 17:31:23 -07:00
Matthew Flatt
a1567eb416 schemify: repair for JIT pass 2019-12-05 17:25:51 -07:00
Matthew Flatt
d7052da691 schemify: more determinism for lifted procedures
A further repair to 6f919635da.
2019-12-05 15:56:32 -07:00
Matthew Flatt
898517107f schemify: purge all gensyms
Although some of them probbably do not matter (while some certainly
do), avoid various possible problems by always using a locally
determinsitic replacement for `gensym`.
2019-12-05 14:41:33 -07:00
Matthew Flatt
d5ab0fce05 schemify: avoid gensym for struct-type representation
A gensym can end up in known-value information, which makes compiled
files non-deterministic.
2019-12-05 09:37:39 -07:00
Matthew Flatt
f5e6ce4282 schemify: name raw accessor/mutators
Inferred names show up as part of the compiled code, so make sure
they're normalized instead of gensyms.
2019-12-05 08:46:15 -07:00
Matthew Flatt
6f919635da schmeify: improve determinism by ordering lifted procedures 2019-12-05 07:06:28 -07:00
Matthew Flatt
1083aa1317 cs: improve function and module name
The former "path.rkt" module handles more than just paths.
2019-12-05 05:50:07 -07:00
Matthew Flatt
c93693169a cs: fix handling of an empty command-line argument 2019-12-05 05:43:31 -07:00
Matthew Flatt
1f92e98590 cs: fixes for uninterned symbols in compiled code
Use newly added support for uninterned symbols (as opposed to gensyms)
in the Chez Scheme layer. Using uninterned symbols reduces
non-determinsitsm in the build.

The change to use Chez Scheme uninterned symbols exposed problems with
the way that Racket-level uninterned symbols (formerly implemented
with gensym) are handled in ".zo" files. The problem is that some
uninterned symbols are marshaled with `racket/fasl`, which is not
consostent with those that are marshaled by Chez Scheme's `fasl`. This
patch fixes those problems by ensuring that uninterned symbols are
always lifted to the level of a Chez Scheme `fasl` for a complete
linklet bundle.
2019-12-04 21:11:42 -07:00
Matthew Flatt
4a36512570 cs: fix $value handling in fallback interpreter
Closes #2951
2019-12-04 07:06:50 -07:00
Matthew Flatt
1c74f8c956 improve names in keyword-function stack traces
Change the way names are generated for pieces of the implementation of
a keyword-argument function. These functions are not accessible as
values, so the names don't matter for printing a function, but the
names can show up in stack traces.
2019-12-02 07:03:09 -05:00
Paulo Matos
22387af060
Remove AppVeyor pipeline (#2949)
Work is already covered by tests in CI PR. Will soon be added to CI Push as well.
2019-12-02 10:39:57 +01:00
Paulo Matos
434fdc4de4
Remove support for azure-pipelines (#2948)
At this point Actions PR CI and Push CI cover all tests in Azure Pipelines so they
are not needed.
2019-12-02 10:29:40 +01:00
Paulo Matos
af986ffda6
Actions for Windows CI (#2945)
Build Racket.exe (3m) and RacketCS.exe (CS) on Windows on push.
2019-12-02 09:16:02 +01:00
Paulo Matos
2836a6027e
More complete set of tests in Actions (#2944)
This adds tests - 1 set of tests per step - for cgc, 3m and cs on Linux and MacOS.
2019-12-02 00:14:21 +01:00
Alexis King
e9fb60588b Fix fcontrol with prompt tag 2019-11-30 05:34:32 -06:00
Matthew Flatt
406fe85144 cs: fix defined-name reporting 2019-11-29 16:48:52 -07:00
Matthew Flatt
ec9c30d2f1 cs: improve error message for define-values
Report the first variable of the `define-values` form, like
traditional Racket does.
2019-11-29 15:09:32 -07:00
Matthew Flatt
fa2ef64adb schemify: adjust simple? for multiple returns
The check for whether an expression is "simple" at the schemify layer
didn't take into account the expected arity.
2019-11-29 15:09:32 -07:00
Paulo Matos
430760ddb4
Add testing for 3m and CS in push CI (#2943) 2019-11-29 16:59:01 +01:00
Matthew Flatt
2920fc3f64 enable unreliable tests via PLT_RUN_UNRELIABLE_TESTS
The attempt in 7a12d55e7d to handle some flaky tests didn't work.
This attempt effectively removes the tests, although they can
be enabled by setting `PLT_RUN_UNRELIABLE_TESTS` to "timing".

Also, replace the old hack of enabling some locale-specific tests
to also use `PLT_RUN_UNRELIABLE_TESTS`.
2019-11-29 07:46:26 -07:00
Paulo Matos
b8d2513b6d
Disabling sync flaky test on CGC
Due to:
https://github.com/racket/racket/runs/325146638#step:8:33
2019-11-29 08:01:07 +01:00
Matthew Flatt
b62de0e14d adjust openssl test for Racket CS error message 2019-11-28 16:52:17 -07:00
Matthew Flatt
338955046d configure: repair for --enable-embedfw
`-S` needed for `strip` with some(?) versions of the Mac build tools.
2019-11-28 16:32:22 -07:00
Paulo Matos
8a6a34674a
Add racket-test-core tests to CGC push CI (#2934)
Renamed from `Add per-section coretests` since we diverged from initial intention.
2019-11-28 19:52:19 +01:00
Brian Wignall
9474b1a1e8 Fix spelling typos 2019-11-28 07:51:39 -07:00
Matthew Flatt
197d6db634 openssl: adjust peer-verif test for renegotiation
TLS v1.3 does not support renegotiation.
2019-11-28 07:31:33 -07:00
Matthew Flatt
83fb6d2ca8 fix race conditions in some tests
Closes #2940
2019-11-28 06:28:42 -07:00
Matthew Flatt
da70c65f8d skip a GC test for CGC
Closes #2939
2019-11-28 06:26:22 -07:00
Matthew Flatt
a410905c99 cs: module in some error messages only when enabled
Check `(error-print-source-location)` before adding a module name in
an error message about use/set before definition.
2019-11-28 05:51:48 -07:00
Matthew Flatt
8b00249265 schemify: another variable-order repair
Continues 70459f4105.
2019-11-28 05:39:11 -07:00