Table of Contents generated with DocToc
dav uses npm to manage external dependencies. External npm modules get bundled into the browser js binary with the (excellent) browserify utility. dav uses the DOMParser
and XMLHttpRequestWrapper
web apis (to parse xml and send http requests). All of the async library operations use es6 Promises.
///////////////////////////////////////
/ suite / command /
///////////////////////////////////////
/ integration / make test-integration /
///////////////////////////////////////
/ lint / make lint /
///////////////////////////////////////
/ unit / make test-unit /
///////////////////////////////////////
Things to note:
- As of 1.1.1, all of the tests run dav via nodejs. There are no browser tests (yet).
- You can add helpful debug logs to test output with the
DEBUG
environment variable.- Filter logs by setting
DEBUG=dav:*
,DEBUG=dav:request:*
, etc.
- Filter logs by setting
- Integration tests run against sabredav
- Update
package.json
to reflect the new version. Use semver to help decide what new version number is best. - If there are changes to the public api, document them in the README. Then regenerate the
README.md
table of contents withmake toc
. - Add a new entry to
HISTORY.md
with the new version number and a description of the changeset. Regenerate theHISTORY.md
table of contents withmake toc
. - Commit the changes to
package.json
,HISTORY.md
, and (perhaps)README.md
. Push to GitHub. - Run
make && npm publish
. - Create a new GitHub release named
v.{MAJOR}.{MINOR}.{PATCH}
with a description of the changeset. Upload the freshly generated zipballdav.zip
.