New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bring follow library under Nano's wing #53
Conversation
Really good plan!
…On 18 July 2017 at 13:41, Glynn Bird ***@***.***> wrote:
Overview
Currently Nano uses a the follow <https://www.npmjs.com/package/follow>
library as a dependency to handle changes feed subscription. Unfortunately,
follow is not maintained. The nice people at Cloudant have taken the code
and fixed it up and published it here
<https://github.com/cloudant-labs/cloudant-follow>. This PR
<#51> proposes to depend on
the cloudant-follow fork, but I am proposing something different:
1. Bring the follow codebase into the Nano project (it is published
under an Apache-2.0 license)
2. Remove follow as a dependency
3. In the future refactor the follow code to be more in keeping with
the
Testing recommendations
This should be a drop-in replacement of the previous version. The only
difference is that the follow code lives in this repo and not as a
dependency.
I've brought in the follow tests too. Unfortunately they rely on
CouchDB1.6 so I've altered the testing sequence to run our core tests with
CouchDB2 then switch over to CouchDB1.6 for the follow tests.
See npm run coretests & npm run followtests in package.json.
GitHub issue number Related Pull Requests
See issue #28 <#28> & pull
#51 <#51>
Checklist
- [x ] Code is written and works correctly;
- Changes are covered by tests;
- [x ] Documentation reflects the changes;
------------------------------
You can view, comment on, or merge this pull request online at:
#53
Commit Summary
- bring follow library under Nano's wing
File Changes
- *M* README.md
<https://github.com/apache/couchdb-nano/pull/53/files#diff-0> (7)
- *A* follow.md
<https://github.com/apache/couchdb-nano/pull/53/files#diff-1> (210)
- *A* follow_tests/couch.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-2> (176)
- *A* follow_tests/follow.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-3> (258)
- *A* follow_tests/issues.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-4> (92)
- *A* follow_tests/stream.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-5> (574)
- *A* lib/follow/api.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-6> (35)
- *A* lib/follow/lib/feed.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-7> (694)
- *A* lib/follow/lib/index.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-8> (51)
- *A* lib/follow/lib/stream.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-9> (312)
- *M* lib/nano.js
<https://github.com/apache/couchdb-nano/pull/53/files#diff-10> (2)
- *M* package.json
<https://github.com/apache/couchdb-nano/pull/53/files#diff-11> (12)
- *A* scripts/run_couchdb16_on_travis.sh
<https://github.com/apache/couchdb-nano/pull/53/files#diff-12> (13)
- *A* scripts/stop_couchdb16_on_travis.sh
<https://github.com/apache/couchdb-nano/pull/53/files#diff-13> (7)
Patch Links:
- https://github.com/apache/couchdb-nano/pull/53.patch
- https://github.com/apache/couchdb-nano/pull/53.diff
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#53>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/AFU80jKor-M6mguFsMl-WbBn8T_ZEyszks5sPJnmgaJpZM4ObOSt>
.
|
@glynnbird FYI, any new code to be brought under an ASF repository (and thus ownership) directly must go through the code clearance process as outlined here:
It's not just a matter of "they licensed it AL v2.0 so we can just bring it into our repo." That may be true of dependencies (we can depend on compatibly licensed code with no extra paperwork) but it's not true when that code is going to live in our repositories. Now, that said, if Cloudant people have "maintained out" most of the original developers' changes, i.e. "git blame" doesn't show their contributions as still being in place, then we can waive that process under the outstanding Cloudant CCLA + jhs's outstanding ICLA. You'll need to do the legwork here to ensure that is the case.
|
Thanks for the clarification @wohali I'll make some enquiries. |
@glynnbird see apache/nano#265 for how we did it for nano |
Hi, Joan and Glynn. I authored Follow and I am already a CouchDB committer.
Does that help smooth the process?
…On Tue, Jul 18, 2017 at 11:56 AM, Joan Touzet ***@***.***> wrote:
@glynnbird <https://github.com/glynnbird> FYI, any new code to be brought
under an ASF repository (and thus ownership) directly must go through the
code clearance process as outlined here:
https://incubator.apache.org/guides/ip_clearance.html
It's not just a matter of "they licensed it AL v2.0 so we can just bring
it into our repo." That may be true of dependencies (we can depend on
compatibly licensed code with no extra paperwork) but it's not true when
that code is going to live in our repositories.
Now, that said, if Cloudant people have "maintained out" most of the
original developers' changes, i.e. "git blame" doesn't show their
contributions as still being in place, then we can waive that process under
the outstanding Cloudant CCLA + jhs's outstanding ICLA. You'll need to do
the legwork here to ensure that is the case.
- Joan with her "PMC hat" on.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#53 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AABEp6CPgN8faNSXMjcT2zfpl7bIDJIiks5sPNWPgaJpZM4ObOSt>
.
|
@jhs It helps a lot - but we should follow the ASF guidelines here. @janl 's recommendation to review apache/nano#265 to see how we did it for nano is wise. Collect a full list of all contributors and get them to sign CLAs. Anyone whose changes are "eclipsed" ( |
Thanks |
Overview
Currently Nano uses a the follow library as a dependency to handle changes feed subscription. Unfortunately,
follow
is not maintained. The nice people at Cloudant have taken the code and fixed it up and published it here. This PR proposes to depend on the cloudant-follow fork, but I am proposing something different:Testing recommendations
This should be a drop-in replacement of the previous version. The only difference is that the
follow
code lives in this repo and not as a dependency.I've brought in the
follow
tests too. Unfortunately they rely on CouchDB1.6 so I've altered the testing sequence to run our core tests with CouchDB2 then switch over to CouchDB1.6 for the follow tests.See
npm run coretests
&npm run followtests
in package.json.GitHub issue number
Related Pull Requests
See issue #28 & pull #51
Checklist