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

chore: Merge main into boojum #253

Merged
merged 47 commits into from
Oct 18, 2023
Merged

Conversation

StanislavBreadless
Copy link
Contributor

What ❔

Why ❔

Checklist

  • PR title corresponds to the body of PR (we generate changelog entries from PRs).
  • Tests for the changes have been added / updated.
  • Documentation comments have been added / updated.
  • Code has been formatted via zk fmt and zk lint.

Deniallugo and others added 30 commits October 11, 2023 15:36
# What ❔

Fix extremly expensive query

## Why ❔
It could overload our database

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

Signed-off-by: Danil <deniallugo@gmail.com>
…orks (#198)

Co-authored-by: Yury Akudovich <ya@matterlabs.dev>
# What ❔

Added L1 batch seal criterion for number of L2 to L1 logs

## Why ❔

Number of logs must be <= 512 per batch.

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [x] Tests for the changes have been added / updated.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
# What ❔

Removes a leftover code from private repo times.
# What ❔

Conditional Docker login in CI only on push to main branch or against
tag

## Why ❔

- We should be logging in to Docker registries only when we intend to
push images
- Secrets will not be available for workflows triggered against PRs
created from works, so the current approach is not working anyway

## Checklist

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
# What ❔

Subj

## Why ❔

CI should be runnable on PRs triggered from externally contributed code

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
# What ❔

Increase RAM requirements for External Node

## Why ❔

We have evidence that our tree requires more than 32 GB of RAM.

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
…206)

# What ❔

- Trigger lightweight CI if only markdown is changed in PR
- Improve "fallback" to running "all" CI
- More granular conditions to run core and prover CI

## Why ❔

Faster CI, less runner time

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
# What ❔

Current regex only triggers Docs CI if markdown file is changed in root
of the repo, this change fixes that behaviour

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
I add a very minor change of adding postgresql installation command on
linux.

---------

Co-authored-by: Roman Brodetski <Roman.Brodetski@gmail.com>
Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
# What ❔

<!-- What are the changes this PR brings about? -->
<!-- Example: This PR adds a PR template to the repo. -->
<!-- (For bigger PRs adding more context is appreciated) -->

Run all CI jobs when some global dependencies change

## Why ❔

<!-- Why are these changes done? What goal do they contribute to? What
are the principles behind them? -->
<!-- Example: PR templates ensure PR reviewers, observers, and future
iterators are in context about the evolution of repos. -->

When want to validate all CI jobs when dependencies for everything
change

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
when you click on Discord on README. it takes you to invalid link. so i
updated it to the official Zksync Discord.

---------

Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
Directory name has changed.

Co-authored-by: Roman Brodetski <Roman.Brodetski@gmail.com>
Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
✌️

Co-authored-by: Roman Brodetski <Roman.Brodetski@gmail.com>
Co-authored-by: Danil <deniallugo@gmail.com>
Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
# What ❔

Subj

## Why ❔

We don't need to call APi when env `ERA_BELLMAN_CUDA_RELEASE` is
available and it's always available for internal contributors

## Checklist

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
Co-authored-by: Roman Brodetski <Roman.Brodetski@gmail.com>
Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
# What ❔

<!-- What are the changes this PR brings about? -->
<!-- Example: This PR adds a PR template to the repo. -->
<!-- (For bigger PRs adding more context is appreciated) -->

## Why ❔

<!-- Why are these changes done? What goal do they contribute to? What
are the principles behind them? -->
<!-- Example: PR templates ensure PR reviewers, observers, and future
iterators are in context about the evolution of repos. -->

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

Signed-off-by: Danil <deniallugo@gmail.com>
# What ❔

<!-- What are the changes this PR brings about? -->
<!-- Example: This PR adds a PR template to the repo. -->
<!-- (For bigger PRs adding more context is appreciated) -->

## Why ❔

<!-- Why are these changes done? What goal do they contribute to? What
are the principles behind them? -->
<!-- Example: PR templates ensure PR reviewers, observers, and future
iterators are in context about the evolution of repos. -->

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

Signed-off-by: Danil <deniallugo@gmail.com>
🤖 I have created a release *beep* *boop*
---


##
[16.0.2](core-v16.0.1...core-v16.0.2)
(2023-10-12)


### Bug Fixes

* **API:** return correct v value for Legacy tx
([#154](#154))
([ed502ea](ed502ea))
* **API:** U256 for chainId in api::Transaction struct
([#211](#211))
([ca98a1c](ca98a1c))
* **prover:** Fix statistic query
([#193](#193))
([5499093](5499093))
* **state-keeper:** Add L2ToL1LogsCriterion
([#195](#195))
([64459b2](64459b2))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Signed-off-by: Danil <deniallugo@gmail.com>
Co-authored-by: Danil <deniallugo@gmail.com>
# What ❔

Re-adds accidentally deleted formatting check for docs CI

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.
# What ❔

Changing the way, how tracers are working in VM. Try to make less calls
and add more static dispatching

Tracer Api changes: 

1. Method before decoding now always empty (zk_evm don't call it) 
2. Method before cycle doesn't exist anymore
3. Method after_cycle renamed to finish_cycle and unified with should
stop execution
4. Method save_results was removed 
5. All methods from ExecutionProcessing trait moved to VmTracer


Vm Changes: 
Refund tracer now dispatching statically and not dynamically 

## Why ❔

<!-- Why are these changes done? What goal do they contribute to? What
are the principles behind them? -->
<!-- Example: PR templates ensure PR reviewers, observers, and future
iterators are in context about the evolution of repos. -->

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

---------

Signed-off-by: Danil <deniallugo@gmail.com>
occurence -> occurrence

Co-authored-by: Roman Brodetski <Roman.Brodetski@gmail.com>
Co-authored-by: Danil <deniallugo@gmail.com>
Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
…able (#192)

# What ❔

* When running witness in continuous mode, panic when you cannot load
the matching protocol version.

## Why ❔

* Witness is running with a given commitment key. At startup, it checks
if there is a matching protocol version for this key, and later uses
this protocol version to fetch its task.
* We are running witness in 2 modes: either 'batch' (where it runs up to
X tasks and quits) or continuous. Batch is mostly used in production,
while continuous is used in local deployments.
* And if in the local deployment, the database was not updated - and
protocol version is missing - then the job would get stuck forever (as
it will try to pickup job for non-existing protocol). So instead, let's
panic explicitly.
# What ❔
Refactoring triggers for release-please branches

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

---------

Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
# What ❔

Remove lifetime from multivm. Update zk_evm 1.3.1 to the version without
lifetime

## Why ❔

For better compatibility with the new VM versions, i've updated zk-evm
by removing lifetime from vm state

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

---------

Signed-off-by: Danil <deniallugo@gmail.com>
# What ❔

Remove necessary data struct from multivm.

## Why ❔

We've managed to remove lifetime and now VM instance can create all
necessary types just inside VMInstance

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [ ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ ] Code has been formatted via `zk fmt` and `zk lint`.

Signed-off-by: Danil <deniallugo@gmail.com>
# What ❔

Makes the `zksync_core` crate use `vise` metrics.

## Why ❔

This completes transition of the server codebase to `vise` metrics.

## Checklist

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
# What ❔

- Fixes formatting and linting in the `prover` directory
- Adds CI checks for format & lints in the `prover` directory
- Makes `prover/prover` and `prover/setup_key_generator_and_server`
compilable without a GPU.
- Fixes `ci_run` script (before, prover unit tests weren't being run at
all)
- Updates the `zk` tool to include `zk lint prover` and `zk test prover`

## Why ❔

Following good practices & reducing technical debt.

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [x] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
perekopskiy and others added 7 commits October 17, 2023 07:56
# What ❔

- `events_queue_commitment` and `bootloader_initial_content_commitment`
are calculated in full tree and saved into DB.
- nightly rust is used
- lints found by clippy are fixed

## Why ❔

Preparation for boojum upgrade

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [x] Tests for the changes have been added / updated.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.

---------

Co-authored-by: Stanislav Bezkorovainyi <stanislavbezkor@gmail.com>
…bs (#227)

# What ❔

# tasks_allowed_to_finish set to true for 1 off jobs

## Why ❔

* with `tasks_allowed_to_finish` set to true results in incorrect error
logging when no jobs are present

## Checklist

<!-- Check your PR fulfills the following items. -->
<!-- For draft PRs check the boxes as you complete them. -->

- [* ] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [ *] Code has been formatted via `zk fmt` and `zk lint`.
🤖 I have created a release *beep* *boop*
---


##
[7.2.0](prover-v7.1.1...prover-v7.2.0)
(2023-10-17)


### Features

* **boojum:** Adding README to prover directory
([#189](#189))
([c175033](c175033))
* **fri-prover:** In witness - panic if protocol version is not
available ([#192](#192))
([0403749](0403749))
* Rewrite server binary to use `vise` metrics
([#120](#120))
([26ee1fb](26ee1fb))


### Bug Fixes

* **prover-logging:** tasks_allowed_to_finish set to true for 1 off jobs
([#227](#227))
([0fac66f](0fac66f))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: zksync-era-bot <147085853+zksync-era-bot@users.noreply.github.com>
# What ❔

* article describing different types of prover keys (setup keys,
verification keys etc).

## Why ❔

* to increase team knowledge about what they do.

---------

Co-authored-by: Igor Borodin <hatemosphere@protonmail.com>
# What ❔

Expose API allowing to query Merkle proofs for a list of hashed keys at
a specific tree version (= L1 batch number).

## Why ❔

- This is one of components for recovering a node from a snapshot; it
will be used to authenticate snapshot chunks.
- In the future, it could be used for `eth_getProof`.

## Checklist

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [x] Tests for the changes have been added / updated.
- [ ] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
@StanislavBreadless StanislavBreadless requested review from yorik, alexandrst88, artmakh, hatemosphere and otani88 and removed request for a team October 18, 2023 12:09
@StanislavBreadless StanislavBreadless changed the title Merge main into boojum chore: Merge main into boojum Oct 18, 2023
@@ -1,7 +0,0 @@
-- Add up migration script here

ALTER TABLE l1_batches
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't forget to remove entry for this migration from _sqlx_migrations on boojnet env. cc @ly0va

core/lib/types/src/commitment.rs Outdated Show resolved Hide resolved
@ly0va ly0va merged commit 71ffe99 into boojum-integration Oct 18, 2023
26 of 31 checks passed
@ly0va ly0va deleted the sb-merge-main-into-boojum branch October 18, 2023 21:09
@danielCalbonero12345
Copy link

Hello

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.