From 4a4c9f3f84bdc1d5e689755475a921a65b6a75de Mon Sep 17 00:00:00 2001 From: alecmocatta Date: Mon, 17 Aug 2020 17:02:22 +0100 Subject: [PATCH] fix under miri --- amadeus-parquet/Cargo.toml | 2 +- amadeus-parquet/src/internal/compression.rs | 7 +++ .../src/internal/encodings/decoding.rs | 3 ++ .../src/internal/encodings/encoding.rs | 15 ++++++ amadeus-parquet/src/internal/encodings/rle.rs | 5 +- amadeus-parquet/src/internal/file/reader.rs | 5 ++ amadeus-parquet/src/internal/record/impls.rs | 6 +-- .../src/internal/record/predicates.rs | 2 +- amadeus-parquet/src/internal/record/reader.rs | 13 ++++- .../src/internal/record/schemas.rs | 3 +- .../src/internal/record/triplet.rs | 4 ++ amadeus-parquet/tests/derive.rs | 1 + amadeus-serde/Cargo.toml | 2 +- amadeus-serde/src/impls.rs | 2 +- amadeus-types/Cargo.toml | 2 +- amadeus-types/src/group.rs | 2 +- amadeus-types/src/value.rs | 2 +- azure-pipelines.yml | 53 +++++++++---------- 18 files changed, 85 insertions(+), 44 deletions(-) diff --git a/amadeus-parquet/Cargo.toml b/amadeus-parquet/Cargo.toml index c7e3362c..5e174392 100644 --- a/amadeus-parquet/Cargo.toml +++ b/amadeus-parquet/Cargo.toml @@ -29,7 +29,7 @@ educe = "0.4" flate2 = { version = "1.0.2", features = ["rust_backend"], default-features = false } futures = "0.3" fxhash = "0.2" -linked-hash-map = "0.5" +hashlink = "0.5" lz-fear = "0.1" num-bigint = "0.3" quick-error = "1.2.2" diff --git a/amadeus-parquet/src/internal/compression.rs b/amadeus-parquet/src/internal/compression.rs index 0f74dda1..5646584c 100644 --- a/amadeus-parquet/src/internal/compression.rs +++ b/amadeus-parquet/src/internal/compression.rs @@ -290,26 +290,31 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_codec_snappy() { test_codec(CodecType::Snappy); } #[test] + #[cfg_attr(miri, ignore)] fn test_codec_gzip() { test_codec(CodecType::Gzip); } #[test] + #[cfg_attr(miri, ignore)] fn test_codec_brotli() { test_codec(CodecType::Brotli); } #[test] + #[cfg_attr(miri, ignore)] fn test_codec_lz4() { test_codec(CodecType::Lz4); } #[test] + #[cfg_attr(miri, ignore)] fn test_codec_zstd() { test_codec(CodecType::Zstd); } @@ -350,6 +355,7 @@ mod tests { macro_rules! compress { ($fname:ident, $codec:expr, $col_idx:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let mut codec = create_codec($codec).unwrap().unwrap(); let data = get_pages_bytes($col_idx); @@ -366,6 +372,7 @@ mod tests { macro_rules! decompress { ($fname:ident, $codec:expr, $col_idx:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let compressed_pages = { let mut codec = create_codec($codec).unwrap().unwrap(); diff --git a/amadeus-parquet/src/internal/encodings/decoding.rs b/amadeus-parquet/src/internal/encodings/decoding.rs index bed80a4d..281d24de 100644 --- a/amadeus-parquet/src/internal/encodings/decoding.rs +++ b/amadeus-parquet/src/internal/encodings/decoding.rs @@ -1489,6 +1489,7 @@ mod tests { macro_rules! plain { ($fname:ident, $num_values:expr, $batch_size:expr, $ty:ident, $pty:expr, $gen_data_fn:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let mem_tracker = Rc::new(MemTracker::new()); let mut encoder = @@ -1508,6 +1509,7 @@ mod tests { ($fname:ident, $num_values:expr, $batch_size:expr, $ty:ident, $pty:expr, $gen_data_fn:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let mem_tracker = Rc::new(MemTracker::new()); let mut encoder = DictEncoder::<$ty>::new(Rc::new(col_desc(0, $pty)), mem_tracker); @@ -1536,6 +1538,7 @@ mod tests { macro_rules! delta_bit_pack { ($fname:ident, $num_values:expr, $batch_size:expr, $ty:ident, $gen_data_fn:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let mut encoder = DeltaBitPackEncoder::<$ty>::new(); diff --git a/amadeus-parquet/src/internal/encodings/encoding.rs b/amadeus-parquet/src/internal/encodings/encoding.rs index 39864e0a..63277386 100644 --- a/amadeus-parquet/src/internal/encodings/encoding.rs +++ b/amadeus-parquet/src/internal/encodings/encoding.rs @@ -1008,6 +1008,7 @@ mod tests { const TEST_SET_SIZE: usize = 1024; #[test] + #[cfg_attr(miri, ignore)] fn test_get_encoders() { // supported encodings create_and_check_encoder::(Encoding::Plain, None); @@ -1038,6 +1039,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_bool() { BoolType::test(Encoding::Plain, TEST_SET_SIZE, -1); BoolType::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); @@ -1045,6 +1047,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_i32() { Int32Type::test(Encoding::Plain, TEST_SET_SIZE, -1); Int32Type::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); @@ -1052,6 +1055,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_i64() { Int64Type::test(Encoding::Plain, TEST_SET_SIZE, -1); Int64Type::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); @@ -1059,24 +1063,28 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_i96() { Int96Type::test(Encoding::Plain, TEST_SET_SIZE, -1); Int96Type::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); } #[test] + #[cfg_attr(miri, ignore)] fn test_float() { FloatType::test(Encoding::Plain, TEST_SET_SIZE, -1); FloatType::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); } #[test] + #[cfg_attr(miri, ignore)] fn test_double() { DoubleType::test(Encoding::Plain, TEST_SET_SIZE, -1); DoubleType::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); } #[test] + #[cfg_attr(miri, ignore)] fn test_byte_array() { ByteArrayType::test(Encoding::Plain, TEST_SET_SIZE, -1); ByteArrayType::test(Encoding::PlainDictionary, TEST_SET_SIZE, -1); @@ -1085,6 +1093,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_fixed_lenbyte_array() { FixedLenByteArrayType::test(Encoding::Plain, TEST_SET_SIZE, 100); FixedLenByteArrayType::test(Encoding::PlainDictionary, TEST_SET_SIZE, 100); @@ -1092,6 +1101,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_dict_encoded_size() { fn run_test(type_length: i32, values: &[T::Type], expected_size: usize) { let mut encoder = create_test_dict_encoder::(type_length); @@ -1116,6 +1126,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_estimated_data_encoded_size() { fn run_test( encoding: Encoding, type_length: i32, values: &[T::Type], initial_size: usize, @@ -1176,6 +1187,7 @@ mod tests { // See: https://github.com/sunchao/parquet-rs/issues/47 #[test] + #[cfg_attr(miri, ignore)] fn test_issue_47() { let mut encoder = create_test_encoder::(0, Encoding::DeltaByteArray); let mut decoder = create_test_decoder::(0, Encoding::DeltaByteArray); @@ -1378,6 +1390,7 @@ mod tests { macro_rules! plain { ($fname:ident, $batch_size:expr, $ty:ident, $pty:expr, $gen_data_fn:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let mem_tracker = Rc::new(MemTracker::new()); let encoder = @@ -1391,6 +1404,7 @@ mod tests { macro_rules! dict { ($fname:ident, $batch_size:expr, $ty:ident, $pty:expr, $gen_data_fn:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let mem_tracker = Rc::new(MemTracker::new()); let encoder = DictEncoder::<$ty>::new(Rc::new(col_desc(0, $pty)), mem_tracker); @@ -1403,6 +1417,7 @@ mod tests { macro_rules! delta_bit_pack { ($fname:ident, $batch_size:expr, $ty:ident, $gen_data_fn:expr) => { #[bench] + #[cfg_attr(miri, ignore)] fn $fname(bench: &mut Bencher) { let encoder = DeltaBitPackEncoder::<$ty>::new(); let (bytes, values) = $gen_data_fn($batch_size); diff --git a/amadeus-parquet/src/internal/encodings/rle.rs b/amadeus-parquet/src/internal/encodings/rle.rs index 2a389d0a..3d22386e 100644 --- a/amadeus-parquet/src/internal/encodings/rle.rs +++ b/amadeus-parquet/src/internal/encodings/rle.rs @@ -737,6 +737,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_values() { for width in 1..MAX_WIDTH + 1 { test_rle_values(width, 1, -1); @@ -801,8 +802,8 @@ mod tests { #[test] fn test_random() { let seed_len = 32; - let niters = 50; - let ngroups = 1000; + let niters = if !cfg!(miri) { 50 } else { 1 }; + let ngroups = if !cfg!(miri) { 1000 } else { 200 }; let max_group_size = 15; let mut values = vec![]; diff --git a/amadeus-parquet/src/internal/file/reader.rs b/amadeus-parquet/src/internal/file/reader.rs index b136a30f..4de64287 100644 --- a/amadeus-parquet/src/internal/file/reader.rs +++ b/amadeus-parquet/src/internal/file/reader.rs @@ -788,6 +788,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] // as strerror_r isn't implemented in miri fn test_file_reader_try_from() { // Valid file path let test_file = get_test_file("alltypes_plain.parquet"); @@ -1098,6 +1099,7 @@ mod tests { // Benches #[bench] + #[cfg_attr(miri, ignore)] fn record_reader_10k(bench: &mut Bencher) { let file = get_test_file("10k-v2.parquet"); let len = file.metadata().unwrap().len(); @@ -1113,6 +1115,7 @@ mod tests { } #[bench] + #[cfg_attr(miri, ignore)] fn record_reader_10k_typed(bench: &mut Bencher) { let file = get_test_file("10k-v2.parquet"); let len = file.metadata().unwrap().len(); @@ -1129,6 +1132,7 @@ mod tests { } #[bench] + #[cfg_attr(miri, ignore)] fn record_reader_stock_simulated(bench: &mut Bencher) { let file = get_test_file("stock_simulated.parquet"); let len = file.metadata().unwrap().len(); @@ -1184,6 +1188,7 @@ mod tests { } #[bench] + #[cfg_attr(miri, ignore)] fn record_reader_stock_simulated_column(bench: &mut Bencher) { // WARNING THIS BENCH IS INTENDED FOR THIS DATA FILE ONLY // COPY OR CHANGE THE DATA FILE MAY NOT WORK AS YOU WISH diff --git a/amadeus-parquet/src/internal/record/impls.rs b/amadeus-parquet/src/internal/record/impls.rs index d4e2ffb5..6b5e2e89 100644 --- a/amadeus-parquet/src/internal/record/impls.rs +++ b/amadeus-parquet/src/internal/record/impls.rs @@ -1,4 +1,4 @@ -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use std::{ any::type_name, collections::HashMap, convert::{TryFrom, TryInto}, fmt, hash::{BuildHasher, Hash}, marker::PhantomData, string::FromUtf8Error, sync::Arc }; @@ -8,8 +8,6 @@ use amadeus_types::{ Bson, Data, Date, DateTime, DateTimeWithoutTimezone, DateWithoutTimezone, Decimal, Enum, Group, IpAddr, Json, List, Time, TimeWithoutTimezone, Timezone, Url, Value, Webpage }; -#[cfg(debug_assertions)] -use crate::internal::schema::parser::parse_message_type; use crate::internal::{ basic::{LogicalType, Repetition, Type as PhysicalType}, column::reader::ColumnReader, data_type::{ BoolType, ByteArrayType, DoubleType, FixedLenByteArrayType, FloatType, Int32Type, Int64Type, Int96, Int96Type @@ -1112,6 +1110,8 @@ where .map(|(name, schema_)| { #[cfg(debug_assertions)] { + use crate::internal::schema::parser::parse_message_type; + // Check parsing and printing by round-tripping both typed and untyped and checking correctness. // TODO: do with predicates also diff --git a/amadeus-parquet/src/internal/record/predicates.rs b/amadeus-parquet/src/internal/record/predicates.rs index a8549133..e0adffd8 100644 --- a/amadeus-parquet/src/internal/record/predicates.rs +++ b/amadeus-parquet/src/internal/record/predicates.rs @@ -1,5 +1,5 @@ use fxhash::FxBuildHasher; -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use std::collections::HashMap; use amadeus_types::{Bson, Date, DateTime, Decimal, Enum, Group, Json, List, Time, Value}; diff --git a/amadeus-parquet/src/internal/record/reader.rs b/amadeus-parquet/src/internal/record/reader.rs index 38cbf35d..da07663c 100644 --- a/amadeus-parquet/src/internal/record/reader.rs +++ b/amadeus-parquet/src/internal/record/reader.rs @@ -24,7 +24,7 @@ //! that are optional or repeated. use fxhash::FxBuildHasher; -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use std::{ collections::HashMap, convert::TryInto, error::Error, marker::PhantomData, mem, sync::Arc }; @@ -948,7 +948,7 @@ where mod tests { use super::*; - use linked_hash_map::LinkedHashMap; + use hashlink::LinkedHashMap; use std::{collections::HashMap, sync::Arc}; use crate::internal::{ @@ -1034,6 +1034,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_nulls() { let rows = test_file_reader_rows::("nulls.snappy.parquet", None).unwrap(); @@ -1076,6 +1077,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_nulls_typed() { type RowTyped = (Option<(Option,)>,); @@ -1096,6 +1098,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_nonnullable() { let rows = test_file_reader_rows::("nonnullable.impala.parquet", None).unwrap(); @@ -1143,6 +1146,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_nonnullable_typed() { type RowTyped = ( i64, @@ -1178,6 +1182,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_nullable() { let rows = test_file_reader_rows::("nullable.impala.parquet", None).unwrap(); @@ -1532,6 +1537,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_nullable_typed() { type RowTyped = ( Option, @@ -1672,6 +1678,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_projection() { let _schema = " message spark_schema { @@ -1717,6 +1724,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_projection_map() { let _schema = " message spark_schema { @@ -1798,6 +1806,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_file_reader_rows_projection_list() { let _schema = " message spark_schema { diff --git a/amadeus-parquet/src/internal/record/schemas.rs b/amadeus-parquet/src/internal/record/schemas.rs index 6998c288..beef783b 100644 --- a/amadeus-parquet/src/internal/record/schemas.rs +++ b/amadeus-parquet/src/internal/record/schemas.rs @@ -31,7 +31,7 @@ //! ``` use fxhash::FxBuildHasher; -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use std::{ fmt::{self, Debug, Display}, marker::PhantomData, mem, str::FromStr }; @@ -1782,6 +1782,7 @@ mod tests { use amadeus_types::Value; #[test] + #[cfg_attr(miri, ignore)] fn schema_printing() { let _schema: RootSchema = "message org.apache.impala.ComplexTypesTbl { REQUIRED int64 ID (INT_64); diff --git a/amadeus-parquet/src/internal/record/triplet.rs b/amadeus-parquet/src/internal/record/triplet.rs index b1979bbb..c34855ba 100644 --- a/amadeus-parquet/src/internal/record/triplet.rs +++ b/amadeus-parquet/src/internal/record/triplet.rs @@ -328,6 +328,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_triplet_required_column() { let path = vec!["ID"]; let values = vec![Value::I64(8)]; @@ -343,6 +344,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_triplet_optional_column() { let path = vec!["nested_struct", "A"]; let values = vec![Value::I32(1), Value::I32(7)]; @@ -358,6 +360,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_triplet_optional_list_column() { let path = vec!["a", "list", "element", "list", "element", "list", "element"]; let values = vec![ @@ -389,6 +392,7 @@ mod tests { } #[test] + #[cfg_attr(miri, ignore)] fn test_triplet_optional_map_column() { let path = vec!["a", "key_value", "value", "key_value", "key"]; let values = vec![ diff --git a/amadeus-parquet/tests/derive.rs b/amadeus-parquet/tests/derive.rs index b7ae1029..06529523 100644 --- a/amadeus-parquet/tests/derive.rs +++ b/amadeus-parquet/tests/derive.rs @@ -15,6 +15,7 @@ // specific language governing permissions and limitations // under the License. +#![cfg(not(miri))] #![allow(clippy::type_complexity)] use std::{collections::HashMap, env, fs, path::PathBuf, str::FromStr}; diff --git a/amadeus-serde/Cargo.toml b/amadeus-serde/Cargo.toml index 2b86f0d3..2b1cbb98 100644 --- a/amadeus-serde/Cargo.toml +++ b/amadeus-serde/Cargo.toml @@ -25,7 +25,7 @@ chrono = { version = "0.4", default-features = false, features = ["serde"] } csv = "1.0" educe = "0.4" futures = "0.3" -linked-hash-map = "0.5" +hashlink = "0.5" serde = { version = "1.0", features = ["derive"] } serde_bytes = "0.11" serde_closure = "0.3" diff --git a/amadeus-serde/src/impls.rs b/amadeus-serde/src/impls.rs index f62d6192..07e6e7bf 100644 --- a/amadeus-serde/src/impls.rs +++ b/amadeus-serde/src/impls.rs @@ -1,6 +1,6 @@ #![allow(clippy::too_many_lines)] -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use recycle::VecExt; use serde::{ de::{self, MapAccess, SeqAccess, Visitor}, ser::{SerializeSeq, SerializeStruct, SerializeTupleStruct}, Deserializer, Serializer diff --git a/amadeus-types/Cargo.toml b/amadeus-types/Cargo.toml index 5d424b6f..d20d6eb1 100644 --- a/amadeus-types/Cargo.toml +++ b/amadeus-types/Cargo.toml @@ -23,7 +23,7 @@ amadeus-core = { version = "=0.4.1", path = "../amadeus-core" } chrono = { version = "0.4", default-features = false, features = ["std", "serde"] } chrono-tz = { version = "0.5", features = ["serde"] } fxhash = "0.2" -linked-hash-map = "0.5" +hashlink = "0.5" once_cell = "1.0" ordered-float = "2.0" serde = { version = "1.0", features = ["derive"] } diff --git a/amadeus-types/src/group.rs b/amadeus-types/src/group.rs index 158c9dca..626316dd 100644 --- a/amadeus-types/src/group.rs +++ b/amadeus-types/src/group.rs @@ -1,7 +1,7 @@ //! Implement [`Record`] for [`Group`] aka [`Row`]. use fxhash::FxBuildHasher; -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use serde::{Deserialize, Deserializer, Serialize, Serializer}; use std::{ cmp::Ordering, fmt::{self, Debug}, ops::Index, slice::SliceIndex, str, sync::Arc diff --git a/amadeus-types/src/value.rs b/amadeus-types/src/value.rs index b33f39d9..48784ae7 100644 --- a/amadeus-types/src/value.rs +++ b/amadeus-types/src/value.rs @@ -3,7 +3,7 @@ #![allow(clippy::type_complexity)] use fxhash::FxBuildHasher; -use linked_hash_map::LinkedHashMap; +use hashlink::LinkedHashMap; use recycle::VecExt; use serde::{de::Deserializer, ser::Serializer, Deserialize, Serialize}; use std::{ diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 4d09c3ca..90d3bf3b 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -20,25 +20,16 @@ jobs: endpoint: alecmocatta default: rust_toolchain: nightly - rust_lint_toolchain: nightly-2020-08-16 + rust_lint_toolchain: nightly-2020-08-17 rust_flags: '' rust_features_clippy: ';aws;commoncrawl;parquet;postgres;csv;json;constellation aws commoncrawl parquet postgres csv json bench' + rust_features_miri: 'aws commoncrawl parquet postgres csv json' rust_features: 'constellation aws commoncrawl parquet postgres csv json bench' rust_doc_features: 'constellation aws commoncrawl parquet postgres csv json' rust_target_check: '' rust_target_build: '' rust_target_run: '' matrix: - windows: - imageName: 'windows-latest' - rust_features_clippy: ';aws;commoncrawl;parquet;postgres;csv;json;aws commoncrawl parquet postgres csv json bench' - rust_features: 'aws commoncrawl parquet postgres csv json bench' - rust_doc_features: 'aws commoncrawl parquet postgres csv json' - rust_target_run: 'x86_64-pc-windows-msvc' - mac: - imageName: 'macos-latest' - rust_target_build: 'aarch64-apple-ios' - rust_target_run: 'x86_64-apple-darwin' linux0: imageName: 'ubuntu-latest' rust_target_run: 'x86_64-unknown-linux-gnu' @@ -46,13 +37,23 @@ jobs: # linux1: # imageName: 'ubuntu-latest' # rust_target_run: 'x86_64-unknown-linux-musl' + mac: + imageName: 'macos-latest' + rust_target_build: 'aarch64-apple-ios' + rust_target_run: 'x86_64-apple-darwin' + windows: + imageName: 'windows-latest' + rust_features_clippy: ';aws;commoncrawl;parquet;postgres;csv;json;aws commoncrawl parquet postgres csv json bench' + rust_features: 'aws commoncrawl parquet postgres csv json bench' + rust_doc_features: 'aws commoncrawl parquet postgres csv json' + rust_target_run: 'x86_64-pc-windows-msvc' - template: rust-n.yml@templates parameters: endpoint: alecmocatta default: rust_toolchain: stable - rust_lint_toolchain: nightly-2020-08-16 + rust_lint_toolchain: nightly-2020-08-17 rust_flags: '' rust_features_clippy: ';aws;commoncrawl;postgres;csv;json;aws commoncrawl postgres csv json' rust_features: 'aws commoncrawl postgres csv json' @@ -61,13 +62,13 @@ jobs: rust_target_build: '' rust_target_run: '' matrix: + linux: + imageName: 'ubuntu-latest' + rust_target_run: 'x86_64-unknown-linux-gnu' mac: imageName: 'macos-latest' rust_target_build: 'aarch64-apple-ios' rust_target_run: 'x86_64-apple-darwin' - linux: - imageName: 'ubuntu-latest' - rust_target_run: 'x86_64-unknown-linux-gnu' windows: imageName: 'windows-latest' rust_target_run: 'x86_64-pc-windows-msvc' @@ -78,27 +79,24 @@ jobs: endpoint: alecmocatta default: rust_toolchain: nightly - rust_lint_toolchain: nightly-2020-08-16 + rust_lint_toolchain: nightly-2020-08-17 rust_flags: '' rust_packages: '-p amadeus-core -p amadeus-derive -p amadeus-parquet -p amadeus-serde -p amadeus-types -p amadeus' rust_features_clippy: ';parquet;csv;json;parquet csv json' rust_features: 'parquet csv json' rust_doc_features: 'parquet csv json' rust_target_check: '' - rust_target_build: '' + rust_target_build: 'wasm32-unknown-unknown' # run when fixed: https://github.com/rustwasm/wasm-bindgen/issues/2261 rust_target_run: '' matrix: + linux: + imageName: 'ubuntu-latest' # TODO: clang version doesn't support wasm32-unknown-wasi # mac: # imageName: 'macos-latest' - # rust_target_run: 'wasm32-unknown-unknown' - linux: - imageName: 'ubuntu-latest' - rust_target_run: 'wasm32-unknown-unknown' # TODO: headless browser fails: driver status: exit code: 1 # windows: # imageName: 'windows-latest' - # rust_target_run: 'wasm32-unknown-unknown' - template: rust-n.yml@templates parameters: @@ -106,23 +104,20 @@ jobs: endpoint: alecmocatta default: rust_toolchain: stable nightly - rust_lint_toolchain: nightly-2020-08-16 + rust_lint_toolchain: nightly-2020-08-17 rust_flags: '' rust_packages: '-p amadeus-core -p amadeus-derive -p amadeus-serde -p amadeus-types -p amadeus' rust_features_clippy: ';csv;json;csv json' rust_features: 'csv json' rust_doc_features: 'csv json' rust_target_check: '' - rust_target_build: '' + rust_target_build: 'wasm32-unknown-unknown' # run when fixed: https://github.com/rustwasm/wasm-bindgen/issues/2261 rust_target_run: '' matrix: - mac: - imageName: 'macos-latest' - rust_target_run: 'wasm32-unknown-unknown' linux: imageName: 'ubuntu-latest' - rust_target_run: 'wasm32-unknown-unknown' + mac: + imageName: 'macos-latest' # TODO: headless browser fails: driver status: exit code: 1 # windows: # imageName: 'windows-latest' - # rust_target_run: 'wasm32-unknown-unknown'