Skip to content

Release Candidate - FIO v3.0.0-rc5

Pre-release
Pre-release
Compare
Choose a tag to compare
@ericbutz ericbutz released this 19 Apr 22:34
· 7 commits to release/3.0.x since this release
84599cb

This is a release candidate, do not use in production.

Release Plan

Details of release - Release Plan

Details of the FIO Request and OBT Record table migration - Migration Plan

(DRAFT) Proposed rollout schedule:

  • Milestone 1 - Week of April 19
    • Deploy release to Testnet
  • Milestone 2 (M1 + 1 week = Apr-30)
    • Testnet testing
    • Announce Mainnet release and schedule to FIO community.
  • Milestone 3 (M2 + 4 weeks = May-28)
    • All Mainnet nodes must be upgraded
  • Milestone 4 (M3 + 1 week = Jun-4)
    • Deploy update to contracts that require the new API endpoint.
    • API BREAKING CHANGE: Wallets or exchanges hitting nodes running fio chain 2.3.x will not return data for FIO Request and OBT Record getter calls.

This is a 6 week schedule from Testnet deployment to deadline for Mainnet upgrade for partners.

RC Updates

RC5

(#276) Fix to how actions are added enable local (devnet) testing. Ensures that sync is clean when devnet is tested

RC4

(#247) Empty addaction table error. Only use new contract lookup logic after fixed date.

RC3

(#270) Enable creation of new system contracts without requiring changes to core chain.

(#268) Remove expiration validation on avail_check

RC2

(#263) Removed addactions bootstrap code from initialization.

Blockchain update

Upgrade required by Friday May 28th (DRAFT)

This is a required upgrade to the blockchain code. All FIO API and History Nodes must be upgraded by Friday May 21. Nodes that are not upgraded by that date will return "No request found" for the following API getters:

  • /get_obt_data
  • /get_pending_fio_requests
  • /get_sent_fio_requests
  • /get_cancelled_fio_requests

Enhancements and Updates

Performance

In certain cases wallets were unable to access some FIO Requests when there were a large number of requests. Several updates were made to the FIO Request and OBT Record tables to improve performance. This chain release updates the FIO Request API endpoints to access data from the new tables.

New API Endpoints

(#84 #183) (/transfer_fio_address) FIP-1.b New API endpoint /transfer_fio_address provides ability to Transfer FIO Address that does not have any OBT Records or FIO Requests associated with it. The ability to transfer an address with existing OBT records or Requests is targeted for a future contract release. If the target account does not exist, it will be created. Calls contract action xferaddress.

(#148) (/transfer_locked_tokens) FIP-6 New API endpoint /transfer_locked_tokens provides the ability to transfer tokens to a new account and lock those tokens on a pre-defined schedule. If the target account does not exist, it will be created. Calls contract action trnsloctoks.

(#148) (/get_locks) FIP-6 New API endpoint /get_locks returns the lock periods for an account.

(#188) (/burn_fio_address) FIP-7 New API endpoint /burn_fio_address removes a FIO Address from the fionames table and also removes all entries associated with the Address from other system tables. Calls contract action burnaddress.

(#174) (/compute_fees) FIP-10 New API endpoint /compute_fees computes endpoint Fees according to the multiplier and ratio settings from the BPs. Calls contract action computefees.

(#228) (/add_bundled_transactions) FIP-11.a New API endpoint /add_bundled_transactions provides the ability to purchase multiple sets of bundled transactions in single action. Calls contract action addbundles.

(#216) (/get_pub_addresses) FIP-13 New API endpoint /get_pub_addresses returns all blockchain public addresses mapped to a provided FIO Address.

(#183) (/get_received_fio_requests) FIP-19 New API endpoint /get_received_fio_requests adds the ability to retrieve all received FIO Requests, irrespective of status.

Modified API Endpoints

(#84 #183) (/get_fio_balance, /get_pending_fio_requests, /get_sent_fio_requests, /get_cancelled_fio_requests) FIP-1. Modified to only return OBT records which include the provided FIO Public Key. (It currently returns records which include all FIO Addresses owned by the provided key at the time of query This would cause new owner to see old requests, even though they could not decrypt the contents.)

(#148) (/get_obt_data) FIP-6. Modified to include “available” paramater which returns the count of tokens which are not locked.

(/vote_producer) FIP-9. FIO Address field can now be left blank.

(/proxy_vote) FIP-9. FIO Address field can now be left blank.

(#174) (/submit_fee_ratios) FIP-10. Modified to use the new fees table and set the votesPending to 1. Allows only top 150 block producers to call it. Charges a fee.

(#174) (/submit_bundled_transaction) FIP-10. Allows only top 150 block producers to call it. Charges a fee.

(#226) (/add_pub_address, /get_pub_address, /remove_pub_address) FIP-18 Updated API endpoints to support specifying "token_code = *" to enable mapping all tokens for a specific chain to a single public address.

(#247) (/get_fio_names) FIP-25. Modified to include the remaining bundled transaction count.

Updated CLIO command line utility

(#160 #234 #235 #236 #239) FIP-16. Addresses enhancements to the FIO Protocol command line utility known as CLIO, including the creation of additional subcommands to support FIO actions, cleanup and repair of existing subcommands, and handling of additional FIO error codes.

(#160) Rename key service from keosd to fio-wallet.

Fixed Bugs

(#222) Improve "signature not valid" error response

(#224) Some get_fee end points are not case insensitive for fio_address parameter.