Skip to content
/ bde Public

Base Decoder and Encoder in C/C++ based on RFC4648

License

Notifications You must be signed in to change notification settings

dmg0345/bde

Folders and files

NameName
Last commit message
Last commit date

Latest commit

46c0e78 · Mar 6, 2024

History

33 Commits
Oct 30, 2023
Oct 30, 2023
Oct 30, 2023
Mar 6, 2024
Mar 6, 2024
Mar 6, 2024
Mar 6, 2024
Oct 30, 2023
Oct 30, 2023
Oct 30, 2023
Oct 30, 2023
Oct 31, 2023
Oct 31, 2023
Oct 7, 2023
Nov 5, 2023
Oct 30, 2023
Oct 30, 2023
Nov 5, 2023

Repository files navigation

Base Decoder and Encoder

Base Decoder and Encoder, or bde for short, is a C/C++ library that decodes and encodes data in different bases.

Based on RFC4648, bde is fully tested and documented and it is MISRA C:2012 compliant.

Refer to the documentation here for details.

Build and Development

Clone the repository as:

git clone https://github.com/dmg0345/bde

Example commands to build the library and run the tests are provided below:

cmake -C "./other/cmake/preload/release.cmake" -S . -B "./.cmake_build"
cmake --build "./.cmake_build" -j --target all
cmake --build "./.cmake_build" -j --target install
ctest --test-dir "./.cmake_build"

Find the base Docker image for the development container at DockerHub. To develop using devcontainers and Visual Studio Code:

docker pull dmg00345/bde:latest
./manage.ps1 run

Create a release

To generate a release follow the steps below:

  1. Create a release branch from develop branch, e.g. release/X.Y.Z.
  2. Update version in conf.py file and in version.cmake file.
  3. Run cmake with -DCFG_TAG:BOOL=ON to tag all the relevant files.
  4. Create pull request from release branch to master with the changes with title Release X.Y.Z.
  5. When merged in master create release and tag from Github, review production workflow passes for deployment.
  6. Delete the release/X.Y.Z branch.