Releases: denoland/deno
Releases · denoland/deno
v1.42.2
1.42.2 / 2024.04.11
- FUTURE(ext/fs): make
Deno.FsFile
constructor illegal (#23235) - FUTURE(ext/fs): remove
Deno.FsWatcher.prototype.rid
(#23234) - FUTURE(ext/net): remove
Deno.(Conn|TlsConn|Listener|TlsListener|UnixConn).prototype.rid
(#23219) - FUTURE: enable BYONM by default (#23194)
- FUTURE: override byonm with nodeModulesDir setting (#23222)
- FUTURE: remove deprecated APIs within workers (#23220)
- feat(lsp): respect nested deno.json for fmt and lint config (#23159)
- fix(cli): Enforce a human delay in prompt to fix paste problem (#23184)
- fix(cli): fix deadlock in test writer when test pipe is full (#23210)
- fix(cli): update
deno doc
help to fit current usage (#23224) - fix(ext/fs): account for all ops in leak checks (#23300)
- fix(ext/http): Make
Deno.serveHttp()
work when proxying (#23269) - fix(ext/net): Improve ts types for network APIs (#23228)
- fix(ext/node): Add "module" to builtinsModule (#23242)
- fix(ext/node): Add fs.readv, fs.readvSync (#23166)
- fix(ext/node): MessagePort works (#22999)
- fix(ext/node): Support returning tokens and option defaults in
node:util.parseArgs
(#23192) - fix(ext/node):
node:vm
contexts (#23202) - fix(ext/node): count MessagePort message listeners in hasMessageEventListener
(#23209) - fix(ext/node): hostname is valid IPv4 addr (#23243)
- fix(ext/node): implement MessagePort.unref() (#23278)
- fix(ext/node): improve AsyncLocalStorage api (#23175)
- fix(ext/node): out-of-order writes of fs.createWriteStream (#23244)
- fix(ext/node): patch MessagePort if provided as workerData (#23198)
- fix(ext/node): polyfill node:domain module (#23088)
- fix(ext/tls): add support EC private key (#23261)
- fix(lsp): Remove client-facing format failure warning (#23196)
- fix(lsp): respect DENO_FUTURE for BYONM config (#23207)
- fix(runtime): fix Windows permission prompt (#23212)
- fix: prevent cache db errors when deno_dir not exists (#23168)
- perf(lsp): Don't retain
SourceFileObject
s insourceFileCache
longer than
necessary (#23258) - perf(lsp): More granular locking of
FileSystemDocuments
(#23291) - perf(lsp): Only evict caches on JS side when things actually change (#23293)
- perf(lsp): cache ts config in isolate until new project version (#23283)
- perf(lsp): don't keep remote module ast's in memory (#23230)
- perf(lsp): don't pass remote modules as tsc roots (#23259)
- perf(lsp): replace document registry source cache on update (#23311)
- perf(lsp): use lockfile to reduce npm pkg resolution time (#23247)
- perf(node): put pkg json into an
Rc
(#23156) - perf: reduce allocations in
MediaType::from_specifier
(#23190)
v1.42.1
1.42.1 / 2024.04.01
- fix(check): ignore certain diagnostics in remote modules and when publishing
(#23119) - fix(ext/node): support stdin: "inherit" in node:child_process (#23110)
- fix(ext/node): use tty stdin from ext/io (#23044)
- fix(jsr): exclude yanked versions from 'deno add' and completions (#23113)
- fix(lsp): don't apply preload limit to workspace walk (#23123)
- fix(lsp): implement missing ts server host apis (#23131)
- fix(node): handle empty 'main' entry in pkg json (#23155)
- fix(node): remove unwrap in op_require_node_module_paths (#23114)
- fix: deno_graph 0.69.10 (#23147)
v1.42.0
1.42.0 / 2024.03.28
- feat(add): always produce multiline config file (#23077)
- feat(ext/node): add riscv64 in process.arch (#23016)
- feat(init): use jsr specifier for @std/assert (#23073)
- feat(install): require -g / --global flag (#23060)
- feat(lint):
deno lint --fix
and lsp quick fixes (#22615) - feat(lint): automatically opt-in packages to
jsr
lint tag (#23072) - feat(node): load ES modules defined as CJS (#22945)
- feat(publish): check for uncommitted files in
deno publish --dry-run
(#22981) - feat(task): Task description in the form of comments (#23101)
- feat(task): cross-platform shebang support (#23091)
- feat(unstable/publish): error when a package's module is excluded from
publishing (#22948) - feat: TypeScript 5.4 (#23086)
- feat: add
--watch-exclude
flag (#21935) - feat: deno_task_shell 0.15 (#23019)
- feat: remove deprecated methods from namespace with
DENO_FUTURE=1
(#23075) - feat: type declarations for new Set methods (#23090)
- fix(bench): Fix group header printing logic + don't filter out the warmup
benchmark (#23083) - fix(check): do not suggest running with
--unstable
(#23092) - fix(cli): output more detailed information for steps when using JUnit reporter
(#22797) - fix(cli): sanitizer should ignore count of ops started before tests begin
(#22932) - fix(coverage): Error if no files are included in the report (#22952)
- fix(ext/fetch): do not truncate field value in
EventSource
(#22368) - fix(ext/fetch): make
EventSource
more robust (#22493) - fix(ext/node): ECDH.publicKey() point encoding (#23013)
- fix(ext/node): FsWatcher ref and unref (#22987)
- fix(ext/node): Reimplement StringDecoder to match node's behavior (#22933)
- fix(ext/node): add crypto.getRandomValues (#23028)
- fix(ext/node): add crypto.subtle (#23027)
- fix(ext/node): add process.setSourceMapsEnabled noop (#22993)
- fix(ext/node): handle KeyObject in
prepareAsymmetricKey
(#23026) - fix(ext/node): handle
null
in stdio array (#23048) - fix(ext/node): implement EventEmitterAsyncResource (#22994)
- fix(ext/node): implement v8 serialize and deserialize (#22975)
- fix(ext/node): panic in
op_node_ecdh_generate_keys
(#23011) - fix(ext/node): pass normalized watchFile handler to StatWatcher (#22940)
- fix(ext/node): spread args in setImmediate (#22998)
- fix(ext/node): support Diffie-Hellman key type in
crypto.createPrivateKey()
(#22984) - fix(ext/node): support MessagePort in
WorkerOptions.workerData
(#22950) - fix(ext/node): support public key point encoding in ECDH.generateKeys()
(#22976) - fix(ext/node): worker_threads ESM handling (#22841)
- fix(ext/node): worker_threads doesn't exit if there are message listeners
(#22944) - fix(ext/web): Fix structuredClone Web API type declaration (any -> generic)
(#22968) - fix(jupyter): Do not increase counter if store_history=false (#20848)
- fix(lsp): decoding percent-encoding(non-ASCII) file path correctly (#22582)
- fix(lsp): prefer cache over tsc quick fixes (#23093)
- fix(lsp): use registry cache for completion search (#23094)
- fix(runtime): use FQDN in NetDescriptor (#23084)
- fix: do not memoize
Deno.ppid
(#23006) - fix: don't panic in test and bench if ops not available (#23055)
- fix: handle cache body file not existing when using etag (#22931)
- fix: less aggressive vendor folder ignoring (#23100)
- perf: warm expensive init code at snapshot time (#22714)
v1.41.3
1.41.3 / 2024.03.14
- fix(cli): occasional panics on progress bar (#22809)
- fix(cli): show asserts before leaks (#22904)
- fix(cli): unbreak extension example and fix __runtime_js_sources (#22906)
- fix(cli): use Instant for test times (#22853)
- fix(config): add unstable features as examples to config schema (#22814)
- fix(config): remove pkg name example and add pattern to schema (#22813)
- fix(ext/node): add more named curves in
crypto.generateKeyPair[Sync]()
(#22882) - fix(ext/node) implement receiveMessageOnPort for node:worker_threads (#22766)
- fix(ext/node): DH (
dhKeyAgreement
) support forcreatePrivateKey
(#22891) - fix(ext/node): Add Immediate class to mirror NodeJS.Immediate (#22808)
- fix(ext/node): Implement
isBuiltin
innode:module
(#22817) - fix(ext/node): Match punycode module behavior to node (#22847)
- fix(ext/node): Support private EC key signing (#22914)
- fix(ext/node): allow automatic worker_thread termination (#22647)
- fix(ext/node): crypto.getCipherInfo() (#22916)
- fix(ext/node): flush brotli decompression stream (#22856)
- fix(ext/node): initial
crypto.createPublicKey()
support (#22509) - fix(ext/node): make worker ids sequential (#22884)
- fix(ext/node): make worker setup synchronous (#22815)
- fix(ext/node): support
spki
format in createPublicKey (#22918) - fix(ext/node): support junction symlinks on Windows (#22762)
- fix(ext/node): worker_threads.parentPort is updated on startup (#20794)
- fix(ext/websocket): do not continue reading if socket rid closes (#21849)
- fix(node): add nul byte to statfs path on windows (#22905)
- fix(node): implement fs.statfs() (#22862)
- fix(node): require of pkg json imports was broken (#22821)
- fix(node): resolve .css files in npm packages when type checking (#22804)
- fix(node): resolve types via package.json for directory import (#22878)
- fix(node:http) Export
validateHeaderName
andvalidateHeaderValue
functions
(#22616) - fix(publish): ability to un-exclude when .gitignore ignores everything
(#22805) - fix(publish): regression - publishing with vendor folder (#22830)
- fix(publish): suggest using
--allow-dirty
on uncommitted changes (#22810) - fix(publish): typo in
--allow-dirty
help text (#22799) - fix(runtime): Restore default signal handler after user handlers are
unregistered (#22757) - fix(runtime): negate partial condition for deny flags (#22866)
- fix(slow-types): improved exports tracing and infer type literals in as exprs
(#22849) - fix: fix crate vulnerabilities (#22825)
- fix: stop type checking during runtime (#22854)
- fix: support sloppy resolution to file where directory exists (#22800)
- fix: typo in error from GPUBuffer.prototype.mapAsync (#22913)
- perf(permissions): Fast exit from checks when permission is in "fully-granted"
state (#22894)
v1.41.2
1.41.2 / 2024.03.08
- feat(lsp): include registry url in jsr import hover text (#22676)
- feat(node/util): styleText (#22758)
- feat(publish): add
npm:
suggestion for esm.sh specifiers (#22343) - feat(unstable/pm): support npm packages in 'deno add' (#22715)
- feat(unstable/pm): support version contraints in 'deno add' (#22646)
- fix(ext/node): ref/unref on workers (#22778)
- fix(cli): force flush output after test unloads (#22660)
- fix(cli): improve logging on failed named pipe (#22726)
- fix(cli): limit test parallelism on Windows to avoid pipe error (#22776)
- fix(cli): remove possible deadlock in test channel (#22662)
- fix(ext/node): add default methods to fs.StatsBase (#22750)
- fix(ext/node): http2.createServer (#22708)
- fix(ext/node): strip
--enable-source-maps
from argv (#22743) - fix(lsp): do not warn about local file "redirects" from .js to .d.ts files
(#22670) - fix(lsp): don't apply renames to remote modules (#22765)
- fix(lsp): ignore code errors when type passes for non-
@deno-types
reolution
(#22682) - fix(lsp): output more information on error (#22665)
- fix(lsp): regression - caching in lsp broken when config with imports has
comments (#22666) - fix(node): errno property when command missing (#22691)
- fix(node): implement ALS enterWith (#22740)
- fix(node): improve cjs tracking (#22673)
- fix(node): stat/statSync returns instance of fs.Stats (#22294)
- fix(publish): do not include .gitignore (#22789)
- fix(publish): include explicitly specified .gitignored files and directories
(#22790) - fix(publish): make include and exclude work (#22720)
- fix(publish): permissionless dry-run in GHA (#22679)
- fix(publish): properly display graph validation errors (#22775)
- fix(publish): reland error if there are uncommitted changes (#22613) (#22632)
- fix(publish): silence warnings for sloppy imports and node builtins with env
var (#22760) - fix(tools/publish): correctly handle importing from self in unfurling (#22774)
- fix(unstable/publish): repect
--no-check
in no-slow-types (#22653) - fix: Provide source map for internal extension code (#22716)
- fix: don't include source maps in release mode (#22751)
- fix: point to correct WPT runner file (#22753)
- fix: respect unstable "temporal" configuration in config file (#22134)
- fix: update node process version to latest node LTS (#22709)
- perf(cli): faster standalone executable determination (#22717)
- perf(cli): use faster_hex (#22761)
- perf(cli): use new deno_core timers (#22569)
- perf(cli): hard link npm cache (#22773)
v1.41.1
- feat(unstable):
deno add
subcommand (#22520) - feat(unstable/lsp): jsr specifier completions (#22612)
- feat(unstable/publish): discover jsr.json and jsr.jsonc files (#22587)
- feat(unstable/publish): enable package provenance by default on github actions
(#22635) - feat(unstable/publish): infer dependencies from package.json (#22563)
- feat(unstable/publish): provenance attestation (#22573)
- feat(unstable/publish): respect .gitignore during
deno publish
(#22514) - feat(unstable/publish): support sloppy imports and bare node built-ins
(#22588) - fix(compile): add aarch64 linux to
CliOptions::npm_system_info
(#22567) - fix(compile): allow to compile for ARM linux (#22542)
- fix(ext/crypto): align the return type of
crypto.randomUUID
to
cli/tsc/dts/lib.dom.d.ts
(#22465) - fix(ext/node) add node http methods (#22630)
- fix(ext/node): init arch, pid, platform at startup (#22561)
- fix(ext/node): set correct process.argv0 (#22555)
- fix(io): create_named_pipe parallelism (#22597)
- fix(jsr): do not allow importing a non-JSR url via unanalyzable dynamic import
from JSR (#22623) - fix(jsr): relative dynamic imports in jsr packages (#22624)
- fix(lsp): import map expansion (#22553)
- fix(publish): disable provenance if not in GHA (#22638)
- fix(publish): make the already published message look like a warning (#22620)
- fix(publish): print a warning when .jsx or .tsx is imported (#22631)
- fix(publish): reduce warnings about dynamic imports (#22636)
- fix(test): ensure that pre- and post-test output is flushed at the appropriate
times (#22611) - fix(unstable): add
Date#toTemporalInstant
type (#22637) - fix(unstable): sloppy imports should resolve .d.ts files during types
resolution (#22602) - perf(cli): reduce overhead in test registration (#22552)
- perf(fmt): reduce memory usage and improve performance (#22570)
v1.41.0
- BREAKING(net/unstable): remove
Deno.DatagramConn.rid
(#22475) - BREAKING(unstable): remove
Deno.HttpClient.rid
(#22075) - BREAKING: add
Deno.CreateHttpClientOptions.{cert,key}
(#22280) - feat(fs):
Deno.FsFile.{isTerminal,setRaw}()
(#22234) - feat(lsp): auto-import completions for jsr specifiers (#22462)
- feat(publish): type check on publish (#22506)
- feat(unstable): single checksum per JSR package in the lockfile (#22421)
- feat(unstable/lint): no-slow-types for JSR packages (#22430)
- feat:
Deno.ConnectTlsOptions.{cert,key}
(#22274) - fix(compile): respect compiler options for emit (#22521)
- fix(ext/fs): make errors in tempfile creation clearer (#22498)
- fix(ext/node): pass alpnProtocols to Deno.startTls (#22512)
- fix(ext/node): permission prompt for missing
process.env
permissions
(#22487) - fix(fmt): remove debug output when formatting dynamic imports (#22433)
- fix(lsp): add schema for JSR related config options (#22497)
- fix(node/test): disable Deno test sanitizers (#22480)
- fix(publish): better no-slow-types type discovery (#22517)
- fix(publish): ignore .DS_Store while publishing (#22478)
- fix(publish): print files that will be published (#22495)
- fix: util.parseArgs() missing node:process import (#22405)
- fix: write lockfile in
deno info
(#22272) - perf(jsr): fast check cache and lazy fast check graph (#22485)
- perf: linter lsp memory leak fix and deno_graph executor (#22519)
- perf: strip
denort
on unix (#22426)
v1.40.5
1.40.5 / 2024.02.15
- feat(lsp): jsr support first pass (#22382)
- feat(lsp): jsr support with cache probing (#22418)
- feat(publish): allow passing config flag (#22416)
- feat(unstable): define config in publish url (#22406)
- perf: denort binary for
deno compile
(#22205) - fix(console): support NO_COLOR and colors option in all scenarios (#21910)
- fix(ext/node): export process.umask (#22348)
- fix(ext/web): Prevent (De-)CompressionStream resource leak on stream
cancellation (#21199) - fix(lsp): complete npm specifier versions correctly (#22332)
- fix: cache bust jsr deps on constraint failure (#22372)
- fix: handle non-file scopes in synthetic import map (#22361)
- fix: lockfile was sometimes getting corrupt when changing config deps (#22359)
- fix: upgrade to deno_ast 0.33 (#22341)
v1.40.4
1.40.4 / 2024.02.08
- feat(unstable):
Deno.FsFile.lock[Sync]()
andDeno.FsFile.unlock[Sync]()
(#22235) - feat: ARM64 builds (#22298)
- fix(cli): Add IP address support to DENO_AUTH_TOKEN (#22297)
- fix(ext/node): Ensure os.cpus() works on arm64 linux (#22302)
- fix(ext/node): fix timeout param validation in cp.execFile (#22262)
- fix(jupyter): ensure op is available (#22240)
- fix(lint): point to migration docs in deprecated APIs rule (#22338)
- fix(lsp): disable no-cache diagnostics for jsr specifiers (#22284)
- fix(node): add
cp
to fs/promises (#22263) - fix(node): handle brotli compression end chunk sizes (#22322)
- fix(os): total and free memory in bytes (#22247)
- fix(publish): 'explit' typo (#22296)
- fix(publish): handle diagnostic outside graph (#22310)
- fix(publish): lazily parse sources (#22301)
- fix(publish): use lighter crate for opening browser (#22224)
- fix(test/regression): handle CLI arg directory using
../
in path (#22244) - fix(unstable): validate kv list selector (#22265)
- fix: Fix segmentation fault in tests on CPUs with PKU support (#22152)
- fix: Support Symbol.metadata (#22282)
- fix: enable "--allow-sys=cpus" for "deno run" (#22260)
- perf: remove duplicate
env::current_dir
call in package.json search (#22255)
v1.40.3
1.40.3 / 2024.02.01
- Revert "refactor(cli): use new sanitizer for resources (#22125)" (#22153)
- feat(unstable): implement
navigator.gpu.getPreferredCanvasFormat()
(#22149) - fix(ext/node): add
aes256
algorithm support (#22198) - fix(ext/node): limit OpState borrow in op_napi_open (#22151)
- fix(fs): copyFile NUL path on macOS (#22216)
- fix(install): forward granular --unstable-* flags (#22164)
- fix(lockfile): only consider package.json beside lockfile in workspace
property (#22179) - fix(lsp): don't normalize urls in cache command params (#22182)
- fix(node):
util.callbackify
(#22200) - fix(node): add
ppid
getter fornode:process
(#22167) - fix(publish): add node specifiers (#22213)
- fix(publish): rename --no-fast-check to --no-zap (#22214)
- fix(runtime): return number from
op_ppid
instead of bigint (#22169) - fix: canary for arm64 macos (#22187)