Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: everx-labs/ever-assembler
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1.4.40
Choose a base ref
...
head repository: everx-labs/ever-assembler
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Feb 14, 2024

  1. Updating the project due to dependency changes: ever-vm-private. #none

    Updating the project due to dependency changes. ever-vm-private. #none #none
    tonjen authored Feb 14, 2024
    Copy the full SHA
    8127664 View commit details

Commits on Feb 24, 2024

  1. Updating the project due to dependency changes: . #none

    Updating the project due to dependency changes. . #none
    tonjen authored Feb 24, 2024
    Copy the full SHA
    089a941 View commit details

Commits on Mar 4, 2024

  1. Merge pull request #223 from tonlabs/burn-primitive

    Added BURN primitive #none
    bvscd authored Mar 4, 2024
    Copy the full SHA
    fe3f281 View commit details
  2. Merge pull request #223 from tonlabs/burn-primitive

    Added BURN primitive #none
    bvscd authored Mar 4, 2024
    Copy the full SHA
    b5e5c89 View commit details
  3. Updating the project due to dependency changes: . #none

    Updating the project due to dependency changes. . #none
    tonjen authored Mar 4, 2024
    Copy the full SHA
    6bff0ea View commit details

Commits on Mar 5, 2024

  1. Updating the project due to dependency changes: . #none

    Updating the project due to dependency changes. . #none
    tonjen authored Mar 5, 2024
    Copy the full SHA
    fcdee0e View commit details

Commits on Mar 13, 2024

  1. Updating the project due to dependency changes: ever-types-private.

    Updating the project due to dependency changes: ever-types-private.
    tonjen authored Mar 13, 2024
    Copy the full SHA
    f24df6a View commit details
  2. Copy the full SHA
    7a3c095 View commit details
  3. Updating the project due to dependency changes: ever-types.

    Updating the project due to dependency changes: ever-types.
    tonjen authored Mar 13, 2024
    Copy the full SHA
    9f67657 View commit details
  4. Updating the project due to dependency changes: ever-types-private. U…

    …pdating the project due to dependency changes: ever-types-private.
    
    Updating the project due to dependency changes: ever-types-private.  Updating the project due to dependency changes: ever-types-private.
    tonjen authored Mar 13, 2024
    Copy the full SHA
    f07bd9f View commit details
  5. Copy the full SHA
    d1ac8d8 View commit details
  6. Updating the project due to dependency changes: ever-types.

    Updating the project due to dependency changes: ever-types.
    tonjen authored Mar 13, 2024
    Copy the full SHA
    d0484ea View commit details
  7. Copy the full SHA
    16f105c View commit details
  8. Updating the project due to dependency changes: ever-types.

    Updating the project due to dependency changes: ever-types.
    tonjen authored Mar 13, 2024
    Copy the full SHA
    513fb20 View commit details

Commits on Mar 14, 2024

  1. Copy the full SHA
    dd96acf View commit details
  2. Updating the project due to dependency changes: ever-types.

    Updating the project due to dependency changes: ever-types.
    tonjen authored Mar 14, 2024
    Copy the full SHA
    766baa9 View commit details
  3. Updating the project due to dependency changes: ever-types.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Mar 14, 2024
    Copy the full SHA
    c952e28 View commit details

Commits on Mar 21, 2024

  1. Updating the project due to dependency changes: ever-vm.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Mar 21, 2024
    Copy the full SHA
    db3519f View commit details

Commits on Apr 3, 2024

  1. Updating the project due to dependency changes: ever-vm.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Apr 3, 2024
    Copy the full SHA
    f4de265 View commit details

Commits on Apr 4, 2024

  1. Copy the full SHA
    5c9e46a View commit details

Commits on Apr 15, 2024

  1. Updating the project due to dependency changes: ever-types.

    Co-authored-by: Kirill <43584399+Sumrachek@users.noreply.github.com>
    tonjen and Sumrachek authored Apr 15, 2024
    Copy the full SHA
    f4ed96f View commit details
  2. Updating the project due to dependency changes: ever-vm.

    Co-authored-by: Kirill <43584399+Sumrachek@users.noreply.github.com>
    tonjen and Sumrachek authored Apr 15, 2024
    Copy the full SHA
    bb7e2f8 View commit details

Commits on Apr 16, 2024

  1. Merge pull request #235 from everx-labs/bls

    Added BLS primitives
    tonjen authored Apr 16, 2024
    Copy the full SHA
    b958071 View commit details
  2. Merge pull request #231 from everx-labs/mu/renaming

    Renaming
    tonjen authored Apr 16, 2024
    Copy the full SHA
    940ee1c View commit details

Commits on Apr 17, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: Alexey Danilevich <alexvd@inbox.ru>
    tonjen and AtomXY authored Apr 17, 2024
    Copy the full SHA
    4c87e7d View commit details
  2. Rebranding URL fix

    Co-authored-by: AtomXY <alexvd@inbox.ru>
    tonjen and AtomXY authored Apr 17, 2024
    Copy the full SHA
    3e991c1 View commit details

Commits on Apr 22, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: SergeyY <43989533+yaroslavser@users.noreply.github.com>
    tonjen and yaroslavser authored Apr 22, 2024
    Copy the full SHA
    4a1c5d8 View commit details

Commits on Apr 26, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: SergeyY <43989533+yaroslavser@users.noreply.github.com>
    tonjen and yaroslavser authored Apr 26, 2024
    Copy the full SHA
    e18ffbb View commit details

Commits on May 15, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored May 15, 2024
    Copy the full SHA
    712da61 View commit details
  2. Updating the project due to dependency changes: ever-block.

    Co-authored-by: Kirill <43584399+Sumrachek@users.noreply.github.com>
    tonjen and Sumrachek authored May 15, 2024
    Copy the full SHA
    14413ed View commit details

Commits on May 17, 2024

  1. Updating the project due to dependency changes: ever-vm.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored May 17, 2024
    Copy the full SHA
    f4fdf40 View commit details

Commits on May 29, 2024

  1. Updating the project due to dependency changes: ever-vm.

    Co-authored-by: Kirill <43584399+Sumrachek@users.noreply.github.com>
    tonjen and Sumrachek authored May 29, 2024
    Copy the full SHA
    3813f5a View commit details

Commits on Jun 20, 2024

  1. Merge pull request #246 from everx-labs/remove-failure

    Use modern crates anyhow and thiserror instead of failure
    tonjen authored Jun 20, 2024
    Copy the full SHA
    82ef6cc View commit details

Commits on Jul 1, 2024

  1. Copy the full SHA
    a663b51 View commit details

Commits on Jul 10, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Jul 10, 2024
    Copy the full SHA
    3b15a5e View commit details

Commits on Jul 11, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Jul 11, 2024
    Copy the full SHA
    c1849ec View commit details

Commits on Jul 15, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Jul 15, 2024
    Copy the full SHA
    82db4cd View commit details

Commits on Jul 16, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: Kirill <43584399+Sumrachek@users.noreply.github.com>
    tonjen and Sumrachek authored Jul 16, 2024
    Copy the full SHA
    e2daa29 View commit details

Commits on Jul 17, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Jul 17, 2024
    Copy the full SHA
    9480b1a View commit details

Commits on Jul 19, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: Kirill <43584399+Sumrachek@users.noreply.github.com>
    tonjen and Sumrachek authored Jul 19, 2024
    Copy the full SHA
    0a8f857 View commit details

Commits on Jul 24, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Jul 24, 2024
    Copy the full SHA
    5287cf0 View commit details
  2. Updating the project due to dependency changes: ever-block.

    Co-authored-by: SergeyY <43989533+yaroslavser@users.noreply.github.com>
    tonjen and yaroslavser authored Jul 24, 2024
    Copy the full SHA
    7138e4e View commit details

Commits on Jul 31, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Jul 31, 2024
    Copy the full SHA
    6921a1f View commit details

Commits on Aug 6, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: SergeyY <43989533+yaroslavser@users.noreply.github.com>
    tonjen and yaroslavser authored Aug 6, 2024
    Copy the full SHA
    5ff8bd9 View commit details

Commits on Aug 7, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: SergeyY <43989533+yaroslavser@users.noreply.github.com>
    tonjen and yaroslavser authored Aug 7, 2024
    Copy the full SHA
    0569ad4 View commit details

Commits on Aug 17, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Aug 17, 2024
    Copy the full SHA
    612f75c View commit details

Commits on Aug 20, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Aug 20, 2024
    Copy the full SHA
    9abdd13 View commit details

Commits on Aug 26, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Aug 26, 2024
    Copy the full SHA
    93d78fa View commit details

Commits on Aug 29, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Aug 29, 2024
    Copy the full SHA
    d67ddea View commit details

Commits on Sep 12, 2024

  1. Updating the project due to dependency changes: ever-block.

    Co-authored-by: ViacheslavB <bvscd@mail.ru>
    tonjen and bvscd authored Sep 12, 2024
    Copy the full SHA
    f4a8e5f View commit details
Showing with 347 additions and 114 deletions.
  1. +37 −1 CHANGELOG.md
  2. +5 −7 Cargo.toml
  3. +1 −1 README.md
  4. +2 −2 build.rs
  5. +5 −5 src/bin/asm.rs
  6. +13 −14 src/bin/disasm.rs
  7. +91 −18 src/complex.rs
  8. +2 −2 src/convert.rs
  9. +3 −3 src/debug.rs
  10. +3 −3 src/disasm/codedict.rs
  11. +6 −6 src/disasm/fmt.rs
  12. +4 −4 src/disasm/handlers.rs
  13. +6 −6 src/disasm/loader.rs
  14. +3 −3 src/disasm/mod.rs
  15. +7 −10 src/disasm/tests.rs
  16. +3 −3 src/disasm/types.rs
  17. +7 −6 src/errors.rs
  18. +3 −3 src/lib.rs
  19. +2 −2 src/macros.rs
  20. +24 −9 src/parse.rs
  21. +117 −3 src/simple.rs
  22. +3 −3 src/writer.rs
38 changes: 37 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -2,6 +2,42 @@

All notable changes to this project will be documented in this file.

## Version 1.9.0
- Support `DICTPUSHCONST` with dictionary argument.

## Version 1.8.0

- Add ton opcodes
- cargo clippy --fix

## Version 1.7.0

- Add ton commands.

## Version 1.6.3

- fix `parse_slice`

## Version 1.6.1

- Use modern crates `anyhow` and `thiserror` instead of `failure`

## Version 1.6.0

- fix `parse_slice_base`

## Version 1.5.0

- crate was renamed from `ton_assembler` to `ever_assembler`

## Version 1.4.55

- Added BLS primitives

## Version 1.4.42

- Added BURN primitive

## Version 1.4.12

- Added .library-cell directive
@@ -40,4 +76,4 @@ All notable changes to this project will be documented in this file.

## Version 1.2.90

- Supported ever-types version 2.0
- Supported ever-types version 2.0
12 changes: 5 additions & 7 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,24 +1,22 @@
[package]
build = 'build.rs'
edition = '2021'
name = 'ton_labs_assembler'
version = '1.4.40'

name = 'ever_assembler'
version = '1.9.0'

[dependencies]
anyhow = '1.0'
clap = { features = [ 'derive' ], version = '4.3' }
failure = '0.1'
hex = '0.4'
log = '0.4'
num = '0.4'
num-traits = '0.2'
serde = { features = [ 'derive' ], version = '1.0' }
serde_json = '1.0'
ton_types = { git = 'https://github.com/tonlabs/ever-types.git', tag = '2.0.32' }
ton_vm = { git = 'https://github.com/tonlabs/ever-vm.git', tag = '1.9.7' }
ever_block = { git = 'https://github.com/everx-labs/ever-block.git', tag = '1.11.21' }
ever_vm = { git = 'https://github.com/everx-labs/ever-vm.git', tag = '2.2.23' }

[features]
gosh = [ ]
groth = [ ]


2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@ https://www.rust-lang.org/en-US/install.html
## Installing

```
git clone https://github.com/tonlabs/ever-assembler.git
git clone https://github.com/everx-labs/ever-assembler.git
cd ever-assembler
cargo build --release
```
4 changes: 2 additions & 2 deletions build.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
/*
* Copyright (C) 2019-2021 TON Labs. All Rights Reserved.
* Copyright (C) 2019-2023 EverX. All Rights Reserved.
*
* Licensed under the SOFTWARE EVALUATION License (the "License"); you may not use
* this file except in compliance with the License.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific TON DEV software governing permissions and
* See the License for the specific EVERX DEV software governing permissions and
* limitations under the License.
*/

10 changes: 5 additions & 5 deletions src/bin/asm.rs
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
/*
* Copyright (C) 2022 TON Labs. All Rights Reserved.
* Copyright (C) 2022 EverX. All Rights Reserved.
*
* Licensed under the SOFTWARE EVALUATION License (the "License"); you may not use
* this file except in compliance with the License.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific TON DEV software governing permissions and
* See the License for the specific EVERX DEV software governing permissions and
* limitations under the License.
*/

use std::{error::Error, io::Write, process::ExitCode};

use clap::Parser;

use ton_labs_assembler::{DbgInfo, Engine, Units};
use ton_types::Cell;
use ever_assembler::{DbgInfo, Engine, Units};
use ever_block::Cell;

#[derive(Parser)]
#[command(author, version, about, long_about = None)]
@@ -67,7 +67,7 @@ fn main_impl() -> Result<(), Box<dyn Error>> {
}

fn write_boc(cell: &Cell, output: &str) -> Result<(), Box<dyn Error>> {
let bytes = ton_types::write_boc(cell)?;
let bytes = ever_block::write_boc(cell)?;
let mut file = std::fs::File::create(output)?;
file.write_all(&bytes)?;
Ok(())
27 changes: 13 additions & 14 deletions src/bin/disasm.rs
Original file line number Diff line number Diff line change
@@ -1,23 +1,22 @@
/*
* Copyright (C) 2023 TON Labs. All Rights Reserved.
* Copyright (C) 2023 EverX. All Rights Reserved.
*
* Licensed under the SOFTWARE EVALUATION License (the "License"); you may not use
* this file except in compliance with the License.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific TON DEV software governing permissions and
* See the License for the specific EVERX DEV software governing permissions and
* limitations under the License.
*/

use std::{process::ExitCode, collections::HashSet, io::Write};

use clap::{Parser, Subcommand};

use failure::format_err;
use ton_labs_assembler::disasm::{fmt::print_tree_of_cells, loader::Loader, disasm_ex};
use ton_types::{Cell, Status, read_boc, SliceData, write_boc};
use ever_assembler::disasm::{fmt::print_tree_of_cells, loader::Loader, disasm_ex};
use ever_block::{error, Cell, Status, read_boc, SliceData, write_boc};

#[derive(Parser)]
#[command(author, version, about, long_about = None)]
@@ -85,8 +84,8 @@ fn main_impl() -> Status {

fn subcommand_dump(filename: String) -> Status {
let tvc = std::fs::read(filename)
.map_err(|e| format_err!("failed to read boc file: {}", e))?;
let roots = read_boc(tvc).map_err(|e| format_err!("{}", e))?.roots;
.map_err(|e| error!("failed to read boc file: {}", e))?;
let roots = read_boc(tvc).map_err(|e| error!("{}", e))?.roots;
if roots.is_empty() {
println!("empty");
} else {
@@ -120,12 +119,12 @@ fn count_unique_cells(cell: &Cell) -> usize {

fn subcommand_extract(filename: String, output: String, index: usize, root: Option<usize>) -> Status {
let boc = std::fs::read(filename)
.map_err(|e| format_err!("failed to read input file: {}", e))?;
let roots = read_boc(boc).map_err(|e| format_err!("{}", e))?.roots;
.map_err(|e| error!("failed to read input file: {}", e))?;
let roots = read_boc(boc).map_err(|e| error!("{}", e))?.roots;

let root_index = root.unwrap_or_default();
let root = roots.get(root_index)
.ok_or_else(|| format_err!("failed to get root {}", root_index))?;
.ok_or_else(|| error!("failed to get root {}", root_index))?;

let cell = root.reference(index)?;

@@ -150,8 +149,8 @@ fn subcommand_fragment(fragment: String) -> Status {

fn subcommand_text(filename: String, stateinit: bool, full: bool) -> Status {
let boc = std::fs::read(filename)
.map_err(|e| format_err!("failed to read input file: {}", e))?;
let roots = read_boc(boc).map_err(|e| format_err!("{}", e))?.roots;
.map_err(|e| error!("failed to read input file: {}", e))?;
let roots = read_boc(boc).map_err(|e| error!("{}", e))?.roots;

let roots_count = roots.len();
if roots_count == 0 {
@@ -161,8 +160,8 @@ fn subcommand_text(filename: String, stateinit: bool, full: bool) -> Status {
println!("warning: boc contains {} roots, getting the first one", roots_count)
}

let root0 = roots.get(0)
.ok_or_else(|| format_err!("failed to get root 0"))?;
let root0 = roots.first()
.ok_or_else(|| error!("failed to get root 0"))?;
let cell = if stateinit {
root0.reference(0)?
} else {
Loading