Skip to content
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

Add code size and gas report to github CI #479

Open
wants to merge 15 commits into
base: v2.3
Choose a base branch
from

Conversation

prateekdefi
Copy link

No description provided.

@prateekdefi prateekdefi changed the title Prateek/pe 1866 code size gas report code size and gas report Oct 18, 2024
@prateekdefi prateekdefi changed the title code size and gas report Add code size and gas report to github CI Oct 18, 2024
@prateekdefi prateekdefi marked this pull request as ready for review October 18, 2024 16:01
@@ -0,0 +1,70 @@
name: Gas Report and Code Size
Copy link
Collaborator

Choose a reason for hiding this comment

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

One thing that's nice about these tools is that if there is a previous report it'll show the diff as well. Is there any way we could get that working? We might need to commit the reports to the repo

Copy link
Collaborator

Choose a reason for hiding this comment

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

Oh I see that the code size one does already have the diff

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yeah gas diff would be incredible

Copy link
Author

Choose a reason for hiding this comment

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

The tool shows the difference from the last run only. I looked but couldn't find a way to get diff from a previous report. @arjun-io

Copy link
Author

Choose a reason for hiding this comment

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

Will need to play around in the gas report script to get a diff. Will try that tomorrow.

Copy link
Contributor

Choose a reason for hiding this comment

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

Seems the goal here is to pull the "previous" report from the merge target branch. That implies reports for each branch need to be stored somewhere. Would also be nice to have this for coverage, though out-of-scope for this PR.

As a reviewer, this information should reveal how much larger the PR is making the code, and how much additional gas will be consumed by transactions impacted by the change.

Copy link
Author

Choose a reason for hiding this comment

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

Right, the goal is to compare the code size changes and gas changes from base branch. Using a script I tried to compare code size and gas report tables among two branches and show the diff in a single table but that is causing a lot of issues so I think I should not spend more time on this.

I am thinking of running gas report on both the branches in the CI itself and printing two tables one below the other in a single github comment.

Copy link

Code Size:

 ·---------------------------------|--------------------------------|--------------------------------·
 |  Solc version: 0.8.24           ·  Optimizer enabled: true       ·  Runs: 1000000                 │
 ··································|································|·································
 |  Contract Name                  ·  Deployed size (KiB) (change)  ·  Initcode size (KiB) (change)  │
 ··································|································|·································
 |  AccessUpdateBatchLib           ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  AccessUpdateLib                ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  Accumulator6Lib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Accumulator6StorageLib         ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Address                        ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  AddressStorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  AdiabaticMath6                 ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  BeaconProxy                    ·                 0.693 (0.000)  ·                 1.796 (0.000)  │
 ··································|································|·································
 |  BoolStorageLib                 ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Bytes32StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  CheckpointLib                  ·                 7.131 (0.000)  ·                 7.163 (0.000)  │
 ··································|································|·································
 |  CheckpointStorageLib           ·                 0.751 (0.000)  ·                 0.783 (0.000)  │
 ··································|································|·································
 |  CheckpointTester               ·                 8.129 (0.000)  ·                 8.155 (0.000)  │
 ··································|································|·································
 |  CommonLib                      ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  Create2                        ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  CurveMath6                     ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  EnumerableSet                  ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  ERC1967Proxy                   ·                 0.220 (0.000)  ·                 1.007 (0.000)  │
 ··································|································|·································
 |  ERC20                          ·                 3.235 (0.000)  ·                 4.142 (0.000)  │
 ··································|································|·································
 |  ERC20PresetMinterPauser        ·                 8.197 (0.000)  ·                 9.599 (0.000)  │
 ··································|································|·································
 |  Fixed18Lib                     ·                 0.486 (0.000)  ·                 0.517 (0.000)  │
 ··································|································|·································
 |  Fixed18StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Fixed6Lib                      ·                 0.481 (0.000)  ·                 0.512 (0.000)  │
 ··································|································|·································
 |  Fixed6StorageLib               ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GlobalLib                      ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GlobalStorageLib               ·                 1.199 (0.000)  ·                 1.231 (0.000)  │
 ··································|································|·································
 |  GlobalTester                   ·                 2.215 (0.000)  ·                 2.241 (0.000)  │
 ··································|································|·································
 |  GroupCancellationLib           ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  GuaranteeGlobalTester          ·                 2.583 (0.000)  ·                 2.609 (0.000)  │
 ··································|································|·································
 |  GuaranteeLib                   ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GuaranteeLocalTester           ·                 2.991 (0.000)  ·                 3.018 (0.000)  │
 ··································|································|·································
 |  GuaranteeStorageGlobalLib      ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GuaranteeStorageLib            ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GuaranteeStorageLocalLib       ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Int256StorageLib               ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  IntentLib                      ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  InvariantLib                   ·                 6.911 (0.000)  ·                 6.943 (0.000)  │
 ··································|································|·································
 |  LinearAdiabatic6Lib            ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  LocalLib                       ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  LocalStorageLib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  LocalTester                    ·                 1.359 (0.000)  ·                 1.386 (0.000)  │
 ··································|································|·································
 |  MagicValueLib                  ·                 3.448 (0.000)  ·                 3.479 (0.000)  │
 ··································|································|·································
 |  Market                         ·                23.441 (0.000)  ·                23.582 (0.000)  │
 ··································|································|·································
 |  MarketFactory                  ·                11.974 (0.000)  ·                12.189 (0.000)  │
 ··································|································|·································
 |  MarketParameterStorageLib      ·                 1.110 (0.000)  ·                 1.143 (0.000)  │
 ··································|································|·································
 |  MarketParameterTester          ·                 1.253 (0.000)  ·                 1.279 (0.000)  │
 ··································|································|·································
 |  Math                           ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  MockToken                      ·                 3.941 (0.000)  ·                 4.689 (0.000)  │
 ··································|································|·································
 |  NoopAdiabatic6Lib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  NumberMath                     ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OperatorUpdateLib              ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  OrderGlobalTester              ·                 3.135 (0.000)  ·                 3.161 (0.000)  │
 ··································|································|·································
 |  OrderLib                       ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OrderLocalTester               ·                 3.350 (0.000)  ·                 3.376 (0.000)  │
 ··································|································|·································
 |  OrderStorageGlobalLib          ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OrderStorageLib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OrderStorageLocalLib           ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PAccumulator6Lib               ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PController6Lib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PositionGlobalTester           ·                 5.058 (0.000)  ·                 5.084 (0.000)  │
 ··································|································|·································
 |  PositionLib                    ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PositionLocalTester            ·                 5.158 (0.000)  ·                 5.185 (0.000)  │
 ··································|································|·································
 |  PositionStorageGlobalLib       ·                 0.799 (0.000)  ·                 0.831 (0.000)  │
 ··································|································|·································
 |  PositionStorageLib             ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PositionStorageLocalLib        ·                 0.614 (0.000)  ·                 0.646 (0.000)  │
 ··································|································|·································
 |  ProtocolParameterStorageLib    ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  ProtocolParameterTester        ·                 1.562 (0.000)  ·                 1.588 (0.000)  │
 ··································|································|·································
 |  ProxyAdmin                     ·                 2.255 (0.000)  ·                 2.348 (0.000)  │
 ··································|································|·································
 |  RiskParameterStorageLib        ·                 2.786 (0.000)  ·                 2.818 (0.000)  │
 ··································|································|·································
 |  RiskParameterTester            ·                 2.426 (0.000)  ·                 2.452 (0.000)  │
 ··································|································|·································
 |  SafeERC20                      ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  SignedMath                     ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  SignerUpdateLib                ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  StorageSlot                    ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Strings                        ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  TimelockController             ·                 9.532 (0.000)  ·                10.858 (0.000)  │
 ··································|································|·································
 |  Token18Lib                     ·                 0.138 (0.000)  ·                 0.166 (0.000)  │
 ··································|································|·································
 |  Token18StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  TransparentUpgradeableProxy    ·                 2.590 (0.000)  ·                 3.633 (0.000)  │
 ··································|································|·································
 |  UFixed18Lib                    ·                 0.303 (0.000)  ·                 0.333 (0.000)  │
 ··································|································|·································
 |  UFixed18StorageLib             ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  UFixed6Lib                     ·                 0.291 (0.000)  ·                 0.321 (0.000)  │
 ··································|································|·································
 |  UFixed6StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Uint256StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  UJumpRateUtilizationCurve6Lib  ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  UpgradeableBeacon              ·                 1.165 (0.000)  ·                 1.462 (0.000)  │
 ··································|································|·································
 |  VersionLib                     ·                11.684 (0.000)  ·                11.716 (0.000)  │
 ··································|································|·································
 |  VersionStorageLib              ·                 1.882 (0.000)  ·                 1.914 (0.000)  │
 ··································|································|·································
 |  VersionTester                  ·                 8.442 (0.000)  ·                 8.469 (0.000)  │
 ·---------------------------------|--------------------------------|--------------------------------·

Copy link

Gas Report:

 ·---------------------------------|--------------------------------|--------------------------------·
 |  Solc version: 0.8.24           ·  Optimizer enabled: true       ·  Runs: 1000000                 │
 ··································|································|·································
 |  Contract Name                  ·  Deployed size (KiB) (change)  ·  Initcode size (KiB) (change)  │
 ··································|································|·································
 |  AccessUpdateBatchLib           ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  AccessUpdateLib                ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  Accumulator6Lib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Accumulator6StorageLib         ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Address                        ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  AddressStorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  AdiabaticMath6                 ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  BeaconProxy                    ·                 0.693 (0.000)  ·                 1.796 (0.000)  │
 ··································|································|·································
 |  BoolStorageLib                 ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Bytes32StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  CheckpointLib                  ·                 7.131 (0.000)  ·                 7.163 (0.000)  │
 ··································|································|·································
 |  CheckpointStorageLib           ·                 0.751 (0.000)  ·                 0.783 (0.000)  │
 ··································|································|·································
 |  CheckpointTester               ·                 8.129 (0.000)  ·                 8.155 (0.000)  │
 ··································|································|·································
 |  CommonLib                      ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  Create2                        ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  CurveMath6                     ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  EnumerableSet                  ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  ERC1967Proxy                   ·                 0.220 (0.000)  ·                 1.007 (0.000)  │
 ··································|································|·································
 |  ERC20                          ·                 3.235 (0.000)  ·                 4.142 (0.000)  │
 ··································|································|·································
 |  ERC20PresetMinterPauser        ·                 8.197 (0.000)  ·                 9.599 (0.000)  │
 ··································|································|·································
 |  Fixed18Lib                     ·                 0.486 (0.000)  ·                 0.517 (0.000)  │
 ··································|································|·································
 |  Fixed18StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Fixed6Lib                      ·                 0.481 (0.000)  ·                 0.512 (0.000)  │
 ··································|································|·································
 |  Fixed6StorageLib               ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GlobalLib                      ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GlobalStorageLib               ·                 1.199 (0.000)  ·                 1.231 (0.000)  │
 ··································|································|·································
 |  GlobalTester                   ·                 2.215 (0.000)  ·                 2.241 (0.000)  │
 ··································|································|·································
 |  GroupCancellationLib           ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  GuaranteeGlobalTester          ·                 2.583 (0.000)  ·                 2.609 (0.000)  │
 ··································|································|·································
 |  GuaranteeLib                   ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GuaranteeLocalTester           ·                 2.991 (0.000)  ·                 3.018 (0.000)  │
 ··································|································|·································
 |  GuaranteeStorageGlobalLib      ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GuaranteeStorageLib            ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  GuaranteeStorageLocalLib       ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Int256StorageLib               ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  IntentLib                      ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  InvariantLib                   ·                 6.911 (0.000)  ·                 6.943 (0.000)  │
 ··································|································|·································
 |  LinearAdiabatic6Lib            ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  LocalLib                       ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  LocalStorageLib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  LocalTester                    ·                 1.359 (0.000)  ·                 1.386 (0.000)  │
 ··································|································|·································
 |  MagicValueLib                  ·                 3.448 (0.000)  ·                 3.479 (0.000)  │
 ··································|································|·································
 |  Market                         ·                23.441 (0.000)  ·                23.582 (0.000)  │
 ··································|································|·································
 |  MarketFactory                  ·                11.974 (0.000)  ·                12.189 (0.000)  │
 ··································|································|·································
 |  MarketParameterStorageLib      ·                 1.110 (0.000)  ·                 1.143 (0.000)  │
 ··································|································|·································
 |  MarketParameterTester          ·                 1.253 (0.000)  ·                 1.279 (0.000)  │
 ··································|································|·································
 |  Math                           ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  MockToken                      ·                 3.941 (0.000)  ·                 4.689 (0.000)  │
 ··································|································|·································
 |  NoopAdiabatic6Lib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  NumberMath                     ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OperatorUpdateLib              ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  OrderGlobalTester              ·                 3.135 (0.000)  ·                 3.161 (0.000)  │
 ··································|································|·································
 |  OrderLib                       ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OrderLocalTester               ·                 3.350 (0.000)  ·                 3.376 (0.000)  │
 ··································|································|·································
 |  OrderStorageGlobalLib          ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OrderStorageLib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  OrderStorageLocalLib           ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PAccumulator6Lib               ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PController6Lib                ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PositionGlobalTester           ·                 5.058 (0.000)  ·                 5.084 (0.000)  │
 ··································|································|·································
 |  PositionLib                    ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PositionLocalTester            ·                 5.158 (0.000)  ·                 5.185 (0.000)  │
 ··································|································|·································
 |  PositionStorageGlobalLib       ·                 0.799 (0.000)  ·                 0.831 (0.000)  │
 ··································|································|·································
 |  PositionStorageLib             ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  PositionStorageLocalLib        ·                 0.614 (0.000)  ·                 0.646 (0.000)  │
 ··································|································|·································
 |  ProtocolParameterStorageLib    ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  ProtocolParameterTester        ·                 1.562 (0.000)  ·                 1.588 (0.000)  │
 ··································|································|·································
 |  ProxyAdmin                     ·                 2.255 (0.000)  ·                 2.348 (0.000)  │
 ··································|································|·································
 |  RiskParameterStorageLib        ·                 2.786 (0.000)  ·                 2.818 (0.000)  │
 ··································|································|·································
 |  RiskParameterTester            ·                 2.426 (0.000)  ·                 2.452 (0.000)  │
 ··································|································|·································
 |  SafeERC20                      ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  SignedMath                     ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  SignerUpdateLib                ·                 0.169 (0.000)  ·                 0.198 (0.000)  │
 ··································|································|·································
 |  StorageSlot                    ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Strings                        ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  TimelockController             ·                 9.532 (0.000)  ·                10.858 (0.000)  │
 ··································|································|·································
 |  Token18Lib                     ·                 0.138 (0.000)  ·                 0.166 (0.000)  │
 ··································|································|·································
 |  Token18StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  TransparentUpgradeableProxy    ·                 2.590 (0.000)  ·                 3.633 (0.000)  │
 ··································|································|·································
 |  UFixed18Lib                    ·                 0.303 (0.000)  ·                 0.333 (0.000)  │
 ··································|································|·································
 |  UFixed18StorageLib             ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  UFixed6Lib                     ·                 0.291 (0.000)  ·                 0.321 (0.000)  │
 ··································|································|·································
 |  UFixed6StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  Uint256StorageLib              ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  UJumpRateUtilizationCurve6Lib  ·                 0.056 (0.000)  ·                 0.083 (0.000)  │
 ··································|································|·································
 |  UpgradeableBeacon              ·                 1.165 (0.000)  ·                 1.462 (0.000)  │
 ··································|································|·································
 |  VersionLib                     ·                11.684 (0.000)  ·                11.716 (0.000)  │
 ··································|································|·································
 |  VersionStorageLib              ·                 1.882 (0.000)  ·                 1.914 (0.000)  │
 ··································|································|·································
 |  VersionTester                  ·                 8.442 (0.000)  ·                 8.469 (0.000)  │
 ·---------------------------------|--------------------------------|--------------------------------·
·····························································································································
|  Solidity and Network Configuration                                                                                       │
·······································|················|··················|················|································
|  Solidity: 0.8.24                    ·  Optim: true   ·  Runs: 1000000   ·  viaIR: true   ·     Block: 32,000,000 gas     │
·······································|················|··················|················|································
|  Methods                                                                                                                  │
·······································|················|··················|················|················|···············
|  Contracts / Methods                 ·  Min           ·  Max             ·  Avg           ·  # calls       ·  usd (avg)   │
·······································|················|··················|················|················|···············
|  ERC20                               ·                                                                                    │
·······································|················|··················|················|················|···············
|      approve                         ·        46,727  ·          47,051  ·        46,755  ·           126  ·           -  │
·······································|················|··················|················|················|···············
|      transfer                        ·        30,283  ·          47,395  ·        39,792  ·             9  ·           -  │
·······································|················|··················|················|················|···············
|  ERC20PresetMinterPauser             ·                                                                                    │
·······································|················|··················|················|················|···············
|      pause                           ·             -  ·               -  ·        53,568  ·             1  ·           -  │
·······································|················|··················|················|················|···············
|  Market                              ·                                                                                    │
·······································|················|··················|················|················|···············
|      claimExposure                   ·        77,056  ·          80,482  ·        78,769  ·             2  ·           -  │
·······································|················|··················|················|················|···············
|      claimFee                        ·        80,395  ·         102,412  ·        86,977  ·            23  ·           -  │
·······································|················|··················|················|················|···············
|      settle                          ·       161,409  ·         593,056  ·       379,952  ·           137  ·           -  │
·······································|················|··················|················|················|···············
|      update                          ·       487,922  ·         492,369  ·       489,581  ·             8  ·           -  │
·······································|················|··················|················|················|···············
|      update                          ·       770,358  ·         770,370  ·       770,363  ·             5  ·           -  │
·······································|················|··················|················|················|···············
|      update                          ·       292,851  ·         817,506  ·       576,844  ·           150  ·           -  │
·······································|················|··················|················|················|···············
|      update                          ·       532,130  ·         803,393  ·       683,310  ·            11  ·           -  │
·······································|················|··················|················|················|···············
|      updateBeneficiary               ·             -  ·               -  ·        65,866  ·            59  ·           -  │
·······································|················|··················|················|················|···············
|      updateCoordinator               ·             -  ·               -  ·        66,554  ·            59  ·           -  │
·······································|················|··················|················|················|···············
|      updateParameter                 ·        60,755  ·          80,703  ·        75,283  ·            87  ·           -  │
·······································|················|··················|················|················|···············
|      updateRiskParameter             ·       101,261  ·         158,679  ·       139,057  ·            93  ·           -  │
·······································|················|··················|················|················|···············
|  MarketFactory                       ·                                                                                    │
·······································|················|··················|················|················|···············
|      create                          ·             -  ·               -  ·       413,517  ·            61  ·           -  │
·······································|················|··················|················|················|···············
|      initialize                      ·        77,476  ·         102,628  ·        90,052  ·             4  ·           -  │
·······································|················|··················|················|················|···············
|      updateAccessBatch               ·             -  ·               -  ·        79,661  ·             1  ·           -  │
·······································|················|··················|················|················|···············
|      updateAccessBatchWithSignature  ·             -  ·               -  ·       140,847  ·             1  ·           -  │
·······································|················|··················|················|················|···············
|      updateExtension                 ·             -  ·               -  ·        55,047  ·             1  ·           -  │
·······································|················|··················|················|················|···············
|      updateOperatorWithSignature     ·             -  ·               -  ·       108,771  ·             1  ·           -  │
·······································|················|··················|················|················|···············
|      updateParameter                 ·        42,490  ·          59,578  ·        44,316  ·            19  ·           -  │
·······································|················|··················|················|················|···············
|      updatePauser                    ·             -  ·               -  ·        54,216  ·             2  ·           -  │
·······································|················|··················|················|················|···············
|      updateReferralFee               ·        37,782  ·          54,882  ·        52,032  ·            12  ·           -  │
·······································|················|··················|················|················|···············
|      updateSigner                    ·        31,793  ·          53,705  ·        44,940  ·             5  ·           -  │
·······································|················|··················|················|················|···············
|      updateSignerWithSignature       ·             -  ·               -  ·       108,547  ·             1  ·           -  │
·······································|················|··················|················|················|···············
|  Deployments                                          ·                                   ·  % of limit    ·              │
·······································|················|··················|················|················|···············
|  CheckpointLib                       ·             -  ·               -  ·     1,630,371  ·         5.1 %  ·           -  │
·······································|················|··················|················|················|···············
|  CheckpointStorageLib                ·             -  ·               -  ·       218,154  ·         0.7 %  ·           -  │
·······································|················|··················|················|················|···············
|  GlobalStorageLib                    ·             -  ·               -  ·       316,344  ·           1 %  ·           -  │
·······································|················|··················|················|················|···············
|  InvariantLib                        ·             -  ·               -  ·     1,576,200  ·         4.9 %  ·           -  │
·······································|················|··················|················|················|···············
|  MagicValueLib                       ·             -  ·               -  ·       815,913  ·         2.5 %  ·           -  │
·······································|················|··················|················|················|···············
|  Market                              ·     5,246,268  ·       5,246,280  ·     5,246,274  ·        16.4 %  ·           -  │
·······································|················|··················|················|················|···············
|  MarketFactory                       ·             -  ·               -  ·     2,689,735  ·         8.4 %  ·           -  │
·······································|················|··················|················|················|···············
|  MarketParameterStorageLib           ·             -  ·               -  ·       296,364  ·         0.9 %  ·           -  │
·······································|················|··················|················|················|···············
|  PositionStorageGlobalLib            ·             -  ·               -  ·       228,686  ·         0.7 %  ·           -  │
·······································|················|··················|················|················|···············
|  PositionStorageLocalLib             ·             -  ·               -  ·       187,826  ·         0.6 %  ·           -  │
·······································|················|··················|················|················|···············
|  ProxyAdmin                          ·             -  ·               -  ·       574,001  ·         1.8 %  ·           -  │
·······································|················|··················|················|················|···············
|  RiskParameterStorageLib             ·             -  ·               -  ·       663,686  ·         2.1 %  ·           -  │
·······································|················|··················|················|················|···············
|  TransparentUpgradeableProxy         ·             -  ·               -  ·       689,929  ·         2.2 %  ·           -  │
·······································|················|··················|················|················|···············
|  VersionLib                          ·             -  ·               -  ·     2,635,888  ·         8.2 %  ·           -  │
·······································|················|··················|················|················|···············
|  VersionStorageLib                   ·             -  ·               -  ·       467,797  ·         1.5 %  ·           -  │
·······································|················|··················|················|················|···············
|  Key                                                                                                                      │
·····························································································································
|  ◯  Execution gas for this method does not include intrinsic gas overhead                                                 │
·····························································································································
|  △  Cost was non-zero but below the precision setting for the currency display (see options)                              │
·····························································································································
|  Toolchain:  hardhat                                                                                                      │
·····························································································································

Copy link

[Periphery] Unit Test Coverage Report

Coverage after merging prateek/pe-1866-code-size-gas-report into v2.3 will be
66.89%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
packages/perennial-account/contracts
   Account.sol27.78%100%22.22%29.63%103, 108–109, 58, 64, 67–68, 71, 76–78, 81, 83–84, 89, 94–97
   AccountVerifier.sol100%100%100%100%
   Controller.sol81%100%100%75.95%103–105, 112–113, 204, 216, 227, 229–231, 235–237, 240, 250–252, 259
   Controller_Arbitrum.sol0%100%0%0%29, 41
   Controller_Incentivized.sol0%100%0%0%111, 128–129, 146, 154, 156–157, 164, 183, 186, 205, 208, 227, 230, 249, 252, 271, 274, 286–287, 290, 293, 302–303, 305, 307, 309, 56, 72–77, 94
packages/perennial-account/contracts/libs
   RebalanceLib.sol0%100%0%0%26, 29–30, 32–33, 36, 39, 43
packages/perennial-account/contracts/test
   RebalanceConfigTester.sol100%100%100%100%
packages/perennial-account/contracts/types
   Action.sol100%100%100%100%
   DeployAccount.sol100%100%100%100%
   MarketTransfer.sol100%100%100%100%
   RebalanceConfig.sol100%100%100%100%
   RebalanceConfigChange.sol100%100%100%100%
   RelayedAccessUpdateBatch.sol100%100%100%100%
   RelayedGroupCancellation.sol100%100%100%100%
   RelayedNonceCancellation.sol100%100%100%100%
   RelayedOperatorUpdate.sol100%100%100%100%
   RelayedSignerUpdate.sol100%100%100%100%
   Withdrawal.sol100%100%100%100%
packages/perennial-extensions/contracts
   Coordinator.sol100%100%100%100%
   MultiInvoker.sol90%100%92.86%89.34%101–102, 182, 184, 204, 207, 275, 379, 394, 412, 414, 416, 418
   MultiInvoker_Arbitrum.sol0%100%0%0%43, 51
   MultiInvoker_Optimism.sol0%100%0%0%43, 51
packages/perennial-extensions/contracts/types
   TriggerOrder.sol96.43%100%100%95.83%54
packages/perennial-oracle/contracts
   Oracle.sol100%100%100%100%
   OracleFactory.sol93.55%100%88.89%95.45%65
packages/perennial-oracle/contracts/chainlink
   ChainlinkFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/keeper
   KeeperFactory.sol87.36%100%78.57%89.04%173–174, 176–177, 221, 248, 91–92
   KeeperOracle.sol71.79%100%70.59%72.13%110, 155, 165, 167–169, 171, 173–177, 180–181, 226, 73, 87
   KeeperOracle_Migration.sol0%100%0%0%26–27
packages/perennial-oracle/contracts/keeper/libs
   DedupLib.sol100%100%100%100%
packages/perennial-oracle/contracts/keeper/types
   KeeperOracleParameter.sol100%100%100%100%
   PriceResponse.sol100%100%100%100%
packages/perennial-oracle/contracts/metaquants
   MetaQuantsFactory.sol0%100%0%0%25–27, 33–36, 40, 51–52, 54–57, 59, 61, 63, 65–66, 75
packages/perennial-oracle/contracts/payoff
   Inverse.sol100%100%100%100%
   PowerHalf.sol100%100%100%100%
   PowerTwo.sol100%100%100%100%
packages/perennial-oracle/contracts/pyth
   PythFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/types
   OracleParameter.sol100%100%100%100%
packages/perennial-order/contracts
   Manager.sol81.71%100%83.33%81.25%167–168, 170, 208, 212, 214, 216, 237–239, 254–255
   Manager_Arbitrum.sol100%100%100%100%
   OrderVerifier.sol100%100%100%100%
packages/perennial-order/contracts/test
   TriggerOrderTester.sol100%100%100%100%
packages/perennial-order/contracts/types
   Action.sol100%100%100%100%
   CancelOrderAction.sol100%100%100%100%
   InterfaceFee.sol100%100%100%100%
   PlaceOrderAction.sol100%100%100%100%
   TriggerOrder.sol100%100%100%100%
packages/perennial-vault/contracts
   Vault.sol0%100%0%0%100, 106, 112–113, 121–122, 131, 133, 140, 142, 148, 150–151, 154, 160–161, 163, 165–166, 173–175, 183–187, 194, 196, 198, 204, 206, 208–211, 214, 220–221, 227–228, 234–235, 237–238, 245–246, 248–250, 264–265, 267–270, 276–277, 279–281, 299–300, 303–313, 316, 319–321, 324–326, 328, 335, 345–346, 353, 356, 360–361, 367–368, 371, 374, 378, 391, 393, 401–406, 416, 422, 439, 453, 455–458, 460, 462–463, 466–468, 472–474, 477–479, 486–488, 495, 508–509, 512, 68, 70–73, 79, 86, 93
   VaultFactory.sol0%100%0%0%33–34, 39, 53, 57–59, 61, 68–69
packages/perennial-vault/contracts/libs
   StrategyLib.sol0%100%0%0%116–117, 119–120, 122–126, 132, 135–136, 150, 153, 157, 159, 162, 164, 176–180, 182–183, 185–186, 188, 194, 196, 199–202, 205, 90–95
packages/perennial-vault/contracts/types
   Account.sol100%100%100%100%
   Checkpoint.sol100%100%100%100%
   Registration.sol100%100%100%100%
   VaultParameter.sol100%100%100%100%
packages/perennial-verifier/contracts
   Verifier.sol100%100%100%100%
packages/perennial-verifier/contracts/types
   AccessUpdate.sol100%100%100%100%
   AccessUpdateBatch.sol100%100%100%100%
   Intent.sol100%100%100%100%
   OperatorUpdate.sol100%100%100%100%
   SignerUpdate.sol100%100%100%100%

Copy link

[Core] Integration Test Coverage Report

Coverage after merging prateek/pe-1866-code-size-gas-report into v2.3 will be
96.54%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
packages/perennial/contracts
   Market.sol97.21%92%97.78%99.53%130, 130–131, 136, 150, 191, 243, 714, 886
   MarketFactory.sol93.48%87.50%94.74%97.56%117, 125, 151, 180, 93
packages/perennial/contracts/interfaces
   IMarket.sol100%100%100%100%
   IMarketFactory.sol100%100%100%100%
   IOracleProvider.sol100%100%100%100%
   IOracleProviderFactory.sol100%100%100%100%
packages/perennial/contracts/libs
   CheckpointLib.sol100%100%100%100%
   InvariantLib.sol60.66%47.50%100%85%109, 115–116, 35–36, 38–39, 39, 39, 39, 48, 52, 52, 60, 65–66, 66, 72–73, 77, 83–84, 84, 98
   MagicValueLib.sol63.16%50%100%62.50%55–58, 58, 58–59
   VersionLib.sol98.76%95.83%100%99.18%442–443
packages/perennial/contracts/types
   Checkpoint.sol74.07%50%100%100%50–56
   Global.sol79.69%53.57%100%100%145–157
   Guarantee.sol89.55%65%100%100%197–199, 222–225
   Local.sol82.14%50%100%100%84–88
   MarketParameter.sol76.67%50%100%87.50%100–101, 85–86, 88–89, 99
   OracleReceipt.sol100%100%100%100%
   OracleVersion.sol100%100%100%100%
   Order.sol85.12%63.79%96.77%96.20%103, 103, 109–110, 162, 182, 182, 240, 396–401, 472–474, 500–505, 99
   Position.sol77.19%57.69%87.10%80.70%111, 148, 203, 216, 300, 334–336, 350–352, 355, 355, 355, 355, 355–356, 358–360, 419, 441
   ProtocolParameter.sol73.53%50%100%100%71–73, 79–84
   RiskParameter.sol69.33%47.62%100%96.67%134, 140, 142, 148, 150–151, 153–154, 156, 158, 160, 168, 168, 168–169, 179–186
   Version.sol70.27%50%100%100%100–119, 98–99

Copy link

[Periphery] Integration Test Coverage Report

Coverage after merging prateek/pe-1866-code-size-gas-report into v2.3 will be
93.54%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
packages/perennial-account/contracts
   Account.sol100%100%100%100%
   AccountVerifier.sol91.67%100%91.67%91.67%38
   Controller.sol92%100%90.48%92.41%147, 155, 271, 274, 289, 306
   Controller_Arbitrum.sol100%100%100%100%
   Controller_Incentivized.sol100%100%100%100%
packages/perennial-account/contracts/libs
   RebalanceLib.sol100%100%100%100%
packages/perennial-account/contracts/test
   RebalanceConfigTester.sol0%100%0%0%10, 14
packages/perennial-account/contracts/types
   Action.sol100%100%100%100%
   DeployAccount.sol100%100%100%100%
   MarketTransfer.sol100%100%100%100%
   RebalanceConfig.sol20%100%33.33%14.29%34–35, 43–44, 46, 50
   RebalanceConfigChange.sol85.71%100%100%83.33%43
   RelayedAccessUpdateBatch.sol100%100%100%100%
   RelayedGroupCancellation.sol100%100%100%100%
   RelayedNonceCancellation.sol100%100%100%100%
   RelayedOperatorUpdate.sol100%100%100%100%
   RelayedSignerUpdate.sol100%100%100%100%
   Withdrawal.sol100%100%100%100%
packages/perennial-extensions/contracts
   Coordinator.sol0%100%0%0%20, 26–27, 33–34, 40–42, 49–50
   MultiInvoker.sol100%100%100%100%
   MultiInvoker_Arbitrum.sol0%100%0%0%43, 51
   MultiInvoker_Optimism.sol0%100%0%0%43, 51
packages/perennial-extensions/contracts/types
   TriggerOrder.sol96.43%100%100%95.83%54
packages/perennial-oracle/contracts
   Oracle.sol67.12%100%68.42%66.67%100, 112–113, 122, 149, 172–173, 175, 177–178, 189, 191, 196–197, 61–62, 69, 95
   OracleFactory.sol93.55%100%88.89%95.45%73
packages/perennial-oracle/contracts/chainlink
   ChainlinkFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/keeper
   KeeperFactory.sol95.40%100%85.71%97.26%221, 85
   KeeperOracle.sol96.15%100%94.12%96.72%155, 87
   KeeperOracle_Migration.sol0%100%0%0%26–27
packages/perennial-oracle/contracts/keeper/libs
   DedupLib.sol100%100%100%100%
packages/perennial-oracle/contracts/keeper/types
   KeeperOracleParameter.sol93.75%100%100%92.31%56
   PriceResponse.sol91.30%100%100%87.50%78–79
packages/perennial-oracle/contracts/metaquants
   MetaQuantsFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/payoff
   Inverse.sol0%100%0%0%9
   PowerHalf.sol0%100%0%0%13
   PowerTwo.sol100%100%100%100%
packages/perennial-oracle/contracts/pyth
   PythFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/types
   OracleParameter.sol100%100%100%100%
packages/perennial-order/contracts
   Manager.sol100%100%100%100%
   Manager_Arbitrum.sol100%100%100%100%
   OrderVerifier.sol100%100%100%100%
packages/perennial-order/contracts/test
   TriggerOrderTester.sol0%100%0%0%17, 21, 25, 29
packages/perennial-order/contracts/types
   Action.sol100%100%100%100%
   CancelOrderAction.sol100%100%100%100%
   InterfaceFee.sol100%100%100%100%
   PlaceOrderAction.sol100%100%100%100%
   TriggerOrder.sol95.56%100%100%94.29%120, 47
packages/perennial-vault/contracts
   Vault.sol100%100%100%100%
   VaultFactory.sol100%100%100%100%
packages/perennial-vault/contracts/libs
   StrategyLib.sol100%100%100%100%
packages/perennial-vault/contracts/types
   Account.sol100%100%100%100%
   Checkpoint.sol100%100%100%100%
   Registration.sol100%100%100%100%
   VaultParameter.sol100%100%100%100%

Copy link

[Periphery] Combined Test Coverage Report

Coverage after merging prateek/pe-1866-code-size-gas-report into v2.3 will be
99.05%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
packages/perennial-account/contracts
   Account.sol100%100%100%100%
   AccountVerifier.sol100%100%100%100%
   Controller.sol100%100%100%100%
   Controller_Arbitrum.sol100%100%100%100%
   Controller_Incentivized.sol100%100%100%100%
packages/perennial-account/contracts/libs
   RebalanceLib.sol100%100%100%100%
packages/perennial-account/contracts/test
   RebalanceConfigTester.sol100%100%100%100%
packages/perennial-account/contracts/types
   Action.sol100%100%100%100%
   DeployAccount.sol100%100%100%100%
   MarketTransfer.sol100%100%100%100%
   RebalanceConfig.sol100%100%100%100%
   RebalanceConfigChange.sol100%100%100%100%
   RelayedAccessUpdateBatch.sol100%100%100%100%
   RelayedGroupCancellation.sol100%100%100%100%
   RelayedNonceCancellation.sol100%100%100%100%
   RelayedOperatorUpdate.sol100%100%100%100%
   RelayedSignerUpdate.sol100%100%100%100%
   Withdrawal.sol100%100%100%100%
packages/perennial-extensions/contracts
   Coordinator.sol100%100%100%100%
   MultiInvoker.sol100%100%100%100%
   MultiInvoker_Arbitrum.sol0%100%0%0%43, 51
   MultiInvoker_Optimism.sol0%100%0%0%43, 51
packages/perennial-extensions/contracts/types
   TriggerOrder.sol96.43%100%100%95.83%54
packages/perennial-oracle/contracts
   Oracle.sol100%100%100%100%
   OracleFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/chainlink
   ChainlinkFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/keeper
   KeeperFactory.sol97.70%100%92.86%98.63%221
   KeeperOracle.sol96.15%100%94.12%96.72%155, 87
   KeeperOracle_Migration.sol0%100%0%0%26–27
packages/perennial-oracle/contracts/keeper/libs
   DedupLib.sol100%100%100%100%
packages/perennial-oracle/contracts/keeper/types
   KeeperOracleParameter.sol100%100%100%100%
   PriceResponse.sol100%100%100%100%
packages/perennial-oracle/contracts/metaquants
   MetaQuantsFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/payoff
   Inverse.sol100%100%100%100%
   PowerHalf.sol100%100%100%100%
   PowerTwo.sol100%100%100%100%
packages/perennial-oracle/contracts/pyth
   PythFactory.sol100%100%100%100%
packages/perennial-oracle/contracts/types
   OracleParameter.sol100%100%100%100%
packages/perennial-order/contracts
   Manager.sol100%100%100%100%
   Manager_Arbitrum.sol100%100%100%100%
   OrderVerifier.sol100%100%100%100%
packages/perennial-order/contracts/test
   TriggerOrderTester.sol100%100%100%100%
packages/perennial-order/contracts/types
   Action.sol100%100%100%100%
   CancelOrderAction.sol100%100%100%100%
   InterfaceFee.sol100%100%100%100%
   PlaceOrderAction.sol100%100%100%100%
   TriggerOrder.sol100%100%100%100%
packages/perennial-vault/contracts
   Vault.sol100%100%100%100%
   VaultFactory.sol100%100%100%100%
packages/perennial-vault/contracts/libs
   StrategyLib.sol100%100%100%100%
packages/perennial-vault/contracts/types
   Account.sol100%100%100%100%
   Checkpoint.sol100%100%100%100%
   Registration.sol100%100%100%100%
   VaultParameter.sol100%100%100%100%
packages/perennial-verifier/contracts
   Verifier.sol100%100%100%100%
packages/perennial-verifier/contracts/types
   AccessUpdate.sol100%100%100%100%
   AccessUpdateBatch.sol100%100%100%100%
   Intent.sol100%100%100%100%
   OperatorUpdate.sol100%100%100%100%
   SignerUpdate.sol100%100%100%100%

Copy link

[Core] Unit Test Coverage Report

Coverage after merging prateek/pe-1866-code-size-gas-report into v2.3 will be
98.80%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
packages/perennial/contracts
   Market.sol98.88%98%97.78%99.53%130–131, 150
   MarketFactory.sol100%100%100%100%
packages/perennial/contracts/interfaces
   IMarket.sol100%100%100%100%
   IMarketFactory.sol100%100%100%100%
   IOracleProvider.sol100%100%100%100%
   IOracleProviderFactory.sol100%100%100%100%
packages/perennial/contracts/libs
   CheckpointLib.sol100%100%100%100%
   InvariantLib.sol100%100%100%100%
   MagicValueLib.sol100%100%100%100%
   VersionLib.sol100%100%100%100%
packages/perennial/contracts/types
   Checkpoint.sol100%100%100%100%
   Global.sol96.88%92.86%100%100%151, 153
   Guarantee.sol100%100%100%100%
   Local.sol100%100%100%100%
   MarketParameter.sol100%100%100%100%
   OracleReceipt.sol100%100%100%100%
   OracleVersion.sol100%100%100%100%
   Order.sol98.21%94.83%100%100%103, 399, 99
   Position.sol88.60%84.62%96.77%85.96%350–352, 355, 355, 355, 355, 355–356, 358–360
   ProtocolParameter.sol100%100%100%100%
   RiskParameter.sol96%92.86%100%100%179, 182, 186
   Version.sol100%100%100%100%

Copy link

[Core] Combined Test Coverage Report

Coverage after merging prateek/pe-1866-code-size-gas-report into v2.3 will be
98.80%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
packages/perennial/contracts
   Market.sol99.22%100%97.62%99.53%131
   MarketFactory.sol100%100%100%100%
packages/perennial/contracts/libs
   CheckpointLib.sol100%100%100%100%
   InvariantLib.sol100%100%100%100%
   MagicValueLib.sol100%100%100%100%
   VersionLib.sol100%100%100%100%
packages/perennial/contracts/types
   Checkpoint.sol100%100%100%100%
   Global.sol100%100%100%100%
   Guarantee.sol100%100%100%100%
   Local.sol100%100%100%100%
   MarketParameter.sol100%100%100%100%
   Order.sol100%100%100%100%
   Position.sol89.02%100%96%85.96%350–352, 355–356, 358–360
   ProtocolParameter.sol100%100%100%100%
   RiskParameter.sol100%100%100%100%
   Version.sol100%100%100%100%

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.

4 participants