Contributing to GeoCourse
Thanks for helping. GeoCourse is a draft, so questions and real-world files are as useful as patches.
Ways to help
- Ride or write a file and report what breaks. Open an issue with the file, or a minimal part of it, and what you expected.
- Spec questions and changes. Open an issue first, quoting the section. Say what a reader or writer would do differently. Normative changes need agreement in the issue before a pull request.
- Registry names. See the registry page.
- Validator and test files. Pull requests welcome. Every new rule check comes with an invalid test file.
Rules for changes
- A draft version of the spec and schema (
spec/<version>/,schema/<version>/) may change until it is declared released. After that it is frozen and fixes go into the next version; typos in non-normative text are the only exception. - A new test file is generated by
scripts/make-tests.ts, not written by hand, and listed inmanifest.json. Runnpm run make-teststhennpm test. - Keep the validator free of runtime dependencies.
- Every source file starts with an SPDX licence header.
- Add a line to
CHANGELOG.mdunder "Unreleased".
Develop
npm install
npm test # build, then run validator and schema against tests/0.1
npm run site # build the site into _site/
Licence of contributions
By contributing you agree that your contribution is licensed under the licence of the part you change: CC BY 4.0 for spec/, CC0 1.0 for tests/ and registry/, Apache-2.0 for everything else.