What's Changed
- CI workflows for building, formatting, and sca by @alvarocleite in #1
- Feature/enigma machine config by @alvarocleite in #2
- Fix clang-tidy warnings and improve CI reporting by @alvarocleite in #3
- Establish contribution guidelines and PR template by @alvarocleite in #4
- Correctly deduce iterator type by @alvarocleite in #6
- Add string header to PlugBoard.cpp by @alvarocleite in #7
- EnigmaMachineConfig implemented and code improvements by @alvarocleite in #5
- Configure Doxygen with architecture diagrams and Deployment to GH Pages by @alvarocleite in #8
- Configure Doxygen with architecture diagrams and Deployment to GH Pages by @alvarocleite in #9
- Add abstraction for loading by @alvarocleite in #10
- Add abstraction for loading by @alvarocleite in #12
- Implement observer pattern for state notifications by @alvarocleite in #14
- Implement observer pattern for state notifications and Improve configuration mechanisam by @alvarocleite in #15
- Improve architecture documentation and diagrams by @alvarocleite in #16
- Improve architecture documentation and diagrams by @alvarocleite in #17
- fix diagram transparency and centering in docs by @alvarocleite in #19
- Improve whitespace consistency in Architecture.md by @alvarocleite in #20
- Fix diagram transparency and centering in docs by @alvarocleite in #21
- Fix doc workflow, fix PlantUML syntax errors, and add local Doxygen build instructions to docs by @alvarocleite in #22
- Fix doc workflow, fix PlantUML syntax errors, and add local Doxygen build instructions to docs by @alvarocleite in #23
- fix(ci): wildcard pattern for PlantUML diagram generation by @alvarocleite in #25
- wildcard pattern for PlantUML diagram generation by @alvarocleite in #26
- Refactor: directory reorganize by @alvarocleite in #27
- Refactor: directory reorganize by @alvarocleite in #28
- Add support for Enigma Core eb imported as library by @alvarocleite in #29
- Add support for Enigma Core be imported as library by @alvarocleite in #30
- Implement proxy observer pattern in EnigmaMachine by @alvarocleite in #31
- Implement proxy observer pattern in EnigmaMachine by @alvarocleite in #32
- Renaming Pair_t to PlugBoardPair and moving its definition to a separate header file by @caliph1998 in #37
- Fix static analysis warnings by @caliph1998 in #39
- adding const qualifier to const class methods by @caliph1998 in #38
- Add Enigma rotor stepping (double-stepping support) for N Rotors by @CaptainLevi25 in #36
- Resolve Windows build errors and naming conflicts by @alvarocleite in #41
- Feature/log warning during build by @CaptainLevi25 in #40
- Addressing Issues #11 , #13 , #18 , #33 , #35 by @alvarocleite in #42
- add project roadmap and reference in README by @alvarocleite in #43
- add project roadmap and reference in README by @alvarocleite in #44
- Integrate Google Benchmark - performance profiling by @alvarocleite in #47
- Initialize architectural decision records (adrs) by @alvarocleite in #48
- establish v1.0 performance and memory baselines by @alvarocleite in #49
- Benchmark and ADRs by @alvarocleite in #50
- implement shared library and strict facade encapsulation by @alvarocleite in #51
- implement shared library and strict facade encapsulation by @alvarocleite in #52
- Implement install rules and asset path resolution by @alvarocleite in #53
- Implement install rules and asset path resolution by @alvarocleite in #54
- Feature/name modernizations by @curtainsmall in #64
- Refactor: add const-qualifier to methods by @caliph1998 in #65
- Modernize naming conventions, and implement
constcorrectness across Core Engine by @alvarocleite in #66 - Use of modern ranges + Default ctor for RotorBox by @caliph1998 in #67
- Implement branchless signal path and update docs by @alvarocleite in #68
- Use of modern ranges + Default ctor for RotorBox + Implement branchless signal path + update docs by @alvarocleite in #69
- Integrate Clang Sanitizers (ASan, UBSan, MSan) by @alvarocleite in #70
- Integrate valgrind for memory leak detection by @alvarocleite in #71
- Integrate cppcheck for enhanced static analysis by @alvarocleite in #72
- Implement strong typing, logging PAL, and buffer safety by @alvarocleite in #73
- optimize initialization and reduce heap allocations by @alvarocleite in #74
- implement pre-commit hooks by @alvarocleite in #75
- Add Enigma I assets and cryptographic test vectors by @alvarocleite in #76
- Add PlantUML visualizations for Enigma mechanics by @alvarocleite in #77
- Run documentation workflow on pull requests by @alvarocleite in #78
- Pre-commit hooks to run on protected branches - CI by @alvarocleite in #80
- Features for v0.1.0 by @alvarocleite in #79
- Fix broken diagrams and clean up build process by @alvarocleite in #81
- Fix broken diagrams and clean up build process by @alvarocleite in #82
- Fefine roadmap by @alvarocleite in #83
- Fefine roadmap by @alvarocleite in #84
- Add code coverage - gcov/lcov and Codecov integration by @alvarocleite in #85
- Add property-based testing with RapidCheck (60+ tests) by @alvarocleite in #86
- Release v0.1.0 - Phase 1 Complete by @alvarocleite in #88
- Add property-based testing with RapidCheck and Release v0.1.0 - Phase 1 Complete by @alvarocleite in #87
New Contributors
- @alvarocleite made their first contribution in #1
- @caliph1998 made their first contribution in #37
- @CaptainLevi25 made their first contribution in #36
- @curtainsmall made their first contribution in #64
Full Changelog: https://github.com/alvarocleite/EnigmaMachineCore/commits/v0.1.0