incubator-teaclave-sgx-sdk icon indicating copy to clipboard operation
incubator-teaclave-sgx-sdk copied to clipboard

New 1.1.3 breaks older mesalock packages?

Open Cashmaney opened this issue 4 years ago • 4 comments

Hey guys, trying to compile the same code that depended on 1.1.2 now fails

version. This may also occur with an optional dependency that is not enabled.
   Compiling sgx_signal v1.1.2 (https://github.com/apache/teaclave-sgx-sdk.git?tag=v1.1.2#8f065be7)
    Finished release [optimized] target(s) in 0.60s
warning: dependency (webpki) specification is ambiguous. Only one of `branch`, `tag` or `rev` is allowed. This will be considered an error in future versions
warning: dependency (webpki-roots) specification is ambiguous. Only one of `branch`, `tag` or `rev` is allowed. This will be considered an error in future versions
   Compiling autocfg v1.0.1
   Compiling typenum v1.12.0
   Compiling sgx_tstd v1.1.3 (https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de)
   Compiling autocfg v0.1.7
   Compiling hashbrown_tstd v0.9.0 (https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de)
   Compiling proc-macro2 v1.0.24
   Compiling unicode-xid v0.2.1
   Compiling syn v1.0.48
   Compiling sgx_tstd v1.1.2 (https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7)
   Compiling cc v1.0.41
   Compiling byteorder v1.3.4
   Compiling version_check v0.9.2
   Compiling spin v0.5.2
   Compiling untrusted v0.7.1
   Compiling num-iter v0.1.39 (https://github.com/mesalock-linux/num-iter-sgx#f19fc44f)
   Compiling opaque-debug v0.2.3
   Compiling subtle v1.0.0
   Compiling libm v0.1.4
   Compiling serde v1.0.106 (https://github.com/mesalock-linux/serde-sgx#58ff0793)
   Compiling either v1.6.1
   Compiling parity-wasm v0.41.0
   Compiling byte-tools v0.3.1
   Compiling log v0.4.11
   Compiling ryu v1.0.5
error[E0407]: method `extend_one` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/map.rs:3048:5
     |
3048 | /     fn extend_one(&mut self, (k, v): (K, V)) {
3049 | |         self.insert(k, v);
3050 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_reserve` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/map.rs:3054:5
     |
3054 | /     fn extend_reserve(&mut self, additional: usize) {
3055 | |         // Keys may be already present or show multiple times in the iterator.
3056 | |         // Reserve the entire hint lower bound if the map is empty.
3057 | |         // Otherwise reserve half the hint (rounded up), so the map
...    |
3064 | |         self.reserve(reserve);
3065 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_one` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/map.rs:3081:5
     |
3081 | /     fn extend_one(&mut self, (k, v): (&'a K, &'a V)) {
3082 | |         self.insert(*k, *v);
3083 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_reserve` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/map.rs:3087:5
     |
3087 | /     fn extend_reserve(&mut self, additional: usize) {
3088 | |         Extend::<(K, V)>::extend_reserve(self, additional);
3089 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_one` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/set.rs:1026:5
     |
1026 | /     fn extend_one(&mut self, k: T) {
1027 | |         self.map.insert(k, ());
1028 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_reserve` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/set.rs:1032:5
     |
1032 | /     fn extend_reserve(&mut self, additional: usize) {
1033 | |         Extend::<(T, ())>::extend_reserve(&mut self.map, additional);
1034 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_one` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/set.rs:1049:5
     |
1049 | /     fn extend_one(&mut self, k: &'a T) {
1050 | |         self.map.insert(*k, ());
1051 | |     }
     | |_____^ not a member of trait `Extend`

error[E0407]: method `extend_reserve` is not a member of trait `Extend`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/set.rs:1055:5
     |
1055 | /     fn extend_reserve(&mut self, additional: usize) {
1056 | |         Extend::<(T, ())>::extend_reserve(&mut self.map, additional);
1057 | |     }
     | |_____^ not a member of trait `Extend`

error: cannot specialize on trait `core::marker::Copy`
    --> /home/bob/.cargo/git/checkouts/teaclave-sgx-sdk-be25c2ad2f03718d/de34d4d/sgx_tstd/hashbrown/src/raw/mod.rs:1213:1
     |
1213 | / impl<T: Copy> RawTableClone for RawTable<T> {
1214 | |     #[cfg_attr(feature = "inline-more", inline)]
1215 | |     unsafe fn clone_from_spec(&mut self, source: &Self, _on_panic: impl FnMut(&mut Self)) {
1216 | |         source
...    |
1225 | |     }
1226 | | }
     | |_^

error: aborting due to 9 previous errors

For more information about this error, try `rustc --explain E0407`.
error: could not compile `hashbrown_tstd`.

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed

I assume it is because some packages have internal dependencies on 1.1.3, which is compiled with a newer version of rust? After replacing everything I can (without forking packages) to sgx_1.1.2 my cargo tree now looks like:

wasmi-runtime v0.1.0 (/mnt/c/Users/Itzik/GolandProjects/EnigmaBlockchain/cosmwasm/packages/wasmi-runtime)
├── aes-siv v0.2.0
│   ├── aead v0.2.0
│   │   └── generic-array v0.12.3
│   │       └── typenum v1.12.0
│   ├── aes v0.3.2
│   │   ├── aes-soft v0.3.3
│   │   │   ├── block-cipher-trait v0.6.2
│   │   │   │   └── generic-array v0.12.3 (*)
│   │   │   ├── byteorder v1.3.4
│   │   │   └── opaque-debug v0.2.3
│   │   └── block-cipher-trait v0.6.2 (*)
│   ├── cmac v0.2.0
│   │   ├── block-cipher-trait v0.6.2 (*)
│   │   ├── crypto-mac v0.7.0
│   │   │   ├── generic-array v0.12.3 (*)
│   │   │   └── subtle v1.0.0
│   │   └── dbl v0.2.1
│   │       └── generic-array v0.12.3 (*)
│   ├── crypto-mac v0.7.0 (*)
│   ├── ctr v0.3.2
│   │   ├── block-cipher-trait v0.6.2 (*)
│   │   └── stream-cipher v0.3.2
│   │       └── generic-array v0.12.3 (*)
│   ├── dbl v0.2.1 (*)
│   ├── stream-cipher v0.3.2 (*)
│   └── zeroize v1.1.1
│       └── zeroize_derive v1.0.1
│           ├── proc-macro2 v1.0.24
│           │   └── unicode-xid v0.2.1
│           ├── quote v1.0.7
│           │   └── proc-macro2 v1.0.24 (*)
│           ├── syn v1.0.48
│           │   ├── proc-macro2 v1.0.24 (*)
│           │   ├── quote v1.0.7 (*)
│           │   └── unicode-xid v0.2.1 (*)
│           └── synstructure v0.12.4
│               ├── proc-macro2 v1.0.24 (*)
│               ├── quote v1.0.7 (*)
│               ├── syn v1.0.48 (*)
│               └── unicode-xid v0.2.1 (*)
├── base64 v0.10.1 (git+https://github.com/mesalock-linux/rust-base64-sgx?rev=sgx_1.1.2#cdc4f4ab79522f75e4d178c3dcc0b1f0770c6a86)
│   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       ├── hashbrown_tstd v0.7.1 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       │   [build-dependencies]
│       │   └── autocfg v1.0.1
│       ├── sgx_alloc v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       ├── sgx_backtrace_sys v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       │   └── sgx_libc v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       │       └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       │   [build-dependencies]
│       │   ├── cc v1.0.41
│       │   └── sgx_build_helper v0.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       ├── sgx_demangle v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       ├── sgx_libc v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       ├── sgx_tprotected_fs v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       │   ├── sgx_trts v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│       │   │   ├── sgx_libc v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       │   │   └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       │   └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       ├── sgx_trts v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       ├── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       └── sgx_unwind v0.1.1 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│           [build-dependencies]
│           └── sgx_build_helper v0.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── bech32 v0.7.2
├── bit-vec v0.6.2
├── chrono v0.4.11 (git+https://github.com/mesalock-linux/chrono-sgx?rev=sgx_1.1.2#43d452d9dc6fc3d2ef90bf1901486d7093cdb804)
│   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd)
│   │   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a)
│   │   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       ├── hashbrown_tstd v0.9.0 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       ├── sgx_alloc v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       ├── sgx_backtrace_sys v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       │   └── sgx_libc v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       │       └── sgx_types v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       │   [build-dependencies]
│   │   │       │   ├── cc v1.0.41 (*)
│   │   │       │   └── sgx_build_helper v0.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       ├── sgx_demangle v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       ├── sgx_libc v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │       ├── sgx_tprotected_fs v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       │   ├── sgx_trts v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │       │   │   ├── sgx_libc v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │       │   │   └── sgx_types v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │       │   └── sgx_types v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │       ├── sgx_trts v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │       ├── sgx_types v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │       └── sgx_unwind v0.1.1 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a)
│   │   │           [build-dependencies]
│   │   │           └── sgx_build_helper v0.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │   [build-dependencies]
│   │   │   └── autocfg v0.1.7
│   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   [build-dependencies]
│   │   └── autocfg v0.1.7 (*)
│   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── ctor v0.1.16
│   ├── quote v1.0.7 (*)
│   └── syn v1.0.48 (*)
├── derive_more v0.99.11
│   ├── proc-macro2 v1.0.24 (*)
│   ├── quote v1.0.7 (*)
│   └── syn v1.0.48 (*)
├── enclave-ffi-types v0.1.0 (/mnt/c/Users/Itzik/GolandProjects/EnigmaBlockchain/cosmwasm/packages/enclave-ffi-types)
│   └── derive_more v0.99.11 (*)
├── hex v0.4.2
├── httparse v1.3.4
├── itertools v0.8.2
│   └── either v1.6.1
├── lazy_static v1.4.0
├── log v0.4.11
│   └── cfg-if v0.1.10
├── num-bigint v0.2.5 (git+https://github.com/mesalock-linux/num-bigint-sgx?rev=sgx_1.1.2#377ecfb8bfac838418e80af9ed6cc74a627ca9c9)
│   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd) (*)
│   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   [build-dependencies]
│   └── autocfg v1.0.1 (*)
├── parity-wasm v0.41.0
├── prost v0.6.1 (git+https://github.com/mesalock-linux/prost-sgx?rev=sgx_1.1.2#ded9d2a18e770f2f2e857c633c77bdbf9f81a4a5)
│   ├── bytes v0.5.4 (git+https://github.com/mesalock-linux/bytes-sgx#63d1951a35f2e888696aba3796aac45214e727ec)
│   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   └── prost-derive v0.6.1 (git+https://github.com/mesalock-linux/prost-sgx?rev=sgx_1.1.2#ded9d2a18e770f2f2e857c633c77bdbf9f81a4a5)
│       ├── anyhow v1.0.28 (git+https://github.com/mesalock-linux/anyhow-sgx#9b7763f58b5dedc11f388ea9a0072049c309e27d)
│       ├── itertools v0.8.2 (*)
│       ├── proc-macro2 v1.0.24 (*)
│       ├── quote v1.0.7 (*)
│       └── syn v1.0.48 (*)
├── pwasm-utils v0.12.0
│   ├── byteorder v1.3.4 (*)
│   ├── log v0.4.11 (*)
│   └── parity-wasm v0.41.0 (*)
├── ring v0.16.11 (git+https://github.com/mesalock-linux/ring-sgx?tag=v0.16.5#c009987701af4b604d33d0e315456f3c59162d29)
│   ├── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   ├── spin v0.5.2
│   └── untrusted v0.7.1
│   [build-dependencies]
│   └── cc v1.0.41 (*)
├── ripemd160 v0.9.1
│   ├── block-buffer v0.9.0
│   │   └── generic-array v0.14.4
│   │       └── typenum v1.12.0 (*)
│   │       [build-dependencies]
│   │       └── version_check v0.9.2
│   ├── digest v0.9.0
│   │   └── generic-array v0.14.4 (*)
│   └── opaque-debug v0.3.0
├── rust-base58 v0.0.4 (git+https://github.com/mesalock-linux/rust-base58-sgx?rev=sgx_1.1.2#38b41f435f96e97142ddd1c1b94df91132a6787e)
│   ├── num v0.2.0 (git+https://github.com/mesalock-linux/num-sgx#22645415542cc67551890dfdd34f4d5638b9ec78)
│   │   ├── num-bigint v0.2.5 (git+https://github.com/mesalock-linux/num-bigint-sgx#377ecfb8bfac838418e80af9ed6cc74a627ca9c9)
│   │   │   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd) (*)
│   │   │   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   │   │   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   │   │   [build-dependencies]
│   │   │   └── autocfg v1.0.1 (*)
│   │   ├── num-complex v0.2.3 (git+https://github.com/mesalock-linux/num-complex-sgx#19700ad6de079ebc5560db472c282d1591e0d84f)
│   │   │   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   │   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │   [build-dependencies]
│   │   │   └── autocfg v0.1.7 (*)
│   │   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd) (*)
│   │   ├── num-iter v0.1.39 (git+https://github.com/mesalock-linux/num-iter-sgx#f19fc44fcad0b82a040e5a24c511e5049cc04b60)
│   │   │   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd) (*)
│   │   │   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   │   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   ├── num-rational v0.2.2 (git+https://github.com/mesalock-linux/num-rational-sgx#be65f9ce439f3c9ec850d8041635ab6c3309b816)
│   │   │   ├── num-bigint v0.2.5 (git+https://github.com/mesalock-linux/num-bigint-sgx#377ecfb8bfac838418e80af9ed6cc74a627ca9c9) (*)
│   │   │   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd) (*)
│   │   │   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   │   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   │   [build-dependencies]
│   │   │   └── autocfg v0.1.7 (*)
│   │   └── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
│   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── rustls v0.16.0 (git+https://github.com/mesalock-linux/rustls?rev=sgx_1.1.2#ce26c885355fde79d45a27a6bbca490d9e8fcc0e)
│   ├── base64 v0.10.1 (git+https://github.com/mesalock-linux/rust-base64-sgx#cdc4f4ab79522f75e4d178c3dcc0b1f0770c6a86)
│   │   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   ├── ring v0.16.11 (git+https://github.com/mesalock-linux/ring-sgx?tag=v0.16.5#c009987701af4b604d33d0e315456f3c59162d29) (*)
│   ├── sct v0.6.0 (git+https://github.com/mesalock-linux/sct.rs?branch=mesalock_sgx#c4d859cca232e6c9d88ca12048df3bc26e1ed4ad)
│   │   ├── ring v0.16.11 (git+https://github.com/mesalock-linux/ring-sgx?tag=v0.16.5#c009987701af4b604d33d0e315456f3c59162d29) (*)
│   │   ├── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   │   └── untrusted v0.7.1 (*)
│   ├── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   └── webpki v0.21.2 (git+https://github.com/mesalock-linux/webpki?branch=mesalock_sgx#ab35cad4197f6e421ca14da0a2eb7df86654418f)
│       ├── ring v0.16.11 (git+https://github.com/mesalock-linux/ring-sgx?tag=v0.16.5#c009987701af4b604d33d0e315456f3c59162d29) (*)
│       ├── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│       └── untrusted v0.7.1 (*)
├── secp256k1 v0.17.2
│   └── secp256k1-sys v0.1.2
│       [build-dependencies]
│       └── cc v1.0.41 (*)
├── serde v1.0.106 (git+https://github.com/mesalock-linux/serde-sgx#58ff0793d46f96124132110880d0f4d44050d6ee)
│   ├── serde_derive v1.0.106 (git+https://github.com/mesalock-linux/serde-sgx#58ff0793d46f96124132110880d0f4d44050d6ee)
│   │   ├── proc-macro2 v1.0.24 (*)
│   │   ├── quote v1.0.7 (*)
│   │   └── syn v1.0.48 (*)
│   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── serde_json v1.0.51 (git+https://github.com/mesalock-linux/serde-json-sgx?rev=sgx_1.1.2#2576a0312702ee83b454d7e084ea53585ac16b70)
│   ├── itoa v0.4.5 (git+https://github.com/mesalock-linux/itoa-sgx.git#295ee451f5ec74f25c299552b481beb445ea3eb7)
│   │   └── sgx_tstd v1.1.3 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.3#de34d4de097de2cd4bc5985c969c033146fc3c0a) (*)
│   ├── ryu v1.0.5
│   ├── serde v1.0.106 (git+https://github.com/mesalock-linux/serde-sgx#58ff0793d46f96124132110880d0f4d44050d6ee) (*)
│   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_rand v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│   ├── sgx_trts v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   ├── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_tcrypto v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│   └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_trts v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_tse v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│   └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_tseal v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)
│   ├── sgx_tcrypto v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   ├── sgx_trts v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   ├── sgx_tse v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   └── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sgx_types v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
├── sha2 v0.8.2
│   ├── block-buffer v0.7.3
│   │   ├── block-padding v0.1.5
│   │   │   └── byte-tools v0.3.1
│   │   ├── byte-tools v0.3.1 (*)
│   │   ├── byteorder v1.3.4 (*)
│   │   └── generic-array v0.12.3 (*)
│   ├── digest v0.8.1
│   │   └── generic-array v0.12.3 (*)
│   ├── fake-simd v0.1.2
│   └── opaque-debug v0.2.3 (*)
├── uuid v0.8.1
├── wasmi v0.6.2 (git+https://github.com/paritytech/wasmi?rev=84d2764594d80425373bf4949a58fa3df3d624c3#84d2764594d80425373bf4949a58fa3df3d624c3)
│   ├── downcast-rs v1.2.0
│   ├── libm v0.1.4
│   ├── memory_units v0.3.0
│   ├── num-rational v0.2.4
│   │   ├── num-integer v0.1.44
│   │   │   └── num-traits v0.2.14
│   │   │       [build-dependencies]
│   │   │       └── autocfg v1.0.1 (*)
│   │   │   [build-dependencies]
│   │   │   └── autocfg v1.0.1 (*)
│   │   └── num-traits v0.2.14 (*)
│   │   [build-dependencies]
│   │   └── autocfg v1.0.1 (*)
│   ├── num-traits v0.2.14 (*)
│   ├── parity-wasm v0.41.0 (*)
│   └── wasmi-validation v0.3.0 (git+https://github.com/paritytech/wasmi?rev=84d2764594d80425373bf4949a58fa3df3d624c3#84d2764594d80425373bf4949a58fa3df3d624c3)
│       └── parity-wasm v0.41.0 (*)
├── webpki v0.21.2 (git+https://github.com/mesalock-linux/webpki?rev=sgx_1.1.2#ab35cad4197f6e421ca14da0a2eb7df86654418f)
│   ├── ring v0.16.11 (git+https://github.com/mesalock-linux/ring-sgx?tag=v0.16.5#c009987701af4b604d33d0e315456f3c59162d29) (*)
│   ├── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   └── untrusted v0.7.1 (*)
├── webpki-roots v0.19.0 (git+https://github.com/mesalock-linux/webpki-roots?rev=sgx_1.1.2#c17c75ea48125a1e0cb815f0279b53aa673197e7)
│   ├── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
│   └── webpki v0.21.2 (git+https://github.com/mesalock-linux/webpki?branch=mesalock_sgx#ab35cad4197f6e421ca14da0a2eb7df86654418f) (*)
├── x25519-dalek v0.6.0
│   ├── curve25519-dalek v2.1.0
│   │   ├── byteorder v1.3.4 (*)
│   │   ├── digest v0.8.1 (*)
│   │   ├── rand_core v0.5.1 (git+https://github.com/mesalock-linux/rand-sgx#55697c5a4007d13e8d5f37be7216be1b18fb8ebf)
│   │   ├── subtle v2.3.0
│   │   └── zeroize v1.1.1 (*)
│   ├── rand_core v0.5.1 (git+https://github.com/mesalock-linux/rand-sgx#55697c5a4007d13e8d5f37be7216be1b18fb8ebf) (*)
│   └── zeroize v1.1.1 (*)
└── yasna v0.3.1 (git+https://github.com/mesalock-linux/yasna.rs-sgx?rev=sgx_1.1.2#e28d16ecb426975d10ab792179e4d4f473ab872d)
    ├── bit-vec v0.6.2 (*)
    ├── chrono v0.4.11 (git+https://github.com/mesalock-linux/chrono-sgx#43d452d9dc6fc3d2ef90bf1901486d7093cdb804)
    │   ├── num-integer v0.1.41 (git+https://github.com/mesalock-linux/num-integer-sgx#404c50e5378ca635261688b080dee328ff42b6bd) (*)
    │   ├── num-traits v0.2.10 (git+https://github.com/mesalock-linux/num-traits-sgx#af046e0b15c594c960007418097dd4ff37ec3f7a) (*)
    │   └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
    ├── num-bigint v0.2.5 (git+https://github.com/mesalock-linux/num-bigint-sgx#377ecfb8bfac838418e80af9ed6cc74a627ca9c9) (*)
    └── sgx_tstd v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb) (*)
[dev-dependencies]
└── sgx_edl v1.1.2 (git+https://github.com/apache/teaclave-sgx-sdk.git?rev=v1.1.2#8f065be7a442157bf16dc7106feb795ea1c578eb)

Just wanted to bring it to your attention, in case you are trying to maintain the 1.1.2 tags as well.

Thanks

Cashmaney avatar Nov 09 '20 15:11 Cashmaney

hey @Cashmaney , thanks for the report!

the reason is that extend_one was changed to be under extend_one feature in https://github.com/rust-lang/rust/issues/72631 , and i guess you're using new compiler (something between 2020-04-07 and 2020-10-25) on v1.1.2 sdk, which requires the old libcore.

my recommendation is switching back to 2020-04-07, or tell me your exact rust toolchain status and i can create a branch for you. thanks!

dingelish avatar Nov 09 '20 18:11 dingelish

That's the thing - I'm using 2020-04-07, trying to compile with the v1.1.2 sdk, running the exact same compile script inside a docker container that was working a couple of days ago. I suspect hashbrown 0.9.0 doesn't compile with 2020-04-07, and it was added as a dependency when you bumped a few package versions?

Cashmaney avatar Nov 09 '20 21:11 Cashmaney

you're right. hashbrown 0.9.0 does not compile on 2020-04-07 and sgx_tstd v1.1.3 does depends on 0.9.0. and v1.1.3 does requires nightly-2020-10-25 or later not only because the change of Extend trait, also the changes in core::alloc traits/error types.

i just updated the readme. could you please try the new docker images? such as 1804-1.1.3 etc. thanks!

dingelish avatar Nov 09 '20 21:11 dingelish

We switched to 1.1.3, and after updating Xargo it's working again, thanks.

But it's still important to note that when you upgrade, it breaks a lot of the packages that depend on previous versions, since there are some dependencies in packages that are unversioned. For example, https://github.com/mesalock-linux/num-integer-sgx has an unversioned dep of https://github.com/mesalock-linux/num-integer-sgx/blob/404c50e5378ca635261688b080dee328ff42b6bd/Cargo.toml#L19-20 which as you can see points to 1.1.3. So effectively, even the sgx_1.1.2 branch depends on 1.1.3. Hope I was clear:)

Cashmaney avatar Nov 15 '20 10:11 Cashmaney