Skip to content

Commit

Permalink
Update crypto3, actor. New multiprecision. Update CI Boost to 1.83
Browse files Browse the repository at this point in the history
  • Loading branch information
x-mass committed Jun 4, 2024
1 parent 580b0a3 commit 60af5f5
Show file tree
Hide file tree
Showing 9 changed files with 21 additions and 20 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ concurrency:
cancel-in-progress: true

env:
BOOST_VERSION: "1.78.0"
BOOST_VERSION: "1.80.0"
CAA_ARTIFACT_NAME: circuits-and-assignments
TO_ARTIFACT_NAME: transpiler-output
INTEGRATION_TESTING_TARGETS: |
Expand Down Expand Up @@ -143,7 +143,7 @@ jobs:
(needs.prepare-targets.result == 'success' || needs.prepare-targets.result == 'skipped')
strategy:
matrix:
cpp-compiler: [ g++, clang++ ]
cpp-compiler: [ clang++ ] # TODO: g++ built binary can't find libboost_thread-mt-x64.so.1.83.0 in runtime. Nix build will fix it
build-type: [ Release ]
fail-fast: false
outputs:
Expand Down Expand Up @@ -234,6 +234,7 @@ jobs:
# https://github.com/MarkusJx/prebuilt-boost/blob/main/versions-manifest.json
platform_version: ${{ steps.strings.outputs.platform-version }}
boost_install_dir: ${{ steps.strings.outputs.dependencies-dir }}
link: static+shared

- name: Configure CMake
env:
Expand All @@ -246,8 +247,7 @@ jobs:
-G "Unix Makefiles" \
-B build \
-DCMAKE_CXX_COMPILER=${{ matrix.cpp-compiler }} \
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
-DBoost_ARCHITECTURE=-x64
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}
- name: Build proof-producer
working-directory: ${{ steps.strings.outputs.build-dir }}
Expand Down Expand Up @@ -316,7 +316,7 @@ jobs:
${{ steps.strings.outputs.artifact-dir }}/transpiler_output_*
- name: Upload .deb package
if: matrix.cpp-compiler == 'g++' && matrix.build-type == 'Release'
if: matrix.cpp-compiler == 'clang++' && matrix.build-type == 'Release'
uses: actions/upload-artifact@v4
with:
name: proof-producer.deb
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release_linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
CONTAINER_TMP: /opt/
HOST_TMP: /home/runner/work/_temp/
DEBIAN_FRONTEND: noninteractive
BOOST_VERSION: "1.83.0"
BOOST_VERSION: "1.80.0"

container:
image: ubuntu:22.04
Expand Down
12 changes: 5 additions & 7 deletions .github/workflows/reusable-generate-proofs-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ on:
type: string
description: "Version of Boost to install"
required: false
default: '1.78.0'
default: '1.80.0'

outputs:
artifact-name:
Expand All @@ -49,7 +49,7 @@ jobs:
runs-on: ubuntu-22.04
strategy:
matrix:
cpp-compiler: [ g++, clang++ ]
cpp-compiler: [ clang++ ] # TODO: g++ built binary can't find libboost_thread-mt-x64.so.1.83.0 in runtime. Nix build will fix it
build-type: [ Release ]
fail-fast: false
outputs:
Expand Down Expand Up @@ -133,6 +133,7 @@ jobs:
# https://github.com/MarkusJx/prebuilt-boost/blob/main/versions-manifest.json
platform_version: ${{ steps.strings.outputs.platform-version }}
boost_install_dir: ${{ steps.strings.outputs.dependencies-dir }}
link: static+shared

- name: Configure CMake
env:
Expand All @@ -145,8 +146,7 @@ jobs:
-G "Unix Makefiles" \
-B build \
-DCMAKE_CXX_COMPILER=${{ matrix.cpp-compiler }} \
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }} \
-DBoost_ARCHITECTURE=-x64
-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}
- name: Build proof-producer
working-directory: ${{ steps.strings.outputs.build-dir }}
Expand Down Expand Up @@ -180,11 +180,9 @@ jobs:
- name: Upload circuits, assignments and proofs artifact
# Only from a single matrix configuration. Assuming everyone produce the same results if not failed.
if: matrix.cpp-compiler == 'g++' && matrix.build-type == 'Release'
if: matrix.cpp-compiler == 'clang++' && matrix.build-type == 'Release'
uses: actions/upload-artifact@v3
with:
name: ${{ steps.set-artifact-name.outputs.artifact-name }}
path: |
${{ steps.strings.outputs.artifact-dir }}
7 changes: 6 additions & 1 deletion bin/proof-generator/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,18 @@ function(setup_proof_generator_target)
endforeach()
endif()


set_target_properties(${ARG_TARGET_NAME} PROPERTIES
LINKER_LANGUAGE CXX
EXPORT_NAME ${ARG_TARGET_NAME}
CXX_STANDARD 17
CXX_STANDARD_REQUIRED TRUE)

if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
target_compile_options(${ARG_TARGET_NAME} PRIVATE "-fconstexpr-steps=2147483647")
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
target_compile_options(${ARG_TARGET_NAME} PRIVATE "-fconstexpr-ops-limit=4294967295")
endif ()

target_include_directories(${ARG_TARGET_NAME} PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
Expand Down
2 changes: 0 additions & 2 deletions bin/proof-generator/include/nil/proof-generator/prover.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
#include <sstream>

#include <boost/log/trivial.hpp>
#include <boost/test/unit_test.hpp> // TODO: remove this. Required only because of an incorrect assert check in zk

#include <nil/crypto3/algebra/fields/arithmetic_params/pallas.hpp>
#include <nil/crypto3/marshalling/zk/types/commitments/eval_storage.hpp>
Expand All @@ -35,7 +34,6 @@
#include <nil/crypto3/marshalling/zk/types/plonk/assignment_table.hpp>
#include <nil/crypto3/marshalling/zk/types/plonk/constraint_system.hpp>
#include <nil/crypto3/math/algorithms/calculate_domain_set.hpp>
#include <nil/crypto3/multiprecision/cpp_int.hpp>
#include <nil/crypto3/zk/snark/arithmetization/plonk/constraint_system.hpp>
#include <nil/crypto3/zk/snark/arithmetization/plonk/params.hpp>
#include <nil/crypto3/zk/snark/systems/plonk/placeholder/detail/placeholder_policy.hpp>
Expand Down
2 changes: 1 addition & 1 deletion libs/actor/container
Submodule container updated 96 files
+0 −3 .gitmodules
+1 −10 CMakeLists.txt
+0 −3 cmake/modules/.gitattributes
+0 −50 cmake/modules/.travis.yml
+0 −7 cmake/modules/CMakeLists.txt
+0 −29 cmake/modules/README.md
+0 −38 cmake/modules/appveyor.yml
+0 −333 cmake/modules/doc/conf.py
+0 −14 cmake/modules/doc/index.rst
+0 −281 cmake/modules/doc/make.bat
+0 −2 cmake/modules/doc/requirements.txt
+0 −319 cmake/modules/doc/src/Building.rst
+0 −28 cmake/modules/doc/src/CMDeploy.rst
+0 −31 cmake/modules/doc/src/CMExport.rst
+0 −15 cmake/modules/doc/src/CMIgnorePackage.rst
+0 −25 cmake/modules/doc/src/CMInstallTargets.rst
+0 −59 cmake/modules/doc/src/CMPkgConfig.rst
+0 −65 cmake/modules/doc/src/CMProperties.rst
+0 −33 cmake/modules/doc/src/CMSetupVersion.rst
+0 −89 cmake/modules/doc/src/CMTest.rst
+0 −89 cmake/modules/doc/src/Intro.rst
+0 −15 cmake/modules/doc/src/Modules.rst
+0 −144 cmake/modules/share/modules/cmake/CMConfig.cmake
+0 −48 cmake/modules/share/modules/cmake/CMDeploy.cmake
+0 −147 cmake/modules/share/modules/cmake/CMExport.cmake
+0 −87 cmake/modules/share/modules/cmake/CMFuture.cmake
+0 −6 cmake/modules/share/modules/cmake/CMIgnorePackage.cmake
+0 −43 cmake/modules/share/modules/cmake/CMInstallTargets.cmake
+0 −250 cmake/modules/share/modules/cmake/CMPkgConfig.cmake
+0 −98 cmake/modules/share/modules/cmake/CMProperties.cmake
+0 −52 cmake/modules/share/modules/cmake/CMSetupVersion.cmake
+0 −232 cmake/modules/share/modules/cmake/CMTest.cmake
+0 −11 cmake/modules/share/modules/cmake/CMToSnakeCase.cmake
+0 −10 cmake/modules/share/modules/cmake/version.hpp
+0 −43 cmake/modules/test/CMakeLists.txt
+0 −21 cmake/modules/test/basicapp/CMakeLists.txt
+0 −6 cmake/modules/test/basicapp/main.cpp
+0 −12 cmake/modules/test/checkprop/CMakeLists.txt
+0 −1 cmake/modules/test/fail/simple-test.cmake
+0 −15 cmake/modules/test/findpackagecheck/CMakeLists.txt
+0 −4 cmake/modules/test/findpackagecheck/main.cpp.in
+0 −21 cmake/modules/test/libbasic/CMakeLists.txt
+0 −6 cmake/modules/test/libbasic/main.cpp
+0 −2 cmake/modules/test/libbasic/test.cpp
+0 −21 cmake/modules/test/libbasicnamespace/CMakeLists.txt
+0 −5 cmake/modules/test/libbasicnamespace/main.cpp
+0 −2 cmake/modules/test/libbasicnamespace/test.cpp
+0 −51 cmake/modules/test/libsimple/CMakeLists.txt
+0 −7 cmake/modules/test/libsimple/compiletest.cpp
+0 −6 cmake/modules/test/libsimple/compiletestwillfail.cpp
+0 −22 cmake/modules/test/libsimple/include/simple.h
+0 −5 cmake/modules/test/libsimple/test.cpp
+0 −6 cmake/modules/test/libsimple/testwillfail.cpp
+0 −29 cmake/modules/test/libsimplecustomname/CMakeLists.txt
+0 −7 cmake/modules/test/libsimplecustomname/compiletest.cpp
+0 −8 cmake/modules/test/libsimplecustomname/include/simple.h
+0 −5 cmake/modules/test/libsimplecustomname/test.cpp
+0 −28 cmake/modules/test/libsimplenamespace/CMakeLists.txt
+0 −7 cmake/modules/test/libsimplenamespace/compiletest.cpp
+0 −12 cmake/modules/test/libsimplenamespace/include/simple.h
+0 −5 cmake/modules/test/libsimplenamespace/test.cpp
+0 −32 cmake/modules/test/parseversion/CMakeLists.txt
+0 −7 cmake/modules/test/parseversion/compiletest.cpp
+0 −10 cmake/modules/test/parseversion/include/simple.h
+0 −8 cmake/modules/test/parseversion/include/version.h
+0 −5 cmake/modules/test/parseversion/test.cpp
+0 −6 cmake/modules/test/pass/basic.cmake
+0 −15 cmake/modules/test/pass/defaultproperties.cmake
+0 −1 cmake/modules/test/pass/parseversion.cmake
+0 −1 cmake/modules/test/pass/properties.cmake
+0 −4 cmake/modules/test/pass/simple-shared.cmake
+0 −3 cmake/modules/test/pass/simple-test-build.cmake
+0 −3 cmake/modules/test/pass/simple-test-shared.cmake
+0 −3 cmake/modules/test/pass/simple-test.cmake
+0 −4 cmake/modules/test/pass/simple.cmake
+0 −2 cmake/modules/test/pass/simplecustomname.cmake
+0 −2 cmake/modules/test/pass/simplenamespace.cmake
+0 −5 cmake/modules/test/pass/superproject.cmake
+0 −46 cmake/modules/test/pkgconfigcheck/CMakeLists.txt
+0 −67 cmake/modules/test/properties/CMakeLists.txt
+0 −8 cmake/modules/test/properties/include/simple.h
+0 −5 cmake/modules/test/properties/nowarnings.cpp
+0 −20 cmake/modules/test/properties/rtti.cpp
+0 −5 cmake/modules/test/properties/test.cpp
+0 −6 cmake/modules/test/properties/throw.cpp
+0 −9 cmake/modules/test/properties/warnings.cpp
+0 −26 cmake/modules/test/simpletest/CMakeLists.txt
+0 −1 cmake/modules/test/simpletest/include/simple.h
+0 −4 cmake/modules/test/simpletest/simple.cpp
+0 −5 cmake/modules/test/simpletest/test.cpp
+0 −7 cmake/modules/test/simpletest/test/CMakeLists.txt
+0 −5 cmake/modules/test/simpletest/test/test.cpp
+0 −10 cmake/modules/test/superproject/CMakeLists.txt
+0 −124 cmake/modules/test/test.cmake
+8 −1 test/CMakeLists.txt
+10 −10 test/merkle/merkle.cpp
2 changes: 1 addition & 1 deletion libs/actor/zk
Submodule zk updated 47 files
+3 −18 CMakeLists.txt
+4 −0 README.md
+1 −1 cmake/modules
+2 −2 include/nil/crypto3/zk/commitments/batched_commitment.hpp
+3 −3 include/nil/crypto3/zk/commitments/detail/polynomial/basic_fri.hpp
+20 −5 include/nil/crypto3/zk/commitments/detail/polynomial/element_knowledge_commitment.hpp
+3 −3 include/nil/crypto3/zk/commitments/detail/polynomial/fold_polynomial.hpp
+4 −3 include/nil/crypto3/zk/commitments/polynomial/fri.hpp
+2 −2 include/nil/crypto3/zk/commitments/polynomial/knowledge_commitment_multiexp.hpp
+20 −14 include/nil/crypto3/zk/commitments/polynomial/kzg.hpp
+3 −2 include/nil/crypto3/zk/commitments/polynomial/kzg_v2.hpp
+5 −5 include/nil/crypto3/zk/commitments/polynomial/lpc.hpp
+2 −0 include/nil/crypto3/zk/snark/arithmetization/plonk/constraint.hpp
+1 −1 include/nil/crypto3/zk/snark/systems/plonk/placeholder/gates_argument.hpp
+19 −22 include/nil/crypto3/zk/snark/systems/plonk/placeholder/lookup_argument.hpp
+5 −8 include/nil/crypto3/zk/snark/systems/plonk/placeholder/permutation_argument.hpp
+10 −9 include/nil/crypto3/zk/snark/systems/plonk/placeholder/prover.hpp
+2 −2 include/nil/crypto3/zk/snark/systems/plonk/placeholder/verifier.hpp
+0 −2 include/nil/crypto3/zk/snark/systems/ppzksnark/r1cs_gg_ppzksnark/ipp2/prover.hpp
+32 −14 include/nil/crypto3/zk/transcript/fiat_shamir.hpp
+10 −2 test/CMakeLists.txt
+6 −6 test/commitment/fold_polynomial.cpp
+2 −2 test/commitment/fri.cpp
+203 −201 test/commitment/kzg.cpp
+15 −15 test/commitment/lpc.cpp
+3 −0 test/include/nil/crypto3/zk/test_tools/random_test_initializer.hpp
+5 −5 test/math/expression.cpp
+32 −32 test/systems/plonk/pickles/kimchi.cpp
+353 −353 test/systems/plonk/pickles/pickles.cpp
+4 −4 test/systems/plonk/pickles/to_field.cpp
+3 −3 test/systems/plonk/pickles/to_group.cpp
+73 −70 test/systems/plonk/placeholder/circuits.hpp
+0 −1,612 test/systems/plonk/placeholder/placeholder.cpp
+143 −0 test/systems/plonk/placeholder/placeholder_circuits.cpp
+91 −0 test/systems/plonk/placeholder/placeholder_curves.cpp
+210 −0 test/systems/plonk/placeholder/placeholder_gate_argument.cpp
+67 −0 test/systems/plonk/placeholder/placeholder_goldilocks.cpp
+83 −0 test/systems/plonk/placeholder/placeholder_hashes.cpp
+118 −0 test/systems/plonk/placeholder/placeholder_kzg.cpp
+408 −0 test/systems/plonk/placeholder/placeholder_lookup_argument.cpp
+304 −0 test/systems/plonk/placeholder/placeholder_permutation_argument.cpp
+74 −0 test/systems/plonk/placeholder/placeholder_quotient_polynomial_chunks.cpp
+268 −0 test/systems/plonk/placeholder/placeholder_test_runner.hpp
+11 −11 test/systems/plonk/plonk_constraint.cpp
+3,101 −3,101 test/systems/ppzksnark/r1cs_gg_ppzksnark/r1cs_gg_ppzksnark_aggregation_conformity.cpp
+227 −227 test/transcript/kimchi_transcript.cpp
+11 −11 test/transcript/transcript.cpp
2 changes: 1 addition & 1 deletion libs/crypto3
Submodule crypto3 updated 1816 files

0 comments on commit 60af5f5

Please sign in to comment.