Skip to content

Commit

Permalink
Migrate alloy-rs/op-alloy-protocol->op-rs/maili-protocol & alloy-rs/o…
Browse files Browse the repository at this point in the history
…p-alloy-provider->op-rs/maili-provider
  • Loading branch information
emhane committed Jan 7, 2025
1 parent 0eda9ed commit bfbbd98
Show file tree
Hide file tree
Showing 131 changed files with 200 additions and 13,738 deletions.
12 changes: 2 additions & 10 deletions .github/ISSUE_TEMPLATE/BUG-FORM.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,15 @@ body:
description: What component is the bug in?
multiple: true
options:
- consensus
- network
- genesis
- protocol
- provider
- op-alloy
- registry
- rpc-jsonrpsee
- rpc-types
- rpc-types-engine
- other
validations:
required: true
- type: input
attributes:
label: What version of op-alloy are you on?
placeholder: "Run `cargo tree | grep op-alloy` and paste the output here"
label: What version of maili are you on?
placeholder: "Run `cargo tree | grep maili` and paste the output here"
- type: dropdown
attributes:
label: Operating System
Expand Down
8 changes: 0 additions & 8 deletions .github/ISSUE_TEMPLATE/FEATURE-FORM.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,8 @@ body:
description: What crate is the feature for?
multiple: true
options:
- consensus
- network
- genesis
- protocol
- provider
- op-alloy
- registry
- rpc-jsonrpsee
- rpc-types
- rpc-types-engine
- other
validations:
required: true
Expand Down
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ the requirements below.
Bug fixes and new features should include tests.
Contributors guide: https://github.com/alloy-rs/core/blob/main/CONTRIBUTING.md
Contributors guide: https://github.com/op-rs/maili/blob/main/CONTRIBUTING.md
The contributors guide includes instructions for running rustfmt and building the
documentation.
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ jobs:
cache-on-failure: true
- name: cargo hack
run: |
cargo hack build --workspace --target wasm32-unknown-unknown --exclude op-alloy-network --exclude op-alloy-rpc-jsonrpsee --exclude op-alloy-provider
cargo hack build --workspace --target wasm32-unknown-unknown --exclude maili-provider
wasm-wasi:
runs-on: ubuntu-latest
Expand All @@ -103,7 +103,7 @@ jobs:
cache-on-failure: true
- name: cargo hack
run: |
cargo hack build --workspace --target wasm32-wasip1 --exclude op-alloy-network --exclude op-alloy-rpc-types --exclude op-alloy-provider
cargo hack build --workspace --target wasm32-wasip1 --exclude maili-provider
no-std:
runs-on: ubuntu-latest
Expand Down
26 changes: 14 additions & 12 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ members = ["crates/*"]
resolver = "2"

[workspace.package]
version = "0.9.0"
version = "0.1.0"
edition = "2021"
rust-version = "1.81"
authors = ["Alloy Contributors"]
license = "MIT OR Apache-2.0"
homepage = "https://github.com/alloy-rs/op-alloy"
repository = "https://github.com/alloy-rs/op-alloy"
homepage = "https://github.com/op-rs/maili"
repository = "https://github.com/op-rs/maili"
exclude = ["benches/", "tests/"]

[workspace.lints.rustdoc]
Expand All @@ -36,15 +36,17 @@ rustdoc-args = ["--cfg", "docsrs"]

[workspace.dependencies]
# Workspace
op-alloy-genesis = { version = "0.9.0", path = "crates/genesis", default-features = false }
op-alloy-protocol = { version = "0.9.0", path = "crates/protocol", default-features = false }
op-alloy-consensus = { version = "0.9.0", path = "crates/consensus", default-features = false }
op-alloy-network = { version = "0.9.0", path = "crates/network", default-features = false }
op-alloy-provider = { version = "0.9.0", path = "crates/provider", default-features = false }
op-alloy-registry = { version = "0.9.0", path = "crates/registry", default-features = false }
op-alloy-rpc-types = { version = "0.9.0", path = "crates/rpc-types", default-features = false }
op-alloy-rpc-jsonrpsee = { version = "0.9.0", path = "crates/rpc-jsonrpsee", default-features = false }
op-alloy-rpc-types-engine = { version = "0.9.0", path = "crates/rpc-types-engine", default-features = false }
maili-protocol = { version = "0.1.0", path = "crates/protocol", default-features = false }
maili-provider = { version = "0.1.0", path = "crates/provider", default-features = false }

# OP-Alloy
op-alloy-genesis = { version = "0.9.0", default-features = false }
op-alloy-consensus = { version = "0.9.0", default-features = false }
op-alloy-network = { version = "0.9.0", default-features = false }
op-alloy-registry = { version = "0.9.0", default-features = false }
op-alloy-rpc-types = { version = "0.9.0", default-features = false }
op-alloy-rpc-jsonrpsee = { version = "0.9.0", default-features = false }
op-alloy-rpc-types-engine = { version = "0.9.0", default-features = false }

# Alloy
alloy-eips = { version = "0.9.2", default-features = false }
Expand Down
2 changes: 1 addition & 1 deletion Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ check:

# Runs `cargo hack check` against the workspace
hack:
cargo hack check --feature-powerset --no-dev-deps --exclude op-alloy --workspace
cargo hack check --feature-powerset --no-dev-deps --workspace

# Updates the git submodule source
source:
Expand Down
60 changes: 21 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,31 @@
# op-alloy
# maili

<a href="https://github.com/alloy-rs/op-alloy/actions/workflows/ci.yml"><img src="https://github.com/alloy-rs/op-alloy/actions/workflows/ci.yml/badge.svg?label=ci" alt="CI"></a>
<a href="https://github.com/alloy-rs/op-alloy/blob/main/LICENSE-APACHE"><img src="https://img.shields.io/badge/License-APACHE-d1d1f6.svg?label=license&labelColor=2a2f35" alt="License"></a>
<a href="https://github.com/alloy-rs/op-alloy/blob/main/LICENSE-MIT"><img src="https://img.shields.io/badge/License-MIT-d1d1f6.svg?label=license&labelColor=2a2f35" alt="License"></a>
<a href="https://alloy-rs.github.io/op-alloy"><img src="https://img.shields.io/badge/Book-854a15?logo=mdBook&labelColor=2a2f35" alt="Book"></a>
<a href="https://github.com/op-rs/maili/actions/workflows/ci.yml"><img src="https://github.com/op-rs/maili/actions/workflows/ci.yml/badge.svg?label=ci" alt="CI"></a>
<a href="https://github.com/op-rs/maili/blob/main/LICENSE-APACHE"><img src="https://img.shields.io/badge/License-APACHE-d1d1f6.svg?label=license&labelColor=2a2f35" alt="License"></a>
<a href="https://github.com/op-rs/maili/blob/main/LICENSE-MIT"><img src="https://img.shields.io/badge/License-MIT-d1d1f6.svg?label=license&labelColor=2a2f35" alt="License"></a>
<a href="https://op-rs.github.io/maili"><img src="https://img.shields.io/badge/Book-854a15?logo=mdBook&labelColor=2a2f35" alt="Book"></a>

Built on [Alloy][alloy], op-alloy connects applications to the OP Stack.
OP Stack unique types and interfaces.


## Usage

The following crates are provided by `op-alloy`.
The following crates are provided by `maili`.

- [`op-alloy-consensus`][op-alloy-consensus]
- [`op-alloy-genesis`][op-alloy-genesis]
- [`op-alloy-network`][op-alloy-network]
- [`op-alloy-protocol`][op-alloy-protocol]
- [`op-alloy-registry`][op-alloy-registry]
- [`op-alloy-provider`][op-alloy-provider]
- [`op-alloy-rpc-jsonrpsee`][op-alloy-rpc-jsonrpsee]
- [`op-alloy-rpc-types-engine`][op-alloy-rpc-types-engine]
- [`op-alloy-rpc-types`][op-alloy-rpc-types]
- [`maili-protocol`][maili-protocol]
- [`maili-provider`][maili-provider]


## Development Status

`op-alloy` is currently in active development, and is not yet ready for use in production.
`maili` is currently in active development, and is not yet ready for use in production.


## Supported Rust Versions (MSRV)

The current MSRV (minimum supported rust version) is 1.81.

Unlike Alloy, op-alloy may use the latest stable release,
Unlike Alloy, maili may use the latest stable release,
to benefit from the latest features.

The MSRV is not increased automatically, and will be updated
Expand All @@ -41,7 +34,7 @@ only as part of a patch (pre-1.0) or minor (post-1.0) release.

## Contributing

op-alloy is built by open source contributors like you, thank you for improving the project!
maili is built by open source contributors like you, thank you for improving the project!

A [contributing guide][contributing] is available that sets guidelines for contributing.

Expand All @@ -51,25 +44,21 @@ linting rules and passes clippy.

## `no_std`

op-alloy is intended to be `no_std` compatible, initially for use in [kona][kona].
maili is intended to be `no_std` compatible, initially for use in [kona][kona].

The following crates support `no_std`.
Notice, provider crates do not support `no_std` compatibility.

- [`op-alloy-genesis`][op-alloy-genesis]
- [`op-alloy-protocol`][op-alloy-protocol]
- [`op-alloy-registry`][op-alloy-registry] (note: requires `serde`)
- [`op-alloy-consensus`][op-alloy-consensus]
- [`op-alloy-rpc-types`][op-alloy-rpc-types]
- [`op-alloy-rpc-types-engine`][op-alloy-rpc-types-engine]
- [`maili-protocol`][maili-protocol]
- [`maili-provider`][maili-provider]

If you would like to add no_std support to a crate,
please make sure to update [scripts/check_no_std.sh][check-no-std].


## Credits

op-alloy is inspired by the work of several teams and projects, most notably [the Alloy project][alloy].
maili implements the OP-unique spec, [op-alloy][op-alloy] is the glue that sticks OP to Ethereum.

This would not be possible without the hard work from open source contributors. Thank you.

Expand All @@ -89,15 +78,8 @@ shall be dual licensed as above, without any additional terms or conditions.
[check-no-std]: ./scripts/check_no_std.sh

[kona]: https://github.com/anton-rs/kona
[alloy]: https://github.com/alloy-rs/alloy
[contributing]: https://alloy-rs.github.io/op-alloy

[op-alloy-consensus]: https://crates.io/crates/op-alloy-consensus
[op-alloy-genesis]: https://crates.io/crates/op-alloy-genesis
[op-alloy-network]: https://crates.io/crates/op-alloy-network
[op-alloy-protocol]: https://crates.io/crates/op-alloy-protocol
[op-alloy-registry]: https://crates.io/crates/op-alloy-registry
[op-alloy-provider]: https://crates.io/crates/op-alloy-provider
[op-alloy-rpc-jsonrpsee]: https://crates.io/crates/op-alloy-rpc-jsonrpsee
[op-alloy-rpc-types-engine]: https://crates.io/crates/op-alloy-rpc-types-engine
[op-alloy-rpc-types]: https://crates.io/crates/op-alloy-rpc-types
[op-alloy]: https://github.com/alloy-rs/op-alloy
[contributing]: https://op-rs.github.io/maili

[maili-protocol]: https://crates.io/crates/maili-protocol
[maili-provider]: https://crates.io/crates/maili-provider
4 changes: 2 additions & 2 deletions book/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# `op-alloy-book`
# `maili-book`

This repository contains the source code for the op-alloy book, which is available at [alloy-rs.github.io/op-alloy](https://alloy-rs.github.io/op-alloy/).
This repository contains the source code for the maili book, which is available at [op-rs.github.io/maili](https://op-rs.github.io/maili/).

## Contributing

Expand Down
6 changes: 3 additions & 3 deletions book/book.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ authors = ["refcell"]
language = "en"
multilingual = false
src = "src"
title = "The op-alloy Book"
title = "The maili Book"

[preprocessor.mermaid]
command = "mdbook-mermaid"
Expand All @@ -15,7 +15,7 @@ command = "mdbook-mermaid"
[output.html]
default-theme = "ferra"
preferred-dark-theme = "ferra"
git-repository-url = "https://github.com/alloy-rs/op-alloy"
edit-url-template = "https://github.com/alloy-rs/op-alloy/edit/main/book/{path}"
git-repository-url = "https://github.com/op-rs/"
edit-url-template = "https://github.com/op-rs/maili/edit/main/book/{path}"
additional-css = ["custom.css"]
additional-js = ["mermaid.min.js", "mermaid-init.js"]
14 changes: 7 additions & 7 deletions book/src/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ Before working with this repository locally, you'll need to install a few depend
The [OP Stack][op-stack] is a set of standardized open-source specifications
that powers Optimism, developed by the Optimism Collective.

`op-alloy` is a rust implementation of core OP Stack types, transports,
middleware and more. Not all types and implementation details in `op-alloy`
`maili` is a rust implementation of distinguished OP Stack types, transports,
middleware and more. Not all types and implementation details in `maili`
are present in the OP Stack [specs][specs], and on the flipside, not all
specifications are implemented by `op-alloy`. That said, `op-alloy` is
specifications are implemented by `maili`. That said, `maili` is
entirely _based off_ of the [specs][specs], and new functionality or
core modifications to `op-alloy` must be reflected in the [specs][specs].
core modifications to `maili` must be reflected in the [specs][specs].

As such, the first step for introducing changes to the OP Stack is to
[open a pr][specs-pr] in the [specs repository][specs-repo]. These
Expand All @@ -49,7 +49,7 @@ implementations of the OP Stack are able to synchronize and implement
the changes.

Once changes are merged in the OP Stack [specs][specs] repo, they
may be added to `op-alloy` in a **backwards-compatible** way such
may be added to `maili` in a **backwards-compatible** way such
that pre-upgrade functionality persists. The primary way to enable
backwards-compatibility is by using timestamp-based activation for
protocol upgrades.
Expand All @@ -62,5 +62,5 @@ protocol upgrades.
[specs-pr]: https://github.com/ethereum-optimism/specs/pulls
[specs]: https://specs.optimism.io/
[op-stack]: https://docs.optimism.io/stack/getting-started
[book]: https://github.com/alloy-rs/op-alloy/tree/main/book
[new-issue]: https://github.com/alloy-rs/op-alloy/issues/new
[book]: https://github.com/op-rs/maili/tree/main/book
[new-issue]: https://github.com/op-rs/maili/issues/new
10 changes: 3 additions & 7 deletions book/src/LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
# Licensing

op-alloy is dually licensed under the [Apache 2.0][apache] and the [MIT][mit] license.
maili is dually licensed under the [Apache 2.0][apache] and the [MIT][mit] license.

The [SNAPPY license][snappy] is added for the use of [snap][snap] in `op-alloy-rpc-types-engine`.

[snap]: https://github.com/BurntSushi/rust-snappy
[snappy]: https://github.com/alloy-rs/op-alloy/blob/main/SNAPPY-LICENSE
[apache]: https://github.com/alloy-rs/op-alloy/blob/main/LICENSE-APACHE
[mit]: https://github.com/alloy-rs/op-alloy/blob/main/LICENSE-MIT
[apache]: https://github.com/op-rs/maili/blob/main/LICENSE-APACHE
[mit]: https://github.com/op-rs/maili/blob/main/LICENSE-MIT
34 changes: 6 additions & 28 deletions book/src/building/README.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,16 @@
# Building

This section offers in-depth documentation into the various `op-alloy` crates.
This section offers in-depth documentation into the various `maili` crates.
Some of the primary crates and their types are listed below.

- [`op-alloy-genesis`][op-alloy-genesis] provides the
[`RollupConfig`][rollup-config] and [`SystemConfig`][system-config] types.
- [`op-alloy-consensus`][op-alloy-consensus] provides [`OpBlock`][op-block],
[`OpTxEnvelope`][op-tx-envelope], [`OpReceiptEnvelope`][op-rx-envelope],
[`Hardforks`][hardforks], and more.
- [`op-alloy-rpc-types-engine`][op-alloy-rpc-types-engine] provides the
[`OpPayloadAttributes`][op-payload-attributes] and
[`OpAttributesWithParent`][op-attributes-with-parent].
- [`op-alloy-protocol`][op-alloy-protocol] provides [`Frame`][frame],
- [`maili-protocol`][maili-protocol] provides [`Frame`][frame],
[`Channel`][channel], [`Batch`][batch] types and more.


<!-- Links -->

[rollup-config]: https://docs.rs/op-alloy-genesis/latest/op_alloy_genesis/rollup/struct.RollupConfig.html
[system-config]: https://docs.rs/op-alloy-genesis/latest/op_alloy_genesis/system/struct.SystemConfig.html
[frame]: https://docs.rs/maili-protocol/latest/maili_protocol/struct.Frame.html
[channel]: https://docs.rs/maili-protocol/latest/maili_protocol/struct.Channel.html
[batch]: https://docs.rs/maili-protocol/latest/maili_protocol/enum.Batch.html

[op-block]: https://docs.rs/op-alloy-consensus/latest/op_alloy_consensus/type.OpBlock.html
[op-tx-envelope]: https://docs.rs/op-alloy-consensus/latest/op_alloy_consensus/enum.OpTxEnvelope.html
[op-rx-envelope]: https://docs.rs/op-alloy-consensus/latest/op_alloy_consensus/enum.OpReceiptEnvelope.html
[hardforks]: https://docs.rs/op-alloy-consensus/latest/op_alloy_consensus/hardforks/struct.Hardforks.html

[op-payload-attributes]: https://docs.rs/op-alloy-rpc-types-engine/latest/op_alloy_rpc_types_engine/struct.OpPayloadAttributes.html
[op-attributes-with-parent]: https://docs.rs/op-alloy-rpc-types-engine/latest/op_alloy_rpc_types_engine/struct.OpAttributesWithParent.html

[frame]: https://docs.rs/op-alloy-protocol/latest/op_alloy_protocol/struct.Frame.html
[channel]: https://docs.rs/op-alloy-protocol/latest/op_alloy_protocol/struct.Channel.html
[batch]: https://docs.rs/op-alloy-protocol/latest/op_alloy_protocol/enum.Batch.html

[op-alloy-genesis]: https://crates.io/crates/op-alloy-genesis
[op-alloy-consensus]: https://crates.io/crates/op-alloy-consensus
[op-alloy-protocol]: https://crates.io/crates/op-alloy-protocol
[op-alloy-rpc-types-engine]: https://crates.io/crates/op-alloy-rpc-types-engine
[maili-protocol]: https://crates.io/crates/maili-protocol
Loading

0 comments on commit bfbbd98

Please sign in to comment.