The current release is mostly focused to solve different edge cases bottlenecks for the main indexer (realtime/catchup) and contains variouts fixes for API v2 as well as speedup of CSV export.
๐ environment variables introduced:
EXCHANGE_RATES_COINMARKETCAP_COIN_ID- CoinMarketCap exact coin id in order to fetch market cap, when CMC source is used.ETHEREUM_JSONRPC_HTTP_HEADERS- Custom headers are now supported for JSON RPC endpoint in form of json object, example:{"x-api-key": "nbvkhadvnbkdfav", "x-id": "ndjkfvndfkjv"}.
โ ๏ธ This release contains creation of index on blocks table for the sake of speedup CSV export. Please expect a relatively short downtime.
โ ๏ธ Starting from this release there is a limit of 10,000 rows for CSV export is introduced. This is the maximum number of rows that can be exported at once.
๐ ### Features
- #7970 - Search improvements: add sorting
- #7771 - CSV export: speed up
- #7962 - Allow indicate CMC id of the coin through env var
- #7946 - API v2 rate limit: Put token to cookies & change /api/v2/key method
- #7888 - Add token balances info to watchlist address response
- #7898 - Add possibility to add extra headers with JSON RPC URL
- #7836 - Improve unverified email flow
- #7784 - Search improvements: Add new fields, light refactoring
- #7811 - Filter addresses before insertion
- #7895 - API v2: Add sorting to tokens page
- #7859 - Add TokenTotalSupplyUpdater
- #7873 - Chunk realtime balances requests
- #7927 - Delete token balances only for blocks that lost consensus
- #7947 - Improve locks acquiring
๐ ๏ธ ### Fixes
- #7852 - Token balances refactoring & fixes
- #7872 - Fix pending gas price in pending tx
- #7875 - Fix twin compiler version
- #7825 - Fix nginx config for the new frontend websockets
- #7772 - Fix parsing of database password period(s)
- #7803 - Fix additional sources and interfaces, save names for vyper contracts
- #7758 - Remove limit for configurable fetchers
- #7764 - Fix missing ranges insertion and deletion logic
- #7843 - Fix created_contract_code_indexed_at updating
- #7855 - Handle internal transactions unique_violation
- #7899 - Fix catchup numbers_to_ranges function
- #7951 - Fix TX url in email notifications on mainnet
๐งน ### Chore
- #7963 - Op Stack: ignore depositNonce
- #7954 - Enhance Account Explorer.Account.Notifier.Email module tests
- #7950 - Add GA CI for Eth Goerli chain
- #7934, #7936 - Explicitly set consensus == true in queries (convenient for search), remove logger requirements, where it is not used anymore
- #7901 - Fix Docker image build
- #7890, #7918 - Resolve warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead
- #7863 - Add max_age for account sessions
- #7841 - CORS setup for docker-compose config with new frontend
- #7832, #7891 - API v2: Add block_number, block_hash to logs
- #7789 - Fix test warnings; Fix name of
MICROSERVICE_ETH_BYTECODE_DB_INTERVAL_BETWEEN_LOOKUPSenv variable - #7819 - Add logging for unknown error verification result
- #7781 - Add
/api/v1/health/livenessand/api/v1/health/readiness
Dependencies version bumps
- #7759 - Bump sass from 1.63.4 to 1.63.5 in /apps/block_scout_web/assets
- #7760 - Bump @amplitude/analytics-browser from 2.0.0 to 2.0.1 in /apps/block_scout_web/assets
- #7762 - Bump webpack from 5.87.0 to 5.88.0 in /apps/block_scout_web/assets
- #7769 - Bump sass from 1.63.5 to 1.63.6 in /apps/block_scout_web/assets
- #7805 - Bump ssl_verify_fun from 1.1.6 to 1.1.7
- #7812 - Bump webpack from 5.88.0 to 5.88.1 in /apps/block_scout_web/assets
- #7770 - Bump @amplitude/analytics-browser from 2.0.1 to 2.1.0 in /apps/block_scout_web/assets
- #7821 - Bump absinthe from 1.7.1 to 1.7.3
- #7823 - Bump @amplitude/analytics-browser from 2.1.0 to 2.1.1 in /apps/block_scout_web/assets
- #7838 - Bump gettext from 0.22.2 to 0.22.3
- #7840 - Bump eslint from 8.43.0 to 8.44.0 in /apps/block_scout_web/assets
- #7839 - Bump photoswipe from 5.3.7 to 5.3.8 in /apps/block_scout_web/assets
- #7850 - Bump jest-environment-jsdom from 29.5.0 to 29.6.0 in /apps/block_scout_web/assets
- #7848 - Bump @amplitude/analytics-browser from 2.1.1 to 2.1.2 in /apps/block_scout_web/assets
- #7847 - Bump @babel/core from 7.22.5 to 7.22.6 in /apps/block_scout_web/assets
- #7846 - Bump @babel/preset-env from 7.22.5 to 7.22.6 in /apps/block_scout_web/assets
- #7856 - Bump ex_cldr from 2.37.1 to 2.37.2
- #7870 - Bump jest from 29.5.0 to 29.6.1 in /apps/block_scout_web/assets
- #7867 - Bump postcss from 8.4.24 to 8.4.25 in /apps/block_scout_web/assets
- #7871 - Bump @babel/core from 7.22.6 to 7.22.8 in /apps/block_scout_web/assets
- #7868 - Bump jest-environment-jsdom from 29.6.0 to 29.6.1 in /apps/block_scout_web/assets
- #7866 - Bump @babel/preset-env from 7.22.6 to 7.22.7 in /apps/block_scout_web/assets
- #7869 - Bump core-js from 3.31.0 to 3.31.1 in /apps/block_scout_web/assets
- #7884 - Bump ecto from 3.10.2 to 3.10.3
- #7882 - Bump jason from 1.4.0 to 1.4.1
- #7880 - Bump absinthe from 1.7.3 to 1.7.4
- #7879 - Bump babel-loader from 9.1.2 to 9.1.3 in /apps/block_scout_web/assets
- #7881 - Bump ex_cldr_numbers from 2.31.1 to 2.31.2
- #7883 - Bump ex_doc from 0.29.4 to 0.30.1
- #7916 - Bump semver from 5.7.1 to 5.7.2 in /apps/explorer
- #7912 - Bump sweetalert2 from 11.7.12 to 11.7.16 in /apps/block_scout_web/assets
- #7913 - Bump ex_doc from 0.30.1 to 0.30.2
- #7923 - Bump postgrex from 0.17.1 to 0.17.2
- #7921 - Bump @babel/preset-env from 7.22.7 to 7.22.9 in /apps/block_scout_web/assets
- #7922 - Bump @babel/core from 7.22.8 to 7.22.9 in /apps/block_scout_web/assets
- #7931 - Bump wallaby from 0.30.3 to 0.30.4
- #7940 - Bump postcss from 8.4.25 to 8.4.26 in /apps/block_scout_web/assets
- #7939 - Bump eslint from 8.44.0 to 8.45.0 in /apps/block_scout_web/assets
- #7955 - Bump sweetalert2 from 11.7.16 to 11.7.18 in /apps/block_scout_web/assets
- #7958 - Bump ex_doc from 0.30.2 to 0.30.3
- #7965 - Bump webpack from 5.88.1 to 5.88.2 in /apps/block_scout_web/assets
- #7972 - Bump word-wrap from 1.2.3 to 1.2.4 in /apps/block_scout_web/assets
What's Changed
- Remove limit for configurable fetchers by @Qwerty5Uiop in #7758
- Bump sass from 1.63.4 to 1.63.5 in /apps/block_scout_web/assets by @dependabot in #7759
- Bump @amplitude/analytics-browser from 2.0.0 to 2.0.1 in /apps/block_scout_web/assets by @dependabot in #7760
- Bump webpack from 5.87.0 to 5.88.0 in /apps/block_scout_web/assets by @dependabot in #7762
- Fix missing ranges insertion and deletion logic by @Qwerty5Uiop in #7764
- Add /api/v1/health/liveness and /api/v1/health/readiness by @nikitosing in #7781
- Fix additional sources and interfaces, save names for vyper contracts by @sl1depengwyn in #7803
- Add logging for unknown error verification result by @nikitosing in #7819
- Bump sass from 1.63.5 to 1.63.6 in /apps/block_scout_web/assets by @dependabot in #7769
- Bump ssl_verify_fun from 1.1.6 to 1.1.7 by @dependabot in #7805
- Bump webpack from 5.88.0 to 5.88.1 in /apps/block_scout_web/assets by @dependabot in #7812
- Bump @amplitude/analytics-browser from 2.0.1 to 2.1.0 in /apps/block_scout_web/assets by @dependabot in #7770
- Bump absinthe from 1.7.1 to 1.7.3 by @dependabot in #7821
- Fix tests warning; Fix env name by @nikitosing in #7789
- Fix parsing of database password period(s) by @galxy25 in #7772
- Bump @amplitude/analytics-browser from 2.1.0 to 2.1.1 in /apps/block_scout_web/assets by @dependabot in #7823
- API v2: Add block_number to logs by @nikitosing in #7832
- Filter addresses before insertion by @Qwerty5Uiop in #7811
- Bump gettext from 0.22.2 to 0.22.3 by @dependabot in #7838
- Bump eslint from 8.43.0 to 8.44.0 in /apps/block_scout_web/assets by @dependabot in #7840
- Bump photoswipe from 5.3.7 to 5.3.8 in /apps/block_scout_web/assets by @dependabot in #7839
- fix nginx config for UI 2.0 websocket by @chrisciszak in #7825
- CORS setup for docker-compose config with new frontend by @vbaranov in #7841
- Search improvements: Add new fields, light refactoring by @nikitosing in #7784
- Add new invalid_session cookie for users with unverified email by @nikitosing in #7836
- Bump jest-environment-jsdom from 29.5.0 to 29.6.0 in /apps/block_scout_web/assets by @dependabot in #7850
- Bump @amplitude/analytics-browser from 2.1.1 to 2.1.2 in /apps/block_scout_web/assets by @dependabot in #7848
- Bump @babel/core from 7.22.5 to 7.22.6 in /apps/block_scout_web/assets by @dependabot in #7847
- Fix created_contract_code_indexed_at updating by @Qwerty5Uiop in #7843
- Bump @babel/preset-env from 7.22.5 to 7.22.6 in /apps/block_scout_web/assets by @dependabot in #7846
- Handle internal transactions unique_violation by @Qwerty5Uiop in #7855
- Bump ex_cldr from 2.37.1 to 2.37.2 by @dependabot in #7856
- Add TTL for account sessions by @nikitosing in #7863
- Bump jest from 29.5.0 to 29.6.1 in /apps/block_scout_web/assets by @dependabot in #7870
- Bump postcss from 8.4.24 to 8.4.25 in /apps/block_scout_web/assets by @dependabot in #7867
- Bump @babel/core from 7.22.6 to 7.22.8 in /apps/block_scout_web/assets by @dependabot in #7871
- Bump jest-environment-jsdom from 29.6.0 to 29.6.1 in /apps/block_scout_web/assets by @dependabot in #7868
- Bump @babel/preset-env from 7.22.6 to 7.22.7 in /apps/block_scout_web/assets by @dependabot in #7866
- Bump core-js from 3.31.0 to 3.31.1 in /apps/block_scout_web/assets by @dependabot in #7869
- Fix gas price in pending tx by @vbaranov in #7872
- Bump ecto from 3.10.2 to 3.10.3 by @dependabot in #7884
- Bump jason from 1.4.0 to 1.4.1 by @dependabot in #7882
- Bump absinthe from 1.7.3 to 1.7.4 by @dependabot in #7880
- Bump babel-loader from 9.1.2 to 9.1.3 in /apps/block_scout_web/assets by @dependabot in #7879
- Bump ex_cldr_numbers from 2.31.1 to 2.31.2 by @dependabot in #7881
- Bump ex_doc from 0.29.4 to 0.30.1 by @dependabot in #7883
- Fix twin compiler version by @nikitosing in #7875
- Token balances refactoring: put token to preloads; fix pagination bugs by @nikitosing in #7852
- API v2: Add block_hash to logs by @nikitosing in #7891
- Add possibility to add extra headers with JSON RPC URL by @sl1depengwyn in #7898
- Fix Docker image build by @vbaranov in #7901
- Resolve warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead by @vbaranov in #7890
- Bump semver from 5.7.1 to 5.7.2 in /apps/explorer by @dependabot in #7916
- Bump sweetalert2 from 11.7.12 to 11.7.16 in /apps/block_scout_web/assets by @dependabot in #7912
- Bump ex_doc from 0.30.1 to 0.30.2 by @dependabot in #7913
- Fix "Elixir.Indexer.Memory.Monitor",{{badkey,limit} by @vbaranov in #7918
- Fix catchup numbers_to_ranges function by @Qwerty5Uiop in #7899
- Fix fetching libstdc++ in install_chrome_headless.sh by @vbaranov in #7928
- Bump postgrex from 0.17.1 to 0.17.2 by @dependabot in #7923
- Fix install chrome headless by @Qwerty5Uiop in #7930
- Bump @babel/preset-env from 7.22.7 to 7.22.9 in /apps/block_scout_web/assets by @dependabot in #7921
- Bump @babel/core from 7.22.8 to 7.22.9 in /apps/block_scout_web/assets by @dependabot in #7922
- Bump wallaby from 0.30.3 to 0.30.4 by @dependabot in #7931
- Explicitly set consensus == true in queries (convenient for search) by @vbaranov in #7934
- Add token balances info to watchlist address response by @nikitosing in #7888
- Small refactoring by @vbaranov in #7936
- Bump postcss from 8.4.25 to 8.4.26 in /apps/block_scout_web/assets by @dependabot in #7940
- Bump eslint from 8.44.0 to 8.45.0 in /apps/block_scout_web/assets by @dependabot in #7939
- Add GA CI for Eth Goerli chain by @vbaranov in #7950
- API v2 rate limit: Put token to cookies & change /api/v2/key method by @nikitosing in #7946
- Fixed wrong TX url in email notifications for mainnet by @atapin in #7951
- Enhance Account Explorer.Account.Notifier.Email module tests by @vbaranov in #7954
- Bump sweetalert2 from 11.7.16 to 11.7.18 in /apps/block_scout_web/assets by @dependabot in #7955
- Bump ex_doc from 0.30.2 to 0.30.3 by @dependabot in #7958
- API v2: Add sorting to tokens page by @sl1depengwyn in #7895
- Csv export improve by @nikitosing in #7771
- Add TokenTotalSupplyUpdater by @Qwerty5Uiop in #7859
- Chunk realtime balances requests by @Qwerty5Uiop in #7873
- Allow indicate CMC id of the coin through env var by @vbaranov in #7962
- Op Stack: ignore depositNonce by @vbaranov in #7963
- Bump webpack from 5.88.1 to 5.88.2 in /apps/block_scout_web/assets by @dependabot in #7965
- Bump word-wrap from 1.2.3 to 1.2.4 in /apps/block_scout_web/assets by @dependabot in #7972
- Delete token balances only for blocks that lost consensus by @Qwerty5Uiop in #7927
- Improve locks acquiring by @Qwerty5Uiop in #7947
- Add tokens sorting by market cap and fiat value; Add priority to searโฆ by @nikitosing in #7970
New Contributors
- @galxy25 made their first contribution in #7772
- @chrisciszak made their first contribution in #7825
- @atapin made their first contribution in #7951
Full Changelog: v5.2.0-beta...v5.2.1-beta