119 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			119 lines
		
	
	
		
			3.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # 3.3.0
 | |
| 
 | |
|  - Support EventTarget emitters in `events.once` from Node.js 12.11.0.
 | |
| 
 | |
|    Now you can use the `events.once` function with objects that implement the EventTarget interface. This interface is used widely in
 | |
|    the DOM and other web APIs.
 | |
| 
 | |
|    ```js
 | |
|    var events = require('events');
 | |
|    var assert = require('assert');
 | |
| 
 | |
|    async function connect() {
 | |
|      var ws = new WebSocket('wss://example.com');
 | |
|      await events.once(ws, 'open');
 | |
|      assert(ws.readyState === WebSocket.OPEN);
 | |
|    }
 | |
| 
 | |
|    async function onClick() {
 | |
|      await events.once(document.body, 'click');
 | |
|      alert('you clicked the page!');
 | |
|    }
 | |
|    ```
 | |
| 
 | |
| # 3.2.0
 | |
| 
 | |
|  - Add `events.once` from Node.js 11.13.0.
 | |
| 
 | |
|    To use this function, Promises must be supported in the environment. Use a polyfill like `es6-promise` if you support older browsers.
 | |
| 
 | |
| # 3.1.0 (2020-01-08)
 | |
| 
 | |
| `events` now matches the Node.js 11.12.0 API.
 | |
| 
 | |
|   - pass through return value in wrapped `emitter.once()` listeners
 | |
| 
 | |
|     Now, this works:
 | |
|     ```js
 | |
|     emitter.once('myevent', function () { return 1; });
 | |
|     var listener = emitter.rawListeners('myevent')[0]
 | |
|     assert(listener() === 1);
 | |
|     ```
 | |
|     Previously, `listener()` would return undefined regardless of the implementation.
 | |
| 
 | |
|     Ported from https://github.com/nodejs/node/commit/acc506c2d2771dab8d7bba6d3452bc5180dff7cf
 | |
| 
 | |
|   - Reduce code duplication in listener type check ([#67](https://github.com/Gozala/events/pull/67) by [@friederbluemle](https://github.com/friederbluemle)).
 | |
|   - Improve `emitter.once()` performance in some engines
 | |
| 
 | |
| # 3.0.0 (2018-05-25)
 | |
| 
 | |
| **This version drops support for IE8.** `events` no longer includes polyfills
 | |
| for ES5 features. If you need to support older environments, use an ES5 shim
 | |
| like [es5-shim](https://npmjs.com/package/es5-shim). Both the shim and sham
 | |
| versions of es5-shim are necessary.
 | |
| 
 | |
|   - Update to events code from Node.js 10.x
 | |
|     - (semver major) Adds `off()` method
 | |
|   - Port more tests from Node.js
 | |
|   - Switch browser tests to airtap, making things more reliable
 | |
| 
 | |
| # 2.1.0 (2018-05-25)
 | |
| 
 | |
|   - add Emitter#rawListeners from Node.js v9.4
 | |
| 
 | |
| # 2.0.0 (2018-02-02)
 | |
| 
 | |
|   - Update to events code from node.js 8.x
 | |
|     - Adds `prependListener()` and `prependOnceListener()`
 | |
|     - Adds `eventNames()` method
 | |
|     - (semver major) Unwrap `once()` listeners in `listeners()`
 | |
|   - copy tests from node.js
 | |
| 
 | |
| Note that this version doubles the gzipped size, jumping from 1.1KB to 2.1KB,
 | |
| due to new methods and runtime performance improvements. Be aware of that when
 | |
| upgrading.
 | |
| 
 | |
| # 1.1.1 (2016-06-22)
 | |
| 
 | |
|   - add more context to errors if they are not instanceof Error
 | |
| 
 | |
| # 1.1.0 (2015-09-29)
 | |
| 
 | |
|   - add Emitter#listerCount (to match node v4 api)
 | |
| 
 | |
| # 1.0.2 (2014-08-28)
 | |
| 
 | |
|   - remove un-reachable code
 | |
|   - update devDeps
 | |
| 
 | |
| ## 1.0.1 / 2014-05-11
 | |
| 
 | |
|   - check for console.trace before using it
 | |
| 
 | |
| ## 1.0.0 / 2013-12-10
 | |
| 
 | |
|   - Update to latest events code from node.js 0.10
 | |
|   - copy tests from node.js
 | |
| 
 | |
| ## 0.4.0 / 2011-07-03 ##
 | |
| 
 | |
|   - Switching to graphquire@0.8.0
 | |
| 
 | |
| ## 0.3.0 / 2011-07-03 ##
 | |
| 
 | |
|   - Switching to URL based module require.
 | |
| 
 | |
| ## 0.2.0 / 2011-06-10 ##
 | |
| 
 | |
|   - Simplified package structure.
 | |
|   - Graphquire for dependency management.
 | |
| 
 | |
| ## 0.1.1 / 2011-05-16 ##
 | |
| 
 | |
|   - Unhandled errors are logged via console.error
 | |
| 
 | |
| ## 0.1.0 / 2011-04-22 ##
 | |
| 
 | |
|   - Initial release
 | 
