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

Problem: sync upstream repo to v18.13.0 #42

Closed
wants to merge 308 commits into from

Conversation

JayT106
Copy link
Contributor

@JayT106 JayT106 commented Jan 18, 2024

What ❔

sync upstream repo to v18.13.0

zksync-admin-bot2 and others added 30 commits November 9, 2023 09:30
…in (#453)

"Update generated Prover FRI GPU setup-data keys from branch main"
…ix (#454)

## What ❔

update gpu prover setup data path to remove extra gpu suffix until
automation is fixed.

## Why ❔

* required for building GPU fri prover

## 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`.
## What ❔

Updating the batch verification code

## Why ❔

To port the fix from here:
matter-labs/era-contracts#93

## 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`.
## What ❔

Waits for l2 bridge init in custom bridge test.

## Why ❔

Previously we just waited 2 seconds which may be not enough in some
cases.

## 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 ❔

See subj

## 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*
---


##
[9.0.0](matter-labs/zksync-era@prover-v8.1.0...prover-v9.0.0)
(2023-11-09)


### ⚠ BREAKING CHANGES

* boojum integration
([#112](matter-labs/zksync-era#112))

### Features

* boojum integration
([#112](matter-labs/zksync-era#112))
([e76d346](matter-labs/zksync-era@e76d346))
* **core:** Split config definitions and deserialization
([#414](matter-labs/zksync-era#414))
([c7c6b32](matter-labs/zksync-era@c7c6b32))


### Bug Fixes

* **crypto:** update deps to include circuit fixes
([#402](matter-labs/zksync-era#402))
([4c82015](matter-labs/zksync-era@4c82015))
* **path:** update gpu prover setup data path to remove extra gpu suffix
([#454](matter-labs/zksync-era#454))
([2e145c1](matter-labs/zksync-era@2e145c1))
* Update prover to use the correct storage oracle
([#446](matter-labs/zksync-era#446))
([835dd82](matter-labs/zksync-era@835dd82))

---
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: Akash <[email protected]>
## What ❔

Every component implementing JobProcessor now exposes two metrics:

`job_attempts` -- heatmaps in grafana will be added displaying this
metric.
`max_attempts_reached` -- alert will fire when this metric is increased
(alert rules not added yet).

Also, `attempts` columns in DB were increased in both `get_next*`
methods and `requeue_stuck_jobs`, so it was basically `attempts += 2` on
retry. I removed `attempts` update in `requeue_stuck_jobs`.

## Why ❔

Better monitoring and alerting

## 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.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
## What ❔

- fix broken links

## Why ❔

- fix broken links

## 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 ❔

Disables a flaky test suite for EN.

## Why ❔

Test suite is flaky.

## 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 (lol).
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
## What ❔

Label `service` renamed to `service_name`.

## Why ❔

Our metrics scraping agent overwrites `service` with different value.

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
## What ❔

- DAL crate no longer loads `DATABASE_URL` and siblings, as well as
`DATABASE_POOL_SIZE` implicitly. Now they have to always be passed
externally.
- `DbVariant` is removed: DAL no longer assumes that there are different
databases.
- Some unused code was removed along the path.

## Why ❔

DAL was glued to the env configs. Now it isn't.

## 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 ❔

fix typo in server.ts

## Why ❔

WARINING --> WARNING

## 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.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.

Co-authored-by: Igor Aleksanov <[email protected]>
## What ❔

- sanity checks for some system log values
- bug fixed that real proofs can be sent before batches are committed
- commitment is set only by full tree
- fix eth_watcher index out of range for EOA-controlled upgrades

## Why ❔

bug fixes

## 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.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.

---------

Co-authored-by: “perekopskiy” <[email protected]>
Co-authored-by: Lyova Potyomkin <[email protected]>
Co-authored-by: perekopskiy <[email protected]>
## What ❔

- fixed document

## Why ❔

- fixed document

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.

---------

Co-authored-by: Igor Aleksanov <[email protected]>
## What ❔

Saves commitment for pre-boojum batches unconditionally

## Why ❔

They don't have `events_queue_commitment` but `commitment` should be
saved anyway

## 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 ❔

Add commands to zk stack to setup a prover (for now only CPU, it blocks
the GPU option), and adds the necessary components to the compose file

## Why ❔

"Without a prover, a hyperchain is nothing more than a even worst OP
rollup" - Canales, Ramon

## Checklist

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [ ] 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 the lifetime parameter in `MerkleTree`, `MiniMerkleTree` and
related types.

## Why ❔

The lifetime is there because of `HashTree` / `HashEmptySubtree` traits,
which only have stateless `'static` implementations now and for the
foreseeable future. Thus, these lifetimes can be replaced with
`'static`.

## Checklist

- [x] PR title corresponds to the body of PR (we generate changelog
entries from PRs).
- [x] Code has been formatted via `zk fmt` and `zk lint`.
…pt (#483)

## What ❔

Moves current prover FRI setup keys paths extraction from copy-pasted
inline GHA steps to a separate script

## Why ❔

- DRY
- Can be used in another places, like local testing, workflows in
another repos, etc

## 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: Artem Makhortov <[email protected]>
## What ❔

Changes README for module

## Why ❔

Current title is wrong

## 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.
- [x] Documentation comments have been added / updated.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
## What ❔

vks should be updated if any vk is update

## Why ❔

contract were changed, changing server as well

## 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`.
## 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`.
## What ❔

This PR adds a new JSON-RPC endpoint `zks_getProof` that allows users to
request proofs
of data in the tree that can later be verified against storarage roots
at a given point
in batch history.

---------

Co-authored-by: Roman Brodetski <[email protected]>
🤖 I have created a release *beep* *boop*
---


##
[18.0.0](matter-labs/zksync-era@core-v17.1.0...core-v18.0.0)
(2023-11-14)


### ⚠ BREAKING CHANGES

* boojum integration
([#112](matter-labs/zksync-era#112))

### Features

* **basic_witness_input_producer:** Witness inputs queued after BWIP run
([#345](matter-labs/zksync-era#345))
([9c2be91](matter-labs/zksync-era@9c2be91))
* boojum integration
([#112](matter-labs/zksync-era#112))
([e76d346](matter-labs/zksync-era@e76d346))
* **core:** adds a get proof endpoint in zks namespace
([#455](matter-labs/zksync-era#455))
([f4313a4](matter-labs/zksync-era@f4313a4))
* **core:** Split config definitions and deserialization
([#414](matter-labs/zksync-era#414))
([c7c6b32](matter-labs/zksync-era@c7c6b32))
* **dal:** Do not load config from env in DAL crate
([#444](matter-labs/zksync-era#444))
([3fe1bb2](matter-labs/zksync-era@3fe1bb2))
* **house_keeper:** Remove GCS Blob Cleaner
([#321](matter-labs/zksync-era#321))
([9548914](matter-labs/zksync-era@9548914))
* **job-processor:** report attempts metrics
([#448](matter-labs/zksync-era#448))
([ab31f03](matter-labs/zksync-era@ab31f03))
* **vm:** Use the one interface for all vms
([#277](matter-labs/zksync-era#277))
([91bb99b](matter-labs/zksync-era@91bb99b))


### Bug Fixes

* **boojnet:** various boojnet fixes
([#462](matter-labs/zksync-era#462))
([f13648c](matter-labs/zksync-era@f13648c))
* change vks upgrade logic
([#491](matter-labs/zksync-era#491))
([cb394f3](matter-labs/zksync-era@cb394f3))
* **eth-sender:** Correct ABI for get_verification_key
([#445](matter-labs/zksync-era#445))
([8af0d85](matter-labs/zksync-era@8af0d85))
* **metadata-calculator:** Save commitment for pre-boojum
([#481](matter-labs/zksync-era#481))
([664ce33](matter-labs/zksync-era@664ce33))
* Versioned L1 batch metadata
([#450](matter-labs/zksync-era#450))
([8a40dc3](matter-labs/zksync-era@8a40dc3))
* **vm:** storage_refunds for `vm_refunds_enhancement`
([#449](matter-labs/zksync-era#449))
([1e1e59f](matter-labs/zksync-era@1e1e59f))

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

## What ❔

- `events_queue_commitment` is not calculated if `events_queue` is
missing
- `metadata_calculator` doesn't require `header.protocol_version` is
present

## Why ❔

`events_queue` is missing for old batches, `header.protocol_version` is
none for old batches in ENs databases

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
🤖 I have created a release *beep* *boop*
---


##
[18.0.1](matter-labs/zksync-era@core-v18.0.0...core-v18.0.1)
(2023-11-15)


### Bug Fixes

* **metadata-calculator:** Do not require events_queue for old batches
([#492](matter-labs/zksync-era#492))
([0c454fc](matter-labs/zksync-era@0c454fc))

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

## What ❔

* Derived `Default` for `CallTracerConfig`
* Allow default values for `tracer_config` field inside `TracerConfig` 
* Integration tests for this exact issue to confirm it is solved.
* Running `zk test i api` will now also run the test suite for the debug
namespace. (this is optional and not required in any way for the bug
fix, so I can remove it)

## Why ❔

Check out the discussion in #451 
The following `debug` namespace rpc methods would throw an error if you
would include a `TracerConfig` as an argument but only specified the
`tracer` and not also the `tracer_config` (see issue mentioned above for
full description of the issue):

* `debug_traceBlockByNumber`
*  `debug_traceBlockByHash`
*  `debug_traceCall`
*  `debug_traceTransaction`

Some ETH nodes I tested do not throw an error in this case, so the
zkSync node should behave the same way after this fix.

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
## What ❔

 update shivini dependency to switch to era-cuda

## Why ❔

* take latest fixes from shivini(gpu prover) that includes
implementation of batch FRI query

## 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`.

---------

Co-authored-by: zksync-admin-bot2 <[email protected]>
## What ❔

`events_queue_commitment`, `bootloader_initial_content_commitment` are
checked in proof-data-handler only for post-boojum batches.

## Why ❔

These values are not present for pre-boojum batches.

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
🤖 I have created a release *beep* *boop*
---


##
[18.0.2](matter-labs/zksync-era@core-v18.0.1...core-v18.0.2)
(2023-11-16)


### Bug Fixes

* **api:** `debug_trace*` no longer throws error if the `TracerConfig`
object is incomplete
([#468](matter-labs/zksync-era#468))
([cb873bd](matter-labs/zksync-era@cb873bd))
* **proof-data-handler:** Check commitments only for post-boojum
([#500](matter-labs/zksync-era#500))
([c3a7651](matter-labs/zksync-era@c3a7651))

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

## What ❔

Fix bug

## Why ❔

Fix bug

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
avocadodefi and others added 24 commits December 28, 2023 18:19
Remove the comma after "doc": "The goal of this doc is to show you some
more details on how zkSync works internally."

## 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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

fixed path

## 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. -->

- [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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

Fixing possiblity to possibility

## Why ❔

The modifications are straightforward and aim to enhance the accuracy of
the documentation.

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.

Co-authored-by: Fedor Sakharov <[email protected]>
Add "at" after "look": "Now let's take a look at what's inside:"

## 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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔
fix some minor typo in readme.md and overview.md files

## Why ❔
I think it’s important to let users read the most accurate documentation
## What ❔

fixed typo

## 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. -->

- [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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

fix error link

## Why ❔

404

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

fix docs

## Why ❔

404
<img width="1268" alt="image"
src="https://github.com/matter-labs/zksync-era/assets/148616461/7cee754e-6ca5-4ba3-8306-03d85b410f3e">

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.

---------

Co-authored-by: Igor Aleksanov <[email protected]>
## What ❔

fix link

## Why ❔

<img width="963" alt="image"
src="https://github.com/matter-labs/zksync-era/assets/148769700/8a9577b2-ced7-4b6c-bdcc-6ba0942af334">

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

fix row

## Why ❔

Error row

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.

---------

Co-authored-by: Fedor Sakharov <[email protected]>
## 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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

fixed typo


## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## 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. -->

- [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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.

---------

Co-authored-by: Igor Aleksanov <[email protected]>
## What ❔

fixed typo

## 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. -->

- [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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

fix docs

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

I fixed some typos in the documentation.

## 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. -->

- [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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

- Replaces uses of `G: L1GasPriceProvider` with `dyn
L1GasPriceProvider`.
- ...as a result, `StateKeeper` and `TxSender` (and thus all the API
structures) are now generic-free.

## Why ❔

- Prerequisite for modular system (generic types are hard for
dynamically-configured setup).
- Invoking `L1GasPriceProvider` is not related to any hot loops where
dynamic dispatch would be noticeable, so having it as a generic is kinda
meaningless anyways.

## 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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔
Moves contracts build to separate job and reuses them as an artifact in
further build jobs

## Why ❔
To decrease CI build times

## 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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔
Fix CI workflows for build core components

## Why ❔
Broken CI for core components

## 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`.
- [x] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔
This PR changes the wizard to not return from `zk status prover` if
there is a lag between blocks committed by eth sender and blocks sealed
by the state keeper.

## Why ❔
Before this PR, if there was a lag, users couldn't see prover stats.
Without this `return` they now can.

## 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.
- [x] Code has been formatted via `zk fmt` and `zk lint`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

Removes TPS Limiter from TX Sender component.

## Why ❔

- It didn't work properly: limit is applied per API server, and API
servers are horizontally scalable.
- It doesn't seem to be configured in any of our envs.
- It doesn't really make sense in context of ENs.
- We have other mempool protection measures anyways (tx dry-run, nonce
limits, etc).

## 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`.
- [ ] Spellcheck has been run via `cargo spellcheck
--cfg=./spellcheck/era.cfg --code 1`.
## What ❔

- added zksolc v1.3.19 for contract verifier

## Why ❔

- zksolc v1.3.19 is now latest
🤖 I have created a release *beep* *boop*
---


##
[18.13.0](matter-labs/zksync-era@core-v18.12.0...core-v18.13.0)
(2024-01-02)


### Features

* **contract-verifier:** add zksolc v1.3.19
([#797](matter-labs/zksync-era#797))
([2635570](matter-labs/zksync-era@2635570))
* Remove generic bounds on L1GasPriceProvider
([#792](matter-labs/zksync-era#792))
([edf071d](matter-labs/zksync-era@edf071d))
* Remove TPS limiter from TX Sender
([#793](matter-labs/zksync-era#793))
([d0e9296](matter-labs/zksync-era@d0e9296))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
@JayT106 JayT106 self-assigned this Jan 18, 2024
@thomas-nguy
Copy link
Member

thanks for the PR

I think it is just easier at the moment to rebase our changes on top of their release branch

  • checkout 18.13.0 release branch
  • cherry pick last commit from main branch
  • review and force push to main branch

reason is that our changes are quite minimal so it is more manageable to fix our changes rather than fixing conflicts on hundreds of commits

@JayT106
Copy link
Contributor Author

JayT106 commented Jan 19, 2024

thanks for the PR

I think it is just easier at the moment to rebase our changes on top of their release branch

  • checkout 18.13.0 release branch
  • cherry pick last commit from main branch
  • review and force push to main branch

reason is that our changes are quite minimal so it is more manageable to fix our changes rather than fixing conflicts on hundreds of commits

So current main branch doesn't include our cronos changes. Do you want me to cherry-pick the cronos changes and do force push directly?

Personally I would like to do PR so we can keep the code changes history. It will be more easily to maintain the repo (if we need rollback the code in future). But it requires doing Rebase and merge settings in PR

@thomas-nguy
Copy link
Member

thomas-nguy commented Jan 20, 2024

Yeah I understand but our custom changes is just related to base token implementation at the moment

Once this get merged, we can completely switch to upstream solution and discard our changes

matter-labs/era-contracts#29

Also once modularisation in the zkstack is completed, we will be able to have our own customisation and commits without having to fix conflict when rebasing with upstream everytime.

For the time being, cherry picking seems the easiest solution

I think we should also help them to modularize the repo. Maybe moving the scripts to a separate location could help or modularizaing the scripts to allow custom changes but this need to be discussed upstream

@JayT106 JayT106 closed this May 30, 2024
@thomas-nguy thomas-nguy deleted the jt/upstream-sync-v18.13.0 branch July 19, 2024 05:21
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.