-
make an issue
-
fork the repository on GitHub
-
create a feature branch for that issue from the develop branch to base your work
-
see also openvi
-
use style as indicated by .clang-format
-
use cmake file style as indicated by gersemi
-
use STL whenever possible
-
doxy document sources
API documentation is generated from the sources using Doxygen
-
translation is done using xgettext by invoking po-sync.sh
-
to translate wex copy the wex.pot file to the correct language po file, and fill in the translation.
-
The place where to put your po files can be found by adding -l command-line switch. You can also test other languages using the special Language config item, e.g. setting it to french allows you to test french translation. Normally you check the current locale by running locale on the command-line. Running locale -a shows all your available locales, if your locale is not present, add it using locale-gen (provided it is in the list of all locales (/usr/share/i18n/SUPPORTED). Then you do export LANG=..., or change the /etc/default/locale.
-
To add translation files add -l switch to build-gen
-
At GitHub some code analysers will do this, it is also possible to do some local checks, these are invoked using the analyse target:
ninja analyse-
when updating one of the GitHub workflows yml files, use e.g yamlchecker to check the changed file
-
add a test (and update sample)
./build-gen.sh -s -t- test coverage can be generated by add -c switch to build-gen
This requires
lcovandgenhtmltools (part of lcov). Also, when pushing commits, test coverage is done automatically using the GitHub workflow ci-ubuntu.yml.
./build-gen.sh -c -t
ninja lcov-prep
ctest -VV
ninja lcov- asan Leak Sanitizer can be used by adding -a switch to build-gen
./build-gen.sh -a -t
export ASAN_OPTIONS=detect_leaks=1,detect_container_overflow=0
./test/core/wex-test-core- Do a pull request from the feature branch to the develop branch