Switched to NPM 5.1.0 and it created a lock file with instructions to commit it so thats what I'm doing. Of course anyone can use the version they're comfortable with.
4895474d4468065b621367ff0af814a64333415f John Mothershed Sun Jul 9 02:41:06 2017 -0500
For a non-published module its fine to use
export default but for
a published module it needs to be more universal and the es6
import/export is a trainwreck with no support from software or
much of the community. Its also incompatible wth typical NodeJS style
which is universal among NodeJS packages.
Therefore I have switched to the universal module option with
NodeJS module style by using
module.exports for both modules.
8a663ae077a212a8f08ffeea343621ff35eaee66 John Mothershed Sat Jul 8 20:05:02 2017 -0500
An initial commit, not ready or tested yet but at a save point to continue further.
20de423d6d3106683bb60017c7cd7f39f740e605 June Hanabi Sun Jul 16 19:01:07 2017 -0500
Rebuilt the docs to encompass all the changes.
4937131ee5837d22bddc321a6e3fafc75e4ced47 June Hanabi Sun Jul 16 18:56:48 2017 -0500
Bumped version to 3.0.0 and updated other files in preperation for release.
b1866e2b0e055839c1297f24fcf65d44beccaeb2 June Hanabi Sun Jul 16 18:53:30 2017 -0500
A simple and short quick starter tutorial has been written to help people out and encourage use of the docs.
dacb2d74dc21d46d39336f9b12d8e192292cc4fa June Hanabi Sat Jul 15 22:37:35 2017 -0500
Tidying up some last minute details and files for the release. Making sure all changes are in order.
c6d0b34d73644ce0e5384b59c435d4e935f2c349 June Hanabi Sat Jul 15 21:51:28 2017 -0500
beb65e473c9c934d61e65091f825e63f27e9341d June Hanabi Sat Jul 15 21:49:05 2017 -0500
Emitters now have the ability to plug themselves into other emitters. By doing so they'll receive all the emits from the emitter they're plugged into. Optional prefix can be added for ambiguity.
Take care not to cause direct or indirect loops by creating an emitter chain that loops back in some way. Infinite loops will ensue.
Also this marks a 2.1 upgrade.
89e6dda49301680c995163f417a00a509d12f94c June Hanabi Sat Jul 15 20:17:23 2017 -0500
I really hate including generated content but it's needed with GitHub since github managed to screw up the git lfs which is meant for exactly this situation.
Anyhow, the newly generated docs for 2.0.0
fafea09fbe9e090308de3c71d90da980ce2db949 June Hanabi Sat Jul 15 20:16:08 2017 -0500
So this was a doozy lol, finished updating all the docs for 2.0.0. Most of it, well reall about all of it was new since we're branching off from NodeJS native event emitter.
b68cc9a685b00ea3b3a8d32d1824ada708f51674 June Hanabi Sat Jul 15 20:13:56 2017 -0500
A small but important change. a Max Listener value of zero is meant to be infinite listeners not zero listeners. This change fixes that bug.
ee875c59745e97bf854ed941ce2dd3ea4fa98311 June Hanabi Sat Jul 15 11:38:22 2017 -0500
This is the complete test suite for the big 2.0 upgrade, at this point it's considered solid.
9ecbe5fd2c01c1c677585e05f228e67e003dba3e June Hanabi Sat Jul 15 11:36:59 2017 -0500
So these are the remaining fixes for the 2.0 upgrade. Various misc bugs and typos.
b78c7426e614f639142242ddebc074f3ca1785a1 June Hanabi Thu Jul 13 21:05:16 2017 -0500
We want to mimick or keep the behavior of EventEmitter which warns on too many listeners. ESlint is setup to warn against using console so we're disabling that warning as an exception.
cfe6a8e98a835553c75be8cff12d774364deed30 June Hanabi Thu Jul 13 19:23:29 2017 -0500
So before it was loosely based off of EventEmitter which has aliases to addListener which was on. Apart from stuff being incomplete like their being no off and missing aliases to prepend and such, I had originally added it in.
This caused bloating of code and complications so I decided to remove all aliases and keep strictly on and off thus simplyfyuing and shortening the code.
b906b8d19217689784f40aaf5f1778e256ccb5a5 June Hanabi Thu Jul 13 18:21:37 2017 -0500
So as I feared, modifying EventEmitter was a nice idea and I figured because it was now stable all is ok to modify it. But there were obviosuly risks and the risks have come true.
Upgrading NodeJS which upgrades the EventEmitter breaks classes that modify it because there's no way to lock onto a specific version of EventEmitter.
Anyways I've wanted to break off anyways because the native EventEmitter is too messy and too restricting to try and modify it. Now we're completely independent and loosely based off the original but loads of useful features and changes have been added in.
The code is untested.
091f73913ece9d1108db90f5b98915edf3c3242f John Mothershed Mon Jul 10 03:18:57 2017 -0500
So normally I would ammend the last commit with this but I've already pushed the last commit so this will have to be seperate. Built the docs in prep for release. Forgot to do that on last commit.
d531672ea718bb473b06aa42c4cf1a02a425619a John Mothershed Mon Jul 10 03:15:54 2017 -0500
Some final pre-release work before release.
dfc0db86b3fda0a64b8cd4b10abd33e806e0671f John Mothershed Mon Jul 10 03:02:11 2017 -0500
The last of the tests have been written and the package at this point is considered solid. Will likely publish later today after double checking other stuff and preparing for release.
372c534eadfa7751adbda7a917d3535e4e7b24c3 John Mothershed Sun Jul 9 23:35:14 2017 -0500
I have a lot of development conventions and now much of it is written down thankfully and better organized.
e19063096d8ffce0ba458769340b9a3d247eb9d4 John Mothershed Sun Jul 9 23:32:27 2017 -0500
Updated the README to overall better represent the class and be less boring such as with highlighting of key concepts and frequent headers to seperate topics. Also keeping topics shorter.
This way it keeps peoples attentioon better.
3db475031c9a871399b9f6218c26c85112c950d7 John Mothershed Sun Jul 9 12:22:39 2017 -0500
EmitResults is now tested and fully works. The main class PainlessEventEmitter has not been tested yet so it may still not work but thats next on my todo list.
7452e7a63ae2ccdc33f836c6389d0b3c8b2f904a John Mothershed Sun Jul 9 12:16:04 2017 -0500