Comments (5)
Hmm this is probably a failure of our CI to catch this. I see yasna went from an optional dependency to a required dependency a few weeks ago in 186268c. @jack-fortanix any comment?
Dev dependencies should be compiled for your host, so I'm not sure what's going on there.
from rust-mbedtls.
$ cargo tree --no-default-features --features core_io --target=thumbv7m-none-eabi
mbedtls v0.4.0 (/home/mabez/development/rust/embedded/util/rust-mbedtls/mbedtls)
├── bitflags v1.1.0
├── byteorder v1.3.2
├── chrono v0.4.7
│ ├── libc v0.2.60
│ ├── num-integer v0.1.41
│ │ └── num-traits v0.2.8
│ │ [build-dependencies]
│ │ └── autocfg v0.1.6
│ │ [build-dependencies]
│ │ └── autocfg v0.1.6 (*)
│ ├── num-traits v0.2.8 (*)
│ └── time v0.1.42
│ └── libc v0.2.60 (*)
│ [dev-dependencies]
│ └── winapi v0.3.7
├── core_io v0.1.20190701
│ [build-dependencies]
│ └── rustc_version v0.1.7
│ └── semver v0.1.20
├── mbedtls-sys-auto v2.18.0 (/home/mabez/development/rust/embedded/util/rust-mbedtls/mbedtls-sys)
│ [build-dependencies]
│ ├── bindgen v0.19.1
│ │ ├── cexpr v0.2.3
│ │ │ └── nom v3.2.1
│ │ │ └── memchr v1.0.2
│ │ │ └── libc v0.2.60 (*)
│ │ ├── clang-sys v0.11.1
│ │ │ ├── bitflags v0.7.0
│ │ │ ├── glob v0.2.11
│ │ │ └── libc v0.2.60 (*)
│ │ │ [build-dependencies]
│ │ │ └── glob v0.2.11 (*)
│ │ ├── docopt v0.6.86
│ │ │ ├── lazy_static v0.2.11
│ │ │ ├── regex v0.1.80
│ │ │ │ ├── aho-corasick v0.5.3
│ │ │ │ │ └── memchr v0.1.11
│ │ │ │ │ └── libc v0.2.60 (*)
│ │ │ │ ├── memchr v0.1.11 (*)
│ │ │ │ ├── regex-syntax v0.3.9
│ │ │ │ ├── thread_local v0.2.7
│ │ │ │ │ └── thread-id v2.0.0
│ │ │ │ │ ├── kernel32-sys v0.2.2
│ │ │ │ │ │ └── winapi v0.2.8
│ │ │ │ │ │ [build-dependencies]
│ │ │ │ │ │ └── winapi-build v0.1.1
│ │ │ │ │ └── libc v0.2.60 (*)
│ │ │ │ └── utf8-ranges v0.1.3
│ │ │ ├── rustc-serialize v0.3.24
│ │ │ └── strsim v0.5.2
│ │ ├── env_logger v0.3.5
│ │ │ ├── log v0.3.9
│ │ │ │ └── log v0.4.7
│ │ │ │ └── cfg-if v0.1.9
│ │ │ └── regex v0.1.80 (*)
│ │ ├── libc v0.2.60 (*)
│ │ ├── log v0.3.9 (*)
│ │ ├── rustc-serialize v0.3.24 (*)
│ │ └── syntex_syntax v0.38.0
│ │ ├── bitflags v0.5.0
│ │ ├── libc v0.2.60 (*)
│ │ ├── log v0.3.9 (*)
│ │ ├── rustc-serialize v0.3.24 (*)
│ │ ├── syntex_errors v0.38.0
│ │ │ ├── libc v0.2.60 (*)
│ │ │ ├── log v0.3.9 (*)
│ │ │ ├── rustc-serialize v0.3.24 (*)
│ │ │ ├── syntex_pos v0.38.0
│ │ │ │ └── rustc-serialize v0.3.24 (*)
│ │ │ ├── term v0.4.6
│ │ │ └── unicode-xid v0.0.3
│ │ ├── syntex_pos v0.38.0 (*)
│ │ ├── term v0.4.6 (*)
│ │ └── unicode-xid v0.0.3 (*)
│ └── cmake v0.1.40
│ └── cc v1.0.37
└── serde v1.0.97
└── serde_derive v1.0.97
├── proc-macro2 v0.4.30
│ └── unicode-xid v0.1.0
├── quote v0.6.13
│ └── proc-macro2 v0.4.30 (*)
└── syn v0.15.39
├── proc-macro2 v0.4.30 (*)
├── quote v0.6.13 (*)
└── unicode-xid v0.1.0 (*)
[dev-dependencies]
└── serde_derive v1.0.97 (*)
[build-dependencies]
└── cc v1.0.37 (*)
[dev-dependencies]
├── hex v0.3.2
├── libc v0.2.60 (*)
├── rand v0.4.6
└── serde_cbor v0.6.1
├── byteorder v1.3.2 (*)
├── serde v1.0.97 (*)
└── serde_bytes v0.10.5
└── serde v1.0.97 (*)
Firstly, I'm not sure how chrono is getting pulled in, as the only feature enabled is core_io. Secondly I think I am running into the cargo issue I linked in my first post, byte-order is pulled in by mbedtls
, with default-features = false
but in the dev-deps serde_cbor is also using byteorder but with std features. Cargo seems to assume they are the same crate and use the std enabled one in mbedtls
from rust-mbedtls.
Re yasna, we need the extensions parsing internally, but could gate use of yasna behind std
. I'll open a PR
from rust-mbedtls.
Re chrono it is a hard dep since 9d82ad1 but shouldn't be - I think we only use it with custom_gmtime_r feature so it should only be pulled in then. @Goirad
from rust-mbedtls.
With resolver = "2"
these issues should be fixed. Closing.
from rust-mbedtls.
Related Issues (20)
- Totally fix performance issue related to cflag `-f-no-builtin` HOT 1
- Profile changes on `mbedtls_x509_crt_profile_default` HOT 1
- [mbedtls3] `mbedlts` would breaks the record size limit when sending big record HOT 2
- Add support to pass salt length for RSASSA_PSS
- Avoid tests depending on external services
- Tracking outage of Travis CI HOT 2
- `gcm_context` size mismatch for target `i686-linux-android` HOT 6
- [mbedtls3] TLS 1.3 connection is unstable and sometime break in multi-thread env
- Build failed in ```no_std``` environment.
- Link error with v0.11.0 rust-lld: error: undefined symbol: mbedtls_pk_ec__extern mbedtls_cipher_get_cipher_mode__extern HOT 2
- Unable to build for ESP-IDF target HOT 3
- `mbedtls::x509::certificate::Certificate::verify()` segfaults when passing in an empty certificate chain to verify
- Don't use `alloca()` or variable-sized arrays in `rust_printf.c`
- Certificate from_pem_multiple error HOT 1
- [IMPORTANT] Crate status change
- A security vulnerability has been detected in spin v0.4.* used in v0.9.3 HOT 1
- Features that need to be ported to 2.28.X mbedtls (current master) HOT 1
- Encountered test failures when randomizing tests HOT 1
- Check to set `CMAKE_TRY_COMPILE_TARGET_TYPE` too restrictive HOT 1
- Fix and Setup daily CI for keeping track of nightly compiler changes
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rust-mbedtls.