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

Add Cargo.lock file to be able to build from tags #166

Closed
theanurin opened this issue May 22, 2021 · 3 comments
Closed

Add Cargo.lock file to be able to build from tags #166

theanurin opened this issue May 22, 2021 · 3 comments
Labels
enhancement New feature or request

Comments

@theanurin
Copy link

theanurin commented May 22, 2021

Cargo.lock is a special file to lock versions of dependency libraries.

Without this file there no way do build oldest tags/commits due dependency libraries make API changes.

Is there any reason why Cargo.lock is missing?

References:

@theanurin
Copy link
Author

theanurin commented May 22, 2021

Right now

For example, I downloaded https://github.com/tonlabs/tonos-cli/archive/refs/tags/v0.13.0.tar.gz and trying to build by cargo build --release -j1

The build is failed.
Looks like latest TON-SDK 1.15.0 has API breaking change. If we will use Cargo.lock we can point to right commit of TON-SDK (not latest).

References:

Output:

   Compiling tonos-cli v0.13.0 (/build/tonos-cli-0.13.0)
error[E0027]: pattern does not mention field `signing_box_handle`
   --> src/debot/term_browser.rs:274:13
    |
274 |             DebotActivity::Transaction{msg: _, dst, out, fee, setcode, signkey} => {
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing field `signing_box_handle`
    |
help: include the missing field in the pattern
    |
274 |             DebotActivity::Transaction{msg: _, dst, out, fee, setcode, signkey, signing_box_handle } => {
    |                                                                               ^^^^^^^^^^^^^^^^^^^^^^
help: if you don't care about this missing field, you can explicitly ignore it
    |
274 |             DebotActivity::Transaction{msg: _, dst, out, fee, setcode, signkey, .. } => {
    |                                                                               ^^^^^^

error: aborting due to previous error

For more information about this error, try `rustc --explain E0027`.
error: could not compile `tonos-cli`

@theanurin
Copy link
Author

theanurin commented May 22, 2021

I made some research and I can confirm that Cargo.lock make right behaviour.

  1. I made sanity checker build via GitHub Actions to reproduce the issue with broken build. Here we can see that build on tag v0.13.0 is broken right now
  2. I made commit that adds Cargo.lock (with lock to TON-SDK 1.14.1) and this is repaired the build

If my contribution make sense, I will create PR.
Thanks, and wait for feedback.

Screenshot 2021-05-22 at 19 31 38

Screenshot 2021-05-22 at 19 49 04

@joydark joydark added the enhancement New feature or request label Jun 2, 2021
@Keshoid
Copy link
Collaborator

Keshoid commented Sep 28, 2021

Sorry for the delay. Agree it's a very good issue. Let's add Cargo.lock.

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

No branches or pull requests

4 participants