0.116.0 / 2021.11.24
- feat(node/os): implement os.hostname() (#1631)
- feat(node/util): add
util.inspect
(#1592) - fix(fmt/printf): print with rounding taken into account (#1623)
- fix(node/http): ignore server request parse errors (#1624)
- refactor(node): reorganize _next_tick.ts module (#1608)
0.115.1 / 2021.11.17
- fix(node): use old “process.nextTick” polyfill if Deno.core is not available (#1612)
0.115.0 / 2021.11.17
- feat(node): add wasi module (#1534)
- feat(node): process.config, process.exitCode, process._exiting (#1597)
- feat(node): process.stdin.setRawMode (#1572)
- feat(node/_fs): Add
fs.readSync
(#1598) - feat(node/fs): add
fs.read
API (#1557) - feat(node/fs): implement
fs.rm
andfs.rmSync
(#1568) - feat(node/process): add process.hrtime.bigint() (#1600)
- feat(node/util): Add
util.isBuffer
andutil._extend
(#1567) - fix(node): Align exports and declarations for Buffer and Events module (#1570)
- fix(node): improve http.Server.listen() compat (#1574)
- fix(node/http): fix no body chunked response (#1603)
- fix(node/http): improve http.Server compatibility (#1595)
- fix(node/http): improve http.Server#close() compat (#1602)
- fix(node/util): improve test coverage (#1591)
- node: add nextTick helper module (#1584)
- node: polyfill process.nextTick using Deno.core bindings (#1588)
- node: Use upstream source for “events” module (#1558)
0.114.0 / 2021.11.09
- BREAKING(http): update
serve
, addserveListener
, deprecatelistenAndServe
(#1506) - BREAKING(std/collections): deprecate findLast (#1532)
- feat(http/file_server): add streaming support, fix empty file handling (#1479)
- feat(node): add readline module (#1453)
- feat(node): process.on and process.off for signals (#1466)
- feat(node/_fs): Add watchFile function (#1483)
- feat(node/http): HTTP Server/Response improvements (#1448)
- feat(node/querystring): implement qs.unescapeBuffer (#1516)
- feat(node): mock ‘vm’ module (#1501)
- feat(node): os.cpus() (#1500)
- feat(node): process.execArgv (#1499)
- fix(collections): prevent calling
Object.prototype.__proto__
in collections/deep_merge.ts (#1504) - fix(collections): remove default selector for
findSingle
(#1232) - fix(crypto/digest): always return the underlying ArrayBuffer (#1515)
- fix(http/file_server): don’t require –allow-read for showing help message (#1521)
- fix(node): //@ts-ignore Error.captureStackTrace (#1533)
- fix(node): add proper module.export for ‘module’ (#1497)
- fix(node): child_process stdio for binary data (#1477)
- fix(node): fix flaky downloadFile test (#1460)
- fix(node): fix process.arch (#1498)
- fix(node): fix string representation of node errors (#1470)
- fix(node): isAlreadyClosed for child_process (#1469)
- fix(node/_tools): Better error and output logging (#1492)
- fix(node/_util): Deno.permissions is no longer called unless it exists. (#1520)
- fix(node/events): enable remaining tests for EventEmitter (#1489)
- fix(node/events): make EventEmitter’s public methods enumerable (#1530)
- fix(node/process): warn on not implemented event instead of throw (#1510)
- fix(node/querystring): improve
querystring.parse
(#1473) - fix(node/querystring): Improve querystring.stringify (#1488)
- fix(node/querystring/stringify): invalid surrogate pair throws URIError (#1505)
- fix(node/querystring/stringify): Remove initialValue (#1494)
- fix(signal): update signal module for canary API change (#1468)
- fix(testing): show special characters in assertEquals results (#1450)
0.113.0 / 2021.10.25
- feat(collections/running_reduce): support
currentIndex
(#1431) - feat(http/file_server): add color to log message (#1434)
- feat(http/file_server): add breadcrumbs navigation (#1433)
- feat(node): allow require with ‘node:’ prefix (#1438)
- feat(node/url): add
url.urlToHttpOptions(url)
(#1426) - feat(testing): add assertIsError (#1376)
- fix(async): fix async/tee concurent .next calls error (#1425)
- fix(crypto): support length option in crypto.subtle.digest (#1386)
- fix(http/file_server): fix encoded url in dir html (#1442)
- fix(http/file_server): fix leak file resource (#1443)
- fix(node): match Node’s os.arch values (#1440)
- fix(node): show warning when using import/export in CJS module (#1452)
- fix(node/events): make on and emit methods callable by non-EventEmitter objects (#1454)
- fix(node/util): improve util.format (#1181)
- fix(node/_tools): fix node test setup script (#1422)
- chore(node): update Node version from 16.11.1 to 16.12.0 (#1441)
0.112.0 / 2021.10.18
- feat(collections): add joinToString (#1223)
- feat(node): CJS-ESM integration (#1412)
- feat(node): add helpers for determining CJS/ESM loader (#1407)
- feat(node): barebones express compatibility (#1398)
- feat(node): define process.mainModule (#1400)
- feat(node/events): implement setMaxListeners (#1414)
- feat(node/http): request & response streams (#1403)
- feat(node/os): add devNull constant (#1397)
- feat(node/url): add
url.format(URL[, options])
(#1420) - fix(datetime): fix dayOfYear for the southern hemisphere (#1384)
- fix(fs/expand_glob): don’t parse root as glob (#1417)
- fix(node): ‘Illegal invocation’ in ‘perf_hooks’ module (#1410)
- fix(node): add ‘module’ to native modules polyfill (#1408)
- fix(node): declare ‘global’ types inline (#1409)
- fix(node): export util.format() (#1401)
- fix(node): require doesn’t throw error (#1399)
- fix(node): use hardcoded versions (#1406)
- fix(std/io): fix readline when catch BufferFullError (#1377)
- fix(testing): improve assertObjectMatch (#1419)
- chore(node): upgrade Node.js version from 15.5.1 to 16.11.1 (#1405)
0.111.0 / 2021.10.12
- BREAKING(fs): deprecate exists and existsSync (#1364)
- BREAKING(hash): deprecate std/hash (#1350)
- BREAKING(io): reorganize modules (#813)
- feat: streams utilities (#1141)
- feat(node): Add dns and net modules (#1375)
- feat(node): first iteration of http (#1383)
- feat(node): update built-in modules in node/module.ts (#1378)
- feat(node/crypto): add randomFillSync an randomFill (#1340)
- feat(node/crypto): add randomInt (#1356)
- feat(node/http): Export STATUS_CODES and METHODS (#1357)
- feat(node/url): add support for UNC path (#1365)
- fix(async/delay): reject if signal is already aborted (#1363)
- fix(encoding/base64url): allow passing strings to
encode
(#1361) - fix(node): typo from #1380 (#1381)
- fix(node/url): improve compatibility of fileURLToPath (#1342)
- perf(bytes): switch equals to simd for large byte arrays (#1349)
0.110.0 / 2021.10.04
- feat(node): add missing modules (#1337)
- feat(node): support
Buffer.readUIntLE
(#1326) - feat(node/buffer): support
Buffer.readUIntBE
(#1321) - feat(node/crypto): add
scrypt
andscryptSync
(#1329) - feat(node/crypto): add
timingSafeEqual
(#1333) - feat(node/stream/web): export more APIs (#1338)
- feat(std/node): add back os.tmpdir() implementation (#1308)
- feat(std/node/crypto): Add
crypto.randomUUID
(#1332)
0.109.0 / 2021.09.28
- feat(std/node/stream): add partial support for
stream/web
(#1297) - fix(node/_tools): use denoflate to decompress Node test folder (#1299)
- fix(node/events): make
EventEmitter.call
compatible with es5 (#1315) - fix(std/node/module): treat .mjs files as ESM (#1301)
- perf(crypto): reduce one mircotask (#1307)
0.108.0 / 2021.09.21
- fix: use
strict-ts44.tsconfig.json
on release tests (#1278) - fix(collections): improve handling of arrays containing undefined (#1282)
- feat(testing/asserts): add
assertThrows()
overload to receive error (#1219) - feat(std/node): add
ParsedUrlQuery
toquerystring
(#1229) - feat(collections): use function overloading (#1286)
- chore(node/events): remove unnecessary
@ts-ignore
comments (#1280) - docs(collections): add browser-compatibility comment (#1285)
- docs(encoding): add hex docs (#1287)
- docs(collections): replace console.assert with assertEquals (#1293)
0.107.0 / 2021.09.14
- BREAKING(http): cookie headers as params (#1041)
- feat(collection): add findSingle (#1166)
- feat(collections): Add
associatewith
(#1213) - feat(collections): add
runningReduce
(#1226) - feat(collections): add
sample
API (#1212) - feat(collections): add dropWhile (#1185)
- feat(collections): add maxWith (#1170)
- feat(collections): add minWith (#1169)
- feat(collections): add reduceGroups (#1187)
- feat(collections): add slidingWindows (#1191)
- feat(io/streams): propagate cancel in readableStreamFromIterable() (#1274)
- fix(collections/includesValue): prevent enumerable prototype check (#1225)
- fix(testing/asserts): export Constructor type (#1208)
- fix(tests/yaml): expect !!js/function parse/stringify to throw (#1276)
- fix: update to latest signal API changes
- security(encoding/yaml): disable functions (#1275)
0.106.0 / 2021.08.23
- feat(async): add abort signal to delay (#1130)
- feat(collection): find_last_index to return undefined on no index found (#1072)
- feat(node/buffer): add missing exports (#1140)
- feat(node/buffer): export atob and btoa (#1147)
- fix(node/perf-hooks): add PerformanceEntry to default export (#1152)
- fix(testing):
assertEquals
now considers constructors equal if one is nullable and the other is Object (#1159) - perf(collections): permutations optimisation (#1132)
0.105.0 / 2021.08.16
- docs(collections): fix typo in collections docs (#1127)
- feat(collections): compile time guarantee on pure functions (#1119)
- fix: type check examples in README files (#1121)
- fix(collections): intersect does not handle duplicate values in head properly (#1131)
- fix(crypto): make crypto bench depend on sibling version of testing module (#1135)
- refactor(bytes): rename
contains
toincludes
with optional argumentfromIndex
(#1133)
0.104.0 / 2021.08.10
- feat: Add
collections
module (#993, #1075, #1103, #1062, #1062, #1109, #1108, #1071, #1069, #1104, #1097, #1110, #1116) - feat(crypto): add std/crypto wrapping and extending runtime WebCrypto (#1025)
- feat(http/file_server): return code 304 based on If-Modified-Since Header (#1078)
- feat(node): add remaining Node.js builtin aliases (#1085)
- feat(node): add shim for perf_hooks (#1088)
- feat(node): assert/strict alias (#1084)
- feat(node): fs/promises implementation (#1083)
- feat(testing): add
assertRejects
, deprecateassertThrowsAsync
(#1101) - fix(async): make it so exception of
deadline
can be caught (#1105) - fix(http/file_server): fix flaky ‘file_server sets Date header correctly’ test case (#1095)
- fix(node): assert/strict, fs/promises, perf_hooks modules could not be required (#1107)
- fix(node/events): optimize listener management (#1113)
- fix(testing): change
assertThrows
andassertThrowsAsync
return type tovoid
andPromise<void>
(#1052)
0.103.0 / 2021.07.26
- feat(async): add status to deferred promises (#1047)
- feat(http): add range request and etag support to
file_server.ts
(#1028) - fix(async/deferred): rename .status -> .state (#1055)
- fix(encoding/base64url): throw TypeError in case of invalid base64url string (#1040)
- fix(encoding/toml): fix inline table and nested array (#1042)
- fix(encoding/yaml): fix
parseAll
type definition by using overloads (#1048) - fix(testing):
assertThrowsAsync
always reportingError
instead of actual error class (#1051) - fix(testing/asserts): cater for different class constructor functions (#1000)
0.102.0 / 2021.07.19
- feat: Add std/collections (#993)
- fix(encoding/toml): fix comment line starting with whitespaces (#1017)
- fix(encoding/toml): parse keys correctly (#1019)
- fix(hash): fix handling of non-byte-sized TypedArray views (#1012)
- fix(testing): Don’t merge diff when it’s not spaces even if it’s surrounded by word-diff (#1032)
0.101.0 / 2021.07.13
- BREAKING(encoding/hex): remove encodedLen, encodeToString, decodedLen, decodeString, errInvalidByte, errLength (#733)
- BREAKING(mime/multipart): return array for multiple values with same form name (#722)
- BREAKING(std/uuid): rework v4 and v5 module (#971)
- feat(async): add
deadline
to async module (#1022) - feat(async): add debounce method to async module (#1006)
- feat(encoding/toml): fix bad string format. Improve coverage (#991)
- feat(hash): add BLAKE3 hash support (#994)
- feat(http): Add Cookie domain validation (#1009)
- feat(http): Allow passing path and domain attributes while removing cookies (#1005)
- feat(io): add
copy
function (#1016) - feat(io/streams): add autoClose option to writableStreamFromWriter (#964)
- feat(std/node): add writeBuffer of internal binding fs module (#888)
- fix: improve type safety for browser-compatible modules (#995)
- fix(encoding/toml): serializes mixed array (#1001)
- fix(encoding/toml): throws parse error when toml uses invalid whitespaces (#1013)
- fix(http):
setCookie
withmaxAge
of0
(#992) - fix(http/server): Swallow NotConnected errors from listener.accept() (#761)
- fix(io/bufio): fix handling of trailing new line (#990)
- fix(node/module): More descriptive error in “createRequire” (#997)
- fix(path): Add question mark as a glob indicator (#1024)
- fix(testing): use return type of never for
fail
(#1002)
0.100.0 / 2021.06.29
- feat(testing/asserts): improved strings diff (#948)
- feat(testing/asserts): use assertion signature for “assertExists” (#969)
- fix(node/events): align EventEmitter#addListener with native node tests (#976)
- fix(path): fix type error in glob.ts with noImplicitAny: false config (#977)
0.99.0 / 2021.06.15
- feat(mime): make createPart of MultipartWriter public (#960)
- feat(node/util): add inherits (#958)
- fix(node/events): fix EventEmitter#removeAllListeners (#968)
- fix(node/process): make process.env enumerable (#957)
- fix(node/util): fix util.inherits (#959)
0.98.0 / 2021.06.08
- feat(async): add async/tee (#919)
- feat(async/mux): take AsyncIterable as source iterator (#923)
- feat(io/bufio): add encoding options to
readLines
andreadStringDelim
(#921) - feat(node/perf_hooks): add perf_hooks module (#945)
- fix(encoding/binary): allow getNBytes to read until EOF (#932)
- fix(encoding/binary): respect non 0 byte offsets (#826)
- fix(node/events): fix EventEmitter#once to pass native node tests (#935)
- fix(node/events): fix getMaxListeners and setMaxListeners to pass native node tests (#928)
- fix(node/fs): fix type error in fs.watch impl (#947)
- fix(testing/asserts): fix handling of Weak* objects (#951)
0.97.0 / 2021.05.17
- fix(io/buffer): make Buffer compatible with Deploy (#912)
- fix(io/bufio): readDelim returns wrong result if delim strides over chunks (#877)
- fix(node/events): accept only functions as listener arguments (#916)
- fix(testing): support array values in assertObjectMatch (#906)
0.96.0 / 2021.05.11
- feat(fs/walk): show path in walk error (#875)
- feat(http): allow custom response code (#855)
- feat(io): add readRange, readRangeSync (#884)
- feat(mime/multipart): add options to readForm (#895)
- feat(node): add console module (#892)
- feat(node/assert): add rejects and doesNotReject (#894)
- feat(std/node): add implementation of os.homedir() (#873)
- fix(http/file_server): keep url and name consistent (#908)
- fix(io): Improve readDelims() performance (#867)
- fix(io/streams): don’t use a byte ReadableStream (#891)
- fix(node/assert): enable test-assert-fail.js and align assert.fail to it (#874)
- fix(node/child_process): Try to fix flaky tests (#876)
- fix(node/stream): make
Stream
the default export (#901)
0.95.0 / 2021.04.23
- feat(node): add basic support for child_process.spawn (#785)
- feat(path/glob): add caseInsensitive option (#854)
- fix(node/fs): actually export everything (#862)
0.94.0 / 2021.04.20
- feat(node/fs): add fstat and fstatSync (#847)
- feat(streams): add readableStreamFromReader (#852)
- fix(path): reduce circular dependency (#858)
- fix(testing): equals does not differentiate undefined/absent keys (#849)
0.93.0 / 2021.04.13
- feat: add iter and iterSync to io/util (#843)
- feat(node/fs): add fdatasync and fdatasyncSync (#841)
- feat(node/fs): add fsync and fsyncSync (#840)
- feat(node/fs): add ftruncate and ftruncateSync (#829)
- feat(node/fs): add futimes and futimesSync (#830)
- fix(testing): Function signature of assertObjectEquals() does not accept interfaces (#763)
0.92.0 / 2021.04.02
- feat: make bufio compatible to Deno Deploy (#831)
- feat: add symlink adn symlinkSync to node/fs (#825)
- feat: add format and improve deprecate in node/util (#693)
- feat: add io/buffer and io/util module (#808) …
- fix: handle upstream type changes (#834)
- refactor:
Promise<void>
return types are unnecessary boilerplate in encoding. (#818) - chore: remove unused import in http (#817)
0.91.0 / 2021.03.21
- chore(codecov): ignore coverage of examples (#798)
- feat(encoding/yaml): add support for JS types and user types (#789)
- feat(io/streams): Add readerFromIterable() (#752)
- feat(std/node): add utimes and utimesSync (#805)
- fix(multipart): support useDefineForClassFields (#807)
- fix(node): fix node/cli.ts (#797)
- fix(node): move
throw error
in fs.writeFile to passno-unsafe-finally
(#810) - fix(path): enable and fix file URL tests (#804)
- refactor(node/fs): update fs import (#793)
0.90.0 / 2021.03.09
- fix(http): Create a single encoder instance (#790)
- feat(node): Add “module” polyfill (#783)
- feat(node): Add CLI for running Node.js script with std/node (#779)
- feat(node): Fix assert module, enable test cases (#769)
0.89.0 / 2021.03.02
- BREAKING(io/streams): Strengthen iterator to readable stream conversion (#735)
- build: collect and upload code coverage (#770)
- feat(node): add constants module (#747)
- feat(node): add crypto.createHash (#757)
- feat(node): add process.hrtime function (#751)
- feat(node): add truncate and truncateSync (#765)
- fix(node): export promisify & callbackify (#748)
- fix(node): fix export items of events (#758)
- fix(node): ignore shebang (#746)
- fix(node): native module needs to be extensible (#745)
- fix(node/process): make process.argv an array (#749)
- fix: fix type errors in canary test (#762)
- refactor: fix codes to pass
no-unused-vars
lint (#764) - test(path): update test cases for canary (#775)
0.88.0 / 2021.02.19
- BREAKING(encoding): remove module utf8.ts (#728)
- chore: fix typo in contributing section (#709)
- docs(bytes): improve README.md (#737)
- feat(node): add native module polyfills: url, crypto (#729)
- feat(node): add tty module (#738)
- feat(node): support conditional exports (#726)
- fix(std/testing) : Handle Symbols correctly in deep equalities (#731)
- test(node): run external tests with –quiet (#732)
0.87.0 / 2021.02.12
- BREAKING(http/cookie): remove Cookies and SameSite type aliases (#720)
- docs(fmt): fix examples in fmt/colors.ts (#715)
- docs(io/ioutil): improve jsdoc (#706)
- fix(http/file_server): svg media type (#718)
- refactor(hash/md5): throw
TypeError
for wrong type (#698) - test(node): enable native node tests (#695)
0.86.0 / 2021.02.05
- feat(http/file_server): support do not show dotfiles (#690)
- feat(http/file_server): show ../ if it makes sense & end dirs with / (#691)
Releases notes for previous releases can be found in
deno
repository.