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 develop -> main #14744

Closed
wants to merge 632 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
632 commits
Select commit Hold shift + click to select a range
b079a9c
Note that the fork_config query should be parametrised by a block.
Sventimir Oct 27, 2023
6b1e886
Describe a way to protect the exported ledger against dishonest update.
Sventimir Oct 27, 2023
c7f6ee0
Merge pull request #14395 from MinaProtocol/georgeee/parallel-connect…
georgeee Oct 27, 2023
8d81fdc
Merge branch 'develop' into fix-flakiness-insufficient-replace-fee
ghost-not-in-the-shell Oct 30, 2023
2e8b2e2
Merge branch 'develop' into sventimir/genesis-ledger-export
Sventimir Oct 30, 2023
a9c9cc7
Update o1js: wasm-bindgen-cli 0.2.87
rbonichon Oct 26, 2023
c6db09b
nix: use wasm-bindgen-cli 0.2.87, update hashes
rbonichon Oct 26, 2023
9350dd5
Update proof-systems: wasm-bindgen 0.2.87
rbonichon Oct 26, 2023
a79f947
Rename 0049-protocol-versioning.md to 0050-protocol-versioning.md
nholland94 Oct 30, 2023
93550bf
Merge branch 'berkeley' into fix/hf-protocol-version
psteckler Oct 30, 2023
26687d5
Merge branch 'berkeley' into feature/ledger-hashes-in-checkpoint
psteckler Oct 30, 2023
f24eb5f
Merge branch 'develop' into feature/mina-caqti-internal-docs
psteckler Oct 30, 2023
0e33b1b
Merge branch 'berkeley' into feature/berkeley-db-migrator
psteckler Oct 30, 2023
c97ae58
Pass thru old txn hashes
Oct 30, 2023
b56ef21
Merge branch 'berkeley' into feature/add-berkeley-account-tables
psteckler Oct 30, 2023
2977339
Merge pull request #13993 from MinaProtocol/rfc/protocol-versioning
nholland94 Oct 30, 2023
a39868e
Merge branch 'berkeley' into rfc/verification-key-permissions
nholland94 Oct 30, 2023
b8c66c1
Merge pull request #13994 from MinaProtocol/rfc/verification-key-perm…
nholland94 Oct 30, 2023
8c9026e
Merge branch 'berkeley' into feature/ledger-hashes-in-checkpoint
psteckler Oct 30, 2023
fc599db
use generated field names for extensional blocks
Oct 31, 2023
8a081d9
Merge branch 'berkeley' into feature/add-berkeley-account-tables
psteckler Oct 31, 2023
a69d1ff
Extend the description of exported blockchain state.
Sventimir Oct 31, 2023
0dc8375
Add a section on testing.
Sventimir Oct 31, 2023
8bc9518
Merge branch 'berkeley' into sventimir/rename-fork-config-genesis-slo…
Sventimir Oct 31, 2023
4c2f269
Merge branch 'develop' into sventimir/fix-fork-generation-develop
Sventimir Oct 31, 2023
85bc56c
Merge pull request #14387 from MinaProtocol/fix-flakiness-insufficien…
ghost-not-in-the-shell Oct 31, 2023
031021e
Merge branch 'berkeley' into feature/berkeley-db-migrator
psteckler Oct 31, 2023
864e379
rm unused code
Oct 31, 2023
b89f167
Merge pull request #14440 from MinaProtocol/rb/wasm-bindgen-0.2.87
Oct 31, 2023
30ed4ae
Fix zero vesting period test
Oct 31, 2023
36a408a
Merge branch 'berkeley' into rfc/hard-fork-data-migration
psteckler Oct 31, 2023
ff3f95c
[#14206,#14205] Cosmetics for of_int, of_nat
volhovm Sep 26, 2023
871f29c
Update o1js (implicitly o1js-bindings) dependency
volhovm Oct 12, 2023
7dfb983
Merge pull request #14339 from MinaProtocol/feature/add-berkeley-acco…
psteckler Oct 31, 2023
b5f432a
Merge branch 'berkeley' into rfc/hard-fork-data-migration
psteckler Oct 31, 2023
40399f3
Merge branch 'berkeley' into fix/zero-vesting-period-alcotest
psteckler Oct 31, 2023
9cdd592
Merge pull request #14216 from MinaProtocol/volhovm/14206-14206-of_in…
volhovm Nov 1, 2023
3cc868c
Making test optional
SanabriaRusso Nov 1, 2023
aac92f2
Adding an alternative container image fo delegation backend toolchain
SanabriaRusso Nov 1, 2023
47c93ac
Revert "Adding an alternative container image fo delegation backend t…
SanabriaRusso Nov 1, 2023
d563936
Making Delegation Backend Unit Test optional
SanabriaRusso Nov 1, 2023
78a9047
Increase fee for dev profile
Nov 1, 2023
0af2e3c
Merge branch 'berkeley' into feature/berkeley-db-migrator
Nov 1, 2023
4aee1bd
Merge pull request #14475 from MinaProtocol/luis-buildkite-onboarding
stevenplatt Nov 1, 2023
ceca156
Merge pull request #12906 from MinaProtocol/feature/berkeley-db-migrator
deepthiskumar Nov 1, 2023
fd40b46
Merge pull request #14472 from MinaProtocol/fix/zero-vesting-period-a…
deepthiskumar Nov 1, 2023
359c222
Merge branch 'berkeley' into feature/ledger-hashes-in-checkpoint
deepthiskumar Nov 1, 2023
72b529b
Merge branch 'berkeley' into luis-delegation-backend-soft-fail-berkeley
stevenplatt Nov 1, 2023
3ab1740
Merge pull request #14390 from MinaProtocol/feature/ledger-hashes-in-…
psteckler Nov 1, 2023
512d399
Merge branch 'berkeley' into fix/hf-protocol-version
psteckler Nov 1, 2023
b07c4a7
Merge branch 'berkeley' into luis-delegation-backend-soft-fail-berkeley
stevenplatt Nov 1, 2023
97220e1
Merge pull request #14477 from MinaProtocol/luis-delegation-backend-s…
stevenplatt Nov 1, 2023
3b1f62a
Merge branch 'berkeley' into fix/hf-protocol-version
psteckler Nov 1, 2023
0563475
Merge pull request #14416 from MinaProtocol/fix/hf-protocol-version
deepthiskumar Nov 2, 2023
d181790
Merge pull request #14294 from MinaProtocol/feature/mina-caqti-intern…
deepthiskumar Nov 2, 2023
57ce675
add ledger proof statement to blockchain state in GraphQL
psteckler Sep 26, 2023
8692d18
fixups
Nov 2, 2023
82207d7
Merge branch 'berkeley' into rfc/hard-fork-data-migration
deepthiskumar Nov 2, 2023
2d815c9
Merge pull request #14288 from MinaProtocol/rfc/hard-fork-data-migration
psteckler Nov 2, 2023
08fa6d6
revert name change
Nov 2, 2023
2acc5c6
Merge branch 'berkeley' into feature/update-replayer-cron-image
deepthiskumar Nov 2, 2023
974097e
Merge pull request #14483 from MinaProtocol/feature/merge-to-develop-…
deepthiskumar Nov 2, 2023
b62342e
Merge pull request #14268 from MinaProtocol/feature/update-replayer-c…
deepthiskumar Nov 3, 2023
37e08d1
Merge branch 'berkeley' into sventimir/rename-fork-config-genesis-slo…
Sventimir Nov 6, 2023
6aa7a7c
Merge branch 'develop' into sventimir/fix-fork-generation-develop
Sventimir Nov 6, 2023
a21d75e
Merge branch 'develop' into sventimir/genesis-ledger-export
Sventimir Nov 6, 2023
f5b0138
Merge pull request #14213 from MinaProtocol/sventimir/genesis-ledger-…
Sventimir Nov 6, 2023
b4223b2
test curl install fix
stevenplatt Nov 13, 2023
6aa6bbd
updated container image
stevenplatt Nov 13, 2023
90f8291
Update proof-systems
dannywillems Nov 13, 2023
9958721
updated to use rosetta container
stevenplatt Nov 13, 2023
a420988
swapped out wget for curl
stevenplatt Nov 13, 2023
07fbed7
Deploy migration apps
dkijania Nov 13, 2023
97600ed
swapping wget to curl
stevenplatt Nov 14, 2023
3f1cea3
updated db cron container image
stevenplatt Nov 15, 2023
9e28af4
Merge pull request #14561 from MinaProtocol/steven-db-cron-fix
stevenplatt Nov 15, 2023
127f0f3
Merge pull request #14562 from MinaProtocol/steven-db-cron-fix-berkeley
stevenplatt Nov 15, 2023
9c095f0
Merge branch 'berkeley' into dkijania/migration_app_deployment
dkijania Nov 15, 2023
b9ac84c
Add new tests for fix_domains
dannywillems Nov 16, 2023
407b518
Update proof-systems after merge
volhovm Nov 16, 2023
a6a4447
Update snarkyjs/bindings
volhovm Nov 16, 2023
3929866
Merge branch 'develop' into dannywillems/update-proof-systems-to-new-…
volhovm Nov 16, 2023
da1fc3a
Update deps
volhovm Nov 17, 2023
7602182
Shorten call to T constructor
dannywillems Nov 17, 2023
a2d7d76
Remove case impossible in practice
dannywillems Nov 17, 2023
9ca4131
repairing berkeley testnet module compatibility
stevenplatt Nov 17, 2023
5528528
Merge pull request #14568 from MinaProtocol/dannywillems/add-test-for…
dannywillems Nov 18, 2023
bf5e6d3
Update dependencies
volhovm Nov 18, 2023
8a71c44
Merge branch 'develop' into dannywillems/update-proof-systems-to-new-…
volhovm Nov 18, 2023
78535ae
Merge pull request #14549 from MinaProtocol/dannywillems/update-proof…
dannywillems Nov 21, 2023
e75355f
Pickles: skeleton for alcotests in pickles
rbonichon Nov 21, 2023
0852f12
Pickles: alcotests for module Impls
rbonichon Nov 21, 2023
d50da1a
Pickles: rm ppx unit tests from Impls
rbonichon Nov 21, 2023
dddfcad
Pickles: alcotest module Scalar_challenge
rbonichon Nov 21, 2023
fcced13
Pickles: rm ppx unit tests from Scalar_challenge
rbonichon Nov 21, 2023
538fe52
Pickles: alcotest module Side_loaded_verification_key
rbonichon Nov 21, 2023
9c61e6f
Pickles: rm ppx unit tests from Side_loaded_verification_key
rbonichon Nov 21, 2023
eee1142
Pickles: alcotest module Step_main_inputs
rbonichon Nov 22, 2023
4523a94
Pickles: rm sponge-related ppx unit tests from Step_main_inputs
rbonichon Nov 22, 2023
8e035d0
Pickles tests: use plural in variable name
rbonichon Nov 22, 2023
bcc96d0
Merge pull request #14598 from MinaProtocol/rb/pickles-alcotest-step_…
dannywillems Nov 22, 2023
2c14f40
Merge pull request #14592 from MinaProtocol/rb/pickles-alcotest-side_…
dannywillems Nov 22, 2023
e300ade
Merge pull request #14559 from MinaProtocol/dkijania/migration_app_de…
dkijania Nov 22, 2023
2799ecb
remove dune build from single node tests and provide way to select mi…
dkijania Nov 23, 2023
f0a5bba
Enabled logging precomputed blocks in mina local network
dkijania Nov 21, 2023
841e946
Enabled logging precomputed blocks in mina local network
dkijania Nov 21, 2023
04f0fe9
update file permission
dkijania Nov 23, 2023
7d11e9b
Merge pull request #14603 from MinaProtocol/dkijania/port_log_precomp…
dkijania Nov 23, 2023
9e9634b
Merge pull request #14602 from MinaProtocol/dkijania/port_log_precomp…
dkijania Nov 23, 2023
ab07b80
Merge branch 'berkeley' into dkijania/use_deb_in_single_node_tests
dkijania Nov 24, 2023
564cd03
Merge pull request #14132 from MinaProtocol/dkijania/use_deb_in_singl…
dkijania Nov 25, 2023
05435fb
fix version linter failure
dkijania Nov 27, 2023
717abd7
Fix dirty when for version linter
dkijania Nov 27, 2023
dbd346c
fix debian version
dkijania Nov 27, 2023
85b5c14
fetch before checkouting branch for nix
dkijania Nov 27, 2023
460b80e
Pickles: alcotest module Plonk_curve_ops
rbonichon Nov 27, 2023
9041cc7
Pickles: rm unit tests in Plonk_curve_ops
rbonichon Nov 27, 2023
cd0e746
Merge pull request #14271 from MinaProtocol/sventimir/rename-fork-con…
bkase Nov 27, 2023
6d8cc4c
Removal of snarky js test in mina as one of step of spitting repos
dkijania Oct 10, 2023
c2d837a
Merge branch 'berkeley' into dkijania/fix_sexp
dkijania Nov 27, 2023
e03c460
Merge pull request #14606 from MinaProtocol/dkijania/fix_sexp
dkijania Nov 27, 2023
f473eb6
Merge remote-tracking branch 'origin/berkeley' into develop
rbonichon Nov 27, 2023
726387e
rfcs: rename to avoid duplicate id
rbonichon Nov 27, 2023
3a5d45a
Remove CLI configuration flags
joaosreis Nov 27, 2023
e30568b
Add n hours to notification
joaosreis Nov 27, 2023
22db7d9
fix StuckInCatchup/Bootstrap alerts
Nov 27, 2023
d5a2080
Merge branch 'develop' into alert/fix-stuck-in-catchup-and-bootstrap
ghost-not-in-the-shell Nov 27, 2023
aaaa5e7
add new command for building toolchain dockers (!ci-toolchain-me)
dkijania Nov 28, 2023
ab583cd
Berkeley account tables: fix typing
rbonichon Nov 28, 2023
49112c7
Merge branch 'develop' into dkijania/branch_auto_sync_forward_branches
dkijania Nov 28, 2023
d053cef
RFC: Limit the number of zkApp commends fitting into a block.
Sventimir Nov 28, 2023
44042fd
RFC: add information on defaults and UI example.
Sventimir Nov 28, 2023
f06870f
Merge pull request #14616 from MinaProtocol/rb/merge-berkeley-into-de…
Nov 28, 2023
980a5e3
Merge branch 'develop' into dkijania/port_move_toolchain_to_sep_pipel…
dkijania Nov 28, 2023
e517a45
Merge pull request #14620 from MinaProtocol/dkijania/port_move_toolch…
dkijania Nov 28, 2023
771b713
RFC: Fix a typo.
Sventimir Nov 28, 2023
cdc3ff1
Merge branch 'develop' into dkijania/branch_auto_sync_forward_branches
dkijania Nov 28, 2023
c83dc68
[runtime_config] Inline explanations on Fork_config.t fields.
Sventimir Nov 28, 2023
7f94460
Merge branch 'develop' into steven-berkeley-terraform-repair
stevenplatt Nov 28, 2023
c61bd47
Pickles: skeleton for alcotests in pickles
rbonichon Nov 21, 2023
58c80ca
Pickles: alcotests for module Impls
rbonichon Nov 21, 2023
a233a5d
Pickles: rm ppx unit tests from Impls
rbonichon Nov 21, 2023
79c11f5
Merge pull request #14033 from MinaProtocol/dkijania/branch_auto_sync…
dkijania Nov 28, 2023
b17d48a
Merge branch 'develop' into steven-berkeley-terraform-repair
stevenplatt Nov 28, 2023
b85d29c
Merge pull request #14589 from MinaProtocol/rb/pickles-impls-to-alcotest
dannywillems Nov 28, 2023
55a17fc
Merge branch 'develop' into rb/pickles-alcotest-scalar_challenge
dannywillems Nov 28, 2023
0b4d4a5
Merge pull request #14590 from MinaProtocol/rb/pickles-alcotest-scala…
dannywillems Nov 28, 2023
9a3e6d3
Merge branch 'develop' into rb/pickles-alcotest-plonk_curve_ops
dannywillems Nov 28, 2023
ccbb1b8
RFC: Move the description of defaults and UI.
Sventimir Nov 28, 2023
9fa7288
RFC: add another drawback of limiting zkApp commands per block.
Sventimir Nov 29, 2023
719b6e5
RFC: Elaborate on the UI and defaults.
Sventimir Nov 29, 2023
9b9c4ca
Merge branch 'develop' into dkijania/remove_snarkyjs_test
dkijania Nov 29, 2023
9c48b38
Merge pull request #14607 from MinaProtocol/rb/pickles-alcotest-plonk…
Nov 29, 2023
ff346e5
Merge branch 'develop' into dkijania/remove_snarkyjs_test
dkijania Nov 29, 2023
c03da39
Merge pull request #14319 from MinaProtocol/dkijania/remove_snarkyjs_…
dkijania Nov 29, 2023
d1cec6c
Pickles: alcotest module Opt_sponge
rbonichon Nov 29, 2023
c17f068
Pickles: rm unit tests in Opt_sponge
rbonichon Nov 27, 2023
173ccea
Pickles: alcotest module Wrap_hack
rbonichon Nov 27, 2023
379bb44
Pickles: rm unit tests in Wrap_hack
rbonichon Nov 27, 2023
bb274b1
Merge pull request #14608 from MinaProtocol/rb/pickles-alcotest-opt_s…
Nov 29, 2023
640afe8
Pickles: alcotest module Step_verifier
rbonichon Nov 29, 2023
4ec7b13
Pickles: rm unit tests in Step_verifier
rbonichon Nov 29, 2023
03644c5
Merge pull request #14636 from MinaProtocol/rb/pickles-alcotest-step_…
dannywillems Nov 29, 2023
a5483db
Merge branch 'develop' into steven-berkeley-terraform-repair
stevenplatt Nov 29, 2023
67b0ad4
updated formatting and removal of old comments
stevenplatt Nov 29, 2023
9b0802b
Pickles: alcotest library Limb_vector
rbonichon Nov 30, 2023
34b6d7b
Pickles: rm inlined unit tests in Limb_vector
rbonichon Nov 30, 2023
5de76e2
Limb_vector: add doc + failing test.
rbonichon Nov 30, 2023
7aa0169
Pickles: alcotest library Pickles_unix
rbonichon Nov 30, 2023
7c61697
Pickles: rm inlined unit tests for library Pickles_unix
rbonichon Nov 30, 2023
0692fa8
Merge pull request #14576 from MinaProtocol/steven-berkeley-terraform…
stevenplatt Nov 30, 2023
f9e4f46
Pickles: alcotest library Limb_vector
rbonichon Nov 30, 2023
4938a2b
Pickles: rm inlined unit tests in Limb_vector
rbonichon Nov 30, 2023
0cf8d97
Limb_vector: add doc + failing test.
rbonichon Nov 30, 2023
27f594e
updated ci-net and script dependencies
stevenplatt Nov 30, 2023
2b0bac0
current berkeley testnet configuration
stevenplatt Nov 30, 2023
82fee60
feat(o1js-stubs): add new dune and o1js_stub.ml files for js_of_ocaml…
MartinMinkov Oct 29, 2023
9a9ba0a
feat(kimchi): add kimchi lib from o1js-bindings
MartinMinkov Nov 13, 2023
da15dfe
refactor(nix): remove snarky_js and update paths for kimchi and plonk…
MartinMinkov Nov 13, 2023
288f56e
feat(dune-project): add bindings_js package to support JavaScript bin…
MartinMinkov Nov 14, 2023
de06395
remove(SnarkyJSTest.dhall): delete SnarkyJSTest.dhall file as it's no…
MartinMinkov Nov 30, 2023
36b82f4
feat(buildkite/scripts): remove test-snarkyjs-bindings-minimal.sh and…
MartinMinkov Nov 30, 2023
c935d72
chore: remove redundant SnarkyJS build scripts
MartinMinkov Nov 30, 2023
c8e9d66
refactor(Makefile): remove snarkyjs and snarkyjs_no_types build targe…
MartinMinkov Nov 30, 2023
9d6e14f
chore(CODEOWNERS): remove snarkyjs directory from product-eng-reviewe…
MartinMinkov Nov 30, 2023
9f0e6d1
feat(kimchi): use develop version instead of copied main versions
MartinMinkov Nov 30, 2023
7439fd8
RFC: add a remark about possibility of loosing zkApp commands.
Sventimir Dec 1, 2023
92da752
RFC: add a remark about possible DoS attack upon disabling the cap.
Sventimir Dec 1, 2023
1d35680
Merge pull request #14642 from MinaProtocol/rb/pickles-alcotest-limb_…
dannywillems Dec 1, 2023
f888fe5
RFC: only set the soft cap through authorised GraphQL.
Sventimir Dec 1, 2023
5bf071b
Merge pull request #14645 from MinaProtocol/rb/pickles-alcotest_pickl…
dannywillems Dec 1, 2023
99449ab
Merge pull request #14647 from MinaProtocol/steven-ci-net-repair
stevenplatt Dec 1, 2023
633f93e
updated testworld main.tf
stevenplatt Dec 1, 2023
8ef255a
helm disk updates
stevenplatt Dec 1, 2023
0e160f4
testworld logging infra
stevenplatt Dec 1, 2023
7f59297
RFC: update the technical details and add another drawback from discu…
Sventimir Dec 4, 2023
54da920
Merge branch 'develop' into alert/fix-stuck-in-catchup-and-bootstrap
ghost-not-in-the-shell Dec 4, 2023
354f9d7
Merge pull request #14652 from MinaProtocol/steven-testworld-2-0-merg…
stevenplatt Dec 4, 2023
181fe27
Revert "Merge pull request #14549 from MinaProtocol/dannywillems/upda…
mrmr1993 Dec 4, 2023
7782562
Upgrade proof-systems to the last non-broken PR
mrmr1993 Dec 4, 2023
aff8c30
Upgrade proof-systems to develop with the bad PR reverted
mrmr1993 Dec 4, 2023
96167da
Merge pull request #14659 from MinaProtocol/feature/remove-bad-proof-…
mrmr1993 Dec 4, 2023
a196235
Bump up proof-systems to revert snarkyjs-bindings
dannywillems Dec 4, 2023
f1434e1
Bumping up snarkyjs to current develop to revert some commits in bind…
dannywillems Dec 4, 2023
170a5b2
Bump up snarkyjs with reverted commits before generating artefacts
dannywillems Dec 4, 2023
da50ad1
Bumping up snarkyjs after commiting artefacts
dannywillems Dec 4, 2023
c74ad9e
RFC: Elaborate on testing the zkApp command limit.
Sventimir Dec 5, 2023
ef58153
Merge branch 'develop' into sventimir/fix-fork-generation-develop
Sventimir Dec 5, 2023
27157c9
Apply reviewer's suggestions.
Sventimir Dec 5, 2023
089e1af
Merge pull request #14660 from MinaProtocol/dannywillems/revert-snark…
dannywillems Dec 5, 2023
4b4bad8
Add a plan for integration testing as well.
Sventimir Dec 5, 2023
12131cf
Merge branch 'develop' into sventimir/limit-zkapp-cmds-per-block
Sventimir Dec 5, 2023
2f94025
Merge branch 'develop' into sventimir/fix-fork-generation-develop
stevenplatt Dec 5, 2023
7d03400
RFC: rename the file to avoid numbering conflict.
Sventimir Dec 6, 2023
79c6253
Merge pull request #14626 from MinaProtocol/sventimir/limit-zkapp-cmd…
Sventimir Dec 6, 2023
bc26d6d
Merge branch 'develop' into sventimir/fix-fork-generation-develop
stevenplatt Dec 6, 2023
ab24cde
Merge pull request #14285 from MinaProtocol/sventimir/fix-fork-genera…
Sventimir Dec 8, 2023
14b1130
Update kimchi library with latest develop changes
MartinMinkov Dec 11, 2023
ba1d03e
Merge branch 'develop' into feat/add-o1js-stubs-develop
MartinMinkov Dec 11, 2023
4b2ffbc
fix dune pathing in cargo kimchi wasm
MartinMinkov Dec 11, 2023
83432f5
archive healthcheck fix
stevenplatt Dec 11, 2023
6951b7e
updated healthcheck script values
stevenplatt Dec 11, 2023
1e360f7
Merge pull request #14695 from MinaProtocol/steven-healthcheck-fix
stevenplatt Dec 12, 2023
4f7c81b
Merge branch 'develop' into feat/add-o1js-stubs-develop
MartinMinkov Dec 13, 2023
4c9d45c
feat: fixup mina to compile as submodule in o1js
MartinMinkov Dec 13, 2023
2513346
Merge branch 'develop' into alert/fix-stuck-in-catchup-and-bootstrap
ghost-not-in-the-shell Dec 14, 2023
5865a32
Clarify block production/validation after stop slot
joaosreis Dec 18, 2023
2199d14
Merge branch 'develop' into rfc/slot-tx-end
joaosreis Dec 18, 2023
2752963
Rename 0051-stop-transaction-processing.md to 0055-stop-transaction-p…
joaosreis Dec 18, 2023
944d28e
Merge pull request #14138 from MinaProtocol/rfc/slot-tx-end
joaosreis Dec 18, 2023
605b8c8
Merge pull request #14619 from MinaProtocol/alert/fix-stuck-in-catchu…
ghost-not-in-the-shell Dec 18, 2023
b85516e
Merge branch 'develop' into merge-develop-main
mitschabaude Dec 19, 2023
2e25d22
o1js
mitschabaude Dec 19, 2023
6d2398b
Randomize runtime tables test
volhovm Dec 18, 2023
4abe31c
Merge pull request #14733 from MinaProtocol/volhovm/improve-runtime-t…
dannywillems Dec 19, 2023
cf39617
Merge branch 'develop' into feat/add-o1js-stubs-develop
MartinMinkov Dec 19, 2023
9fb4f06
move /kimchi/{wasm,js} to kimchi_bindings
mitschabaude Dec 19, 2023
a681b13
add back newline
mitschabaude Dec 19, 2023
d22d685
fix(rust.nix): update regex pattern to match kimchi_bindings instead …
MartinMinkov Dec 19, 2023
4934295
Merge pull request #14649 from MinaProtocol/feat/add-o1js-stubs-develop
MartinMinkov Dec 19, 2023
8d39e55
Add a comment for the future
volhovm Dec 19, 2023
5438032
Fix runtime table test id collision bug
volhovm Dec 19, 2023
aec2dd2
Make lookup tables much more randomized
volhovm Dec 19, 2023
220538b
Revert "Add a comment for the future"
volhovm Dec 19, 2023
4025c51
Rename indices -> indexes ( :( )
volhovm Dec 19, 2023
ac5573d
Merge pull request #14748 from MinaProtocol/volhovm/14746-flaky-test-…
volhovm Dec 20, 2023
6acef0d
Merge branch 'merge-rampup-main' into merge-develop-main
mitschabaude Dec 20, 2023
7c97d6f
Merge branch 'develop' into merge-develop-main
mitschabaude Dec 20, 2023
c5cc2b4
fix diff to develop after brute-force merge of files added in both br…
mitschabaude Dec 20, 2023
8cb4651
one more fix
mitschabaude Dec 20, 2023
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
24 changes: 0 additions & 24 deletions .github/workflows/nix.yml

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,26 @@
from gcloud_entrypoint import handle_incoming_commit_push_json,config,verify_signature

parser = argparse.ArgumentParser()
parser.add_argument('payload', help='test file from github webhook push event')
parser.add_argument('secret', help='secret for calculating signature')
parser.add_argument('incoming_signature', help='payload signature')
parser.add_argument('--operation', "-o",type=str, help='debug operation to perform',required=True)
parser.add_argument('--payload', "-p",type=str, help='test file from github webhook push event',required=False)
parser.add_argument('--secret', "-s", type=str, help='secret for calculating signature',required=False)
parser.add_argument('--incoming_signature', "-i",type=str, help='payload signature',required=False)

args = parser.parse_args()

if not os.path.isfile(args.payload):
sys.exit('cannot find test file :',args.payload)
if "verify" in args.operation:
if not os.path.isfile(args.payload):
sys.exit('cannot find test file :',args.payload)

with open(args.payload,encoding="utf-8") as file:
data = json.load(file)
json_payload = json.dumps(data)
verify_signature(json_payload, args.secret, "sha=" + args.incoming_signature)
with open(args.payload,encoding="utf-8") as file:
data = json.load(file)
json_payload = json.dumps(data)
verify_signature(json_payload, args.secret, "sha=" + args.incoming_signature)

elif "handle_payload" in args.operation:
with open(args.payload,encoding="utf-8") as file:
data = json.load(file)
json_payload = json.dumps(data)
handle_incoming_commit_push_json(data,config=config)
else:
print("operation no supported", file=sys.stderr)
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@
program will attempt to merge new changes to compatible branch
'''
branches = dict(
compatible = 'rampup',
rampup = 'berkeley',
compatible = 'berkeley',
berkeley = 'develop'
)

Expand Down Expand Up @@ -47,17 +46,21 @@ def tmp_branch_name(source_branch,target_branch):
'''
Method which will be used for naming temp branch (needed for checking merge ability)
'''
return f"sync-{source_branch}-with-{target_branch}"
return f"fix-conflict-of-{source_branch}-and-{target_branch}"

'''
Specific settings for PR creation (if there is necessity to do it based on current repo situation).
'''
pr = {
"title_prefix": "[Branches auto sync failure] ",
"title_prefix": "[Fix me] Merge conflict between ",
"assignees": ["dkijania"],
"body_prefix": "This is auto-generated PR in order to solve merge conflicts between two branches.",
"draft": 'false',
"labels": ["auto-sync"]
"labels": ["auto-sync"],
"alert_header": """
# :exclamation: New Conflict detected :exclamation:
This PR conflicts with one of our main branches. As a result below Pull requests were created to aid you in resolving merge conflicts. Each temporary branch contains *cherry picked* changes from this PR.
"""
}

'''
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
''' Github api tailored for auto-sync needs'''

import json
from github import Github,PullRequest
from github import Github,PullRequest,InputGitTreeElement
import requests

class GithubException(Exception):
Expand Down Expand Up @@ -145,6 +145,42 @@ def delete_branch(self, branch_name):
'''
self.repository().delete_branch(branch_name)

def cherry_pick_commits(self,new_branch,commits,skip_merges):
'''
Cherry picks commits to new branch. It doesn't perform true git cherry pick
but rather manually copies git tree and along with commit messages and applies
it to new base tree

Parameters:
new_branch (string): Branch name to insert commits
commits (List of GitCommit): List of commits to apply
skip_merges (Bool): Flag which controls if we should apply merge commits
'''
if skip_merges:
commits = list(filter(lambda commit: len(commit.parents) < 2, commits))

for commit in commits:
template_tree = self.repository().inner.get_git_tree(commit.sha)

branch_obj = self.repository().inner.get_branch(new_branch)
base_tree = self.repository().inner.get_git_tree(branch_obj.commit.sha)


inputs = []
for element in template_tree.tree:
inputs.append(InputGitTreeElement(
path=element.path, mode=element.mode, type=element.type, sha=element.sha
))

tree = self.repository().inner.create_git_tree(inputs, base_tree)
commit = self.repository().inner.create_git_commit(
message=commit.commit.message,
tree=tree,
parents=[branch_obj.commit.commit]
)

self.repository().update_ref(new_branch,commit.sha)

def create_pull_request(self,config,source_branch,target_branch,new_branch):
"""
Creates new pull request
Expand All @@ -158,7 +194,7 @@ def create_pull_request(self,config,source_branch,target_branch,new_branch):
Returns:
return PullRequest object
"""
title = config.pr["title_prefix"] + f"into {source_branch} from {target_branch}"
title = config.pr["title_prefix"] + f" {source_branch} and {target_branch}"
assignee_tags = list(map(lambda x: "@" + x, config.pr["assignees"]))
separator = ", "
body = config.pr["body_prefix"] + "\n" + separator.join(assignee_tags)
Expand All @@ -181,7 +217,7 @@ def create_pull_request_for_tmp_branch(self,config,source_branch,temp_branch):
Returns:
return PullRequest object
"""
title = config.pr["title_prefix"] + f"into {source_branch} from {temp_branch} for commit {self.branch(source_branch).commit.sha[0:6]}"
title = config.pr["title_prefix"] + f"{source_branch} from {temp_branch} for commit {self.branch(source_branch).commit.sha[0:6]}"
assignee_tags = list(map(lambda x: "@" + x, config.pr["assignees"]))
separator = ", "
body = config.pr["body_prefix"] + "\n" + separator.join(assignee_tags)
Expand All @@ -207,10 +243,19 @@ def merge(self,base,head,message):
Parameters:
base (string): base branch name
head (string): head branch name
commit (string): commit message
commit (string): commit message

"""
self.repository().merge(base,head,message)

def get_opened_not_draft_prs_from(self,head):
"""
Get prs with given head which are non draft and opened

Parameters:
head (string): head branch name
"""
return list(self.repository().get_pulls_from(head,draft=False,open=True))

class Repository:
"""
Expand All @@ -237,6 +282,18 @@ def merge(self,base,head,message):
else:
self.inner.merge(base,head,message)

def get_pulls_from(self,head,open,draft):
"""
Get prs with given head and state

Parameters:
head (string): head branch name
open (Bool): is opened
draft (Bool): is draft PR
"""
state = "open" if open else "closed"
return filter(lambda x: x.draft == draft and x.head.ref == head, self.inner.get_pulls(state,head))

def create_pull(self,title,body,base,head,draft,assignees,labels):
if self.dryrun:
print(f'{self.dryrun_suffix} Pull request created:')
Expand Down Expand Up @@ -285,6 +342,28 @@ def fast_forward(self,source,target_sha):
return output["object"]["sha"]
raise GithubException(f'unable to fast forward branch {source} due to : {res.text}')

def update_ref(self,source,target_sha):
"""
Force update ref to new sha

Parameters:
source (string): source branch name
target_sha (Bool): target ref
"""
if self.dryrun:
print(f"{self.dryrun_suffix} Updating ref '{source}' to '{target_sha}'")
return target_sha
res = requests.patch(f"https://api.github.com/repos/{self.username}/{self.repo}/git/refs/heads/{source}",
json={"sha": target_sha, "force": True},
headers=self.authorization_header,
timeout=self.timeout
)
if res.status_code == 200:
output = json.loads(res.text)
return output["object"]["sha"]
raise GithubException(f'unable to fast forward branch {source} due to : {res.text}')


def delete_branch(self,branch_name):
if self.dryrun:
print(f"{self.dryrun_suffix} Delete branch '{branch_name}'")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,11 @@ def handle_incoming_commit_push(request):
print("done")
return

def handle_incoming_commit_push_json(json,config):
"""
Main logic for handling incoming github webhook event
def handle_incoming_commit_push_in_stable_branches(source_branch):
"""Hand incoming commit on major branch.
Args:
source_branch (String): Name of branch which commit was pushed to.
"""
payload_info= GithubPayloadInfo(json)

source_branch = payload_info.incoming_branch

if not source_branch in config.branches:
print(f"change in '{source_branch}' is not supported ")
return

target_branch = config.branches[source_branch]
github = GithubApi(config.github)
Expand Down Expand Up @@ -78,3 +72,120 @@ def handle_incoming_commit_push_json(json,config):
print(f"there is no merge conflict. merging {new_branch} into {target_branch}...")
github.merge(target_branch,new_branch, f"Github Autosync: {source_branch} -> {target_branch}")
github.delete_branch(new_branch)

def get_branches_earlier_in_chain(branches,branch):
""" Retrieves names of branches earlier in the chain that incoming one
Args:
branches (Dictionary): Configuration element which defines branches relation.
branch (String): Incoming branch
Returns:
List of branches earlier in the chain
"""
inv_branches = {v: k for k, v in branches.items()}
return get_branches_later_in_chain(inv_branches,branch)

def get_branches_later_in_chain(branches,branch):
""" Retrieves names of branches earlier in the chain that incoming one
Args:
branches (Dictionary): Configuration element which defines branches relation.
branch (String): Incoming branch
Returns:
List of branches later in the chain
"""
output = []
next = branches.get(branch)
while next is not None:
output.append(next)
next = branches.get(next)
return output


def handle_pr(pr,github,source_branch):
""" Handle push in personal pr
Args:
pr (PullRequest): Configuration element which defines branches relation.
github (Github): Github wrapper
branch (String): Incoming branch
"""
branches = get_branches_earlier_in_chain(config.branches,pr.base.ref)
later_branches = get_branches_later_in_chain(config.branches,pr.base.ref)
branches.extend(later_branches)

data = []

for branch in branches:
if github.has_merge_conflict(branch,source_branch):
print(f"{branch} and {source_branch} branches have a merge conflict! creating PR to address those changes...")

new_branch = config.tmp_branch_name(source_branch,branch)

if github.branch_exists(new_branch):
print(f"{new_branch} already exists therefore we will recreate it")
github.delete_branch(new_branch)

github.create_new_branch(new_branch,branch)

commits = pr.get_commits()
github.cherry_pick_commits(new_branch,commits,skip_merges=True)

title = github.create_pull_request(config,source_branch,branch,new_branch)
print(f"new PR: '{title}' created. Please resolve it before merge...")

for pr in github.repository().inner.get_pulls(head=new_branch):
if pr.title == title:
data.append((pr.html_url,new_branch,branch))
if any(data):
pr.create_issue_comment(comment_conflict(data))

def handle_incoming_commit_push_in_personal_branches(source_branch):
"""
Main handler for change in personal branch
"""
github = GithubApi(config.github)

pull_requests = github.get_opened_not_draft_prs_from(source_branch)

if not any(pull_requests):
print(f"skipping... merge check as branch {source_branch} does not have any non-draft pr opened")

for pr in pull_requests:
handle_pr(pr,github,source_branch)

def comment_conflict(data):
"""
Template for issue comment after conflict in PR is detected
"""
content = config.pr["alert_header"] + """
<table>
<tr>
<th>Pull request name</th>
<th> Temporary branch name</th>
<th> Conflicting branch </th>
</tr>
"""
for (url,base,branch) in data:
content = content + f"""
<tr>
<td> <a href="{url}"> {url} </a> </td>
<td> {base} </td>
<td> {branch} </td>
</tr>
"""
content = content + """
</table>
"""
return content

def handle_incoming_commit_push_json(json,config):
"""
Main logic for handling incoming github webhook event
"""
payload_info= GithubPayloadInfo(json)

source_branch = payload_info.incoming_branch

if not source_branch in config.branches:
handle_incoming_commit_push_in_personal_branches(source_branch)
else:
handle_incoming_commit_push_in_stable_branches(source_branch)

Loading