Peatio 2.6.0 (December 11, 2020)
Overview
We are pleased to present Peatio Open Source 2.6.0.
This release concentrated on changes for user deposit addresses generation, new wallet clients, platform reliability, and security updates:
1. Unify deposit addresses for ETH & ERC20 tokens. 2. Global Withdraw Limits. 3. Implement adaptive gas_price setting. 4. Opendax wallet client support. 5. Yaml based admin and user permissions. 6. PostgreSQL and MariaDB support.
This release note is a must-read for migrating from older versions.
Breaking changes
Introduce the admin's ability to set global withdrawal limits in one currency (the platform global currency) for users. Application of specific limits, depending on user KYC level and group. Time limits control for one day or one month period.
- Add admin and public API modules for withdrawal limits.
Add user endpoint for withdrawal sums for each period.
Add the option "gas_price" to a currency with those possible values: standard
, safelow
, fast
. By default, peatio will use the standard
option. Make sure to change eth base currencies to those possible values.
Now a user will get a single deposit address for ETH and ERC20 tokens. One deposit wallet will be able to have a few currencies. Make sure to run related migration and configure Wallet <> Currency relations after.
- Add Wallet <> Currency association
- PaymentAddress now belongs to Member and a platform Wallet
Admin endpoints to add and delete a currency to a wallet
Encrypt Beneficiary data
field using vault transit. The migration will automatically insert data for existing beneficiaries.
- Feature: Add user permissions #2730 (chumaknadya)
Introduce permissions for users with cancan
based on the YAML file. Config example
- Feature: Introduce yaml based admin permissions in peatio #2643 (chumaknadya)
Introduce permissions for admin endpoints with cancan
based on the YAML file. Config example
New Features
Databases documentation postgress mariadb
Feature: Add Opendax wallet plugin #2735 (chumaknadya)
- Feature: Add general wallet plugin
- Use JWT to authenticate peatio to the wallet
- Use SSL to secure the connection
- Minor changes for address creating
- Add ability to detect transaction from custom smart contract
Documentation for Opendax Wallet Co-authored-by: Maksym Naichuk [email protected]
We allow the cancelation of Finex orders through peatio Admin | User API. It will process cancel using AMQP.
Gnosis class inherits from ETH plugin except for the creation of address and transaction methods. With the Tower Gnosis plugin, you can process multisig
withdrawals! More info about gnosis
- Feature: Implement smart position changing for market and currencies #2682 (chumaknadya)
We introduced smart position changing for markets and currencies (reorder all records in case of insert, etc.). More info here
- Feature: limit number of currencies/markets #2660 (dinesh-skyach)
Now you will be able to limit the number of currencies using ENV vars: MAX_CURRENCIES, MAX_MARKETS.
Introduce CMC API Endpoints #2696 (chumaknadya)
Enhancements
- Mask beneficiary account_number on API level #2708 (chumaknadya)
- Add transfer_type in deposit and withdraw #2664 (mnaichuk)
- Add rake task to fetch currency current price #2680 (chumaknadya)
- Create member via Management API #2681 (dpatsora)
- Allow user to change the email #2750 (dpatsora)
- Define token type in currency model #2672 (chumaknadya)
- Skip deposit fee collection transaction #2762 (mnaichuk)
- Delete symbol from currency table #2676 (chumaknadya)
- Enhancement: Return deposit address in account entity #2761 (mnaichuk)
- Add the ability to exclude users by role from PnL calculation #2760 (calj)
- Update drone config #2758 (calj)
- Fix specs for PostgreSQL #2742 (mnaichuk)
- Enhancement: Generate wallet settings on creation #2741 (mnaichuk)
- Enhancement: Update withdraw limits logic #2740 (mnaichuk)
- Add matching exchange for trading daemons. Delete deprecated amqp configs #2733 (mnaichuk)
- Enhancement: Allow dot in currency code for API endpoints #2731 (chumaknadya)
- Enhancement: Disable WLs if there are no in DB or zero limits #2724 (mnaichuk)
- Enhancement: Add possibility to import and export Operation::Accounts #2720 (dpatsora)
- Update vault policies documentation #2712 (calj)
- Add separate user and password for archive DB #2711 (dnfd)
- Update dependencies #2710 (calj)
- Optimize PnL main query #2699 (calj)
- Enhancement: Add export:configs Rake task #2693 (vshatravenko)
- Enhancement: Add import:configs Rake task #2692 (vshatravenko)
- Enhancement: trigger custom image build #2691 (josadcha)
- Enhancement: add admin currencies fetch filters #2678 (oyershov)
- Enhancement: Delete symbol from currency table #2676 (chumaknadya)
- Add rake task for load trades and build k-lines. Update 2-4 migration documentation #2675 (mnaichuk)
- Update CI to build images for branches matching {fix,integration}/* #2674 (calj)
- Enhancement: Add ability to create market by engine name #2671 (chumaknadya)
- Update peatio-bitgo version. Change rid length for withdraw #2669 (mnaichuk)
- Improve Engines and Markets seed #2665 (mnaichuk)
- Speedup tests execution #2661 (calj)- Fix: Add from_addresses on deposit creation #2656 (mnaichuk)
- Renew of vault token with ENV. Remove sensitive data from admin entities #2568 (mnaichuk)
- Improve vault support #2544 (mnaichuk)
Bug Fixes
- Remove market creation validation for unvisible market #2765 (mnaichuk)
- Update currency price field #2756 (mnaichuk)
- Fix: tx[input] fetch #2746 (mnaichuk)
- Fix: Add ability to configure wallet features from settings #2738 (mnaichuk)
- Fix: Abilities for user permissions #2736 (chumaknadya)
- Fix: Dont mask beneficiary account number on admin endpoints #2729 (chumaknadya)
- Update WalletService trigger_webhook_event method #2727 (mnaichuk)
- Fix: Add ability to update wallet settings #2725 (chumaknadya)
- Fix: Remove partial wallet settings update #2722 (mnaichuk)
- Fix InfluxDB sharding spec #2716 (mnaichuk)
- Fix: Add error message for adjustment creation if user balance is insufficient #2715 (Kohelbekker)
- Fix: do not fail on start if VAULT_TOKEN is unset #2709 (calj)
- Update vault rails gem. Fix update wallet params #2707 (mnaichuk)
- Fix: Update import/export rake tasks for payment_addresses #2703 (mnaichuk)
- Remove uri validation from wallet model #2700 (mnaichuk)
- Fix database migration for MariaDB #2694 (calj)
- Fix: Wallet links update. Deposit spread wallet recalculation #2687 (mnaichuk)
- Fix: Add wallet link && fix blockchain_key on currency creation #2686 (chumaknadya)
- Fix: Update spread deposit with currency price #2685 (mnaichuk)
- Fix wallet load_balance method. Update WalletBalances job #2667 (mnaichuk)