summaryrefslogtreecommitdiff
path: root/cli
AgeCommit message (Collapse)Author
2024-07-03fix(lsp): correct scope attribution for injected @types/node (#24404)Nayeem Rahman
2024-07-03feat: Upgrade to TypeScript 5.5.2 (#24326)Bartek Iwańczuk
This commit upgrades TypeScript to 5.5.2. https://devblogs.microsoft.com/typescript/announcing-typescript-5-5/
2024-07-02fix(ext/node): Add `fs.lutimes` / `fs.lutimesSync` (#23172)Nathan Whitaker
Part of #18218 - Adds `fs.lutimes` and `fs.lutimesSync` to our node polyfills. To do this I added methods to the `FileSystem` trait + ops to expose the functionality to JS. - Exports `fs._toUnixTimestamp`. Node exposes an internal util `toUnixTimestamp` from the fs module to be used by unit tests (so we need it for the unit test to pass unmodified). It's weird because it's only supposed to be used internally but it's still publicly accessible - Matches up error handling and timestamp handling for fs.futimes and fs.utimes with node - Enables the node_compat utimes test - this exercises futimes, lutimes, and utimes.
2024-07-02fix(compile): prevent setting unstable feature twice (#24381)HasanAlrimawi
Prevent panic when enabling a feature that is already enabled by removing duplicate features. Closes #22015 --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-07-03refactor(jupyter): move ZeroMQ server to a separate thread (#24373)Bartek Iwańczuk
Moves the ZeroMQ messaging server to a separate thread. This will allow to run blocking JS code and maintain communication with the notebook frontend. Towards https://github.com/denoland/deno/pull/23592 Towards https://github.com/denoland/deno/pull/24250 Closes https://github.com/denoland/deno/issues/23617
2024-07-02feat(cli): Add `--frozen` flag to error out if lockfile is out of date (#24355)Nathan Whitaker
Closes #18296. Adds a `--frozen` (alias `--frozen-lockfile`) flag that errors out if the lockfile is out of date. This is useful for running in CI (where an out of date lockfile is usually a mistake) or to prevent accidental changes in dependencies. ![Screenshot 2024-06-26 at 7 11 13 PM](https://github.com/denoland/deno/assets/17734409/538404b8-b422-4f05-89e8-4c9b1c248576)
2024-07-02feat(ext/web): add `Blob.prototype.bytes()` (#24148)Kenta Moriuchi
2024-07-02chore: upgrade to reqwest 0.12.4 and rustls 0.22 (#24388)Bartek Iwańczuk
Reland of https://github.com/denoland/deno/pull/24056 that doesn't suffer from the problem that was discovered in https://github.com/denoland/deno/pull/24261. It uses upgraded `hyper` and `hyper-util` that fixed the previous problem in https://github.com/hyperium/hyper/pull/3691.
2024-07-02fix(compile): atomically write compile output (#24378)Heyang Zhou
Atomically write `deno compile` output file so we won't get a partially written ELF/PE file, and prevents corrupting running processes.
2024-07-01fix(windows): check USERPROFILE env var for finding home directory (#24384)David Sherret
2024-07-01fix(lsp): use CliLockfile (#24387)Bartek Iwańczuk
The build broke in https://github.com/denoland/deno/pull/24365.
2024-07-01fix(lsp): respect lockfile redirects entries for resolution (#24365)Nayeem Rahman
2024-07-01BREAKING(unstable/ffi): remove callback reentrant flag (#24367)Divy Srivastava
Closes https://github.com/denoland/deno/issues/22947 This option is no longer needed as fast calls are now allowed to re-enter the isolate
2024-06-28refactor(cli): Create wrapper around `deno_lockfile::Lockfile` (#24366)Nathan Whitaker
As suggested in https://github.com/denoland/deno/pull/24355#discussion_r1657875422. I wasn't able to hide the mutex stuff as much as I'd like (ended up just adding an escape hatch `inner()` method that locks the inner mutex), because you can't return references to the inner fields through a mutex. This is mostly motivated by the frozen lockfile changes
2024-06-28fix(lsp): don't use global cache paths for scope allocation (#24353)Nayeem Rahman
2024-06-28chore: update deno_doc (#24308)Leo Kettmeir
2024-06-26feat(lsp): ts language service scopes (#24345)Nayeem Rahman
2024-06-27fix(ext/node): discover .npmrc in user's homedir (#24021)Bartek Iwańczuk
This commit adds discovery of `.npmrc` files in user's homedir. This is not a perfect fix as it doesn't merge multiple `.npmrc` files together as per https://github.com/denoland/deno/issues/23954 but allows to fallback if no `.npmrc` file is discovered in the project root.
2024-06-26refactor: move PackageJson to deno_config (#24348)David Sherret
2024-06-26refactor: bump deno_graph to 0.79 (#24337)David Sherret
No fixes in this to my knowledge. Just an upgrade. The functionality here will be used in a different PR.
2024-06-21docs(cli): remove trailing slash from `import.meta.dirname` expected output ↵Asher Gomez
(#24295)
2024-06-20fix(task): do not propagate env changes outside subshells (#24279)David Sherret
* https://github.com/denoland/deno_task_shell/pull/120
2024-06-19fix: more node-api fixes (#24220)snek
- add fallback impls of external string apis which always copy. after upstream changes to rusty_v8 we can support non-copying api as well. - `napi_get_buffer_data` needs to work on all TypedArray instances. - Fixes: https://github.com/denoland/deno/issues/24209 - `target_defaults.default_configuration` is used by some modules to find the corresponding node file from node-gyp - `node_api_get_module_filename` expects the filename to be a `file:` url.
2024-06-19chore: forward v1.44.4 release commit to main (#24271)denobot
This is the release commit being forwarded back to main for 1.44.4 Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com>
2024-06-19Revert "chore: upgrade to reqwest 0.12.4 and rustls 0.22 (#24056)" (#24262)Bartek Iwańczuk
This reverts commit fb31eaa9ca59f6daaee0210d5cd206185c7041b9. Reverting because users reported spurious errors when downloading dependencies - https://github.com/denoland/deno/issues/24260. Closes https://github.com/denoland/deno/issues/24260
2024-06-19fix(ext/node): Add SIGPOLL and SIGUNUSED signals (#24259)Divy Srivastava
2024-06-19fix(ext/node): Add Dirent.path and Dirent.parentPath (#24257)Divy Srivastava
2024-06-19chore: forward v1.44.3 release commit to main (#24256)denobot
This is the release commit being forwarded back to main for 1.44.3 Co-authored-by: bartlomieju <bartlomieju@users.noreply.github.com> Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-06-19fix(lsp): use import map from workspace root (#24246)Nayeem Rahman
Follow up to #24206 which broke deno_std intellisense.
2024-06-17fix(repl): prevent panic when deleting globalThis.closed property (#24014)safaa-mojahed
2024-06-17feat(lsp): multi deno.json resolver scopes (#24206)Nayeem Rahman
2024-06-17fix(docs): correctly resolve href for built-ins (#24228)Leo Kettmeir
2024-06-14chore: upgrade to rust 1.79 (#24207)Satya Rohith
2024-06-13fix(napi): Read reference ownership before calling finalizer to avoid crash ↵Nathan Whitaker
(#24203) Fixes #23493. What was happening here was that napi-rs was freeing the napi reference ([here](https://github.com/napi-rs/napi-rs/blob/19e3488efcbc601afa1f11a979372eb6c5ea6130/crates/napi/src/bindgen_runtime/mod.rs#L62)) during its finalize callback (which we call [here](https://github.com/denoland/deno/blob/fb31eaa9ca59f6daaee0210d5cd206185c7041b9/cli/napi/js_native_api.rs#L132)). We then were [reading the `ownership` field](https://github.com/denoland/deno/blob/fb31eaa9ca59f6daaee0210d5cd206185c7041b9/cli/napi/js_native_api.rs#L136) of that freed reference. For some reason on arm macs the freed memory gets zeroed, so the value of `ownership` was `0` when we read it (i.e. it was `ReferenceOwnership::Runtime`). We then freed it again (since we thought we owned it), causing the segfault.
2024-06-13fix(npm): use more relaxed package.json version constraint parsing (#24202)David Sherret
2024-06-13chore: upgrade to reqwest 0.12.4 and rustls 0.22 (#24056)Bartek Iwańczuk
This commit updates Deno to use `reqwest` at 0.12.4 and `rustls` at 0.22. Other related crates were updated as well to match versions accepted by `reqwest` and `rustls`. Note: we are not using the latest available `rustls` yet, but this upgrade was non-trivial already, so a bump to 0.23 for `rustls` will be done in a separate commit. Closes #23370 --------- Signed-off-by: Ryan Dahl <ry@tinyclouds.org> Signed-off-by: Bartek Iwańczuk <biwanczuk@gmail.com> Co-authored-by: Ryan Dahl <ry@tinyclouds.org> Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
2024-06-13perf(lsp): store settings in Arc (#24191)Nayeem Rahman
2024-06-12fix: node-api get_value_string_utf8 should use utf8_length (#24193)snek
whoops. also did a drive-by cleanup of `isolate` usage since i noticed it while using `utf8_length(isolate)`
2024-06-13chore: forward v1.44.2 release commit to main (#24194)denobot
Co-authored-by: nathanwhit <nathanwhit@users.noreply.github.com>
2024-06-12fix(cli): Explicitly cache NPM packages during `deno install` (#24190)Nathan Whitaker
Fixes a regression introduced in https://github.com/denoland/deno/pull/24170, where we wouldn't actually set up the node modules dir on `deno install` if there was an up to date deno lockfile present. Previously we were relying on the fact that resolving pending module resolution called `cache_packages` (which sets up the node modules dir). When pending resolutions were removed, and the `resolve_pending` function with it, we also removed the `cache_packages` call needed to set up node modules.
2024-06-12fix(lsp): strip .js before probing for valid import fix (#24188)Nayeem Rahman
2024-06-12feat(lsp): respect editor indentation options (#24181)Nayeem Rahman
2024-06-12chore: remove dead code (#24185)Divy Srivastava
2024-06-11fix: clean up some node-api details (#24178)snek
- fix a few napi_* types - clean up env hooks - implement blocking queue in tsfn - reduce transmutes - use new `DataView::new` api from rusty_v8
2024-06-11fix(lsp): don't sort workspace files (#24180)Nayeem Rahman
2024-06-11refactor(lsp): collect npm reqs by scope (#24172)Nayeem Rahman
2024-06-11fix(npm): resolve dynamic npm imports individually (#24170)David Sherret
* https://github.com/denoland/deno_npm/pull/57 * https://github.com/denoland/deno_graph/pull/498 Closes https://github.com/denoland/deno/issues/17802
2024-06-10FUTURE: support `deno install <alias>@npm:<package>` (#24156)David Sherret
Closes #23144
2024-06-10fix(jupyter): Avoid panicking when `DEBUG` env var is set (#24168)Nathan Whitaker
Fixes #22050. It seems very unlikely that a user would be intending to enable deno's internal debug logs by setting the DEBUG env var. If they really want that, they can set `RUST_LOG=debug` instead.
2024-06-10fix: Rewrite Node-API (#24101)snek
Phase 1 node-api rewrite