Skip to content

(v1.1.0-rc.0) Update CHANGELOG - #249

Merged
ericnordelo merged 2 commits into
release-v1.1from
feat/update-v1.1.0-rc.0-CHAGENLOG
Mar 10, 2026
Merged

(v1.1.0-rc.0) Update CHANGELOG#249
ericnordelo merged 2 commits into
release-v1.1from
feat/update-v1.1.0-rc.0-CHAGENLOG

Conversation

@ericnordelo

Copy link
Copy Markdown
Member

No description provided.

Copilot AI review requested due to automatic review settings March 10, 2026 11:46
@coderabbitai

coderabbitai Bot commented Mar 10, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 796d2ec6-303a-4a51-be9d-0f0296f0c5c7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/update-v1.1.0-rc.0-CHAGENLOG

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a release-candidate entry to the changelog so the existing openzeppelin_fp_math additions are attributed to a concrete version instead of remaining implicitly under “Unreleased”.

Changes:

  • Introduce a new ## 1.1.0-rc.0 (10-03-2026) section in CHANGELOG.md.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

@codecov

codecov Bot commented Mar 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 89.87%. Comparing base (f2cd250) to head (ee854bb).
⚠️ Report is 1 commits behind head on release-v1.1.

Additional details and impacted files
@@              Coverage Diff              @@
##           release-v1.1     #249   +/-   ##
=============================================
  Coverage         89.87%   89.87%           
=============================================
  Files                19       19           
  Lines              1787     1787           
  Branches            484      484           
=============================================
  Hits               1606     1606           
  Misses              168      168           
  Partials             13       13           
Flag Coverage Δ
contracts/access 44.87% <ø> (ø)
math/core 86.12% <ø> (ø)
math/fixed_point 58.48% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@ericnordelo
ericnordelo merged commit 8787180 into release-v1.1 Mar 10, 2026
14 checks passed
@ericnordelo
ericnordelo deleted the feat/update-v1.1.0-rc.0-CHAGENLOG branch March 10, 2026 12:45
bidzyyys added a commit that referenced this pull request Mar 16, 2026
* ref: tests for fixed-point package (#248)

* Removed test files aggregating all type's tests

* Refactor fixed-point test suite, add more test cases

* Format files

* tests: apply AI comments

* fix: apply review comments

* fix: apply comment

---------

Co-authored-by: Daniel Bigos <daniel.bigos@icloud.com>

* feat: update CHANGELOG (#249)

* ref: apply auditor3 improvements to rc (#254)

* feat: update CHANGELOG

* feat: apply improvements

* build: sui v1.67.3 (#252)

* ref: apply auditor3 fp math improvements (#255)

* feat: update CHANGELOG

* feat: update comment

* feat: add more doc entries

* feat: add more comments

* feat: apply copilot suggestions

---------

Co-authored-by: immrsd <103599616+immrsd@users.noreply.github.com>
Co-authored-by: Daniel Bigos <daniel.bigos@icloud.com>
Co-authored-by: Daniel Bigos <daniel.bigos@openzeppelin.com>
ericnordelo added a commit that referenced this pull request Apr 21, 2026
* ref: tests for fixed-point package (#248)

* Removed test files aggregating all type's tests

* Refactor fixed-point test suite, add more test cases

* Format files

* tests: apply AI comments

* fix: apply review comments

* fix: apply comment

---------

Co-authored-by: Daniel Bigos <daniel.bigos@icloud.com>

* feat: update CHANGELOG (#249)

* ref: apply auditor3 improvements to rc (#254)

* feat: update CHANGELOG

* feat: apply improvements

* build: sui v1.67.3 (#252)

* ref: apply auditor3 fp math improvements (#255)

* feat: update CHANGELOG

* feat: update comment

* feat: add more doc entries

* feat: add more comments

* feat: apply copilot suggestions

* build: Sui mainnet-v1.68.1 (#265)

* test: change expect helper function into macro (#282)

* test: change expect helper function into macro

* test: fmt

* test: remove expect macro

* test: use assert_eq instead of .eq on fp values

* fix: add missing 10^77 entry to u256::is_power_of_ten lookup table (#291)

* fix: add missing 10^77 entry to u256::is_power_of_ten lookup table

* chore: add missing PR id to changelog entry

* docs: fix module name in quick_sort example docs (#296)

* fix: Fixed-Point `pow` Now Uses Binary Exponentiation (#281)

* ref: use binary exponentiation in sd29x9 pow

* test: change pow invariant to exact result value

* ref: add newline

* doc: update

* fix: assert base limit in sd29x9 pow

* test: increase exp in pow_overflow_aborts_for_large_base

* ref: apply binary exponentiation in ud30x9::pow

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Enhance pow_tests with grouping behavior check (#283)

* Enhance pow_tests with grouping behavior check

Add test for rounding behavior in binary exponentiation with large exponents.

* Add expect_ne to sd29x9_pow_tests

* Add inequality assertion macro for SD29x9

Added a new macro 'expect_ne' to assert inequality between two SD29x9 values.

* Improve expect_ne macro with debugging output

Refactor expect_ne macro to unwrap values and add debug output on assertion failure.

* Refactor expect_ne macro for better readability

Refactor expect_ne macro to unwrap values after assignment.

* Fix debug print statements in assertion check

* Enhance ud30x9 pow tests with expect_ne for validation

Added expect_ne helper to validate non-equality in pow tests.

* Enhance pow test with comment on exponent behavior

Add comment about rounding/truncation behavior in pow test.

* Update math/fixed_point/sources/sd29x9/sd29x9_base.move

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* test: Add expect_ne macro for inequality assertions in ud30x9

* Refactor pow test for clarity and reuse result

* test: precalculate val.pow(255) in ud30x9

* test: fix to use fixed instead of pos in ud30x9

* refactor: extract binary_pow helper, replace expect with assert_eq in pow_tests, use pow(2) for overflow test

Agent-Logs-Url: https://github.com/OpenZeppelin/contracts-sui/sessions/96584ab5-2b3d-4442-9775-45db402402a7

Co-authored-by: bidzyyys <25967634+bidzyyys@users.noreply.github.com>

* refactor: format binary_pow parameters and adjust pow overflow test exponent

* ref: revert pow logic: no longer use internal helper

* test: remove redundant unwraps

* test: revert changes to unwrap

* ref: shadow exp instead of mutating fun param

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: bidzyyys <25967634+bidzyyys@users.noreply.github.com>

* fix: `EUnderflow` for `SD30x9` (N-03) (#297)

* Fix audit issue N-03

* Add changelog entry

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix: changed `mod`, add `rem` (L-03) (#301)

* Add `rem` function for truncated remainder semantics on SD29x9

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Redefine `mod` on SD29x9 to use Euclidean remainder semantics

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Update changelog

* Improve the mod code slightly

* Remove unnecessary dots from the changelog

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Daniel Bigos <daniel.bigos@openzeppelin.com>
Co-authored-by: Nenad <nenad.misic@openzeppelin.com>

* feat: improve fp math conversion API (#264)

* feat: update CHANGELOG

* feat: add conversion API

* feat: add pending files

* feat: improve API

* feat: add missing files

* feat: update CHANGELOG

* feat: remove casting

* feat: reuse macro constant

* feat: apply review updates

* fix: nits

* feat: apply review updates

---------

Co-authored-by: Daniel Bigos <daniel.bigos@openzeppelin.com>
Co-authored-by: Nenad <nenad.misic@openzeppelin.com>

* Remove SD29x9 bitwise operations (#285)

* feat: update CHANGELOG

* refactor: remove bitwise operations for SD

---------

Co-authored-by: Nenad <nenad.misic@openzeppelin.com>

* Rounding Direction improvements (L-06 & N-04) (#289)

* feat: update CHANGELOG

* feat: apply review updates

* feat: add division checks

* feat: apply review updates

* feat: apply copilot suggestions

* feat: centralize common helpers

* feat: update CHNGELOG

* feat: apply suggestion

* ref: sd29x9::pow intermediate positive values are strictly < min. neg. value (#280)

* ref: sd29x9::pow intermediate pos. value must be < min. neg. value

* refactor: rename limit to min_negative and simplify overflow check in pow

Agent-Logs-Url: https://github.com/OpenZeppelin/contracts-sui/sessions/af15164d-616a-4f49-9fd9-8abc5f612c5f

Co-authored-by: 0xNeshi <19427053+0xNeshi@users.noreply.github.com>

* chore: update changelog

* chore: fix pr id

* ref: rename min_negative->max_mag in wrap_components

* refactor: use macro expressions for max whole value constants

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>

* feat: Support both checked and unchecked versions of left and right shift (#288)

* feat: rename lshift -> unchecked_lshift

* chore: update changelog

* docs: add missing error documentation for EOverflow in ud30x9

* ref: use ud30x9::zero instead of manual wrap(0)

* feat: add new checked version of ud30x9::lshift

* feat: rename ud30x9::rshift -> unchecked_rshift

* feat: add new checked version of ud30x9::rshift

* docs: mention unchecked shifts in README

* chore: add missing PR ids to new changelog entries

* ref: reimplement to avoid casts in lshift

* ref: remove zero-value special cases from lshift and rshift

* feat: add EInvalidShiftSize error for shift operations

Replace EOverflow with EInvalidShiftSize for shift size validation in lshift and rshift functions. Update corresponding test cases to expect the new error code.

* chore: fix pr id

* chore: reword changelog

* docs: clarify EOverflow range

* docs: reference checked and unchecked shifts in each other's docs

* chore: move back `rem` changeling

* chore: remove rem entry from changed

* refactor: use `std::u128::max_value!()` macro in `lshift`

* build: Sui mainnet-v1.69.2 (#302)

* ref: replace Lomuto partition with three-way partitioning in quicksort  (#298)

* feat: use insertion sort for vectors with up to 10 elements

* ref: replace Lomuto partition with three-way partitioning in quicksort

Replace the Lomuto partition scheme with three-way partitioning (Dutch National Flag scheme) to handle duplicate elements more efficiently. Move insertion sort optimization from preprocessing to inline handling of small sub-partitions (≤10 elements) during partitioning. Remove the standalone `insertion_sort_by` helper macro as it's now inlined.

* chore: changelog

* chore: fix wording in changelog

* fix: update vector size check

* docs: reword three way partition comment

* test: add quick_sort tests

* test: remove redundant quick_sort test cases

Remove three test cases that are already covered by existing tests: quick_sort_partition_edge_case_pivot - Subset of quick_sort_already_sorted; ≤10 elements doesn't test pivot
quick_sort_single_large_value_at_start - Same pattern as quick_sort_mostly_sorted_with_one_outlier
quick_sort_single_small_value_at_end - Same pattern as quick_sort_mostly_sorted_with_one_outlier_at_end

* ref: swap in insertion sort only when prev. is strictly less

* test: remove comment mentions of specific code lines

* test: clarify comment and fix test function name

Update comment in quick_sort_by_descending_large_vector to clarify that >10 elements forces quicksort partitioning before insertion sort. Rename quick_sort_by_sort_by_id_ascending to quick_sort_by_id_ascending to remove redundant "sort_by" prefix.

* chore: mention quick_sort in changelog

* docs: align generic type name with actual quick_sort_by generic name

* test: increase code coverage with quick_sort tests

* Revert "test: increase code coverage with quick_sort tests"

This reverts commit 47439ca.

* docs: clarify quick_sort worst-case complexity and comparator requirements

Update documentation for `quick_sort` and `quick_sort_by` to clarify that O(n²) worst-case is practically unreachable due to median-of-three pivot selection and three-way partitioning. Add warning that strict comparators (e.g., `<` instead of `<=`) can degrade performance to O(n²) with duplicate elements by defeating three-way partitioning optimization.

* docs: clarify impact of sctrict comparison operators

* docs: soften wording for worst case scenario

* test: ensure quick_sort_by_median_of_three_crafted_inputs covers all branches

* fix: handle empty, single-element & edge cases in quick_sort

* docs: align range notation for eq_end

---------

Co-authored-by: Daniel Bigos <daniel.bigos@openzeppelin.com>

* feat: update CHANGELOG

* feat: update error constant name

* Fix error constant name (#303)

* feat: update CHANGELOG

* feat: update error constant name

* fix: CHANGELOG

* fix: comment

* Add audit reports (#305)

* feat: update CHANGELOG

* feat: add audits

* feat: add published info

---------

Co-authored-by: immrsd <103599616+immrsd@users.noreply.github.com>
Co-authored-by: Daniel Bigos <daniel.bigos@icloud.com>
Co-authored-by: Daniel Bigos <daniel.bigos@openzeppelin.com>
Co-authored-by: Nenad <nenad.misic@openzeppelin.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: bidzyyys <25967634+bidzyyys@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants