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

Proposed 2.0.0-rc1 #4802

Closed
wants to merge 11 commits into from
Closed

Proposed 2.0.0-rc1 #4802

wants to merge 11 commits into from

Conversation

intelliot
Copy link
Collaborator

@intelliot intelliot commented Nov 3, 2023

High-Level Overview of Change

The base branch is release because all releases (including betas) go in release.

Context of Change

When finalized, the next stable release of rippled is expected to be the last one for 2023. The major version is bumped due to:

  • General availability of api_version 2 (expected).
    • This api_version is not available yet (except in beta, requiring a configuration change), but it will be in the next release.
  • New server_definitions method.
  • Notable performance improvements in TPS (transactions per second).
  • XLS-38 sidechains support
    • This is a large change and adds significant new functionality to the protocol.
  • XLS-40 DID support
  • Lastly, lots of code has been refactored and changed since the previous major version bump.

Type of Change

  • Release

mtrippled and others added 11 commits October 24, 2023 14:23
Update the documentation to describe network health with more nuance as
well as context about related factors.
Remove `tx_history` and `ledger_header` methods from API version 2.

Update `RPC::Handler` to allow for methods (or method implementations)
to be API version specific. This partially resolves #4727. We can now
store multiple handlers with the same name, as long as they belong to
different (non-overlapping) API versions. This necessarily impacts the
handler lookup algorithm and its complexity; however, there is no
performance loss on x86_64 architecture, and only minimal performance
loss on arm64 (around 10ns). This design change gives us extra
flexibility evolving the API in the future, including other parts of
#4727.

In API version 2, `tx_history` and `ledger_header` are no longer
recognised; if they are called, `rippled` will return error
`unknownCmd`

Resolve #3638

Resolve #3539
Remove dependency on `<ranges>` header, since it is not implemented by
all compilers which we want to support.

This code change only affects unit tests.

Resolve #4787
Introduce the `fixFillOrKill` amendment.

Fix an edge case occurring when an offer with `tfFillOrKill` set (but
without `tfSell` set) fails to cross an offer with a better rate. If
`tfFillOrKill` is set, then the owner must receive the full TakerPays.
Without this amendment, an offer fails if the entire `TakerGets` is not
spent. With this amendment, when `tfSell` is not set, the entire
`TakerGets` does not have to be spent.

For details about OfferCreate, see: https://xrpl.org/offercreate.html

Fix #4684

---------

Co-authored-by: Scott Schurr <[email protected]>
With clang 15, an unused-but-set-variable warning was emitted:

PostgresDatabase.cpp:178:14: warning: variable 'expNumResults' set but
not used [-Wunused-but-set-variable]
    uint32_t expNumResults = 1;
The command line API still uses `apiMaximumSupportedVersion`.
The unit test RPCs use `apiMinimumSupportedVersion` if unspecified.

Context:
- #4568
- #4552
…ism (#4410)"

This reverts commit 2bb8de0.

Manual testing showed some unexpected behavior.  We're removing the
commit since the release date is close and fixing the problem is
risky.  A fixed commit will be put into a later release.
Fix #4727

Squashed commit of the following:

commit 53e384f
Author: Bronek Kozicki <[email protected]>
Date:   Fri Nov 3 13:37:29 2023 +0000

    Minor improvements

commit c1f2ea4
Merge: 942e209 056255e
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 21:43:11 2023 +0000

    Merge branch 'develop' into feature/unify_transaction_json

commit 942e209
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 21:26:05 2023 +0000

    Unconditionally set validated in account_tx output

commit b5b1118
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 21:14:37 2023 +0000

    Remove obsolete comments

commit 7770bc5
Author: Chenna Keshava <[email protected]>
Date:   Thu Nov 2 13:16:44 2023 -0700

    simplify the extraction of transactionID from Transaction object

commit 94c16d8
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 20:26:09 2023 +0000

    Replace class enum JsonOptions with struct

    We may consider turning this into a general-purpose template and using it elsewhere

commit b2a8a2d
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 17:46:54 2023 +0000

    Minor improvements

commit 95b6055
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 17:14:53 2023 +0000

    Improve getJson for Transaction and STTx

commit 17e6588
Author: Bronek Kozicki <[email protected]>
Date:   Thu Nov 2 12:06:30 2023 +0000

    Fix typos

commit 5973390
Author: Bronek Kozicki <[email protected]>
Date:   Wed Nov 1 15:55:02 2023 +0000

    Fix validated and close_time_iso in account_tx

commit cdb3384
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 31 17:27:57 2023 +0000

    Add ledger_hash, ledger_index to transaction_entry

commit 0d8673c
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 31 17:12:53 2023 +0000

    Update API-CHANGELOG.md

commit 625c812
Merge: 54f1d60 3b624d8
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 30 21:32:35 2023 +0000

    Merge branch 'develop' into feature/unify_transaction_json

commit 54f1d60
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 30 21:19:40 2023 +0000

    Set ledger_hash on closed ledger, even if not validated

commit ef1276c
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 30 20:59:58 2023 +0000

    Minor fixes

commit c81bece
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 30 17:45:49 2023 +0000

    Rename mInLedger to mLedgerIndex

commit c477eb4
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 30 17:35:33 2023 +0000

    Improved comments

commit e386093
Author: Chenna Keshava <[email protected]>
Date:   Thu Oct 26 17:51:41 2023 -0700

    additional tests for Subscribe unit tests

commit 9f1d544
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 30 16:09:17 2023 +0000

    Time formatting fix

commit 4e92ee4
Author: Bronek Kozicki <[email protected]>
Date:   Thu Oct 26 14:04:40 2023 +0000

    Store closeTime in LedgerFill

commit 1115cef
Author: Bronek Kozicki <[email protected]>
Date:   Thu Oct 26 13:22:26 2023 +0100

    Move isValidated from RPCHelpers to LedgerMaster

commit 2035bbc
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 24 19:15:50 2023 +0000

    Set ledger_hash and ledger_index

commit bdf90e5
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 24 18:24:30 2023 +0000

    Remove inLedger from API version 2

commit c2a3b52
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 24 17:39:45 2023 +0000

    Add unit test for tx

commit 1a96800
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 24 16:53:31 2023 +0000

    Add unit test for transaction_entry

commit 2b397c9
Author: Bronek Kozicki <[email protected]>
Date:   Tue Oct 24 15:45:41 2023 +0000

    Add small APIv2 unit test for subscribe

commit 4d517e2
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 23 15:27:35 2023 +0000

    Store close_time_iso in API v2 output

commit 910f125
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 18 17:24:42 2023 +0100

    Output from tx

commit 0fb0517
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 18 17:24:26 2023 +0100

    Output from transaction_entry

commit e4ce8b1
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 18 17:24:08 2023 +0100

    Output from account_tx

commit 92635aa
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 18 17:23:49 2023 +0100

    Output from ledger

commit 76eee5a
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 18 17:23:16 2023 +0100

    Output from sign, submit etc.

commit aa6de60
Author: Bronek Kozicki <[email protected]>
Date:   Mon Oct 23 18:20:21 2023 +0000

    Output for subscriptions

commit ee53c5d
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 25 18:17:10 2023 +0000

    Formatting fix

commit 65346dc
Author: Bronek Kozicki <[email protected]>
Date:   Wed Oct 25 18:07:18 2023 +0000

    Remove include <ranges>
Copy link
Contributor

@manojsdoshi manojsdoshi left a comment

Choose a reason for hiding this comment

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

LGTM

Copy link
Collaborator

@ximinez ximinez left a comment

Choose a reason for hiding this comment

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

In its current state, this branch has diverged from what has been merged to develop, and includes a PR that has since been withdrawn.

@Bronek
Copy link
Collaborator

Bronek commented Nov 9, 2023

In its current state, this branch has diverged from what has been merged to develop, and includes a PR that has since been withdrawn.

Also the PR #4775 which was approved and merged in develop , in this branch is missing its last commit

@intelliot
Copy link
Collaborator Author

Closing in favor of #4810 (which has already been merged to release).

@intelliot intelliot closed this Nov 16, 2023
@intelliot intelliot deleted the release-2.0.0-rc1 branch November 30, 2023 18:01
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.

10 participants