Initial commit
This commit is contained in:
98
docs/releases/1.2.0.md
Normal file
98
docs/releases/1.2.0.md
Normal file
@@ -0,0 +1,98 @@
|
||||
## Peatio 1.2.0 (February 26, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
The release is focused on adding support for Ethereum currency including ability to attach it either to BitGo, either to Geth.
|
||||
|
||||
This release is also the first one which is driven by automatic patch number version bumping from TravisCI builds.
|
||||
|
||||
We have also fixed all incompatible queries so Peatio is now friendly with MSSQL.
|
||||
|
||||
As for bugfixes the release includes lot of UI polishing like missing useful information in admin panel, or UI issues.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#535](https://github.com/rubykube/peatio/pull/535): Remove name & nickname from member & authentication models.
|
||||
|
||||
The patch removes name and nickname attributes from `Member` & `Authentication`. We believe this makes Peatio more friendly with OAuth protocol and improves user privacy.
|
||||
|
||||
* [#596](https://github.com/rubykube/peatio/pull/596): Remove ability to generate another deposit address.
|
||||
|
||||
This patch is a fix for BIP32 incompatible currencies like XRP and ETH.
|
||||
|
||||
The bug reproduction steps look like:
|
||||
|
||||
1. Generate new address for currency. Let the address you receive be called X.
|
||||
2. Deposit 10 coins to X.
|
||||
3. Make withdraw for 2 coins. It will succeed. You now have 8 coins left.
|
||||
4. Generate another address for the same currency. Let the address be called Y.
|
||||
5. Request withdraw for 2 coins. It will fail.
|
||||
|
||||
The reason second withdraw fails is because Peatio tries to withdraw from the newest deposit address (Y) but it doesn't contain enough funds to proceed the transaction. However, it works well for BIP32 compatible currencies, like Bitcoin.
|
||||
|
||||
The patch modifies code to be sure used has only single address per currency.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#495](https://github.com/rubykube/peatio/pull/495): Add support for ETH using BitGo.
|
||||
|
||||
The patch adds typical required views, routes, controllers, and models for ETH. It also provides ETH configuration skeleton for BitGo.
|
||||
|
||||
* [#567](https://github.com/rubykube/peatio/pull/567): Add support for MSSQL.
|
||||
|
||||
The patch fixes all MSSQL incompatible queries.
|
||||
|
||||
* [#569](https://github.com/rubykube/peatio/pull/569): Add support for ETH using Geth.
|
||||
|
||||
The patch adds support for Geth.
|
||||
It also adds new helper for converting base unit to smallest (like Bitcoins to satoshis): `CoinAPI#convert_to_base_unit!(value)`. The helper ensures your value doesn't exceed maximum allowed precision.
|
||||
|
||||
* [#534](https://github.com/rubykube/peatio/pull/534): Add ability to disable cabinet or markets UI by setting environment variables.
|
||||
|
||||
Administrators will still have access.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#551](https://github.com/rubykube/peatio/pull/551): Output member serial number in admin panel.
|
||||
|
||||
The patch outputs member SN in admin panel and allows to search by it through all members.
|
||||
|
||||
* [#590](https://github.com/rubykube/peatio/pull/590): Display deposits & withdraws with no limits.
|
||||
|
||||
Previously system displayed only last 3 items. Now it displays the whole list.
|
||||
|
||||
* [#597](https://github.com/rubykube/peatio/pull/597): Remove obsolete Rails generators for deposits, withdraws, locales, and other stuff.
|
||||
|
||||
* [#598](https://github.com/rubykube/peatio/pull/598): Remove unneeded translations for banks, banks configuration files, and helpers.
|
||||
|
||||
All these are leftovers after stripping banks.yml.
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#575](https://github.com/rubykube/peatio/pull/575), [#570](https://github.com/rubykube/peatio/pull/570), [#574](https://github.com/rubykube/peatio/pull/574): Documentation fixes.
|
||||
|
||||
* [#576](https://github.com/rubykube/peatio/pull/576): Fixes for several reported UI issues at profile & markets pages.
|
||||
|
||||
* [#589](https://github.com/rubykube/peatio/pull/589): Page is now reloaded only after successful creation of withdraw.
|
||||
|
||||
Previously page was reloaded every time you click `Submit` no matter what data you entered. This prevented users from getting validation errors.
|
||||
|
||||
* [#595](https://github.com/rubykube/peatio/pull/595): Fix exception at admin panel when navigating to specific withdraw.
|
||||
|
||||
The issues was related to missing call to `find_withdraw` however it was declared as `before_action` hook in base controller class. This is a Rails bug.
|
||||
|
||||
* [#585](https://github.com/rubykube/peatio/pull/585): Fix UI issues at «Solvency» page.
|
||||
|
||||
Now navigation tabs are displayed in multiple lines so they don't get out of screen.
|
||||
|
||||
* [#593](https://github.com/rubykube/peatio/pull/593): Fix UI issue with all confirmation dialogs.
|
||||
|
||||
Backdrop is duplicated when pushing enter key multiple times.
|
||||
|
||||
* [#582](https://github.com/rubykube/peatio/pull/582): Fix UI issue with user cabinet navigation dropdown.
|
||||
|
||||
The patch adds styles which handle short email addresses displayed in dropdown.
|
||||
|
||||
## Peatio 1.1.13 and before ##
|
||||
|
||||
Unfortunately, release notes are not available for 1.1.13 and below but you still can check [CHANGELOG](https://github.com/rubykube/peatio/blob/master/CHANGELOG.md).
|
||||
106
docs/releases/1.3.0.md
Normal file
106
docs/releases/1.3.0.md
Normal file
@@ -0,0 +1,106 @@
|
||||
## Peatio 1.3.0 (March 5, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
The release is focused on:
|
||||
|
||||
1. Migrating currencies config (config/currencies.yml) to database.
|
||||
|
||||
2. Adding support for Rippled.
|
||||
|
||||
3. Adding support for PostgreSQL.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#488](https://github.com/rubykube/peatio/pull/488): Move currencies.yml to database.
|
||||
|
||||
Migration steps (valid only if you respect `id` values in previous currencies.yml):
|
||||
|
||||
1. Move existing config/currencies.yml to config/seed/currencies.yml.
|
||||
2. Edit config/seed/currencies.yml to match new structure:
|
||||
|
||||
1. Rename `quick_withdraw_max` => `quick_withdraw_limit`.
|
||||
|
||||
2. Rename `blockchain` => `transaction_url_template`.
|
||||
|
||||
3. Rename `address_url` => `wallet_url_template`.
|
||||
|
||||
4. Replace `coin: true` with `type: coin`.
|
||||
|
||||
5. Replace `coin: false` with `type: fiat`.
|
||||
|
||||
6. 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).
|
||||
|
||||
7. Add variable `precision: 8` (for coins) & `precision: 2` (for fiats) where it is missing.
|
||||
|
||||
8. Add variable `visible: true` where it is missing.
|
||||
|
||||
9. Add variable `base_factor: 1` for fiats where it is missing.
|
||||
|
||||
10. Remove variables: `assets`.
|
||||
|
||||
3. Execute `bundle exec rake db:migrate db:seed`.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#572](https://github.com/rubykube/peatio/pull/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](https://github.com/rubykube/peatio/pull/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.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#603](https://github.com/rubykube/peatio/pull/603): Add missing specs for auth via Barong OAuth server.
|
||||
|
||||
* [#607](https://github.com/rubykube/peatio/pull/607): Add missing specs for ability to disable cabinet or markets UI.
|
||||
|
||||
* [#605](https://github.com/rubykube/peatio/pull/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](https://github.com/rubykube/peatio/pull/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](https://github.com/rubykube/peatio/pull/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](https://github.com/rubykube/peatio/pull/635): Update MacOS setup instructions.
|
||||
|
||||
* [#641](https://github.com/rubykube/peatio/pull/641): Reload page after canceling withdraw.
|
||||
|
||||
The patch adds page reload after user cancels the withdraw.
|
||||
|
||||
* [#639](https://github.com/rubykube/peatio/pull/639): Automatically update lib/peatio/version.rb from TravisCI.
|
||||
|
||||
`Peatio::VERSION` will be now automatically updated by TravisCI builds (ci/bump.rb).
|
||||
|
||||
* [#636](https://github.com/rubykube/peatio/pull/636): Replace Gem eco with ejs.
|
||||
|
||||
We replaced eco with EJS since eco is much simpler and is maintained.
|
||||
|
||||
* [#637](https://github.com/rubykube/peatio/pull/637): Remove obsolete deployment & pipeline stuff (scripts and configs).
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#611](https://github.com/rubykube/peatio/pull/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](https://github.com/rubykube/peatio/pull/617): Fix UI bug preventing from selecting timeranges at markets page.
|
||||
|
||||
* [#610](https://github.com/rubykube/peatio/pull/610): Fix admin controller inheritance issue preventing from viewing deposit & withdraw details.
|
||||
|
||||
The issue is related to invalid resolution of Ruby `BaseController` constant.
|
||||
|
||||
* [#627](https://github.com/rubykube/peatio/pull/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](https://github.com/rubykube/peatio/pull/630): Fix failing specs randomized with seed 6911.
|
||||
|
||||
* [#631](https://github.com/rubykube/peatio/pull/631): Fix ReferenceError: log is not defined (JavaScript error at /documents/api_v2).
|
||||
170
docs/releases/1.4.0.md
Normal file
170
docs/releases/1.4.0.md
Normal file
@@ -0,0 +1,170 @@
|
||||
## Peatio 1.4.0 (March 12, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
This release is focused on security upgrades which include:
|
||||
|
||||
1. Refactoring existing JWT implementation by adding validation for JWT fields.
|
||||
|
||||
2. Automatic member registration based on JWT payload.
|
||||
|
||||
3. Removal of keypair auth.
|
||||
|
||||
4. Removal requirement for private key to be stored at environment variable (now Peatio requires only public key for JWT to work).
|
||||
|
||||
The release also includes various fixes and improvements.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#629](https://github.com/rubykube/peatio/pull/629): Remove keypair authentication.
|
||||
|
||||
The patch removes all stuff related to APIv2 authentication using Hash-based Message Authentication Code (HMAC).
|
||||
|
||||
Some important components which are removed:
|
||||
|
||||
* `APIToken`
|
||||
* `APIv2::Auth::KeypairAuthenticator`
|
||||
* `Private::APITokensController`
|
||||
* `APIv2::IncorrectSignatureError`
|
||||
* `APIv2::TonceUsedError`
|
||||
* `APIv2::InvalidTonceError`
|
||||
* `APIv2::InvalidAccessKeyError`
|
||||
* `APIv2::DisabledAccessKeyError`
|
||||
* `APIv2::ExpiredAccessKeyError`
|
||||
* `APIv2::OutOfScopeError`
|
||||
|
||||
All existing Peatio clients should think of upgrading to JWT, or wait until secure server-to-server API is released.
|
||||
|
||||
* [#620](https://github.com/rubykube/peatio/pull/620): Refactor withdraw destination: implement new fiat withdraw story, leverage existing withdraw API resources, and update UI.
|
||||
|
||||
The patch replaces `FundSource` in favor of `WithdrawDestination`.
|
||||
|
||||
Model `WithdrawDestination` works in STI mode providing `WithdrawDestination::Coin` and `WithdrawDestination::Fiat`.
|
||||
|
||||
Both `WithdrawDestination::Coin` and `WithdrawDestination::Fiat` are packed with common fields:
|
||||
|
||||
* `label`
|
||||
|
||||
`WithdrawDestination::Coin` is shipped with additional fields:
|
||||
|
||||
* `address`
|
||||
|
||||
`WithdrawDestination::Fiat` is shipped with typical bank withdraw fields:
|
||||
|
||||
* `bank_name`
|
||||
* `bank_branch_name`
|
||||
* `bank_branch_address`
|
||||
* `bank_identifier_code`
|
||||
* `bank_account_number`
|
||||
* `bank_account_holder_name`
|
||||
|
||||
Instead of keeping common table structure we moved specific fields into JSON field called `details`.
|
||||
|
||||
API changes include:
|
||||
|
||||
* Withdraw entity: new field called `type`, available values are `fiat` and `coin`.
|
||||
* Withdraw entity: field `address` (string) is replaced with `destination` object.
|
||||
* Withdraw address entity replaced in favor of destination: includes `id`, `label`, `type`, `currency`, and all specific fields to withdraw destination type.
|
||||
* `GET /withdraws/addresses` is now `GET /withdraws/destinations`.
|
||||
* `POST /withdraws/addresses` is now `POST /withdraws/destinations`.
|
||||
* `POST /withdraws/destinations`: mandatory params include `currency`, `label`, and specific fields to withdraw destination type.
|
||||
* `DELETE /withdraws/addresses/:id` is now `DELETE /withdraws/destinations/:id`.
|
||||
* `POST /withdraws`: parameter `address_id` renamed to `destination_id`.
|
||||
|
||||
`Member#withdraws` and `Member#withdraw_destinations` are now always ordered with `id DESC`.
|
||||
|
||||
`Private::FundSourcesController` is migrated to `Private::WithdrawDestinationsController`, `destroy` action is removed until we will denormalize withdraw fields, or find another solution for storing withdraw destination data.
|
||||
|
||||
* [#676](https://github.com/rubykube/peatio/pull/676): Stop keeping private key for JWT, use it only in specs.
|
||||
|
||||
The patch replaces `JWT_SHARED_SECRET_KEY` (private key) with `JWT_PUBLIC_KEY` (public key) for security reasons. So Peatio now will not store any private keys which is much better for security.
|
||||
|
||||
We removed all predefined values for `JWT_SHARED_SECRET_KEY` in all environments.
|
||||
|
||||
We included new guide for getting keypair to be used with JWT in config/application.yml (available after `bin/init_config`).
|
||||
|
||||
Migration steps:
|
||||
|
||||
1. Generate new keypair using guide from application.yml.
|
||||
2. Update private key at your JWT provider.
|
||||
3. Set public key value to `JWT_PUBLIC_KEY` at Peatio.
|
||||
4. Ask JWT provider for new token.
|
||||
5. Ensure API works by using cURL: `curl -H "Authorization: Bearer JWT" http://localhost:3000/api/v2/members/me`.
|
||||
|
||||
* [#661](https://github.com/rubykube/peatio/pull/661): Remove Member#jwt without replacements.
|
||||
|
||||
The patch removes dangerous method which was used only for testing purposes.
|
||||
|
||||
* [#662](https://github.com/rubykube/peatio/pull/662): Remove helper controller used for testing: Test::ModuleController & Test::MembersController.
|
||||
|
||||
The patch removed controllers & routes which was used for QA purposes. These resources could generate example members, and return them including JWT.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#657](https://github.com/rubykube/peatio/pull/657): Add on the fly member registration based on JWT payload (Barong only).
|
||||
|
||||
The patch implements automatic member registration based on JWT payload when using API (only for JWT provided by Barong).
|
||||
|
||||
How it works: When client makes request to API and passes header `Authorization: Bearer JWT` authenticator `APIv2::Auth::JWTAuthenticator` will decode, verify JWT, and, if JWT is issued by Barong, will register or update member.
|
||||
|
||||
JWT payload structure (see linked [commit at Barong](https://github.com/rubykube/barong/commit/3196b9ca0ff749be7158c6dbbf6b8c13a6ca9999)):
|
||||
|
||||
1. `email`: member email.
|
||||
2. `uid`: used ID at barong (similar value to `sn` at Peatio).
|
||||
3. `level`: member level represented as number (see available values at `Member::Levels`, app/enums/member/levels.rb).
|
||||
4. `state`: member state (values are defined by Barong, some of them include `active`, `pending`), Peatio will set member to disabled unless `state` is `active`.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#665](https://github.com/rubykube/peatio/pull/665): Update JWT specs by adding additional JWT fields.
|
||||
|
||||
The patch adds specs which cover most of common usage for the next fields:
|
||||
|
||||
1. iat
|
||||
2. exp
|
||||
3. jti
|
||||
4. sub
|
||||
5. iss
|
||||
6. aud
|
||||
|
||||
* [#658](https://github.com/rubykube/peatio/pull/658): Update JWT gem to 2.1.x.
|
||||
|
||||
* [#669](https://github.com/rubykube/peatio/pull/669): Enable verification of special JWT payload fields.
|
||||
|
||||
The patch allows to customize which JWT fields should be validated by setting environment variables:
|
||||
|
||||
1. `JWT_ISSUER`
|
||||
2. `JWT_AUDIENCE`
|
||||
3. `JWT_DEFAULT_LEEWAY`
|
||||
4. `JWT_ISSUED_AT_LEEWAY`
|
||||
5. `JWT_EXPIRATION_LEEWAY`
|
||||
6. `JWT_NOT_BEFORE_LEEWAY`
|
||||
|
||||
Get more info at config/application.yml (available after running `bin/init_config`).
|
||||
|
||||
Specs will now generate public and private keypair in runtime automatically.
|
||||
|
||||
* [#643](https://github.com/rubykube/peatio/pull/643): Update bin/init_config & bin/link_config according to new config templates structure and updated requirements for config/seed.
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#616](https://github.com/rubykube/peatio/pull/616): Fix wrong blockchain explorer URL in deposit & withdrawal history.
|
||||
|
||||
The patch fixes interpolation issues with URL addresses displayed at user deposit/withdraw history, and in many places at admin panel. The wallet URL address template was interpolated using transaction ID, now it is interpolated with address.
|
||||
|
||||
* [#649](https://github.com/rubykube/peatio/pull/649): Fix broken market «Notify» On/Off buttons.
|
||||
|
||||
The feature was broken after migration currencies.yml to database. The patch restores previous behaviour.
|
||||
|
||||
* [#675](https://github.com/rubykube/peatio/pull/675): Fix order of commands in bin/setup to resolve issues with asset installation step.
|
||||
|
||||
The patch fixes related issues in workbench:
|
||||
|
||||
* [rubykube/workbench#25](https://github.com/rubykube/workbench/issues/25)
|
||||
* [rubykube/workbench#27](https://github.com/rubykube/workbench/issues/27)
|
||||
|
||||
* [#674](https://github.com/rubykube/peatio/pull/674): Add missing DASH/USD market to markets.yml.
|
||||
|
||||
* [#677](https://github.com/rubykube/peatio/pull/677): Fix regression after [#372](https://github.com/rubykube/peatio/pull/372).
|
||||
|
||||
The patch resolved issues with broken websocket_api.rb daemon.
|
||||
122
docs/releases/1.5.0.md
Normal file
122
docs/releases/1.5.0.md
Normal file
@@ -0,0 +1,122 @@
|
||||
## Peatio 1.5.0 (March 20, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
This release is focused on:
|
||||
|
||||
1. Extraction of trading UI to separate application.
|
||||
|
||||
2. Full dynamic support of currencies from database and full removal of any currency-specific code from Peatio.
|
||||
|
||||
3. Ability to develop & install Peatio plugins.
|
||||
|
||||
4. General fixes & improvements.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#449](https://github.com/rubykube/peatio/pull/449): Extract trading UI to separate component.
|
||||
|
||||
The patch moves trading UI assets and views to separate component called `peatio-trading-ui`. The extracted component lives at [GitHub repository](https://github.com/rubykube/peatio-trading-ui) and is based on Rails 5.1.
|
||||
|
||||
Migration steps include (we assume your Peatio is deployed at `peatio.tech`):
|
||||
|
||||
* You will need to add NGINX to your stack.
|
||||
* Review NGINX configuration which can be found at `ci/nginx/server.conf`.
|
||||
* The trick is that both Peatio and Trading UI are deployed on the same domain but are served conditionally by NGINX reverse proxy depending on the request path.
|
||||
* Another trick is that both apps share the same cookies because they live on the same domain (however, trading UI doesn't do any decode/encode operations so there is not need for sharing `SECRET_KEY_BASE` between two apps).
|
||||
* Trading UI app has separate asset prefix: `/trading-ui-assets`. So all requests which match `/\A\/trading-ui-assets\//` must be routed to trading UI app.
|
||||
* The path to page with markets has also been changes from `/markets/:id` to `/trading/:market_id`. All requests which satisfy `/\A\/trading\//` must be routed to trading UI app.
|
||||
* The trading UI app will first download variables for specified `market_id` (like `btcusd`) from Peatio by issuing `HTTP GET https://peatio.tech/markets/btcusd.json`, and then render Rails views according to received variables.
|
||||
* The member is kept authenticated because trading UI app sends cookies via HTTP header to `https://peatio.tech/markets/btcusd.json`.
|
||||
* The variable which controls Peatio root URL is called `PLATFORM_ROOT_URL`. Check more trading UI configuration variables at [`config/templates/application.yml.erb`](https://github.com/rubykube/peatio-trading-ui/blob/master/config/templates/application.yml.erb).
|
||||
* We updated `.travis.yml` at Peatio so it automatically deploys trading UI locally with Docker and runs Selenium specs. Study `.travis.yml` for detailed examples on how to run & use trading UI.
|
||||
|
||||
* [#687](https://github.com/rubykube/peatio/pull/687): Refactor environment variables for Pusher.
|
||||
|
||||
The patch simplifies Pusher configuration and adds new variables for easy migration to Pusher Slanger.
|
||||
|
||||
The renamed variables:
|
||||
|
||||
* `PUSHER_KEY` => `PUSHER_CLIENT_KEY`.
|
||||
* `PUSHER_WS_PORT` => `PUSHER_CLIENT_WS_PORT`.
|
||||
* `PUSHER_WSS_PORT` => `PUSHER_CLIENT_WSS_PORT`.
|
||||
* `PUSHER_ENCRYPTED` => `PUSHER_CLIENT_ENCRYPTED`.
|
||||
|
||||
The added variables:
|
||||
|
||||
* `PUSHER_SCHEME`: protocol used for publishing event from backend to Pusher.
|
||||
* `PUSHER_CLIENT_WS_HOST`: to which WebSocket host should client connect.
|
||||
* `PUSHER_CLIENT_HTTP_HOST`: alternative to WebSocket (polling).
|
||||
|
||||
The removed variables:
|
||||
|
||||
* `PUSHER_CLUSTER`: this variable doesn't fit well in context of Pusher Slanger. You should now use `PUSHER_HOST`, `PUSHER_CLIENT_WS_HOST`, and `PUSHER_CLIENT_HTTP_HOST` for configuration.
|
||||
|
||||
Check `config/application.yml` for more details and default values.
|
||||
|
||||
* [#694](https://github.com/rubykube/peatio/pull/694): Unify currency-specific models, controllers, routes, locales, stylesheets, and other components into type-specific.
|
||||
|
||||
The patch continues and fully finishes work from [#488 – Move currencies.yml to database](https://github.com/rubykube/peatio/pull/488):
|
||||
|
||||
* All controllers (including user & admin) which stand for specific currency (like `BitcoinsController`, `DuffsController`) are now unified into `FiatsController` and `CoinsController` depending on currency type.
|
||||
* The same store for models, views, locales, stylesheets and routes: `Deposits::Fiat`, `Deposits::Coin`, `Withdraws::Fiat`, `Withdraws::Coin`.
|
||||
* The patch removes field `Currency#key` as it is not more needed. You must remove `key` from `config/seed/currencies.yml`.
|
||||
* Peatio now adds much more attention to `Currency#type` and uses it smarter.
|
||||
|
||||
These changes are the first step to multifiat feature. Now Peatio is fully ready for adding any number of currencies by just issuing query to database.
|
||||
|
||||
Once we will add support for ERC20 tokens to Peatio it will be possible to add 500+ token-based currencies to Peatio by just populating database! Now you can do the same trick with any Bitcoin-compatiable currency. The one requirement for dynamically adding currencies to database is presence of currency API client (`CoinAPI`).
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#698](https://github.com/rubykube/peatio/pull/698): Clear user session stored in Redis via API call `DELETE /api/v2/sessions`.
|
||||
|
||||
The patch adds ability for deleting all member sessions which are stored in Redis. This feature is useful for SPA which use JWT & OAuth server for solving identity question.
|
||||
|
||||
To use this feature issue `HTTP DELETE` request at `/api/v2/sessions` and provide valid JWT.
|
||||
|
||||
**IMPORTANT**: Your session is only and only deleted if server returns status 200, in other cases assume session is not fully deleted so you may be still signed in Peatio.
|
||||
|
||||
**IMPORTANT**: This is very important security feature so it was backported at older Peatio branches: `1.1`, `1.2`, and `1.3`.
|
||||
|
||||
* [#708](https://github.com/rubykube/peatio/pull/708): Add ability to install plugins.
|
||||
|
||||
The patch introduces very simple plugin for Peatio:
|
||||
|
||||
* Use `config/plugins.yml` to list wanted plugins. Each plugin is constructed from name, Git repository URL, commit hash, and path to file which should be required (optional, defaults to `index.rb`).
|
||||
* Use `bin/install_plugins` to install listed plugins from `config/plugins.yml` to `vendor/plugins`.
|
||||
* Use `bin/uninstall_plugins` to remove all installed plugins in `vendor/plugins`.
|
||||
|
||||
Get more information about plugin installation at `config/plugins.yml`.
|
||||
|
||||
Find example plugin at [peatio-plugin-example](https://github.com/rubykube/peatio-plugin-example).
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#689](https://github.com/rubykube/peatio/pull/689): Add development-related files to `.dockerignore`.
|
||||
|
||||
The patch adds several paths to `.dockerignore` which reduces time needed to build an image and it's size.
|
||||
|
||||
* [#696](https://github.com/rubykube/peatio/pull/696): Drop Account#in & Account#out fields.
|
||||
|
||||
The patch removes unused fields from table `accounts` (put in «Enhancements» since it doesn't break anything).
|
||||
|
||||
* [#702](https://github.com/rubykube/peatio/pull/702): Update the `nginx.conf` and `passenger.conf`.
|
||||
|
||||
The patch updates NGINX & Passenger configuration files to support type of installation without Docker. Please, keep in mind: we don't support this type of Peatio installation. We support Docker-only setups. So we may remove all non-Docker docs soon.
|
||||
|
||||
Thanks to [@shiftctrl-io](https://github.com/shiftctrl-io).
|
||||
|
||||
* [#688](https://github.com/rubykube/peatio/pull/688): Set collation on database.yml.
|
||||
|
||||
The patch sets `collation: utf8_general_ci` directly in `config/database.yml`.
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#700](https://github.com/rubykube/peatio/pull/700): Fix broken authentication in WS.
|
||||
|
||||
The patch fixes retrieving of authentication token in `APIv2::WebSocketProtocol`.
|
||||
|
||||
This was a regression after [#629](https://github.com/rubykube/peatio/pull/629).
|
||||
|
||||
Now access key is fetched from payload (parameter is called `jwt`) instead of headers.
|
||||
132
docs/releases/1.6.0.md
Normal file
132
docs/releases/1.6.0.md
Normal file
@@ -0,0 +1,132 @@
|
||||
## Peatio 1.6.0 (April 3, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
This release is focused on:
|
||||
|
||||
1. Migrating market pairs to database layer.
|
||||
|
||||
2. Implementation of `Management API v1`: server-to-server API with high privileges.
|
||||
|
||||
The release also includes various fixes and improvements.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#412](https://github.com/rubykube/peatio/pull/412): Migrate markets.yaml to database.
|
||||
|
||||
The patch moves `ActiveYaml::Base` model `Market` to database layer. All market pairs are now fully stored in database instead of YAML file.
|
||||
|
||||
**Migration steps**:
|
||||
|
||||
1. Copy `config/markets.yml` to `config/markets.old.yml` and to `config/seed/markets.yml`.
|
||||
|
||||
2. Make the next edits in `config/seed/markets.yml`:
|
||||
|
||||
2.1 Remove field `code` from all records.
|
||||
|
||||
2.2 Rename `sort_order` to `position`.
|
||||
|
||||
2.3 Rename `base_unit` to `ask_unit`.
|
||||
|
||||
2.4 Rename `quote_unit` to `bid_unit`.
|
||||
|
||||
2.5 Move `ask.fee` to `ask_fee`.
|
||||
|
||||
2.6 Move `bid.fee` to `bid_fee`.
|
||||
|
||||
2.7 Remove `ask.currency`.
|
||||
|
||||
2.8 Remove `bid.currency`.
|
||||
|
||||
2.9 Move `ask.fixed` to `ask_precision`.
|
||||
|
||||
2.10 Move `bid.fixed` to `bid_precision`.
|
||||
|
||||
3. Execute `bundle exec rake db:seed`.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#740](https://github.com/rubykube/peatio/pull/740): Implement API for server-to-server communication called `Management API`.
|
||||
|
||||
The API is designed for server-to-server communication. You can use this API for extending Peatio functionality or integrating, for example, custom payment processing service. The API is quite easy to use and is friendly with enterprise standards like accounting and analytics.
|
||||
|
||||
The authentication is based on JWT token in complete format allowing to have multiple signatures.
|
||||
|
||||
We developed and published new Ruby Gem for working with nested signatures in JWT. The Gem [jwt-multisig](https://rubygems.org/gems/jwt-multisig) lives at [GitHub repository](https://github.com/rubykube/jwt-multisig). You should use it for signing requests for Peatio from your service.
|
||||
|
||||
You can use `config/management_api_v1.yml` (available only after `bin/init_config`) for customization of security rules for the API. You are free to choose what signatures any API action requires, configure JWT verification options and, of course, set public keys used for verification of signatures. The security documentation for API is embedded in the `management_api_v1.yml` file.
|
||||
|
||||
The patch includes the next API actions:
|
||||
|
||||
* Ability to list deposits (including filters).
|
||||
* Ability to list withdraws (including filters).
|
||||
* Ability to get single deposit.
|
||||
* Ability to get single withdraw.
|
||||
* Ability to create deposit.
|
||||
* Ability to create withdraw.
|
||||
* Ability to accept deposit on Peatio and load money.
|
||||
* Ability to submit withdraw for processing by Peatio.
|
||||
* Ability to get server time.
|
||||
|
||||
The Swagger documentation for this API is available locally by visiting `http://localhost:3000/swagger?url=/management_api/v1/swagger` or by checking out `docs/api/management_api_v1.md`.
|
||||
|
||||
The deposit states were refactored:
|
||||
|
||||
* State `submitting` was renamed to `submitted`.
|
||||
* State `cancelled` was renamed to `canceled`.
|
||||
* State `checked` was removed.
|
||||
* State `warning` was removed.
|
||||
|
||||
The withdraw states were refactored:
|
||||
|
||||
* State `submitting` was renamed to `prepared`.
|
||||
* State `cancelled` was renamed to `canceled`.
|
||||
* State `suspect` was renamed to `suspected`.
|
||||
* State `done` was renamed to `succeed`.
|
||||
|
||||
The changes to `Member API v2` include:
|
||||
|
||||
* The changes to field `state` affect the next API endpoints: `GET /api/v2/deposits`, `GET /api/v2/deposit`, `GET /api/v2/withdraws`, `POST /api/v2/withdraws`.
|
||||
|
||||
* `POST /api/v2/withdraws` is now deprecated and will be removed in further releases.
|
||||
|
||||
* [#701](https://github.com/rubykube/peatio/pull/701): Ability to retrieve solvency information through API.
|
||||
|
||||
The patch adds several endpoints designed to work with solvency information:
|
||||
|
||||
* `/api/v2/solvency/liability_proofs/latest`
|
||||
* `/api/v2/solvency/liability_proofs/partial_tree/mine`
|
||||
|
||||
You can open Swagger documentation locally by visiting `http://localhost:3000/swagger?url=/api/v2/swagger` or by checking out `docs/api/member_api_v2.md`.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#727](https://github.com/rubykube/peatio/pull/727): Update loofah to 2.2.
|
||||
|
||||
The patch fixes reported security issues.
|
||||
|
||||
* [#648](https://github.com/rubykube/peatio/pull/648): Speed up Docker image build.
|
||||
|
||||
The patch is an experimental attempt to speed up Docker images build on TravisCI.
|
||||
|
||||
* [#721](https://github.com/rubykube/peatio/pull/721): Remove `Currency#quick_withdraw_limit`.
|
||||
|
||||
The patch removes unnecessary convertation of `quick_withdraw_limit` to `BigDecimal`.
|
||||
|
||||
* [#726](https://github.com/rubykube/peatio/pull/726): Remove translations not used by Peatio.
|
||||
|
||||
The patch removes leftovers from translation data after extraction of trading UI to separate application.
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#741](https://github.com/rubykube/peatio/pull/741): Stop «Exchange assets» tab from breaking without liability proof generated && remove redundant `AssetsController#partial_tree`.
|
||||
|
||||
The patch applies changes so page «Exchange assets» will now handle situation when solvency information is not available.
|
||||
|
||||
* [#737](https://github.com/rubykube/peatio/pull/737): Display `Currency#code` instead of `Currency#to_s` at `/admin/proofs`.
|
||||
|
||||
* [#776](https://github.com/rubykube/peatio/pull/776): Handle specific response for ETH wallet from BitGo when generating new address.
|
||||
|
||||
The BitGo API reference [method for creation of new address](https://bitgo.github.io/bitgo-docs/?shell#create-address) for some reasons returns different response when used with ETH wallets. This doesn't work with Peatio will. We don't know why this happens so we pushed patch which can handle such response. We believe BitGo may have another undocumented incompatibilities.
|
||||
|
||||
The patch was also pusher to branch `1-5-stable`.
|
||||
241
docs/releases/1.7.0.md
Normal file
241
docs/releases/1.7.0.md
Normal file
@@ -0,0 +1,241 @@
|
||||
## Peatio 1.7.0 (April 19, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
This release is focused on:
|
||||
|
||||
1. Ability to manage currencies in admin panel.
|
||||
|
||||
2. Ability to manage market pairs in admin panel.
|
||||
|
||||
3. Support for multiple fiat currencies.
|
||||
|
||||
4. Migration to Bootstrap 4 from Bootstrap 3.
|
||||
|
||||
5. Brand-new Events API on top of AMQ protocol used for extending Peatio (experiment).
|
||||
|
||||
6. Lot of refactoring and improvements after major changes in 1.6.
|
||||
|
||||
The release also includes various fixes and improvements.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#800](https://github.com/rubykube/peatio/pull/800): Remove «WithdrawDestination» model in favor of RID (recipient ID).
|
||||
|
||||
The patch makes Peatio free out of all bank credentials, bank accounts and other stuff. People should think about Peatio like microservice for wallet management and trading. Applications which use Peatio for these kind of tasks are now able to link withdraw on Peatio to their's own using field called `rid` (recipient ID). This field is required and must uniquely identify bank account (for cryptocurrency withdraws it must identity wallet address in blockchain).
|
||||
|
||||
The changes to API:
|
||||
|
||||
* `GET /api/v2/withdraws/destinations`, `POST /api/v2/withdraws/destinations`: API calls removed.
|
||||
|
||||
* Request formats of `GET /api/v2/withdraws`, `POST /api/v2/withdraws`: parameter `destination_id` replaced with `rid`.
|
||||
|
||||
* Response formats of `GET /api/v2/withdraws`, `POST /api/v2/withdraws`: `txid` is not exposed as `blockhain_txid`, `destination` replaced with `rid`.
|
||||
|
||||
* Request formats of `POST /management_api/v1/withdraws/new`: parameter `destination_id` was removed.
|
||||
|
||||
IMPORTANT: The patch drops table `withdraw_destinations`. Be sure to backup the data before running migrations. The migration will automatically calculate field `rid` from `Withdraw#bank_account_number` (for fiat withdraws) and `Withdraw#address` (for crypto).
|
||||
|
||||
Also fixes: #799, #772.
|
||||
|
||||
The patch merged to 1.6 and up.
|
||||
|
||||
* [#820](https://github.com/rubykube/peatio/pull/820): Remove `Deposit#fund_extra`, `Deposit#fund_uid` and usages.
|
||||
|
||||
The patch removes useless fields from deposit: `fund_extra`, `fund_uid`. Be sure to backup your data in case you need these fields.
|
||||
|
||||
* [#816](https://github.com/rubykube/peatio/pull/816): Remove `Withdraw#sn` and all usages.
|
||||
|
||||
The patch removed useless withdraw model fields: `sn`. Be sure to backup this field in case you need the values.
|
||||
|
||||
* [#829](https://github.com/rubykube/peatio/pull/829): Replace `PaymentTransaction` in favor of `Deposit`.
|
||||
|
||||
The patch drops `PaymentTransaction` model in favor of `Deposit` which simplifies the code a lot.
|
||||
|
||||
We also improved database indices for deposits.
|
||||
|
||||
The breaking changes include:
|
||||
|
||||
* Response format of `GET /api/v2/deposits`, `GET /api/v2/deposit`: `done_at` is now exposed as `completed_at`.
|
||||
|
||||
* Response format of `POST /management_api/v1/deposits`, `POST /management_api/v1/deposits/get`, `POST /management_api/v1/deposits/new`, `PUT /management_api/v1/deposits/state`: added `blockchain_confirmations` to response.
|
||||
|
||||
* [#850](https://github.com/rubykube/peatio/pull/850): Remove mailing stuff from Peatio.
|
||||
|
||||
The patch removes mailers, views, gems, variables and documentation related to mailing. Now Peatio will not send any emails. It means you will need to implement your own mailing system using upcoming Peatio Events API. For example, you can send mail «Your deposit successfully accepted» when your application received event from Peatio (via AMQP) and deposit payload has status «accepted». This is very flexible way of extending Peatio with any amount of functionality. If you really need mails stay on 1.6.
|
||||
|
||||
* [#881](https://github.com/rubykube/peatio/pull/881): Embed «DepositChannel» in «Currency».
|
||||
|
||||
The patch migrates `config/deposit_channels.yml` to database layer.
|
||||
|
||||
The migration steps include:
|
||||
|
||||
1. Rename `config/deposit_channels.yml` to `config/deposit_channels.old.yml`.
|
||||
|
||||
2. Execute `bundle exec rake db:migrate`.
|
||||
|
||||
The patch adds `Currency#deposit_confirmations` which defines how many confirmations in blockchain transaction must receive to be accepted on Peatio.
|
||||
|
||||
* [#884](https://github.com/rubykube/peatio/pull/884): Embed «WithdrawChannel» in «Currency».
|
||||
|
||||
The patch migrates `config/withdraw_channels.yml` to database layer.
|
||||
|
||||
1. Rename `config/withdraw_channels.yml` to `config/withdraw_channels.old.yml`.
|
||||
|
||||
2. Execute `bundle exec rake db:migrate`.
|
||||
|
||||
The patch adds `Currency#withdraw_fee` which defined fixed fee for withdraw.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#781](https://github.com/rubykube/peatio/pull/781): Ability to manage market pairs using admin panel.
|
||||
|
||||
The patch adds ability to manage market pairs using admin panel (`/admin/markets`). You can create new markets, edit trading fees, change the order of markets, etc.
|
||||
|
||||
* [#828](https://github.com/rubykube/peatio/pull/828): Migration to Bootstrap 4.
|
||||
|
||||
The patch migrates from Bootstrap 3 to Bootstrap 4 improving user experience in both cabinet and admin panel.
|
||||
|
||||
* [#825](https://github.com/rubykube/peatio/pull/825): Ability to manage currencies using admin panel.
|
||||
|
||||
The patch adds ability to manage currencies using admin panel (`/admin/currencies`). You can create new currencies, edit API settings, change symbols, etc.
|
||||
|
||||
* [#826](https://github.com/rubykube/peatio/pull/826): Add support for multiple fiat currencies.
|
||||
|
||||
The patch finally adds support for multiple fiat currencies. You can add currency in admin panel, create market pair for it, deposit some money and start trading.
|
||||
|
||||
New variable has been added: `DISPLAY_CURRENCY`. This variable defines currency which is used to display amount of other currencies. Check more about it in `config/application.yml`.
|
||||
|
||||
* [#914](https://github.com/rubykube/peatio/pull/914): Event API based on AMQP used for extending Peatio (experiment).
|
||||
|
||||
This feature allows other applications to extend Peatio functionality (like business logic) by relying on AMQP (RabbitMQ) standard.
|
||||
|
||||
Checkout the specification `docs/specs/event_api.md` for complete details.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#782](https://github.com/rubykube/peatio/pull/782): Improved English phrasing in README.
|
||||
|
||||
The patch updated README with fixes and improvements.
|
||||
|
||||
* [#783](https://github.com/rubykube/peatio/pull/783): Fix typos and update details for Ubuntu installation instruction.
|
||||
|
||||
The patch updates docs for Ubuntu installation. IMPORTANT: We don't support this type of installation, we support Docker type of installation only.
|
||||
|
||||
* [#762](https://github.com/rubykube/peatio/pull/762): Add gem «bullet».
|
||||
|
||||
The patch adds gem bullet to development dependencies which helps to resolve N+1 problems and optimize SQL.
|
||||
|
||||
* [#808](https://github.com/rubykube/peatio/pull/808): Suppress warnings from figaro.
|
||||
|
||||
The patch tweaks `config/application.yml` so figaro doesn't output warnings anymore.
|
||||
|
||||
* [#815](https://github.com/rubykube/peatio/pull/815): Set member API version to match Peatio version.
|
||||
|
||||
The patch sets version in API docs the same as version of Peatio.
|
||||
|
||||
* [#751](https://github.com/rubykube/peatio/pull/751): Hide «unsecure protocol» warning from Bundler.
|
||||
|
||||
* [#832](https://github.com/rubykube/peatio/pull/832): Ignore .yarnrc and .cache in Git.
|
||||
|
||||
* [#833](https://github.com/rubykube/peatio/pull/833): Add ability to set UID and GID as Docker build args.
|
||||
|
||||
Merged to 1.6 and up.
|
||||
|
||||
* [#794](https://github.com/rubykube/peatio/pull/794): Remove trading UI leftovers in Peatio.
|
||||
|
||||
The patch removes lot of translations, assets & views which was still in Peatio ever after extraction of trading UI.
|
||||
|
||||
* [#844](https://github.com/rubykube/peatio/pull/844): Remove Swagger UI leftovers.
|
||||
|
||||
The patch removes all custom Swagger UI dependencies.
|
||||
|
||||
* [#836](https://github.com/rubykube/peatio/pull/836): Remove gem Slim.
|
||||
|
||||
* [#860](https://github.com/rubykube/peatio/pull/860): Finish Capybara tests in `features/admin/withdraw_spec.rb`.
|
||||
|
||||
The patch completes pending acceptance tests for admin withdraw page.
|
||||
|
||||
* [#885](https://github.com/rubykube/peatio/pull/885): Gemfile optimization: `eventmachine` & `em-websocket`.
|
||||
|
||||
The patch changes Gemfile to require the gems listed above only when they are needed (in `lib/daemons/websocket_api.rb`).
|
||||
|
||||
* [#906](https://github.com/rubykube/peatio/pull/906): Extend type of fee columns to match type of amount columns in database (`DECIMAL(32, 16)`).
|
||||
|
||||
The patch ensures database can store fee equal to 100% of amount.
|
||||
|
||||
* [#896](https://github.com/rubykube/peatio/pull/896): Update omniauth-barong version (compatibility with Barong 1.7).
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#791](https://github.com/rubykube/peatio/pull/791): Fix «NoMethodError: undefined method 'fetch' for #<OpenSSL::PKey::RSA>».
|
||||
|
||||
The patch fixes error related to parsing of `config/management_api_v1.yml` at `config/initializers/jwt.rb`. Merged to 1.6 and up.
|
||||
|
||||
* [#709](https://github.com/rubykube/peatio/pull/709): Add missing translation for «ORDER FULFILLED» (account version reason) and fix spelling.
|
||||
|
||||
The patch adds missing locale entries.
|
||||
|
||||
* [#769](https://github.com/rubykube/peatio/pull/769): Add missing step for installation with PostgreSQL.
|
||||
|
||||
The patch updated docs for installation with PostgreSQL.
|
||||
|
||||
* [#811](https://github.com/rubykube/peatio/pull/811): `PUSHER_CLIENT_ENCRYPTED` is ignored when value is «false».
|
||||
|
||||
The value of variable `PUSHER_CLIENT_ENCRYPTED` was ignored if set to `false`. Merged to 1.5 and up.
|
||||
|
||||
* [#807](https://github.com/rubykube/peatio/pull/807): Page should not be reloaded after creation of withdraw.
|
||||
|
||||
The patch prevents page from being reloaded after withdraw cancelation. Peatio must be correctly configured with Slanger (or Pusher) so the changes will be reflected without reload of page.
|
||||
|
||||
* [#806](https://github.com/rubykube/peatio/pull/806): Get rid of errors «Undefined method may_*?» for deposits and withdraws.
|
||||
|
||||
The patch fixes bugs which popped out after refactoring of deposit & withdraw states.
|
||||
|
||||
Merged to 1.6 and up.
|
||||
|
||||
* [#796](https://github.com/rubykube/peatio/pull/796): Fix failing specs with seed 59081 & 39808 (Capybara + DatabaseCleaner issue).
|
||||
|
||||
The patch updates spec configuration for better compatibility between DatabaseCleaner & Capybara.
|
||||
|
||||
* [#797](https://github.com/rubykube/peatio/pull/797): Fixes & specs for updated BitGo API (address creation issue).
|
||||
|
||||
The patch updates existing `CoinAPI::BitGo#create_address!` to be compatible with unexpectedly updated BitGo API and adds support for async address generation.
|
||||
|
||||
* [#839](https://github.com/rubykube/peatio/pull/839): Add missing `Private::DepositsController#destroy` action (couldn't cancel deposit).
|
||||
|
||||
Merged to 1.5 and up.
|
||||
|
||||
* [#856](https://github.com/rubykube/peatio/pull/856): Enqueue new matching engine after market create.
|
||||
|
||||
The patch fixes issues:
|
||||
|
||||
* List of orders is not displayed in trading UI for new markets.
|
||||
|
||||
* Cancellation of orders doesn't work on markets added from admin panel.
|
||||
|
||||
Merged to 1.6 and up.
|
||||
|
||||
* [#870](https://github.com/rubykube/peatio/pull/870): Fix typos in README.
|
||||
|
||||
* [#874](https://github.com/rubykube/peatio/pull/874): Don't create payment addresses for fiat accounts. Additional checks for address generation.
|
||||
|
||||
The patch adds additional checks which ensure payment address will not be generated for fiat accounts.
|
||||
|
||||
Previously there was a way to enqueue generation of payment address for fiat currency. This resulted in infinite error at deposit address generation worker. Now this is finally fixes and patched.
|
||||
|
||||
Merged to 1.5 and up.
|
||||
|
||||
* [#880](https://github.com/rubykube/peatio/pull/880): Various fixes after migration to BS4.
|
||||
|
||||
* [#892](https://github.com/rubykube/peatio/pull/892): Fix error in OrderBook entity caused by class loading order bug in Grape.
|
||||
|
||||
The patch fixes overlapping between constants `Order` and `APIv2::Entities::Order`.
|
||||
|
||||
Merged to 1.5 and up.
|
||||
|
||||
* [#879](https://github.com/rubykube/peatio/pull/879): Store fee in `Order#fee`.
|
||||
|
||||
The patch embeds field `fee` in table `orders`. Previously the value was stored only in market and retrieved from it every time. This was a critical bug which prevented orders from showing real fee value at the moment when order was executed (it displayed only the latest value retrieved from market).
|
||||
|
||||
Merged to 1.6 and up.
|
||||
163
docs/releases/1.8.0.md
Normal file
163
docs/releases/1.8.0.md
Normal file
@@ -0,0 +1,163 @@
|
||||
## Peatio 1.8.0 (May 3, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
This release is focused on:
|
||||
|
||||
1. Support for ERC20 tokens.
|
||||
|
||||
2. Fixing issues at all available APIs: Events API, Management API v2 & Member API v2.
|
||||
|
||||
3. Improvements for transaction processing mechanisms.
|
||||
|
||||
4. Fixing UI issues.
|
||||
|
||||
The release doesn't provide lot of new feature, instead it is focused on stabilization of current codebase.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
* [#913](https://github.com/rubykube/peatio/pull/913): All wallet addresses, transaction IDs, TIDs, RIDs are now case sensitive.
|
||||
|
||||
The next migration files are must-learn before doing any upgrades:
|
||||
|
||||
* https://github.com/rubykube/peatio/pull/913/files#diff-685a1e4a0464f3358e0aaba59188992c
|
||||
|
||||
* https://github.com/rubykube/peatio/pull/913/files#diff-4d9437ddbba478de18ee9a1d044f3be0
|
||||
|
||||
Please, also be sure to checkout the new variable for currencies: `case_sensitive`. This variable determines if wallet addresses and transaction IDs are case sensitive or insensitive. Be sure to set the correct value for your currencies.
|
||||
|
||||
* [#1037](https://github.com/rubykube/peatio/pull/1037): Replace state to action in withdraws and change behaviour of initial withdraw state (Management API v1).
|
||||
|
||||
Changes to **`POST /management_api/v1/withdraws/new`**
|
||||
|
||||
Now the behaviours for fiat and crypto withdraws are different.
|
||||
|
||||
*Fiat*: money are immediately locked, withdraw state is set to «submitted», system workers will validate withdraw later against suspected activity, and assign state to «rejected» or «accepted». The processing will not begin automatically. The processing may be initiated manually from admin panel or by PUT /management_api/v1/withdraws/action.
|
||||
|
||||
*Coin*: money are immediately locked, withdraw state is set to «submitted», system workers will validate withdraw later against suspected activity, validate withdraw address and set state to «rejected» or «accepted». Then in case state is «accepted» withdraw workers will perform interactions with blockchain. The withdraw receives new state «processing». Then withdraw receives state either «succeed» or «failed».
|
||||
|
||||
The parameter `state` replaced with `action`. The available values include:
|
||||
|
||||
* `process`: system will lock the money, check for suspected activity, validate recipient address, and initiate the processing of the withdraw. The fiat withdraws will be completed immediately while crypto withdraws will be processed by workers since they require interaction with blockchain.
|
||||
|
||||
Migration steps:
|
||||
|
||||
* If you depend on `state: :prepared` you will need to review the logic of your app because it is now not possible to create withdraw with no money locked.
|
||||
|
||||
* If you depend on `state: :submitted` you can safely remove this parameter from payload.
|
||||
|
||||
Changes to **`PUT /management_api/v1/withdraws/state`**
|
||||
|
||||
This route changed to `PUT /management_api/v1/withdraws/action`.
|
||||
|
||||
The parameter `state` replaced with `action`. The available values include:
|
||||
|
||||
* `process`: system will lock the money, check for suspected activity, validate recipient address, and initiate the processing of the withdraw. The fiat withdraws will be completed immediately while crypto withdraws will be processed by workers since they require interaction with blockchain.
|
||||
|
||||
* `cancel`: system will mark withdraw as «canceled», and unlock the money (if they were locked).
|
||||
|
||||
Migration steps:
|
||||
|
||||
* `state: :submitted` is no longer supported in this call. If you want to initiate the processing of withdraw pass `action: :process`.
|
||||
|
||||
* If you depend on `state: :canceled` replace it with `action: :cancel`.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#913](https://github.com/rubykube/peatio/pull/913): Add support for ERC20 tokens.
|
||||
|
||||
The patch adds support for ERC20 tokens.
|
||||
|
||||
Read more about how to use this feature at:
|
||||
|
||||
* config/seed/currencies.yml.erb (find currency `TRST`).
|
||||
|
||||
* docs/peatio/erc20.md
|
||||
|
||||
* docs/peatio/testnet/erc20.md
|
||||
|
||||
* [#980](https://github.com/rubykube/peatio/pull/980): Ability to establish cookie-based session using API.
|
||||
|
||||
The patch adds new Member API v2 call `POST /api/v2/sessions` which allows to establish classical cookie-based session which expires along with JWT expiration time. It may be useful when Peatio is used as backend for SPA frontend along with existing Trading UI (which is cookie-based).
|
||||
|
||||
* [#915](https://github.com/rubykube/peatio/pull/915): Add ability to enable fiat deposit fee.
|
||||
|
||||
It is now possible to set fiat deposit fee (fixed size only).
|
||||
|
||||
* [#935](https://github.com/rubykube/peatio/pull/935): Ability to get deposit, withdraw and trading fees using Member API v2.
|
||||
|
||||
The patch adds public calls: `GET /api/v2/fees/deposit`, `GET /api/v2/fees/withdraw`, `GET /api/v2/fees/trading`.
|
||||
|
||||
* [#1033](https://github.com/rubykube/peatio/pull/1033): Expose account balance via Management API v1.
|
||||
|
||||
The patch adds new Management API v1 calls: `POST /management_api/v1/accounts/balance`.
|
||||
|
||||
Check more info at docs/api/management_api_v1.md.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#931](https://github.com/rubykube/peatio/pull/931): Update omniauth-barong to 0.1.4.
|
||||
|
||||
The patch updates gem version and enabled Peatio to support newer Barong versions.
|
||||
|
||||
* [#922](https://github.com/rubykube/peatio/pull/922): Remove «Pusher not available» panel from Peatio UI.
|
||||
|
||||
* [#946](https://github.com/rubykube/peatio/pull/946): Treat Barong levels higher then or equal to three as «identity verified».
|
||||
|
||||
* [#961](https://github.com/rubykube/peatio/pull/961): Retry on all Capybara errors in tests (helps to run test on slow hardware).
|
||||
|
||||
* [#988](https://github.com/rubykube/peatio/pull/988): Remove legacy ActiveYAML stuff.
|
||||
|
||||
* [#992](https://github.com/rubykube/peatio/pull/992): Remove ability to select currency for fiat deposit, use currency code in URL instead.
|
||||
|
||||
* [#1012](https://github.com/rubykube/peatio/pull/1012): Permit cryptocurrency transactions between internal recipients.
|
||||
|
||||
* [#1027](https://github.com/rubykube/peatio/pull/1027): Add logging to Grape APIs.
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#924](https://github.com/rubykube/peatio/pull/924): Various user interface fixes and improvements after migrating to Bootstrap 4 (for both user cabinet and admin).
|
||||
|
||||
* [#937](https://github.com/rubykube/peatio/pull/937): Various admin interface style fixes.
|
||||
|
||||
* [#994](https://github.com/rubykube/peatio/pull/994): Various UI fixes.
|
||||
|
||||
* [#918](https://github.com/rubykube/peatio/pull/918): Update documentation for Bitcoin walletnotify.
|
||||
|
||||
* [#949](https://github.com/rubykube/peatio/pull/949): Disable automatic processing for fiat withdraws and bring back ability to cancel withdraw in admin panel.
|
||||
|
||||
* [#942](https://github.com/rubykube/peatio/pull/942): Update conditions for fiat withdraw button (force manual processing, fixes sticky withdraws).
|
||||
|
||||
* [#956](https://github.com/rubykube/peatio/pull/956): Limit trading fee to 50%.
|
||||
|
||||
The patch adds validations & migrations which prevents user from settings trading fees over 50%.
|
||||
|
||||
* [#965](https://github.com/rubykube/peatio/pull/965): Add missing translations for withdraw states.
|
||||
|
||||
* [#958](https://github.com/rubykube/peatio/pull/958): Submit amounts as strings, update String#to_d to match Rails behaviour, add specs for extremely precise amounts.
|
||||
|
||||
* [#969](https://github.com/rubykube/peatio/pull/969): Always use legacy Bitcoin Cash addresses.
|
||||
|
||||
The patch converts BCH addresses from «Cash Address» format to legacy so it is compatible with most wallets & exchanges.
|
||||
|
||||
* [#976](https://github.com/rubykube/peatio/pull/976): Remove «--depth=1» from git clone in bin/install_plugins.
|
||||
|
||||
The patch fixes error which prevented from installing specific version of plugin (it was always master).
|
||||
|
||||
* [#989](https://github.com/rubykube/peatio/pull/989): Fix typos in docs/specs/event_api.
|
||||
|
||||
* [#984](https://github.com/rubykube/peatio/pull/984): Fix for BitGo ETH address generation.
|
||||
|
||||
* [#998](https://github.com/rubykube/peatio/pull/998): Submit withdraw after creation via API.
|
||||
|
||||
The patch fixes sticky withdraws created via Member API v2.
|
||||
|
||||
* [#1008](https://github.com/rubykube/peatio/pull/1008): Add «deposit_confirmations» to config/seed/currencies.yml.erb.
|
||||
|
||||
* [#1014](https://github.com/rubykube/peatio/pull/1014): Fix disappearing security_configuration when module reloads.
|
||||
|
||||
* [#1022](https://github.com/rubykube/peatio/pull/1022): Fix «[object Object]» problem in API docs, add bin/bump for updating versions & tweak ci/bump.rb.
|
||||
|
||||
* [#1028](https://github.com/rubykube/peatio/pull/1028): Tweak lib/daemons/coins.rb for stability.
|
||||
|
||||
The patch improves speed and stability of processing incoming transactions and fixes bug related to sticky daemon on processing ERC20 transactions.
|
||||
172
docs/releases/1.9.0.md
Normal file
172
docs/releases/1.9.0.md
Normal file
@@ -0,0 +1,172 @@
|
||||
## Peatio 1.9.0 (August 9, 2018) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 1.9.0.
|
||||
|
||||
This release includes significant new features, numerous functional fixes and enhancements. Peatio 1.9.0 came out with a rewrite of Blockchain synchronisation daemon solving major design flaw of old original Peatio. Multi-tier wallet system is another great implemented feature helping achieve digital funds protection by using wallets segregation with specific access policies and flexible multi-signature settings. Among the other nice features such as Admin Interface for advanced Blockchain/Wallet management, this release is also focused on:
|
||||
|
||||
1. Multi Wallet support.
|
||||
2. New Blockchain synchronization mechanism.
|
||||
3. Full ERC20 tokens support.
|
||||
4. Splitting of Blockchain read and write Services and Clients.
|
||||
|
||||
This release notes is must-read for migrating from older versions.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
- [#1404](https://github.com/rubykube/peatio/pull/1404): Adding blockchain model, database seeds, service and client.
|
||||
|
||||
The next seed and migration files are must-learn before doing any upgrades:
|
||||
|
||||
- https://github.com/rubykube/peatio/pull/1404/files#diff-6be627e8bb77b25dcdf2c972d3c873ec
|
||||
- https://github.com/rubykube/peatio/pull/1404/files#diff-91027e648f4292cd6ec8f7e11a43a669
|
||||
|
||||
Some of Blockchain configuration were extracted from Currencies. Blockchain model, service and client performs read operation and process blockchain blocks one by one. It responsible for coin deposit or withdraw state updates and deposit detection.
|
||||
|
||||
- [#1404](https://github.com/rubykube/peatio/pull/1404): Adding wallet model, database seeds, service and client.
|
||||
|
||||
The next seed and migration files are must-learn before doing any upgrades:
|
||||
|
||||
- https://github.com/rubykube/peatio/pull/1404/files#diff-3ac13d4e0c5c496b426d40b62db793b5
|
||||
- https://github.com/rubykube/peatio/pull/1404/files#diff-1fc2b7b6df8dbd6da6bce9966b74a3e8
|
||||
|
||||
Wallet configurations were extracted from Currencies API client configuration. Wallet model, service and client performs write operation and responsible for deposit address creation, deposit collection, deposit collection fees transfering, and withdraw creation..
|
||||
|
||||
- [#1518](https://github.com/rubykube/peatio/pull/1518): Currencies dead code clean up.
|
||||
|
||||
The next seed and migration files are must-learn before doing any upgrades:
|
||||
|
||||
- https://github.com/rubykube/peatio/pull/1518/files#diff-eb833ff83c1af2e978d647f035f7d1ac
|
||||
- https://github.com/rubykube/peatio/pull/1404/files#diff-91027e648f4292cd6ec8f7e11a43a669R17
|
||||
|
||||
Currencies model simplify. Now currency model doesn't store any API specific configuration and wallet secrets all this configuration where extracted to Blockchain and Wallet models.
|
||||
|
||||
- [#1458](https://github.com/rubykube/peatio/pull/1458): Include PublishToRabbitMQ GenerateJWT Event API middlewares by default.
|
||||
|
||||
The next configuration file is must-learn before upgrading:
|
||||
- https://github.com/rubykube/peatio/commit/fa041a6ba8ba586ffc9f4095b1f4f46e2df6b017#diff-81b753b02c902d26e3b837d7814c5244R172
|
||||
Now all events are pulished to RabbitMQ as in form of JWT messages by default instead of abstract RabbitMQ message.
|
||||
|
||||
### New features ###
|
||||
|
||||
* [#1404](https://github.com/rubykube/peatio/pull/1404): This pull request provides bunch of functional features and fixes:
|
||||
* Blockchain model and Database seeding
|
||||
|
||||
* Adding wallet seeding
|
||||
|
||||
* Adding wallet model
|
||||
|
||||
* Fix STI problem
|
||||
|
||||
* Add missing associations
|
||||
|
||||
* Fix indexes order
|
||||
|
||||
* Adding factories and a test stub
|
||||
|
||||
* BlockchainService #process_blockchain deposits with proof of work [#1417](https://github.com/rubykube/peatio/pull/1417)
|
||||
|
||||
* Ability to register a blockchain/wallet from Admin Panel [#1422](https://github.com/rubykube/peatio/pull/1422)
|
||||
|
||||
* Revert some changes (related to #1422)
|
||||
|
||||
* Single BlockchainService per Blockchain [#1424](https://github.com/rubykube/peatio/pull/1424)
|
||||
|
||||
* Added Wallet/Blockchain validations [#1429](https://github.com/rubykube/peatio/pull/1429)
|
||||
|
||||
* Confirm withdrawals in BlockchainService #process_blockchain [#1427](https://github.com/rubykube/peatio/pull/1427)
|
||||
|
||||
* Rebase on master
|
||||
|
||||
* Bitcoin Blockchain Service [#1444](https://github.com/rubykube/peatio/pull/1444)
|
||||
|
||||
* Improve BlockchainService logger. Wallet & Blockchain bugfixes [#1474](https://github.com/rubykube/peatio/pull/1474)
|
||||
|
||||
* Add Blockchain Key In Currency [#1473](https://github.com/rubykube/peatio/pull/1473)
|
||||
|
||||
* Remove CoinAPI & daemons. Rename Client to BlockchainClient [#1476](https://github.com/rubykube/peatio/pull/1476)
|
||||
|
||||
* BlockchainService improve performance
|
||||
|
||||
* Fix specs
|
||||
|
||||
* Replace Confirmation With Block Number [#1463](https://github.com/rubykube/peatio/pull/1463)
|
||||
|
||||
* Add gateway & max_balance to wallets [#1478](https://github.com/rubykube/peatio/pull/1478)
|
||||
|
||||
* Wallet per currency
|
||||
|
||||
* WalletService module and WalletService::Base class [#1479](https://github.com/rubykube/peatio/pull/1479)
|
||||
|
||||
* DepositCollectionFees worker for ERC20 [#1489](https://github.com/rubykube/peatio/pull/1489)
|
||||
|
||||
* Litecoin/Dash/BitcoinCash Blockchain Services [#1475](https://github.com/rubykube/peatio/pull/1475)
|
||||
|
||||
* Updates for admin panel [#1501](https://github.com/rubykube/peatio/pull/1501)
|
||||
|
||||
* Fix erc20 deposit for tx with empty receipt [#1502](https://github.com/rubykube/peatio/pull/1502)
|
||||
|
||||
* Fix wrong client for existing blockchain on admin panel [#1504](https://github.com/rubykube/peatio/pull/1504)
|
||||
|
||||
* Bitgo wallet Client/Service [#1491](https://github.com/rubykube/peatio/pull/1491)
|
||||
|
||||
* Fixed withdraw stuck in confirming [#1507](https://github.com/rubykube/peatio/pull/1507)
|
||||
|
||||
* Improved dynamic txn fees for bitcoind/bitgo [#1509](https://github.com/rubykube/peatio/pull/1509)
|
||||
|
||||
* Feature/blockchains wallets [#1510](https://github.com/rubykube/peatio/pull/1510)
|
||||
|
||||
|
||||
* [#1368](https://github.com/rubykube/peatio/pull/1368): Add 24 hours currency trades API endpoint.
|
||||
|
||||
This patch adds public call for getting currency trades performed within the last 24h: GET /v2/currency/trades.
|
||||
|
||||
Check more info at docs/api/member_api_v2.md.
|
||||
|
||||
* [#1433](https://github.com/rubykube/peatio/pull/1433): Add API endpoint for currencies.
|
||||
|
||||
This patch adds public call for getting the list of currencies: GET /v2/currencies.
|
||||
|
||||
Check more info at docs/api/member_api_v2.md
|
||||
|
||||
* [#1501](https://github.com/rubykube/peatio/pull/1501): Updates for admin panel.
|
||||
|
||||
This patch gives the ability to to register a blockchain/wallet from Admin Panel.
|
||||
|
||||
* [#1463](https://github.com/rubykube/peatio/pull/1463): Replace Confirmation With Block Number.
|
||||
|
||||
This patch replaces confirmations field in withdraw and currency model with block_number. So confirmations amount is updated dynamically.
|
||||
|
||||
* [#1460](https://github.com/rubykube/peatio/pull/1460): Support minimum price for Order.
|
||||
|
||||
* [#1318](https://github.com/rubykube/peatio/pull/1318): Send label when generating BitGo address.
|
||||
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
* [#1377](https://github.com/rubykube/peatio/pull/1377): Document every daemon.
|
||||
|
||||
The list and purpose of each Peatio daemon is described in [docs/daemons.md](docs/daemons.md).
|
||||
|
||||
* [#1342](https://github.com/rubykube/peatio/pull/1342): Ability to get data between some time interval (time_from, time_to) in GET /api/v2/k.
|
||||
|
||||
* [#1493](https://github.com/rubykube/peatio/pull/1493): Add more details for the API docs.
|
||||
|
||||
* [#1517](https://github.com/rubykube/peatio/pull/1517): Improved updation of blockchain height.
|
||||
|
||||
### Fixes ###
|
||||
|
||||
* [#1450](https://github.com/rubykube/peatio/pull/1450): Change Default Domain To peatio.tech.
|
||||
|
||||
* [#1526](https://github.com/rubykube/peatio/pull/1526): Change Currency Id And Market Id Limit.
|
||||
|
||||
* [#1402](https://github.com/rubykube/peatio/pull/1402): Fix migration multiple_deposit_addresses.
|
||||
|
||||
* [#1492](https://github.com/rubykube/peatio/pull/1492): Fix typo in setup-osx.md documentation.
|
||||
|
||||
* [#1529](https://github.com/rubykube/peatio/pull/1529): Code polish and minor bugfix.
|
||||
|
||||
* [#1518](https://github.com/rubykube/peatio/pull/1518): Currencies dead code clean up.
|
||||
|
||||
* [#1533](https://github.com/rubykube/peatio/pull/1533): Edit comments in templates for wallets.yml.
|
||||
16
docs/releases/2.0.0.md
Normal file
16
docs/releases/2.0.0.md
Normal file
@@ -0,0 +1,16 @@
|
||||
## Peatio 2.0.0 (February 22, 2019) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 2.0.0.
|
||||
|
||||
This release concentrated on fundamental architecture changes and mostly focused on:
|
||||
|
||||
1. Double Entry Accouting system integration.
|
||||
2. Basic Asset Liability Revenue and Expense operations management.
|
||||
3. API Gateway integration.
|
||||
4. Major API reorganization & improvements.
|
||||
|
||||
This release notes describes changes but doesn't provide migrations steps
|
||||
since such a major updates requires deep source code knowledge.
|
||||
We advice to install 2.0.0 from scratch
|
||||
66
docs/releases/2.1.0.md
Normal file
66
docs/releases/2.1.0.md
Normal file
@@ -0,0 +1,66 @@
|
||||
## Peatio 2.1.0 (April 22, 2019) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 2.1.0.
|
||||
|
||||
This release concentrated on new v2 architecture related improvements and dependency updates:
|
||||
|
||||
1. Remove legacy Member UI.
|
||||
2. Upgrade Ruby on Rails to 5.2.
|
||||
3. Upgrade ruby to 2.6.2.
|
||||
|
||||
This release notes is must-read for migrating from older versions.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
- [#2051](https://github.com/rubykube/peatio/pull/2051): Remove legacy member UI
|
||||
|
||||
Peatio legacy Member UI was not supported for a long time and deprecated in 2.0.0.
|
||||
|
||||
We have totally deleted Member UI from so now there is only Admin panel UI left in Peatio.
|
||||
|
||||
- [#2091](https://github.com/rubykube/peatio/pull/2091): Remove deprecated fees API
|
||||
|
||||
*public/fees/withdraw*, *public/fees/deposit*, *public/fees/trading*
|
||||
|
||||
API endpoints were removed in favour of
|
||||
|
||||
*public/markets*, *public/currencies*
|
||||
|
||||
- [#2090](https://github.com/rubykube/peatio/pull/2090): Remove plugin API v1
|
||||
|
||||
We advice to use Plugin API v2 instead. See more in [plugins](../plugins.md)
|
||||
|
||||
- [#2121](https://github.com/rubykube/peatio/pull/2121): Unify trade taker_type with Ranger and api
|
||||
|
||||
### New Features ###
|
||||
|
||||
- Add ability to cancel all orders for specific market [\#2125](https://github.com/rubykube/peatio/pull/2125)
|
||||
- Move order submit to order\_processor and remove Ordering service [\#2147](https://github.com/rubykube/peatio/pull/2147)
|
||||
- Add note to withdraw [\#2157](https://github.com/rubykube/peatio/pull/2157)
|
||||
- Add filter by date in market/trades REST API call [\#2126](https://github.com/rubykube/peatio/pull/2126)
|
||||
- Add optional fields for operations API [\#2140](https://github.com/rubykube/peatio/pull/2140)
|
||||
- Benchmark tasks for Matching TradeExecution and OrderProcessing [\#2133](https://github.com/rubykube/peatio/pull/2133)
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
- Remove Peatio.tech brand from admin panel [#2072](https://github.com/rubykube/peatio/pull/2072)
|
||||
- Update application.yml.erb [#2098](https://github.com/rubykube/peatio/pull/2098)
|
||||
- Get rid off grape\_strip gem [\#2116](https://github.com/rubykube/peatio/pull/2116)
|
||||
- Avoid "message" in API controllers by overriding Grape::AllowBlankValidator [\#2094](https://github.com/rubykube/peatio/pull/2094)
|
||||
- Upgrade Ruby on Rails to 5.0 [\#2095](https://github.com/rubykube/peatio/pull/2095)
|
||||
- Upgrade Ruby on Rails to 5.2 [\#2146](https://github.com/rubykube/peatio/pull/2146)
|
||||
- Update setup-ubuntu.md [\#2103](https://github.com/rubykube/peatio/pull/2103)
|
||||
- Add missing paginations for deposit & withdraw on admin panel [\#2156](https://github.com/rubykube/peatio/pull/2156)
|
||||
- Upgrade ruby to 2.6.2 [\#2160](https://github.com/rubykube/peatio/pull/2160)
|
||||
- Skip withdrawal in case of insufficient balance on hot wallet [\#2178](https://github.com/rubykube/peatio/pull/2178)
|
||||
|
||||
### Fixes ###
|
||||
|
||||
- Fix release:travis rake task [\#2145](https://github.com/rubykube/peatio/pull/2145)
|
||||
- Fix bin/gendocs [\#2150](https://github.com/rubykube/peatio/pull/2150)
|
||||
- Limit number of returned data from ranger `global.update` [\#2153](https://github.com/rubykube/peatio/pull/2153)
|
||||
- Rewrite callbacks for avoid using redirect\_to :back [\#2113](https://github.com/rubykube/peatio/pull/2113)
|
||||
- Revert ability to deposit from admin panel [\#2164](https://github.com/rubykube/peatio/pull/2164)
|
||||
- Rewrite callbacks for avoid using redirect\_to :back [\#2169](https://github.com/rubykube/peatio/pull/2169)
|
||||
133
docs/releases/2.2.0.md
Normal file
133
docs/releases/2.2.0.md
Normal file
@@ -0,0 +1,133 @@
|
||||
## Peatio 2.2.0 (June 3, 2019) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 2.2.0.
|
||||
|
||||
This release concentrated on Plugable Coins API development new features and enhancements:
|
||||
|
||||
1. New admin roles integration.
|
||||
2. Admin panel RBAC.
|
||||
3. Daemons stability and performance improvements.
|
||||
3. Foundation for third party trading engine integration.
|
||||
|
||||
This release notes is must-read for migrating from older versions.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
- [#2168](https://github.com/rubykube/peatio/pull/2168): Plugable Coins API
|
||||
|
||||
This PR is gives ability gives ability to extend Peatio with new coins implementation.
|
||||
|
||||
Such a big architecture improvements usually brings breaking changes.
|
||||
|
||||
Core Peatio supports Ethereum, Bitcoin and Litecoin(as a plugin) blockchains.
|
||||
It means that you need to build custom image if you want to integrate other coins.
|
||||
For guide of how to build custom docker image check [documentation](../plugins.md).
|
||||
For coin integration guide check **doc/integration.md** of appropriate coin e.g([litecoin](https://github.com/rubykube/peatio-litecoin/blob/master/docs/integration.md)).
|
||||
You will find the list of approved coin plugins [here](../coins/plugins.md).
|
||||
|
||||
- [#2242](https://github.com/rubykube/peatio/pull/2242): Reorganization ruby and amqp workers.
|
||||
|
||||
Raw ruby daemons starting script was unified in the same way as we do for AMQP daemons.
|
||||
|
||||
So now to start ruby daemon you need to run the next command:
|
||||
```bash
|
||||
bundle exec ruby lib/daemons/daemons.rb daemon_name
|
||||
```
|
||||
|
||||
- [#2241](https://github.com/rubykube/peatio/pull/2241): Major Market model rework.
|
||||
|
||||
This patch makes bunch of changes in Market model and related APIs, controllers and configuration.
|
||||
|
||||
Here is the full list of braking changes for more info check [PR](https://github.com/rubykube/peatio/pull/2241):
|
||||
|
||||
* Replace Market `enabled` with `state` and list new states (without
|
||||
logic implementation)
|
||||
* Rework public/market API response structure
|
||||
* Rename Market API error name `market.market.doesnt_exist` -> `market.market.doesnt_exist_or_not_enabled`
|
||||
* Add ability to disable all markets
|
||||
* Remove precision equivalence validation (now amount and price precision could be different)
|
||||
* Add precisions sum validation (amount + price precision < 12)
|
||||
* Merge min_bid_amount & min_ask_amount to min_amount
|
||||
* Update Market seeds
|
||||
* Rename ask_precision -> amount_precision, bid_precision -> price_precision
|
||||
* Rename min_ask_price -> min_price, max_bid_price -> max_price
|
||||
* Rename ask_unit -> base_unit, bid_unit -> quote_unit
|
||||
|
||||
- [#2267](https://github.com/rubykube/peatio/pull/2267): Move slave book from amqp to ruby daemons.
|
||||
|
||||
This PR changes slave book daemon type from AMQP daemon to raw ruby one.
|
||||
|
||||
Now to start slave book you need to run `bundle exec ruby lib/daemons/daemons.rb slave_book`.
|
||||
|
||||
- [#2257](https://github.com/rubykube/peatio/pull/2257): Refactor blockchain daemon.
|
||||
|
||||
Now Blockchain daemon doesn't scaling and BLOCKCHAINS env variable.
|
||||
|
||||
Current version of Blockchain daemon starts separate thread per blockchain which works simultaneously and doesn't depend on each other.
|
||||
So it doesn't need scaling to multiple process and BLOCKCHAINS env variable.
|
||||
|
||||
- [#2258](https://github.com/rubykube/peatio/pull/2258): Major trading engine and logic rework with precision, rounding and matching flow improvements.
|
||||
|
||||
Trading engine rework includes bunch of flow enhancements:
|
||||
* Remove rounding on order creation
|
||||
* Validate volume and price precision on order creation
|
||||
* Return invalid_price_or_volume error in case of fractional part overflow
|
||||
* Validate Market min_price, max_price and min_amount depending on amount and price precision
|
||||
* Market amount_precision + price_precision < FUNDS_PRECISION = 12
|
||||
* Set Market FEE_PRECISION to 4
|
||||
* Round estimated funds on market order creation
|
||||
* Rewrite Matching::Engine from scratch without recursion
|
||||
* Update markets.yml.erb with new min_price, min_amount
|
||||
|
||||
### New Features ###
|
||||
|
||||
- Admin panel RBAC. New admin roles support [#2217](https://github.com/rubykube/peatio/pull/2217) ([chumaknadya](https://github.com/chumaknadya))
|
||||
|
||||
Now we support the next list of admin privileged roles:
|
||||
* Super admin
|
||||
* Admin
|
||||
* Accountant
|
||||
* Compliance
|
||||
* Technical
|
||||
* Support
|
||||
|
||||
For the list of permissions for each role check [PR](https://github.com/rubykube/peatio/pull/2217)
|
||||
|
||||
- AMQP messages for third party trading engine integration [\#2215](https://github.com/rubykube/peatio/pull/2215) ([ysv](https://github.com/ysv))
|
||||
|
||||
Our plan is to support third party trading engine, so we can replace all peatio trading daemons without breaking compatibility.
|
||||
This PR adds functionality of publishing Order submit and cancel, Liability create events to RMQ.
|
||||
|
||||
- Add management API endpoint for listing trades [\#2182](https://github.com/rubykube/peatio/pull/2182) ([ymasiuk](https://github.com/ymasiuk))
|
||||
- Change order 'state' to int for order\_processor [\#2205](https://github.com/rubykube/peatio/pull/2205) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- AMQP messages for third party trading engine integration [\#2215](https://github.com/rubykube/peatio/pull/2215) ([ysv](https://github.com/ysv))
|
||||
- Use json format for logs [\#2232](https://github.com/rubykube/peatio/pull/2232) ([denisfd](https://github.com/denisfd))
|
||||
- Retry withdraw on failure [\#2233](https://github.com/rubykube/peatio/pull/2233) ([shal](https://github.com/shal))
|
||||
- Change: config/database.yml – use port value from ENV [\#2254](https://github.com/rubykube/peatio/pull/2254) ([matass](https://github.com/matass))
|
||||
- Add min\_confirmations field to Currency model entity [\#2276](https://github.com/rubykube/peatio/pull/2276) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add bitcoincash and ripple [\#2284](https://github.com/rubykube/peatio/pull/2286)([ymasiuk](https://github.com/ymasiuk))
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
- Skip withdrawal in case of insufficient balance on hot wallet [\#2179](https://github.com/rubykube/peatio/pull/2179) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update RBAC roles [\#2237](https://github.com/rubykube/peatio/pull/2237) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add WS message for market order executed event [\#2208](https://github.com/rubykube/peatio/pull/2208) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Replace Passgen gem with new password generator [\#2245](https://github.com/rubykube/peatio/pull/2245) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update Readme [\#2250](https://github.com/rubykube/peatio/pull/2250) ([liutenko](https://github.com/liutenko))
|
||||
- Improve sentry-raven error reporting [\#2236](https://github.com/rubykube/peatio/pull/2236) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update logs in withdraw\_coin worker [\#2234](https://github.com/rubykube/peatio/pull/2234) ([denisfd](https://github.com/denisfd))
|
||||
- Update ruby version and gems [\#2263](https://github.com/rubykube/peatio/pull/2263) ([mod](https://github.com/mod))
|
||||
- Multi coin support for altcoins [\#2243](https://github.com/rubykube/peatio/pull/2243) ([Xicy](https://github.com/Xicy))
|
||||
|
||||
### Bug Fixes ###
|
||||
|
||||
- Remove JWT token from response payload [\#2265](https://github.com/rubykube/peatio/pull/2265) ([shal](https://github.com/shal))
|
||||
- Remove http request for confirmations method [\#2262](https://github.com/rubykube/peatio/pull/2262) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Reload blockchain from DB before sync [\#2269](https://github.com/rubykube/peatio/pull/2269) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix bin/gendocs [\#2272](https://github.com/rubykube/peatio/pull/2272) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix issue with rake task release.rake in travis [\#2275](https://github.com/rubykube/peatio/pull/2275) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix GET /withdraws to include both fiat and crypto [\#2222](https://github.com/rubykube/peatio/pull/2222) ([msembinelli](https://github.com/msembinelli))
|
||||
- Remove withdrawal attempts [\#2280](https://github.com/rubykube/peatio/pull/2280) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix double spending issue on withdraw [\#2280](https://github.com/rubykube/peatio/pull/2280) ([mnaichuk](https://github.com/mnaichuk))
|
||||
217
docs/releases/2.3.0.md
Normal file
217
docs/releases/2.3.0.md
Normal file
@@ -0,0 +1,217 @@
|
||||
## Peatio 2.3.0 (September 15, 2019) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 2.3.0.
|
||||
|
||||
This release concentrated on new Admin API module, new features and enhancements:
|
||||
|
||||
1. Refactoring to maker-taker fee model. Major Trade model rework.
|
||||
2. Admin API module for tower.
|
||||
3. Trading Fee Schedule based on Member group.
|
||||
4. Introduce adjustments.
|
||||
5. Beneficiaries model and fiat withdrawal.
|
||||
|
||||
This release notes is must-read for migrating from older versions.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
- [#2278](https://github.com/rubykube/peatio/pull/2278): Market & Currency admin forms corrections & improvements
|
||||
|
||||
- Improve Market form validations and errors
|
||||
- Ask/Bid fee -> Quote/Base currency fee
|
||||
- Base/Quote unit -> Base/Quote currency
|
||||
- Use number_field for decimals
|
||||
- Id has already been taken -> #{base}, #{quote} market already exists
|
||||
- Validate amount_precision instead of precisions sum
|
||||
- Validate price_preciosion to be less than FUNDS_PRECISION
|
||||
- Validate amount_precision to be less than FUNDS_PRECISION - price_precision
|
||||
- Update deposit table columns
|
||||
- Validate code instead of id in Currency
|
||||
- Define convention for organizing Ruby On Rails Models
|
||||
- Use 'withdrawal' instead of 'withdraw' everywhere
|
||||
|
||||
- [#2292](https://github.com/rubykube/peatio/pull/2292): Switch to maker-taker fee model. Major Trade model rework
|
||||
|
||||
This patch replaces side-related (buy or sell) with maker-taker fee model. Its basic structure gives a fee discount to market makers providing liquidity (the makers); and charges higher fee to customers who take liquidity out of the market (the takers). Fee could be configured per market.
|
||||
Next changes were produced by switching to maker-taker fee model:
|
||||
|
||||
- Replace `ask_fee` and `bid_fee` with `maker_fee` and `taker_fee` in Market model;
|
||||
- Replace `fee` with `maker_fee` and `taker_fee` in Order model;
|
||||
- Update Entities for Market and Trade models in user API, Trade model in management API;
|
||||
- Update Trade Accounting with maker/taker_fee;
|
||||
- Update Trade_executor and Matching_engine with new Trade model;
|
||||
- Update Market seeds;
|
||||
- Specs for maker/taker_fee;
|
||||
|
||||
Trade model rework consist of next changes:
|
||||
- Update Trade model structure:
|
||||
- ask_id -> maker_order_id;
|
||||
- bid_id -> taker_order_id;
|
||||
- ask_member_id -> maker_id;
|
||||
- bid_member_id -> taker_id;
|
||||
- volume -> amount;
|
||||
- funds -> total;
|
||||
- drop trend;
|
||||
|
||||
### New Features ###
|
||||
|
||||
- [#2264](https://github.com/rubykube/peatio/pull/2264): Admin API module for tower ([mod](https://github.com/mod))
|
||||
|
||||
- Feature admin panel api for:
|
||||
|
||||
- Orders
|
||||
- Blockchains
|
||||
- Currencies
|
||||
- Markets
|
||||
- Wallets
|
||||
- Deposits
|
||||
- Withdraws
|
||||
- Trades
|
||||
- Operations
|
||||
- Members
|
||||
|
||||
Unify API doc files structure and naming.
|
||||
|
||||
- [#2321](https://github.com/rubykube/peatio/pull/2321): Trading Fee Schedule based on Member group ([ysv](https://github.com/ysv))
|
||||
|
||||
- Add FeeSchedule module;
|
||||
- Add FeeSchedule::TradingFee model;
|
||||
- FeeSchedule::TradingFee record selected with the next priorities:
|
||||
- both group and market_id match
|
||||
- group match
|
||||
- market_id match
|
||||
- both group and market_id are nil
|
||||
- default (zero fees)
|
||||
- Add Group member column;
|
||||
- Remove maker/taker_fee from Market model;
|
||||
- Add custom validator class PrecisionValidator for validate precisions for Order, TradingFee, Market models;
|
||||
- FeeSchedule::TradingFees seeding via rake task;
|
||||
|
||||
- [#2310](https://github.com/rubykube/peatio/pull/2310): Use Vault transit engine for storing Wallet & PaymentAddress sensitive data ([dnfd](https://github.com/dnfd))
|
||||
|
||||
- [#2325](https://github.com/rubykube/peatio/pull/2325): Integrate ability to create accounting Adjustments ([dnfd](https://github.com/dnfd))
|
||||
- Add Adjustment model;
|
||||
- Adjustement has pending, accepted and rejected states;
|
||||
- Only on accepted state creates operations;
|
||||
- Add API for get, create and accept/reject adjustments;
|
||||
- Adjustment creates a pair with asset and liabilty || revenue || expense;
|
||||
- Update user balance in case of creation liability after accepting adjustment;
|
||||
|
||||
Co-authored-by: mnaichuk <mnaichuk@heliostech.fr>
|
||||
Co-authored-by: dnfd <dfedorchenko@heliostech.fr>
|
||||
|
||||
- [#2347](https://github.com/rubykube/peatio/pull/2347) Beneficiaries model with ability to manage via user API ([mod](https://github.com/mod))
|
||||
|
||||
Add Beneficiary model which can store both fiat crypto beneficiary data. Custom beneficiary fields like country, account_number, bank_swift_code are stored in JSON format. Also beneficiary contains name, description & currency_id in string format.
|
||||
|
||||
On beneficiary creation pin generated and saved in DB user needs to activate beneficiary with pin sent by email. Create & update actions are published to RabbitMQ by Event API.
|
||||
|
||||
There are 3 states of beneficiary:
|
||||
- pending - requires activation with pin;
|
||||
- active - activated by user and can be used for withdrawal;
|
||||
- achieved - equal to removed except fact that admin can read it.
|
||||
|
||||
Beneficiary account API consists of 5 endpoints:
|
||||
- GET /beneficiaries - get paginated list of beneficiaries for user;
|
||||
- GET /beneficiaries/:id - get single beneficiary by id;
|
||||
- POST /beneficiaries - create beneficiary for user;
|
||||
- PATH /beneficiaries/:id/activate - activate beneficiary with pin;
|
||||
- DELETE /beneficiaries/:id - delete beneficiary (actually change state to archived).
|
||||
|
||||
Co-authored-by: ysv <ysavchuk@heliostech.fr>
|
||||
Co-authored-by: mod <lbellet@heliostech.fr>
|
||||
|
||||
- [#2355](https://github.com/rubykube/peatio/pull/2355): Integrate ability to withdraw both fiat & crypto with Beneficiary model ([ysv](https://github.com/ysv))
|
||||
|
||||
Since we can store Beneficiaries in peatio starting from #2347 now we can
|
||||
implement user withdraw API for both fiat & crypto currencies. Itmeans that in
|
||||
this patch we have replaced POST accounts/withdraw `rid` param with
|
||||
`beneficiary_id`. This change gives ability to use active beneficiaries for
|
||||
both fiat & crypto withdrawals.
|
||||
|
||||
`Beneficiary` is now exposed in Admin API as field of `Withdraw` so admin can
|
||||
validate it directly.
|
||||
|
||||
`beneficiary_id` foreign key was added to `Withdraw` model so now it has
|
||||
optional `belongs_to` association with `Beneficiary`.
|
||||
|
||||
Also this patch improves `Withdraw` `sum` & `amount` precision logic. Instead
|
||||
of rounding attributes on creation now attributes precision is validated on
|
||||
`Withdraw` creation.
|
||||
|
||||
This patch also adds additional validation for Beneficiary data attribute
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
- Add RevShare model. Add state to Trade [\#2283](https://github.com/rubykube/peatio/pull/2283) ([ysv](https://github.com/ysv))
|
||||
- Add GET API for Operations and Members [\#2285](https://github.com/rubykube/peatio/pull/2285) ([dnfd](https://github.com/dnfd))
|
||||
- Update peatio-ripple gem version [\#2298](https://github.com/rubykube/peatio/pull/2298) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update peatio-ripple gem version [\#2306](https://github.com/rubykube/peatio/pull/2306) ([ysv](https://github.com/ysv))
|
||||
- Update API doc files structure and naming [\#2305](https://github.com/rubykube/peatio/pull/2305) ([ysv](https://github.com/ysv))
|
||||
- Update peatio-ripple gem version [\#2304](https://github.com/rubykube/peatio/pull/2304) ([ysv](https://github.com/ysv))
|
||||
- Add parity wallet gataway and use it instead of peth. Deprecate peth [\#2295](https://github.com/rubykube/peatio/pull/2295) ([streetcrypto7](https://github.com/streetcrypto7))
|
||||
- Update management/transfers [\#2307](https://github.com/rubykube/peatio/pull/2307) ([dnfd](https://github.com/dnfd))
|
||||
- Drop step from blockchain model [\#2282](https://github.com/rubykube/peatio/pull/2282) ([shal](https://github.com/shal))
|
||||
- Change run Peatio::Application to Rails.application in config.ru [\#2316](https://github.com/rubykube/peatio/pull/2316) ([ysv](https://github.com/ysv))
|
||||
- Upgrade Transfer model. Add gross Revenue account [\#2301](https://github.com/rubykube/peatio/pull/2301) ([ysv](https://github.com/ysv))
|
||||
- Prepare management API for Revenue Share [\#2293](https://github.com/rubykube/peatio/pull/2293) ([shal](https://github.com/shal))
|
||||
- Update Admin API [\#2317](https://github.com/rubykube/peatio/pull/2317) ([dnfd](https://github.com/dnfd))
|
||||
- Feature: add gem for support dash [\#2338](https://github.com/rubykube/peatio/pull/2338) ([ymasiuk](https://github.com/ymasiuk))
|
||||
- Update API [\#2336](https://github.com/rubykube/peatio/pull/2336) ([dnfd](https://github.com/dnfd))
|
||||
- Use Faker::Blockchain::Bitcoin instead of Faker::Bitcoin [\#2343](https://github.com/rubykube/peatio/pull/2343) ([ysv](https://github.com/ysv))
|
||||
- Update specs for swagger [\#2340](https://github.com/rubykube/peatio/pull/2340) ([dnfd](https://github.com/dnfd))
|
||||
- Add endpoint to list all blockchain clients & provide access to disabled markets in Admin API [\#2339](https://github.com/rubykube/peatio/pull/2339) ([dnfd](https://github.com/dnfd))
|
||||
- Remove uid length limit in members table [\#2346](https://github.com/rubykube/peatio/pull/2346) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add Admin and Management API for TradingFees [\#2334](https://github.com/rubykube/peatio/pull/2334) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Minor Wallet Admin API fixes & improvements. Drop parent & nsig from Wallet [\#2348](https://github.com/rubykube/peatio/pull/2348) ([dnfd](https://github.com/dnfd))
|
||||
- Add uid, email field for withdrawal and deposits admin entities [\#2350](https://github.com/rubykube/peatio/pull/2350) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add public endpoint for trading\_fees [\#2353](https://github.com/rubykube/peatio/pull/2353) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add actions endpoints for Withdraw and Deposit Admin API [\#2351](https://github.com/rubykube/peatio/pull/2351) ([dnfd](https://github.com/dnfd))
|
||||
- Minor Transfer table updates [\#2356](https://github.com/rubykube/peatio/pull/2356) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add endpoint to select adjustment by ID [\#2354](https://github.com/rubykube/peatio/pull/2354) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add endpoint for create fiat deposit [\#2357](https://github.com/rubykube/peatio/pull/2357) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Add ability to change markets precision in Admin API [\#2361](https://github.com/rubykube/peatio/pull/2361) ([ysv](https://github.com/ysv))
|
||||
- Use grape entity for exposing & documenting market ticker [\#2365](https://github.com/rubykube/peatio/pull/2365) ([ysv](https://github.com/ysv))
|
||||
- Add details about fees in trade API [\#2363](https://github.com/rubykube/peatio/pull/2363) ([dnfd](https://github.com/dnfd))
|
||||
- Validate accounting on Transfer & Adjustment creation. Create account on fly if does not exist [\#2370](https://github.com/rubykube/peatio/pull/2370) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add endpoint to get currency by code to management API ([#2372](https://github.com/openware/peatio/issues/2372))
|
||||
- Reraise errors in #submit and #cancel methods ([#2375](https://github.com/openware/peatio/issues/2375))
|
||||
- OrderProcessor must process order cancel after TradeExecutor ([#2371](https://github.com/openware/peatio/issues/2371))
|
||||
- Add visible, deposit_enabled, withdrawal_enabled columns to Currency ([#2374](https://github.com/openware/peatio/issues/2374))
|
||||
- Update README.md
|
||||
- Update CI to build images with git sha for branches matching {fix,integration}/*
|
||||
- Update update sassc and ffi
|
||||
- Update websocket API documentation for peatio 2.4 ([#2505](https://github.com/openware/peatio/issues/2505))
|
||||
- Update irix and peatio-bitgo versions ([#2533](https://github.com/openware/peatio/issues/2533))
|
||||
- Update export task with data field for market ([#2513](https://github.com/openware/peatio/issues/2513))
|
||||
- Update irix version ([#2506](https://github.com/openware/peatio/issues/2506))
|
||||
- Update peatio plugins ([#2504](https://github.com/openware/peatio/issues/2504))
|
||||
- Update to Rails 5.2.4 ([#2466](https://github.com/openware/peatio/issues/2466))
|
||||
- Update Peatio API documentation ([#2477](https://github.com/openware/peatio/issues/2477))
|
||||
- Update roadmap.md
|
||||
- Update Order model for compatibility with Finex ([#2440](https://github.com/openware/peatio/issues/2440))
|
||||
- Update gem versions ([#2414](https://github.com/openware/peatio/issues/2414))
|
||||
- Update ruby to 2.6.5 for security reasons ([#2386](https://github.com/openware/peatio/issues/2386))
|
||||
- Support beneficiary_id in management API create withdraw ([#2378](https://github.com/openware/peatio/issues/2378))
|
||||
- Support beneficiary_id in management API create withdraw ([#2378](https://github.com/openware/peatio/issues/2378))
|
||||
- Tweak public-markets endpoint ([#2395](https://github.com/openware/peatio/issues/2395))
|
||||
|
||||
### Bug Fixes ###
|
||||
|
||||
- Update gendocs script [\#2300](https://github.com/rubykube/peatio/pull/2300) ([dnfd](https://github.com/dnfd))
|
||||
- Update gem versions to reduce vulnerabilities [\#2318](https://github.com/rubykube/peatio/pull/2318) ([snyk-bot](https://github.com/snyk-bot))
|
||||
- Fail ethereum withdrawal in case of fail status in blockchain [\#2302](https://github.com/rubykube/peatio/pull/2302) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Don't use validations for updating database in migrations [\#2324](https://github.com/rubykube/peatio/pull/2324) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add ability to bump & tag stable branches [\#2328](https://github.com/rubykube/peatio/pull/2328) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fail ethereum withdrawal in case of fail status in blockchain [\#2327](https://github.com/rubykube/peatio/pull/2327) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Rewrite validation for buy and sell order in trade\_executor [\#2335](https://github.com/rubykube/peatio/pull/2335) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Remove jq package from gendocs [\#2333](https://github.com/rubykube/peatio/pull/2333) ([dnfd](https://github.com/dnfd))
|
||||
- Add missing -y for jq install in bin/gendocs [\#2332](https://github.com/rubykube/peatio/pull/2332) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Use update\_attribute in migrations for skipping validations [\#2331](https://github.com/rubykube/peatio/pull/2331) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add email to withdraw & deposit event\_api payloads [\#2349](https://github.com/rubykube/peatio/pull/2349) ([shal](https://github.com/shal))
|
||||
- Minor Admin fixes for Blockchain, Order, Trade, Currency [\#2352](https://github.com/rubykube/peatio/pull/2352) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix 422 response on successful withdraw action [\#2358](https://github.com/rubykube/peatio/pull/2358) ([dnfd](https://github.com/dnfd))
|
||||
- Increase trading fees maker & taker precision to 6 digits [\#2360](https://github.com/rubykube/peatio/pull/2360) ([ysv](https://github.com/ysv))
|
||||
- Crash daemons on Mysql connection error [\#2367](https://github.com/rubykube/peatio/pull/2367) ([dnfd](https://github.com/dnfd))
|
||||
- Do not log full backtrace on order creation ([#2368](https://github.com/openware/peatio/issues/2368))
|
||||
122
docs/releases/2.4.0.md
Normal file
122
docs/releases/2.4.0.md
Normal file
@@ -0,0 +1,122 @@
|
||||
## Peatio 2.4.0 (March 23, 2020) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 2.4.0.
|
||||
|
||||
This release notes is must-read for migrating from older versions.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
- Remove deprecated amqp daemons [\#2451](https://github.com/openware/peatio/pull/2451) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
Deleted workers:
|
||||
* Pusher Market
|
||||
* Pusher Member
|
||||
|
||||
Moved EventApi and AMQP modules to lib folder.
|
||||
|
||||
- Record Trades and K-lines to InfluxDB [\#2441](https://github.com/openware/peatio/pull/2441) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
* Add InfluxDB client;
|
||||
* Add new AMQP daemon InfluxDB writer;
|
||||
* Rewrite Public Trade endpoint to return trades from influx;
|
||||
* Rewrite Public K-line endpoint to return k-lines from influx;
|
||||
* Rewrite k-line daemon;
|
||||
* Rewrite KlineService;
|
||||
* Update backend.yml;
|
||||
* Update drone.yml;
|
||||
* Update ./bin/setup;
|
||||
* Update daemons.god;
|
||||
|
||||
- Add CronJob Daemon for K-lines and Tickers [\#2485](https://github.com/openware/peatio/pull/2485) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add ability to read tickers from influx [\#2480](https://github.com/openware/peatio/pull/2480) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
* Add Cronjob daemon with Jobs::Cron::KLine, Jobs::Cron::Ticker jobs;
|
||||
* Remove MarketTicker, K, SlaveBook and GlobalState daemons;
|
||||
* Remove Global.rb;
|
||||
* Add TickersService and KLineSerivce;
|
||||
* Update API and WS API with new services.
|
||||
|
||||
### New Features ###
|
||||
|
||||
- Add Peatio Upstream worker. Add Opendax Upstream [\#2458](https://github.com/openware/peatio/pull/2458) ([mnaichuk](https://github.com/mnaichuk))
|
||||
* Introduce Upstream Worker;
|
||||
* Add encrypted data field to market model;
|
||||
* Upstream will initialize from market data:
|
||||
- {"upstream"=>{"driver"=>"opendax", "target"=>"btcusdt", "rest"=>"https://url", "websocket"=>"wss://url"}}
|
||||
* Add Upstream::Peatio::Opendax class;
|
||||
|
||||
- Incremental order-book [\#2400](https://github.com/openware/peatio/pull/2400) ([calj](https://github.com/calj))
|
||||
|
||||
This stream sends a snapshot of the order-book at the subscription time, then it sends increments. Volumes information in increments replace the previous values. If the volume is zero the price point should be removed from the order-book. Documentation for [incremental order-book](https://github.com/openware/peatio/blob/master/docs/api/websocket_api.md#order-book)
|
||||
|
||||
- Add ability to create deposits and confirm withdrawals through Webhooks. [\#2460](https://github.com/openware/peatio/pull/2460) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
Add Peatio Bitgo plugin. Documentation for [bitgo plugin](https://github.com/openware/peatio-contrib/tree/master/peatio-bitgo/docs)
|
||||
Add Peatio public Webhook endpoint for deposit and withdraw detection through Bitgo events.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
- Replace legacy authentication with jwt-rack [\#2450](https://github.com/openware/peatio/pull/2450) ([ysv](https://github.com/ysv))
|
||||
- Add default value for data market field [\#2553](https://github.com/openware/peatio/pull/2553) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Use scheduling in blockchain daemon to reflect config changes in DB [\#2552](https://github.com/openware/peatio/pull/2552) ([ysv](https://github.com/ysv))
|
||||
- Add docs about engines [\#2546](https://github.com/openware/peatio/pull/2546) ([dnfd](https://github.com/dnfd))
|
||||
- Update gems dependencies [\#2549](https://github.com/openware/peatio/pull/2549) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Delete encrypt for market data. Update upstream daemon [\#2543](https://github.com/openware/peatio/pull/2543) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add manager role [\#2540](https://github.com/openware/peatio/pull/2540) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add admin api for engines [\#2538](https://github.com/openware/peatio/pull/2538) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update peatio-core version [\#2536](https://github.com/openware/peatio/pull/2536) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update column type for data engines [\#2534](https://github.com/openware/peatio/pull/2534) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: add POST admin/blockchain/process\_block [\#2526](https://github.com/openware/peatio/pull/2526) ([ec](https://github.com/ec))
|
||||
- Enhancement: Improve deposit model. Add ability to collect through api [\#2510](https://github.com/openware/peatio/pull/2510) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Websocket documentation for peatio 2.4 [\#2505](https://github.com/openware/peatio/pull/2505) ([calj](https://github.com/calj))
|
||||
- Fix: Ability to save wallet secret on update [\#2501](https://github.com/openware/peatio/pull/2501) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Update irix and peatio-bitgo versions [\#2532](https://github.com/openware/peatio/pull/2532) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: Include post\_only order in market/depth [\#2531](https://github.com/openware/peatio/pull/2531) ([dnfd](https://github.com/dnfd))
|
||||
- Remove old helpers [\#2528](https://github.com/openware/peatio/pull/2528) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Return wallet balance in admin api [\#2522](https://github.com/openware/peatio/pull/2522) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: Alive check for a blockchain node to get the latest block [\#2521](https://github.com/openware/peatio/pull/2521) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Enhancement: Add ability to fail withdraw from skipped state [\#2519](https://github.com/openware/peatio/pull/2519) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Feature: Expose deposit address && beneficiaries for admin endpoints [\#2518](https://github.com/openware/peatio/pull/2518) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Remove LOCKING\_BUFFER\_FACTOR from buy market order [\#2509](https://github.com/openware/peatio/pull/2509) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add feature to search currency by code or name in /public/currencies [\#2516](https://github.com/openware/peatio/pull/2516) ([ysv](https://github.com/ysv))
|
||||
- Enhancement: Add Kaigara installation to the Dockerfile [\#2514](https://github.com/openware/peatio/pull/2514) ([vshatravenko](https://github.com/vshatravenko))
|
||||
- Update export task with data field for market [\#2513](https://github.com/openware/peatio/pull/2513) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update peatio plugins [\#2503](https://github.com/openware/peatio/pull/2503) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update websocket API documentation for peatio 2.4 [\#2502](https://github.com/openware/peatio/pull/2502) ([calj](https://github.com/calj))
|
||||
- Enhancement: Improve deposits, withdrawals and transactions filters [\#2492](https://github.com/openware/peatio/pull/2492) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Redeploy on master.devkube.com [\#2491](https://github.com/openware/peatio/pull/2491) ([dpatsora](https://github.com/dpatsora))
|
||||
- Features and improvements pack [\#2490](https://github.com/openware/peatio/pull/2490) ([akulakovaa](https://github.com/akulakovaa))
|
||||
- Setup redeploy on devkube [\#2489](https://github.com/openware/peatio/pull/2489) ([dpatsora](https://github.com/dpatsora))
|
||||
- Feature: add POST management/currencies/list API endpoint [\#2487](https://github.com/openware/peatio/pull/2487) ([ec](https://github.com/ec))
|
||||
- Add Trading docs [\#2478](https://github.com/openware/peatio/pull/2478) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update Peatio API documentation [\#2477](https://github.com/openware/peatio/pull/2477) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Improve API filtering for order history [\#2476](https://github.com/openware/peatio/pull/2476) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Prepare doc for Peatio v2.4 migration [\#2475](https://github.com/openware/peatio/pull/2475) ([dpatsora](https://github.com/dpatsora))
|
||||
- Expose UUID [\#2473](https://github.com/openware/peatio/pull/2473) ([dnfd](https://github.com/dnfd))
|
||||
- Enhancement: Delete total header from admin API endpoints [\#2468](https://github.com/openware/peatio/pull/2468) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Update to Rails 5.2.4 [\#2466](https://github.com/openware/peatio/pull/2466) ([mod](https://github.com/mod))
|
||||
- Enhancement: Add validation for trading fees, blockchains, transfers [\#2464](https://github.com/openware/peatio/pull/2464) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Add filters by deposit/withdraw states [\#2463](https://github.com/openware/peatio/pull/2463) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Add finex as third party engine support. Add to\_reject withdrawal state. Add maker role [\#2459](https://github.com/openware/peatio/pull/2459) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
### Bug Fixes ###
|
||||
|
||||
- Skip pending ERC-20 transaction in blockchain daemon [\#2658](https://github.com/openware/peatio/pull/2658) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Avoid to use join in admin API for tables with a large amount of data. Change Kaminari usage in pagination [\#2602](https://github.com/openware/peatio/pull/2602)
|
||||
- Fix: Remove nested SQL transactions in blockchain daemon. Update deposit model [\#2548](https://github.com/openware/peatio/pull/2548) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Update UID and GID to the app user for all project files [\#2499](https://github.com/openware/peatio/pull/2499) ([apaulb](https://github.com/apaulb))
|
||||
- Fix file permissions [\#2496](https://github.com/openware/peatio/pull/2496) ([apaulb](https://github.com/apaulb))
|
||||
- Fix: Add docs && changelog generation on master branch [\#2515](https://github.com/openware/peatio/pull/2515) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix: add ability to cancel order by uuid [\#2508](https://github.com/openware/peatio/pull/2508) ([mikoim](https://github.com/mikoim))
|
||||
- Fix: Add created\_at to transaction entity [\#2498](https://github.com/openware/peatio/pull/2498) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- \[Snyk\] Fix for 1 vulnerabilities [\#2494](https://github.com/openware/peatio/pull/2494) ([snyk-bot](https://github.com/snyk-bot))
|
||||
- Fix: Clean rails built in warnings [\#2483](https://github.com/openware/peatio/pull/2483) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix ./bin/setup [\#2482](https://github.com/openware/peatio/pull/2482) ([akulakovaa](https://github.com/akulakovaa))
|
||||
- Fix: add ability to search order by uuid [\#2481](https://github.com/openware/peatio/pull/2481) ([akulakovaa](https://github.com/akulakovaa))
|
||||
- Initialize Blockchain and Wallet adapters in service creation. Updat… [\#2474](https://github.com/openware/peatio/pull/2474) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Collect deposits after sql transaction [\#2471](https://github.com/openware/peatio/pull/2471) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Publish events to specific exchange [\#2470](https://github.com/openware/peatio/pull/2470) ([dnfd](https://github.com/dnfd))
|
||||
- Fix: Change beneficiary address validation [\#2462](https://github.com/openware/peatio/pull/2462) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix: Add report exception to screen for OrderProcessor initialize [\#2453](https://github.com/openware/peatio/pull/2453) ([mnaichuk](https://github.com/mnaichuk))
|
||||
115
docs/releases/2.5.0.md
Normal file
115
docs/releases/2.5.0.md
Normal file
@@ -0,0 +1,115 @@
|
||||
## Peatio 2.5.0 (August 7, 2020) ##
|
||||
|
||||
### Overview ###
|
||||
|
||||
We are pleased to present Peatio Open Source 2.5.0.
|
||||
|
||||
This release notes is must-read for migrating from older versions.
|
||||
|
||||
### Breaking changes ###
|
||||
|
||||
- Rewrite deposit collection flow [\#2636](https://github.com/openware/peatio/pull/2636) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
* Remove amqp publish and add new deposit state
|
||||
|
||||
* Remove amqp deposit workers (deposit_collection and deposit_collections_fees daemons)
|
||||
|
||||
* Introduce SQL based deposit daemon
|
||||
|
||||
* Add deposit collection flow documentation
|
||||
|
||||
Documentation for [new deposit collection flow](https://github.com/openware/peatio/blob/master/docs/peatio/deposits_flow.md)
|
||||
|
||||
- Remove old Peatio admin panel [\#2523](https://github.com/openware/peatio/pull/2523) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
### New Features ###
|
||||
|
||||
- Feature: PnL calculation for traders ([calj](https://github.com/calj))
|
||||
* Uses deposits, withdrawals, trades, adjustments and simple transfers
|
||||
* Supports multi-level conversions
|
||||
|
||||
Increase time precision to milliseconds for deposits, withdrawals, trades and adjustments
|
||||
Documentation for [PNL calculation](https://github.com/openware/peatio/blob/master/docs/peatio/pnl_calculation.md)
|
||||
|
||||
- Move data from main database to archive database [\#2632](https://github.com/openware/peatio/pull/2632) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
* Add stored procedure execution from rake task
|
||||
|
||||
* Delete old cancelled orders without trades
|
||||
|
||||
* Add copy orders to the archive database
|
||||
|
||||
* Close orders older than MAX_AGE
|
||||
|
||||
Documentation list:
|
||||
1. [Order close job](https://github.com/openware/peatio/blob/master/docs/tasks/order_close.md)
|
||||
2. [Order archive job](https://github.com/openware/peatio/blob/master/docs/tasks/order_archive.md)
|
||||
3. [Order liabilities compact job](https://github.com/openware/peatio/blob/master/docs/tasks/order_liabilities_compact.md)
|
||||
|
||||
- AML integration [\#2589](https://github.com/openware/peatio/pull/2589) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
* Add AMLplugin system
|
||||
* Add AML functions for Beneficiary model
|
||||
* Store deposits source addresses
|
||||
* Add admin beneficiary api
|
||||
* Add refund model
|
||||
|
||||
- Add peatio electrum gem [\#2554](https://github.com/openware/peatio/pull/2554) ([calj](https://github.com/calj))
|
||||
|
||||
- Add wallet balances. Add cron job for wallet balances update ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
Add CronJob for periodic call and save platform wallets balances to the DB. Balances are updated every minute.
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
- Add possibility to import and export Operation::Accounts [\#2721](https://github.com/openware/peatio/pull/2721) ([dpatsora](https://github.com/dpatsora))
|
||||
- Add export:configs Rake task \(\#2693\) [\#2706](https://github.com/openware/peatio/pull/2706) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Optimize PnL main query [\#2688](https://github.com/openware/peatio/pull/2688) ([calj](https://github.com/calj))
|
||||
- Trigger custom image build [\#2695](https://github.com/openware/peatio/pull/2695) ([josadcha](https://github.com/josadcha))
|
||||
- Update CI to build images for branches matching {fix,integration}/\* [\#2677](https://github.com/openware/peatio/pull/2677) ([calj](https://github.com/calj))
|
||||
- Update sassc & ffi dependencies [\#2673](https://github.com/openware/peatio/pull/2673) ([calj](https://github.com/calj))
|
||||
- Add from\_addresses on deposit creation [\#2657](https://github.com/openware/peatio/pull/2657) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Enhancement: Filter trade by type && expose received_amount ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Accounting: add member_id in platform revenues [\#2607](https://github.com/openware/peatio/pull/2607) ([calj](https://github.com/calj)
|
||||
- Add jobs table [\#2649](https://github.com/openware/peatio/pull/2649) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add rake task for distribution [\#2631](https://github.com/openware/peatio/pull/2631) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Expose maker & taker fee for order entity (#2627) ([vpetrusenko](https://github.com/vpetrusenko))
|
||||
- Add caching for the most used public endpoints [\#2625](https://github.com/openware/peatio/pull/2625) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add to Currency model description, homepage and price [\#2601](https://github.com/openware/peatio/pull/2601) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: Add ability to skip deposit collection on hot wallet [\#2613](https://github.com/openware/peatio/pull/2613) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Enhancement: add pagination to POST management/accounts/balances [\#2603](https://github.com/openware/peatio/pull/2603) ([ec](https://github.com/ec))
|
||||
- Bump peatio-electrum plugin to 2.6.1 [\#2592](https://github.com/openware/peatio/pull/2592) ([calj](https://github.com/calj))
|
||||
- \[Snyk\] Security upgrade kaminari from 1.1.1 to 1.2.1 [\#2586](https://github.com/openware/peatio/pull/2586) ([snyk-bot](https://github.com/snyk-bot))
|
||||
- Feature: Add ability to resend beneficiary pin [\#2591](https://github.com/openware/peatio/pull/2591) ([dpatsora](https://github.com/dpatsora))
|
||||
- Enhancement: add management api to retrieve non-zero balances [\#2570](https://github.com/openware/peatio/pull/2570) ([ec](https://github.com/ec))
|
||||
- Add ability to set user rate limit [\#2580](https://github.com/openware/peatio/pull/2580) ([Kohelbekker](https://github.com/Kohelbekker))
|
||||
- Change Influxdb configuration names [\#2573](https://github.com/openware/peatio/pull/2573) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- \[Snyk\] Fix for 5 vulnerabilities [\#2563](https://github.com/openware/peatio/pull/2563) ([snyk-bot](https://github.com/snyk-bot))
|
||||
- Improve market states for api [\#2572](https://github.com/openware/peatio/pull/2572) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add export rake task for engines [\#2571](https://github.com/openware/peatio/pull/2571) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: Add filters for currencies, markets and wallets [\#2567](https://github.com/openware/peatio/pull/2567) ([dpatsora](https://github.com/dpatsora))
|
||||
- Improve orders and trades filtes. Add data field in engine admin API [\#2565](https://github.com/openware/peatio/pull/2565) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update irix version [\#2561](https://github.com/openware/peatio/pull/2561) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: Add Management API for beneficiaries [\#2559](https://github.com/openware/peatio/pull/2559) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Misc improvements [\#2556](https://github.com/openware/peatio/pull/2556) ([calj](https://github.com/calj))
|
||||
- Delete encrypt for market data. Update upstream daemon [\#2543](https://github.com/openware/peatio/pull/2543) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Feature: Add user portfolio API module [\#2537](https://github.com/openware/peatio/pull/2537) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
### Bug Fixes ###
|
||||
|
||||
- Update peatio-bitgo version. Change rid length for withdraw [\#2668](https://github.com/openware/peatio/pull/2668) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix wallet balance parse in the daemons [\#2666](https://github.com/openware/peatio/pull/2666) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Skip pending ERC-20 transaction in blockchain daemon [\#2659](https://github.com/openware/peatio/pull/2659) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Remove inqury from TradingFee model ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix format function in TickersJob ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Remove date parsing in api/v2/public/version [\#2623](https://github.com/openware/peatio/pull/2623) ([calj](https://github.com/calj))
|
||||
- Fix secret replace in deposit collection [\#2620](https://github.com/openware/peatio/pull/2620) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update configuration for database pool [\#2619](https://github.com/openware/peatio/pull/2619) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add symbolize keys to WalletService init. Update wallet templates [\#2616](https://github.com/openware/peatio/pull/2616) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix versionning generation in CI [\#2604](https://github.com/openware/peatio/pull/2604) ([calj](https://github.com/calj))
|
||||
- Fix: Bitgo address generation [\#2608](https://github.com/openware/peatio/pull/2608) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix: Update error handling for trading\_fee api [\#2595](https://github.com/openware/peatio/pull/2595) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Do not expose engine data in admin api [\#2584](https://github.com/openware/peatio/pull/2584) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
- Fix: Avoid to use join in admin API for tables with a large amount of data. Change Kaminari usage in pagination [\#2602](https://github.com/openware/peatio/pull/2602) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix market migration with existing data [\#2555](https://github.com/openware/peatio/pull/2555) ([mnaichuk](https://github.com/mnaichuk))
|
||||
155
docs/releases/2.6.0.md
Normal file
155
docs/releases/2.6.0.md
Normal file
@@ -0,0 +1,155 @@
|
||||
## 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 ###
|
||||
|
||||
- Global Withdraw Limits [\#2670](https://github.com/openware/peatio/pull/2670) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
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.
|
||||
|
||||
- Feature: Implement adaptive gas\_price setting [\#2684](https://github.com/openware/peatio/pull/2684) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
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.
|
||||
|
||||
- Feature: Unify deposit addresses for ETH & ERC20 tokens [\#2575](https://github.com/openware/peatio/pull/2575) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
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 [\#2702](https://github.com/openware/peatio/pull/2702) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
Encrypt Beneficiary `data` field using vault transit. The migration will automatically insert data for existing beneficiaries.
|
||||
|
||||
- Feature: Add user permissions [\#2730](https://github.com/openware/peatio/pull/2730) ([chumaknadya](https://github.com/chumaknadya))
|
||||
|
||||
Introduce permissions for users with `cancan` based on the YAML file. Config [example](https://github.com/openware/peatio/blob/master/config/abilities.yml)
|
||||
|
||||
- Feature: Introduce yaml based admin permissions in peatio [\#2643](https://github.com/openware/peatio/pull/2643) ([chumaknadya](https://github.com/chumaknadya))
|
||||
|
||||
Introduce permissions for admin endpoints with `cancan` based on the YAML file. Config [example](https://github.com/openware/peatio/blob/master/config/abilities.yml)
|
||||
|
||||
### New Features ###
|
||||
|
||||
- PostgreSQL support [\#2714](https://github.com/openware/peatio/pull/2714) ([calj](https://github.com/calj))
|
||||
- Add the support of MariaDB ([calj](https://github.com/calj))
|
||||
|
||||
Databases documentation [postgress](https://github.com/openware/peatio/blob/master/docs/databases/postgresql.md) [mariadb](https://github.com/openware/peatio/blob/master/docs/databases/mariadb.md)
|
||||
|
||||
- Feature: Add Opendax wallet plugin [\#2735](https://github.com/openware/peatio/pull/2735) ([chumaknadya](https://github.com/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](https://github.com/openware/peatio/blob/master/docs/peatio/opendax_wallet_plugin.md)
|
||||
Co-authored-by: Maksym Naichuk <mnaichuk@heliostech.fr>
|
||||
|
||||
- Feature: Add ability to cancel orders on upstream [\#2745](https://github.com/openware/peatio/pull/2745) ([dpatsora](https://github.com/dpatsora))
|
||||
|
||||
We allow the cancelation of Finex orders through peatio Admin | User API. It will process cancel using AMQP.
|
||||
|
||||
- Add Gnosis base plugin [\#2744](https://github.com/openware/peatio/pull/2744) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
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](https://gnosis-safe.io/)
|
||||
|
||||
- Feature: Implement smart position changing for market and currencies [\#2682](https://github.com/openware/peatio/pull/2682) ([chumaknadya](https://github.com/chumaknadya))
|
||||
|
||||
We introduced smart position changing for markets and currencies (reorder all records in case of insert, etc.). More info [here](https://github.com/openware/peatio/blob/master/app/models/helpers/reorder_position.rb)
|
||||
|
||||
|
||||
- Feature: limit number of currencies/markets [\#2660](https://github.com/openware/peatio/pull/2660) ([dinesh-skyach](https://github.com/dinesh-skyach))
|
||||
|
||||
Now you will be able to limit the number of currencies using ENV vars: MAX_CURRENCIES, MAX_MARKETS.
|
||||
|
||||
- Introduce CoinGecko API Endpoints [\#2698](https://github.com/openware/peatio/pull/2698) ([dpatsora](https://github.com/dpatsora))
|
||||
|
||||
- Introduce CMC API Endpoints [\#2696](https://github.com/openware/peatio/pull/2696) ([chumaknadya](https://github.com/chumaknadya))
|
||||
|
||||
### Enhancements ###
|
||||
|
||||
- Mask beneficiary account\_number on API level [\#2708](https://github.com/openware/peatio/pull/2708) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Add transfer\_type in deposit and withdraw [\#2664](https://github.com/openware/peatio/pull/2664) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add rake task to fetch currency current price [\#2680](https://github.com/openware/peatio/pull/2680) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Create member via Management API [\#2681](https://github.com/openware/peatio/pull/2681) ([dpatsora](https://github.com/dpatsora))
|
||||
- Allow user to change the email [\#2750](https://github.com/openware/peatio/pull/2750) ([dpatsora](https://github.com/dpatsora))
|
||||
- Define token type in currency model [\#2672](https://github.com/openware/peatio/pull/2672) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Skip deposit fee collection transaction [\#2762](https://github.com/openware/peatio/pull/2762) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Delete symbol from currency table [\#2676](https://github.com/openware/peatio/pull/2676) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Enhancement: Return deposit address in account entity [\#2761](https://github.com/openware/peatio/pull/2761) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add the ability to exclude users by role from PnL calculation [\#2760](https://github.com/openware/peatio/pull/2760) ([calj](https://github.com/calj))
|
||||
- Update drone config [\#2758](https://github.com/openware/peatio/pull/2758) ([calj](https://github.com/calj))
|
||||
- Fix specs for PostgreSQL [\#2742](https://github.com/openware/peatio/pull/2742) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Enhancement: Generate wallet settings on creation [\#2741](https://github.com/openware/peatio/pull/2741) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Enhancement: Update withdraw limits logic [\#2740](https://github.com/openware/peatio/pull/2740) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Add matching exchange for trading daemons. Delete deprecated amqp configs [\#2733](https://github.com/openware/peatio/pull/2733) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Enhancement: Allow dot in currency code for API endpoints [\#2731](https://github.com/openware/peatio/pull/2731) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Enhancement: Disable WLs if there are no in DB or zero limits [\#2724](https://github.com/openware/peatio/pull/2724) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Enhancement: Add possibility to import and export Operation::Accounts [\#2720](https://github.com/openware/peatio/pull/2720) ([dpatsora](https://github.com/dpatsora))
|
||||
- Update vault policies documentation [\#2712](https://github.com/openware/peatio/pull/2712) ([calj](https://github.com/calj))
|
||||
- Add separate user and password for archive DB [\#2711](https://github.com/openware/peatio/pull/2711) ([dnfd](https://github.com/dnfd))
|
||||
- Update dependencies [\#2710](https://github.com/openware/peatio/pull/2710) ([calj](https://github.com/calj))
|
||||
- Optimize PnL main query [\#2699](https://github.com/openware/peatio/pull/2699) ([calj](https://github.com/calj))
|
||||
- Enhancement: Add export:configs Rake task [\#2693](https://github.com/openware/peatio/pull/2693) ([vshatravenko](https://github.com/vshatravenko))
|
||||
- Enhancement: Add import:configs Rake task [\#2692](https://github.com/openware/peatio/pull/2692) ([vshatravenko](https://github.com/vshatravenko))
|
||||
- Enhancement: trigger custom image build [\#2691](https://github.com/openware/peatio/pull/2691) ([josadcha](https://github.com/josadcha))
|
||||
- Enhancement: add admin currencies fetch filters [\#2678](https://github.com/openware/peatio/pull/2678) ([oyershov](https://github.com/oyershov))
|
||||
- Enhancement: Delete symbol from currency table [\#2676](https://github.com/openware/peatio/pull/2676) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Add rake task for load trades and build k-lines. Update 2-4 migration documentation [\#2675](https://github.com/openware/peatio/pull/2675) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update CI to build images for branches matching {fix,integration}/\* [\#2674](https://github.com/openware/peatio/pull/2674) ([calj](https://github.com/calj))
|
||||
- Enhancement: Add ability to create market by engine name [\#2671](https://github.com/openware/peatio/pull/2671) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Update peatio-bitgo version. Change rid length for withdraw [\#2669](https://github.com/openware/peatio/pull/2669) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Improve Engines and Markets seed [\#2665](https://github.com/openware/peatio/pull/2665) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Speedup tests execution [\#2661](https://github.com/openware/peatio/pull/2661) ([calj](https://github.com/calj))- Fix: Add from\_addresses on deposit creation [\#2656](https://github.com/openware/peatio/pull/2656) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Renew of vault token with ENV. Remove sensitive data from admin entities [\#2568](https://github.com/openware/peatio/pull/2568) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Improve vault support [\#2544](https://github.com/openware/peatio/pull/2544) ([mnaichuk](https://github.com/mnaichuk))
|
||||
|
||||
|
||||
### Bug Fixes ###
|
||||
|
||||
- Remove market creation validation for unvisible market [\#2765](https://github.com/openware/peatio/pull/2765) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Update currency price field [\#2756](https://github.com/openware/peatio/pull/2756) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: tx\[input\] fetch [\#2746](https://github.com/openware/peatio/pull/2746) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Add ability to configure wallet features from settings [\#2738](https://github.com/openware/peatio/pull/2738) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Abilities for user permissions [\#2736](https://github.com/openware/peatio/pull/2736) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix: Dont mask beneficiary account number on admin endpoints [\#2729](https://github.com/openware/peatio/pull/2729) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Update WalletService trigger\_webhook\_event method [\#2727](https://github.com/openware/peatio/pull/2727) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Add ability to update wallet settings [\#2725](https://github.com/openware/peatio/pull/2725) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix: Remove partial wallet settings update [\#2722](https://github.com/openware/peatio/pull/2722) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix InfluxDB sharding spec [\#2716](https://github.com/openware/peatio/pull/2716) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Add error message for adjustment creation if user balance is insufficient [\#2715](https://github.com/openware/peatio/pull/2715) ([Kohelbekker](https://github.com/Kohelbekker))
|
||||
- Fix: do not fail on start if VAULT\_TOKEN is unset [\#2709](https://github.com/openware/peatio/pull/2709) ([calj](https://github.com/calj))
|
||||
- Update vault rails gem. Fix update wallet params [\#2707](https://github.com/openware/peatio/pull/2707) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Update import/export rake tasks for payment\_addresses [\#2703](https://github.com/openware/peatio/pull/2703) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Remove uri validation from wallet model [\#2700](https://github.com/openware/peatio/pull/2700) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix database migration for MariaDB [\#2694](https://github.com/openware/peatio/pull/2694) ([calj](https://github.com/calj))
|
||||
- Fix: Wallet links update. Deposit spread wallet recalculation [\#2687](https://github.com/openware/peatio/pull/2687) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix: Add wallet link && fix blockchain\_key on currency creation [\#2686](https://github.com/openware/peatio/pull/2686) ([chumaknadya](https://github.com/chumaknadya))
|
||||
- Fix: Update spread deposit with currency price [\#2685](https://github.com/openware/peatio/pull/2685) ([mnaichuk](https://github.com/mnaichuk))
|
||||
- Fix wallet load\_balance method. Update WalletBalances job [\#2667](https://github.com/openware/peatio/pull/2667) ([mnaichuk](https://github.com/mnaichuk))
|
||||
3
docs/releases/PREAMBLE.md
Normal file
3
docs/releases/PREAMBLE.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Peatio releases
|
||||
|
||||
**Peatio respects a modified version of [SemVer](http://semver.org), similar to the Ruby on Rails project.**
|
||||
Reference in New Issue
Block a user