This is an internal documentation. There is a good chance you’re looking for something else. See Disclaimer.
Frontend Repository Guidelines
Philosophy
Changes to the current version will be developed in separate feature branches. As soon as a feature is ready, a merge request is opened to rebase the feature branch into the master branch. Only self-contained features should be rebased to master to keep master stable and packages always ready to be published.
How to fix bugs in older versions see Maintaining older versions
Commit Message
Similar to Karma commit messages follow this convention:
<type>(<scope>): <subject>
<body>
Changelog: <feature>
Refs: <Jira Task Number>
Cherry-pick: Up
Message subject (first line)
First line must not be longer than 70 characters followed by a blank line.
<type> values
feat |
New feature |
fix |
Bug fix |
docs |
Changes to documentation or changelogs |
style |
Formatting etc.; no code change |
refactor |
Refactoring production code |
test |
Adding missing tests, refactoring tests; no production code change |
chore |
Updating webpack etc; no production code change |
<scope> values
If the changes affect a single package the scope is set to package name (e.g. login).
If the change is a global or difficult to assign to a single package the parentheses are omitted.
If changes affect the mono-repo itself, the scope is set to ‘tocco-client’. In such a case each package is released if the changelog is not empty.
Message body
Should have a list structure
Includes motivation for the change and contrasts with previous behavior
Uses the imperative, present tense: “change” not “changed” nor “changes”
Changelog
If a release relevant feature is added with the commit, a changelog line can be added.
Changelog: add feature XY
A commit can have several changelog entries but an entry needs to be on one single line. The changelog entries are used to generate the changelog of the corresponding <scope> package.
Refs
At the moment there is no interface between Jira and the new client code. But with Refs a commit can be linked to a task which might be helpful to comprehend a change.
Cherry-pick
Should only be set in commits for older versions. See Maintaining older versions