Page MenuHomePhabricator

[CHRONIK][WEB][MODULES] Updated every out of date dependency in Cargo.toml that does not require code change
Needs RevisionPublic

Authored by hazzarust on Sun, Dec 1, 15:26.

Details

Reviewers
tobias_ruck
Group Reviewers
Restricted Owners Package(Owns No Changed Paths)
Restricted Project
Summary

Every single depdendency in the bitcoin-abc repo in Cargo.toml is updated to the new version that DOES NOT require code change.
rocksdb, prost, prost-build and wasm-bindgen still need to be updated, but as they require code changes, they will be arc diff individually.

Depends on D17267- please do not allow this to land until D17267 is landed.

Test Plan

ninja check-functional

Event Timeline

Owners added a reviewer: Restricted Owners Package.Sun, Dec 1, 15:26

Tail of the build log:

   8:     0x7f530418b4d4 - std::sys_common::backtrace::print::h85035a511aafe7a8
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7f530418e267 - std::panicking::default_hook::{{closure}}::hcce8cea212785a25
  10:     0x7f530418dfc9 - std::panicking::default_hook::hf5fcb0f213fe709a
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:292:9
  11:     0x7f5306e1461c - std[79729d9c385e1623]::panicking::update_hook::<alloc[6df67106ebca92c0]::boxed::Box<rustc_driver_impl[66ed8fdbde15dc6c]::install_ice_hook::{closure#0}>>::{closure#0}
  12:     0x7f530418e9b6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hbc5ccf4eb663e1e5
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2029:9
  13:     0x7f530418e9b6 - std::panicking::rust_panic_with_hook::h095fccf1dc9379ee
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/panicking.rs:783:13
  14:     0x7f53071d4bb4 - std[79729d9c385e1623]::panicking::begin_panic::<rustc_errors[6510d8b7a29ddd9f]::ExplicitBug>::{closure#0}
  15:     0x7f53071c84b6 - std[79729d9c385e1623]::sys_common::backtrace::__rust_end_short_backtrace::<std[79729d9c385e1623]::panicking::begin_panic<rustc_errors[6510d8b7a29ddd9f]::ExplicitBug>::{closure#0}, !>
  16:     0x7f53071c2a76 - std[79729d9c385e1623]::panicking::begin_panic::<rustc_errors[6510d8b7a29ddd9f]::ExplicitBug>
  17:     0x7f53071bed94 - <rustc_errors[6510d8b7a29ddd9f]::DiagCtxtInner>::span_bug::<rustc_span[7a149c27976a99e7]::span_encoding::Span, alloc[6df67106ebca92c0]::string::String>
  18:     0x7f53071becd4 - <rustc_errors[6510d8b7a29ddd9f]::DiagCtxt>::span_bug::<rustc_span[7a149c27976a99e7]::span_encoding::Span, alloc[6df67106ebca92c0]::string::String>
  19:     0x7f53071d4cf7 - rustc_middle[e0f609162babcb92]::util::bug::opt_span_bug_fmt::<rustc_span[7a149c27976a99e7]::span_encoding::Span>::{closure#0}
  20:     0x7f53071d51fa - rustc_middle[e0f609162babcb92]::ty::context::tls::with_opt::<rustc_middle[e0f609162babcb92]::util::bug::opt_span_bug_fmt<rustc_span[7a149c27976a99e7]::span_encoding::Span>::{closure#0}, !>::{closure#0}
  21:     0x7f53071cb6a8 - rustc_middle[e0f609162babcb92]::ty::context::tls::with_context_opt::<rustc_middle[e0f609162babcb92]::ty::context::tls::with_opt<rustc_middle[e0f609162babcb92]::util::bug::opt_span_bug_fmt<rustc_span[7a149c27976a99e7]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
  22:     0x7f53071c8b44 - rustc_middle[e0f609162babcb92]::util::bug::span_bug_fmt::<rustc_span[7a149c27976a99e7]::span_encoding::Span>
  23:     0x7f53071fe210 - <rustc_metadata[db28cc6289129658]::rmeta::encoder::provide::{closure#0} as core[f975038e3cc9791c]::ops::function::FnOnce<(rustc_middle[e0f609162babcb92]::ty::context::TyCtxt, rustc_span[7a149c27976a99e7]::def_id::LocalDefId)>>::call_once
  24:     0x7f5307614f43 - rustc_query_impl[aa9389cf74aaab3]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[aa9389cf74aaab3]::query_impl::doc_link_resolutions::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e0f609162babcb92]::query::erase::Erased<[u8; 8usize]>>
  25:     0x7f5308067ac1 - rustc_query_system[84cc5057ded7d916]::query::plumbing::try_execute_query::<rustc_query_impl[aa9389cf74aaab3]::DynamicConfig<rustc_query_system[84cc5057ded7d916]::query::caches::DefaultCache<rustc_span[7a149c27976a99e7]::def_id::DefId, rustc_middle[e0f609162babcb92]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[aa9389cf74aaab3]::plumbing::QueryCtxt, false>
  26:     0x7f530763a638 - rustc_query_impl[aa9389cf74aaab3]::query_impl::doc_link_resolutions::get_query_non_incr::__rust_end_short_backtrace
  27:     0x559c0368df3c - rustc_middle[e0f609162babcb92]::query::plumbing::query_get_at::<rustc_query_system[84cc5057ded7d916]::query::caches::DefaultCache<rustc_span[7a149c27976a99e7]::def_id::DefId, rustc_middle[e0f609162babcb92]::query::erase::Erased<[u8; 8usize]>>>
  28:     0x559c038b1aa8 - <rustdoc[858dd8ecac6cd81c]::passes::lint::Linter as rustdoc[858dd8ecac6cd81c]::visit::DocVisitor>::visit_item
  29:     0x559c038b196a - <rustdoc[858dd8ecac6cd81c]::passes::lint::Linter as rustdoc[858dd8ecac6cd81c]::visit::DocVisitor>::visit_item
  30:     0x559c038b196a - <rustdoc[858dd8ecac6cd81c]::passes::lint::Linter as rustdoc[858dd8ecac6cd81c]::visit::DocVisitor>::visit_item
  31:     0x559c038abfa0 - rustdoc[858dd8ecac6cd81c]::passes::lint::run_lints
  32:     0x559c037c3001 - rustdoc[858dd8ecac6cd81c]::core::run_global_ctxt
  33:     0x559c038d1d76 - rustdoc[858dd8ecac6cd81c]::main_args::{closure#1}::{closure#0}::{closure#0}
  34:     0x559c036cc39b - rustc_interface[bf5cafa581ab7832]::util::run_in_thread_with_globals::<rustc_interface[bf5cafa581ab7832]::interface::run_compiler<core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>, rustdoc[858dd8ecac6cd81c]::main_args::{closure#1}>::{closure#0}, core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>>::{closure#0}::{closure#0}
  35:     0x559c0368d536 - std[79729d9c385e1623]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[bf5cafa581ab7832]::util::run_in_thread_with_globals<rustc_interface[bf5cafa581ab7832]::interface::run_compiler<core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>, rustdoc[858dd8ecac6cd81c]::main_args::{closure#1}>::{closure#0}, core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>>
  36:     0x559c036d53de - <<std[79729d9c385e1623]::thread::Builder>::spawn_unchecked_<rustc_interface[bf5cafa581ab7832]::util::run_in_thread_with_globals<rustc_interface[bf5cafa581ab7832]::interface::run_compiler<core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>, rustdoc[858dd8ecac6cd81c]::main_args::{closure#1}>::{closure#0}, core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[f975038e3cc9791c]::result::Result<(), rustc_span[7a149c27976a99e7]::ErrorGuaranteed>>::{closure#1} as core[f975038e3cc9791c]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  37:     0x7f53041988e5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h12de4fc57affb195
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
  38:     0x7f53041988e5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h3c619f45059d5cf1
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/alloc/src/boxed.rs:2015:9
  39:     0x7f53041988e5 - std::sys::unix::thread::Thread::new::thread_start::hbac657605e4b7389
                               at /rustc/07dca489ac2d933c78d3c5158e3f43beefeb02ce/library/std/src/sys/unix/thread.rs:108:17
  40:     0x7f5303ea31c4 - <unknown>
  41:     0x7f5303f22ac0 - clone
  42:                0x0 - <unknown>

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-rustdoc&template=ice.md

note: rustc 1.76.0 (07dca489a 2024-02-04) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type lib

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [doc_link_resolutions] resolutions for documentation links for a module
end of query stack
error: could not document `bitcoin_hashes`

Caused by:
  process didn't exit successfully: `/root/.rustup/toolchains/1.76.0-x86_64-unknown-linux-gnu/bin/rustdoc --edition=2021 --crate-type lib --crate-name bitcoin_hashes /root/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bitcoin_hashes-0.15.0/src/lib.rs --cap-lints allow -o /work/target/doc --cfg 'feature="alloc"' --cfg 'feature="std"' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --deny=unexpected_cfgs -C metadata=8554eae6149c468c -L dependency=/work/target/debug/deps --extern hex=/work/target/debug/deps/libhex_conservative-e9ac7ce03f2cb37b.rmeta -D warnings --crate-version 0.15.0` (exit status: 101)
warning: build failed, waiting for other jobs to finish...
Build build-ecash-secp256k1 failed with exit code 101

Changed bitcoin_hashes version back to 0.14

Tail of the build log:

  File "/work/abc-ci-builds/ecash-lib-integration-tests/test/functional/test_runner.py", line 362, in main
    os.makedirs(tmpdir)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/work/abc-ci-builds/ecash-lib-integration-tests/test/tmp/test_runner_₿₵_🏃_20241203_163729'
Test runner completed with code 1
----------------------------|---------|----------|---------|---------|------------------------------
File                        | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s            
----------------------------|---------|----------|---------|---------|------------------------------
All files                   |   58.43 |    46.55 |   56.95 |   58.46 |                              
 ecash-lib                  |       0 |        0 |       0 |       0 |                              
  eslint.config.js          |       0 |        0 |       0 |       0 |                              
 ecash-lib/src              |   70.01 |     50.2 |   71.26 |    70.1 |                              
  consts.ts                 |       0 |      100 |     100 |       0 | 6-8                          
  ecc.ts                    |   57.14 |    83.33 |      40 |   57.14 | 23-31                        
  hash.ts                   |   88.88 |    83.33 |      80 |   88.88 | 14                           
  index.ts                  |       0 |        0 |       0 |       0 |                              
  indexBrowser.ts           |       0 |        0 |       0 |       0 |                              
  indexNodeJs.ts            |       0 |        0 |       0 |       0 |                              
  initBrowser.ts            |       0 |      100 |       0 |       0 | 11-13                        
  initNodeJs.ts             |     100 |      100 |     100 |     100 |                              
  op.ts                     |      40 |    44.44 |   66.66 |      40 | ...4,107,109,117-122,133-161 
  opcode.ts                 |     100 |    83.33 |     100 |     100 | 1                            
  script.ts                 |   52.63 |    38.09 |      60 |    50.9 | ...4-135,146,156,166,188-199 
  sigHashType.ts            |   78.94 |       44 |   85.71 |   78.94 | 26-38                        
  tx.ts                     |   93.47 |    79.16 |    90.9 |   93.18 | 123-125                      
  txBuilder.ts              |   81.72 |    58.62 |   85.71 |   81.11 | ...1,154,173-178,183,253-257 
  unsignedTx.ts             |   49.27 |    30.18 |      60 |   50.38 | ...1,279,287,312,320,326-329 
 ecash-lib/src/ffi          |   28.26 |    15.94 |   16.98 |   28.98 |                              
  ecash_lib_wasm_browser.js |       0 |        0 |       0 |       0 | 3-336                        
  ecash_lib_wasm_nodejs.js  |    61.9 |       55 |   39.13 |   62.75 | ...1,197-215,237,250-251,255 
 ecash-lib/src/io           |   59.55 |    60.29 |   70.58 |   58.77 |                              
  bytes.ts                  |     7.4 |    71.42 |    12.5 |     7.4 | 13-64                        
  hex.ts                    |   82.05 |     62.5 |      80 |   82.35 | 41-45,50,58                  
  int.ts                    |       0 |        0 |       0 |       0 |                              
  str.ts                    |   85.71 |    83.33 |   66.66 |   85.71 | 15                           
  varsize.ts                |      32 |    36.36 |   66.66 |      32 | 14-24,40-47                  
  writer.ts                 |       0 |        0 |       0 |       0 |                              
  writerbytes.ts            |   83.33 |    68.42 |     100 |   83.33 | 33,43,53,63,79               
  writerlength.ts           |     100 |    83.33 |     100 |     100 | 1                            
 ecash-lib/src/test         |   86.58 |    52.08 |   84.21 |   86.84 |                              
  testRunner.ts             |   86.58 |    52.08 |   84.21 |   86.84 | 73-75,87-89,112,123,166,203  
 ecash-lib/src/token        |   60.33 |    47.14 |   53.33 |   60.11 |                              
  alp.ts                    |   82.92 |    89.47 |   83.33 |   82.92 | 110-123,142                  
  common.ts                 |     100 |    83.33 |     100 |     100 | 1                            
  empp.ts                   |    92.3 |       75 |     100 |   91.66 | 12                           
  slp.ts                    |    28.2 |    13.51 |    7.69 |    28.2 | ...7,174-178,185-197,201-211 
----------------------------|---------|----------|---------|---------|------------------------------

##teamcity[blockOpened name='Code Coverage Summary']
##teamcity[buildStatisticValue key='CodeCoverageAbsBCovered' value='769']
##teamcity[buildStatisticValue key='CodeCoverageAbsBTotal' value='1316']
##teamcity[buildStatisticValue key='CodeCoverageAbsRCovered' value='230']
##teamcity[buildStatisticValue key='CodeCoverageAbsRTotal' value='494']
##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='127']
##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='223']
##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='749']
##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='1281']
##teamcity[blockClosed name='Code Coverage Summary']
mv: cannot stat 'test_results/ecash-lib-integration-tests-junit.xml': No such file or directory
Build ecash-lib-integration-tests failed with exit code 1

testing to see if it was faulty test

tobias_ruck added a subscriber: tobias_ruck.

The explorer build is failing (CI doesn't catch this yet):

error[E0432]: unresolved imports `humansize::file_size_opts`, `humansize::FileSize`
 --> explorer-server/src/templating/filters.rs:9:17
  |
9 | use humansize::{file_size_opts as options, FileSize};
  |                 ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^ no `FileSize` in the root
  |                 |
  |                 no `file_size_opts` in the root

error[E0599]: no function or associated item named `new_p2pkh` found for struct `bitcoin::Script` in the current scope
   --> explorer-server/src/blockchain.rs:73:30
    |
73  |             bitcoin::Script::new_p2pkh(&PubkeyHash::from_hash(hash))
    |                              ^^^^^^^^^ function or associated item not found in `Script`
    |
help: there is a method `is_p2pkh` with a similar name, but with different arguments
   --> /Users/tobiasruck/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bitcoin-0.32.5/src/blockdata/script/borrowed.rs:209:5
    |
209 |     pub fn is_p2pkh(&self) -> bool {
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0599]: no function or associated item named `from_hash` found for struct `PubkeyHash` in the current scope
   --> explorer-server/src/blockchain.rs:73:53
    |
73  |             bitcoin::Script::new_p2pkh(&PubkeyHash::from_hash(hash))
    |                                                     ^^^^^^^^^ function or associated item not found in `PubkeyHash`
    |

Best to skip those updates for now, and maybe work on simplifying the explorer first

This revision now requires changes to proceed.Wed, Dec 4, 12:21

CI doesn't catch this yet

Unless we ask:

Tail of the build log:

#11 40.68 
#11 40.68 error[E0609]: no field `render_token_amount` on type `&TransactionTemplate<'a>`
#11 40.68   --> explorer-server/src/templating.rs:33:10
#11 40.68    |
#11 40.68 33 | #[derive(Template)]
#11 40.68    |          ^^^^^^^^ unknown field
#11 40.68    |
#11 40.68    = note: available fields are: `title`, `sats_addr_prefix`, `tokens_addr_prefix`, `is_token`, `tx_hex` ... and 9 others
#11 40.68    = note: this error originates in the derive macro `Template` (in Nightly builds, run with -Z macro-backtrace for more info)
#11 40.68 
#11 40.69 error[E0609]: no field `destination_from_script` on type `&TransactionTemplate<'a>`
#11 40.69   --> explorer-server/src/templating.rs:33:10
#11 40.69    |
#11 40.69 33 | #[derive(Template)]
#11 40.69    |          ^^^^^^^^ unknown field
#11 40.69    |
#11 40.69    = note: available fields are: `title`, `sats_addr_prefix`, `tokens_addr_prefix`, `is_token`, `tx_hex` ... and 9 others
#11 40.69    = note: this error originates in the derive macro `Template` (in Nightly builds, run with -Z macro-backtrace for more info)
#11 40.69 
#11 40.70 error[E0308]: mismatched types
#11 40.70   --> explorer-server/src/templating.rs:33:10
#11 40.70    |
#11 40.70 33 | #[derive(Template)]
#11 40.70    |          ^^^^^^^^
#11 40.70    |          |
#11 40.70    |          expected `Vec<u8>`, found `Destination<'_>`
#11 40.70    |          this expression has type `&Vec<u8>`
#11 40.70    |
#11 40.70    = note: expected struct `Vec<u8>`
#11 40.70                 found enum `Destination<'_>`
#11 40.70    = note: this error originates in the derive macro `Template` (in Nightly builds, run with -Z macro-backtrace for more info)
#11 40.70 
#11 40.71 error[E0609]: no field `to_i128` on type `&TransactionTemplate<'a>`
#11 40.71   --> explorer-server/src/templating.rs:33:10
#11 40.71    |
#11 40.71 33 | #[derive(Template)]
#11 40.71    |          ^^^^^^^^ unknown field
#11 40.71    |
#11 40.71    = note: available fields are: `title`, `sats_addr_prefix`, `tokens_addr_prefix`, `is_token`, `tx_hex` ... and 9 others
#11 40.71    = note: this error originates in the derive macro `Template` (in Nightly builds, run with -Z macro-backtrace for more info)
#11 40.71 
#11 40.75 error[E0609]: no field `safe` on type `&AddressTemplate<'a>`
#11 40.75   --> explorer-server/src/templating.rs:64:10
#11 40.75    |
#11 40.75 64 | #[derive(Template)]
#11 40.75    |          ^^^^^^^^ unknown field
#11 40.75    |
#11 40.75    = note: available fields are: `tokens`, `token_dust`, `total_xec`, `address_num_txs`, `address` ... and 8 others
#11 40.75    = note: this error originates in the derive macro `Template` (in Nightly builds, run with -Z macro-backtrace for more info)
#11 40.75 
#11 40.78 Some errors have detailed explanations: E0308, E0432, E0599, E0609.
#11 40.78 For more information about an error, try `rustc --explain E0308`.
#11 40.78 error: could not compile `explorer-server` (lib) due to 18 previous errors
#11 40.78 warning: build failed, waiting for other jobs to finish...
#11 ERROR: executor failed running [/bin/sh -c cargo build --release]: exit code: 101
------
 > [7/7] RUN cargo build --release:
------
executor failed running [/bin/sh -c cargo build --release]: exit code: 101
Build preview-explorer failed with exit code 1