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 XMLHttpRequest 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
DEBUGenvironment variable.- Filter logs by setting
DEBUG=dav:*,DEBUG=dav:test:*, etc.
- Filter logs by setting
- Integration tests run against sabredav
- Update
package.jsonto 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.mdtable of contents withmake toc. - Add a new entry to
HISTORY.mdwith the new version number and a description of the changeset. Regenerate theHISTORY.mdtable 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.