From 3c39b39fbd4cb06aa45020c1743d182aa6b37711 Mon Sep 17 00:00:00 2001 From: gaetbout Date: Thu, 31 Aug 2023 18:07:13 +0200 Subject: [PATCH 1/3] update to 2.2.0 --- .tool-versions | 2 +- README.md | 3 ++- Scarb.toml | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.tool-versions b/.tool-versions index 46b52fd3..ce84f339 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -scarb 0.6.2 \ No newline at end of file +scarb 0.7.0 \ No newline at end of file diff --git a/README.md b/README.md index 1fe2a6ef..ad79bd99 100644 --- a/README.md +++ b/README.md @@ -55,8 +55,9 @@ Current version: [v2.0.1](https://github.com/starkware-libs/cairo/releases/tag/v ## Features -This repository is divided in 8 modules: +This repository is composed of multiple crates: +- [ASCII](./src/ascii/README.md) - [Data Structures](./src/data_structures/README.md) - [Encoding](./src/encoding/README.md) - [Linalg](./src/linalg/README.md) diff --git a/Scarb.toml b/Scarb.toml index 329af327..c0407850 100644 --- a/Scarb.toml +++ b/Scarb.toml @@ -16,7 +16,7 @@ description = "Community maintained Cairo and Starknet libraries" homepage = "https://github.com/keep-starknet-strange/alexandria/" [workspace.dependencies] -starknet = ">=2.1.1" +starknet = ">=2.2.0" [scripts] all = "scarb build && scarb test" From 60798d51b31fa1f5ef7019a5dc22d4d099a62649 Mon Sep 17 00:00:00 2001 From: gaetbout Date: Thu, 31 Aug 2023 18:24:57 +0200 Subject: [PATCH 2/3] format --- src/data_structures/src/queue.cairo | 2 +- src/data_structures/src/stack.cairo | 4 ++-- src/data_structures/src/tests/vec_test.cairo | 12 ++++++------ src/linalg/src/tests/dot_test.cairo | 2 +- src/math/src/sha512.cairo | 2 +- src/math/src/tests/gcd_of_n_numbers_test.cairo | 2 +- src/math/src/tests/karatsuba_test.cairo | 4 ++-- src/numeric/src/cumsum.cairo | 2 +- src/numeric/src/tests/cumsum_test.cairo | 2 +- src/numeric/src/tests/diff_test.cairo | 4 ++-- src/numeric/src/tests/interpolate_test.cairo | 4 ++-- src/numeric/src/tests/trapezoidal_rule_test.cairo | 6 +++--- 12 files changed, 23 insertions(+), 23 deletions(-) diff --git a/src/data_structures/src/queue.cairo b/src/data_structures/src/queue.cairo index a7dc390b..7cfdd0c9 100644 --- a/src/data_structures/src/queue.cairo +++ b/src/data_structures/src/queue.cairo @@ -4,7 +4,7 @@ use array::ArrayTrait; const ZERO_USIZE: usize = 0; struct Queue { - elements: Array, + elements: Array, } trait QueueTrait { diff --git a/src/data_structures/src/stack.cairo b/src/data_structures/src/stack.cairo index bb86b749..efc6b940 100644 --- a/src/data_structures/src/stack.cairo +++ b/src/data_structures/src/stack.cairo @@ -48,7 +48,7 @@ impl DestructFeltStack< } impl Felt252StackImpl< - T, impl TCopy: Copy, impl TDrop: Drop, impl TFelt252DictValue: Felt252DictValue, + T, impl TCopy: Copy, impl TDrop: Drop, impl TFelt252DictValue: Felt252DictValue, > of StackTrait, T> { #[inline(always)] /// Creates a new Stack instance. @@ -123,7 +123,7 @@ impl DestructNullableStack> of Destruct> } impl NullableStackImpl< - T, impl TCopy: Copy, impl TDrop: Drop, + T, impl TCopy: Copy, impl TDrop: Drop, > of StackTrait, T> { #[inline(always)] fn new() -> NullableStack { diff --git a/src/data_structures/src/tests/vec_test.cairo b/src/data_structures/src/tests/vec_test.cairo index 7c07f199..57075948 100644 --- a/src/data_structures/src/tests/vec_test.cairo +++ b/src/data_structures/src/tests/vec_test.cairo @@ -182,7 +182,7 @@ fn felt252_vec_at_test() { #[test] #[available_gas(2000000)] -#[should_panic(expected: ('Index out of bounds', ))] +#[should_panic(expected: ('Index out of bounds',))] fn felt252_vec_at_out_of_bounds_test() { let mut vec = VecTrait::::new(); vec_at_out_of_bounds_test(ref vec); @@ -204,7 +204,7 @@ fn felt252_vec_set_test() { #[test] #[available_gas(2000000)] -#[should_panic(expected: ('Index out of bounds', ))] +#[should_panic(expected: ('Index out of bounds',))] fn felt252_vec_set_test_expect_error() { let mut vec = VecTrait::::new(); vec_set_test_expect_error(ref vec, 1, 2); @@ -219,7 +219,7 @@ fn felt252_vec_index_trait_test() { #[test] #[available_gas(2000000)] -#[should_panic(expected: ('Index out of bounds', ))] +#[should_panic(expected: ('Index out of bounds',))] fn felt252_vec_index_trait_out_of_bounds_test() { let mut vec = VecTrait::::new(); vec_index_trait_out_of_bounds_test(ref vec, 1); @@ -254,7 +254,7 @@ fn nullable_vec_at_test() { #[test] #[available_gas(2000000)] -#[should_panic(expected: ('Index out of bounds', ))] +#[should_panic(expected: ('Index out of bounds',))] fn nullable_vec_at_out_of_bounds_test() { let mut vec = VecTrait::::new(); vec_at_out_of_bounds_test(ref vec); @@ -276,7 +276,7 @@ fn nullable_vec_set_test() { #[test] #[available_gas(2000000)] -#[should_panic(expected: ('Index out of bounds', ))] +#[should_panic(expected: ('Index out of bounds',))] fn nullable_vec_set_test_expect_error() { let mut vec = VecTrait::::new(); vec_set_test_expect_error(ref vec, 1, 2); @@ -291,7 +291,7 @@ fn nullable_vec_index_trait_test() { #[test] #[available_gas(2000000)] -#[should_panic(expected: ('Index out of bounds', ))] +#[should_panic(expected: ('Index out of bounds',))] fn nullable_vec_index_trait_out_of_bounds_test() { let mut vec = VecTrait::::new(); vec_index_trait_out_of_bounds_test(ref vec, 1); diff --git a/src/linalg/src/tests/dot_test.cairo b/src/linalg/src/tests/dot_test.cairo index 9e23c5ef..b71ddd70 100644 --- a/src/linalg/src/tests/dot_test.cairo +++ b/src/linalg/src/tests/dot_test.cairo @@ -10,7 +10,7 @@ fn dot_product_test() { } #[test] -#[should_panic(expected: ('Arrays must have the same len', ))] +#[should_panic(expected: ('Arrays must have the same len',))] #[available_gas(2000000)] fn dot_product_test_check_len() { let mut xs: Array = array![1]; diff --git a/src/math/src/sha512.cairo b/src/math/src/sha512.cairo index f63b69ef..06f348f6 100644 --- a/src/math/src/sha512.cairo +++ b/src/math/src/sha512.cairo @@ -13,7 +13,7 @@ const U64_BIT_NUM: u64 = 64; #[derive(Drop, Copy)] struct Word64 { - data: u64, + data: u64, } impl WordBitAnd of BitAnd { diff --git a/src/math/src/tests/gcd_of_n_numbers_test.cairo b/src/math/src/tests/gcd_of_n_numbers_test.cairo index 0d5cc78f..4d78c471 100644 --- a/src/math/src/tests/gcd_of_n_numbers_test.cairo +++ b/src/math/src/tests/gcd_of_n_numbers_test.cairo @@ -32,7 +32,7 @@ fn gcd_single_test() { #[test] #[available_gas(1000000000)] -#[should_panic(expected: ('EI', ))] +#[should_panic(expected: ('EI',))] fn gcd_empty_input_test() { let mut arr = array![]; gcd(arr.span()); diff --git a/src/math/src/tests/karatsuba_test.cairo b/src/math/src/tests/karatsuba_test.cairo index 3349f2ce..d38aa9e2 100644 --- a/src/math/src/tests/karatsuba_test.cairo +++ b/src/math/src/tests/karatsuba_test.cairo @@ -3,7 +3,7 @@ use alexandria_math::karatsuba::multiply; // TODO All the out of gas have got lazily fixed. Maybe there is a way to fix those. #[test] #[available_gas(10000000)] -#[should_panic(expected: ('Out of gas', ))] +#[should_panic(expected: ('Out of gas',))] fn multiply_same_size_positive_number() { let n1 = 31415; let n2 = 31415; @@ -23,7 +23,7 @@ fn multiply_distinct_size_positive_number() { #[test] #[available_gas(20000000)] -#[should_panic(expected: ('Out of gas', ))] +#[should_panic(expected: ('Out of gas',))] fn multiply_by_zero() { let n1 = 10296; let n2 = 0; diff --git a/src/numeric/src/cumsum.cairo b/src/numeric/src/cumsum.cairo index 2ea130f6..34e07013 100644 --- a/src/numeric/src/cumsum.cairo +++ b/src/numeric/src/cumsum.cairo @@ -7,7 +7,7 @@ use option::OptionTrait; /// * `sequence` - The sequence to operate. /// # Returns /// * `Array` - The cumulative sum of sequence. -fn cumsum, impl TCopy: Copy, impl TDrop: Drop, >( +fn cumsum, impl TCopy: Copy, impl TDrop: Drop,>( mut sequence: Span ) -> Array { // [Check] Inputs diff --git a/src/numeric/src/tests/cumsum_test.cairo b/src/numeric/src/tests/cumsum_test.cairo index 83edee56..de4c51af 100644 --- a/src/numeric/src/tests/cumsum_test.cairo +++ b/src/numeric/src/tests/cumsum_test.cairo @@ -12,7 +12,7 @@ fn cumsum_test() { } #[test] -#[should_panic(expected: ('Array must have at least 1 elt', ))] +#[should_panic(expected: ('Array must have at least 1 elt',))] #[available_gas(2000000)] fn cumsum_test_revert_empty() { let xs: Array = array![]; diff --git a/src/numeric/src/tests/diff_test.cairo b/src/numeric/src/tests/diff_test.cairo index 4b03dc71..c2df180d 100644 --- a/src/numeric/src/tests/diff_test.cairo +++ b/src/numeric/src/tests/diff_test.cairo @@ -12,7 +12,7 @@ fn diff_test() { } #[test] -#[should_panic(expected: ('Sequence must be sorted', ))] +#[should_panic(expected: ('Sequence must be sorted',))] #[available_gas(2000000)] fn diff_test_revert_not_sorted() { let xs: Array = array![3, 2]; @@ -20,7 +20,7 @@ fn diff_test_revert_not_sorted() { } #[test] -#[should_panic(expected: ('Array must have at least 1 elt', ))] +#[should_panic(expected: ('Array must have at least 1 elt',))] #[available_gas(2000000)] fn diff_test_revert_empty() { let xs: Array = array![]; diff --git a/src/numeric/src/tests/interpolate_test.cairo b/src/numeric/src/tests/interpolate_test.cairo index 0b0ca1ad..ccd93a99 100644 --- a/src/numeric/src/tests/interpolate_test.cairo +++ b/src/numeric/src/tests/interpolate_test.cairo @@ -127,7 +127,7 @@ fn interp_constant_right_test() { } #[test] -#[should_panic(expected: ('Arrays must have the same len', ))] +#[should_panic(expected: ('Arrays must have the same len',))] #[available_gas(2000000)] fn interp_revert_len_mismatch() { let xs: Array:: = array![3, 5]; @@ -136,7 +136,7 @@ fn interp_revert_len_mismatch() { } #[test] -#[should_panic(expected: ('Array must have at least 2 elts', ))] +#[should_panic(expected: ('Array must have at least 2 elts',))] #[available_gas(2000000)] fn interp_revert_len_too_short() { let xs: Array:: = array![3]; diff --git a/src/numeric/src/tests/trapezoidal_rule_test.cairo b/src/numeric/src/tests/trapezoidal_rule_test.cairo index 103a99f3..438dc247 100644 --- a/src/numeric/src/tests/trapezoidal_rule_test.cairo +++ b/src/numeric/src/tests/trapezoidal_rule_test.cairo @@ -10,7 +10,7 @@ fn trapezoidal_rule_test() { } #[test] -#[should_panic(expected: ('Arrays must have the same len', ))] +#[should_panic(expected: ('Arrays must have the same len',))] #[available_gas(2000000)] fn trapezoidal_rule_test_revert_len_mismatch() { let xs: Array:: = array![3]; @@ -19,7 +19,7 @@ fn trapezoidal_rule_test_revert_len_mismatch() { } #[test] -#[should_panic(expected: ('Array must have at least 2 elts', ))] +#[should_panic(expected: ('Array must have at least 2 elts',))] #[available_gas(2000000)] fn trapezoidal_rule_test_revert_len_too_short() { let xs: Array:: = array![3]; @@ -28,7 +28,7 @@ fn trapezoidal_rule_test_revert_len_too_short() { } #[test] -#[should_panic(expected: ('Abscissa must be sorted', ))] +#[should_panic(expected: ('Abscissa must be sorted',))] #[available_gas(2000000)] fn trapezoidal_rule_test_revert_not_sorted() { let xs: Array:: = array![5, 3]; From 7899614a2be03f6ee5642392faa2ec60847ffb97 Mon Sep 17 00:00:00 2001 From: gaetbout Date: Thu, 31 Aug 2023 18:27:56 +0200 Subject: [PATCH 3/3] edit version --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ad79bd99..72820847 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ Alexandria is a community maintained standard library for Cairo 1.0. It is a collection of useful algorithms and data structures implemented in Cairo. -Current version: [v2.0.1](https://github.com/starkware-libs/cairo/releases/tag/v2.0.1) +Current version can be found in the [toml file](./Scarb.toml) ## Features