Changelog
Stable DSS builds are tracked on the dss-stable
branch with tags like dss-v1.3.0
.
Release procedure
- Create preparatory pull request (PR) into
main
branch ofeconia
repo (like #653).- Rebuild REST API docs.
- Bump changelog.
- Add new pull requests since last release:
- From
econia
repo. - From processor submodule.
- From
- Note if a hot upgrade is possible relative to the last release.
- Verify all new links by manually following them on a live local docs build.
- Run
mdformat
on changelog.
- Add new pull requests since last release:
- Tag
main
with an annotated release candidate tag like dss-v2.1.0-rc.1. - Merge
main
intodss-stable
. - Push annotated tag to head of
dss-stable
.
v2.5.0 (hot upgradable)
Internal
- Optimize enumerated volume calculation to improve idling performance (#799).
- Add index to speed up querying orders by
user
andmarket_id
(#800). - Add index to speed up querying orders by
order_id
(#801). - Add maximum time limit for PostgREST queries (#803).
v2.4.0 (hot upgradable)
Added
- Transaction version field inside levels MQTT events (#792).
- Timestamp of last processed transaction in
/data_status
endpoint (#796).
Fixed
- Updated the
time
crate to fix DSS docker compilation (#793).
v2.3.0 (hot upgradable)
Fixed
- Fix inaccurate data in
/rpc/volume_history
endpoint (#778). - Improve performance of daily rolling volume history indexing (#780).
- Fix coins pipeline not working for coins which have an address starting with
0x0
(#788).
Internal
- Update processor submodule to include upstream updates (#783, #786, Processor #31).
v2.2.0 (hot upgradable)
Changed
Fixed
/tickers
endpointbase_volume_nominal
field (#761)./tickers
endpointprice
field (#766).- fixed nominal issues when tickers isn't 1 (#767).
- fixed potential duplicates in
daily_rolling_volume_history
(#765).
Internal
- Added dynamic batch sizing to avoid crashes during high usage (#762).
- Updated Rust dependencies (#764).
- Optimize daily volume calculations wrapped query (#768).
- Fork base, to include upstream processor changes (#775, Processor #27).
v2.1.0 (hot upgradable)
Added
- Price level events over MQTT (disabled by default, enable by adding
MQTT_PRICE_LEVELS=yes
, seesrc/docker/example.env
) (#753). /tickers
endpoint optimizations (#729).- Suspend and resume functionality for the DSS when deployed on GCP (#736).
- More details in aggregator logging (#738).
- Default support for the
all
liquidity group on all markets (#728).
Changed
- Fork base, to include upstream processor changes (#725, #744, Processor #24).
Fixed
/tickers
endpointbase_volume_nominal
andquote_volume_nominal
fields (#746, #749).- Balance reporting for market account handles starting with
0x0
(#732, Processor #25). - Liquidity calculation logic (#730).
Deprecated
- Market registration pipeline, an unused development stub that counted markets registered per day (#727).
v2.0.1 (hot upgradable)
Fixed
- MQTT order ID rounding (#719).
Added
v2.0.0
Added
/fees
endpoint andget_market_cumulative_fees
function (#693)./prices
endpoint (#697)./spreads
endpoint (#700).base_volume_nominal
andquote_volume_nominal
fields in/tickers
endpoint (#705).- MQTT support (#702).
/fees_24h
endpoint (#708).- Assorted Grafana configurations (#709, #711).
Fixed
- Empty transaction panics introduced by upstream gRPC changes (processor #23, #710).
- Quote escaping in Terraform scripts (#704, #706).
Changed
- Restructure Docker compose configuration files (#699, #701, #702).
- Refactor liquidity calculations with groups, less granularity, for performance (#703, #707).
Deprecated
v1.6.1
Fixed
- Processing of events that are not a struct type (#694, processor #22).
v1.6.0
Added
- Assorted CoinGecko endpoints (#675).
- Assorted TVL endpoints (#670, #674).
- Price conversion endpoint (#672).
- Assorted volume endpoints (#669, #682).
- Grafana annotation support (#667).
Changed
- Optimize
/user_balances
queries (#685, #688). - Allow
/coins
endpoint to be queried from assorted PostgreSQL roles (#687, #688). - Reduce aggregator memory consumption via batched operations (#688, #689).
- Make rolling volume a default pipeline (#683, #684).
v1.5.0
Added
- Optional rolling volume pipeline (#658, #663).
- Global order history snapshot pipeline (#658, #664).
- Health check endpoints (#651).
- Fees in
/user_history
endpoint (#650). - Hot restart support (#657, #659).
- CI/CD Terraform project with walkthrough (#657).
- Automatic schema reloading for PostgREST (#661).
- Demo Grafana configuration (#657).
Changed
v1.4.0
Added
- Add coins pipeline with
APTOS_NETWORK
environment variable, add coin fields to/markets
endpoint (#624, #625). - Add
/user_balances
endpoint (#641). - Force local Docker compose services to wait for
diesel
completion (#644, #648). - Function for getting
/markets
endpoint info when querying/user_balances
endpoint (#645). - Retry mechanism for serialized PostgreSQL transaction failure (#643, Processor #21).
- Sanitize event type address in processor (Processor #19, Processor #20).
Fixed
- Reverse migrations (#638).
Changed
- Refactor aggregator Dockerfile for
APTOS_NETWORK
environment variable, multi-stage build (#625).
v1.3.0
Added
- Add materialized view support for 24hr market price/volume fields.
- Add assorted market price/volume fields to
/markets
endpoint. - Incorporate average execution price as a field in
/orders
endpoint.
v1.2.0
Breaking changes
- Remove
/{limit,market,swap}_orders
endpoints. - Rename
side
todirection
in/price_levels
.
Important changes
- Add all fields from
/{limit,market,swap}_orders
to/orders
. N/A fields are null. - Add
average_execution_price
as a field that is always returned. It is not needed to explicitly request it on each request.
Misc
- Improve overall performance.