Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge MD5 to master #11

Merged
merged 111 commits into from
Oct 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
74c0cdd
Add basic jamfiles
mborland Oct 8, 2024
b6469b0
Add cmake support
mborland Oct 8, 2024
b992e40
Add table macro definitions
mborland Oct 8, 2024
8e426f9
Add rotr and rotl impls
mborland Oct 8, 2024
c40d30c
Add 32 bit swap endian function
mborland Oct 8, 2024
8e9e823
Add assertion macros
mborland Oct 8, 2024
14ca1e2
Add super basic md5 impl
mborland Oct 8, 2024
0f52a73
Add basic test set
mborland Oct 8, 2024
b5173b3
Fix conversion error
mborland Oct 8, 2024
53ab951
Add detection for string view
mborland Oct 8, 2024
35416f7
Add additional overloads
mborland Oct 8, 2024
235dd60
Add additional tests for new overloads
mborland Oct 8, 2024
da230bd
Add drone CI
mborland Oct 8, 2024
23e5c23
Add codecov to CI
mborland Oct 8, 2024
fdae13a
Add github actions CI
mborland Oct 8, 2024
2c57a4a
Add fuzzing
mborland Oct 8, 2024
9634af0
Add CMake install and subdir testing
mborland Oct 8, 2024
b826837
Add the seed corpus
mborland Oct 8, 2024
392aebc
Fix typo
mborland Oct 8, 2024
04e7d07
Add missing headers
mborland Oct 8, 2024
d42854f
Fix testing
mborland Oct 8, 2024
efbe3ce
Use std::transform instead of std::copy
mborland Oct 8, 2024
15db237
CI fixes
mborland Oct 8, 2024
3b05377
Add meta file
mborland Oct 8, 2024
6844616
Add PPC64LE QEMU run
mborland Oct 8, 2024
0e7ca0e
Add additional header
mborland Oct 8, 2024
32ea9d0
Additional casts
mborland Oct 8, 2024
0990f0e
Add outline of byte class
mborland Oct 9, 2024
d0fc1c5
Add inline constexpr
mborland Oct 9, 2024
7c7947c
Add CUDA capable type_traits
mborland Oct 9, 2024
3be97dc
Add starting concepts definitions
mborland Oct 9, 2024
82a69eb
Add concepts to byte
mborland Oct 9, 2024
385ce94
Add CUDA array
mborland Oct 9, 2024
1574e19
Add CUDA cstdint
mborland Oct 9, 2024
265ea28
Add more GPU macros
mborland Oct 9, 2024
bd9adb9
Add limits support
mborland Oct 9, 2024
01c12c0
Refactor naming
mborland Oct 9, 2024
ea8af67
Add cuda to bit utils
mborland Oct 9, 2024
5744e76
Make a byte CUDA capable
mborland Oct 9, 2024
e3a137b
Simplify body function
mborland Oct 9, 2024
12e6fd0
Add unreachable macro
mborland Oct 9, 2024
b9b0092
Add iter pair md5 impl
mborland Oct 9, 2024
2a07c51
Simplifications and corrections
mborland Oct 9, 2024
b51d280
Fix conversion warning
mborland Oct 9, 2024
20ccdda
Fix concept namespace
mborland Oct 9, 2024
ff7ffc4
Remove old impls
mborland Oct 10, 2024
24ec67d
Add generic strlen
mborland Oct 10, 2024
14177ef
Make separate cstddef header
mborland Oct 10, 2024
cd9d907
Implement our own array class
mborland Oct 10, 2024
1247873
Replace std::array calls with our array
mborland Oct 10, 2024
6d16853
Add fill
mborland Oct 10, 2024
4498379
Add missing type_trait
mborland Oct 10, 2024
9f324b7
Add concept for conversion
mborland Oct 10, 2024
510c53e
Add class based design
mborland Oct 10, 2024
1727a0a
Add class design test
mborland Oct 10, 2024
fdecb4b
Make array an aggregate
mborland Oct 10, 2024
98a5060
Remove bad concept
mborland Oct 10, 2024
2885eb9
Fix 0 length string
mborland Oct 11, 2024
5969bca
Improve testing methodology
mborland Oct 11, 2024
d1ffa8e
Add additional test sets
mborland Oct 11, 2024
fa72b53
Convert all usage to the class
mborland Oct 11, 2024
a7bf247
Add GPU markers
mborland Oct 11, 2024
5887c93
Switch test over to 8 bits instead of 32
mborland Oct 11, 2024
019f2c5
Add more const markers
mborland Oct 11, 2024
f777ff6
Always return an array of bytes
mborland Oct 11, 2024
5269ece
Unroll the hash loop
mborland Oct 11, 2024
241961a
Add pointer + len interface
mborland Oct 11, 2024
ebc10a3
Adding fuzzing to additional interfaces
mborland Oct 11, 2024
dd7e9ae
Move template pair into detail namespace so we can do u16, u32, etc
mborland Oct 11, 2024
efa66d0
Add std::uint8_t* interface
mborland Oct 15, 2024
6a300ae
Fuzz and test additional interface
mborland Oct 15, 2024
bb86064
Add random values testing
mborland Oct 15, 2024
2614614
Add missing codecov lib
mborland Oct 15, 2024
70e04ab
Exclude LCOV constexpr lines
mborland Oct 15, 2024
0dfd72c
Add piecewise parsing test
mborland Oct 15, 2024
21def38
Improve coverage
mborland Oct 15, 2024
d00484e
Merge pull request #2 from cppalliance/md5_2
mborland Oct 15, 2024
1588ba9
Add CUDA context definition of iterator traits
mborland Oct 15, 2024
5594e20
Fix type_traits use for module
mborland Oct 15, 2024
adb3bcd
Add RFC link
mborland Oct 15, 2024
cdac8d4
Add additional interfaces for wider character types
mborland Oct 15, 2024
b6eb2c7
Refactor location for random string generation
mborland Oct 15, 2024
3f31c7e
Add functions for generating wider cstrings
mborland Oct 15, 2024
2613f0a
Add testing of wider character types
mborland Oct 15, 2024
3cf7954
Add in tests from original RFC
mborland Oct 15, 2024
c02afaa
Exclude size_t rollover line
mborland Oct 15, 2024
19737ff
Merge pull request #5 from cppalliance/wchar
mborland Oct 15, 2024
afd76ad
Pass string views by value not reference
mborland Oct 16, 2024
8a7f230
Add basic file reader class
mborland Oct 16, 2024
3fdd3a3
Add interfaces for files
mborland Oct 16, 2024
e1b26fa
Fix conversion error
mborland Oct 16, 2024
2f4f5d8
Add testing of file interfaces
mborland Oct 16, 2024
47bec5f
Fix missing header
mborland Oct 16, 2024
08b30ba
Fix handling of multiple different test directories
mborland Oct 16, 2024
cb16e21
Fix coverage file system issues
mborland Oct 16, 2024
b88129b
Ignore coverage of path finding correct file name
mborland Oct 16, 2024
6b8d082
Disable files tests on windows platform
mborland Oct 16, 2024
b7f1c08
Merge pull request #8 from cppalliance/file
mborland Oct 16, 2024
8563f0b
Add standard gitignore
mborland Oct 16, 2024
27f9124
Add jamfile
mborland Oct 16, 2024
28eccea
Add docinfo-footer
mborland Oct 16, 2024
de60e93
Add copyright page
mborland Oct 16, 2024
c778175
Add reference section
mborland Oct 16, 2024
6e67676
Add overview shell
mborland Oct 16, 2024
19019c0
Add macro configuration section
mborland Oct 16, 2024
52d40d7
Allow conversion to std::array
mborland Oct 16, 2024
c626ad7
Add array docs
mborland Oct 16, 2024
d999317
Add API reference section
mborland Oct 16, 2024
56ee202
Add MD5 documentation
mborland Oct 16, 2024
f6b3fe0
Add overall doc file
mborland Oct 16, 2024
5e3a728
Merge pull request #9 from cppalliance/begin_docs
mborland Oct 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
420 changes: 420 additions & 0 deletions .drone.jsonnet

Large diffs are not rendered by default.

25 changes: 25 additions & 0 deletions .drone/drone.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
@REM Copyright 2022 Peter Dimov
@REM Distributed under the Boost Software License, Version 1.0.
@REM https://www.boost.org/LICENSE_1_0.txt

@ECHO ON

set LIBRARY=%1
set DRONE_BUILD_DIR=%CD%

echo $env:DRONE_STAGE_MACHINE

set BOOST_BRANCH=develop
if "%DRONE_BRANCH%" == "master" set BOOST_BRANCH=master
cd ..
git clone -b %BOOST_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
git submodule update --init tools/boostdep
xcopy /s /e /q %DRONE_BUILD_DIR% libs\%LIBRARY%\
python tools/boostdep/depinst/depinst.py -I example %LIBRARY%
cmd /c bootstrap
b2 -d0 headers

if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
b2 -j3 libs/%LIBRARY%/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% variant=debug,release embed-manifest-via=linker
32 changes: 32 additions & 0 deletions .drone/drone.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/bin/bash

# Copyright 2022 Peter Dimov
# Distributed under the Boost Software License, Version 1.0.
# https://www.boost.org/LICENSE_1_0.txt

set -ex
export PATH=~/.local/bin:/usr/local/bin:$PATH
uname -a
echo $DRONE_STAGE_MACHINE

DRONE_BUILD_DIR=$(pwd)

BOOST_BRANCH=develop
if [ "$DRONE_BRANCH" = "master" ]; then BOOST_BRANCH=master; fi

cd ..
git clone -b $BOOST_BRANCH --depth 1 https://github.com/boostorg/boost.git boost-root
cd boost-root
git submodule update --init tools/boostdep
mkdir -p libs/$LIBRARY
cp -r $DRONE_BUILD_DIR/* libs/$LIBRARY
python tools/boostdep/depinst/depinst.py -I example $LIBRARY
./bootstrap.sh
./b2 -d0 headers

if [[ $(uname) == "Linux" ]]; then
echo 0 | sudo tee /proc/sys/kernel/randomize_va_space
fi

echo "using $TOOLSET : : $COMPILER ;" > ~/user-config.jam
./b2 -j3 libs/$LIBRARY/test toolset=$TOOLSET cxxstd=$CXXSTD variant=debug,release ${ADDRMD:+address-model=$ADDRMD} ${UBSAN:+undefined-sanitizer=norecover debug-symbols=on} ${ASAN:+address-sanitizer=norecover debug-symbols=on} ${CXXFLAGS:+cxxflags=$CXXFLAGS} ${CXXSTDDIALECT:+cxxstd-dialect=$CXXSTDDIALECT} ${LINKFLAGS:+linkflags=$LINKFLAGS}
Loading
Loading