daisy/CONTRIBUTING.MD

1.2 KiB

Contribution guidelines for Daisy

Pull requests

All PRs should merge to dev. See "branching" below.

Versioning

Daisy uses semantic versioning, which looks like maj.min.patch. In short:

  • maj: Incremented on large, incompatible changes
  • min: Incremented on new features
  • patch: Incremented on bugfixes

Whenever one of the above fields is incremented, all sub-fields are reset to zero. When min is incremented, patch is set to zero.

Branching

Daisy uses a branch model much like the one described here.

  • master: 1 commit = 1 release. This is always a merge comit from dev, and is always tagged with a version.
  • dev: main development branch. Never deleted. Most work happens here.
  • features: temporary branches pulled from dev and merged to dev for larger features.
  • Always merge with git's --no-ff option for a more detailed history.

Releases

What to do

  • Merge into master (git merge --no-ff dev)
  • Tag merge commit on master (git tag -a v1.0.0 -m "Version 1.0.0")
  • cargo publish
  • Update web demo & pull server (make docker)
  • Update aur package
  • Update default.nix (test with make nix)