The release is focused on:
Migrating currencies config (config/currencies.yml) to database.
Adding support for Rippled.
Adding support for PostgreSQL.
#488: Move currencies.yml to database.
Migration steps (valid only if you respect id values in previous currencies.yml):
Move existing config/currencies.yml to config/seed/currencies.yml.
Edit config/seed/currencies.yml to match new structure:
Rename quick_withdraw_max => quick_withdraw_limit.
Rename blockchain => transaction_url_template.
Rename address_url => wallet_url_template.
Replace coin: true with type: coin.
Replace coin: false with type: fiat.
Move variables json_rpc_endpoint, api_client, bitgo_test_net, bitgo_wallet_id, bitgo_wallet_address, bitgo_wallet_passphrase, bitgo_rest_api_root, bitgo_rest_api_access_token, wallet_url_template, transaction_url_template to variable options (Ruby Hash).
Add variable precision: 8 (for coins) & precision: 2 (for fiats) where it is missing.
Add variable visible: true where it is missing.
Add variable base_factor: 1 for fiats where it is missing.
Remove variables: assets.
Execute bundle exec rake db:migrate db:seed.
#572: Add support for PostgreSQL.
It is now possible to run Peatio with PostgreSQL instead of MySQL. Check docs/databases/postgresql.md for the guide.
#602: Backport support for Rippled.
CoinAPI::XRP is back. We refactored it to match specs of new cryptocurrency client (CoinAPI::BaseAPI), removed all calls to deprecated v1 REST API, updated configuration files, added specs for integration with Ripple, and refactored the client to respect the latest JSON RPC API.
#603: Add missing specs for auth via Barong OAuth server.
#607: Add missing specs for ability to disable cabinet or markets UI.
#605: Make UI handle long deposit addresses.
UI is now ready to handle long deposit addresses at «Funds» page. This is necessary for Ripple addresses with destination tag included.
#618: Add automatic validation for numeric and string database table fields.
We included Gem validates_lengths_from_database which is able to validate limits for various database field types.
#633: Add idempotency behavior for deposit address generation.
The patch allows multiple calls to PaymentAddress#enqueue_address_generation which helps to ensure address is always single, and enqueued for generation, if it is blank.
#635: Update MacOS setup instructions.
#641: Reload page after canceling withdraw.
The patch adds page reload after user cancels the withdraw.
#639: Automatically update lib/peatio/version.rb from TravisCI.
Peatio::VERSION will be now automatically updated by TravisCI builds (ci/bump.rb).
#636: Replace Gem eco with ejs.
We replaced eco with EJS since eco is much simpler and is maintained.
#637: Remove obsolete deployment & pipeline stuff (scripts and configs).
#611: Fix typo in app/models/member.rb related to update for OAuth token.
The key level was used by a typo to fetch refreshed OAuth2 token for keeping member profile updated in the future.
#617: Fix UI bug preventing from selecting timeranges at markets page.
#610: Fix admin controller inheritance issue preventing from viewing deposit & withdraw details.
The issue is related to invalid resolution of Ruby BaseController constant.
#627: Require latest stable Chrome via .travis.yml & update chromedriver-helper to 1.2.0.
Recent update of Chrome combined with missing requirement for latest stable Chrome in .travis.yml caused TravisCI build to fail.
#630: Fix failing specs randomized with seed 6911.
#631: Fix ReferenceError: log is not defined (JavaScript error at /documents/api_v2).