Conversation
|
I need help getting the rust 1.29.0 tests to pass. Specific test here: https://github.com/mcroad/rust-miniscript/runs/4061570991. I'm not familiar enough with this version of rust to debug it. |
|
I think this is because |
|
Removed the Please approve CI workflow. |
|
Sorry, Github is annoying for first-time contributors. |
|
Approved the github workflow. |
7854bd7 Fix `no_std` MSRV Fixes #690, #947 (mcroad) Pull request description: `rust-bitcoin` does not work with rust 1.29 under a `no_std` environment. This could be considered a bug. However, `no_std` support is a recent addition and this is likely not breaking anyone's builds. A decision needs to be made, either `no_std` MSRV is the current stable version while keeping the `std` MSRV as 1.29, or it needs to be fixed. This pr adds `no_std` to the 1.29 test suite. This came as I try to get rust-bitcoin/rust-miniscript#277 working and got stuck on the issue of testing `no_std` under 1.29. ACKs for top commit: Kixunil: ACK 7854bd7 tcharding: ACK 7854bd7 sanket1729: ACK 7854bd7 apoelstra: ACK 7854bd7 Tree-SHA512: 1614fb2193f760ed340592bdb94d076066f6f783bc1dc2b145d97f7151a28316e56b1975f1ad948460eb26db04e7e9382e60076686a681e46dcf33521fda5fca
|
Last 2 items on the checklist are done. Will squash and rebase on master. |
e603e44 to
da43e40
Compare
|
@apoelstra Given |
|
@mcroad, we just moved to 2018 and this PR now has lots of conflicts. Sorry about that. |
|
Just rebased. Still working on the PR. It's not ready for review. |
778e65e to
f8855d1
Compare
|
All test pass but PR will not be final until rust-bitcoin/rust-bitcoin#690 is released. https://github.com/mcroad/rust-miniscript/actions/runs/2261662000 Until then, I await your comments on the PR as it is. |
|
Sorry about this, but this would face a lot of conflicts because of our move to 2018. We can focus on getting |
2af2fc9 to
c1d4345
Compare
|
Rebased and finally got tests to pass. |
|
@mcroad Really sorry again for the conflicts. I will put this on top of my review list so that there are no more conflicts after this one |
3f8d447 to
28d304e
Compare
|
Rebased again. |
sanket1729
left a comment
There was a problem hiding this comment.
Thanks for the PR. We can address the comments in a follow PR if required.
I have zero expirience in no-std development. I just tried to follow the instructions to build the no-std build. Initially, I could not get it to build and tried to mimic the CI. Installing the rust-src component seemed to do the trick. Should we also that in the README?
I ran into a linker error:
sanket1729:~/rust-miniscript/embedded$ echo $RUSTFLAGS
-C link-arg=-Tlink.x
sanket1729:~/rust-miniscript/embedded$ echo $CARGO_TARGET_THUMBV7M_NONE_EABI_RUNNER
qemu-system-arm -cpu cortex-m3 -machine mps2-an385 -nographic -semihosting-config enable=on,target=native -kernel
sanket1729:~/rust-miniscript/embedded$ cargo run +nightly --target thumbv7m-none-eabi
Compiling typenum v1.15.0
Compiling cortex-m v0.7.4
Compiling proc-macro2 v1.0.39
Compiling libc v0.2.126
Compiling memchr v2.5.0
Compiling syn v1.0.95
Compiling cortex-m-rt v0.6.15
Compiling cortex-m v0.6.7
error: linking withccfailed: exit status: 1
= note: "cc" "-m64" "/tmp/rustcu8JyXT/symbols.o" "/home/sanket1729/rust-miniscript/embedded/target/debug/build/cortex-m-78cb07deae82bed4/build_script_build-78cb07deae82bed4.build_script_build.2257045c-cgu.0.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/debug/build/cortex-m-78cb07deae82bed4/build_script_build-78cb07deae82bed4.build_script_build.2257045c-cgu.1.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/debug/build/cortex-m-78cb07deae82bed4/build_script_build-78cb07deae82bed4.build_script_build.2257045c-cgu.10.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/debug/build/cortex-m-78cb07deae82bed4/build_script_build-78cb07deae82bed4.build_script_build.2257045c-cgu.11.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/debug/build/cortex-m-78cb07deae82bed4/build_script_build-78cb07deae82bed4.build_script_build.2257045c-cgu.12.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/debug/build/cortex-m-78cb07deae82bed4/build_script_build-78cb07deae82bed4.build
Probably, something else might be off in my system because the following works 🤷
RUSTFLAGS=$RUSTFLAGS CARGO_TARGET_THUMBV7M_NONE_EABI_RUNNER=$CARGO_TARGET_THUMBV7M_NONE_EABI_RUNNER cargo run --target thumbv7m-none-eabi --release
Finished release [optimized + debuginfo] target(s) in 0.02s
- I am also not able to build this in debug mode (without the --release flag). Is this expected?
Compiling embedded v0.1.0 (/home/sanket1729/rust-miniscript/embedded)
error: linking withrust-lldfailed: exit status: 1
|
= note: "rust-lld" "-flavor" "gnu" "/tmp/rustc90zJr1/symbols.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1a4vfh3jry9qhmtf.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1aoq3x7wmhn8n29u.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1b8rm12f45qaldm2.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1h6zyj1rmnpmfcoi.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1itggcb0fccfedej.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1k8nddveuc69crrg.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1kuhmdd5hcuxpir8.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1lc2im5g0e0lu66d.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1nam0vrwxtu0s903.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1pzhzutagmqjg64z.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1u7uty6l4hxvj89p.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1u9ph96gmb8vymbh.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.1uel84j51kktbvcm.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.23c0uin0qhigctw.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.24eq9zezcp1zrsmt.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.251oqgzfi9t5az0y.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.2a6qgbkabaaclpvc.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.2j7gbbp2u9sykfgo.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.2k8irx23kmk13rk6.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.2r9whzo63erlzygp.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.2x525qruyaeln3nr.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3b5k6z5sphn7j3pl.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3bv8lgwtl141o5pj.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3m75df4qbs5wjltp.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3n3eeumeiyxvb2mo.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3nkoszhj0sxtzc94.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3qjzqm0l32uclc5z.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3s0ohddi4j5jayga.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3sh0l8v86dqb6k25.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.439wmgcig5q70hpt.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.456gzcon6482dqlt.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.48ycblph89kak52b.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4dkbcmqoteiqjb9r.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4eob32fyhrzpmg0a.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4ernbojsis0t20rg.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4hnu9bhv3y9syh5g.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4o58r3nx75v3a8b2.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4oqndp04mbr4zwx6.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4t6q0gvit5vmtqh2.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4v9i8wqsssropkr7.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.4z58clcdwpuno69g.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.512qk1ak5bimee9p.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.51aupj3hj8733ih0.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.5b5q4lecv8en8ted.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.5buru3ykyz9m97sh.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.5cjlfujuitjcc6cv.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.cgvhk5ocpbte80m.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.egkotks9bo7ddef.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.g51hkg8i617m5wd.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.gk60olq4xfsfvq6.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.ijujnka561m924c.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.xzuqetkl9uhq6et.rcgu.o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788.3c6nn0krnharmlvm.rcgu.o" "--as-needed" "-L" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps" "-L" "/home/sanket1729/rust-miniscript/embedded/target/debug/deps" "-L" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/build/cortex-m-aeea63aea6ffdc2f/out" "-L" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/build/cortex-m-rt-076aecb144ce0d41/out" "-L" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/build/cortex-m-semihosting-a68a8a89ca250f7f/out" "-L" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/build/secp256k1-sys-1d469d5bff022d46/out" "-L" "/home/sanket1729/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib" "-Bstatic" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libminiscript-bc8f8ca73da25eca.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libbitcoin-ec03fc4a63c88d70.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libhashbrown-2288f4321118a88f.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libahash-6cc44301a08b6cd7.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libbech32-990ecd751650535e.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libsecp256k1-ad59a94bc87e11e8.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libsecp256k1_sys-c03b8d37363bd6ad.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libbitcoin_hashes-16d8139e1876d7d7.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libcore2-b53703a46090b77a.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libhashbrown-9c86b8600d94aec9.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libahash-2e4b8b19a0c5ef7f.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libcortex_m_semihosting-424ad78302277fc2.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libcortex_m_rt-367afd52f356e9af.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libr0-777d267c3f5e883a.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libcortex_m-58c69b609c826e0c.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libaligned-efb924f7f569df32.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libas_slice-7cc634893bc17dca.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libstable_deref_trait-659fd4fc938e6d63.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libgeneric_array-f32408a42fd0c608.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libgeneric_array-48c0a4d35713388a.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libgeneric_array-2acafc3aedb05a8a.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libtypenum-6293bcb1e7be9b07.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/liballoc_cortex_m-902a7616d29b0ddc.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/liblinked_list_allocator-a436f22cf48dfc61.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libcortex_m-9a6749038f6e8315.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libembedded_hal-be2cd19e255d0054.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libvoid-c3ac384dc77c7432.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libnb-44e1f3fb8154762e.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libnb-d2fd7374c8472436.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libvolatile_register-31350fb3fd26a60d.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libvcell-5928b0c31e98c32b.rlib" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/libbare_metal-2ebd85282e1bb3be.rlib" "/home/sanket1729/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/liballoc-b1f8a41d3c5b29df.rlib" "/home/sanket1729/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/librustc_std_workspace_core-ba626387a2e50982.rlib" "/home/sanket1729/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/libcore-bc639632082e340c.rlib" "/home/sanket1729/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib/libcompiler_builtins-87b489c55aae9c9f.rlib" "-Bdynamic" "--eh-frame-hdr" "-znoexecstack" "-L" "/home/sanket1729/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/thumbv7m-none-eabi/lib" "-o" "/home/sanket1729/rust-miniscript/embedded/target/thumbv7m-none-eabi/debug/deps/embedded-46e018162ba49788" "--gc-sections" "-Tlink.x"
= note: rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 263 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 274 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 276 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 276 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 276 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 280 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 284 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 288 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 288 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 263 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 274 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 276 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 276 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 276 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 280 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 284 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 288 bytes
rust-lld: error: section '.data' will not fit in region 'FLASH': overflowed by 288 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 263 bytes
rust-lld: error: section '.rodata' will not fit in region 'FLASH': overflowed by 274 bytes
rust-lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
error: could not compile embedded due to previous error
|
@mcroad, really sorry for the last time. This has conflicts again. After your next rebase, we can merge this and address the issues in follow-up PRs. |
|
Rebased and documented |
|
Reviewed the range-diff. Merging this to avoid further conflicts. @mcroad, can you please clarify if the debug build is supposed to fail as mentioned in my comment above? |
|
The debug build fails because the produced binary is too big to fit within Thanks to all who reviewed this PR. |
… under 1.29 (MSRV) 7854bd7 Fix `no_std` MSRV Fixes #690, #947 (mcroad) Pull request description: `rust-bitcoin` does not work with rust 1.29 under a `no_std` environment. This could be considered a bug. However, `no_std` support is a recent addition and this is likely not breaking anyone's builds. A decision needs to be made, either `no_std` MSRV is the current stable version while keeping the `std` MSRV as 1.29, or it needs to be fixed. This pr adds `no_std` to the 1.29 test suite. This came as I try to get rust-bitcoin/rust-miniscript#277 working and got stuck on the issue of testing `no_std` under 1.29. ACKs for top commit: Kixunil: ACK 7854bd7 tcharding: ACK 7854bd7 sanket1729: ACK 7854bd7 apoelstra: ACK 7854bd7 Tree-SHA512: 1614fb2193f760ed340592bdb94d076066f6f783bc1dc2b145d97f7151a28316e56b1975f1ad948460eb26db04e7e9382e60076686a681e46dcf33521fda5fca
ac16e05aa9943152e4235b490fd4ad03a496a7c1 Add no_std support (mcroad) Pull request description: Closes #201. Related to bitcoindevkit/bdk#205 Not ready. - [x] `no_std` example - [x] updated readme with instructions - [x] tests pass - [x] rust-bitcoin/rust-bitcoin#637 includes `secp256k1/alloc` feature in `bitcoin/no-std`. Released on `0.28.0` - [x] rust-bitcoin/rust-bitcoin#690 Rust `1.47` set as `no_std` MSRV. Released in `0.28.1`. Maintains backward compatibility. To use it in a `no_std` context set `default-features = false` and enable the `no-std` feature. ~~To the maintainers: I added the `no-std-compat` crate. It wraps `core` and `hashbrown` and makes them look like `std`. This is a different than what `rust-bitcoin` did. They use `core` and `hashbrown` directly. I believe using `no-std-compat` makes the code more readable. I'd like to hear your thoughts on this.~~ Now using `hashbrown` and `core` directly. ACKs for top commit: sanket1729: ACK ac16e05aa9943152e4235b490fd4ad03a496a7c1 Tree-SHA512: 5c26cb50374b7844acbcc5a7607f5710ce19ec0aff4caed1346ed4a2fb708a909205a7d87cc27a773624f43b2a99a71c3ba4bb1cdf2dfec0584833df00b9f032
Closes #201. Related to bitcoindevkit/bdk#205
Not ready.
no_stdexamplesecp256k1/allocfeature inbitcoin/no-std. Released on0.28.0no_stdunder 1.29 (MSRV) rust-bitcoin#690 Rust1.47set asno_stdMSRV. Released in0.28.1.Maintains backward compatibility. To use it in a
no_stdcontext setdefault-features = falseand enable theno-stdfeature.To the maintainers: I added theNow usingno-std-compatcrate. It wrapscoreandhashbrownand makes them look likestd. This is a different than whatrust-bitcoindid. They usecoreandhashbrowndirectly. I believe usingno-std-compatmakes the code more readable. I'd like to hear your thoughts on this.hashbrownandcoredirectly.