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

Directly include blueprint #306

Merged
merged 1,269 commits into from
Aug 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1269 commits
Select commit Hold shift + click to select a range
78f0dc6
[PLONK] Field arithmetic components udpated to use non-native policy.
nkaskov Dec 1, 2022
bbcef62
Basic non-native policy updated to be compiler-independent.
nkaskov Dec 3, 2022
bfdd5de
Non-native field components updated to use basic_non_native_policy. T…
nkaskov Jan 14, 2023
6c51984
Merge pull request #106 from NilFoundation/105-non-native-policies
nkaskov Jan 14, 2023
5845eeb
update interfaces sha512 #98
CblPOK-git Jan 13, 2023
598b358
update interfaces scalar non native range, minor changes #98
CblPOK-git Jan 13, 2023
94340f3
merge bool_scalar_multiplication from branch 90 #98
CblPOK-git Jan 13, 2023
4bb961f
minor changes #98
CblPOK-git Jan 14, 2023
79c90c8
merge scalar_non_native_range from branch 90 #98
CblPOK-git Jan 16, 2023
688fdc4
merge master #98
CblPOK-git Jan 16, 2023
a75a83e
minor changes #98
CblPOK-git Jan 16, 2023
080f3bf
test paths updated, merge errors corrected #98
CblPOK-git Jan 17, 2023
1fabe04
change component to plonk_component in components templates, minor ch…
CblPOK-git Jan 17, 2023
d8f6693
interface update decomposed variable base scalar multiplication #98
CblPOK-git Jan 17, 2023
d056eef
Update run_tests.yml
CblPOK-git Jan 18, 2023
bd288b0
Update run_tests.yml
CblPOK-git Jan 18, 2023
bfa9e9a
Update run_tests.yml
CblPOK-git Jan 18, 2023
0e8fcb6
Update run_tests.yml
CblPOK-git Jan 18, 2023
fb657f0
Merge branch 'master' into 98-update-interfaces-mina
CblPOK-git Jan 18, 2023
a584017
minor changes #98
CblPOK-git Jan 18, 2023
eff5863
time logging removed from test files #98
CblPOK-git Jan 18, 2023
a392a62
minor changes #98
CblPOK-git Jan 18, 2023
fc390d1
Merge pull request #104 from NilFoundation/98-update-interfaces-mina
nkaskov Jan 18, 2023
2ff2d19
rewrite tests, add bls12 field, update random elements generation #107
CblPOK-git Jan 25, 2023
c63077b
rewrite tests for non native field operations #107
CblPOK-git Jan 26, 2023
5657d44
non native components test rewrite, new test cases added #107
CblPOK-git Jan 28, 2023
2e36209
Update README.md
nemothenoone Jan 29, 2023
ee0ed71
variable_base_scalar_mul test update #107
CblPOK-git Jan 30, 2023
8542227
rewrite tests, add new cases for decomposed and usual variable base s…
CblPOK-git Feb 2, 2023
3e95843
Update run_tests.yml
CblPOK-git Feb 3, 2023
9ee7077
Some minor compilation warnings fixed.
nkaskov Mar 2, 2023
043467b
Minor changes in sha2-256 component. #107
CblPOK-git Feb 3, 2023
21cff36
fix batches num
Luannet Mar 2, 2023
8613f00
Merge pull request #110 from NilFoundation/107-add-test-cases
Luannet Mar 2, 2023
30144e5
crypto3-zk 119 branch compatibility #114
ETatuzova Mar 13, 2023
dc3bb45
Merge pull request #115 from NilFoundation/114-crypto3-zk-119-combati…
Luannet Mar 15, 2023
0749eb0
fixed typo #116
tshchelovek Mar 20, 2023
207a935
added support of tests-to-fail #116
tshchelovek Mar 20, 2023
636e5fa
Non-native curve and field operations namespaces and includes adjustm…
nemothenoone Mar 22, 2023
a3354b5
minor updates #116
tshchelovek Mar 22, 2023
856c172
R1CS circuits definitions updated.
nemothenoone Mar 24, 2023
0ae4057
removes must_pass from is_satisfied #116
tshchelovek Mar 27, 2023
ddfb008
update test_component usage #116
tshchelovek Mar 28, 2023
0e0287f
fixed almost all tests #116
tshchelovek Mar 31, 2023
7bf936a
fixed bool_scalar_mul_test #116
tshchelovek Mar 31, 2023
c025b88
Minor tests updates #116
nemothenoone Mar 31, 2023
909e58e
Merge branch 'master' into 116-fix-algebra_fields_plonk_non_native_mu…
nemothenoone Mar 31, 2023
8b688a3
returned true/false #116
tshchelovek Apr 13, 2023
956810b
remove deprecated tests #116
Luannet Apr 20, 2023
a269f1c
Merge pull request #125 from NilFoundation/116-fix-algebra_fields_plo…
Luannet Apr 20, 2023
20c177d
Removing deprecated tests from CMakeLists.
martun Apr 20, 2023
793d3b7
Merge pull request #133 from NilFoundation/remove_deprecated_tests_fr…
Luannet Apr 20, 2023
959770e
SHA2-256 and SHA2-512 components (together with related sub-component…
nkaskov May 6, 2023
fca9bea
math::non_linear_term changed to math::term
nkaskov May 8, 2023
031455a
Basic non-native policy for EDDSA scalar field added. EDDSA scalar fi…
nkaskov May 8, 2023
d870a60
Transpiler-related files deleted. #143
nkaskov May 8, 2023
086b172
table_profiling.hpp include removed #143
ETatuzova May 9, 2023
fc01374
add range check
Shatooon May 10, 2023
e3b4f48
decrease number of gates scalar multiplication
Shatooon May 11, 2023
342a41b
small fix
Shatooon May 11, 2023
8cae76e
Merge pull request #146 from NilFoundation/97-additional-range-check
Luannet May 12, 2023
ebeddd1
Little bit of cleanup
martun May 23, 2023
42eba4b
added && and || or components
Valeh2012 Jun 7, 2023
858f8d1
three implementations of logical and
Valeh2012 Jun 7, 2023
576d9c8
abstact assigment method for variable witnesses
Valeh2012 Jun 7, 2023
3d3a338
130 Implemented boolean logic operators and bit (de)composition compo…
Iluvmagick Jun 7, 2023
2016ee7
custom witness amount for logical AND gate
Valeh2012 Jun 8, 2023
40a0142
logical or gate with custom witness amount
Valeh2012 Jun 8, 2023
50ba0a9
changes based on feedback
Valeh2012 Jun 12, 2023
7df9da7
added tests to workflow
Valeh2012 Jun 12, 2023
8f297ef
removed extra tokens at end of #endif directive
Valeh2012 Jun 12, 2023
d9fa366
reformatting
Valeh2012 Jun 13, 2023
20aa4ed
Output variables no longer relative.
Iluvmagick Jun 18, 2023
c4987fc
Merge pull request #157 from NilFoundation/155-wrong-copy-constraints…
Luannet Jun 19, 2023
5407a4f
Merge pull request #152 from NilFoundation/151-implement-and-or-compo…
Luannet Jun 29, 2023
134c770
Merge pull request #142 from NilFoundation/141-update-sha2
Luannet Jun 29, 2023
0ef96d9
Corrected constraints in bit (de)composition, written proper tests.
Iluvmagick Jul 2, 2023
3a856e8
Added assignment and circuit export functions.
Iluvmagick Jun 6, 2023
d96c550
Formatting fix.
Iluvmagick Jun 29, 2023
bcadb03
Corrected export logic.
Iluvmagick Jul 2, 2023
0728e6c
Updated range_check to work with even R, and different WitnessAmounts.
Iluvmagick May 10, 2023
71bfca5
range_check formatting fix
Iluvmagick May 11, 2023
ea77035
More tests for range_check and less_than_constant.
Iluvmagick May 15, 2023
e252338
Comparsion and testing for less_than_const/range_check.
Iluvmagick May 21, 2023
9d5f357
Reworked flag/flagless comparsion structure.
Iluvmagick May 22, 2023
aa17698
division_remainder: untested version.
Iluvmagick May 23, 2023
bf2467c
Implemented simple division. Various changes to comparsion variants. …
Iluvmagick May 29, 2023
ce19f71
Added include guards and removed a debug cout.
Iluvmagick May 29, 2023
57f14b5
Added explicit Witnesses constraints; moved parameters to constructors.
Iluvmagick Jun 9, 2023
7f213b5
Corrected tests after rebase; made copy constraints in division absol…
Iluvmagick Jun 18, 2023
14738af
More absolute constraints.
Iluvmagick Jul 2, 2023
f4e8ae1
Merge pull request #148 from NilFoundation/145-comparison-and-non-nat…
Luannet Jul 3, 2023
05ead81
Merge pull request #165 from NilFoundation/162-bit-constraints-decomp…
Luannet Jul 3, 2023
e593c6d
Merge pull request #161 from NilFoundation/149-assignments-export-import
Luannet Jul 3, 2023
7dbd486
Added start_row randomizer to tests. Removed non-working tests from r…
Iluvmagick Jul 3, 2023
1ff1f2b
Test corrections.
Iluvmagick Jul 3, 2023
eb17dad
Oracles fix; corrected patched assignments.
Iluvmagick Jul 3, 2023
5990182
Merge pull request #166 from NilFoundation/153-start-row-index-random…
Luannet Jul 3, 2023
e762e27
Added new id mechanism; updated components to use it.
Iluvmagick Jul 3, 2023
6f926b5
Merge pull request #170 from NilFoundation/168-update-get-component-id
Luannet Jul 4, 2023
240d244
150 extend non native policies (#163)
CblPOK-git Jul 4, 2023
519829d
update decomposition + sha2
Luannet Jul 6, 2023
c487e1e
Tests for SHA2-256 component added. #175
nkaskov Jul 7, 2023
f01f606
Merge pull request #179 from NilFoundation/175-update-sha256-component
Luannet Jul 10, 2023
303f166
Changing template argument type of plonk_variable
martun Jul 10, 2023
8fb1a82
Small fix
martun Jul 10, 2023
e8658fa
2 small changes, that I forgot last time.
martun Jul 26, 2023
f394b57
Adding a scope to fix mac build, even though I believe it's not needed.
martun Aug 2, 2023
7b3dc30
Zkllvm compatibility of non native edwards curve op components (#190)
CblPOK-git Aug 2, 2023
b167e7b
add static cast bool into bit builder component to fix CI on mac
CblPOK-git Aug 3, 2023
b806a20
remove redeclaration of bit_shift_mode
CblPOK-git Aug 4, 2023
f9ee41f
Small fix in non-native policy
CblPOK-git Sep 7, 2023
bdd8c9d
Added flake. Moved tests to nix.
Iluvmagick Sep 9, 2023
646c326
Merge pull request #203 from NilFoundation/202-blueprint-to-nix
Luannet Sep 11, 2023
1e9ceab
Added component manifest. Changed component interface.
Iluvmagick Sep 5, 2023
e2ef878
Witness amount for division must be 4 (#213)
akokoshn Sep 21, 2023
62ae4ce
Minor changes for assigner buildability #214 (#215)
ETatuzova Sep 24, 2023
93427cc
Make typename component_type public
Sep 25, 2023
1b893d5
Merge pull request #216 from akokoshn/public_component_type
akokoshn Sep 26, 2023
08b1787
Constants in manifest now intersect with compiler correctly. (#218)
Iluvmagick Sep 28, 2023
bfebf7f
add glue_non_native into basic_non_native_policy
CblPOK-git Sep 11, 2023
d6177ec
Added component autostretcher, connectedness check and equality_flag …
Iluvmagick Oct 3, 2023
2eaf4ab
Tests run on push to master; disabled automatic tagging. (#205)
Iluvmagick Oct 3, 2023
db0b904
Naming fix.
Iluvmagick Oct 9, 2023
5753d2b
Merge pull request #224 from NilFoundation/223-private-input-name-fix
Luannet Oct 9, 2023
ee981c6
Added lookup gate id. (#226)
Iluvmagick Oct 9, 2023
196c741
Fixed connectedness check. (#228)
Iluvmagick Oct 10, 2023
6e130de
Added weak connectedness check variant. (#235)
Iluvmagick Oct 12, 2023
4a7ea8f
222 blueprint lookup tables (#231)
ETatuzova Oct 13, 2023
a387fcc
Fixed gcc/ld build errors. (#243)
Iluvmagick Oct 19, 2023
3adab40
232 create circuit components for fri verifier (#245)
ayashunsky Oct 23, 2023
26e496c
Add proxy for assignment and circuits (#247)
akokoshn Oct 25, 2023
21e6fca
Fix proxy enable_selector (#251)
akokoshn Oct 27, 2023
0cbb80d
Add shared column (#253)
akokoshn Nov 4, 2023
1e40ce2
246 sha tables (#248)
Iluvmagick Nov 6, 2023
23bac73
194 implement placeholder verification component (#259)
Valeh2012 Nov 6, 2023
0fc8fcf
Add proxy unit tests (#257)
akokoshn Nov 6, 2023
dc05e52
Added FRI linear interpolation and array swap components. (#238)
Iluvmagick Nov 6, 2023
dfc3daa
Fix typos in docs and comments (#252)
vuittont60 Nov 6, 2023
e922c0d
f1_loop fix. (#263)
Iluvmagick Nov 6, 2023
e82a0d8
Moved custom lookup tables to the lookup library. (#261)
Iluvmagick Nov 7, 2023
ef01a6d
fri_cosets now correctly processes arbitrary input (#255)
ayashunsky Nov 7, 2023
2e3e950
make component_type public (#265)
CblPOK-git Nov 7, 2023
2b948f1
Add start_row_index that was missing in native pallas curve mul compo…
CblPOK-git Nov 8, 2023
87d4bab
Moved lookup operations from detail:: (#269)
Iluvmagick Nov 9, 2023
41cb11e
Handle using lookup tbales in proxy (#264)
akokoshn Nov 9, 2023
ccf2e60
Moved back to crypto3 main branch. (#276)
Iluvmagick Nov 10, 2023
93b6463
Change is_satisfied signature to take const circuit as input (#277)
CblPOK-git Nov 12, 2023
cad1702
Added a resource system for sha lookup tables. (#279)
Iluvmagick Nov 17, 2023
85edb97
Removed duplicate binary and table. (#290)
Iluvmagick Nov 20, 2023
ff5c51b
Interpolation components done (#258)
ayashunsky Nov 23, 2023
168922f
Keep lookup constant/selector columns
Nov 18, 2023
23c85b8
Check accessible lookup gates only on the used selector rows (#296)
akokoshn Dec 4, 2023
9080d9a
Find correct gate index for used gates (#301)
akokoshn Dec 5, 2023
897ba2f
Add consistent testing
x-mass Dec 5, 2023
9da6da0
add new non native policies
CblPOK-git Nov 6, 2023
d7cfb32
Fixed lookup table packer call in test_plonk_component.
Iluvmagick Dec 8, 2023
ef683d6
Separate handling enabled selectors for avoid use selectors from anot…
Dec 12, 2023
c01092c
Allow modify input by using all_vars()
Dec 13, 2023
8c2e311
test empty component #308
tshchelovek Dec 22, 2023
e42f2e7
field operations #308
tshchelovek Dec 22, 2023
1438726
non-native field ops #308
tshchelovek Dec 22, 2023
1bec3d3
sha256 #308
tshchelovek Dec 22, 2023
5d13667
comparison flag #308
tshchelovek Dec 22, 2023
cffaa2d
some logic #308
tshchelovek Dec 22, 2023
58647db
bit_(de)composition #308
tshchelovek Dec 22, 2023
a67550e
Trying to fix template function finding.
Iluvmagick Dec 23, 2023
b783e49
Satisfiability check for skipped components
Dec 30, 2023
be4dd99
Fixed proof generation; added proof generation to tests.
Iluvmagick Jan 3, 2024
9c50a65
gate_id constants reserve fix.
Iluvmagick Jan 3, 2024
96efd77
Avoid slow std::set::find() in satifiability check
Jan 4, 2024
eea83af
Fixed failing logic tests.
Iluvmagick Jan 17, 2024
b0ece6e
add gates_amount to fri_cosets
CblPOK-git Jan 18, 2024
f6f31cd
Moved precomputed lookup tables into the binaries.
Iluvmagick Jan 20, 2024
f49b3f6
Fixed many warnings (#329)
Iluvmagick Feb 5, 2024
c6dc9fc
Added check for islands to connectedness check. (#293)
Iluvmagick Feb 7, 2024
c1ab9d3
add "component_name" field to components
CblPOK-git Jan 25, 2024
c2c7bc8
Removed ArithmetizationParams from template arguments. (#333)
Iluvmagick Feb 19, 2024
198325d
Added many mocked components. (#304)
Iluvmagick Feb 28, 2024
fde02cb
Removed broken include.
Iluvmagick Mar 14, 2024
a117fa7
Enable linkage of several modules with blueprint includes
makxenov Mar 15, 2024
6eb5fea
Recursive verifier circuit parts (#358)
Iluvmagick Apr 11, 2024
7504653
Update CMake Modules
aleasims Apr 11, 2024
517fc5f
Fix packaging in flake.nix
aleasims Apr 11, 2024
7cf2850
Pin version of nixpkgs to 23.11
aleasims Apr 11, 2024
340ffbd
Division or zero component name (#366)
akokoshn Apr 23, 2024
b01e26b
Enable -Wall for tests.
Iluvmagick Apr 29, 2024
17d0787
Merge pull request #369 from NilFoundation/368-enable-wall
vo-nil Apr 29, 2024
330673a
Fixed connectedness check bug. (#371)
Iluvmagick May 7, 2024
cdf7c81
Added uninit variable handler to gate_id. (#373)
Iluvmagick May 8, 2024
ba5c163
Add workaround config file to import blueprint package
makxenov May 9, 2024
54a8975
Implement partial export of assignment table
aleasims May 22, 2024
2b3fb91
update nix
AndreyMlashkin May 28, 2024
5798947
use crypto3::all
AndreyMlashkin May 28, 2024
1e1aea2
Update blueprint after changes to multiprecision.
martun May 31, 2024
4bff9ab
Switch to crypto3::all.
martun May 31, 2024
1062b21
update cmake modules + uncomment find_package crypto3
AndreyMlashkin May 31, 2024
3cf57e0
Merge pull request #374 from NilFoundation/multiprecision_changes
martun May 31, 2024
de23a99
use CMAKE_ENABLE_TESTS flag
AndreyMlashkin May 31, 2024
6ad2057
add check phase in flake
AndreyMlashkin May 31, 2024
7ddd920
modernize CMakeLists
AndreyMlashkin May 31, 2024
78637bb
exclude failing tests
AndreyMlashkin May 31, 2024
602bead
run tests via nix
AndreyMlashkin May 31, 2024
0aca970
use new checkout
AndreyMlashkin Jun 3, 2024
e64e64b
bump nix install
AndreyMlashkin Jun 3, 2024
b7a3d74
don't setup nix as it's already done in cloud-init template
AndreyMlashkin Jun 3, 2024
8f3a946
use ctest for running tests; add default derevation; update nix build…
AndreyMlashkin Jun 3, 2024
ee90a54
add BLUEPRINT_PLACEHOLDER_PROOF_GEN argument to some tests
AndreyMlashkin Jun 5, 2024
b07acdb
cleanup & doc update
AndreyMlashkin Jun 5, 2024
1bd8672
increase cores number
AndreyMlashkin Jun 5, 2024
8a3c405
add options to compile time, not to runtime
AndreyMlashkin Jun 6, 2024
1f43078
Added basic dvm circuit. (#367)
Iluvmagick Jun 10, 2024
e9b22da
Name conflict fix in zkevm_circuit. (#404)
Iluvmagick Jun 17, 2024
395535b
Cleanup cmake files
makxenov Jun 6, 2024
e06f26f
Update README
makxenov Jun 11, 2024
1d9cac3
Remove explicit crypto3 rev, disable not-working test
makxenov Jun 13, 2024
ecd5b89
don't override flags for boost
AndreyMlashkin Jun 18, 2024
d5e53a5
Remove Crypto3 from outputs of `flake.nix`
aleasims Jun 12, 2024
0ce303b
Move Boost from build inputs to propagated build inputs
aleasims Jun 12, 2024
6c2bc56
Remove outdated copy-pasted comments from flake.nix
aleasims Jun 12, 2024
f9912bc
Tiny code refactor in `flake.nix`
aleasims Jun 12, 2024
a649aa1
Remove `-fPIC` from compilation options
aleasims Jun 12, 2024
89c8185
Remove unused CMake option from `flake.nix`
aleasims Jun 12, 2024
84ebc6d
Update build notes in `flake.nix`
aleasims Jun 12, 2024
45a2fa9
Add missed Boost::random dependency
Jul 3, 2024
50c4e6a
Rename crypto3 dependency
Jul 4, 2024
73d6a40
Merge pull request #411 from NilFoundation/missed_boost_random_depend…
akokoshn Jul 4, 2024
5fd0d2d
Fixed variable base mul and non-native mul tests.
Iluvmagick Jul 5, 2024
d8933d0
Re-enabled the tests in CI.
Iluvmagick Jul 5, 2024
30377e6
Merge pull request #412 from NilFoundation/392-multiprecision-test-ch…
Iluvmagick Jul 9, 2024
7080550
don't run crypto3 tests
AndreyMlashkin Jul 19, 2024
93a1f88
disable test, that is failing with current crypto3; fix crypto3 revision
AndreyMlashkin Jul 19, 2024
0b518f8
Set crypto3 to the latest master.
martun Jul 23, 2024
cfd44a0
Merge pull request #418 from NilFoundation/set_to_latest_crypto3
Iluvmagick Jul 23, 2024
02ad1db
refactor nix flake
AndreyMlashkin Jul 24, 2024
397ffdb
Fixing a compilation error by renaming assignment to assignment_table.
martun Jul 24, 2024
07f3007
don't publish results in message
AndreyMlashkin Jul 26, 2024
99a1077
move test run script on bash level; don't generate tests report
AndreyMlashkin Jul 31, 2024
8bcfdb4
correction to build all targets
AndreyMlashkin Jul 31, 2024
890ab5f
limit cores
AndreyMlashkin Jul 31, 2024
c5abab7
Dynamic lookup tables implemented #413
ETatuzova Aug 6, 2024
d443419
Merge pull request #414 from NilFoundation/413-dynamic-lookups
ETatuzova Aug 6, 2024
f7060a9
Move all files into libs/blueprint directory
AndreyMlashkin Aug 15, 2024
d5518eb
Merge remote-tracking branch 'blueprint/migration' into directly-incl…
AndreyMlashkin Aug 15, 2024
681fade
cleanup
AndreyMlashkin Aug 15, 2024
3fafe44
correct targets for blueprint
AndreyMlashkin Aug 15, 2024
f311beb
disable invalid blueprint tests
AndreyMlashkin Aug 16, 2024
6ee3f9f
don't override boost packages
AndreyMlashkin Aug 16, 2024
e5a4346
remove installation instructions from blueprint
AndreyMlashkin Aug 16, 2024
fb9fb74
uncomment two tests
AndreyMlashkin Aug 16, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
94 changes: 94 additions & 0 deletions libs/blueprint/.clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
---
BasedOnStyle: WebKit
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: Yes
BinPackArguments: true
BinPackParameters: true
BreakAfterJavaFieldAnnotations: true
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
BraceWrapping:
AfterClass: false
AfterControlStatement: false
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
IndentBraces: false
SplitEmptyFunction: false
SplitEmptyRecord: false
SplitEmptyNamespace: false
BreakBeforeInheritanceComma: false
BreakBeforeTernaryOperators: false
BreakConstructorInitializers: AfterColon
BreakStringLiterals: true
ColumnLimit: 120
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: true
FixNamespaceComments: true
ForEachMacros: [ 'BOOST_FOREACH' ]
IncludeBlocks: Regroup
IncludeCategories:
- Regex: '^"(<)/'
Priority: 1
- Regex: '^(<(boost)/)'
Priority: 2
- Regex: '^(<(nil\/algebra)/)'
Priority: 3
- Regex: '.*'
Priority: 4
IndentCaseLabels: true
IndentPPDirectives: None
IndentWidth: 4
IndentWrappedFunctionNames: true
KeepEmptyLinesAtTheStartOfBlocks: true
Language: Cpp
NamespaceIndentation: All
ObjCBlockIndentWidth: 4
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PointerAlignment: Right
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: ControlStatements
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 4
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: true
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard: Cpp11
TabWidth: 4
UseTab: Never

...
1 change: 1 addition & 0 deletions libs/blueprint/.envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
use flake
60 changes: 60 additions & 0 deletions libs/blueprint/.github/workflows/run_tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Run tests

on:
# Triggers the workflow on pull request events but only for the master branch
pull_request:
branches: [ master ]
push:
branches: [ master ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

env:
SUITE_REPO: "NilFoundation/crypto3"
LIB_NAME: "blueprint"
CACHE_NAME: "blueprint-job-cache"

jobs:
handle-syncwith:
if: github.event_name == 'pull_request'
name: Call Reusable SyncWith Handler
uses: NilFoundation/ci-cd/.github/workflows/reusable-handle-syncwith.yml@v1
with:
ci-cd-ref: 'v1'
secrets: inherit

build-and-test:
needs: [ handle-syncwith ]
runs-on: ["self-hosted", "aws_autoscaling"]
strategy:
fail-fast: false
steps:
# https://github.com/actions/checkout/issues/1552
- name: Clean up after previous checkout
run: chmod +w -R ${GITHUB_WORKSPACE}; rm -rf ${GITHUB_WORKSPACE}/*;

- name: Checkout Blueprint
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive

- name: Checkout submodules to specified refs
if: inputs.submodules-refs != ''
uses: NilFoundation/ci-cd/actions/recursive-checkout@v1.2.1
with:
refs: ${{ inputs.submodules-refs }}
paths: |
${{ github.workspace }}/**
!${{ github.workspace }}/
!${{ github.workspace }}/**/.git/**

# nix is taken from the cloud-init template, no need to install it.
- name: Build and run tests
env:
NIX_CONFIG: |
cores = 8
max-jobs = 4
run: |
nix build -L .?submodules=1#checks.x86_64-linux.default
31 changes: 31 additions & 0 deletions libs/blueprint/.github/workflows/set_version.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Set version

on:
#Disabled because the workflow does not actually work with current runner permissions
#push:
# branches: [ master ]
workflow_dispatch:

jobs:
set_version:
name: Set and tag version
runs-on: [ubuntu-latest]
env:
VERSION_FILE_NAME: VERSION
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Set version
id: set_version
run: |
version=$(cat ${{ env.VERSION_FILE_NAME }} | tr -d '\r').$GITHUB_RUN_NUMBER
echo "VERSION=$version" >> $GITHUB_ENV

- name: Tag new version
run: git tag v${{ env.VERSION }}

- name: Push tags
uses: ad-m/github-push-action@master
with:
tags: true
Loading
Loading