Compare commits

...

9 Commits

Author SHA1 Message Date
ae560cd00a updated year
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2023-09-09 16:39:03 +03:00
541f4bfe82 added .editorconfig
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2023-06-12 12:47:28 +03:00
9be9caefc9 updated license...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2019-11-03 19:28:07 +03:00
3572df122e 1.0.6 2014-12-31 19:23:50 +03:00
bf9674d063 added a link to the used in an example glob utility...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2014-12-31 19:23:36 +03:00
7b16dc493f minor licence update in package.json...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2014-12-30 00:07:22 +03:00
32a8826587 1.0.5 2014-12-29 22:59:39 +03:00
01ca45aec3 minor doc rewrite...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2014-12-29 22:59:27 +03:00
b068e0b49a fixed a typo...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2014-12-29 22:55:02 +03:00
5 changed files with 19 additions and 11 deletions

7
.editorconfig Executable file
View File

@ -0,0 +1,7 @@
root = true
[**]
indent_style = tab
tab_width = 4
charset = utf-8
end_of_line = lf

2
LICENSE Normal file → Executable file
View File

@ -1,4 +1,4 @@
Copyright (c) 2014, Alex A. Naanou Copyright (c) 2014-2023, Alex A. Naanou
All rights reserved. All rights reserved.
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without

17
README.md Normal file → Executable file
View File

@ -11,7 +11,7 @@ will provide the following functionality:
* Call new handlers of the specified event with each of the prior event * Call new handlers of the specified event with each of the prior event
data sets in order of event occurrence. data sets in order of event occurrence.
* Add a `.clearGuaranteedQueue(<evetn>)` method to the emitter to facilitate * Add a `.clearGuaranteedQueue(<event>)` method to the emitter to facilitate
event cache cleaning. event cache cleaning.
This is useful for modules like [glob](https://github.com/isaacs/node-glob) This is useful for modules like [glob](https://github.com/isaacs/node-glob)
@ -58,7 +58,8 @@ emitter.emit('event', 'some data')
``` ```
A real-life use-case: A real-life use-case using the excellent [glob](https://github.com/isaacs/node-glob)
utility:
```javascript ```javascript
var glob = require('glob') var glob = require('glob')
var guaranteeEvents = require('guarantee-events') var guaranteeEvents = require('guarantee-events')
@ -81,14 +82,14 @@ results.on('match', function(path){ console.log('found: '+path) })
Cache cleaning and use for long running emitters Cache cleaning and use for long running emitters
------------------------------------------------ ------------------------------------------------
This is not recommended for use in long running event emitters as each One of the dangers in using this in long running event emitters is _cache
event emitted data will get stored and might get quite large, i.e. a buildup_ -- the data for each event emitted will get stored and this
potential source for a leak. might get quite large, this, if not managed, is a potential memory leak.
To deal with this issue a `.clearGuaranteedQueue(<event>)` method is To deal with this issue a `.clearGuaranteedQueue(<event>)` method is
added to the emitter, this will clear the cache for a specific event and added to the emitter, this will clear the cache for a specific event.
a shorthand form `.clearGuaranteedQueue('*')` that will clear the cache This and has a shorthand form `.clearGuaranteedQueue('*')` that will
for all wrapped events. clear the cache for all wrapped events.
So for the above example: So for the above example:
```javascript ```javascript

0
index.js Normal file → Executable file
View File

View File

@ -1,6 +1,6 @@
{ {
"name": "guarantee-events", "name": "guarantee-events",
"version": "1.0.4", "version": "1.0.6",
"description": "Guarantee that every event handler gets every event...", "description": "Guarantee that every event handler gets every event...",
"main": "index.js", "main": "index.js",
"scripts": { "scripts": {
@ -18,7 +18,7 @@
"event" "event"
], ],
"author": "Alex A. Naanou <alex.nanou@gmail.com> (https://github.com/flynx)", "author": "Alex A. Naanou <alex.nanou@gmail.com> (https://github.com/flynx)",
"license": "New BSD", "license": "BSD-3-Clause",
"bugs": { "bugs": {
"url": "https://github.com/flynx/guaranteeEvents/issues" "url": "https://github.com/flynx/guaranteeEvents/issues"
}, },