Branch merge procedure - spectrumbranch/retro-translation-project GitHub Wiki

Merging topic branches into main

Checks and tests (nox)

Application and library checks

$ nox

nox > Session tests was successful.
nox > Ran multiple sessions:
nox > * lint: success
nox > * typing: success
nox > * tests: success

Image data set tests

To run these slower tests in isolation: $ nox -s data_tests

To run them along with the other checks above: $ nox -t all

These tests are distinct from the tests in the previous section. The results must be identical both when run from a local WSL installation, as well as when run over SSH from a remote machine.

This is the expected output as of 91acff5:

========== 200 failed, 46 passed in 615.65s (0:10:15) ==========

All sessions must show a success result.

Manual user interface tests

mortar tesseract

WSL

$ mortar tesseract "/mnt/c/Users/ChillRuns/share/mortar/tests/data/mort/capture_00.png" || echo FAIL

SSH

$ mortar tesseract tests/data/mort/capture_00.png || echo FAIL

The program must run without error and the text FAIL must not be shown after its output.

mortar video

$ mortar video || echo FAIL

The program must run without error and the text FAIL must not be shown after its output.

mortar

Make sure the application is working by running at least one image example and at least one pipeline example.

$ mortar shell src/mortar/examples/image/gray.py
$ mortar shell src/mortar/examples/pipeline/basic.py

In each case, the script must complete without error and must open an image viewer with the resulting image.

Documentation

A public identifier is one that is not prefixed with _. Docstrings must be in place for all public identifiers outside of function/local scope.

git merge

Squash related commits

Squash multiple commits that achieve the same functional change into a single commit. For example, if a commit is a small fix or correction to a previous commit, squash the second commit into the first.

Final rebase and merge

Rebase the branch onto the main branch to preserve a linear commit history.