0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-02-14 17:47:35 -05:00
Commit graph

288 commits

Author SHA1 Message Date
Satya Rohith
4f41d6abeb
fix(ext/node): make worker ids sequential (#22884) 2024-03-14 10:11:31 -07:00
Satya Rohith
dd88f6a7da
fix(ext/node): allow automatic worker_thread termination (#22647)
Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-03-14 10:11:31 -07:00
David Sherret
316339f40e
chore: rough first pass on spec tests (#22877) 2024-03-14 10:11:31 -07:00
Nayeem Rahman
49eaeede47
feat(node): implement fs.statfs() (#22862) 2024-03-14 10:11:30 -07:00
Asher Gomez
cae190b92b
fix(ext/node): initial crypto.createPublicKey() support (#22509)
Closes #21807

Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-03-14 10:11:30 -07:00
Asher Gomez
9f8f87f27a
feat(ext/node): add more named curves in crypto.generateKeyPair[Sync]() (#22882)
Towards fixing #21761
2024-03-14 10:11:30 -07:00
Divy Srivastava
530f073688
fix(ext/node): flush brotli decompression stream (#22856)
Fixes https://github.com/denoland/deno/issues/22259

The decompressed input size was not restored because of improper
flushing of the CBrotliDecompressStream state.
2024-03-14 10:11:30 -07:00
David Sherret
ba48299f81
chore: enable clippy unused_async rule (#22834) 2024-03-14 10:11:30 -07:00
Bartek Iwańczuk
cd918c482b
test(ext/node): add worker_threads test for SharedArrayBuffer (#22850)
Follow up to https://github.com/denoland/deno/pull/22815
2024-03-14 10:11:30 -07:00
Nathan Whitaker
93c6f927d4
fix(ext/node): Match punycode module behavior to node (#22847)
Fixes #19214.

We were using the `idna` crate to implement our polyfill for
`punycode.toASCII` and `punycode.toUnicode`. The `idna` crate is
correct, and adheres to the IDNA2003/2008 spec, but it turns out
`node`'s implementations don't really follow any spec! Instead, node
splits the domain by `'.'` and punycode encodes/decodes each part. This
means that node's implementations will happily work on codepoints that
are disallowed by the IDNA specs, causing the error in #19214.

While fixing this, I went ahead and matched the node behavior on all of
the punycode functions and enabled node's punycode test in our
`node_compat` suite.
2024-03-14 10:11:30 -07:00
Nathan Whitaker
54fd0e3a42
fix(runtime): Restore default signal handler after user handlers are unregistered (#22757)
<!--
Before submitting a PR, please read
https://docs.deno.com/runtime/manual/references/contributing

1. Give the PR a descriptive title.

  Examples of good title:
    - fix(std/http): Fix race condition in server
    - docs(console): Update docstrings
    - feat(doc): Handle nested reexports

  Examples of bad title:
    - fix #7123
    - update docs
    - fix bugs

2. Ensure there is a related issue and it is referenced in the PR text.
3. Ensure there are tests that cover the changes.
4. Ensure `cargo test` passes.
5. Ensure `./tools/format.js` passes without changing files.
6. Ensure `./tools/lint.js` passes.
7. Open as a draft PR if your work is still in progress. The CI won't
run
   all steps, but you can add '[ci]' to a commit message to force it to.
8. If you would like to run the benchmarks on the CI, add the 'ci-bench'
label.
-->

Fixes #22724. Fixes #7164.

This does add a dependency on `signal-hook`, but it's just a higher
level API on top of `signal-hook-registry` (which we and `tokio` already
depend on) and doesn't add any transitive deps.
2024-03-14 10:11:29 -07:00
David Sherret
88fab1829a
chore: fix child_process test (#22845)
This was failing in old versions of git.
2024-03-14 10:11:29 -07:00
mash-graz
9e49afb2c8
fix(ext/node) implement receiveMessageOnPort for node:worker_threads (#22766)
Implementation of `receiveMessageOnPort` for `node:worker_threads`

Fixes: #22702
2024-03-14 10:11:29 -07:00
mash-graz
6057dddbaf
fix(node:http) Export validateHeaderName and validateHeaderValue functions (#22616)
Modify `_http_outgoing.ts` to support the extended signature of
`validateHeaderName()` used since node v19.5.0/v18.14.0 by adding the
`label` parameter. (see:
https://nodejs.org/api/http.html#httpvalidateheadernamename-label)

Making both validation functions accessible as public exports of
`node:http`

Fixes: #22614
2024-03-14 10:11:29 -07:00
Asher Gomez
df69c2b98a
chore: update WPT expectations (#22838)
Fixes the latest failure.

See
https://github.com/denoland/deno/actions/runs/8218359853/job/22475137521
2024-03-14 10:11:29 -07:00
David Sherret
109d66bb78
fix(publish): regression - publishing with vendor folder (#22830)
In
https://github.com/denoland/deno/pull/22720/files#diff-d62d85de2a7ffb816cd2fdbaa47e588352f521c7c43d058b75649bbb255e0ae1R70
, I copy and pasted from another area of the code and didn't think about
removing how it ignores the vendor folder by default.
2024-03-14 10:11:29 -07:00
David Sherret
84b36001b8
fix(node): require of pkg json imports was broken (#22821) 2024-03-14 10:11:29 -07:00
Divy Srivastava
4419fc340b
fix(ext/node): support junction symlinks on Windows (#22762)
Fixes https://github.com/denoland/deno/issues/20609

Vitepress support! `vitepress dev` and `vitepress build` via BYONM
2024-03-14 10:11:28 -07:00
Nathan Whitaker
7f99b968fc
fix(ext/node): Implement isBuiltin in node:module (#22817)
Fixes #22502

Implements the
[`isBuiltin`](https://nodejs.org/api/module.html#moduleisbuiltinmodulename)
function in `node:module`. I had to update the version of `@types/node`
in the test registry in order to get the test I added to typecheck.
2024-03-14 10:11:28 -07:00
Nathan Whitaker
1e1d0410a4
fix(ext/node): Add Immediate class to mirror NodeJS.Immediate (#22808)
Fixes #21660

Adds a basic `Immediate` class to mirror `NodeJS.Immediate`, and changes
`setImmediate` and `clearImmediate` to return and accept (respectively)
`Immediate` objects.

Note that for now {ref,unref,hasRef} are effectively stubs, as deno_core
doesn't really natively support immediates (they're currently modeled as
timers with delay of 0). Eventually we probably want to actually
implement these properly.
2024-03-14 10:11:28 -07:00
David Sherret
49998341b4
fix(publish): suggest using --allow-dirty on uncommitted changes (#22810) 2024-03-14 10:11:28 -07:00
David Sherret
9a4b096073
chore(test): add [WILDCHARS(x)] and [WILDLINE] (#22803) 2024-03-14 10:11:28 -07:00
David Sherret
b36ebdca23
fix(publish): ability to un-exclude when .gitignore ignores everything (#22805)
This is an unrealistic scenario, but it's still a good thing to fix and
have a test for because it probably fixes some other underlying issues
with how the gitignore was being resolved for the root directory.

From https://github.com/denoland/deno/pull/22720#issuecomment-1986134425
2024-03-14 10:11:28 -07:00
David Sherret
67b90891fd
fix(node): resolve .css files in npm packages when type checking (#22804)
When type checking, we should just resolve css files in npm packages and
not surface a type checking error on the specifier.
2024-03-14 10:11:28 -07:00
David Sherret
630ef77ada fix(publish): include explicitly specified .gitignored files and directories (#22790)
This allows explicitly overriding a .gitignore by specifying files and
directories in "include". This does not apply to globs in an include as
files matching those will still be gitignored. Additionally,
individually gitignored files within an included directory will still be
ignored.
2024-03-08 12:38:25 +05:30
David Sherret
4c51fb0741 fix(publish): do not include .gitignore (#22789)
Regression from https://github.com/denoland/deno/pull/22720
2024-03-08 12:38:25 +05:30
Matt Mastracci
4830f677a6 feat(ext/node): ref/unref on workers (#22778)
Implements ref/unref on worker to fix part of #22629
2024-03-08 12:38:25 +05:30
David Sherret
9ee96caaf0 fix(publish): make include and exclude work (#22720)
1. Stops `deno publish` using some custom include/exclude behaviour from
other sub commands
2. Takes ancestor directories into account when resolving gitignore
3. Backards compatible change that adds ability to unexclude an exclude
by using a negated glob at a more specific level for all sub commands
(see https://github.com/denoland/deno_config/pull/44).
2024-03-08 12:38:24 +05:30
Bartek Iwańczuk
b27d0d1b33 fix: respect unstable "temporal" configuration in config file (#22134)
Actual fix happened in https://github.com/denoland/deno/pull/22782, but
this commit adds additional tests and cleans up V8 flags passed on init.

Closes https://github.com/denoland/deno/issues/22123
Closes https://github.com/denoland/deno/issues/22560
Closes https://github.com/denoland/deno/issues/22557
2024-03-08 12:38:24 +05:30
Bartek Iwańczuk
338fe7e5b2 fix(publish): reland error if there are uncommitted changes (#22613) (#22632)
Reverted in https://github.com/denoland/deno/pull/22625
2024-03-08 12:38:24 +05:30
Nayeem Rahman
94cf92a98f fix(lsp): don't apply renames to remote modules (#22765) 2024-03-08 12:38:24 +05:30
David Sherret
5788063efb fix(publish): properly display graph validation errors (#22775)
The graph validation errors were displaying cryptically during publish.
This fixes that.
2024-03-08 12:38:24 +05:30
Bartek Iwańczuk
2ac62a9fde fix(publish): silence warnings for sloppy imports and node builtins with env var (#22760)
An undocumented "DENO_DISABLE_PEDANTIC_NODE_WARNINGS" env
var can be used to silence warnings for sloppy imports and node builtins
without `node:` prefix.
2024-03-08 12:38:24 +05:30
Satya Rohith
2b1e16231b fix(ext/node): http2.createServer (#22708) 2024-03-08 12:38:24 +05:30
Matt Mastracci
394cc989cd chore(tests): fix process_test for sure (#22756) 2024-03-08 12:38:24 +05:30
Divy Srivastava
f2c1edae7d fix(ext/node): add default methods to fs.StatsBase (#22750) 2024-03-08 12:38:24 +05:30
Divy Srivastava
5b186f532f fix(ext/node): strip --enable-source-maps from argv (#22743)
Fixes https://github.com/denoland/deno/issues/21750
2024-03-08 12:38:23 +05:30
Nayeem Rahman
1d909edc33 feat(unstable/pm): support npm packages in 'deno add' (#22715) 2024-03-08 12:38:23 +05:30
Divy Srivastava
b66d11a624 fix(node): stat/statSync returns instance of fs.Stats (#22294)
Fixes https://github.com/denoland/deno/issues/22291

---------

Signed-off-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-03-08 12:38:23 +05:30
Divy Srivastava
41b565349b fix(node): implement ALS enterWith (#22740)
Fixes https://github.com/denoland/deno/issues/18127
https://github.com/denoland/deno/issues/17248

SvelteKit works now!
```
$ deno run -A npm:create-svelte@latest my-app

create-svelte version 6.0.9

┌  Welcome to SvelteKit!
│
◇  Which Svelte app template?
│  SvelteKit demo app
│
◇  Add type checking with TypeScript?
│  Yes, using JavaScript with JSDoc comments
│
◇  Select additional options (use arrow keys/space bar)
│  none
│
└  Your project is ready!

✔ Type-checked JavaScript
  https://www.typescriptlang.org/tsconfig#checkJs

Install community-maintained integrations:
  https://github.com/svelte-add/svelte-add

Next steps:
  1: cd my-app
  2: npm install
  3: git init && git add -A && git commit -m "Initial commit" (optional)
  4: npm run dev -- --open

To close the dev server, hit Ctrl-C

Stuck? Visit us at https://svelte.dev/chat

$ cd my-app/
$ deno task dev
Task dev vite dev

  VITE v5.1.4  ready in 1632 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
  ➜  press h + enter to show help
```
2024-03-08 12:38:23 +05:30
Matt Mastracci
5edba2aae6 chore(ext/node): ignore non-working process test (#22723)
Filed https://github.com/denoland/deno/issues/22724 for actual issue
2024-03-08 12:38:23 +05:30
David Sherret
639eeb1c14 fix(node): improve cjs tracking (#22673)
We were missing saying that a file is CJS when some Deno code imported
from the node_modules directory at runtime.
2024-03-08 12:38:22 +05:30
Aapo Alasuutari
7a2af23d32 chore(tests): Remove vestiges of cli/tests folder (#22712) 2024-03-08 12:38:22 +05:30
Matt Mastracci
2b9c879146 chore(ext/node): make process_test more reliable (#22703) 2024-03-08 12:38:21 +05:30
Matt Mastracci
613936c7c7 chore(tests): update flaky timer test (#22701)
This test was flaky after landing the new timer rewrite.
2024-03-08 12:38:21 +05:30
Asher Gomez
3f1d571218 chore: move tools/wpt to tests/wpt/runner (#22545)
Towards #22525

---------

Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
Co-authored-by: Matt Mastracci <matthew@mastracci.com>
2024-03-08 12:38:21 +05:30
David Sherret
107237d8ef fix(lsp): do not warn about local file "redirects" from .js to .d.ts files (#22670)
The diagnostic was incorrect when importing a `.js` file with a
corresponding `.d.ts` file with sloppy imports because it would say to
change the `.js` extension to `.d.ts`, which is incorrect. We might as
well just hide this diagnostic.
2024-03-08 12:38:21 +05:30
Divy Srivastava
1e8183a8de fix(node): errno property when command missing (#22691)
Fixes https://github.com/denoland/deno/issues/22604

`remix dev` with Node adapter works:
```
$ ~/gh/littledivy/deno/target/debug/deno task dev
Task dev remix dev --manual

 💿  remix dev

 info  building...
 info  built (619ms)
[remix-serve] http://localhost:3000 (http://192.168.1.24:3000)

GET / 200 - - 3.090 ms
```
2024-03-08 12:38:21 +05:30
David Sherret
8196de3f7a fix(lsp): ignore code errors when type passes for non-@deno-types reolution (#22682) 2024-03-08 12:38:20 +05:30
Nayeem Rahman
6aee866d2b feat(lsp): include registry url in jsr import hover text (#22676) 2024-03-08 12:38:20 +05:30