-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix ordering functions for IFP #262
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SwayStar123
added
Bug
Something isn't working
Lib: Math
Label used to filter for the library issue
labels
Jul 5, 2024
bitzoic
reviewed
Jul 8, 2024
bitzoic
approved these changes
Jul 11, 2024
K1-R1
approved these changes
Jul 11, 2024
Closing to re-open in order to try triggering stuck checks |
Merged
K1-R1
added a commit
that referenced
this pull request
Aug 1, 2024
## [v0.23.0] ### Added - [#259](#259) Adds a new upgradability library, including associated tests and documentation. - [#265](#265) Adds the `SetMetadataEvent` and emits `SetMetadataEvent` when the `_set_metadata()` function is called. - [#270](#270) Adds `OrdEq` functionality to Signed Integers. - [#272](#272) Adds the `TryFrom` implementation from signed integers to unsigned integers. ### Changed - [#265](#265) Enables the metadata events now that the Rust SDK supports wrapped heap types. - [#269](#269) Hashes the string "admin" and with the bits of an Identity when creating a storage slot to storage an admin in the Admin Library. - [#276](#276) Prepares for v0.23.0 release. - [#278](#278) Deprecates the Fixed Point number library. ### Fixed - [#258](#258) Fixes incorrect instructions on how to run tests in README and docs hub. - [#262](#262) Fixes incorrect ordering comparison for IFP64, IFP128 and IFP256. - [#263](#263) Fixes `I256`'s returned bits. - [#263](#263) Fixes `I128` and `I256`'s zero or "indent" value. - [#268](#268) Fixes subtraction involving negative numbers for `I8`, `I16`, `I32`, `I64`, `I128`, and `I256`. - [#272](#272) Fixes `From` implementations for Signed Integers with `TryFrom`. - [#273](#273) Fixes negative from implementations for Signed Integers. - [#274](#274) Fixes the `swap_configurables()` function to correctly handle the case where the bytecode is too large to fit in the buffer. - [#275](#275) Fixes an infinite loop in the Bytecode root library's `_compute_bytecode_root()` function. #### Breaking - [#263](#263) Removes the `TwosComplement` trait in favor of `WrappingNeg`. The following demonstrates the breaking change. While this example code uses the `I8` type, the same logic may be applied to the `I16`, `I32`, `I64`, `I128`, and `I256` types. Before: ```sway let my_i8 = i8::zero(); let twos_complement = my_i8.twos_complement(); ``` After: ```sway let my_i8 = i8::zero(); let wrapping_neg = my_i8.wrapping_neg(); ``` - [#272](#272) The `From` implementation for all signed integers to their respective unsigned integer has been removed. The `TryFrom` implementation has been added in its place. Before: ```sway let my_i8: I8 = I8::from(1u8); ``` After: ```sway let my_i8: I8 = I8::try_from(1u8).unwrap(); ``` - [#273](#273) The `neg_from` implementation for all signed integers has been removed. The `neg_try_from()` implementation has been added in its place. The following demonstrates the breaking change. While this example code uses the `I8` type, the same logic may be applied to the `I16`, `I32`, `I64`, `I128`, and `I256` types. Before: ```sway let my_negative_i8: I8 = I8::neg_from(1u8); ``` After: ```sway let my_negative_i8: I8 = I8::neg_try_from(1u8).unwrap(); ``` - [#278](#278) Deprecates the Fixed Point number library. The Fixed Point number library is no longer available. --------- Co-authored-by: K1-R1 <[email protected]> Co-authored-by: SwayStar123 <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Type of change
Changes
The IFP gt and lt functions were incorrectly implemented, this pr fixes the implementation and adds tests to ensure functionality
Notes
Checklist
Breaking*
orNew Feature
labels where relevant.