- fix(cache,data-structures): add missing non-null assertion and
override
keyword (#5981)
- fix(cache,data-structures): add missing non-null assertion and
override
keyword (#5981)
- fix(tar): update to
0.1.1
(#5980)
- chore(net): add back
get-network-address
module to fix[email protected]/file-server
(#5970)
- docs(path): add note about
unstable-join
(#5967)
- refactor(archive,io): use
Seeker[Sync]
from@std/io/types
(#5943)
- BREAKING(assert/unstable): move unstable
assertNever
under@std/assert/unstable-never
(#5928) - fix(assert): value-equal complex keys (#5914)
- perf(assert): add fast path for primitive keyed collections in
equal()
(#5913) - refactor(assert,expect): import internal APIs from more specific paths (#5923)
- refactor(assert): remove unnecessary
getValFromKeyedCollection()
(#5921)
- BREAKING(cli/unstable): move
spinner
module tounstable-spinner
(#5946)
- fix(collections): ensure
pick
doesn't generate missing properties asundefined
(#5926)
- BREAKING(data-structures/unstable): move
bidirectional-map
module tounstable-bidirectional-map
(#5947) - feat(data-structures/unstable):
@std/data-structures/bidirectional-map
(#5910)
- BREAKING(encoding/unstable): move
base64url-stream
module tounstable-base64url-stream
(#5959) - BREAKING(encoding/unstable): move
base32hex
module tounstable-base32hex
(#5961) - BREAKING(encoding/unstable): move
hex-stream
module tounstable-hex-stream
(#5960) - BREAKING(encoding/unstable): move
base64-stream
module tounstable-base64-stream
(#5958) - BREAKING(encoding/unstable): move
base32hex-stream
module tounstable-base32hex-stream
(#5956) - BREAKING(encoding/unstable): move
base32-stream
module tounstable-base32-stream
(#5955)
- fix(expect): value-equal complex keys in
expect.equal()
(#5936) - perf(expect): add fast path for primitive keyed collections in
equal()
(#5934) - refactor(assert,expect): import internal APIs from more specific paths (#5923)
- BREAKING(front-matter/unstable): move unstable overload of yaml
extract
tounstable-yaml
(#5968)
- BREAKING(html/unstable): move
is-valid-custom-element-name
module tounstable-is-valid-custom-element-name
(#5948)
- BREAKING(http/unstable): move
route
to./unstable-route
(#5939) - BREAKING(http/unstable): move unstable APIs (
header
,method
,signed-cookie
) (#5938) - fix(http): invalid ipv6 hostname printed to console (#5924)
- fix(http): show hostname as 'localhost' for 0.0.0.0 on windows (#5918)
- refactor(http): inline
serveFallback()
util (#5917)
- feat(io): add
Seeker[Sync]
interfaces (#5930) - refactor(archive,io): use
Seeker[Sync]
from@std/io/types
(#5943)
- BREAKING(net/unstable): move
get-network-address
module tounstable-get-network-address
(#5949) - fix(net): skip empty mac address for
getNetworkAddress()
(#5941) - test(net): add test of
getNetworkAddress()
(#5963)
- BREAKING(path/unstable): move unstable overload of
normalize
tounstable-normalize
(#5965) - BREAKING(path/unstable): move unstable overload of
join
tounstable-join
(#5964) - BREAKING(path/unstable): move unstable overload of
extname
tounstable-extname
(#5962) - BREAKING(path/unstable): move unstable overload of
basename
tounstable-basename
(#5957) - BREAKING(path/unstable): move unstable overload of
dirname
tounstable-dirname
(#5954)
- feat(random/unstable): basic randomization functions (#5626)
- BREAKING(streams/unstable): move
fixed-chunk-stream
module tounstable-fixed-chunk-stream
(#5951) - BREAKING(streams/unstable): move
to-lines
module tounstable-to-lines
(#5950)
- BREAKING(text/unstable): move
slugify
module tounstable-slugify
(#5953) - BREAKING(text/unstable): move
to-constant-case
module tounstable-to-constant-case
(#5952)
- BREAKING(url): remove @std/url (#5931)
- BREAKING(uuid/unstable): move UUID v7 APIs to
./unstable-v7
(#5937)
- feat(archive):
UntarStream
andTarStream
(#4548) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(assert,datetime,fmt,io,streams): consistently
throw new Error()
instead ofthrow Error()
(#5855)
- fix(async,csv,fmt): assign default value when
undefined
is passed (#5893) - docs(async): add note about
deadline()
DOMException
name ofTimeoutError
(#5833) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- fix(cache/unstable): fix flaky fibonacci test (#5872)
- docs(cache): document valid range information for TTL values (#5834)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- fix(async,csv,fmt): assign default value when
undefined
is passed (#5893) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(assert,datetime,fmt,io,streams): consistently
throw new Error()
instead ofthrow Error()
(#5855)
- fix(dotenv): handle single-quotes in values in
stringify()
(#5846) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892) - refactor(expect): align error messages in the matchers (#5835)
- fix(async,csv,fmt): assign default value when
undefined
is passed (#5893) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892) - refactor(assert,datetime,fmt,io,streams): consistently
throw new Error()
instead ofthrow Error()
(#5855)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- fix(http): less restrictive arguments for
accepts*()
functions (#5850) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- fix(io): don't use
Deno.Buffer
in examples (#5889) - refactor(assert,datetime,fmt,io,streams): consistently
throw new Error()
instead ofthrow Error()
(#5855)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- fix(msgpack): accept readonly input data in
encode()
(#5832)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- feat(path/unstable): support file
URL
arg innormalize()
(#5902) - feat(path/unstable): support
URL
as 1st arg ofbasename()
(#5900) - feat(path/unstable): support
URL
in first arg ofjoin()
(#5863) - fix(path/unstable): support
string | URL
in the 2nd overload ofbasename
,dirname
, andextname
(#5904) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892) - refactor(path): make
isWindows
check compatible with Node and Bun (#4961)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(assert,datetime,fmt,io,streams): consistently
throw new Error()
instead ofthrow Error()
(#5855)
- feat(tar/unstable):
@std/tar
(#5905)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- docs(url): update deprecation docs (#5907)
- feat(uuid/unstable):
@std/uuid/v7
(#5887)
- refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892)
- fix(yaml): handle string instances (#5897)
- fix(yaml): handle Boolean instances correctly (#5894)
- fix(yaml): handle integer number instances (#5895)
- fix(yaml): handle float number instances (#5896)
- fix(yaml): fix
sortKey
error message (#5873) - refactor(archive,async,cli,csv,dotenv,encoding,expect,fmt,front-matter,fs,http,internal,log,net,path,semver,testing,text,webgpu,yaml):
enable
"exactOptionalPropertyTypes"
option (#5892) - refactor(yaml): switch array test (#5898)
- refactor(yaml): simplify
stringifyBlockMapping()
(#5885) - refactor(yaml): cleanup utility functions (#5886)
- refactor(yaml): cleanup str type (#5879)
- refactor(yaml): simplify seq type (#5878)
- refactor(yaml): simplify merge type (#5877)
- refactor(yaml): simplify set type (#5867)
- refactor(yaml): simplify regexp type (#5860)
- refactor(yaml): move
duplicate
andduplicateIndex
(#5836) - refactor(yaml): inline
composeNode()
(#5861) - refactor(yaml): simplify
resolve()
for pairs (#5852) - refactor(yaml): simplify null type (#5858)
- refactor(yaml): simplify boolean type (#5859)
- refactor(yaml): inline
readAlias()
(#5856) - refactor(yaml): inline
readAnchorProperty()
(#5853) - refactor(yaml): simplify omap
resolve()
(#5843) - refactor(yaml): simplify pair
construct()
function (#5844) - refactor(yaml): inline
readTagProperty()
(#5849) - refactor(yaml): replace
getObjectTypeString()
withisPlainObject()
(#5842) - refactor(yaml): inline
readBlockMapping()
(#5847) - refactor(yaml): inline
readBlockScalar()
(#5841) - refactor(yaml): inline
readFlowCollection()
(#5840) - refactor(yaml): change error message in
stringifyNode()
(#5839) - refactor(yaml): inline
readDoubleQuotedScalar()
(#5838) - refactor(yaml): align additional error messages (#5806)
- refactor(yaml): move
isObject()
(#5823) - refactor(yaml): inline
readSingleQuotedScalar()
(#5827) - test(yaml): add invalid
represent
type test (#5874) - test(yaml): add positive timezone timestamp test (#5881)
- test(yaml): add int type tests (#5868)
- test(yaml): add set type test (#5866)
- test(yaml): add regexp type tests (#5862)
- test(yaml): add duplicate binary references test (#5837)
- test(yaml): add undefined array entry with
skipInvalid
andflowLevel
options test (#5828) - test(yaml): add duplicate array reference test (#5825)
- test(yaml): add undefined object entry with skipInvalid and flowLevel option test (#5829)
- chore(yaml): fix typo in inline comment (#5845)
- docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- docs(archive): complete documentation (#5636)
- refactor(archive,cache,datetime,fmt,front-matter): align error messages to the style guide (#5706)
- feat(assert/unstable): add
assertNever
(#5690) - docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- docs(assert): add additional example in assertObjectMatch docs (#5703)
- refactor(async): align the error messages to the style guide (#5758)
- chore(async): add browser-compat declarations (#5730)
- feat(cache/unstable):
TtlCache
(#5662) - docs(cache): tweak
LruCache
docs (#5790) - docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- refactor(archive,cache,datetime,fmt,front-matter): align error messages to the style guide (#5706)
- perf(cli,http,ini,internal,media-types): replace
trim()
comparisons with regexps (#5751) - docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- docs(cli): align additional error messages (#5768)
- test(cli): reduce flakiness of Spinner test (#5821)
- refactor(toml,msgpack,crypto,data-structures): align the error messages to the style guide (#5705)
- refactor(crypto): remove old unused
_fnv
folder (#5716)
- fix(csv): accept readonly cell/header data (#5734) (#5735)
- refactor(csv): align additional error messages (#5796)
- refactor(toml,msgpack,crypto,data-structures): align the error messages to the style guide (#5705)
- docs(datetime): add constants to module docs (#5732)
- refactor(archive,cache,datetime,fmt,front-matter): align error messages to the style guide (#5706)
- fix(dotenv): show warning when there is invalid key in
.env
file (#5745)
- feat(encoding/unstable): adds streaming versions for hex, base32, base32hex, base64 and base64url (#4915)
- docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- refactor(encoding): align additional error messages (#5767)
- docs(expect): correct
expect()
docs (#5788) - refactor(expect): align additional error messages (#5811)
- refactor(archive,cache,datetime,fmt,front-matter): align error messages to the style guide (#5706)
- feat(front-matter/unstable): add pass-through
ParseOptions
argument for YAML parser (#5748) - fix(front-matter): remove os specific newline (#5752)
- fix(front-matter): allow whitespaces after the header (#5685)
- refactor(archive,cache,datetime,fmt,front-matter): align error messages to the style guide (#5706)
- test(front-matter): remove duplicate tests (#5808)
- refactor(fs): align additional error messages (#5802)
- docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- fix(http/unstable): match request method (#5772)
- perf(cli,http,ini,internal,media-types): replace
trim()
comparisons with regexps (#5751) - docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- refactor(http): align additional error messages (#5791)
- perf(cli,http,ini,internal,media-types): replace
trim()
comparisons with regexps (#5751)
- perf(cli,http,ini,internal,media-types): replace
trim()
comparisons with regexps (#5751) - refactor(internal): align additional error messages (#5766)
- refactor(io): create a style guide for error messages, align error messages to the style guide (#5671)
- refactor(jsonc): align additional error messages (#5799)
- refactor(log): align additional error messages (#5801)
- refactor(log): make
BaseHandler
abstract (#5737) - refactor(log): replace
protected
properties withSymbol
s (#5724)
- perf(cli,http,ini,internal,media-types): replace
trim()
comparisons with regexps (#5751) - refactor(media-types): align additional error messages (#5800)
- refactor(toml,msgpack,crypto,data-structures): align the error messages to the style guide (#5705)
- docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- feat(path/unstable): support
URL
inextname()
(#5818) - feat(path/unstable): support
URL
input indirname()
(#5747) - refactor(path,streams): align additional error messages (#5718)
- refactor(semver): align additional error messages (#5785)
- refactor(semver): unify param names (#5700)
- docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- refactor(path,streams): align additional error messages (#5718)
- fix(testing): fix
IsExact
edge cases (#5676) - refactor(testing): align additional error messages (#5810)
- docs(archive,assert,cache,cli,encoding,html,http,net,streams,text): remove unstable Markdown alert (#5672)
- docs(text): fix
slugify()
summary (#5722) - test(text): move case tests to separate files (#5807)
- refactor(toml,msgpack,crypto,data-structures): align the error messages to the style guide (#5705)
- refactor(uuid): align additional error messages (#5803)
- test(uuid): assert error message of
version()
(#5819)
- refactor(webgpu): align additional error messages (#5754)
- refactor(yaml): use
isObject()
(#5822) - refactor(yaml): cleanup
stringifyFlowMapping()
(#5743) - refactor(yaml): cleanup
stringifyBlockSequence()
(#5742) - refactor(yaml): cleanup
detectType()
(#5759) - refactor(yaml): inline
readPlainScalar()
(#5813) - refactor(yaml): move
getDuplicateReferences()
intostringify()
(#5804) - refactor(yaml): inline
writeFoldedLines()
(#5812) - refactor(yaml): remove
Mark
class (#5805) - refactor(yaml): inline
testDocumentSeparator()
(#5793) - refactor(yaml): remove
any
types (#5782) - refactor(yaml): remove
schema
property fromDumperState
(#5798) - refactor(yaml): remove type mod file (#5795)
- refactor(yaml): inline
skipSeparationSpace()
(#5792) - refactor(yaml): inline
readLineBreak()
(#5783) - refactor(yaml): inline
storeMappingPair()
(#5779) - refactor(yaml): remove
storeMappingPair()
resultnull
type (#5781) - refactor(yaml): inline
mergeMappings()
(#5777) - refactor(yaml): use
Set
ininspectNode()
(#5778) - refactor(yaml): inline
readBlockSequence()
(#5776) - refactor(yaml): inline
captureSegment()
(#5775) - refactor(yaml): inline
tagDirectiveHandler()
(#5771) - refactor(yaml): cleanup
stringifyFlowSequence()
(#5744) - refactor(yaml): change
styleMap
type toMap
(#5760) - refactor(yaml): inline
yamlDirectiveHandler()
(#5763) - refactor(yaml): remove
ResultType
(#5765) - refactor(yaml): remove
ArrayObject
(#5761) - refactor(yaml): add
BOM
constant (#5764) - refactor(yaml): move options to options object (#5740)
- refactor(yaml): replace
chooseScalarType()
callback withimplicitTypes
argument (#5750) - refactor(yaml): remove variable underscore (#5741)
- refactor(yaml): rename
DumperState
methods (#5738) - refactor(yaml): remove
dump
property (#5683) - refactor(yaml): remove
tag
property (#5689) - refactor(yaml): cleanup
Schema
(#5715) - refactor(yaml): use
Map
s forTypeMap
(#5694) - refactor(yaml): add
stringify()
method toDumperState
(#5707) - refactor(yaml): boolean constants (#5699)
- refactor(yaml): use
Set
foroverridableKeys
(#5697) - refactor(yaml): use
Map
fortagMap
andanchorMap
(#5696) - refactor(yaml): redefine
include
as optionalSchema
(#5693) - refactor(yaml): remove
schema
property (#5692) - refactor(yaml): make
version
property required (#5691) - test(yaml): add
undefined
array entry test withskipInvalid
option (#5814) - test(yaml): add
condenseFlow()
test (#5780) - test(yaml): add test for deprecated boolean syntax (#5713)
- test(yaml): add edge case test for
stringify
(#5704)
- feat(cache/unstable): add
memoize()
andLruCache
(#4725) - fix(cache/unstable): fix flaky
memoize()
test withFakeTime
(#5664) - chore(cache): add
@experimental
JSDoc tag to public symbols (#5666)
- BREAKING(datetime): replace
utc
withtimeZone
option (#5647) - fix(datetime): handle am / pm variants (#5406)
- refactor(datetime): cleanup
DateTimeFormatter
andparse()
function (#5649)
- feat(encoding/unstable):
decodeBase32Hex()
andencodeBase32Hex()
(#4931) - test(encoding): cleanup base32 tests (#5665)
- refactor(front-matter): remove
Extractor
type (#5659)
- refactor(http): use
methods
module infile-server
module (#5668)
- docs(io): document
std/io
(#5656) - refactor(io): cleanup
BufferFullError
andPartialReadError
logic (#5657)
- feat(streams/unstable):
toLines()
(#5121)
- feat(text/unstable): add
slugify()
function (#5646)
- perf(uuid): make
uuidToBytes()
up to 2.5x faster (#5670) - perf(uuid): make
bytesToUuid()
up to 100x faster (#5655)
- refactor(yaml): remove
result
property (#5684) - refactor(yaml): move exports to import file (#5651)
- fix(http/unstable): make
info
parameter optional (#5652)
- BREAKING(archive): remove
TarEntry.#header
(#5638) - fix(archive): make
data
property private inTar
(#5645) - fix(archive): make
block
andreader
properties inUntar
private (#5637) - docs(archive): mark public APIs as unstable/experimental (#5639)
- fix(csv,streams): use string arrays in
ReadableStream.from()
in docs and tests (#5635)
- refactor(datetime): remove
Tokenizer
class (#5622)
- feat(http/unstable):
route
module (#5644) - feat(http/unstable):
headers
module (#4317) - feat(http/unstable):
methods
module (#4320) - fix(http): handle wrong request method correctly (#5643)
- refactor(http): use
headers
module infile-server
module (#5642)
- feat(streams/unstable):
FixedChunkStream
(#4995) - fix(csv,streams): use string arrays in
ReadableStream.from()
in docs and tests (#5635)
- fix(async): abortable should not change original outputs (#5609)
- refactor(cli): minor cleanups (#5628)
- refactor(cli):
isNumber()
(#5607)
- chore(csv): release
[email protected]
(#5219)
- docs(semver): remove diagram line overlaps (#5624)
- chore(url): release
[email protected]
(#5631) - deprecation(url): deprecate
@std/url
(#5530) - refactor: import from
@std/assert
(#5199)
- refactor(yaml): move functions to class methods (#5625)
- feat(assert/unstable): add
options
parameter toAssertionError
constructor (#5561) - chore(assert): mark
options
argument ofAssertionError
constructor unstable (#5573)
- fix(async):
abortableAsyncIterable()
should call.return()
on the generator once aborted (#5560) - test(async): improve test speed of
async/pool_test.ts
(#5611) - test(async): fix
abortable.AsyncIterable() calls return before throwing
test (#5596)
- refactor(cli): use non-null assertion in
parseArgs()
logic (#5618) - refactor(cli): simplify
argv
andnotFlags
push (#5608) - refactor(cli): remove
broken
variable in favour of loop label (#5602) - refactor(cli): use
for of
instead offor in
loop (#5598) - refactor(cli): make regexps constants (#5595)
- chore(cli): simplify
parseArgs()
logic (#5601) - chore(cli): simplify
setNested()
andhasNested()
(#5599)
- feat(csv): support
fieldsPerRecord
inCsvParseStream
(#5600) - fix(csv): remove
undefined
from possible value type of parse result (#5617) - fix(csv): show 1-based line and column numbers in error messages (#5604)
- docs(csv): more examples for
stringify
andCsvStringifyStream
(#5606) - docs(csv): more examples for
parse
andCsvParseStream
(#5605) - docs(csv): clarify
CsvParseStream
description (#5613) - docs(csv): clarify
parse
document (#5597) - docs(csv): correct thrown error type in
fieldsPerRecord
field description (#5594)
- chore(datetime): remove console log (#5610)
- BREAKING(fmt): rename
PrettyDurationOptions
toFormatOptions
(#5591) - docs(fmt,fs,text,yaml): fix Markdown alerts (#5568)
- chore(fmt): release
[email protected]
(#5454)
- refactor(front-matter): replace regexp factory with regexp literals (#5370)
- docs(fmt,fs,text,yaml): fix Markdown alerts (#5568)
- docs(fs): fix incorrect examples for walk (#5559)
- feat(html/unstable): add
isValidCustomElementName()
(#5456)
- BREAKING(http): remove
ETagSource
(#5577) - fix(http): better
eTag
return type forstring
andUint8Array
inputs (#5571) - fix(http): update localhost strings in tests (#5563)
- chore(http): release
[email protected]
(#5217)
- BREAKING(ini): reduce options for
stringify
, makeFormattingOptions
type private (#5572) - feat(ini): add type param for value type (#5588)
- fix(ini): correctly handle quoted values in
parse()
(#5592) - docs(ini): cleanup module documentation (#5566)
- refactor(ini): cleanup dead code (#5576)
- test(ini): copy tests from
ini/_ini_map_test.ts
(#5593)
- refactor(io): use
writeAll()
withincopy()
(#5580)
- chore(net): release [email protected] (#5457)
- BREAKING(semver): remove the handling of non-standard SemVers in format function (#5587)
- BREAKING(semver): do not accept undefined input in
tryParse
(#5584) - fix(semver): do not throw in
canParse
(#5583) - fix(semver): throw on invalid input in
parseRange()
(#5567) - fix(semver): correctly remove spaces between operators and versions in
parseRange()
(#5564) - docs(semver): fix
Comparator
example (#5585) - docs(semver): clarify
compare
docs (#5586) - refactor(semver): throw
TypeError
if release is invalid inincrement()
(#5565) - chore(semver): release
[email protected]
(#5220)
- BREAKING(testing): replace
TimeError
exception in favor of built-in error classes in some cases (#5550) - fix(testing): correct
stub()
error message (#5575) - docs(testing): mention default serializer (#5590)
- refactor(testing): improve error messages in
mock
module (part 2) (#5569) - chore(testing): release
[email protected]
(#5218)
- docs(fmt,fs,text,yaml): fix Markdown alerts (#5568)
- deprecation(url): deprecate
@std/url
(#5530)
- docs(fmt,fs,text,yaml): fix Markdown alerts (#5568)
- fix(assert): fix
assertObjectMatch()
prints arrays as objects (#5503) - fix(assert):
assertObjectMatch
doesn't print whole object (#5498) - chore(assert): remove redundant constructor example (#5506)
- chore(async): remove redundant constructor example (#5507)
- test(cli): stop spinner without error (#5551)
- chore(cli): remove redundant constructor example (#5508)
- fix(crypto): improve handling of
length
option (#5505)
- chore(csv): remove redundant constructor examples (#5509)
- chore(data-structures): remove redundant constructor examples (#5510)
- docs(expect): add examples of matcher usages (#5553)
- docs(expect): link to matcher docs (#5502)
- docs(expect): minor doc tweaks (#5501)
- chore(front-matter): release
[email protected]
(#5376)
- BREAKING(fs): throw
Deno.errors.NotSupported
instead ofSubdirectoryMoveError
inmove[Sync]()
(#5532) - BREAKING(fs): throw
Deno.errors.NotFound
instead ofWalkError
inwalk[Sync]()
(#5477) - docs(fs): make
preserveTimestamps
note more prominent (#5543) - chore(fs): release
[email protected]
(#5214) - chore(fs): remove redundant constructor examples (#5511)
- fix(http): only show LAN address when
--allow-sys
is provided (#5547) - chore(http): remove redundant constructor example (#5512)
- chore(json): remove redundant constructor examples (#5513)
- chore(json): release
[email protected]
(#5215)
- chore(jsonc): tweak
JsonValue
export (#5546) - chore(jsonc): release
[email protected]
(#5216)
- docs(path): cleanup
@std/path/posix
and@std/path/windows
module documentation (#5529) - docs(path): add examples to
@std/path/posix
examples (#5371)
- fix(streams): strictly define
toJson()
andtoText()
input (#5517) - chore(streams): release
[email protected]
(#5518) - chore(streams): remove redundant constructor examples (#5514)
- fix(testing): FakeTime fakes
AbortSignal.timeout
(#5500) - refactor(testing): improve error messages in
mock
module (#5549) - refactor(testing): improve
FakeTime
error messaging (#5533) - chore(testing): remove redundant constructor examples (#5515)
- feat(text/unstable): add toConstantCase() (#5110)
- fix(text): unicode support and word splitting according to case (#5447)
- perf(text): make
levenshteinDistance()
up to 147x faster (#5527) - test(text): add more testcases for
levenshteinDistance
(#5528)
- docs(yaml): correct
core
schema note (#5552) - docs(yaml): document compatibility policy (#5542)
- docs(yaml): document different schemas (#5531)
- refactor(yaml): cleanup dead sexagesimal regexp code in float type (#5545)
- refactor(yaml): remove deprecated sexagesimal functionality for integer types (#5539)
- refactor(yaml): cleanup dead code in float
Type
implementation (#5526) - test(yaml): test
arrayIndent = false
option (#5521) - test(yaml): improve test coverage for sequence type (#5536)
- test(yaml): improve test coverage for mapping type (#5535)
- test(yaml): improve test coverage for string type (#5534)
- test(yaml): test sortKeys option behavior (#5523)
- test(yaml): check
lineWidth
option behavior (#5524) - test(yaml): improve coverage for nil
Type
(#5525) - test(yaml): check the use of reserved characters (#5519)
- test(yaml): check stringify behavior when
skipInvalid
specified (#5522) - test(yaml): test
indent
option of stringify (#5520) - test(yaml): add check of merge of list of mapping (#5496)
- chore(yaml): release
[email protected]
(#5264)
- chore(async): release
[email protected]
(#5211)
- docs(cli): fix options arguments display (#5486)
- docs(cli): improve unstable API notices (#5482)
- docs(cli): documentation tweaks (#5458)
- chore(cli): release
[email protected]
(#5212)
- refactor(collections): use
Set.prototype.intersection()
method inintersect()
(#5417)
- BREAKING(csv): remove
ParseError
(#5405)
- BREAKING(dotenv): remove
defaultPath
option fromload[Sync]()
(#5451) - BREAKING(dotenv): remove
examplePath
option fromload[Sync]()
(#5450)
- fix(expect): improve
expect
type to make it work better withexpect.extend
(#5309)
- docs(fs): fix options argument display (#5491)
- docs(fs): fix options argument display (#5487)
- docs(http): fix options argument display (#5488)
- docs(http): fix options argument display (#5489)
- docs(http): improve unstable API notices (#5483)
- docs(json): fix options argument display (#5490)
- docs(jsonc): remove docs for removed
options
parameter (#5438)
- fix(media-types): return
video/mp4
for.mp4
extension (#5475)
- docs(net): tweak
getNetworkAddress()
return doc (#5473)
- fix(path): support use in dnt (#5478)
- BREAKING(semver): replace
prerelease
andbuildmetadata
arguments with options object (#5471)
- docs(streams): address documentation issues (#5480)
- chore(streams): release
[email protected]
(#5213)
- BREAKING(text): align to single-export file pattern (#5428)
- feat(text): add ability for user to control word comparison function (#5448)
- docs(text): state complexity of
levenshteinDistance()
(#5472) - chore(text): release
[email protected]
(#5209)
- fix(ulid): fix decode-time export path (#5432)
- chore(ulid): release
[email protected]
(#5206)
- BREAKING(yaml): replace
YamlError
withTypeError
instringify()
(#5452) - BREAKING(yaml): replace
YamlError
withSyntaxError
inparse()
(#5446) - docs(yaml): list
extended
schema (#5444) - refactor(yaml): change
object
type fromany
tounknown
inwriteNode
(#5404) - refactor(yaml): remove
instanceOf
field ofType
(#5462) - refactor(yaml): add
KindType
generic type argument toType
(#5461) - refactor(yaml): improve
Type.predicate
behavior (#5460) - refactor(yaml): remove
Type.loadKind
property (#5459) - refactor(yaml): remove dead code in
Schema
constructor (#5445) - refactor(yaml): make
Type.kind
required (#5442)
- fix(async): improve debounce node.js compatibility (#5419)
- docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933)
- refactor(collections): inline
randomInteger
utility function (#5415)
- BREAKING(csv): throw
TypeError
instringify()
instead ofStringifyError
(#5347) - docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933) - refactor(csv): rename
graphemeLength
tocodePointLength
(#5421)
- docs(data-structures): get all
@link
nodes working (#5422) - chore(data-structures): release
[email protected]
(#5205)
- docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933)
- BREAKING(fmt): remove
stripColor
(#5374) - docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933) - docs(fmt): improve documentation (#5373)
- chore(fmt): release
[email protected]
(#5372)
- BREAKING(front-matter): remove
unknown
fromFormat
union type (#5367) - docs(front-matter): fix description of
Extract
(#5383) - refactor(front-matter): remove
createExtractor()
(#5378) - refactor(front-matter): replace regexp objects with maps (#5379)
- docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933)
- chore(html): release
[email protected]
(#4988)
- BREAKING(http): rename
Entity
toETagSource
andcalculate()
toeTag()
(#5144) - docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933)
- docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933)
- test(log): cleaunp
TextDecoder
use (#5407)
- chore(msgpack): release
[email protected]
(#5210)
- docs(net): update docs for
getAvailablePort()
(#5366) - docs(net): make
getNetworkAddress()
unstable status more prominent (#5368) - chore(net): release
[email protected]
(#5349)
- chore(path): release
[email protected]
(#5203)
- docs(regexp): import
escape
from most specific place in examples (#5427) - chore(regexp): release
[email protected]
(#5207)
- docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933)
- fix(streams): toText() incorrect with multibyte strings in different chunks (#5381)
- fix(testing): throw error when async func is passed to describe (#5385)
- docs(cli,csv,datetime,fmt,fs,http,ini,semver,testing): assert optional
properties on types/interfaces have
@default
tag (#4933) - test(testing): fix flakiness of snapshot test (#5414)
- docs(text): refine documents in text module (#5425)
- BREAKING(toml): throw
SyntaxError
inparse()
instead ofTOMLParseError
(#5346) - refactor(toml): improve early returns (#5338)
- chore(toml): release
[email protected]
(#5204)
- feat(ulid): add single-export endpoints (#5426)
- refactor(yaml): fix
onWarning
arg type (#5395) - refactor(yaml): rearrange constants and functions (#5411)
- refactor(yaml): remove passing
this.dump
as method param (#5413) - refactor(yaml): add writeNode options (#5409)
- refactor(yaml): remove obsolete export from
trimTrailingNewline()
(#5412) - refactor(yaml): remove nested functions (#5389)
- refactor(yaml): make
Type
generic (#5394) - refactor(yaml): replace
indexOf()
tests withincludes()
(#5390) - refactor(yaml): correct
testAmbiguousType
type (#5399) - refactor(yaml): correct
duplicate
andusedDuplicates
types (#5398) - refactor(yaml): correct
sortKeys
type (#5397) - refactor(yaml): replace
keyNode
any type (#5396) - refactor(yaml): replace
implicit
any[]
type withType[]
(#5393) - refactor(yaml): replace
any
withunknown
inResultType
constituents (#5392) - refactor(yaml): extract and rename regexp constant (#5391)
- refactor(yaml): move state functions inside class (#5388)
- refactor(yaml): simplify
foldLine()
(#5386) - refactor(yaml): simplify
indentString()
(#5335) - refactor(yaml): camelcase
iskey
(#5365) - refactor(yaml): remove
Any
type (#5306)
- docs(assert): improve
assertObjectMatch
docs (#5296) - docs(assert): improve
assertNotStrictEquals
example (#5295) - docs(assert): update
assertMatch
example (#5294) - test(assert): add "
assert()
throws if expr is falsy" test (#5267) - chore(assert): release
[email protected]
(#4989)
- fix(bytes,cli,collections,expect): add missing non-null assertions (#5280)
- fix(bytes,cli,collections,expect): add missing non-null assertions (#5280)
- fix(bytes,cli,collections,expect): add missing non-null assertions (#5280)
- test(crypto): test
timingSafeEqual()
in handlingDataView
s (#5268)
- refactor(csv): rename arguments, variables and loop (#5297)
- refactor(csv): remove
runeCount()
function (#5298) - refactor(csv): throw errors immediately (#5299)
- test(csv): add grapheme length test (#5304)
- perf(encoding): fix loop times in
encodeHex()
(#5344)
- fix(expect): make
.not
aware of whether is it is in async context (#5308) - fix(bytes,cli,collections,expect): add missing non-null assertions (#5280)
- fix(fmt): fix the case when mantissa exceeds 10 by rounding and exponent is negative (#5279)
- test(fmt): add test cases for
printf()
(#5278)
- BREAKING(front-matter): make
Extractor
helper type private (#5334) - BREAKING(front-matter): remove
createExtractor()
(#5266) - fix(front-matter): improve
extract
types (#5325) - chore(front-matter): release
[email protected]
(#5263)
- fix(fs): accept
exts
without leading period inwalk[Sync]()
(#5345)
- fix(http): allow deleting cookie with
secure
,httpOnly
andpartitioned
attributes (#5354)
- BREAKING(ini): make
IniMap
private (#5351) - docs(ini): link options interfaces to functions that use them (#5359)
- chore(ini): release
[email protected]
(#5357)
- chore(net): mark
getNetworkAddress()
unstable (#5348)
- BREAKING(path): remove
FormatInputPathObject
(#5321) - BREAKING(path): remove
GlobToRegExpOptions
(#5320)
- fix(testing): cause type error for async function as describe body (#5355)
- fix(testing): escape CR in snapshot files (#5352)
- refactor(toml): remove Utils object (#5342)
- refactor(toml): remove
Patterns
object (#5343) - refactor(toml): rename functions to camel case (#5339)
- BREAKING(yaml): rename
StringifyOptions.noRefs
toStringifyOptions.useAnchors
(#5288) - BREAKING(yaml): remove style aliases of
!!int
type (#5307) - BREAKING(yaml): rename
StringifyOptions.noCompatMode
toStringifyOptions.compatMode
(#5287) - BREAKING(yaml): rename
ParseOptions.noArrayIndent
toParseOptions.arrayIndent
(#5286) - BREAKING(yaml): rename
ParseOptions.json
toParseOptions.allowDuplicateKeys
(#5282) - fix(yaml): fix
StringifyOptions.noRefs
(#5292) - fix(yaml): fix
!!int
style variation handling instringfiy
(#5256) - docs(yaml): improve documentation (#5324)
- refactor(yaml): cleanup dead code in
Mark
class (#5327) - refactor(yaml): simplify
YamlError
(#5328) - refactor(yaml): simplify and rename
dropEndingNewline()
(#5336) - refactor(yaml): move
getObjectTypeString()
(#5332) - refactor(yaml): remove obsolete static
Schema.SCHEMA_DEFAULT
property (#5326) - refactor(yaml): cleanup
detectType()
(#5313) - refactor(yaml): cleanup
mergeMappings()
(#5314) - refactor(yaml): rename util functions (#5310)
- refactor(yaml): replace
usedDuplicates()
array withSet
(#5312) - refactor(yaml): cleanup
inspectNode()
(#5311) - refactor(yaml): simplify
encodeHex()
(#5305) - refactor(yaml): add
readIndent()
method (#5302) - refactor(yaml): remove repeat helper function (#5303)
- refactor(yaml): rename
throwWarning()
todispatchWarning()
(#5301) - refactor(yaml): move char check functions (#5300)
- refactor(yaml): remove first argument from
ParseOptions.onWarning
(#5284) - refactor(yaml): add
peek()
andnext()
toLoaderState
(#5276) - refactor(yaml): replace
Type
class with interface (#5262) - refactor(yaml): simplify isWhiteSpaceOrEOL (#5271)
- refactor(yaml): simplify
sanitizeInput()
(#5274) - refactor(yaml): inline error functions as methods (#5273)
- refactor(yaml): remove
State
class (#5275) - refactor(yaml): move loader and dumper files (#5270)
- refactor(yaml): make
readDocument()
andreadDocuments()
generator functions (#5255) - refactor(yaml): merge
yaml/_dumper/
files (#5260) - refactor(yaml): merge
yaml/_loader/
files (#5259) - refactor(yaml): add default options object (#5261)
- test(yaml): test parsing of single quoted scalars (#5356)
- test(yaml): add test cases of stringify (#5350)
- test(yaml): test block scalar output of stringify (#5341)
- test(yaml): add test for
ParseOptions.json
option (#5283) - test(yaml): add test of parsing !!int types (#5253)
- test(archive): fix typo in
tar_test.ts
(#5196)
- BREAKING(assert): remove
assert
from module names (#5176) - refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199) - chore(crypto): release
[email protected]
(#4990)
- BREAKING(csv): remove
csv
from module names (#5172) - BREAKING(csv): make
ReadOptions
private (#5169) - docs(csv): fix description of
ParseResult
(#5170) - docs(csv): add module docs (#5157)
- refactor(csv): minor cleanup (#5166)
- refactor: import from
@std/assert
(#5199) - refactor(csv): minor cleanups (#5158)
- refactor(csv): remove dead code and improve
CsvParseStream
test (#5153) - refactor(csv): remove dead code and improve tests (#5151)
- test(csv): improve
CsvStringifyStream
test (#5154) - test(csv): improve stringify testing (#5150)
- chore(csv): release
[email protected]
(#5159)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199) - chore(encoding): release
[email protected]
(#4991)
- BREAKING(expect): remove special handling of Immutable.js objects (#5228)
- fix(expect): fix validation of nth param in
toHaveBeenNthCalledWith
matcher (#5227) - refactor(expect,testing): update
@std/assert
imports (#5242) - refactor(expect): remove
expect.addSnapshotSerializer(s)
(#5231) - refactor: import from
@std/assert
(#5199) - test(expect): test edge cases of matchers (#5226)
- test(expect): add test of
iterableEquality
(#5222) - test(expect): improve
expect
test cases (#5221) - chore(expect): release
[email protected]
(#5235)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- BREAKING(json): remove
json
from module names (#5173) - refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- fix(media-types): update
db.ts
(#5193) - refactor: import from
@std/assert
(#5199) - chore(media-types): release
[email protected]
(#5197)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- BREAKING(semver): remove
SEMVER_SPEC_VERSION
(#5180) - BREAKING(semver): make invalid SemVer constants private (#5168)
- BREAKING(semver): remove deprecated
rangeMax()
,rangeMin()
andtestRange()
APIs (#5160) - docs(semver): minor documentation cleanups (#5178)
- refactor: import from
@std/assert
(#5199) - test(semver): add
tryParse()
tests (#5161) - chore(semver): release
[email protected]
(#5181)
- refactor: import from
@std/assert
(#5199)
- fix(testing): throw error eagerly when insufficient permissions are granted to write to snapshot file in update mode (#5201)
- refactor(expect,testing): update
@std/assert
imports (#5242) - refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- refactor: import from
@std/assert
(#5199)
- BREAKING(yaml): remove
ParseOptions.legacy
option (#5229) - BREAKING(yaml): remove
filename
option fromparse()
andstringify()
(#5223) - BREAKING(yaml): remove
listener
option fromparse()
andstringify()
(#5224) - BREAKING(yaml): make
Schema
andType
private and stop supporting user-defined schemas (#5175) - BREAKING(yaml): rename
DumpOptions
toStringifyOptions
(#5171) - BREAKING(yaml): remove
iterator
argument fromparseAll()
(#5148) - fix(yaml): fix
!!pairs
parsing (#5192) - fix(yaml): fix merge (<<) type handling in
parse()
(#5185) - refactor(yaml): replace chars and comments with constants (#5250)
- refactor(yaml): add
sanitizeInput()
function (#5248) - refactor(yaml): remove inferred
Schema
type (#5252) - refactor(yaml): add default options object (#5249)
- refactor(yaml): share char constants (#5246)
- refactor(yaml): remove
DirectiveHandler
type (#5247) - refactor(yaml): minor cleanups (#5239)
- refactor(yaml): simplify schema (#5236)
- refactor(yaml): consolidate
yaml/schema/*.ts
code intoyaml/_schema.ts
(#5225) - refactor: import from
@std/assert
(#5199) - refactor(yaml): remove unused
func
type (#5191) - refactor(yaml): remove dead code (#5189)
- refactor(yaml): simplify map initializations (#5183)
- refactor(yaml): rename
YAMLError
toYamlError
(#5149) - test(yaml): test handling of boolean values (#5251)
- test(yaml): check handling of binary type (#5245)
- test(yaml): add
parse()
test for duplicate keys (#5240) - test(yaml): add test cases of handling ? mark in YAML (#5234)
- test(yaml): test
!!timestamp
type handling (#5237) - test(yaml): test
stringify()
case when string encoded into hex sequences (#5230) - test(yaml): test anchor and alias handling of
parse()
(#5190) - test(yaml): add misc
parse()
test cases (#5188) - test(yaml): add test for block scalars (#5187)
- test(yaml): improve
parse()
testing (#5182) - chore(yaml): release
[email protected]
(#5244) - chore(yaml): remove
example
folder (#5238)
- test(cli): improve
Spinner
test (#5108)
- perf(collections): use
for
loop instead offorEach()
inunzip()
(#5104)
- docs(fs): add not supported docs for
CopyOptions.preserveTimestamps
(#5143)
- BREAKING(http): rename
verifyCookie()
toverifySignedCookie()
(#5138) - BREAKING(http): improve thrown errors in
cookie
module (#5129) - BREAKING(http): change the default port of file-server to the same default of
Deno.serve()
(#4888) - BREAKING(http): move
unstable-signed-cookie
tosigned-cookie
(#5101) - BREAKING(http): remove deprecated
server
module (#5100) - fix(http): handle the case fileInfo.mode=0 correctly (#5132)
- docs(http): remove outdated mention of
CookieMap
(#5109) - refactor(http): change error thrown in
ServerSentEventStream
toSyntaxError
(#5135) - refactor(http): minor cleanup (#5126)
- refactor(http): remove dead code and improve
UserAgent
testing (#5120) - chore(http): release
[email protected]
(#5131)
- BREAKING(jsonc): remove
allowTrailingComma
option (#5119) - refactor(jsonc): minor cleanups (#5114)
- chore(jsonc): release
[email protected]
(#5115)
- BREAKING(media-types): rename
extensionsByType
toallExtensions
(#5106) - docs(media-types): remove outdated historical note (#5105)
- chore(media-types): release
[email protected]
(#4780)
- BREAKING(testing): remove deprecated
asserts
module (#5099) - BREAKING(testing): disable multiple
FakeTime
creations (#5130) - fix(testing): correctly throw in constructor with
spy()
(#5139) - fix(testing): function call of
Date
constructor is not correctly faked (#5122) - docs(testing): add module docs (#5147)
- refactor(testing): remove
@std/fmt/colors
dependency fromsnapshot
module (#5145) - refactor(testing): remove dead code and improve test of
testing/mock.ts
(#5137) - test(testing): improve bdd testing (#5136)
- test(testing): improve
FakeTime
testing (#5123) - chore(testing): release
[email protected]
(#5142)
- feat(yaml): support schema name for 'schema' option (#5118)
- docs(yaml): improve
yaml
document (#5127)
- refactor(archive,expect,io,log,toml,yaml): remove
private
andpublic
access modifiers (#5077)
- BREAKING(async): simplify
deadline()
logic, removeDeadlineError
and improve errors (#5058) - BREAKING(async): make
abortablePromise()
andabortableAsyncIterable()
private (#5056)
- chore(cli): release
[email protected]
(#5068) - chore(cli): make spinner unstable/experimental (#5067)
- chore(collections): release
[email protected]
(#4773)
- docs(dotenv): improve
dotenv
docs (#5095)
- refactor(archive,expect,io,log,toml,yaml): remove
private
andpublic
access modifiers (#5077)
- refactor(fs): improve
expandGlob()
implementation and testing (#5089) - refactor(fs): reduce the repetition in
exists.ts
(#5088) - refactor(fs): reduce the repetition in ensure_dir.ts (#5085)
- refactor(fs): resolve directories when checking whether they are the same in
isSubdir()
(#5076) - test(fs): improve
copy()
testing (#5084) - test(fs): improve
ensureSymlink()
test (#5087) - test(fs): check
ensureDir()
is not racy (#5086) - chore(fs): release
[email protected]
(#5091)
- refactor(archive,expect,io,log,toml,yaml): remove
private
andpublic
access modifiers (#5077)
- BREAKING(json): rename /common to /types (#5103)
- BREAKING(json): remove
writableStrategy
andreadableStrategy
options (#5097) - docs(json): lint
@std/json
docs (#4798) - test(json): improve json testing (#5075)
- chore(json): release
[email protected]
(#5102)
- test(jsonc): remove dead code and improve testing (#5093)
- refactor(archive,expect,io,log,toml,yaml): remove
private
andpublic
access modifiers (#5077)
- BREAKING(streams): remove
iterateReader
,readableStreamFromReader
,readerFromIterable
,readerFromStreamReader
,writableStreamFromWriter
, andwriterFromStreamWriter
(#5060) - fix(streams): prevent
earlyZipReadableStreams()
from possibly using excessive memory (#5082) - test(streams): improve test coverage (#5078)
- test(streams): improve
DelimiterStream
test cases (#5070) - test(streams): improve
Buffer
test (#5061) - chore(streams): release
[email protected]
(#5074)
- refactor(testing): remove
FakeTime.start
setter (#5050)
- refactor(archive,expect,io,log,toml,yaml): remove
private
andpublic
access modifiers (#5077)
- refactor(archive,expect,io,log,toml,yaml): remove
private
andpublic
access modifiers (#5077)
- BREAKING(async): stop exporting ERROR_WHILE_MAPPING_MESSAGE (#5041)
- docs(async): improve module docs (#5039)
- docs(async): avoid memory leak in example (#5040)
- chore(async): release
[email protected]
(#5035) - chore(async): mark
Tuple
andTupleOf
as@internal
(#5042)
- refactor(cli): minor cleanups (#5052)
- test(cli): improve spinner test coverage (#5047)
- test(cli): improve test coverage (#5046)
- feat(http): support partitioned cookies (#5044)
- chore(msgpack): release
[email protected]
(#5030)
- test(path): improve test coverage (#5038)
- chore(streams): remove unused test util (#5048)
- docs(testing): improve the docs of
@std/testing
(#5033) - refactor(testing): remove use of
public
keyword (#5051)
- refactor(ulid): remove
len
argument fromencodeTime()
andencodeRandom()
(#5054)
- fix(assert): fix tolerance calculation when comparing negative values (#5019)
- chore(data-structures): release
[email protected]
(#4987)
- docs(fs): improve documentation (#4788)
- docs(ini): improve ini docs (#5020)
- docs(msgpack): complete documentation (#5029)
- test(msgpack): add test cases for
encode()
(#5028) - test(msgpack): add
decode()
test cases (#5027)
- docs(net): complete documentation (#4982)
- docs(regexp): complete documentation (#5023)
- chore(regexp): release
[email protected]
(#5024)
- refactor(text): minor cleanups and improvements (#5025)
- chore(text): release
[email protected]
(#5026)
- refactor(ulid): improve error types and messages (#5022)
- chore(ulid): release
[email protected]
(#4997)
- chore(url): release
[email protected]
(#4981)
- refactor(archive): cleanup use of
@std/assert
(#4975)
- BREAKING(assert): make
unreachable()
consistent with@std/assert
(#4943) - BREAKING(assert):
assertAlmostEquals()
sets useful tolerance automatically (#4460) - docs(assert): remove outdated API docs (#4937)
- refactor(assert): minor cleanups (#4941)
- chore(assert): release
[email protected]
(#4934)
- refactor(async): cleanup use of
@std/assert
(#4950)
- chore(bytes): release
[email protected]
(#4746)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(cli): cleanup use of
@std/assert
(#4966)
- refactor(csv): cleanup use of
@std/assert
(#4976)
- refactor(data-structures): remove use of
public
keyword (#4983)
- docs(datetime): trim module documentation (#4971)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(fs): cleanup use of
@std/assert
(#4948)
- chore(html): release
[email protected]
(#4962)
- refactor(http): cleanup use of
@std/assert
(#4974)
- refactor(io): cleanup use of
@std/assert
(#4979)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(jsonc): cleanup use of
@std/assert
(#4968)
- refactor(log): cleanup use of
@std/assert
(#4973)
- BREAKING(path): remove
path.posix
andpath.win32
(#4953) - BREAKING(path): remove separator argument from
common()
(#4947) - BREAKING(path): remove
GlobToRegExpOptions.os
andOSType
export (#4928) - docs(path): fix typo in
normalize
doc (#4959) - docs(path): improve
join
jsdoc (#4958) - docs(path): fix typo (#4956)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(path): clean
isWindows
logic (#4972) - refactor(path): cleanup
join()
implementations (#4946) - test(path): improve
windows.parse()
test (#4952) - test(path): improve
normalizeGlob()
test coverage (#4940) - test(path): improve
normalize()
coverage (#4939) - chore(path): release
[email protected]
(#4951) - chore(path): use
assertPath()
inwindows.join()
(#4960)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(streams): cleanup use of
@std/assert
(#4980)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(text): cleanup use of
@std/assert
(#4977)
- BREAKING(toml): rename
FormatOptions
toStringifyOptions
(#4963) - docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- chore(toml): release
[email protected]
(#4969) - chore(toml): minor cleanup (#4964)
- docs(url): complete documentation (#4965)
- docs(cli,encoding,fmt,jsonc,path,semver,testing,text,toml,url): remove "This module is browser compatible" note (#4945)
- refactor(webgpu): cleanup use of
@std/assert
(#4978)
- BREAKING(assert,testing): remove
formatter
option fromassertEquals()
(#4893) - docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert): improve docs (#4876)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- BREAKING(crypto): remove deprecated APIs (#4919)
- BREAKING(crypto): remove KeyStack (#4916)
- docs(crypto): improve docs (#4884)
- refactor(crypto): cleanup redundant assertion in
timingSafeEqual()
(#4907) - test(crypto): test node.js custom inspection of
KeyStack
(#4887) - chore(crypto): release
[email protected]
(#4912)
- docs(csv): use assertions in example code snippets (#4932)
- docs(csv): improve API docs (#4920)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- BREAKING(encoding): replace
Ascii85Options
withEncodeAscii85Options
andDecodeAscii85Options
(#4861) - BREAKING(encoding): rename
MaxVarInt
toMaxVarint
(#4896) - BREAKING(encoding): rename
MaxUInt64
toMaxUint64
(#4897) - BREAKING(encoding): remove deprecated VarInt APIs (#4864)
- fix(encoding): throw
TypeError
on invalid input (#4901) - chore(encoding): release
[email protected]
(#4858)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(http): added
--allow-sys
to file server example (#4890)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- feat(net):
getNetworkAddress()
(#4677)
- docs(path): improve API docs (#4900)
- test(path): add test cases of
isAbsolute()
,joinGlobs()
, andcommon()
(#4904) - test(path): test
toNamespacedPath()
(#4902)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- BREAKING(assert,testing): remove
formatter
option fromassertEquals()
(#4893) - refactor(testing): do not use assertEquals in snapshot.ts (#4930)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- docs(toml): lint
@std/toml
docs (#4799)
- BREAKING(uuid): remove
V1Options
in favor ofGenerateOptions
(#4925) - BREAKING(uuid): remove
v1.generate()
signature withbuf
andoffset
parameters andnumber[]
return type (#4877) - chore(uuid): release
[email protected]
(#4867)
- docs(assert,cli,data-structures,expect,fmt,front-matter,html,http,jsonc,semver,streams,text,toml,webgpu): add snippet checks in module, function and class docs to doc checker (#4855)
- fix(cli): reduce flicker in spinner render function (#4835)
- docs(cli): make check_docs pass (#4815)
- docs(cli): improve spinner.message document (#4785)
- test(cli): reduce the flakiness of
Spinner
test cases (#4844)
- BREAKING(data-structures): hide private internals (#4827)
- docs(data-structures): enables doc lint of data-structures (#4847)
- docs(encoding): fix typo in
ascii85.ts
(#4854) - docs(encoding): Cleanup and fix doc lints (#4838)
- refactor(encoding): remove unnecessary prefixes from private functions (#4862)
- refactor(encoding): rename
_util.ts
(#4860) - test(encoding): use own
encodeHex()
anddecodeHex()
(#4863)
- docs(expect): document methods and add examples (#4836)
- docs(fmt): improve API docs (#4829)
- docs(front-matter): improve docs for stabilization (#4789)
- docs(html): improve API docs (#4878)
- docs(http): don't run some examples in doc checker (#4840)
- docs(http): improve docs for stabilization (#4813)
- BREAKING(ini): remove internal
Formatting
type (#4818) - fix(ini): remove unused
ParseOptions.assignment
property (#4816) - docs(ini): add missing doc comments (#4819)
- refactor(ini): move StringifyOptions to stringify.ts (#4817)
- fix(msgpack): error on early end of data (#4831)
- docs(msgpack): complete documentation of the package (#4832)
- docs(semver): improve docs (#4846)
- docs(streams): improve docs for stabilization (#4852)
- docs(text): pass docs check (#4837)
- docs(text): add module doc (#4812)
- docs(ulid): finish documentation (#4825)
- deprecation(uuid): deprecate
v1.generate()
signature withbuf
andoffset
parameters (#4880) - deprecation(uuid): rename
V1Options
toGenerateOptions
(#4872) - fix(uuid): validate namespace UUIDs in
v3.generate()
andv5.generate()
(#4874) - docs(uuid): update module docs (#4790)
- test(uuid): add tests for invalid namespace UUID (#4875)
- refactor(yaml): remove dead code (#4849)
- test(yaml): test handling of omap (#4851)
- test(yaml): test float handling (#4850)
- refactor(assert,internal): rename
diffstr()
todiffStr()
(#4758)
- docs(async): improve docs for stabilization (#4803)
- perf(bytes): skip doing extra work in some scenarios (#4767)
- chore(cli): remove outdated todo comment (#4787)
- feat(collections):
[email protected]
(#4697) - docs(collections,internal,media-types): use
@typeParam
tag instead of@template
(#4772) - docs(collections): fix typos and improve example (#4763)
- docs(collections): update module doc (#4765)
- docs(csv,encoding,http,json,media-types,uuid): use
rfc-editor.org
for RFC links (#4777)
- docs(data-structures): improve documentation (#4793)
- docs(csv,encoding,http,json,media-types,uuid): use
rfc-editor.org
for RFC links (#4777)
- fix(expect): updated error message for toContain (#4750)
- docs(csv,encoding,http,json,media-types,uuid): use
rfc-editor.org
for RFC links (#4777)
- docs(collections,internal,media-types): use
@typeParam
tag instead of@template
(#4772) - docs(internal): add module docs (#4757)
- refactor(assert,internal): rename
diffstr()
todiffStr()
(#4758)
- docs(csv,encoding,http,json,media-types,uuid): use
rfc-editor.org
for RFC links (#4777)
- fix(media-types): do not expose vendored json file as public API (#4776)
- docs(collections,internal,media-types): use
@typeParam
tag instead of@template
(#4772) - docs(csv,encoding,http,json,media-types,uuid): use
rfc-editor.org
for RFC links (#4777) - chore(media-types):
[email protected]
(#4744)
- fix(msgpack): encode maps with null prototype (#4764)
- docs(regexp): update module example to get full jsr score (#4796)
- feat(streams):
concatReadableStreams()
(#4747)
- docs(csv,encoding,http,json,media-types,uuid): use
rfc-editor.org
for RFC links (#4777)
- docs(webgpu): improve docs for stabilization (#4811)
- fix(assert): handle
assertStrictEquals(-0, +0)
correctly (#4715) - fix(assert): don't swallow the original error while creating assertion error (#4701)
- docs(assert): document
assertStrictEquals()
equality comparison behavior (#4724) - refactor(assert): vendor code from
fmt/colors.ts
(#4716) - chore(assert): revert "handle
assertStrictEquals(-0, +0)
correctly" (#4718)
- docs(bytes): trim module documentation (#4693)
- docs(bytes,collections): fix doc checker and documentation (#4691)
- chore(bytes): release
[email protected]
(#4745)
- test(cli): reduce flakiness of spinner test (#4738)
- test(cli): reduce flakiness of spinner test (#4719)
- test(cli):
Spinner
tests (#4713)
- feat(collections): add
invert()
andinvertBy()
(#4710) - docs(collections): finalize module documentation (#4696)
- docs(bytes,collections): fix doc checker and documentation (#4691)
- refactor(collections): sort exports in
mod.ts
(#4712)
- test(encoding): improve test coverage (#4742)
- fix(expect): don't swallow the original error while creating assertion error (#4700)
- chore(expect): fix future
no-slow-type
lint errors with expando properties (#4711)
- chore(fmt,fs,path,internal): skip yanked version manually (#4753)
- chore(fmt,fs,path,internal): skip yanked version manually (#4753)
- docs(internal): cleanups and documentation improvements (#4706)
- refactor(internal): cleanup
buildMessage()
(#4705) - refactor(internal): cleanup
diff()
(#4704) - refactor(internal): cleanup and restructure
diffstr()
(#4703) - refactor(internal): cleanup
_internals
(#4702) - refactor(internal): cleanup and restructure (#4698)
- chore(fmt,fs,path,internal): skip yanked version manually (#4753)
- chore(internal): release
[email protected]
(#4741)
- docs(media-types): polish documentation (#4731)
- refactor(media-types): minor cleanups (#4743)
- test(net): improve test coverage (#4709)
- chore(fmt,fs,path,internal): skip yanked version manually (#4753)
- refactor(uuid): factor out common symbols into
common
module (#4749)
- test(webgpu): remove
Deno.resources()
usage (#4708)
- test(assert): improve test coverage (#4679)
- feat(bytes):
@std/[email protected]
(#4651) - docs(bytes): fix return type description for
concat()
(#4668) - docs(bytes): update API doc of lastIndexOfNeedle (#4665)
- fix(cli): spinner support NO_COLOR (#4662)
- fix(collections): correct error class when
chunk()
throws (#4682) - docs(collections): complete documentation (#4664)
- refactor(collections): minor cleanups (#4681)
- feat(log): make
FileHandler
andRotatingFileHandler
buffer size configurable (#4680)
- deprecation(permissions): update removal time for
std/permissions
(#4575) - deprecation(semver): rename
testRange()
tosatisfies()
(#4364) - feat(http): file server prints local network address (#4604)
- fix(bytes):
equals()
works with subarray (#4630) - fix(bytes): improve invalid count error message for
repeat()
(#4603) - fix(csv): do not print empty header line when no columns are given in
stringify()
(#4610) - fix(csv): remove unused
opt
parameter (#4598) - fix(fs/ensure_dir): allow links to directories (#4132)
- fix(path): export private types used in public API (#4645)
- perf(bytes): improve performance of
equals()
(#4635)
- deprecation(expect): rename
addSnapshotSerializers
toaddSnapshotSerializer
(#4582)
- deprecation(semver): deprecate
rangeMax()
andrangeMin()
(#4561) - fix(log): Revert "deprecate(log): deprecate internal utility methods" (#4436) (#4572)
- [unstable] BREAKING(semver): remove comparator.semver field (#4533)
- deprecate(log): deprecate internal utility methods (#4436)
- deprecation(console): copy
std/console
APIs intostd/cli
and deprecatestd/console
(#4547) - deprecation(crypto): rename an export to match style guide, deprecating original and two other obsolete imports (#4525)
- deprecation(encoding): make exported function names consistent with
std/encoding
(#4555) - deprecation(yaml): cleanup schema exports (#4566)
- feat(expect): support
expect.addSnapshotSerialize()
api (#4537) - feat(semver):
greaterThanRange()
andlessThanRange()
(#4534) - feat(testing): add
after
,before
,test
aliases (#4541) - fix(cli): make the output of
promptSecret()
consistent withprompt()
(#4549)
- feat(expect): add
expect.{closeTo, stringContaining, stringMatching}
(#4508) - fix(_tools): update
check_deprecation
path exclusion to recognize Windows directory separators (#4519) - fix(crypto): move FNV hashes from TypeScript to Rust/Wasm and implement iteration functionality (#4515)
- fix(expect/assert): missing constructor equality check (#4512)
- fix(fs):
SubdirectoryMoveError
extendsError
correctly (#4528) - fix(yaml): speciously restrictive type for
stringify()
(#4507) - fix: use hyphens for JSR package exports (#4424)
- fix(tar): leak in
Tar() checks directory entry type
test (#4490)
- Revert "refactor(cli): cleanup
parse_args.ts
(#4189)" (#4485) - add JSR link (#4456)
- chore: fix for jsr publish (#4449)
- [unstable] BREAKING(semver): remove
gtr()
andltr()
(#4450) - [unstable] BREAKING(semver): remove
reverseSort()
(#4422) - [unstable] BREAKING(semver): remove deprecated operators (#4423)
- feat(expect): support
expect.extend()
api (#4412) - fix(expect): fix equality of iterables (#4286)
- fix(fs):
emptyDir()
test after workspace conversion (#4427) - fix(fs):
expandGlob()
test after workspace conversion (#4428) - fix(log): don't discard bytes >4096 in
FileHandler
(#4415) - fix(path): fix common() results that depend on the order and/or number of input paths (#4414)
- feat(assert): optional
reason
param forunreachable
(#4404) (#4405) - feat(collections): add
pick
andomit
(#4218) - feat(expect): add asymmetric matchers (any, anything, arrayContaining) (#4366)
- feat(uuid): add type predicate return type to validate (v4) (#4301)
- fix(fs/ensure_symlink): check symlink is pointing the given target (#4371)
- fix(log): add missing return types (#4401)
- deprecation(semver): deprecate
==
,===
,!==
, and""
operators (#4271) - doc: fix
std/path/posix
link (#4337) - feat(io):
iterateReader[Sync]()
(#4247) - feat(io): un-deprecate
readerFromStreamReader()
(#4343) - feat(testing): explicit resource management for
spy()
andstub()
(#4306) - fix(http):
version
fromdeno.json
import (#4342) - fix(media_types): load extensions when directly importing
extensionsByTypes()
(#4351) - fix(semver): fix
prerelease
handlings in range utils (#4323) - fix(semver): fix parse_range for
>x.y
pattern (#4350)
- BREAKING(path): remove
path/windows/separator.ts
(#4292) - BREAKING(semver): remove
SemVerRange
andisSemVerRange()
(#4295) - BREAKING(semver): remove
eq()
,gt()
,gte()
,lt()
,lte()
andneq()
(#4294) - BREAKING(semver): remove
outside()
(#4293) - feat(datetime):
format()
options (#4285) - fix(semver): return new object instance in
comparatorMin()
andcomparatorMax()
(#4314)
- BREAKING(log): remove
WARNING
log level (#4258) - BREAKING(path): remove
glob.ts
files (#4259) - BREAKING(path): remove
separator.ts
files (#4260) - BREAKING(semver): remove
Comparator
functions (#4278) - BREAKING(semver): remove
rangeFormat()
(#4265) - BREAKING(semver): remove
sort()
(#4264) - deprecation(semver): deprecate
ltr()
andgtr()
(#4228) - deprecation(semver): deprecate
reverseSort()
(#4280) - feat(expect): add
expect.addEqualityTesters
api. (#4255) - fix: version bump workflow (#4288)
- refactor(dotenv): prepare for
noUncheckedIndexedAccess
(#4261) - refatcor(toml): prepare for
noUncheckedIndexedAccess
(#4274)
- BREAKING(io): remove
types.d.ts
(#4237) - BREAKING(log): remove string formatter (#4239)
- BREAKING(log): single-export handler files (#4236)
- BREAKING(streams): remove
readAll()
,writeAll()
andcopy()
(#4238) - feat(tools,log,http,semver): check mod exports, export items consistently from mod.ts (#4229)
- fix(expect): add Error object equal check. (#4248)
- fix(expect): align
toEqual
to jest (#4246)
- BREAKING(http): remove
CookieMap
(#4179) - BREAKING(semver): remove
FormatStyle
(#4182) - BREAKING(semver): remove
compareBuild()
(#4181) - BREAKING(semver): remove
rsort()
(#4180) - deprecation(path): split off all constants into their own files and deprecate old names (#4153)
- deprecation(semver): deprecate
SemVerRange
, introduceRange
(#4161) - deprecation(semver): deprecate
outside()
(#4185) - deprecation(semver): rename
eq()
,neq()
,lt()
,lte()
,gt()
andgte()
(#4083) - feat(collections): pass
key
tomapValues()
transformer (#4127) - feat(io): un-deprecate
Buffer
(#4184) - feat(log): make handlers disposable (#4195)
- feat: print warning on use of deprecated API (#4200)
- fix(expect): fix the function signature of
toMatchObject()
(#4202) - fix(flags): correct deprecation notices (#4207)
- fix(fmt): correct
stripColor()
deprecation notice (#4208) - fix(log): make
flattenArgs()
private (#4214) - fix(toml):
parse()
duplicates the character next to reserved escape sequences (#4192) - fix: ignore linting for
Deno.serveHttp()
(#4234) - fix: ignore linting rule for
Deno.resources()
(#4233)
- BREAKING(encoding): remove
base32.byteLength()
(#4173) - BREAKING(log): remove deprecated APIs (#4104)
- BREAKING(semver): remove
SemVerComparator
(#4109) - BREAKING(semver): remove
canParse()
non-string overload (#4108) - BREAKING(semver): remove
cmp()
(#4171) - BREAKING(semver): remove
isSemVerComparator()
(#4107) - BREAKING(semver): remove
parse(semver: string)
overload (#4172) - BREAKING(semver): remove
rcompare()
(#4106) - BREAKING: remove
std/signal
sub-module (#4105) - deprecation(io): move types file (#4133)
- deprecation(log): deprecate
LogLevels.WARNING
(#4170) - deprecation(log): move handlers to single-export files (#4176)
- deprecation(log): rename
warning()
towarn()
(#4117) - deprecation(semver): deprecate
Comparator
functions (#4131) - deprecation(semver): deprecate
sort()
(#4098) - deprecation(semver): rename
rangeFormat()
toformatRange()
(#4090) - feat(cli): make
Spinner.color
public (#4092) - feat(io): re-introduce IO functions (#4128)
- feat(net): add
preferredPort
option togetAvailablePort()
(#4151) - feat(text): cases (#4082)
- fix(fs): reduce perm requirement of
ensureDir()
(#4041) - fix(http): punt removal version of
unstable_cookie_map.ts
(#4125) - fix: add
--no-lock
to spawned process args in tests (#4168) - fix: use
with
keyword for import attributes (#4141)
- BREAKING(collections): remove
groupBy()
(#3923) - BREAKING(crypto): remove stable
KeyStack()
(#4055) - BREAKING(front_matter): remove deprecated APIs (#4013)
- BREAKING(http): remove deprecated
createCommonResponse()
andStatus
APIs (#4014) - BREAKING(path): remove deprecated APIs (#4016)
- BREAKING: remove
types.d.ts
at top level (#3922) - deprecation(log): string type for
BaseHandler.formatter
(#4023) - deprecation(semver): deprecate
compareBuild()
(#4088) - deprecation(semver): deprecate
format()
style
argument (#4050) - deprecation(semver): deprecate
testComparator()
(#4037) - deprecation(semver): deprecate cmp (#4025)
- deprecation(semver): rename rsort to reverseSort (#4032)
- feat(cli): make
Spinner.message
able to be changed on-the-fly (#4079) - feat(semver): optional SemVer build and prerelease properties (#4024)
- fix(cli): document milliseconds unit for
Spinner.interval
(#4017) - fix(cli/spinner): export private type aliases used in public API (#4012)
- fix(expect): align toEqual to jest (#4034)
- fix(expect): align toStrictEqual behavior to jest (#4035)
- fix(expect): invalid return typing (#4011)
- fix(fs): fix
expandGlob()
test race condition (#4081) - fix(semver): remove
undefined
return type fromrangeMax()
(#4089) - fix(toml): testdata typo (#4074)
- BREAKING(crypto): remove
toHashString()
(#3924) - BREAKING(encoding): remove deprecated APIs (#3952)
- BREAKING(http): remove deprecated
std/http/method
API (#3951) - deprecation(encoding): deprecate
base32.byteLength()
(#4000) - deprecation(semver): comparator min and max properties (#3974)
- deprecation(semver): deprecate
SemVer
argument forparse()
andcanParse()
(#3939) - deprecation(semver): deprecate
rcompare()
(#3958) - deprecation(semver): rename
isSemVerComparator()
(#3957) - deprecation(signal): move deprecation forward (#4004)
- feat(cli): command line spinner (#3968)
- feat(collections): improve
mapValues()
typing (#3978) - feat(log): add support for structured JSON logging (#3960)
- feat(testing): enable the
using
keyword onFakeTime()
(#3961) - fix(http): account for period in signed cookie name (#3977)
- fix(path/extname): fix incorrect import (#3970)
- perf(streams): make
toBlob()
20-30% faster (#3934)
- BREAKIING(fs): remove
EOL
enum, add OS-dependentEOL
(#3850) - BREAKING(async): remove deprecated
deferred()
(#3852) - BREAKING(bytes): remove spread
concat()
overload (#3854) - BREAKING(collections): remove deprecated APIs (#3853)
- BREAKING(datetime): remove
toIMF()
(#3849) - BREAKING(http): remove
ServerSentEvent()
(#3847) - BREAKING(media_types): remove
typeByExtension()
(#3848) - Revert "BREAKING(media_types): remove
typeByExtension()
" (#3877) - deprecate(log): remove enums and add deprecation notices (#3855)
- deprecation(front_matter): move
Format
enum deprecation forward (#3931) - deprecation(io): IO types in favour of Web Streams API (#3903)
- deprecation: move
types.d.ts
tostd/io
(#3885) - feat(cli):
promptSecret()
(#3777) - feat(expect): support message checks in expect().toThrow (#3938)
- feat(http):
signCookie()
,verifyCookie()
andparseSignedCookie()
(#3905) - feat(net):
getAvailablePort()
(#3890) - feat: add
std/ini
(#3871) - feat: new
std/webgpu
sub-module (#3119) - fix(assert): disallow scalar string args in
assertArrayIncludes()
(#3910) - fix(assert): export parameter type alias for
assertArrayIncludes()
(#3917) - fix(assert): fix diff of long string in objects (#3867)
- fix(cli): re-export promptSecret from mod.ts (#3944)
- fix(fs): improve
exists()
test coverage (#3898) - fix(text): fix closestString (#3936)
- fix(toml): handle CRLF as newline in parsing multiline string (#3920)
- fix(tools): ignore the .git folder when checking for copyright header (#3937)
- perf(async): remove event listener ASAP in
abortablePromise()
andabortableAsyncIterable()
(#3909) - perf(crypto): use
Promise.all()
forKeyStack
data comparisons (#3919) - perf(encoding): increase
varint.decode()
performance by 45x (#3940)
- BREAKING(collections): deprecate
groupBy()
(#3663) - BREAKING: deprecate
std/http/method
(#3834) - feat(assert): improve assertion message of
assertNotStrictEquals()
(#3820) - feat(crypto): support
BLAKE2B-160
algorithm (#3793) - feat: add std/expect (#3814)
- BREAKING(bytes): deprecate
concat()
signatures that don't useUint8Array[]
argument (#3784) - BREAKING(crypto): remove
crypto.subtle.timingSafeEqual()
method (#3803) - BREAKING(fs): deprecate
EOL
enum (#3809) - BREAKING(http): deprecate
ServerSentEvent()
(#3783) - BREAKING(http): deprecate
enum Status
in favour ofSTATUS_CODES
object (#3781) - BREAKING: move
std/flags
to newstd/cli
sub-module (#3530) - BREAKING: remove deprecated
std/http/http_errors
(#3737) - BREAKING: remove deprecated
std/wasi
module (#3733) - feat:
std/data_structures
(#3734)
- BREAKING(async): deprecate
deferred()
in favor ofPromise.withResolvers()
(#3758) - BREAKING(encoding): remove deprecated binary APIs (#3763)
- BREAKING(path): split up glob into multiple files
- add
deno fmt --check
- feat(testing/mock): enable
spy
to accept a class constructor (#3766) - feat:
ServerSentEventStream()
(#3751) - feat: add
std/text
with word-similarity helpers (#3488) - fix(fmt): format duration rounding error. (#3762)
- fix(msgpack): encode huge objects (#3698)
- fix: broken import
- fix: rework file server tests (#3779)
- perf(streams): add single-character fast path for
DelimiterStream()
(#3739)
- BREAKING(dotenv): remove deprecated
restrictEnvAccessTo
option (#3705) - BREAKING(http): move cookie_map, errors, server_sent_event, and method to unstable category, deprecate server.ts (#3661)
- BREAKING: deprecate
std/wasi
(#3732) - BREAKING: remove deprecated
BytesList()
(#3740) - BREAKING: remove deprecated
std/csv
exports (#3704) - feat(fs): introduce
canonicalize
option toWalkOptions
(#3679) - feat(semver): canParse (#3709)
- fix(fs):
expandGlob
/expandGlobSync
don't require full--allow-read
perms on granted read permissions (#3692) - fix(http): file server with showDirListing + urlRoot (#3691)
- fix: flaky
http/file_server.ts
tests (#3717)
- BREAKING(front_matter): deprecate Format enum, use union type instead (#3641)
- BREAKING(front_matter): deprecate language-specific
test
functions (#3654) - BREAKING(path): split path into per-os modules, deprecate legacy os-specific exports (#3649)
- feat(crypto): add BLAKE2B-128 hash algorithm (#3680)
- fix(archive/untar.ts): cannot access symlinks in archives (#3686)
- fix(assert): fix swapping of multiline str diff (#3685)
- perf(encoding): optimize encodeBase64Url (#3682)
- perf: improvements using
Promise.all()
(#3683)
- BREAKING(encoding): deprecate encode/decode, add encodeFoo/decodeFoo (#3660)
- BREAKING(encoding): deprecate old encode/decode in hex.ts (#3673)
- BREAKING(front_matter): deprecate default exports (#3653)
- BREAKING(io): deprecate io top level module (#3556)
- fix(collections): accept read-only arrays in aggregateGroups, reduceGroups, zip (#3662)
- fix(datetime): correctly format midnight in 12-hour time (#3667)
- fix(datetime): fix dayOfYear when the timezone has DST (#3668)
- fix(encoding): add validation of the input types (#3666)
- fix(semver): add a necessary grouping, fix prerelease parsing (#3674)
- BREAKING(collections): move RedBlackTree, BinarySearchTree, and BinaryHeap to 'unstable' subdir (#3628)
- BREAKING(crypto): clean up module (#3630)
- BREAKING(csv): deprecate error message exports (#3602)
- BREAKING(datetime): deprecate to_imf.ts (#3633)
- BREAKING(media_types): deprecate typeByExtension (#3622)
- BREAKING(streams): deprecate APIs based on legacy Reader/Writer interfaces (#3640)
- feat(encoding): add encodeHex, decodeHex (#3642)
- feat(streams): to ArrayBuffer/Blob/Json/Text (#3631)
- feat(ulid): port /x/ulid module (#3582)
- fix(streams): DelimiterStream regression (#3611)
- fix(stripAnsiCode): escape erase character (#3608)
- fix(testing/snapshot): distinguish between singular and plural forms (#3625)
- fix(testing/time): fix FakeTime.next to return false if all timers are cleared (#3638)
- fix(url): fixes for url functions and new tests. (#3607)
- BREAKING(bytes): deprecate BytesList class (#3589)
- BREAKING(crypto): deprecate crypto.subtle.timingSafeEqual() (#3596)
- BREAKING(dotenv): fix dotenv permissions (#3578)
- BREAKING(encoding): deprecate encoding/binary (#3584)
- BREAKING(fmt): rename stripColor to stripAnsiCode (#3588)
- BREAKING(permissions): deprecate permissions module (#3567)
- BREAKING(semver): remove deprecated APIs (#3591)
- BREAKING(signal): deprecate signal module (#3568)
- BREAKING(streams): remove readable_stream_from_iterable (#3579)
- BREAKING(yaml): change binary handling (#3586)
- feat(assert): add inequality asserts (#3496)
- feat(std): add
std/url
module. (#3527) - fix(assert): properly quote strings in assertIsError (#3577)
- fix(fmt): make printf respect NO_COLOR (#3595)
- fix(log): rotating file handler sync setup and destroy (#3543)
- doc: add complete docs for all dotenv functionality (#3560)
- fix(collections): redblack tree and bst not being exported from mod (#3528)
- fix(http/cookie_map): add maxAge to set/delete options (#3524)
- fix(log): fix serializing BigInt value in object (#3550)
- fix(path): typo in comment in _resolve (#3545)
- fix(testing/time): fix FakeTime.restoreFor accuracy for sync callbacks (#3531)
- perf: repoint internal imports to single-export files (#3537)
- feat(path): single file exports (#3510)
- BREAKING(testing/snapshot): change tab char serialization (#3447)
- BREAKING(testing/snapshot): fix regression of serialization of long strings (#3507)
- feat(fs/walk): include symlink option (#3464)
- fix(toml/parse): fix edge cases (#3509)
- BREAKING(http/server): deprecate serve and serveTls (#3381)
- fix(http): fix handling of string port number (#3499)
- BREAKING(streams): deprecate readableStreamFromIterable (#3486)
- BREAKING(testing, assert): move
std/testing/asserts
tostd/assert
(#3445) - feat(fmt): enable
setColorEnabled
in browsers (#3485) - fix(async/delay): reject with existing AbortSignal reason (#3479)
- feat(collections): allow PropertyKey for groupBy key (#3461)
- feat: msgpack encoding (#3460)
- feat: add http/user_agent (#3387)
- fix(json): allow primitives at top level without separator (#3466)
- fix(testing/asserts): handle primitive/null values better in assertObjectMatch (#3468)
- BREAKING(semver): rewrite semver (#3385)
- feat(testing): report the number of removed snapshots (#3435)
- fix(datetime/day_of_year): respect time zone of date (#3443)
- fix(http/file_server): resolve empty subdir correctly on Windows (#3439)
- fix(testing/time): use real Date in FakeTime (#3414)
- fix(yaml): parse always return null when file is empty, whitespace or only comments (#3442)
- BREAKING(csv,http,path): remove deprecated APIs (#3418)
- feat(async/retry): introduce jitter option and fix retry bugs (#3427)
- feat(collections): switch functions to take iterables when possible (#3401)
- feat(collections/sort_by): descending order can be specified in options (#3419)
- feat(crypto): add BLAKE2B-224 hashing algorithm in crypto (#3392)
- feat(html): add escape and unescape functions for HTML entities (#3335)
- fix(http/file_server): use platform specific
resolve
(#3424) - fix(streams/mergeReadableStreams): better error handling (#3395)
- fix(toml): various edge case fixes for
toml.stringify
(#3403)
- feat(async): add jitter to retry exponential backoff (#3379)
- feat(collections/group_by): accept iterable input, add index param to callback (#3390)
- fix(flags): correctly collect default value (#3380)
- feat(collections): add
partitionEntries
(#3365) - feat(regexp): add escape function (#3334)
- fix(datetime): negative months, quarters, and years (#3367)
- fix(http/file_server): dealing with dir listing view that contain system files (#3371)
- fix(http/file_server): redirect non-canonical URL to canonical URL (#3362)
- perf(http/file_server): read fileinfo in parallel (#3363)
- BREAKING(path): deprecate path.sep (#3342)
- feat(async): support
signal
ondeadline()
(#3347) - feat(async/pool): use browser compatible APIs (#3350)
- feat(http): add HTTP_METHODS, HttpMethod, and isHttpMethod (#3309)
- feat(uuid): add pre-defined namespace UUIDs (#3352)
- fix(http/file_server): fix
Range
header handling (#3354) - fix(http/server): flaky 'address in use' error (#3333)
- fix(http/server_sent_event): fix Uncaught TypeError if created without optional EventInit (#3356)
- feat(dotenv): allow reading from
.env
files without granting env access (#3306) - feat(jsonc): annotate return types (#3327)
- feat(uuid): uuid v3 (#3324)
- perf(http/file_server): avoid calculating Content-Type when 304 Not Modified response (#3323)
- BREAKING(encoding): remove deprecated APIs (#3303)
- BREAKING(encoding): remove deprecated APIs (#3315)
- feat(console): add unicodeWidth for TTY text layout (#3297)
- feat(testing): add .skip alias to bdd test API (#3300)
- fix(http): move deno deploy specific logic from
etag.ts
tofile_server.ts
(#3316) - fix(http/file_server.ts): respond to Range requests with correct byte length (#3319)
- BREAKING(csv): rename
CsvStream
toCsvParseStream
(#3287) - BREAKING(encoding/varint): remove deprecated APIs (#3282)
- feat(datetime): add isUtcLeap (#3295)
- feat: add http/etag (#3245)
- fix(bytes): correct slice() of BytesList (#3292)
- fix(csv): improve typing for CSV parser (#3267)
- fix(dotenv): allow
null
for*path
values (#3221) - fix(encoding/ascii85): fix
encode()
returns a wrong result with a subarray (#3310) - fix(fs): fix NotFound error when moving src to itself with overwrite: true (#3289)
- feat(csv): add
CsvStringifyStream
(#3270) - feat(fs): undo deprecation of
exists
and add permission and type check to it (#2785) - feat(fs/walk): WalkError class (#3054)
- feat: disposition on TextDelimiterStream (#3273)
- fix(csv/csv_stringify_stream): output headers based on
columns
option (#3293) - fix(encoding/base58): fix base58 decoding missing the first byte (#3275)
- feat(front_matter): support +++ for TOML block (#3254)
- feat(testing/asserts): include
msg
in assertion errors (#3253)
- BREAKING(csv): move
encoding/csv
to own top-level folder and towards single-export files (#3228) - BREAKING(front_matter): move to top-level folder (#3252)
- BREAKING(json): move to top-level folder and towards single-export files (#3236)
- BREAKING(jsonc): move to top-level folder and single-export files (#3243)
- BREAKING(toml): move to top-level folder and towards single-export files (#3241)
- BREAKING(yaml): move to top-level folder (#3251)
- feat(http): add http/server_sent_event (#3239)
- BREAKING(encoding/varint): deprecate Wasm implementation in favour of native TypeScript (#3215)
- feat(fs): add followSymlink to expandGlob (#3093)
- fix(fs/ensureDir): fix racy ensureDir (#3242)
- fix(fs/ensure_symlink): lstat relative symlink properly (#3216)
- fix(http/cookie): accept cookies with value containing = character (#3152)
- fix(http/file_server): redirect directory URLs that don't end with a slash (#3220)
- Remove std/node, it was merged into Deno itself (#3206)
- feat(encoding/csv/streaming): add
skipFirstRow
andcolumns
options (#3184) - feat(http/file_server): etag value falls back to
DENO_DEPLOYMENT_ID
iffileInfo.mtime
is not available (#3186) - feat(streams/delimiter_stream): add disposition option (#3189)
- fix(crypto): create DataView with correct byteLength in timingSafeEqual (#3208)
- fix(encoding/yaml): avoid prototype pollution in Node.js and Browser (#3173)
- fix(node): do not ask env permission from process.env access (#3178)
- fix(node/child_process): "windowsVerbatimArguments" option should be automatically set to true for CMD in spawn() (#3167)
- fix(node/fs): chmod function throws unnecessary TypeError on Windows (#3168)
- fix: change
BigInt
type tobigint
type (#3187)
- feat(encoding/csv): handle CSV byte-order marks (#3143)
- fix(node/child_process): enable promisify(execFile) (#3161)
- fix(node/process): null is not returned when reaching end-of-file in stdin (#3113)
- fix(semver): allow unsetting build metadata (#3157)
- fix(node): disable worker_threads (#3151)
- fix(node): throw permission error instead of unknown error (#3133)
- fix(node/util): stricter runtime type checking (#3122)
- fix: make encoding/front_matter work in a browser (#3154)
- BREAKING(dotenv,fmt,io): remove deprecated APIs (#3134)
- BREAKING(path): rework basename and dirname to be coreutils compatible (#3089)
- feat(node): AsyncLocalStorage (#3137)
- feat(semver): add support for build metadata (#3126)
- feat(fmt/printf): add formatter i/I (Deno.inspect) (#3100)
- fix(encoding/csv): escape cells containing newlines (LFs) (#3128)
- BREAKING(streams, archive): remove deprecated exports (#3107)
- fix(fs): change globstar default to true for expandGlob and expandGlobSync (#3115)
- fix(streams): prevent artificial terminal newline in
TextLineStream
(#3103) - fix: revert "feat(node/cluster):
cluster
module for Node compat (#2271)" (#3111)
- feat(collection): add toArray method to BinaryHeap (#3079)
- feat(node/cluster):
cluster
module for Node compat (#2271) - fix(datetime):
.quarter
calculation fordifference()
(#3085) - fix(encoding/jsonc): avoid prototype pollution in Node.js and Browser (#3077)
- fix(node): support ref & unref of TCP handle (#3102)
- fix(path): correctly handle trailing slashes for posix basename (#3088)
- feat(http): add --header option to file_server (#2977)
- feat(node): Add support for os.uptime (#3052)
- feat(node/diagnostics_channel): initial implementation (#3050)
- feat(node/url): domainToASCII/domainToUnicode (#3022)
- fix(flags): parse method looses types in certain cases with collect option (#3040)
- fix(flags): types for aliases defined as array are ignored (#3043)
- fix(node/http): avoid empty chunk issue of flash (#3062)
- fix(node/http): ignore body when status code is one of 101, 204, 205, 304 (#3067)
- fix(node/util): reference error of 'process' (#3037)
- fix(path): correctly handle trailing slashes for basename (#3068)
- fix(testing): do not mutate tokens when creating details (#3049)
- fix: don't use windows-xl runners, too expensive (#3021)
- Revert "fix(node/http): do not buffer first chunk (#2989)" (#3013)
- feat(datetime): single-export files (#3007)
- feat(media_types): single-export files (#3001)
- fix(http): prevent downstream connections from getting closed when the response stream throws an error (#3008)
- fix(node): add missing exports to
process
(#3014)
- BREAKING(archive): move to single-export files (#2958)
- BREAKING(dotenv): rename config to load (#2616)
- BREAKING(io): single-export files (#2975)
- fix(encoding): base58 decoding (#2982)
- fix(node): fix nextTick shim in deploy (#2980)
- fix(node): ignore NotSupported errors coming from
Deno.chmod
(#2996) - fix(node/http): do not buffer first chunk (#2989)
- perf(encoding/yaml) Don't allocate buffers unnecessarily (#2967)
- perf(node/buffer): improve utf8 decoding performance (#2986)
- Reorder steps to view documentation (#2948)
- Revert "test(node/http): modify writable of ClientRequest (#2945)" (#2950)
- feat(async): retry (#2929)
- feat(dotenv): support type inference based on
restrictEnvAccessTo
option (#2933) - feat(node): add os.version (#2962)
- feat(node): add util.types.isProxy (#2960)
- feat(testing): add conditional type check utils (#2864)
- fix(node/tls): implement secureConnect event (#2926)
- BREAKING(fmt/bytes): rename prettyBytes to format (#2896)
- BREAKING(fmt/duration): rename prettyDuration to format (#2871)
- feat(http/cookie): allow number type for expires param (#2932)
- feat(node): export
process.argv
(#2924) - feat(node/crypto): add hmac implementation (#2664)
- feat: Add process._kill and shim process.kill(pid, 0) correctly (#2922)
- fix(fmt/bytes): default local decimal and group symbols (#2904)
- fix(http/cookie): wording for cookie value validation error (#2931)
- fix(node/console): update export members of console (#2927)
- fix(node/fs): enable type narrowing with instanceof for ReadStream and WriteStream (#2915)
- fix(node/http): allow setting statusMessage (#2911)
- fix(node/http): disable chunked request if Content-Length header is specified (#2755)
- fix(node/http): request with headers (#2898)
- fix(node/string_decoder): proper buffer type casting and fix default logic (#2897)
- fix(node/timers): implement timeout.refresh (#2919)
- fix: wait for denoflate wasm to load (#2923)
- fix(node): improve crypto.getHashes compatibility (#2890)
- fix(node): issues with browser (#2892)
- fix: allow creating http.IncomingRequest without url being set (#2893)
- feat(fmt): add
prettyDuration
(#2861) - feat(http/file_server): add -v, --version option (#2868)
- fix(node/fs): improve fs.read compatibility (#2880)
- fix(node/http): add .finished property to ServerResponse (#2878)
- fix(node/http): fix non-string buffer response (#2863)
- node: mock ClientRequest.setTimeout (#2875)
- perf(node/string_decoder): use native decoder for GenericDecoder (#2858)
- chore: upgrade rust to 0.165.0 and wasmbuild to 0.10.2 (#2850)
- chore(semver): rename inc and diff (#2826)
- docs(encoding): remove
await
(#2831) - docs(encoding): remove
ColumnDetails["fn"]
(#2840) - docs(flags): fix broken link to minimist (#2842)
- docs(fs): remove misleading docs from fs.walk (#2836)
- docs(log): add note for module authors (#2843)
- refactor: cleanup check licence headers tool (#2830)
- refactor(_tools): use
fs/walk
in deprecations check (#2837) - refactor(_util): remove
deepAssign
(#2847) - refactor(crypto): move
crypto/_wasm_crypto/
tocrypto/_wasm/
(#2845) - refactor(encoding): move
varint/_wasm_varint/
tovarint/_wasm/
(#2844)
- feat(encoding/front_matter): add support for different formats of front matter (#2801)
- feat(streams): add ByteSliceStream (#2795)
- feat(tools): add import path check in docs (#2820)
- fix(dotenv): Empty string crashing parsing (#2819)
- fix(flags): set boolean aliases to false by default (#2824)
- fix(node):
node:setup
task honours-y
flag (#2825) - fix(node/fs): add support for numeric flags in
fs.open()
(#2828)
- BREAKING: remove deprecated
std/hash
module (#2786) - feat(crypto):
createHash
utility (#2805) - feat(crypto):
toHashString
utility (#2767) - feat(node): add support of .node module (#2804)
- feat(node): list remaining Node tests in documentation (#2787)
- fix(fs/expandGlob): globstar false does not take effect (#2571) (#2779)
- fix(node/fs): enable to check error thrown on invalid values of bufferSize (#2782)
- fix(node/net): modify close event timing (#2793)
- feat(crypto): export algorithm types (#2759)
- feat(node): add readline/promises (#2760)
- fix(node/child_process): add support of windowsVerbatimArguments option (#2781)
- fix(node/child_process): mock childProcess.disconnect method (#2776)
- fix(node/fs): make fs.access resolve on windows (#2775)
- fix(node/fs): resolve
Dirent
instead of Object (#2753)
- BREAKING: deprecate
std/textproto
(#2737) - feat(collections): improve types of
partition
module (#2744) - feat(http/file_server): add
showIndex
option to serveDir (#2738) - feat(node): new child_process.fork (#2700)
- feat(node/crypto): add base64url encoding to hash.digest() (#2740)
- feat(node/fs): Support more File system flags (#2725)
- fix(http): remove unnecessary delay when closing server (#2732)
- fix(http/file_server): handles path with reserved char (#2675)
- fix(node): debuglog callback should be optional (#2734)
- fix(node): handle inherited output in spawnSync() (#2743)
- fix(node/fs): Enable
test-fs-open.js
(#2715) - fix(node/process): Deno 1.26 replaced Deno.setRaw with Deno.stdin.setRaw (#2710)
- fix(node/process): do not error assigning
false
toprocess.env[VAR_NAME]
(#2716) - fix(node/tls): fix TLSSocket constructor (#2749)
- fix(node/tls): set tlssocket._handle._parentWrap (#2750)
- fix(node/url): enable url.format function to handle a url object (#2747)
- fix(streams): don't use shared buffer for iterateReader outputs (#2735)
- perf(streams): memory optimizations by avoiding large buffer allocation in a loop (#2748)
- feat(node): add child_process.exec() (#2684)
- feat(node): add child_process.execFileSync() (#2699)
- feat(node): add child_process.execSync() (#2689)
- feat(node/process):
process.getuid()
andprocess.getgid()
(#2680) - fix(http):
serve
swallows errors whenResponse.body
has already been consumed (#2702) - fix(node):
test-child-process-spawnsync-validation-errors.js
(#2690) - fix(node): support mapping Node flags to Deno (#2688)
- fix(node/fs): Enable
test-fs-read-zero-length.js
andtest-fs-read-type.js
(#2692) - fix(node/fs): improve compatibility of fs.WriteStream (#2696)
- fix: testing example pages failing to load (#2693)
- feat(node/child_process):
spawnSync
(#2637) - fix(collections): deepMerge ignoring 'replace' options for nested properties (#2681)
- fix(node): use
Buffer.from()
andBuffer.alloc()
instead ofnew Buffer()
(#2655) - fix(node/fs): Enable
test-fs-read.js
(#2672) - fix(node/fs): improve compatibility of fs.ReadStream (#2653)
- fix(node/fs): position option of fs.read and fs.readSync works the same as Node (#2669)
- fix(node/net): fix socket events order (#2676)
- fix(node/process): does not throw with invalid env var names (#2671)
- fix(node/process): ignore SIGTERM on windows (#2686)
- node: add FreeBSD support (#2467)
- fix(fs):
ensureSymlink
works when symlink already exists (#2642) - fix(http/file_server): serveFile returns 404 when the path is directory (#2659)
- fix(node): set proper default streams export (#2657)
- fix(node/fs): make ReadStream and WriteStream callable with or without new (#2634)
- fix(node/http):
_createUrlStrFromOptions
optimizations (#2635) - fix(node/process): make execPath writable (#2647)
- fix(node/process): reduce required env permission range (#2654)
- BREAKING(encoding/csv): make column argument optional (#2168)
- BREAKING(encoding/csv): sync stringify function (#2611)
- feat(dotenv): allow to restrict env lookup to specific Env variables (#2544)
- fix(async): restore
delay
browser compatibility (#2625) - fix(log): make setup and destroy sync (#2532)
- fix(node): bump node version to latest stable (#2610)
- fix(node): use readable-stream from stream/promises (#2630)
- fix(node): vendor readable-stream from esm.sh (#2584)
- fix(node/process): revert workaround for stdin.isTTY (#2590) (#2614)
- fix(node/url):
urlObject.format
is not a function for object input (#2607) - fix(testing/asserts): temporarily disable background colors in diff (#2601)
- BREAKING(encoding/csv): remove ColumnOptions (#2536)
- BREAKING: replace ALL CAPS acronyms in public API names (#2582)
- feat(encoding): add base58 encoding/decoding feature (#2539)
- feat(fs): support URL params (#2573)
- feat(node): add Server.setTimeout() stub (#2564)
- feat(node/fs): add
opendir
andopendirSync
(#2576) - feat(testing): better assertFalse types (#2562)
- feat(testing): better assertNotInstanceOf types (#2558)
- fix(encoding/json): improve safety of
JSONValue
object type (#2565) - fix(encoding/jsonc): Improve safety of
JSONValue
object type injsonc.ts
(#2568) - fix(fs): use Deno.errors.AlreadyExists where appropriate (#2547)
- fix(node): change Promise.All to Promise.all (#2569)
- fix(node/fs): fix accessSync permission handling (#2570)
- fix(node/process): fix BadResource issue of stdin.isTTY (#2590)
- fix(node/readline): fix Interface constructor (#2588)
- feat(async/delay): add persistent option (#2527)
- feat(crypto): add KeyStack for rotatable key data signing (#2303)
- feat(encoding/csv): sync parse (#2491)
- feat(http): add CookieMap and SecureCookieMap (#2502)
- feat(http): support cert, key options in serveTls (#2508)
- feat(http/cookie): add set-cookie headers parser (#2475)
- feat(http/file_server): return 404 response if file not found (#2529)
- feat(node): add types to fs/promises (#2518)
- feat(node): Handle "upgrade" event (#2457)
- feat(node): use Deno.serve() API for Node http polyfill (#2537)
- feat(testing/asserts): add assertNotInstanceOf (#2530)
- fix(collections): edge cases for BinaryHeap (#2525)
- fix(node): zlib bindings should use nextTick import (#2560)
- fix(node/events): export static setMaxListeners, listenerCount (#2523)
- fix(node/util.types): stricter checking of TypedArray (#2528)
- fix(testing): better assertEqual diff for object getters (#2509)
- feat(crypto): add subtle.timingSafeEqual() (#2503)
- feat(testing): allow for stubbing non existent instance methods (#2487)
- node: add stub for child_process.execSync (#2513)
- node: remove import to global.ts from module_esm.ts (#2501)
- remove 'unhandledRejection' from list of unsupported events (#2500)
- fix(node): fs.existsSync never throws (#2495)
- fix(node/fs): add watchFile & unwatchFile (#2477)
- fix(node/http,https): set the url protocol by default (#2480)
- feat(http/http_errors): add headers property (#2462)
- feat(node): support uncaughtException and uncaughtExceptionMonitor (#2460)
- fix(io): StringWriter retaining references after write (#2456)
- fix(node): correct import specifiers (#2474)
- fix(node/fs): fix fs.watch (#2469)
- fix(node/process.env) support built-in object methods for process.env (#2468)
- node: ChildProcess.ref()/.unref() (#2395)
- node: Use "Deno.spawnChild" API for "child_process" polyfill (#2450)
- feat(semver): add "semver" module (#2434)
- fix(node/module): improve error message of createRequire (#2440)
- fix(testing): add support for
PromiseLike
inassertRejects
(#2443) - node: process.on("beforeExit") (#2331)
- fix(archive/tar): export TarEntry class (#2429)
- fix(encoding/csv/stream): cancel lineReader if readable is canceled (#2401)
- fix(node): add missing named zlib exports (#2435)
- node: handle v8 flag passed to child_process.fork (#2424)
- feat(dotenv): add expand feature, move parse logic to RegExp (#2387)
- feat(dotenv): stringify (#2412)
- feat(http): add HTTP errors (#2307)
- feat(http): add content negotiation (#2302)
- feat: add createAssertSnapshot (#2403)
- fix(node/fs/exists): fix promisified exists (#2409)
- node: process.argv[1] uses phony local module if executing remote module (#2418)
- BREAKING(collections): rename RBTree/BSTree to RedBlackTree/BinarySearchTree (#2400)
- feat(dotenv): include missing vars in MissingEnvVarsError (#2390)
- fix(encoding/json): add
null
to JSONValue union (#2384) - fix(node): export createReadStream() from fs (#2393)
- fix(node): use call() to call prototype methods in inspect() (#2392)
- fix(node/zlib) zlib codes contains undefined values and keys (#2396)
- fix(streams/delimiter): avoid recursion in TextLineStream (#2318)
- fix(testing): break out of Set equality check on match (#2394)
- fix(wasi): Fix WASI initialize() (#2372)
- feat(encoding): add json/stream.ts (#2231)
- feat(flags): infer argument types, names and defaults (#2180)
- feat(media_types): Improve contentType type definition (#2357)
- feat(node): add missing modules node/util/types.ts node/diagnostics_channel.ts (#2369)
- fix(encoding/csv/stream): properly handle CR characters (#2325)
- fix(http): Disable
console.error
ifopts.quiet
is true (#2379) - fix(node): make performance object event target (#2371)
- fix(testing/bdd): fix flat test grouping context (#2308)
- node: improve error for unsupported import (#2380)
- Add warning on usage of collections/mod.ts (#2321, #2346)
- encoding: add front matter module (#2335)
- feat(node): add missing TTY methods to stdout,stderr (#2337)
- fix: update ci script and fix type errors (#2344)
- BREAKING feat(http): improve type safety and docs for http_status (#2297)
- BREAKING(flags): introduce negatable option (#2301)
- feat(encoding): add unsigned LEB128 varint encoding (#2265)
- feat(node/assert): add deepEqual and notDeepEqual (#2288)
- fix(dotenv): support inline comment (#2316)
- fix(media_types): work around type issues under Node.js (#2304)
- fix: pass resolved ephemeral port to onListen (#2311)
- feat(crypto): add fnv algorithms (#2200)
- feat: add media_types (#2286)
- fix(node): type checking on AsyncResource (#2289)
- fix: assertSnapshot errors on empty snapshot in non-update mode (#2269)
- fix: put TextLineStream CR handling behind option (#2277)
- BREAKING(flags): introduce
collect
option (#2247) - BREAKING(testing): use Object.is() for strict equality (#2244)
- BREAKING(testing/asserts): remove implicit any types from assert signatures. (#2203)
- feat(http/util): add compareEtag (#2259)
- feat(node/crypto): stub out missing exports (#2263)
- feat(node/dns):
NAPTR
,NS
,CAA
, andSOA
support (#2233) - feat(streams): toTransformStream (#2227)
- feat(streams/delimiter): support
\r
inTextLineStream
(#2267) - feat(streams/merge): earlyZipReadableStreams (#2264)
- feat(testing/asserts): return error from
assertRejects
andassertThrows
(#2226) - fix(async/pooledMap): return ordered result (#2239)
- fix(node/fs): export fs.ReadStream (#2253)
- feat(http): add onListen option to serve (#2218)
- feat(node/dgram): support dgram (udp) node module compat (#2205)
- fix(assertRejects): fails on synchronous throw #1302 (#2234)
- fix(collections): prevent cycles in deepMerge() (#2228)
- fix(encoding/csv): improve error message for csv's parse function (#2191)
- fix(http/file_server): fix handling of 'W/' prefixed etag (#2229)
- fix(testing/bdd): support using bdd tests with dnt (#2235)
- fix: add toJSON to node/perf_hooks.ts (#2209)
- feat(encoding): add jsonc parser (#2154)
- feat(node/dns): Implement Resolver APIs (#2201)
- feat(node/net): unix domain socket support (#2146)
- feat(testing/snapshot): add "assertSnapshot" options overload (#2179)
- fix(node/module): interpret length parameter as optional in blitBuffer (#2199)
- fix(node/timers): set custom promisify function (#2198)
- fix: Export equalSimd and equalsNaive (#2187)
- BREAKING(testing/snapshot): change multiline string serialization (#2166)
- feat(node/dns): support dns promises lookup (#2164)
- feat(testing): assertFalse (#2093)
- fix(node/dns): export more types (#2185)
- fix(node/worker_threads): Don't wait for parent message in web worker (#2182)
- fix(testing): Compare circular objects (#2172)
- feat(testing): infer stub and spy return types from properties (#2137)
- fix(http): export interface ServeTlsInit (#2148)
- fix(node): use Web Crypto API via globalThis (#2115)
- fix(wasi): ContextOptions is an optional argument (#2138)
- http: serve() should log where it is listening (#1641)
- feat(testing): Implement "assertSnapshot" (#2039)
- feat(testing): add TestContext argument to "it" function (#2117)
- fix(http): use the
addEventListener
method instead ofonabort
properties (#2124) - fix(node/crypto): fix randomInt (#2101)
- perf(http): optimize file server (#2116)
- BREAKING(io/readers): use an array as a MultiReader constructor parameter to avoid Maximum call stack size exceeded (#2016)
- BREAKING(mime/multipart): deprecate mime/multipart module (#2105)
- BREAKING(testing/bench): deprecate testing/bench module (#2104)
- feat(node):
Duplex.fromWeb
(#2086) - feat(testing): add behavior-driven development (#2067)
- feat(testing): add utility for faking time (#2069)
- fix(node): Make global.ts evaluate synchronously (#2098)
- feat(node/child_process): support
signal
parameter forChildProcess.kill
(#2083) - feat(node/net): add server.ref/unref methods (#2087)
- feat: web streams based encoding/csv (#1993)
- fix(log): fix log formatter issue (#2070)
- fix(node/fs): fix writing redundant data (#2076)
- BREAKING: improve bytes/ module (#2074)
- feat(testing): add mocking utilities (#2048)
- feat(collections): Add BSTree and RBTree (#2023)
- feat(node): add ReadStream and createReadStream (#1435)
- feat(node): export URLSearchParams via url module (#2056)
- feat(node): add NodeEventTarget (#2032)
- feat(node): add Console constructor (#2037)
- feat(node): worker_threads (#1151)
- feat(node): add process.allowedNodeEnvironmentFlags (#2049)
- feat(collections): add BinaryHeap (#2022)
- feat(async): expose asyncPromise and asyncAsyncIterable (#2034)
- fix(node/http): ignore error from
respondWith
(#2058) - fix(node): warn on non supported event, but still register listener (#2050)
- fix(node): fix
EventEmitter
methods (#2035) - fix(node): make global. Node.js timers (#2038)
- feat(testing): add
assertInstanceOf
(#2028) - feat(node): shim get-caller-file (#2029)
- fix(node): fix dynamic require (#2024)
- feat(node/fs): add
fs.writevSync(fd, buffers[, position])
(#2020)
- feat: streams based
Buffer
(#1970) - feat(node/crypto): add crypto.publicEncrypt (#1987)
- feat(node/fs): add
fs.writev(fd, buffers[, position], callback)
(#2008) - feat(streams): LimitedTransformStream & LimitedBytesTransformStream (#2007)
- feat(streams): TextDelimiterStream (#2006)
- feat(testing/asserts): use assertion signature for "assertStrictEquals" (#1984)
- fix(async): re-export abortable in mod.ts (#1959)
- fix(fmt/colors): update
ANSI_PATTERN
(#1996) - fix(node): fix http.request for minipass-fetch 2.x (#2004)
- fix(node/process): ignore SIGBREAK binding when the platform is not windows (#2014)
- fix(testing): Misleading assertion error in assertNotEquals (#1989)
- feat(node): add crypto.webcrypto (#1961)
- feat(streams): TextLineStream (#1978)
- fix(dotenv): avoid top-level-await in load.ts (#1964)
- fix(node): fix http client reqs with bodies (#1983)
- fix(testing): fix assertObjectMatch for RegExp/Map/Set (#1967)
- feat(async): add
abortable
to async module. (#1939) - feat(dotenv): add dotenv library (#1877)
- feat(http): expose serveDir function from file_server.ts (#1944)
- feat(node): add fs.realpath.native (#1951)
- feat(node/tls): basic support of tls.createServer (#1948)
- feat(testing): add
assertAlmostEquals
(#1906) - fix(node): don't use globalThis.setTimeout types in node/timers (#1934)
- feat(node): add tls.connect (#1923)
- fix(collections/group_by): improve type safety (#1880)
- fix(io/buffer): super and initialized prop (#1917)
- fix(node): add networkInterfaces to unstable (#1904)
- fix(node): fix fs.createWriteStream (#1874)
- fix(node): fix fs.write again, enable more test cases (#1892)
- fix(node): support 6-arg fs.write (#1888)
- fix(node/buffer): fix base64 decode (#1885)
- fix(node/module): fix commonjs wrapper (#1902)
- feat(node): add punycode module (#1857)
- feat(node): add url.resolve (#1851)
- feat(node/child_process): add support for AbortSignal in ChildProcess (#1864)
- feat(node/fs): add fs.createWriteStream (#1859)
- fix(node/fs): fix fs.access when the user owns the file (#1869)
- fix(node/fs): fix fs.copyFile (support 4-arg call) (#1872)
- fix(node/http): fix http.request (#1856)
- fix(node/net): mock response.socket object (#1858)
- fix: bypass TS errors for missing --unstable (#1819)
Note 0.124.0 is the same as 0.125.0 but ignoring a typescript error related to a new feature added setNoDelay.
- feat(node): add os.networkInterfaces (#1846)
- feat(node): add process.uptime (#1853)
- feat(node/child_process): add execFile (#1838)
- fix(node/process): can not pass exit code as a string (#1849)
- fix(testing):
assertObjectMatch
matches ArrayBuffer views correctly (#1843)
- BREAKING(encoding/csv): add return type to csv's parse and remove a parse func from args (#1724)
- feat(node): add Timeout class (#1699)
- feat(node): provide node compatible timer APIs in commonjs wrapper (#1834)
- fix(log): flush to file when buffer is full (#1782)
- fix(node): fix fs.write/fs.writeAll (#1832)
- fix(node): make stdio streams optional if not present on Deno namespace (#1829)
- fix(node/net): setNoDelay and setKeepAlive no-ops (#1828)
- fix(node/timers): work around |this| check in deno (#1827)
- feat(crypto): add md4 hash (#1799)
- feat(http): add eyecandy to file_server (#1804)
- feat(http/file_server): add 'quiet' flag (#1773)
- feat(node): add zlib (#1790)
- feat(node): mock more APIs (#1802)
- feat(node): upstream caller-path package (#1801)
- feat(node/fs): fs.write()/fs.writeSync() (#1817)
- fix(node): placeholder process.getgid() (#1814)
- fix(node): process.env ownPropertyDescriptor (#1795)
- fix(node): set prototype for Module (#1797)
- fix(node/http): client emit response, trailers & abort (#1809)
- fix(node/http/client): convert response's Headers to plain Object (#1811)
- fix(node/url): format auth/search/hash corruption (#1810)
- feat(crypto): add Tiger hash (#1749)
- feat(node): add https.request (#1746)
- feat(node): add process.execPath (#1748)
- feat(node): add vm.runInThisContext (#1747)
- feat(uuid): add function to detect RFC version of a UUID (#1766)
- fix(examples/chat): fix applyState call (#1760)
- fix(node): don't emit exit twice (#1753)
- fix(node): fix fs.readdir (#1758)
- fix(node): improve util.isDeepStrictEqual (#1765)
- fix(node/child_process): allow number and boolean env vars (#1762)
- fix(path): change default of 'extended' options of glob methods (#1719)
- fix(testing/assert): inequality of -0 and 0 (#1783)
- feat(hash): add Tiger hash (#1729)
- feat(node): expose util.debuglog (#1735)
- feat(node/util): implement
getOwnNonIndexProperties
(#1728) - feat(uuid): add
validate
function to check UUID (#1720)
- [BREAKING] Remove 'findLast' from 'collections' module (#1527)
- [BREAKING] Remove 'findLastIndex' from 'collections' module (#1528)
- [BREAKING] Remove 'server_legacy' from 'http' module (#1648)
- [BREAKING] Remove 'ws' module (#1647)
- [BREAKING] Remove assertThrowsAsync from 'testing/' (#1646)
- [BREAKING] Remove Go-style address in 'http' module (#1660)
- [BREAKING] Remove onSignal from 'signals/' (#1644)
- feat(http): add onError option to serveListener and serveTls (#1679)
- feat(node): add child_process.fork (#1695)
- feat(node): add http.Agent (#1706)
- feat(node): add http.OutgoingMessage (#1705)
- feat(node): add http.request (#1712)
- feat(node): add missing url.parse (#1667)
- feat(node): add mock inspector module (#1688)
- feat(node): add mock zlib module (#1698)
- feat(node): add util.isDeepStrictEqual (#1556)
- feat(node): export fs.Stats class (#1696)
- feat(node/fs): add fs.access (#1687)
- feat(node/url): add url.resolveObject (#1691)
- feat(node/util): add util.deprecate (#1697)
- feat(toml): align keys by option (#1693)
- fix(datetime): fix bug for parse at the end of the month (#1676)
- fix(node/util/inspect): validate invalid options (#1672)
- fix(toml): parse declaration correctly (#1682)
- feat(http): introduce onError option on ServerInit (#1621)
- feat(node/readline): Interface, createInterface (#1554)
- fix(node): use async read for stdin (#1653)
- fix(std/node): Add base64url encoding support, indexOf, lastIndexOf and includes to Buffer (#1636)
- test(node/fs): enable
test-fs-rm.js
(#1632) - fix(node/util/inspect): Fix some bugs (#1637)
- fix(node): Use upstream implementation for streams (#1634)
- 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)
- fix(node): use old "process.nextTick" polyfill if Deno.core is not available (#1612)
- 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)
- 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)
- 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 concurrent .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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- feat(node): add basic support for child_process.spawn (#785)
- feat(path/glob): add caseInsensitive option (#854)
- fix(node/fs): actually export everything (#862)
- 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)
- 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)
- feat: make bufio compatible to Deno Deploy (#831)
- feat: add symlink and 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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.