1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-01-08 07:08:27 -05:00
Commit graph

4054 commits

Author SHA1 Message Date
Bartek Iwańczuk
fc16ba5411
Revert "fix(ext/flash): graceful server startup/shutdown with unsettl… (#16839)
…ed promises in mind (#16616)"

This reverts commit fd023cf793.

There are reports saying that Vite is often hanging in 1.28.2 and this
is
the only PR that changed something with HTTP server. I think we should
hold off on trying to fix this and instead focus on #16787

CC @magurotuna
2022-12-01 16:24:37 +09:00
Bartek Iwańczuk
e363249c3f
feat(core): support initializing extensions with and without JS (#16789)
This commit allows to execute more JS code from extensions when
creating a snapshot from an existing snapshot.

"deno_core::RuntimeOptions::extensions_with_js" field was added
that is used to pass a list of extensions whose both "ops" and
associated JS source should be executed upon start.

Co-authored-by: crowlkats <crowlkats@toaxl.com>
2022-12-01 16:24:14 +09:00
Bartek Iwańczuk
8c7e15d445
feat(core): send "executionContextDestroyed" notification on program end (#16831)
This commit changes "JsRuntime" to send "executionContextDestroyed"
notification when the program finishes and shows a prompt informing 
that runtime is waiting for inspector to disconnect.
2022-12-01 16:24:03 +09:00
Leo Kettmeir
3ac7b27efa
chore: update deno_doc (#16838) 2022-12-01 16:23:56 +09:00
Bartek Iwańczuk
5d2461d46f
fix(inspector): send "isDefault" in aux data (#16836)
With trial and error I found that most debuggers expect "isDefault" to be sent
in "auxData" field of "executionContextCreated" notification. This stems from
the fact that Node.js sends this data and eg. VSCode requires it to close
connection to the debugger when the program finishes execution.
2022-12-01 16:23:48 +09:00
Bartek Iwańczuk
73ff200357
tests: move integration tests to separate modules (#16816) 2022-12-01 16:23:12 +09:00
David Sherret
933eebdde9
refactor: DenoDir - move to cache folder and make root_dir private (#16823) 2022-12-01 16:23:03 +09:00
David Sherret
c63d857c17
refactor: move generated_symbol_exports_list_* files to napi folder (#16822) 2022-12-01 16:22:49 +09:00
David Sherret
4a0066b84d
refactor: move cdp.rs to tools/repl (#16821) 2022-12-01 16:22:40 +09:00
David Sherret
65986986f1
refactor: move dts files, diagnostics.rs, and tsc.rs to tsc folder (#16820) 2022-12-01 16:22:31 +09:00
David Sherret
0532304b5c
refactor: move lockfile.rs to args module (#16818)
This should be in the `args` folder as it's similar to `config_file`.
2022-12-01 16:22:24 +09:00
David Sherret
77454c5863
fix(npm): better error message when attempting to use typescript in npm packages (#16813) 2022-12-01 16:21:52 +09:00
David Sherret
292d731466
refactor(lsp): consolidate relative_specifier (#16780)
Closes #14840
2022-12-01 16:21:12 +09:00
Luca Casonato
78c287eb87
fix(cli/js): improve resource sanitizer messages (#16798)
This commit improves the guidance for how to close a child process
stdout / stderr to also include guidance for when using
`new Deno.Command()`.
2022-12-01 16:21:04 +09:00
Bartek Iwańczuk
488eb21652
fix(repl): more reliable history handling (#16797)
This commit changes history handling of the REPL.

There were some situations were history wasn't properly saved and flushed to a
file, making history very spotty. This commit changes it to save every line into
the history file and flush it to disk before being evaluated.

Thanks to this all lines, including "close()" will be stored in the history
file.

If for any reason we're not able to save history file, a single warning will be
printed to the REPL and it will continue to work, even if subsequent tries will
fail to save to disk.
2022-12-01 16:20:48 +09:00
David Sherret
14090179e9
fix(task): output encoding issues on windows (#16794)
Closes #16792
2022-12-01 16:20:12 +09:00
denobot
1aca16e239
1.28.2 (#16793)
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-11-24 21:22:47 +01:00
David Sherret
184c9b9b28
fix(npm/types): resolve main entrypoint declaration file when no types entry (#16791)
Closes #16782
2022-11-24 20:27:10 +01:00
Yusuke Tanaka
31abacbe1a
fix(ext/flash): graceful server startup/shutdown with unsettled promises in mind (#16616)
This PR resets the revert commit made by #16610, bringing back #16383
which attempts to fix the issue happening when we use the flash server
with `--watch` option enabled.
Also, some code changes are made to pass the regression test added in
#16610.
2022-11-24 20:27:10 +01:00
David Sherret
72c8c16a85
fix(npm/check): prioritize exports over types entry (#16788) 2022-11-24 20:27:10 +01:00
Asher Gomez
d178ab6049
feat(cli): add warning for incorrectly ordered flags (#16734)
This code checks if permission flags are incorrectly defined after the
module name (e.g. `deno run mod.ts --allow-read` instead of the correct
`deno run --allow-read mod.ts`). If so, a simple warning is displayed.
2022-11-24 20:27:09 +01:00
David Sherret
06df0ff332
chore: more debug logging and avoid allocating strings in ts logging when not debug (#16689) 2022-11-24 20:26:47 +01:00
David Sherret
090d9a7a3c
chore: remove unnecessary qualifier in declaration file (#16767) 2022-11-24 20:26:47 +01:00
David Sherret
c5cd9167ce
fix(fmt/markdown): scenario where whitespace was being incorrectly stripped in inline links (#16769)
https://github.com/dprint/dprint-plugin-markdown/pull/69

Closes #16730
2022-11-24 20:26:47 +01:00
Leo Kettmeir
d700ad1e2e
chore: workspace inheritance (#16343) 2022-11-24 20:26:47 +01:00
Bartek Iwańczuk
5524369386
fix: Make npm packages works with import maps (#16754)
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-11-24 20:26:46 +01:00
Bartek Iwańczuk
5ae786306a
chore: update import_map and deno_doc (#16755) 2022-11-24 20:26:46 +01:00
Bartek Iwańczuk
cdb180fd66
fix(inspector): ensure console methods provided by inspector are available (#16724) 2022-11-24 20:25:58 +01:00
Bartek Iwańczuk
82a6b1c5dc
test: disable commandChildUnref flaky test (#16752) 2022-11-24 20:25:58 +01:00
David Sherret
53e34a3ce1
fix(install): deno install -f should overwrite lockfile from previous installation (#16744) 2022-11-24 20:25:58 +01:00
David Sherret
e142899bcd
fix(npm): automatically find binary entrypoint when values are all the same (#16735) 2022-11-24 20:25:58 +01:00
David Sherret
aafc758e0d
fix(npm): add suggestions to error message when can't find binary entrypoint (#16733)
Closes #16731
2022-11-24 20:25:58 +01:00
Bartek Iwańczuk
19dc50c405
feat(core): Ability to create snapshots from existing snapshots (#16597)
Co-authored-by: crowlkats <crowlkats@toaxl.com>
2022-11-24 20:25:58 +01:00
David Sherret
f0c9e276c8
fix(npm): handle directory resolution when resolving declaration files (#16706)
Also fixes resolving specifiers like `./something.generated` in
declaration files.

Closes #16695
2022-11-24 20:25:21 +01:00
Yoshiya Hinosawa
a20fd23949
fix(ext/node): handle URL in createRequire (#16682) 2022-11-24 20:25:20 +01:00
David Sherret
a44675cc2a
fix(npm): use an http client with connection pool (#16705)
Should make downloading npm packages faster and more reliable.
2022-11-24 20:25:20 +01:00
David Sherret
262f8e9da5
chore: fix windows-only clippy errors (#16703) 2022-11-24 20:25:20 +01:00
Jesse Jackson
91998b539b
fix(types/unstable): change interface base for CommandOutput (#16696)
extend from `CommandStatus` instead of `ChildStatus`. Resolves #16680.
2022-11-24 20:25:03 +01:00
David Sherret
e64bf10d2b
perf(npm): make dependency resolution faster (#16694) 2022-11-24 20:25:03 +01:00
David Sherret
fa0a197c2f
fix(info): handle circular npm dependencies (#16692) 2022-11-24 20:25:03 +01:00
Aaron O'Mullan
53cfa8096f
chore: use Rust 1.65.0 (#16688) 2022-11-24 20:25:03 +01:00
denobot
2743d42099
1.28.1 (#16677)
Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2022-11-17 00:35:35 +01:00
Bartek Iwańczuk
1416713cb3
fix(npm): using types for packages with subpath (#16656)
For CommonJS packages we were not trying different extensions for files
specified as subpath of the package ([package_name]/[subpath]). 
This commit fixes that.
2022-11-16 20:41:27 +01:00
Bartek Iwańczuk
bd159b8bad
fix(lock): ensure npm dependencies are written with --lock-write (#16668)
If "--lock-write" flag was present we never passed instance of the lockfile to 
the npm resolver, which made it skip adding discovered npm packages to
the lockfile. This commit fixes that, by always passing lockfile to the npm
resolver and only regenerating resolver snapshot is "--lock-write" is not
present.

Closes https://github.com/denoland/deno/issues/16666
2022-11-16 19:59:26 +01:00
David Sherret
40a72f3555
fix(npm): support non-all lowercase package names (#16669)
Supports package names that aren't all lowercase.

This stores the package with a leading underscore (since that's not
allowed in npm's registry and no package exists with a leading
underscore) then base32 encoded (A-Z0-9) so it can be lowercased and
avoid collisions.

Global cache dir:

```
$DENO_DIR/npm/registry.npmjs.org/_{base32_encode(package_name).to_lowercase()}/{version}
```

node_modules dir `.deno` folder:

```
node_modules/.deno/_{base32_encode(package_name).to_lowercase()}@{version}/node_modules/<package-name>
```

Within node_modules folder:

```
node_modules/<package-name>
```

So, direct childs of the node_modules folder can have collisions between
packages like `JSON` vs `json`, but this is already something npm itself
doesn't handle well. Plus, Deno doesn't actually ever resolve to the
`node_modules/<package-name>` folder, but just has that for
compatibility. Additionally, packages in the `.deno` dir could have
collissions if they have multiple dependencies that only differ in
casing or a dependency that has different casing, but if someone is
doing that then they're already going to have trouble with npm and they
are asking for trouble in general.
2022-11-16 18:44:31 +00:00
Yoshiya Hinosawa
1d85c25205
fix(ext/webstorage): make web storages re-assignable (#16661) 2022-11-17 02:12:58 +09:00
David Sherret
38542e849d
fix(npm): properly handle getting @types package for scoped packages (#16655) 2022-11-15 21:48:29 -05:00
David Sherret
6da6ed8985
fix(npm): support dist tags specified in npm package dependencies (#16652)
Closes #16321
2022-11-15 20:52:27 -05:00
Bartek Iwańczuk
300fd07fad
fix(npm): don't fail if conditional exports don't contains types (#16651)
If resolving types for an npm package, we didn't find "types" entry in 
the conditional exports declaration we were falling-through to regular 
resolution, instead of short-circuiting and giving up on resolving
types, which might lead to unwarranted errors.

Closes https://github.com/denoland/deno/issues/16649
2022-11-16 01:40:03 +01:00
Bartek Iwańczuk
7aa8e9c035
test: don't use remote std for tests (#16631) 2022-11-15 17:21:25 +01:00