TermDiff
Compare ontologies in order to migrate between them.
Quick Start
Install the @lifeomic/termdiff
package.
npm install @lifeomic/termdiff
or
yarn add @lifeomic/termdiff
Import the diff
function:
const { diff } = require('termdiff');
Apply it to create a changeset:
const changeset = diff([{ 'foo': 'bar'}], [{'qux': 'baz'}])
changeset
will contain be an array of operations:
console.log(JSON.stringify(changeset, null, 2));
[
{
"op": "add",
"value": {
"qux": "baz"
}
},
{
"op": "remove",
"value": {
"foo": "bar"
}
}
]
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to release the project.
Prerequisites
What things you need to install the software and how to install them
Installing
Install all dependencies using yarn
:
yarn install
Testing
We use ava
for testing and enforce 100% code coverage using nyc
:
yarn test
Linting
Coding style is enforced through eslint
:
yarn lint
You can invoke the following to style your code:
yarn lint --fix
Deployment
Deployments are automated using Travis CI. Run the following to trigger a new release:
yarn version
See the section on versioning to learn more.
Built With
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Taylor Steinberg - Initial work - tdstein
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE file for details
Acknowledgments
- The output format was inspired by the JSON Patch proposal