clean up known amendment page. add live tracking table

This commit is contained in:
Oliver Eggert
2025-07-25 21:44:00 -07:00
parent 5aebdf1c2f
commit 289a0a7c6d
3 changed files with 155 additions and 100 deletions

View File

@@ -202,7 +202,10 @@ export function TxExample(props: {
}
function shieldsIoEscape(s: string) {
return s.trim().replaceAll('-', '--').replaceAll('_', '__')
return s.trim()
.replace(/-/g, '--')
.replace(/_/g, '__')
.replace(/%/g, '%25')
}
export function NotEnabled() {
@@ -212,3 +215,147 @@ export function NotEnabled() {
<span className="status not_enabled" title={translate("This feature is not currently enabled on the production XRP Ledger.")}><i className="fa fa-flask"></i></span>
)
}
// Generate amendments table with live mainnet data
export function AmendmentsTable() {
const [amendments, setAmendments] = React.useState<any[]>([]);
const [loading, setLoading] = React.useState(true);
const [error, setError] = React.useState<string | null>(null);
React.useEffect(() => {
const fetchAmendments = async () => {
try {
setLoading(true);
const response = await fetch(`https://vhs.prod.ripplex.io/v1/network/amendments/vote/main/`);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
// Sort amendments table
const sortedAmendments = data.amendments
.sort((a: any, b: any) => {
// Sort by status priority (lower number = higher priority)
const getStatusPriority = (amendment: any) => {
if (amendment.consensus) return 1; // Open for Voting
if (amendment.tx_hash) return 2; // Enabled
};
const priorityA = getStatusPriority(a);
const priorityB = getStatusPriority(b);
if (priorityA !== priorityB) {
return priorityA - priorityB;
}
// Sort by rippled_version (descending)
if (a.rippled_version !== b.rippled_version) {
return b.rippled_version.localeCompare(a.rippled_version, undefined, { numeric: true });
}
// Finally sort by name (ascending)
return a.name.localeCompare(b.name);
});
setAmendments(sortedAmendments);
} catch (err) {
setError(err instanceof Error ? err.message : 'Failed to fetch amendments');
} finally {
setLoading(false);
}
};
fetchAmendments();
}, []);
// Fancy schmancy loading icon
if (loading) {
return (
<div style={{ display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center', padding: '2rem' }}>
<div className="spinner-border text-primary" role="status">
<span className="sr-only">Loading amendments...</span>
</div>
<div style={{ marginTop: '1rem' }}>Loading amendments...</div>
</div>
);
}
if (error) {
return (
<div className="alert alert-danger" role="alert">
<strong>Error loading amendments:</strong> {error}
</div>
);
}
// Render amendment table
return (
<div className="md-table-wrapper">
<table className="md">
<thead>
<tr>
<th align="left" data-label="Name">Name</th>
<th align="left" data-label="Introduced">Introduced</th>
<th align="left" data-label="Status">Status</th>
</tr>
</thead>
<tbody>
{amendments.map((amendment) => (
<tr key={amendment.id}>
<td align="left">
<Link to={`#${amendment.name.toLowerCase()}`}>{amendment.name}</Link>
</td>
<td align="left">{amendment.rippled_version}</td>
<td align="left">
<AmendmentBadge amendment={amendment} />
</td>
</tr>
))}
</tbody>
</table>
</div>
);
}
function AmendmentBadge(props: { amendment: any }) {
const [status, setStatus] = React.useState<string>('Loading...');
const [href, setHref] = React.useState<string | undefined>(undefined);
const [color, setColor] = React.useState<string>('blue');
React.useEffect(() => {
const amendment = props.amendment;
// Check if amendment is enabled (has tx_hash)
if (amendment.tx_hash) {
const enabledDate = new Date(amendment.date).toISOString().split('T')[0];
setStatus(`Enabled: ${enabledDate}`);
setColor('green');
setHref(`https://livenet.xrpl.org/transactions/${amendment.tx_hash}`);
}
// Check if amendment is currently being voted on (has consensus field)
else if (amendment.consensus) {
setStatus(`Open for Voting: ${amendment.consensus}`);
setColor('80d0e0');
setHref(undefined); // No link for voting amendments
}
}, [props.amendment]);
// Split the status at the colon to create two-color badge
const parts = status.split(':');
const label = shieldsIoEscape(parts[0] || '');
const message = shieldsIoEscape(parts.slice(1).join(':') || '');
const badgeUrl = `https://img.shields.io/badge/${label}-${message}-${color}`;
if (href) {
return (
<Link to={href} target="_blank">
<img src={badgeUrl} alt={status} className="shield" />
</Link>
);
}
return <img src={badgeUrl} alt={status} className="shield" />;
}

View File

@@ -215,3 +215,9 @@ export const txExample: Schema & { tagName: string } = {
render: 'TxExample',
selfClosing: true
}
export const amendmentsTable: Schema & { tagName: string } = {
tagName: 'amendments-table',
render: 'AmendmentsTable',
selfClosing: true
}

View File

@@ -11,105 +11,7 @@ labels:
The following is a comprehensive list of all known [amendments](../docs/concepts/networks-and-servers/amendments.md) and their status on the production XRP Ledger:
{% admonition type="success" name="Tip" %}
This list is updated manually. For a live view of amendment voting, see the Amendments Dashboards: [XRPScan](https://xrpscan.com/amendments), [Bithomp](https://bithomp.com/en/amendments).
{% /admonition %}
| Name | Introduced | Status |
|:----------------------------------|:-----------|:------------------------------|
| [Batch][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [PermissionDelegation][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [PermissionedDEX][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [TokenEscrow][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [fixAMMv1_3][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [fixEnforceNFTokenTrustlineV2][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [fixPayChanCancelAfter][] | v2.5.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.5.0" %}Open for Voting: 2025-06-24{% /badge %} |
| [DynamicNFT][] | v2.4.0 | {% badge href="https://xrpl.org/blog/2025/fixes-enabled-dnfts-expected" %}Expected: 2025-06-11{% /badge %} |
| [PermissionedDomains][] | v2.4.0 | {% badge href="https://xrpl.org/blog/2025/rippled-2.4.0" %}Open for Voting: 2025-03-06{% /badge %} |
| [Credentials][] | v2.3.0 | {% badge href="https://xrpl.org/blog/2024/rippled-2.3.0" %}Open for Voting: 2024-11-26{% /badge %} |
| [MPTokensV1][] | v2.3.0 | {% badge href="https://xrpl.org/blog/2024/rippled-2.3.0" %}Open for Voting: 2024-11-26{% /badge %} |
| [fixXChainRewardRounding][] | v2.2.0 | {% badge href="https://xrpl.org/blog/2024/rippled-2.2.0" %}Open for Voting: 2024-06-04{% /badge %} |
| [XChainBridge][] | v2.0.0 | {% badge href="https://xrpl.org/blog/2024/rippled-2.0.0.html" %}Open for Voting: 2024-01-09{% /badge %} |
| [fixFrozenLPTokenTransfer][] | v2.4.0 | {% badge href="https://livenet.xrpl.org/transactions/34F11D09E15EC3FE78FFB238EB33030A9E2F2B6233716712A4B7A9D13C55C89A" %}Enabled: 2025-05-15{% /badge %} |
| [fixInvalidTxFlags][] | v2.4.0 | {% badge href="https://livenet.xrpl.org/transactions/D53E906A53C46A9AACFEB0093DF26EFD8634C3DAF50A18930D7910C51FFE3E9D" %}Enabled: 2025-05-15{% /badge %} |
| [DeepFreeze][] | v2.4.0 | {% badge href="https://livenet.xrpl.org/transactions/976281D793337FF5377A36409F2A1432DADAB64DB5064E12E71B1AC491EA3021" %}Enabled: 2025-05-04{% /badge %} |
| [NFTokenMintOffer][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/E74C0196A9D4F193DD2A1DB5CCC5E37D3D43A21E2CB6185F6797E9BF2EDBE36C" %}Enabled: 2025-02-15{% /badge %} |
| [AMMClawback][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/8672DFD11FCF79F8E8F92E300187E8E533899ED8C8CF5AFB1A9C518195C16261" %}Enabled: 2025-01-30{% /badge %} |
| [fixAMMv1_2][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/71D5031A5BD927BDFE424E51699E69F2784097D615D0852BF20C168BA9B5EA76" %}Enabled: 2025-01-30{% /badge %} |
| [fixEnforceNFTokenTrustline][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/606FA84C4BA30F67582C11A39BBFC11A9D994E114CD515E9F63FC7D8701A8ED9" %}Enabled: 2025-01-30{% /badge %} |
| [fixInnerObjTemplate2][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/426314C8BC64BA339E97E53B278602ADC44F115056274BF7971F694C9A8AF946" %}Enabled: 2025-01-30{% /badge %} |
| [fixNFTokenPageLinks][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/2D9A29768A7FA4BAC01DF1941380077E304785279E5E49267EC269F53ABADF5A" %}Enabled: 2025-01-30{% /badge %} |
| [fixReducedOffersV2][] | v2.3.0 | {% badge href="https://livenet.xrpl.org/transactions/6D325D5EFF8230F1FECA3EE6418C9678637F3F56B0CA247013F70B3BDCFE75C8" %}Enabled: 2025-01-30{% /badge %} |
| [PriceOracle][] | v2.2.0 | {% badge href="https://livenet.xrpl.org/transactions/05D03F7BF08BF4A915483F7B10EAC7016034656A54A8A6AD4A49A9AD362764A1" %}Enabled: 2024-11-02{% /badge %} |
| [DID][] | v2.0.0 | {% badge href="https://livenet.xrpl.org/transactions/7239CF04E6E1EEC606269135DA3C916B82D4B010F5315E7AEB3D5A3B6B5B343D" %}Enabled: 2024-10-30{% /badge %} |
| [fixEmptyDID][] | v2.2.0 | {% badge href="https://livenet.xrpl.org/transactions/A858AE8832981D77A4C5038D633CC9CBD54C9764BD2A3F8CA174E02D1736F472" %}Enabled: 2024-09-27{% /badge %} |
| [fixPreviousTxnID][] | v2.2.0 | {% badge href="https://livenet.xrpl.org/transactions/C7A9804E1F499ABBF38D791BAD25B1479DB1CEA4E9B6C5C08D6D4EF13F41E171" %}Enabled: 2024-09-27{% /badge %} |
| [fixAMMv1_1][] | v2.2.0 | {% badge href="https://livenet.xrpl.org/transactions/8C8F5566464097BF1BAF7C645BB9E1762986844A052BBA3B9769F6564EEFAB71" %}Enabled: 2024-09-24{% /badge %} |
| [fixNFTokenReserve][] | v2.1.0 | {% badge href="https://livenet.xrpl.org/transactions/D708CF1799A27CB982F16FCE4762DD12738737A61E5850480BA51400280E06C4" %}Enabled: 2024-04-12{% /badge %} |
| [fixAMMOverflowOffer][] | v2.1.1 | {% badge href="https://livenet.xrpl.org/transactions/64144409D991726D108B89D79F9305438D61928A322EF1CD14DC3A5F24CE64BC" %}Enabled: 2024-04-11{% /badge %} |
| [fixDisallowIncomingV1][] | v2.0.0 | {% badge href="https://livenet.xrpl.org/transactions/50286B4B9C95331A48D3AD517E1FD3299308C6B696C85E096A73A445E9EB1BFB" %}Enabled: 2024-04-11{% /badge %} |
| [fixFillOrKill][] | v2.0.0 | {% badge href="https://livenet.xrpl.org/transactions/3209D6B66D375C23EEBE7C3DD3058B361427148D80C570B8E791D4C76555FA7B" %}Enabled: 2024-04-11{% /badge %} |
| [fixInnerObjTemplate][] | v2.1.0 | {% badge href="https://livenet.xrpl.org/transactions/EC67D9DF8D06067A76E8F8F43BC036B5E0267568F8D92624A658AC01A8186235" %}Enabled: 2024-04-08{% /badge %} |
| [XRPFees][] | v1.10.0 | {% badge href="https://livenet.xrpl.org/transactions/4B6047F84B959B64FDD10E22D9E7CCC1EA0D228387462E8FF975B17F7C779021" %}Enabled: 2024-03-25{% /badge %} |
| [AMM][] | v1.12.0 | {% badge href="https://livenet.xrpl.org/transactions/75F52BB86416717288999523063D54E24290EFEA2E99DF78E80A12BD1C8FAC99" %}Enabled: 2024-03-22{% /badge %} |
| [Clawback][] | v1.12.0 | {% badge href="https://livenet.xrpl.org/transactions/C6BCCE60DFA4430A1F9097D774EA49E6FEFB1B535BA0EF9170DA0F2D08CDDB11" %}Enabled: 2024-02-08{% /badge %} |
| [fixNFTokenRemint][] | v1.11.0 | {% badge href="https://livenet.xrpl.org/transactions/CA4562711E4679FE9317DD767871E90A404C7A8B84FAFD35EC2CF0231F1F6DAF" %}Enabled: 2023-11-27{% /badge %} |
| [fixReducedOffersV1][] | v1.12.0 | {% badge href="https://livenet.xrpl.org/transactions/87723D9D01AFAD8E55C944D7D1598969A8FBD852FCACAE361A40CBF5D4CB3BB1" %}Enabled: 2023-11-24{% /badge %} |
| [DisallowIncoming][] | v1.10.0 | {% badge href="https://livenet.xrpl.org/transactions/8747EF67D8CC1CA72A88817FBDF454507C3D9E8F0702D8E2B614958AE27A1D4E" %}Enabled: 2023-08-21{% /badge %} |
| [fixNonFungibleTokensV1_2][] | v1.10.0 | {% badge href="https://livenet.xrpl.org/transactions/3AB0892CAB29F049B9D9E5D522701FD01469D0B97080626F8DD4B489D0B8784E" %}Enabled: 2023-08-21{% /badge %} |
| [fixTrustLinesToSelf][] | v1.10.0 | {% badge href="https://livenet.xrpl.org/transactions/4F4C05142CA1DE257CD86513086F0C99FAF06D80932377C6B6C02B3D09623A43" %}Enabled: 2023-08-21{% /badge %} |
| [fixUniversalNumber][] | v1.10.0 | {% badge href="https://livenet.xrpl.org/transactions/EFE82B7155CE5B766AF343D98DAE6662C2713C99E760D610370D02338881B2F3" %}Enabled: 2023-08-21{% /badge %} |
| [ImmediateOfferKilled][] | v1.10.0 | {% badge href="https://livenet.xrpl.org/transactions/65B8A4068B20696A866A07E5668B2AEB0451564E13B79421356FB962EC9A536B" %}Enabled: 2023-08-21{% /badge %} |
| [CheckCashMakesTrustLine][] | v1.8.0 | {% badge href="https://livenet.xrpl.org/transactions/4C8546305583F72E056120B136EB251E7F45E8DFAAE65FDA33B22181A9CA4557" %}Enabled: 2023-01-23{% /badge %} |
| [NonFungibleTokensV1_1][] | v1.9.2 | {% badge href="https://livenet.xrpl.org/transactions/251242639A640CD9287A14A476E7F7C20BA009FDE410570926BAAF29AA05CEDE" %}Enabled: 2022-10-31{% /badge %} |
| [fixRemoveNFTokenAutoTrustLine][] | v1.9.4 | {% badge href="https://livenet.xrpl.org/transactions/2A67DB4AC65D688281B76334C4B52038FD56931694A6DD873B5CCD9B970AD57C" %}Enabled: 2022-10-27{% /badge %} |
| [ExpandedSignerList][] | v1.9.1 | {% badge href="https://livenet.xrpl.org/transactions/802E2446547BB86397217E32A78CB9857F21B048B91C81BCC6EF837BE9C72C87" %}Enabled: 2022-10-13{% /badge %} |
| [NegativeUNL][] | v1.7.3 | {% badge href="https://livenet.xrpl.org/transactions/1500FADB73E7148191216C53040990E829C7110788B26E7F3246CB3660769EBA" %}Enabled: 2021-11-21{% /badge %} |
| [fixRmSmallIncreasedQOffers][] | v1.7.2 | {% badge href="https://livenet.xrpl.org/transactions/1F37BA0502576DD7B5464F47641FA95DEB55735EC2663269DFD47810505478E7" %}Enabled: 2021-11-18{% /badge %} |
| [TicketBatch][] | v1.7.0 | {% badge href="https://livenet.xrpl.org/transactions/111B32EDADDE916206E7315FBEE2DA1521B229F207F65DD314829F13C8D9CA36" %}Enabled: 2021-11-18{% /badge %} |
| [fixSTAmountCanonicalize][] | v1.7.0 | {% badge href="https://livenet.xrpl.org/transactions/AFF17321A012C756B64FCC3BA0FDF79109F28E244D838A28D5AE8A0384C7C532" %}Enabled: 2021-11-11{% /badge %} |
| [FlowSortStrands][] | v1.7.0 | {% badge href="https://livenet.xrpl.org/transactions/1C3D3BD2AFDAF326EBFEA54579A89B024856609DB4310F7140086AAB262D09A1" %}Enabled: 2021-11-11{% /badge %} |
| [fix1781][] | v1.6.0 | {% badge href="https://livenet.xrpl.org/transactions/DA59F10201D651B544F65896330AFACA8CA4198904265AD279D56781F655FAFB" %}Enabled: 2021-04-08{% /badge %} |
| [fixAmendmentMajorityCalc][] | v1.6.0 | {% badge href="https://livenet.xrpl.org/transactions/5B3ACE6CAC9C56D2008410F1B0881A0A4A8866FB99D2C2B2261C86C760DC95EF" %}Enabled: 2021-04-08{% /badge %} |
| [HardenedValidations][] | v1.6.0 | {% badge href="https://livenet.xrpl.org/transactions/3A45DCF055B68DCBBFE034240F9359FB22E8A64B1BF7113304535BF5BB8144BF" %}Enabled: 2021-04-08{% /badge %} |
| [FlowCross][] | v0.70.0 | {% badge href="https://livenet.xrpl.org/transactions/44C4B040448D89B6C5A5DEC97C17FEDC2E590BA094BC7DB63B7FDC888B9ED78F" %}Enabled: 2020-08-04{% /badge %} |
| [fixQualityUpperBound][] | v1.5.0 | {% badge href="https://livenet.xrpl.org/transactions/5F8E9E9B175BB7B95F529BEFE3C84253E78DAF6076078EC450A480C861F6889E" %}Enabled: 2020-07-09{% /badge %} |
| [RequireFullyCanonicalSig][] | v1.5.0 | {% badge href="https://livenet.xrpl.org/transactions/94D8B158E948148B949CC3C35DD5DC4791D799E1FD5D3CE0E570160EDEF947D3" %}Enabled: 2020-07-03{% /badge %} |
| [Checks][] | v0.90.0 | {% badge href="https://livenet.xrpl.org/transactions/D88F2DCDFB10023F9F6CBA8DF34C18E321D655CAC8FDB962387A5DB1540242A6" %}Enabled: 2020-06-18{% /badge %} |
| [DeletableAccounts][] | v1.4.0 | {% badge href="https://livenet.xrpl.org/transactions/47B90519D31E0CB376B5FEE5D9359FA65EEEB2289F1952F2A3EB71D623B945DE" %}Enabled: 2020-05-08{% /badge %} |
| [fixCheckThreading][] | v1.4.0 | {% badge href="https://livenet.xrpl.org/transactions/74AFEA8C17D25CA883D40F998757CA3B0DB1AC86794335BAA25FF20E00C2C30A" %}Enabled: 2020-05-01{% /badge %} |
| [fixPayChanRecipientOwnerDir][] | v1.4.0 | {% badge href="https://livenet.xrpl.org/transactions/D2F8E457D08ACB185CDE3BB9BB1989A9052344678566785BACFB9DFDBDEDCF09" %}Enabled: 2020-05-01{% /badge %} |
| [fixMasterKeyAsRegularKey][] | v1.3.1 | {% badge href="https://livenet.xrpl.org/transactions/61096F8B5AFDD8F5BAF7FC7221BA4D1849C4E21B1BA79733E44B12FC8DA6EA20" %}Enabled: 2019-10-02{% /badge %} |
| [MultiSignReserve][] | v1.2.0 | {% badge href="https://livenet.xrpl.org/transactions/C421E1D08EFD78E6B8D06B085F52A34A681D0B51AE62A018527E1B8F54C108FB" %}Enabled: 2019-04-17{% /badge %} |
| [fixTakerDryOfferRemoval][] | v1.2.0 | {% badge href="https://livenet.xrpl.org/transactions/C42335E95F1BD2009A2C090EA57BD7FB026AD285B4B85BE15F669BA4F70D11AF" %}Enabled: 2019-04-02{% /badge %} |
| [fix1578][] | v1.2.0 | {% badge href="https://livenet.xrpl.org/transactions/7A80C87F59BCE6973CBDCA91E4DBDB0FC5461D3599A8BC8EAD02FA590A50005D" %}Enabled: 2019-03-23{% /badge %} |
| [DepositPreauth][DepositPreauthAmendment] | v1.1.0 | {% badge href="https://livenet.xrpl.org/transactions/AD27403CB840AE67CADDB084BC54249D7BD1B403885819B39CCF723DC671F927" %}Enabled: 2018-10-09{% /badge %} |
| [fix1515][] | v1.1.0 | {% badge href="https://livenet.xrpl.org/transactions/6DF60D9EC8AF3C39B173840F4D1C57F8A8AB51E7C6571483B4A5F1AA0A9AAEBF" %}Enabled: 2018-10-09{% /badge %} |
| [fix1543][] | v1.0.0 | {% badge href="https://livenet.xrpl.org/transactions/EA6054C9D256657014052F1447216CEA75FFDB1C9342D45EB0F9E372C0F879E6" %}Enabled: 2018-06-21{% /badge %} |
| [fix1623][] | v1.0.0 | {% badge href="https://livenet.xrpl.org/transactions/4D218D86A2B33E29F17AA9C25D8DFFEE5D2559F75F7C0B1D016D3F2C2220D3EB" %}Enabled: 2018-06-20{% /badge %} |
| [fix1571][] | v1.0.0 | {% badge href="https://livenet.xrpl.org/transactions/920AA493E57D991414B614FB3C1D1E2F863211B48129D09BC8CB74C9813C38FC" %}Enabled: 2018-06-19{% /badge %} |
| [DepositAuth][] | v0.90.0 | {% badge href="https://livenet.xrpl.org/transactions/902C51270B918B40CD23A622E18D48B4ABB86F0FF4E84D72D9E1907BF3BD4B25" %}Enabled: 2018-04-06{% /badge %} |
| [fix1513][] | v0.90.0 | {% badge href="https://livenet.xrpl.org/transactions/57FE540B8B8E2F26CE8B53D1282FEC55E605257E29F5B9EB49E15EA3989FCF6B" %}Enabled: 2018-04-06{% /badge %} |
| [fix1201][] | v0.80.0 | {% badge href="https://livenet.xrpl.org/transactions/B1157116DDDDA9D9B1C4A95C029AC335E05DB052CECCC5CA90118A4D46C77C5E" %}Enabled: 2017-11-14{% /badge %} |
| [fix1512][] | v0.80.0 | {% badge href="https://livenet.xrpl.org/transactions/63F69F59BEFDC1D79DBF1E4060601E05960683AA784926FB74BC55074C4F6647" %}Enabled: 2017-11-14{% /badge %} |
| [fix1523][] | v0.80.0 | {% badge href="https://livenet.xrpl.org/transactions/97FD0E35654F4B6714010D3CBBAC4038F60D64AD0292693C28A1DF4B796D8469" %}Enabled: 2017-11-14{% /badge %} |
| [fix1528][] | v0.80.0 | {% badge href="https://livenet.xrpl.org/transactions/27AEE02DA4FE22B6BB479F850FBBC873FDC7A09A8594753A91B53098D726397E" %}Enabled: 2017-11-14{% /badge %} |
| [SortedDirectories][] | v0.80.0 | {% badge href="https://livenet.xrpl.org/transactions/6E2309C156EBF94D03B83D282A3914671BF9168FB26463CFECD068C63FFFAB29" %}Enabled: 2017-11-14{% /badge %} |
| [EnforceInvariants][] | v0.70.0 | {% badge href="https://livenet.xrpl.org/transactions/17593B03F7D3283966F3C0ACAF4984F26E9D884C9A202097DAED0523908E76C6" %}Enabled: 2017-07-07{% /badge %} |
| [fix1373][] | v0.70.0 | {% badge href="https://livenet.xrpl.org/transactions/7EBA3852D111EA19D03469F6870FAAEBF84C64F1B9BAC13B041DDD26E28CA399" %}Enabled: 2017-07-07{% /badge %} |
| [Escrow][] | v0.60.0 | {% badge href="https://livenet.xrpl.org/transactions/C581E0A3F3832FFFEEB13C497658F475566BD7695B0BBA531A774E6739801515" %}Enabled: 2017-03-31{% /badge %} |
| [fix1368][] | v0.60.0 | {% badge href="https://livenet.xrpl.org/transactions/3D20DE5CD19D5966865A7D0405FAC7902A6F623659667D6CB872DF7A94B6EF3F" %}Enabled: 2017-03-31{% /badge %} |
| [PayChan][] | v0.33.0 | {% badge href="https://livenet.xrpl.org/transactions/16135C0B4AB2419B89D4FB4569B8C37FF76B9EF9CE0DD99CCACB5734445AFD7E" %}Enabled: 2017-03-31{% /badge %} |
| [TickSize][] | v0.50.0 | {% badge href="https://livenet.xrpl.org/transactions/A12430E470BE5C846759EAE3C442FF03374D5D73ECE5815CF4906894B769565E" %}Enabled: 2017-02-21{% /badge %} |
| [CryptoConditions][] | v0.50.0 | {% badge href="https://livenet.xrpl.org/transactions/8EB00131E1C3DB35EDFF45C155D941E18C3E86BC1934FF987D2DA204F4065F15" %}Enabled: 2017-01-03{% /badge %} |
| [Flow][] | v0.33.0 | {% badge href="https://livenet.xrpl.org/transactions/C06CE3CABA3907389E4DD296C5F31C73B1548CC20BD7B83416C78CD7D4CD38FC" %}Enabled: 2016-10-21{% /badge %} |
| [TrustSetAuth][] | v0.30.0 | {% badge href="https://livenet.xrpl.org/transactions/0E589DE43C38AED63B64FF3DA87D349A038F1821212D370E403EB304C76D70DF" %}Enabled: 2016-07-19{% /badge %} |
| [MultiSign][] | v0.31.0 | {% badge href="https://livenet.xrpl.org/transactions/168F8B15F643395E59B9977FC99D6310E8708111C85659A9BAF8B9222EEAC5A7" %}Enabled: 2016-06-27{% /badge %} |
| [FeeEscalation][] | v0.31.0 | {% badge href="https://livenet.xrpl.org/transactions/5B1F1E8E791A9C243DD728680F108FEF1F28F21BA3B202B8F66E7833CA71D3C3" %}Enabled: 2016-05-19{% /badge %} |
{% admonition type="info" name="Note" %}
In many cases, an incomplete version of the code for an amendment is present in previous versions of the software. The "Introduced" version in the table above is the first stable version. The value "TBD" indicates that the amendment is not yet considered stable.
{% /admonition %}
{% amendments-table /%}
## Amendments in Development