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

EOF merge #12

Merged
merged 54 commits into from
Dec 18, 2023
Merged

EOF merge #12

merged 54 commits into from
Dec 18, 2023

Conversation

faramozzayw
Copy link
Collaborator

No description provided.

kristinaNikolaevaa and others added 30 commits September 18, 2023 15:28
* NDEV 1982 neon api tests

* Update docker-compose-ci.yml

* fix host name

* fixed compose file

* Update test_neon_core_api.py
* Move neon_lib::types::trace module into neon_lib::event_listener

* Promote evm_loader::evm::tracing module to directory

* Move neon_lib::event_listener module into evm_loader::evm::tracing

* Inject Tracer as Machine field + remove environmental crate

* cargo clippy --fix + cargo fmt

* Add tracing feature back

* CR

* Move Bytes struct to bytes module

* Rename bytes::Bytes to hexbytes::HexBytes
* Update docker-compose-ci.yml

* fixed pattern

* Update docker-compose-ci.yml
* moved operators account creating to tests

* Update conftest.py

* added more operators

* fix path

* deleted unused files

* Update Dockerfile

* back create-test-account.sh

* Update Dockerfile

* Create neon_token_keypair.json

* fix

* Update Dockerfile
* Made `TracerType` dynamic

* Refactored. Added support for different tracer types. Moved debug tracing functionality from Tracer API.

* Fixed warnings

* Added support of byte-vector buffer in order to reduce cloning

* Reduced cloning of `return_data`

* Removed unused `trace_stack`

* Marked `Buffer::from_account` as `unsafe`

* Small optimization

* Restructured modules, simplified code

* Rewritten `StructLogger` tracer in order to simplify the code

* Rewritten `opcode_call_precompile_impl` to more idiomatic

* Rolled back changes rejected during review

* Updated serde version

* Updated serde version

* Fixed arguments for `emulate-hash` in Neon CLI
* NDEV-2117 Check holder address

* NDEV-2117 Fix tests

* NDEV-2117 Fix tests

---------

Co-authored-by: Semen Medvedev <[email protected]>
 EIP2930: Tx envelop and AccessList transaction support
- Uses individual structs for Transactions
- Adds tests for different structure of access list
- Changes Transaction core type and it's usage everywhere
* NDEV-2133: Implement a mechanism to obtain NEON_REVISION
* NDEV-2133: Make get_elf_parameter fail-safe
…ts (neonevm#188)

* NDEV-2175: Use tracing::instrument on neon-api endpoints

* Add request id

* cargo clippy

* Custom Debug implementation for TxParamsRequestModel
* Remove #[allow(dead_code)]

* NDEV-2184: Report error when requested too early slot
Remove emulate-hash, trace-hash and trace-next-block.
Delete everything related to accessing indexer database.
* NDEV-2183: Implement get_sync_status for eth_syncing
* added pr_url as param

* fix param name

* Update pipeline.yml
andreisilviudragnea and others added 23 commits October 27, 2023 07:48
The main purpose of this PR is to remove usages of [`block_in_place`](https://docs.rs/tokio/latest/tokio/task/fn.block_in_place.html) and to re-use the same code in both an async (`neon-api`) and non-async (`evm-loader`) context.

- Replaced `#[cfg(feature = "tracing")]` with `#[cfg(target_os = "solana")]` and extended its usage to:
  - code from `evm-loader` crate used only as a library (`#[cfg(not(target_os = "solana")]`);
  - code from `evm-loader` crate used only as part of a Solana program (`#[cfg(target_os = "solana")]`).
- Replaced [`axum`](https://github.com/tokio-rs/axum) with [`actix-web`](https://github.com/actix/actix-web), because most of the `evm-loader` crate is based on non-`Send` types and [`actix-web`](https://github.com/actix/actix-web) is a web framework which does not require `Future`s to be `Send`. Inspired from neonevm#107.
- Used [`maybe_async`](https://github.com/fMeow/maybe-async-rs) crate to re-write common parts of `evm-loader` crate used both as an async library and as a non-async Solana program. This also removed all usages of [`block_in_place`](https://docs.rs/tokio/latest/tokio/task/fn.block_in_place.html).
- Simplified all types related to multi-threading in the context of non-`Send` `Future`s: less `Arc`s, less `RwLock`s.
* move tests from evm_loader folder

* chmod
* NDEV-2252: Use preserve_order serde_json feature

* NDEV-2252: Make StructLog and StructLoggerResult Geth-compatible

NDEV-2252: Fix StructLog field order

NDEV-2252: Fix StructLoggerResult field order

NDEV-2252: Output storage only on SLOAD and SSTORE opcodes

NDEV-2252: Output storage in hex format without 0x prefix

NDEV-2252: Output memory in hex format without 0x prefix

NDEV-2252: Add StructLoggerResult serialization tests

NDEV-2252: Fix StructLog format

NDEV-2252: Add github link

* NDEV-2252: Make tracer_config optional

* NDEV-2252: Remove unused trace Events

* NDEV-2252: Add more links to Geth structs
* Add 'write version' to EmulateRequestModel
* DOPS-420 image name variable added

* DOPS-420 workflow changed

- added variable with githab organisation and repo name for run link
- hardcoded proxy repo url changed to variable

* DOPS-420 github api script fix

added os lib
# Conflicts:
#	Dockerfile
#	evm_loader/program/src/evm/mod.rs
#	evm_loader/program/src/evm/opcode.rs
#	evm_loader/program/src/evm/opcode_table.rs
#	evm_loader/program/src/evm/stack.rs
#	tests/conftest.py
#	tests/utils/contract.py
@YaroslavNekryach YaroslavNekryach changed the base branch from develop to eof/develop December 18, 2023 10:21
@YaroslavNekryach YaroslavNekryach changed the base branch from eof/develop to develop December 18, 2023 10:22
@YaroslavNekryach YaroslavNekryach changed the base branch from develop to eof/develop December 18, 2023 10:42
@YaroslavNekryach YaroslavNekryach merged commit a103896 into eof/develop Dec 18, 2023
1 check failed
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.