Releases: denoland/deno
Releases Β· denoland/deno
v1.32.5
1.32.5 / 2023.04.18
- feat(UNSTABLE/kv): AtomicOperation#sum (#18704)
- fix(core): Use safe primordials wrappers (#18687)
- fix(ext/node): add req.socket.remoteAddress (#18733)
- fix(ext/node): implement crypto.createVerify (#18703)
- fix(ext/node): polyfill response._implicitHeader method (#18738)
- fix(ext/websocket): Avoid write deadlock that requires read_frame to complete
(#18705) - fix(lsp): ensure language server status works on unix (#18727)
- fix(npm): eagerly reload package information when version from lockfile not
found locally (#18673) - fix(path): Remove non node symbols (#18630)
- fix(test): add process sigint handler for --watch (#18678)
- perf(ext/websocket): make
op_server_ws_next_event
deferred (#18632) - perf(ops): directly respond for eager ops (#18683)
v1.32.4
1.32.4 / 2023.04.12
- Revert "fix(cli): don't store blob and data urls in the module cache (#18261)"
(#18572) - feat(core): sync io ops in core (#18603)
- feat(ext/http): add an op to perform raw HTTP upgrade (#18511)
- fix(core): preserve syntax error locations in dynamic imports (#18664)
- fix(ext/cache): cache.put overwrites previous call (#18649)
- fix(ext/kv): keys must be arrays (#18655)
- fix(ext/node): add X509Certificate (#18625)
- fix(ext/node): add symmetric keygen (#18609)
- fix(ext/node): fix unable to resolve fraction.js (#18544)
- fix(ext/node): implement hkdf-expand (#18612)
- fix(ext/node): json encode binary command name (#18596)
- fix(npm): cache bust npm specifiers more aggressively (#18636)
- fix(npm): do not "npm install" when npm specifier happens to match
package.json entry (#18660) - fix(npm): reload an npm package's dependency's information when version not
found (#18622) - perf(ext/io): remove a data copy from File write (#18601)
- perf(ext/websocket): replace tokio_tungstenite server with fastwebsockets
(#18587)
v1.32.3
1.32.3 / 2023.04.01
- fix(check): ensure diagnostics caused by changes in other files get
invalidated between runs (#18541) - fix(ext/ffi): crash when same reference struct is used in two fields (#18531)
- fix(lsp): add a document preload file system entry limit (#18553)
- fix(repl): disable language server document preloading in the repl (#18543)
- fix(test): don't swallow sanitizer errors with permissions (#18550)
- perf(check): faster source hashing (#18534)
v1.32.2
1.32.2 / 2023.03.31
- Revert "refactor(ext/node): Use Deno.inspect (#17960)" (#18491)
- feat(core): initialize SQLite off-main-thread (#18401)
- feat(ext/kv): return versionstamp from set/commit (#18512)
- feat(ext/node): add
crypto.checkPrime
API (#18465) - feat(ext/node): implement crypto.createSecretKey (#18413)
- feat(test): print pending tests on sigint (#18246)
- feat: port node:zlib to rust (#18291)
- fix(cli): add colors to "Module not found" error frame (#18437)
- fix(cli): don't store blob and data urls in the module cache (#18261)
- fix(cli/bench): look for clone3 syscalls for thread count (#18456)
- fix(core): located_script_name macro was using format syntax (#18388)
- fix(core): panic at build time if extension code contains anything other than
7-bit ASCII (#18372) - fix(core): restore cache journal mode to TRUNCATE and tweak tokio test in
CacheDB (#18469) - fix(coverage): ignore files from npm registry (#18457)
- fix(dts): improve types for the Deno.KV API (#18510)
- fix(ext/kv): add missing
getMany
method (#18410) - fix(ext/node): add aes-128-ecb algorithm support (#18412)
- fix(ext/node): add missing _preloadModules hook (#18447)
- fix(ext/node): implement crypto.Sign (RSA/PEM/SHA{224,256,384,512}) (#18471)
- fix(ext/node): make cipher/decipher transform stream (#18408)
- fix(lsp):
textDocument/references
should respectincludeDeclaration
(#18496) - fix(lsp): better handling of
data:
urls (#18527) - fix(lsp): include all diagnosable documents on initialize (#17979)
- fix(ops): fallback when FastApiOneByteString is not utf8 (#18518)
- fix(repl): improve package.json support (#18497)
- fix(streams): add support
Float64Array
toReadableStreamByobReader
(#18188) - fix: Add missing
processenv
winapi feature to deno_io (#18485) - fix: upgrade to TypeScript 5.0.3 (#18532)
- perf(ext/websocket): efficient event kind serialization (#18509)
- perf(ext/websocket): special op for sending binary data frames (#18506)
- perf(ext/websocket): special op for sending text data frames (#18507)
- perf(ext/websocket): use opAsync2 to avoid spread deopt (#18525)
- perf:
const
op declaration (#18288)
v1.32.1
1.32.1 / 2023.03.23
- fix(core): disable resizable ArrayBuffer and growable SharedArrayBuffer (#18395)
- fix(cli): restore
deno run -
to handle stdin as typescript (#18391) - fix(inspect): ensure non-compact output when object literal has newline in entry text (#18366)
- fix(lsp): ensure
enablePaths
works when clients do not provide a trailing slash for workspace dir (#18373)
v1.32.0
π¨ Deno 1.32.0 contains a critical security issue. Please upgrade to 1.32.1.
1.32.0 / 2023.03.22
- BREAKING(unstable): remove WebGPU (#18094)
- feat(ext/fs): FileInfo.dev is supported on Windows (#18237)
- feat(cli): --ext parameter for run, compile, and bundle (#17172)
- feat(compile): Add support for web workers in standalone mode (#17657)
- feat(compile): Enable multiple roots for a standalone module graph (#17663)
- feat(core): deno_core::extension! macro to simplify extension registration
(#18210) - feat(ext/kv): key-value store (#18232)
- feat(ext/net): Add multicasting APIs to DatagramConn (#10706) (#17811)
- feat(ext/url): URLSearchParams.size (#17884)
- feat(repl): add
DENO_REPL_HISTORY
to change history file path (#18047) - feat(serde_v8): support BigInt serialization (#18225)
- feat: TypeScript 5.0.2 (except decorators) (#18294)
- fix(cli): preserve blob store when resetting file watcher (#18253)
- fix(cli/integration): clippy lints (#18248)
- fix(ext/kv): don't request permissions for ":memory:" (#18346)
- fix(ext/kv): reverse mapping between
AnyValue::Bool
andKeyPart::Bool
(#18365) - fix(ext/node): add createDecipheriv (#18245)
- fix(ext/node): resource leak in createHmac (#18229)
- fix(ext/node): use Deno.Command from
ext:runtime
(#18289) - fix(repl): Hide indexable properties in tab completion (#18141)
- fix(runtime): Extract error code for all OS error variants (#17958)
- fix: include error in message about not being able to create the TypeScript
cache (#18356) - perf(check): type check local files only when not using
--all
(#18329) - perf(core) Reduce copying and cloning in extension initialization (#18252)
- perf(core) Reduce script name and script code copies (#18298)
- perf(core): preserve ops between snapshots (#18080)
- perf(core): use static specifier in ExtensionFileSource (#18271)
- perf: disable WAL for transpiled source cache (#18084)
- perf: disable runtime snapshot compression (#18239)
v1.31.3
1.31.3 / 2023.03.16
- fix(check): regression where config "types" entries caused type checking
errors (#18124) - fix(core): Upgrades bytes crate from =1.2.1 to ^1.4.0 (#18123)
- fix(core):
SafePromiseAll
to be unaffected byArray#@@iterator
(#17542) - fix(core/internal): fix typo in primordial type definitions (#18125)
- fix(ext/fs): retry if file already exists in makeTempFile (#17787)
- fix(ext/http): abort request signal when response errors (#17822)
- fix(ext/node): add crypto.createCipheriv (#18091)
- fix(ext/node): implement "ascii" encoding for node:fs writeFile() (#18097)
- fix(ext/web): Stop using
globalThis.ReadableStream
inBlob
(#18187) - fix(info/doc): add missing
--no-lock
and--lock
flags (#18166) - fix(lsp): avoid calling client while holding lock (#18197)
- fix(npm): "not implemented scheme" message should properly show the scheme
(#18209) - fix(npm): show a progress bar when initializing the node_modules folder
(#18136) - fix(repl): do not panic deleting
Deno
or deleting all its properties
(#18211) - fix: ensure no node_modules directory is created when a package.json exists
and no npm dependencies are used (#18134) - perf: do not depend on iana-time-zone (#18088)
v1.31.2
1.31.2 / 2023.03.10
- feat(core): prevent isolate drop for CLI main worker (#18059)
- feat(ext/ffi): Make External pointers keep reference to V8 buffer (#17955)
- feat(ops): reland fast zero copy string arguments (#17996)
- feat(ops): relational ops (#18023)
- fix(check): include dts files in tsc roots (#18026)
- fix(cli,ext/web): Upgrading uuid from =1.1.2 to 1.3.0 (#17963)
- fix(core): introduce
SafeRegExp
to primordials (#17592) - fix(ext/crypto): correctly limit ECDSA and hash algorithms (#18030)
- fix(ext/ffi): Remove deno_core::OpState qualifiers, fix ops returning pointer
defaults (#17959) - fix(ext/node): remove unused _hex module (#18045)
- fix(ext/node): util.types.isSharedArrayBuffer (#17836)
- fix(ext/webstorage): check size of inputs before insert (#18087)
- fix(lockfile): don't touch lockfile is npm specifiers are identical (#17973)
- fix(npm): improve peer dependency resolution with circular dependencies
(#18069) - fix(prompt): better output with control chars (#18108)
- fix(rumtime): Add
Deno.
prefix for registered symbols (#18086) - fix(runtime/windows): ensure
Deno.stdin.setRaw(false)
properly disables raw
mode (#17983) - fix: Split extension registration and snapshotting (#18098)
- fix: attempt to only allow one deno process to update the node_modules folder
at a time (#18058) - fix: lazily surface errors in package.json deps parsing (#17974)
- perf(core): over-allocate in ModuleMap when running from snapshot (#18083)
- perf(ext/node): improve createHash performance (#18033)
- perf: don't add unload event listener (#18082)
- perf: move runtime bootstrap code to snapshot time (#18062)
- perf: move setting up Deno namespace to snapshot time (#18067)
v1.31.1
1.31.1 / 2023.02.25
- feat: add
DENO_NO_PACKAGE_JSON
env var (#17926) - fix(npm): lazily install package.json dependencies only when necessary
(#17931) - fix(npm): package.json auto-discovery should respect
--no-config
and
--no-npm
(#17924) - fix: ensure concurrent non-statically analyzable dynamic imports do not
sometimes fail (#17923) - fix: ignore workspace, git, file, http, https specifiers in package.json
(#17934, #17938) - fix: regression remapping remote specifier to local file (#17935)
- fix: remote modules should be allowed to import data urls (#17920)
v1.31.0
1.31.0 / 2023.02.23
- feat(bench): Add JSON reporter for "deno bench" subcommand (#17595)
- feat(bench): change --json output format (#17888)
- feat(core): allow to specify entry point for snapshotted ES modules (#17771)
- feat(ext/ffi): Replace pointer integers with v8::External objects (#16889)
- feat(ext/http): add 2nd param to handler to get remote address (#17633)
- feat(ext/node): embed std/node into the snapshot (#17724)
- feat(ext/node): implement
node:v8
(#17806) - feat(install): follow redirects for urls with no path (#17449)
- feat(node): stabilize Node-API (#17553)
- feat(npm): support bare specifiers from package.json in more subcommands and
language server (#17891) - feat(npm): support npm specifiers in remote modules without
--unstable
(#17889) - feat(permissions): grant all permission for a group in permission prompt
(#17140) - feat(task): add warning about package.json scripts support (#17900)
- feat(task): adjust warning (#17904)
- feat(task): support scripts in package.json (#17887)
- feat: Deprecate 'deno bundle' subcommand (#17695)
- feat: Stabilize Deno.Command API (#17628)
- feat: add more variants to Deno.build.os (#17340)
- feat: add signal option to Deno.resolveDns (#17384)
- feat: auto-discover package.json for npm dependencies (#17272)
- feat: stabilize Deno.osUptime() (#17554)
- feat: start caching npm package version's "bin" entry from npm registry
(#17881) - feat: support bare specifier resolution with package.json (#17864)
- feat: wire up ext/node to the Node compatibility layer (#17785)
- fix(cli): Add better error message when powershell is missing during upgrade
(#17759) - fix(cli/graph_util): don't append referrer info for root module errors
(#17730) - fix(cli/napi): correct name handling in napi property descriptor (#17716)
- fix(cli/napi): handle all property variants in napi_define_properties (#17680)
- fix(core): don't allow to import internal code is snapshot is loaded (#17694)
- fix(core): rebuild when JS sources for snapshotting change (#17876)
- fix(core): remove async op inlining optimization (#17899)
- fix(dts): make Deno.Command accept readonly prop in options.args (#17718)
- fix(ext/console): Only right-align integers in console.table() (#17389)
- fix(ext/ffi): Fix re-ref'ing UnsafeCallback (#17704)
- fix(ext/ffi): improve error messages in FFI module (#17786)
- fix(ext/flash): Always send correct number of bytes when handling HEAD
requests (#17740) - fix(ext/flash): wrong order of arguments passed to
http1Response
(#17893) - fix(ext/node): add support for BYOB streams (#17803)
- fix(ext/node): fix node stream (#17874)
- fix(ext/node): fix npm module resolution when --node-modules-dir specified
(#17896) - fix(ext/node): fix process.uptime (#17839)
- fix(ext/node): fix webcrypto export (#17838)
- fix(ext/websocket): extra ws pongs sent (#17762)
- fix(fmt): make fmt options CLI args less verbose (#17550)
- fix(lint): revert no-deprecated-api for Deno.run (#17880)
- fix(npm): allow resolving from package.json when an import map exists (#17905)
- fix(npm): filter out duplicate packages names in resolution (#17857)
- fix(npm): improve peer dependency resolution (#17835)
- fix(npm): resolve node_modules dir relative to package.json instead of cwd
(#17885) - fix(npm): support bare specifiers in package.json having a path (#17903)
- fix(ops): Always close cancel handles for read_async/write_async (#17736)
- fix(webgpu): don't default to 0 for setVertexBuffer.size & properly use
webidl.setlike (#17800) - fix(runtime): Refactor fs error mapping to use unified format (#17719)
- fix(webgpu): use correct op for GPUDevice.createSampler (#17729)
- fix: add WouldBlock error (#17339)
- fix: loading built-in Node modules embedded in the binary (#17777)
- fix: use static Reflect methods in nodeGlobalThis proxy (#17696)
- perf(core): speed up promise hook dispatch (#17616)
- perf(core, runtime): Further improve startup time (#17860)
- perf(ext/ffi): Revert UTF-8 validity check from getCString (#17741)
- perf(ext/node): move winerror binding to rust (#17792)
- perf(http): remove allocations checking upgrade and connection header values
(#17727) - perf: disable fetching graph cache info except for
deno info
(#17698) - perf: module info cache - avoid MediaType.to_string() allocation (#17699)
- perf: remove
current_dir()
call inDeno.mainModule
(#17883) - perf: use ops for node:crypto ciphers (#17819)