1 | # 3.3.0
|
---|
2 |
|
---|
3 | - Support EventTarget emitters in `events.once` from Node.js 12.11.0.
|
---|
4 |
|
---|
5 | Now you can use the `events.once` function with objects that implement the EventTarget interface. This interface is used widely in
|
---|
6 | the DOM and other web APIs.
|
---|
7 |
|
---|
8 | ```js
|
---|
9 | var events = require('events');
|
---|
10 | var assert = require('assert');
|
---|
11 |
|
---|
12 | async function connect() {
|
---|
13 | var ws = new WebSocket('wss://example.com');
|
---|
14 | await events.once(ws, 'open');
|
---|
15 | assert(ws.readyState === WebSocket.OPEN);
|
---|
16 | }
|
---|
17 |
|
---|
18 | async function onClick() {
|
---|
19 | await events.once(document.body, 'click');
|
---|
20 | alert('you clicked the page!');
|
---|
21 | }
|
---|
22 | ```
|
---|
23 |
|
---|
24 | # 3.2.0
|
---|
25 |
|
---|
26 | - Add `events.once` from Node.js 11.13.0.
|
---|
27 |
|
---|
28 | To use this function, Promises must be supported in the environment. Use a polyfill like `es6-promise` if you support older browsers.
|
---|
29 |
|
---|
30 | # 3.1.0 (2020-01-08)
|
---|
31 |
|
---|
32 | `events` now matches the Node.js 11.12.0 API.
|
---|
33 |
|
---|
34 | - pass through return value in wrapped `emitter.once()` listeners
|
---|
35 |
|
---|
36 | Now, this works:
|
---|
37 | ```js
|
---|
38 | emitter.once('myevent', function () { return 1; });
|
---|
39 | var listener = emitter.rawListeners('myevent')[0]
|
---|
40 | assert(listener() === 1);
|
---|
41 | ```
|
---|
42 | Previously, `listener()` would return undefined regardless of the implementation.
|
---|
43 |
|
---|
44 | Ported from https://github.com/nodejs/node/commit/acc506c2d2771dab8d7bba6d3452bc5180dff7cf
|
---|
45 |
|
---|
46 | - Reduce code duplication in listener type check ([#67](https://github.com/Gozala/events/pull/67) by [@friederbluemle](https://github.com/friederbluemle)).
|
---|
47 | - Improve `emitter.once()` performance in some engines
|
---|
48 |
|
---|
49 | # 3.0.0 (2018-05-25)
|
---|
50 |
|
---|
51 | **This version drops support for IE8.** `events` no longer includes polyfills
|
---|
52 | for ES5 features. If you need to support older environments, use an ES5 shim
|
---|
53 | like [es5-shim](https://npmjs.com/package/es5-shim). Both the shim and sham
|
---|
54 | versions of es5-shim are necessary.
|
---|
55 |
|
---|
56 | - Update to events code from Node.js 10.x
|
---|
57 | - (semver major) Adds `off()` method
|
---|
58 | - Port more tests from Node.js
|
---|
59 | - Switch browser tests to airtap, making things more reliable
|
---|
60 |
|
---|
61 | # 2.1.0 (2018-05-25)
|
---|
62 |
|
---|
63 | - add Emitter#rawListeners from Node.js v9.4
|
---|
64 |
|
---|
65 | # 2.0.0 (2018-02-02)
|
---|
66 |
|
---|
67 | - Update to events code from node.js 8.x
|
---|
68 | - Adds `prependListener()` and `prependOnceListener()`
|
---|
69 | - Adds `eventNames()` method
|
---|
70 | - (semver major) Unwrap `once()` listeners in `listeners()`
|
---|
71 | - copy tests from node.js
|
---|
72 |
|
---|
73 | Note that this version doubles the gzipped size, jumping from 1.1KB to 2.1KB,
|
---|
74 | due to new methods and runtime performance improvements. Be aware of that when
|
---|
75 | upgrading.
|
---|
76 |
|
---|
77 | # 1.1.1 (2016-06-22)
|
---|
78 |
|
---|
79 | - add more context to errors if they are not instanceof Error
|
---|
80 |
|
---|
81 | # 1.1.0 (2015-09-29)
|
---|
82 |
|
---|
83 | - add Emitter#listerCount (to match node v4 api)
|
---|
84 |
|
---|
85 | # 1.0.2 (2014-08-28)
|
---|
86 |
|
---|
87 | - remove un-reachable code
|
---|
88 | - update devDeps
|
---|
89 |
|
---|
90 | ## 1.0.1 / 2014-05-11
|
---|
91 |
|
---|
92 | - check for console.trace before using it
|
---|
93 |
|
---|
94 | ## 1.0.0 / 2013-12-10
|
---|
95 |
|
---|
96 | - Update to latest events code from node.js 0.10
|
---|
97 | - copy tests from node.js
|
---|
98 |
|
---|
99 | ## 0.4.0 / 2011-07-03 ##
|
---|
100 |
|
---|
101 | - Switching to graphquire@0.8.0
|
---|
102 |
|
---|
103 | ## 0.3.0 / 2011-07-03 ##
|
---|
104 |
|
---|
105 | - Switching to URL based module require.
|
---|
106 |
|
---|
107 | ## 0.2.0 / 2011-06-10 ##
|
---|
108 |
|
---|
109 | - Simplified package structure.
|
---|
110 | - Graphquire for dependency management.
|
---|
111 |
|
---|
112 | ## 0.1.1 / 2011-05-16 ##
|
---|
113 |
|
---|
114 | - Unhandled errors are logged via console.error
|
---|
115 |
|
---|
116 | ## 0.1.0 / 2011-04-22 ##
|
---|
117 |
|
---|
118 | - Initial release
|
---|