Aapo Alasuutari
a38a1f91cf
chore(ext/ffi): simplify FFI types ( #14920 )
...
This commit simplifies the TypeScript types used for interacting with Deno FFI. The basis is that types are now first grouped into logical wholes, NativeNumberType, NativeBigIntType etc. These wholes are combined into the NativeType and NativeResultType general types.
Additionally, this PR removes the { function: { parameters: [], result: "void" } } type declaration from parameters (and result types. Now functions are merely passed and returned as "function".
2022-06-21 08:20:33 +05:30
Divy Srivastava
354fa6cd00
BREAKING(ext/ffi): Remove Deno.UnsafePointer
indirection ( #14915 )
2022-06-20 19:08:10 +05:30
Aapo Alasuutari
3d6fa64f19
feat(ext/ffi): Callbacks ( #14663 )
...
This commit adds support for unstable FFI
callbacks. A callback is registered using
the `Deno.UnsafeCallback` API.
The backing memory for the callback can
be disposed of using `Deno.UnsafeCallback#close`.
It is not safe to pass the callback after calling
close.
Callbacks from other than the isolate thread
are not supported.
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
Co-authored-by: Bert Belder <bertbelder@gmail.com>
2022-06-20 16:36:04 +05:30
cjihrig
95312ab53a
fix: make Performance global an EventTarget
...
This commit updates the Performance global to extend
EventTarget.
2022-06-16 12:05:33 -04:00
Bartek Iwańczuk
fc3a966a2d
Deno.exit() is an alias to self.close() in worker contexts ( #14826 )
...
This commit changes Deno.exit() to be an alias to self.close() in worker contexts,
and the provided exit code becomes is ignored.
2022-06-13 23:53:04 +02:00
Geert-Jan Zwiers
24571a3952
feat(runtime/signal): implement SIGINT and SIGBREAK for windows ( #14694 )
...
This commit adds support for SIGINT and SIGBREAK signals on
Windows platform.
Co-authored-by: orange soeur <juzi201314@gmail.com>
2022-06-13 22:39:46 +02:00
Ryan Dahl
21dfeea3c4
Remove unstable Deno.sleepSync ( #14719 )
...
Co-authored-by: David Sherret <dsherret@gmail.com>
2022-06-13 21:28:00 +02:00
Roj
41075b153a
chore(docs): remove senseless await
( #14844 )
2022-06-11 13:06:58 -04:00
Elias Sjögreen
8113fac939
feat(ext/ffi): support passing and returning bigints ( #14523 )
2022-06-08 16:43:10 +05:30
Kitson Kelly
7eee521199
feat: update to TypeScript 4.7 ( #14242 )
2022-06-01 10:19:18 +10:00
James Bradlee
c41544ac7b
feat(unstable): add Deno.getGid ( #14528 )
2022-05-31 17:42:44 +09:00
Geert-Jan Zwiers
d9ed5e905c
chore(docs): use cross-platform example in Deno.run
jsdoc ( #14754 )
2022-05-30 19:44:16 -04:00
Bartek Iwańczuk
787e794027
chore: update deprecated APIs docs ( #14756 )
2022-05-30 16:42:31 +02:00
Mark Ladyshau
0cd8f53e65
fix(cli/dts): add captureStackTrace
to lib.dom.extras
( #14748 )
...
Fixes #14512
2022-05-30 14:50:54 +10:00
Simon Lecoq
75315dfe00
fix(cli/dts): change ChildStatus.signal
from string
to Deno.Signal
( #14690 )
2022-05-21 02:04:18 +02:00
Leo Kettmeir
5ffcbcfcc8
feat: make Child.kill argument optional ( #14669 )
2022-05-19 14:05:57 +02:00
Luca Casonato
1c4028a381
fix: add types for Response.json
( #14655 )
2022-05-18 16:16:11 +02:00
Leo Kettmeir
a151092aa1
feat: return a signal string instead number on ChildStatus ( #14643 )
2022-05-18 07:32:45 +02:00
Nayeem Rahman
330c820ae8
BREAKING(unstable): Enable Deno namespace in workers by default ( #14581 )
...
This commit removes "WorkerOptions.deno" option as a boolean,
as well as "WorkerOptions.deno.namespace" settings. Starting
with this commit all workers have access to "Deno" namespace
by default.
2022-05-17 22:27:17 +02:00
Bartek Iwańczuk
f57aac77ff
BREAKING: Remove unstable Deno.emit and Deno.formatDiagnostics APIs ( #14463 )
2022-05-17 13:50:31 -04:00
Craig Morten
10a68a5635
feat(ext/net): add CAA
DNS record support in Deno.resolveDns() API ( #14624 )
2022-05-16 11:20:41 +02:00
Craig Morten
c9e9265c3e
feat(ext/net): support NAPTR records in Deno.resolveDns() API ( #14613 )
2022-05-15 17:42:02 +02:00
Craig Morten
38e0a2ec1b
feat(ext/net): support full SOA
record interface ( #14617 )
2022-05-15 16:43:08 +02:00
Thanapat Chotipun
bd4256262a
feat(ext/net): add support for SOA records in Deno.resolveDns() API ( #14534 )
2022-05-14 14:08:35 +02:00
randomicon00
f82a79ffdb
feat: add userAgent property to Navigator's prototype ( #14415 )
2022-05-14 12:00:02 +02:00
Geert-Jan Zwiers
0568be863b
feat(ext/web): add performance.toJSON ( #14548 )
2022-05-13 18:36:00 +02:00
Leo Kettmeir
b67f874b3f
feat(runtime/spawn): add AbortSignal
support ( #14538 )
2022-05-11 07:59:39 +02:00
Geert-Jan Zwiers
dd1d6a0f67
feat(web): add performance.timeOrigin
( #14489 )
...
Add support for the `performance.timeOrigin` web API.
Co-authored-by: Jovi De Croock <decroockjovi@gmail.com>
2022-05-06 19:37:18 +02:00
Thanapat Chotipun
e3954df8c5
feat(ext/net): add "NS" record support in Deno.resolveDns API ( #14372 )
2022-05-03 20:04:20 +02:00
Bartek Iwańczuk
5ddb83a4c2
BREAKING: Remove unstable Deno.applySourceMap API ( #14473 )
2022-05-03 18:44:05 +02:00
Kitson Kelly
ef26a267ae
fix(cli): add dom.extras lib ( #14430 )
...
Closes: #12558
Fixes: #14344
2022-04-29 13:47:58 +10:00
Ben Heidemann
ddbfa1418c
feat(ext/console): Add string abbreviation size option for "Deno.inspect" ( #14384 )
2022-04-25 13:59:15 +02:00
Nayeem Rahman
e9041b9edc
fix(runtime/js/spawn): Pass stdio options for spawn() and spawnSync() ( #14358 )
2022-04-24 17:21:22 +02:00
ayame113
fa37b6a8db
chore(cli/dts): fix the display of the Deno.spawnSync() document ( #14342 )
2022-04-21 14:36:57 +02:00
Leo Kettmeir
8a7539cab3
feat(runtime): two-tier subprocess API ( #11618 )
2022-04-21 00:20:33 +02:00
evan
f785ecee1a
feat(bench): update API, new console reporter ( #14305 )
...
This commit changes "deno bench" subcommand, by updating
the "Deno.bench" API as follows:
- remove "Deno.BenchDefinition.n"
- remove "Deno.BenchDefintion.warmup"
- add "Deno.BenchDefinition.group"
- add "Deno.BenchDefintion.baseline"
This is done because bench cases are no longer run fixed amount
of iterations, but instead they are run until there is difference between
subsequent runs that is statistically insiginificant.
Additionally, console reporter was rewritten completely, to looks
similar to "hyperfine" reporter.
2022-04-20 21:06:39 +02:00
Nayeem Rahman
4d18f558e4
feat(ext/web): Add error events for event listener and timer errors ( #14159 )
...
- feat: Add handleable error event for even listener errors
- feat: Add handleable error event for setTimeout()/setInterval() errors
- feat: Add Deno.core.destructureError()
- feat: Add Deno.core.terminate()
- fix: Don't throw listener errors from dispatchEvent()
- fix: Use biased mode when selecting between mod_evaluate() and
run_event_loop() results
2022-04-13 11:50:57 +02:00
Yongwook Choi
0df1854249
feat(test): Add "name", "origin" and "parent" to "Deno.TestContext" ( #14007 )
...
This commit adds following fields to "Deno.TestContext" interface:
- name
- origin
- parent
These are prerequisites for supporting snapshot functionality in
"std/testing".
2022-04-06 16:51:38 +02:00
David Sherret
4691bde429
fix: Deno.run
- do not modify user provided cmd
array ( #14109 )
2022-03-25 08:17:13 -04:00
Aleksandr Bukhalo
84b1acf8ba
docs(cli): fix typo in PermissionOptionsObject
( #14114 )
2022-03-25 12:30:20 +01:00
David Sherret
eb4daafc51
docs: WorkerOptions
- fix permissions description ( #14011 )
2022-03-24 16:27:24 +01:00
Yoshiya Hinosawa
7feb25d448
feat(unstable): add ref/unref to Listener ( #13961 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-23 12:04:20 +09:00
Bert Belder
c5270abad7
feat(unstable): Add Deno.upgradeHttp API ( #13618 )
...
This commit adds "Deno.upgradeHttp" API, which
allows to "hijack" connection and switch protocols, to eg.
implement WebSocket required for Node compat.
Co-authored-by: crowlkats <crowlkats@toaxl.com>
Co-authored-by: Ryan Dahl <ry@tinyclouds.org>
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-03-16 14:54:18 +01:00
Luca Casonato
a7bef54d3f
BREAKING: don't inherit permissions by default ( #13668 )
...
Previously specifying permissions: {} was the same as specifying
permissions: "inherit". Now it will be the same as permissions: "none".
Not specifying any permissions (permissions: undefined) still means
permissions: "inherit".
2022-03-16 01:43:14 +01:00
Bartek Iwańczuk
09ae512ccb
feat: "deno bench" subcommand ( #13713 )
...
This commit adds "deno bench" subcommand and "Deno.bench()"
API that allows to register bench cases.
The API is modelled after "Deno.test()" and "deno test" subcommand.
Currently the output is rudimentary and bench cases and not
subject to "ops" and "resource" sanitizers.
Co-authored-by: evan <github@evan.lol>
2022-03-11 23:07:02 +01:00
Bartek Iwańczuk
8dc26971ec
types: add Deno.PermissionOptions and Deno.PermissionOptionsObject ( #13892 )
...
Co-authored-by: Kitson Kelly <me@kitsonkelly.com>
2022-03-11 01:35:33 +01:00
Bartek Iwańczuk
060dabee4c
feat(net): add Deno.UnixConn interface ( #13787 )
2022-03-04 20:33:13 +01:00
Kitson Kelly
7fc5bfe51b
feat(cli): update to TypeScript 4.6.2 ( #13474 )
2022-03-02 07:44:43 +11:00
Bartek Iwańczuk
7e3d9084b6
feat: Add Deno.TcpConn class, change return type from Deno.connect ( #13714 )
2022-02-27 15:18:30 +01:00
Geert-Jan Zwiers
6613a312b1
docs: code example to structuredClone
, CompressionStream
, DecompressionStream
( #13719 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2022-02-22 20:41:59 +01:00
Aapo Alasuutari
b1a6555c05
feat(ext/ffi): Support read only global statics ( #13662 )
2022-02-18 17:51:19 +05:30
Luca Casonato
02c95d367e
chore: make new TCP conn methods unstable ( #13686 )
2022-02-16 17:32:29 +01:00
Bartek Iwańczuk
d2ab1ed378
fix: add missing fields to Deno.FsFile ( #13674 )
2022-02-15 14:38:39 +01:00
Bartek Iwańczuk
9b5e336c3d
feat: Add Deno.FsFile, deprecate Deno.File ( #13660 )
2022-02-15 13:59:04 +01:00
Luca Casonato
bdc8006a36
feat(runtime): web streams in fs & net APIs ( #13615 )
...
This commit adds `readable` and `writable` properties to `Deno.File` and
`Deno.Conn`. This makes it very simple to use files and network sockets
with fetch or the native HTTP server.
2022-02-15 13:35:22 +01:00
Leo Kettmeir
3a5ddeb03f
fix(cli/dts/webgpu): make GPUBlendComponent properties optional ( #13574 )
2022-02-02 14:38:01 +01:00
Yoshiya Hinosawa
49a0db0d2a
feat(unstable): add Deno.getUid ( #13496 )
2022-01-31 14:44:19 +09:00
Yoshiya Hinosawa
245f69256b
feat(runtime): stabilize addSignalListener API ( #13438 )
2022-01-31 14:16:39 +09:00
Yoshiya Hinosawa
380ebbd6d5
docs: fix markdown error in sleepSync jsdoc ( #13492 )
2022-01-26 18:23:45 +09:00
Aaron O'Mullan
bd5d445da9
chore: re-enable wgpu_sync ( #13453 )
2022-01-24 23:47:05 +01:00
Yoshiya Hinosawa
d08da94233
feat(unstable): add Deno.networkInterfaces ( #13475 )
2022-01-24 18:39:28 +09:00
Aaron O'Mullan
3ab68bd0a2
revert( #13402 ): experiment: wgpu sync ( #13439 )
2022-01-20 15:23:53 +01:00
Yoshiya Hinosawa
4c1053ad33
chore: update copyright year ( #13434 )
2022-01-20 16:10:16 +09:00
Yoshiya Hinosawa
ee51c3ddd9
fix(cli/dts): add NotSupported error type ( #13432 )
2022-01-20 12:29:37 +09:00
Aaron O'Mullan
2ab21dafa7
experiment: wgpu sync ( #13402 )
2022-01-19 13:38:51 +01:00
David Sherret
0f3a53e5d4
feat: stabilize test steps API ( #13400 )
2022-01-18 15:02:56 -05:00
Andreu Botella
76c7b9abf9
fix(tsc): Add typings for Intl.ListFormat
( #13301 )
...
V8 has supported `Intl.ListFormat` since version 7.2, but TypeScript doesn't
have typings for it yet. This PR manually adds those typings, copying them from
microsoft/TypeScript#47254 .
2022-01-17 06:50:10 +01:00
DjDeveloper
62291e9b0e
feat(ext/ffi): UnsafeFnPointer API ( #13340 )
2022-01-12 12:38:26 +01:00
DjDeveloper
a7ea93b978
fix(ext/ffi): pointer
type can accept null
( #13335 )
2022-01-11 15:01:52 +05:30
DjDeveloper
5680d33dd9
feat(ext/ffi): support alias names for symbol definitions ( #13090 )
2022-01-11 07:21:16 +01:00
Divy Srivastava
d8e96d2742
feat(ext/ffi): infer symbol types ( #13221 )
...
Co-authored-by: sinclairzx81 <sinclairzx81@users.noreply.github.com>
2022-01-10 21:03:25 +05:30
David Sherret
994ac6d49b
docs: update writeSync
docs to refer to writeAllSync
in deno.land/std instead of Deno.writeAllSync
( #13314 )
2022-01-10 09:22:41 -05:00
Leo Kettmeir
2067820714
feat(ext/websocket): server automatically handle ping/pong for incoming WebSocket ( #13172 )
2022-01-06 17:41:16 +01:00
Leo Kettmeir
c40419b55b
feat(ext/websocket): add header support to WebSocketStream ( #11887 )
2022-01-05 17:41:44 +01:00
Bartek Iwańczuk
e133d37e37
chore: add codeblocks for lib.deno.shared_globals.d.ts ( #13117 )
2021-12-17 02:36:03 +01:00
Elias Sjögreen
ee49cce726
feat(ext/ffi): implement UnsafePointer and UnsafePointerView ( #12828 )
2021-12-15 15:41:49 +01:00
Jesper van den Ende
a2b4d13540
docs: Fix typo in EmitOptions ( #13062 )
2021-12-13 13:26:03 +01:00
Kitson Kelly
616ff1d482
chore: place @deprecated
tag after documentation block ( #13037 )
2021-12-10 11:05:50 +11:00
Kitson Kelly
345f0fbe5c
feat(cli): update to TypeScript 4.5 ( #12410 )
...
Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2021-12-10 09:12:21 +11:00
Yoshiya Hinosawa
69ad5f0e78
feat(ext/timers): add refTimer, unrefTimer API ( #12953 )
2021-12-09 17:00:55 +09:00
Yury Selivanov
1d3f734e18
feat(ext/net): ALPN support in Deno.connectTls()
( #12786 )
2021-11-26 19:59:53 +01:00
Bartek Iwańczuk
d8afd56838
feat(test): Add more overloads for "Deno.test" ( #12749 )
...
This commit adds 4 more overloads to "Deno.test()" API.
```
// Deno.test(function testName() { });
export function test(fn: (t: TestContext) => void | Promise<void>): void;
// Deno.test("test name", { only: true }, function() { });
export function test(
name: string,
options: Omit<TestDefinition, "name">,
fn: (t: TestContext) => void | Promise<void>,
): void;
// Deno.test({ name: "test name" }, function() { });
export function test(
options: Omit<TestDefinition, "fn">,
fn: (t: TestContext) => void | Promise<void>,
): void;
// Deno.test({ only: true }, function testName() { });
export function test(
options: Omit<TestDefinition, "fn" | "name">,
fn: (t: TestContext) => void | Promise<void>,
): void;
```
2021-11-23 14:57:51 +01:00
Luca Casonato
ae34f8fa10
fix: support "other" event type in FSWatcher ( #12836 )
...
This commit adds support for "other" events in `FSWatcher`. Flags on
events are now exposed via the `flag` property on `FsEvent`.
2021-11-23 11:30:24 +01:00
Kitson Kelly
f5eb177f50
feat(cli): support React 17 JSX transforms ( #12631 )
...
Closes #8440
2021-11-09 12:26:39 +11:00
Luca Casonato
80d3a5f8be
feat: update to V8 9.7 ( #12685 )
...
This commit updates the rusty_v8 to 0.34.0. This commit also adds
the required typings for the new Array#findLast and Array#findIndexLast
methods.
2021-11-08 14:24:54 +01:00
Bartek Iwańczuk
61e9beaa7b
feat: Stabilize Deno.TestDefinition.permissions ( #12078 )
2021-10-31 19:45:37 +01:00
David Sherret
d44011a69e
fix(runtime): require full read and write permissions to create symlinks ( #12554 )
2021-10-29 17:05:55 -04:00
Luca Casonato
b7341438f2
feat: stabilize Deno.startTls ( #12581 )
...
This commit stabilizes `Deno.startTls` and removes `certFile` from the
`StartTlsOptions`.
2021-10-29 17:13:31 +02:00
Bert Belder
cf9c4f0031
feat(ext/net): add TlsConn.handshake() ( #12467 )
...
A `handshake()` method was added that returns when the TLS handshake is
complete. The `TlsListener` and `TlsConn` interfaces were added to
accomodate this new method.
Closes: #11759 .
2021-10-26 22:27:47 +02:00
Yoshiya Hinosawa
a9b34118a9
feat(runtime): add Deno.addSignalListener API ( #12512 )
2021-10-26 12:03:38 +09:00
Nayeem Rahman
ad20e52c27
fix(cli/dts): update std links for deprecations ( #12496 )
2021-10-19 19:53:24 +02:00
Robert Schultz
a2f53b105d
docs(Deno.Process.kill): Added example for Deno.Process.kill() ( #12464 )
2021-10-19 05:54:43 +02:00
Nayeem Rahman
7a22df9b76
fix(runtime/ops/worker_host): move permission arg parsing to Rust ( #12297 )
2021-10-13 13:04:44 -04:00
David Sherret
426ebf854a
feat(unstable/test): imperative test steps API ( #12190 )
2021-10-11 09:45:02 -04:00
Divy Srivastava
423b02d889
fix(ext/ffi): types for nonblocking FFI ( #12345 )
2021-10-11 15:09:11 +02:00
Aaron O'Mullan
5a8a989b78
refactor(metrics): move to core ( #12386 )
...
Avoids overhead of wrapping ops (and allocs when inspecting async-op futures)
2021-10-10 17:20:30 +02:00
Ryan Dahl
6ac0337165
feat: Stabilize Deno.kill and Deno.Process.kill ( #12375 )
...
Co-authored-by: Luca Casonato <lucacasonato@yahoo.com>
2021-10-10 15:48:26 +02:00
Satya Rohith
29f9e14457
feat: stabilize Deno.resolveDns ( #12368 )
2021-10-10 15:46:11 +05:30
Divy Srivastava
2155e7545f
fix(ext/ffi): missing "buffer" type definitions ( #12371 )
2021-10-08 16:32:57 +02:00
Luca Casonato
0d7a417f33
feat(tls): custom in memory CA certificates ( #12219 )
...
This adds support for using in memory CA certificates for
`Deno.startTLS`, `Deno.connectTLS` and `Deno.createHttpClient`.
`certFile` is deprecated in `startTls` and `connectTls`, and removed
from `Deno.createHttpClient`.
2021-09-30 09:26:15 +02:00