So I found some bugs in a node I installed and created 2 issues on the repo's github page, hoping that the author may fix the issues I'd found. He responded saying he didn't have time to work on it. Totally understandable. So I decided to fork and contribute some changes. The author hadn't been very responsive (just the one comment) and I wasn't sure if he was open to me submitting some changes, so to test the waters, I created a PR from my own branch to my own master and tagged the author as a reviewer (and invited them as a contributor) and asked if they'd be interested in a PR to their repo.
I haven't heard anything further from the author for the following 2 or more weeks to now. Since then, I've created a similar PR that adds a bunch of new functionality. I'm still testing my changes. I found a bug last night. (It's hard to test, because it's a geofence node and requires multiple people to leave a location to make the tested feature trigger node output.)
I admit I'm somewhat anxious to share my work and this morning (since the work fills a void left to those who don't sign up for a paid IFTTT account - and since the Life360 app will be dropping support of IFTTT in the near future), I started reading about how to publish a new node. Ideally, my changes would be incorporated into the original repo, but if that doesn't happen, I figure creating a separate package would be the way to go.
Though I was tempted to change the node output and the behavior, I maintain both, and only added additional optional features, so as to remain compatible with flows that currently use it.
So if I was to release a separate node, what things should/shouldn't I do WRT:
- node name/version (should I change the name and/or versioning?)
- author (does the package.json support multiple authors? And is there a convention for author order?)
- attribution (what's the best way to refer to the original repo?)
How long should I wait for the original repo's developer to respond to the internal PR's I created? Or should I wait to see if a direct PR gets a response? I think I will submit the bug-fix branch as a PR to the original repo. The new feature branch is branched off of the bug-fix branch, so I figure I will wait to submit that one.
Other related questions:
The repo has a hard-coded client token for the Life360 API. I assume I should create my own token if I create my own node package?
The license is GPL 3.0. Is the change log in git sufficient for the "state changes" requirement, or do I need to create a CHANGES doc and/or add to the README?