Age | Commit message (Collapse) | Author |
|
This PR separates integration tests from CLI tests into a new project
named `cli_tests`. This is a prerequisite for an integration test runner
that can work with either the CLI binary in the current project, or one
that is built ahead of time.
## Background
Rust does not have the concept of artifact dependencies yet
(https://github.com/rust-lang/cargo/issues/9096). Because of this, the
only way we can ensure a binary is built before running associated tests
is by hanging tests off the crate with the binary itself.
Unfortunately this means that to run those tests, you _must_ build the
binary and in the case of the deno executable that might be a 10 minute
wait in release mode.
## Implementation
To allow for tests to run with and without the requirement that the
binary is up-to-date, we split the integration tests into a project of
their own. As these tests would not require the binary to build itself
before being run as-is, we add a stub integration `[[test]]` target in
the `cli` project that invokes these tests using `cargo test`.
The stub test runner we add has `harness = false` so that we can get
access to a `main` function. This `main` function's sole job is to
`execvp` the command `cargo test -p deno_cli`, effectively "calling"
another cargo target.
This ensures that the deno executable is always correctly rebuilt before
running the stub test runner from `cli`, and gets us closer to be able
to run the entire integration test suite on arbitrary deno executables
(and therefore split the build into multiple phases).
The new `cli_tests` project lives within `cli` to avoid a large PR. In
later PRs, the test data will be split from the `cli` project. As there
are a few thousand files, it'll be better to do this as a completely
separate PR to avoid noise.
|
|
Closes #22353
|
|
|
|
* Uses diagnostics from deno_ast
* Real fix for https://github.com/denoland/deno/pull/22310
* Moves `deno lint --json` code here
* Upgrades swc
Closes #22117
Closes #22109
Closes #21927
Closes #20993
|
|
|
|
- Move a workers test to js_unit_tests and make it work
- (slightly) repair the websocketstream_test and make it a JS unit test.
This test was being ignored and rotted quite a bit, but there's some
value in running as much of it as we can.
- Merge the two websocket test files
|
|
This is the release commit being forwarded back to main for 1.40.4
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
|
|
Signed-off-by: Jason Ford <fordjason@gmail.com>
|
|
|
|
|
|
`Deno.fdatasync[Sync]()` (#22177)
As other APIs with the "f" prefix denote being part of the "File System"
`@category`.
|
|
This removes the majority of `../../../../../../test_util` relative
imports from the codebase, allowing us to move this code more easily in
the future.
|
|
|
|
Fixes https://github.com/denoland/deno/issues/22259
|
|
Fixes #22221 with the suggested fix, and added "cpus" to the existing
tests.
|
|
This test is not needed because the op is not available to user code
anymore.
This brings number of ops exposed to user code down to 15.
|
|
This commit removes some not really necessary FFI tests and in effect
removes them from being accessible from the user code.
This lowers the number of ops accessible to user code to 16.
|
|
We had two test servers.
|
|
This update brings number of ops available to user code down to 45.
|
|
Hacky quick fix. The real fix is a lot more work to do (move the
`SourceTextInfo` into all the diagnostics in order to make this less
error pone). I've already started on it, but it will require a lot of
downstream create changes.
Closes #22288
|
|
Brings down the number of ops available to user code to 49.
|
|
|
|
Closes #22290
|
|
Auth tokens may be specified for one of the following:
- `abc123@deno.land`: `deno.land`, `www.deno.land`, etc
- `abc123@deno.land:8080`: `deno.land:8080`, `www.deno.land:8080`, etc
- `abc123@1.1.1.1`: IP `1.1.1.1` only
- `abc123@1.1.1.1:8080`: IP `1.1.1.1`, port 8080 only
- `abc123@[ipv6]`: IPv6 `[ipv6]` only
- `abc123@[ipv6]:8080`: IPv6 `[ipv6]`, port 8080 only
Leading dots are ignored, so `.deno.dev` is equivalent to `deno.dev`.
|
|
|
|
This commit adds support for "Symbol.metadata" which was
omitted when adding support for the Decorators Proposal.
Closes https://github.com/denoland/deno/issues/22111
|
|
|
|
|
|
This commit brings down the number of ops exposed to user
code to 51.
|
|
Missed in https://github.com/denoland/deno/pull/22277
|
|
These are not useful, as we bench them in `deno_core` already.
|
|
Brings the number of ops exposed to user code down to 58.
|
|
This moves the op sanitizer descriptions into Rust code and prepares for
eventual op import from `ext:core/ops`. We cannot import these ops from
`ext:core/ops` as the testing infrastructure ops are not always present.
Changes:
- Op descriptions live in `cli` code and are currently accessible via an
op for the older sanitizer code
- `phf` dep moved to workspace root so we can use it here
- `ops.op_XXX` changed to to `op_XXX` to prepare for op imports later
on.
|
|
Originally in #22125
Reverted in #22153 because of #22148
Fixed in deno_core https://github.com/denoland/deno_core/pull/538
Test plan:
1. Check out: https://github.com/poolifier/poolifier-deno.git
2. `PATH=.../deno/target/release/:$PATH deno task test`
3. `ok | 13 passed (188 steps) | 0 failed (18s)`
|
|
Extract zero-risk changes from #22226
|
|
This is a followup on denoland/deno_core#471.
Fixes #21439.
|
|
Check that in a `KvListSelector`, `start` and `end` are actually within
the keyspace bounds defined by `prefix`, if both are present.
|
|
|
|
(#22235)
Closes #22178.
|
|
This test should be in `deno_core`.
Ref https://github.com/denoland/deno_core/issues/533
|
|
Micro-optimization.
|
|
Closes #22239
|
|
Signed-off-by: Dan Rose <danoftheroses@gmail.com>
|
|
Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
|
|
Alternative to https://github.com/denoland/deno/pull/22223 which
switches `webbrowser` crate to `open` (https://crates.io/crates/open)
which is lighterweight.
|
|
This is the release commit being forwarded back to main for 1.40.3
Ref https://github.com/denoland/deno/pull/22219
|
|
Fixes https://github.com/denoland/deno/issues/22211
|
|
|
|
This commit adds `ppid` getter for `node:process` to improve Node
compatibility one step further.
There is one problem though, which is that `Deno.ppid`, which
`process.ppid` internally calls, is actually of type `bigint` although
it's supposed to be `number`. I filed an issue for this (#22166). For
the time being, explciit type conversion from `bigint` to `number` is
applied to match the Node.js behavior.
|
|
Closes https://github.com/denoland/deno/issues/22154
|