New features should go into the
develop branch. If a new feature is substantial and requires more than a few commits then it should be developed in its own branch, then merged with --no-ff.
Fixes should go into the
Feature releases are currently 1.x. They are released "when ready". Any fixes from the
fixes branch should be merged in.
Bug fix releases are 1.x.y. They should only include bug fixes, not any behaviour changes. Bug fix releases should be made on a fairly regular basis if bugs have been fixed. Approximately once per month is the suggested interval.
Compatibility is very important to the mosquitto project. Changes to the libmosquitto API/ABI should not be made without some thought. If breaking changes are to be made, a review of the current API is suggested in case any other breaking changes could be made at the same time.