Commit Graph

29 Commits

Author SHA1 Message Date
Stefan Bratanov 9b91f3b832
Small cleanups (#202) 2023-03-10 11:32:13 -06:00
Justin Traglia ef3c78ee9b
Add c_kzg_calloc function (#130)
* Add c_kzg_calloc function

* Update .gitignore & remove now unnecessary checks

* Add some tests

* Free memory in tests
2023-02-12 21:29:29 +00:00
Justin Traglia 5c1128e380
Add profiling (#124)
* Start to add profiling

* Add include flags for macos

* Add profiling funcs for the other funcs

* Add profiling readme

* Move sentence

* Add warning section

* Make run_profiler phony

* Delete extra empty lines

* Add line about box size

* No more dropped nodes/edges

* Remove function focus

* Add sha256 benchmark

* Benchmark sha256 with different sizes

* Clean things up a little
2023-02-10 20:33:32 +00:00
Justin Traglia dc28b03f9d
Cleanup the Makefile (#119)
* Cleanup the Makefile some

* Fix compiler error

* Fix compiler errors in tests

* Fix problems on Linux

* Add test_c_kzg_4844_cov to gitignore

* Add back closing brace for cpp

* Split clean rule into two lines

* Not echo commands when running them

* Allow other compilers to be used

* Update comment

* Only allow clang, actually
2023-02-08 17:35:33 +00:00
Justin Traglia 1e7353c435
Run clang-format on test code (#108)
* Run clang-format on test code

* Fix format test

* Don't pack arguments

* Use more descriptive variable names
2023-02-01 14:48:29 +00:00
Justin Traglia 471245001d
Generate coverage report (#106)
* Add check for test coverage

* Add coverage html report

* Install llvm

* Save coverage report before doing check

* Update coverate report path

* Remove coverage check

* Remove coverage report in make clean

* Remove extra CFLAG
2023-02-01 07:58:52 +00:00
George Kadianakis 98aa54a996
Add a basic unittest framework + a compute KZG proof test (#96)
* Add tinytest.h testing framework

from https://github.com/joewalnes/tinytest/

* Add a basic compute_kzg_proof() test
2023-01-30 13:40:12 +00:00
Pawan Dhananjay 2c151d7f7e
Rust bindings (#4)
* working build

* Move bindings.rs to root directory

* tidy build script

* Add initial rust safe bindings

* import fewer c stuff in bindings

* remove unnecessary blst definitions in bindings

* remove bindgen build dependency

* improve interface

* Remove more stuff from bindings

* Add a simple test

* Update error type

* Update verify_kzg_proof interface

* Return array instead of vec

* link with no-pie

* impl Send and Sync for KzgSettings; change mut pointers to const

* Remove no-pie linking

* Make FIELD_ELEMENTS_PER_BLOB a compile time variable

* Add load_trusted_setup method

* Cleanup

* Add failure case to bytes_to_bls_field

* Fix conditional compilation and ensure canonical blobs in test

* Add test vectors

* Remove blobk_commitment test case

* Change function signature

* Copy and delete instead of rename in build script

* Make consts public

* Add error conditions for invalid trusted setup

* Lowercase renamings

* Make blob public

* Add benchmarks

* Run test vectors only for mainnet spec

* Add README

* clippy

* Add rust CI checks

* actually add CI checks

* Fix CI

* Fix workflow again
2023-01-12 17:50:12 +00:00
dancoffman 26f5178d06
git ignore xcode autogenerated file 2022-11-07 14:35:10 -08:00
dancoffman 8ca4fd9e83
Merge branch '4844_3038' into dgcoffman/nodejs-bindings 2022-11-04 11:41:17 -07:00
Ramana Kumar cd9d142079
Tidy away some more unused things 2022-11-02 20:29:20 +00:00
dancoffman fdcab9d035
Install node-gyp with yarn 2022-11-01 22:22:14 -07:00
Ramana Kumar d3465ec8d4
Remove some unused gitignore 2022-11-01 14:37:00 +00:00
Ramana Kumar db402fcdd4
Update gitignore 2022-10-10 23:32:41 +01:00
Ramana Kumar f5e95c497c
Start investigating swigless csharp 2022-10-04 19:45:12 +01:00
Ramana Kumar aa60016dd2
Start on Python interface without SWIG 2022-10-02 00:52:12 +01:00
Ramana Kumar 38acde184a
Suffix swig stuff and update gitignore 2022-10-01 21:39:15 +01:00
Ramana Kumar be3f0c22cf
Play around with some testing of the min interface 2022-09-30 07:21:48 +01:00
Ramana Kumar 560127f1f5
Add some rudimentary Python access + example 2022-09-19 15:40:17 +01:00
Ramana Kumar 8eb99bcc96
Initial attempt to swig for python 2022-09-19 15:40:15 +01:00
Ben Edgington f6b1d0ff57 Refactor unit testing 2021-07-03 13:55:54 +01:00
Ben Edgington ba81164330
Implements fast division for long divisors (#7) 2021-06-28 12:42:14 +01:00
Ben Edgington 37021b9653 Use Blst's multiscalar multiplication for commitments 2021-06-22 19:52:44 +01:00
Ben Edgington 7b023e10c4 The beginnings of documentation, yay 2021-02-11 11:43:08 +00:00
Ben Edgington f476a0f6ce Add FK20 single proofs 2021-02-10 11:55:38 +00:00
Ben Edgington b9bc4bb496 Add benchmarking for FFTs 2021-02-07 20:58:19 +00:00
Ben Edgington 80c513f653 Apply formatting rules 2021-02-07 14:19:25 +00:00
Ben Edgington e32dc11697 Exclude VSCode stuff 2021-02-05 08:47:47 +00:00
Ben Edgington 32340d46a1 Initial commit 2021-02-01 20:15:45 +00:00