Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updates for 2.0.4 to include addresses that mined blocks. #1

Open
wants to merge 8,922 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
8922 commits
Select commit Hold shift + click to select a range
6220d31
chore(deps): bump gettext from 0.25.0 to 0.26.1 (#10657)
dependabot[bot] Sep 2, 2024
855bca0
chore(deps): bump cldr_utils from 2.28.0 to 2.28.1 (#10625)
dependabot[bot] Sep 2, 2024
ccef29b
chore(deps): bump luxon in /apps/block_scout_web/assets (#10683)
dependabot[bot] Sep 2, 2024
a7ee1ce
chore(deps): bump postgrex from 0.19.0 to 0.19.1 (#10622)
dependabot[bot] Sep 2, 2024
b1e942f
fix: Truncate token symbol in Explorer.Chain.PolygonZkevm.BridgeL1Tok…
varasev Sep 2, 2024
58fcb0c
chore: Change shrink internal transactions migration default batch_si…
Qwerty5Uiop Sep 2, 2024
2e905c0
chore(deps-dev): bump @babel/core in /apps/block_scout_web/assets (#1…
dependabot[bot] Sep 2, 2024
a970a99
chore(deps): bump core-js in /apps/block_scout_web/assets (#10684)
dependabot[bot] Sep 2, 2024
d2dde38
chore(deps-dev): bump webpack in /apps/block_scout_web/assets (#10671)
dependabot[bot] Sep 2, 2024
480b763
chore(deps): bump @fortawesome/fontawesome-free (#10681)
dependabot[bot] Sep 2, 2024
72ed84b
chore(deps-dev): bump postcss in /apps/block_scout_web/assets (#10682)
dependabot[bot] Sep 2, 2024
1a179bb
chore(deps): bump telemetry from 1.2.1 to 1.3.0 (#10656)
dependabot[bot] Sep 2, 2024
22f3ff9
fix: Fix gettext usage warning (#10693)
vbaranov Sep 2, 2024
53f79f6
chore(deps): bump recon from 2.5.5 to 2.5.6 (#10695)
dependabot[bot] Sep 3, 2024
0dab988
chore(deps): bump ex_cldr_units from 3.17.1 to 3.17.2 (#10621)
dependabot[bot] Sep 3, 2024
a88ad33
chore(deps): bump ex_cldr from 2.40.0 to 2.40.1 (#10623)
dependabot[bot] Sep 3, 2024
0a9e24f
chore: fix flaking explorer tests (#10676)
k1rill-fedoseev Sep 3, 2024
4b28ff3
Add Release pre-release workflows for CELO
vbaranov Sep 3, 2024
b049e7c
Remove workflow_dispatch trigger from CELO release workflow
vbaranov Sep 3, 2024
dcf88c0
Change branch for eth to production-eth
vbaranov Sep 3, 2024
acd60fb
feat: Celo API updates (#10629)
fedor-ivn Sep 4, 2024
4732c01
chore: Extend missing balanceOf function with :unable_to_decode error…
Qwerty5Uiop Sep 4, 2024
f6f703c
fix: allow disabling group votes fetcher independently of epoch block…
fedor-ivn Sep 4, 2024
40961e3
chore: shrink sample response for the trace in Filecoin chain type
vbaranov Sep 4, 2024
11d6a2e
chore: Token balances fetcher slow queue (#10694)
Qwerty5Uiop Sep 5, 2024
21b9572
chore(deps): bump redix from 1.5.1 to 1.5.2 (#10738)
dependabot[bot] Sep 9, 2024
3132cc7
chore(deps): bump cldr_utils from 2.28.1 to 2.28.2 (#10737)
dependabot[bot] Sep 9, 2024
e12b010
feat: support for filecoin native addresses (#10468)
fedor-ivn Sep 10, 2024
a47893d
feat: Add `INDEXER_OPTIMISM_L1_DEPOSITS_TRANSACTION_TYPE` env variabl…
varasev Sep 10, 2024
9244546
Update mix.exs
vbaranov Sep 10, 2024
5934c4f
Add rights to logs folder in the Docker image (#10740)
vbaranov Sep 11, 2024
eeee120
chore: Add meta to migrations_status (#10678)
Qwerty5Uiop Sep 11, 2024
b55cc8e
fix: Fix empty current token balances (#10745)
Qwerty5Uiop Sep 11, 2024
85ecef9
fix: Avoid key violation error in `Indexer.Fetcher.Optimism.TxnBatch`…
varasev Sep 12, 2024
014a126
fix: Insert coin balances placeholders in internal transactions fetch…
Qwerty5Uiop Sep 12, 2024
889d511
chore(deps): bump path-to-regexp and express (#10756)
dependabot[bot] Sep 12, 2024
680bb09
perf: Improve performance of transactions list page (#10734)
vbaranov Sep 13, 2024
5469933
Fix bug in naming of docker image for Optimism
vbaranov Sep 16, 2024
8ce08ee
fix: decoding of zero fields in mud (#10764)
k1rill-fedoseev Sep 16, 2024
5afe65b
6.8.1
vbaranov Sep 16, 2024
3a33a70
chore(deps): bump ex_abi from 0.8.0 to 0.8.1 (#10780)
dependabot[bot] Sep 20, 2024
930ef01
chore(deps): bump plug_cowboy from 2.7.1 to 2.7.2 (#10782)
dependabot[bot] Sep 20, 2024
0a3f29e
fix: Filter out tokens with skip_metadata: true from token fetcher (#…
Qwerty5Uiop Sep 20, 2024
74e68ad
fix: Allow string IDs in JSON RPC requests (#10759)
vbaranov Sep 20, 2024
f3e5520
fix: Fix account db repo definition (#10714)
vbaranov Sep 20, 2024
c6fff8e
fix: revisited approach to choose L1 blocks to discover missing Arbit…
akolotov Sep 20, 2024
f0ef80b
fix: get rid of heavy DB query to start Arbitrum missed messages disc…
akolotov Sep 20, 2024
e680905
fix: proper handling of old batches on Arbitrum Nova (#10786)
akolotov Sep 20, 2024
78ebdf8
fix: Set min query length in the search API endpoints (#10698)
vbaranov Sep 20, 2024
26a8899
fix: Preload additional sources for bytecode twin smart-contract (#10…
vbaranov Sep 20, 2024
45c8368
fix: decode addresses as checksummed (#10777)
k1rill-fedoseev Sep 20, 2024
dd6b1c9
chore: Add missing symbols (#10749)
liangmulu Sep 20, 2024
547032e
fix: Clear null round blocks from missing block ranges (#10805)
Qwerty5Uiop Sep 23, 2024
bb1c194
feat: Retry ERC-1155 token instance metadata fetch from baseURI + tok…
Qwerty5Uiop Sep 23, 2024
b80a27c
chore: Support non-unique log index for rsk chain type (#10807)
Qwerty5Uiop Sep 23, 2024
fa00acf
chore: Refactor OrderedCache preloads (#10803)
Qwerty5Uiop Sep 23, 2024
29a0429
chore(deps-dev): bump exvcr from 0.15.1 to 0.15.2 (#10814)
dependabot[bot] Sep 23, 2024
f7a434d
chore(deps): bump con_cache from 1.1.0 to 1.1.1 (#10815)
dependabot[bot] Sep 23, 2024
629620b
feat: Add Blackfort validators (#10744)
nikitosing Sep 24, 2024
b6aef21
chore(deps): bump ecto from 3.11.2 to 3.12.3 (#10739)
dependabot[bot] Sep 25, 2024
96bca66
chore(deps): bump elliptic and web3 in /apps/block_scout_web/assets (…
dependabot[bot] Sep 25, 2024
d95332f
chore: Add primary key to address_tags table (#10818)
vbaranov Sep 25, 2024
3fffd46
fix: Revert the deletion of deriving current token balances (#10811)
Qwerty5Uiop Sep 25, 2024
f5aecf1
chore(deps): bump dataloader from 2.0.0 to 2.0.1 (#10781)
dependabot[bot] Sep 25, 2024
5e4b8d8
chore: Remove old UI from base Docker image (#10828)
vbaranov Sep 27, 2024
e897070
fix: Repair /metrics endpoint (#10813)
vbaranov Sep 27, 2024
fae80f7
feat: (celo) include token information in API response for address ep…
fedor-ivn Sep 27, 2024
23b994d
fix: Sanitize replaced transactions migration (#10784)
Qwerty5Uiop Sep 27, 2024
435bba7
fix: filecoin stucked pending address operations (#10832)
fedor-ivn Sep 27, 2024
cffc536
chore: Reindex incorrect internal transactions migration (#10654)
Qwerty5Uiop Sep 27, 2024
2e6ce2c
chore: bump elixir to 1.17.3 and Erlang OTP to 27.1 (#10284)
k1rill-fedoseev Sep 27, 2024
e66d345
feat: add verbosity to GraphQL token transfers query (#10770)
fedor-ivn Sep 27, 2024
12517db
feat: Address scam badge flag (#10763)
vbaranov Sep 27, 2024
ad1ce1f
Update base docker image at oldUI.Dockerfile
vbaranov Sep 27, 2024
083966a
fix: Decode revert reason by decoding candidates from the DB (#10827)
vbaranov Sep 30, 2024
57a027f
fix: dialyzer warning (#10845)
fedor-ivn Sep 30, 2024
6882d3d
chore(deps-dev): bump credo from 1.7.7 to 1.7.8 (#10850)
dependabot[bot] Sep 30, 2024
41703b6
chore(deps): bump bamboo from 2.3.0 to 2.3.1 (#10849)
dependabot[bot] Sep 30, 2024
36e6f83
fix: Disable archive balances only if latest block is available (#10851)
Qwerty5Uiop Oct 1, 2024
ea9e806
refactor: use middleware to check if GraphQL API is enabled (#10772)
fedor-ivn Oct 1, 2024
6647fe3
fix: set `API_GRAPHQL_MAX_COMPLEXITY` in build action (#10843)
fedor-ivn Oct 1, 2024
2277fbe
chore(deps-dev): bump eslint in /apps/block_scout_web/assets (#10863)
dependabot[bot] Oct 2, 2024
95d1397
chore(deps): bump solc from 0.8.26 to 0.8.27 in /apps/explorer (#10864)
dependabot[bot] Oct 2, 2024
ba5a900
chore(deps-dev): bump sass in /apps/block_scout_web/assets (#10862)
dependabot[bot] Oct 2, 2024
6750895
chore(deps-dev): bump autoprefixer in /apps/block_scout_web/assets (#…
dependabot[bot] Oct 2, 2024
9b4e0c2
chore(deps): bump sweetalert2 in /apps/block_scout_web/assets (#10857)
dependabot[bot] Oct 2, 2024
ebd97a2
feat: support CoinMarketCap format in token supply stats (#10853)
fedor-ivn Oct 2, 2024
b5f4ab8
chore(deps-dev): bump mini-css-extract-plugin (#10859)
dependabot[bot] Oct 2, 2024
360375a
chore(deps): bump url in /apps/block_scout_web/assets (#10858)
dependabot[bot] Oct 2, 2024
d5a2a0a
chore(deps-dev): bump webpack in /apps/block_scout_web/assets (#10860)
dependabot[bot] Oct 2, 2024
c3765c9
chore(deps-dev): bump postcss in /apps/block_scout_web/assets (#10855)
dependabot[bot] Oct 2, 2024
afdcc0a
chore(deps): bump mixpanel-browser in /apps/block_scout_web/assets (#…
dependabot[bot] Oct 2, 2024
c876863
feat: Arbitrum L1-to-L2 messages with hashed message id (#10751)
akolotov Oct 3, 2024
e162362
chore: add version bump script (#10871)
vbaranov Oct 3, 2024
2c17f34
fix: Fix get current user in app template (#10844)
Qwerty5Uiop Oct 3, 2024
e22b45f
Remove unused block import stages (#10875)
vbaranov Oct 4, 2024
addc633
feat: api for querying mud systems abi (#10829)
k1rill-fedoseev Oct 4, 2024
bbd20a8
feat: Add metadata info to tx interpreter request (#10823)
nikitosing Oct 4, 2024
c3005aa
feat: Send archive balances requests to trace url (#10820)
Qwerty5Uiop Oct 4, 2024
903cbe3
feat: Token transfers list API endpoint (#10801)
vbaranov Oct 4, 2024
3a8e9f4
chore: ability to work with Blockscout code base within a VSCode devc…
akolotov Oct 4, 2024
1866353
chore(deps): bump comeonin from 5.4.0 to 5.5.0 (#10888)
dependabot[bot] Oct 9, 2024
93a0657
chore(deps): bump ecto_sql from 3.12.0 to 3.12.1 (#10887)
dependabot[bot] Oct 9, 2024
6a22f3a
fix: do not include unrelated token transfers in `tokenTransferTxs` (…
fedor-ivn Oct 9, 2024
f9b3521
chore: Add shrink int txs docker image build for Celo chain type (#10…
vbaranov Oct 10, 2024
f597adf
fix: add missing build arg to celo workflow (#10895)
fedor-ivn Oct 10, 2024
8424798
chore(deps): bump bcrypt_elixir from 3.1.0 to 3.2.0 (#10886)
dependabot[bot] Oct 14, 2024
7573eb3
fix: add missing block timestamp in election rewards for address resp…
fedor-ivn Oct 14, 2024
e702e93
chore: remove unused fetch_and_lock_by_hashes/1 public function
vbaranov Oct 14, 2024
e778ec1
Merge branch 'master' of github.com:/blockscout/blockscout
vbaranov Oct 14, 2024
6042b40
Fix env. variables link in README.md (#10898)
sieg-i Oct 14, 2024
7d763c0
chore: Reverse internal transactions fetching order (#10912)
Qwerty5Uiop Oct 16, 2024
f71a4cc
chore: Set user agent to metadata requests (#10834)
vbaranov Oct 16, 2024
a44488c
feat: Support snake_case in metadata service (#10722)
nikitosing Oct 16, 2024
02792f7
feat: Open access to re-fetch metadata button for token instances wit…
vbaranov Oct 17, 2024
8635b5c
feat: EIP-7702 support (#10870)
AllFi Oct 17, 2024
92e7ce5
fix: Handle delegatecall in state changes (#10906)
sl1depengwyn Oct 18, 2024
a23e03e
fix: Delete incorrect coin balances on reorg (#10879)
Qwerty5Uiop Oct 18, 2024
898e3e3
fix: Filter out nil implementations from combine_proxy_implementation…
vbaranov Oct 18, 2024
f3e279d
chore: Set indexer memory limit based on system info as a fallback (#…
Qwerty5Uiop Oct 18, 2024
1b2232a
chore: Remove deprecated single implementation property of the smart-…
vbaranov Oct 21, 2024
f8b4cb7
feat: Add missing filecoin robust addresses (#10935)
nikitosing Oct 21, 2024
c408fc4
feat: Allow to provide DB schema other than public (#10946)
Qwerty5Uiop Oct 21, 2024
6d8aa19
perf: refactor tx data decoding with fewer DB queries (#10842)
k1rill-fedoseev Oct 21, 2024
b030792
refactor: Fixate naming convention for "transaction" and "block numbe…
vbaranov Oct 22, 2024
f6c4065
chore(deps): bump tesla from 1.12.1 to 1.12.2 (#10987)
dependabot[bot] Oct 22, 2024
1bb7218
chore(deps): bump secp256k1 in /apps/block_scout_web/assets (#10985)
dependabot[bot] Oct 22, 2024
213a324
fix: Workaround for repeating logIndex (#10880)
nikitosing Oct 22, 2024
8a826f1
fix: Handle import exceptions in MassiveBlocksFetcher (#10993)
Qwerty5Uiop Oct 22, 2024
1b1d340
fix: Process foreign key violation in scam addresses assigning functi…
vbaranov Oct 22, 2024
26d906a
feat: Account V2 (#10706)
sl1depengwyn Oct 22, 2024
6319514
fix: Add compatibility with current frontend for some public props (#…
vbaranov Oct 22, 2024
eafe7c8
feat: Scroll rollup: L1 fee parameters in API, `queueIndex` for L2 tr…
varasev Oct 22, 2024
fc0c5b5
fix: Fix failed tests (#11000)
nikitosing Oct 22, 2024
aa3defa
feat: List of internal transactions API v2 endpoint (#10994)
vbaranov Oct 22, 2024
930c481
perf: optimize advanced filters (#10463)
sl1depengwyn Oct 22, 2024
f1fd306
chore: Update version bump script
vbaranov Oct 22, 2024
c837858
6.9.0
vbaranov Oct 22, 2024
b48ad1f
Fix Scroll workflow
vbaranov Oct 22, 2024
2140d68
fix: chart API: add compatibility with the current frontend (#11008)
vbaranov Oct 23, 2024
b370c00
Add pre-release docker image for scroll with internal txs shrink
vbaranov Oct 23, 2024
d3d768a
fix: Add tx_count, tx_types props in the response of address API v2 e…
vbaranov Oct 24, 2024
684dd5d
fix: Handle stalled async task in MapCache (#11015)
sl1depengwyn Oct 24, 2024
566997e
fix: bugs introduced in calldata decoding optimizations (#11025)
k1rill-fedoseev Oct 28, 2024
7e78505
Update CHANGELOG
vbaranov Oct 28, 2024
b8768fd
fix: Rename zksync l1/l2 _tx_count columns (#11051)
vbaranov Oct 28, 2024
b2cc466
feat: address transactions block number sorting (#11035)
sl1depengwyn Oct 28, 2024
16faddc
fix: divide by `10^decimals` when calculating token supply in CMC for…
fedor-ivn Oct 28, 2024
97d8a2b
fix: Fix scam badge value in some API endpoints (#11054)
vbaranov Oct 29, 2024
daa13a8
Remove internal transactions endpoint because no suitable DB index ex…
vbaranov Oct 29, 2024
ab7eddd
Comment test for disabled functionality
vbaranov Oct 29, 2024
9b943cc
fix: Indexer memory limit for api instance (#11066)
Qwerty5Uiop Oct 29, 2024
1a903c8
fix: celo collated gas price issue (#11067)
fedor-ivn Oct 29, 2024
92a814d
Add shrink int txs docker image for pre release workflows at Arbitrum…
vbaranov Oct 29, 2024
75519fe
feat: Support zksync foundry verification (#11037)
nikitosing Oct 29, 2024
608f319
Add pre-release docker image generation for Polygon ZkEVM
vbaranov Oct 30, 2024
a65b7f8
fix: abi cache for non-proxied addresses (#11065)
k1rill-fedoseev Oct 30, 2024
a49bdec
Update CHANGELOG
vbaranov Oct 30, 2024
1b9261f
Pre-release Docker image for Filecoin
vbaranov Oct 30, 2024
c3ae5df
fix: Import blocks before coin balances (#11049)
Qwerty5Uiop Oct 30, 2024
8f933d9
fix: Filter non-traceable blocks before inserting them to internal tx…
Qwerty5Uiop Oct 30, 2024
940a95f
Update CHANGELOG
vbaranov Oct 30, 2024
0423c18
fix: Fix contract codes fetching for zksync chain type (#11055)
nikitosing Oct 30, 2024
e566d99
Update CHANGELOG
vbaranov Oct 30, 2024
b7f15f8
perf: Fix performance of Explorer.Counters.Transactions24hStats.conso…
vbaranov Oct 31, 2024
2687c1d
fix: Fix tokennfttx API v1 endpoint (#11083)
vbaranov Oct 31, 2024
b5b259b
Update CHANGELOG
vbaranov Oct 31, 2024
0189dec
Add shrink int txs docker image for Shibarium chain type
vbaranov Oct 31, 2024
eed8833
chore: Add docker compose file without microservices (#11097)
vbaranov Nov 1, 2024
8124204
chore(deps): bump solc from 0.8.27 to 0.8.28 in /apps/explorer (#11105)
dependabot[bot] Nov 3, 2024
85fe2d6
chore(deps): bump floki from 0.36.2 to 0.36.3 (#11061)
dependabot[bot] Nov 3, 2024
c057ec3
chore(deps): bump chart.js in /apps/block_scout_web/assets (#11108)
dependabot[bot] Nov 3, 2024
922c7f3
chore(deps-dev): bump webpack in /apps/block_scout_web/assets (#11107)
dependabot[bot] Nov 3, 2024
3b1396f
chore(deps-dev): bump mini-css-extract-plugin (#11110)
dependabot[bot] Nov 3, 2024
3e28c08
chore(deps): bump @amplitude/analytics-browser (#11111)
dependabot[bot] Nov 3, 2024
7d16504
chore(deps): bump phoenix_ecto from 4.6.2 to 4.6.3 (#11059)
dependabot[bot] Nov 3, 2024
91e7d74
chore(deps-dev): bump babel-loader in /apps/block_scout_web/assets (#…
dependabot[bot] Nov 3, 2024
8b42206
chore(deps-dev): bump eslint-plugin-import (#11109)
dependabot[bot] Nov 3, 2024
86748cf
chore(deps): bump tesla from 1.12.2 to 1.13.0 (#11057)
dependabot[bot] Nov 3, 2024
3a00cff
chore(deps): bump oauth2 from 2.0.1 to 2.1.0 (#11060)
dependabot[bot] Nov 3, 2024
5331f6f
chore(deps): bump @tarekraafat/autocomplete.js (#11113)
dependabot[bot] Nov 4, 2024
2c3fd02
chore(deps): bump elliptic in /apps/block_scout_web/assets (#11068)
dependabot[bot] Nov 4, 2024
ad9cb89
chore(deps): bump core-js in /apps/block_scout_web/assets (#11114)
dependabot[bot] Nov 4, 2024
8ecde2e
chore(deps-dev): bump credo from 1.7.8 to 1.7.9 (#11135)
dependabot[bot] Nov 4, 2024
001ab94
feat: Add filecoin robust addresses to proxy implementations (#11102)
nikitosing Nov 5, 2024
1223faa
fix: Fix sitemap timeout; optimize OrderedCache preloads (#11131)
nikitosing Nov 5, 2024
9474559
chore: convinient way to manage known_hosts within devcontainer (#11091)
akolotov Nov 5, 2024
0dfd4c6
feat: zilliqa consensus data related to block (#10699)
fedor-ivn Nov 6, 2024
18eb3c6
chore: Update Github Actions packages versions (#11144)
vbaranov Nov 6, 2024
6dbdb26
refactor: cspell configuration (#11146)
fedor-ivn Nov 6, 2024
eb94a42
feat: Xname app proxy (#11010)
vbaranov Nov 7, 2024
b9115d9
fix: Update overview.html.eex (#11094)
GimluCom Nov 7, 2024
b87b06b
feat: gas prices with base fee if no transactions (#11132)
sl1depengwyn Nov 7, 2024
3d627c5
fix: Omit pbo for blocks lower than trace first block for indexing st…
Qwerty5Uiop Nov 8, 2024
4899959
fix: Return `l1_tx_hashes` in the response of /batches/da/celestia/..…
vbaranov Nov 12, 2024
14d2d24
Fix missing `signers` field in nested quorum certificate (#11185)
fedor-ivn Nov 12, 2024
632c6d4
Update release workflow
vbaranov Nov 12, 2024
9c86a43
Temp update release workflow
vbaranov Nov 12, 2024
e8aa655
fix: add `auth0-forwarded-for` header in auth0 (#11178)
sl1depengwyn Nov 12, 2024
8a1d83b
chore: extend recaptcha logging (#11182)
sl1depengwyn Nov 12, 2024
473d433
fix: Fix failed filecoin tests (#11187)
nikitosing Nov 13, 2024
b7221bd
feat: Multiple json rpc urls (#10934)
Qwerty5Uiop Nov 16, 2024
9fb366a
chore(deps-dev): bump credo from 1.7.9 to 1.7.10 (#11175)
dependabot[bot] Nov 16, 2024
ddac917
chore(deps): bump decimal from 2.1.1 to 2.2.0 (#11224)
dependabot[bot] Nov 20, 2024
df352b1
chore(deps): bump postgrex from 0.19.2 to 0.19.3 (#11222)
dependabot[bot] Nov 20, 2024
c8a28c3
chore(deps): bump ex_cldr_numbers from 2.33.3 to 2.33.4 (#11223)
dependabot[bot] Nov 20, 2024
50da37f
fix(nginx-conf): Redirect `/api-docs` to frontend. (#11202)
kustrun Nov 20, 2024
4100e95
chore: invalid association `token_transfers` (#11204)
sl1depengwyn Nov 20, 2024
b745890
chore: OP modules improvements (#11073)
varasev Nov 21, 2024
b899b64
fix: invalid metadata requests (#11210)
nikitosing Nov 21, 2024
c4e6f9c
Fixate 6.9.1 as the latest release in master branch
vbaranov Nov 21, 2024
d5709df
feat: Add Stylus verificaiton support (#11183)
nikitosing Nov 21, 2024
6493574
fix: handle simultaneous api key creation (#11233)
sl1depengwyn Nov 22, 2024
2960570
fix: Fix fake json_rpc_named_arguments for multiple urls usage (#11243)
Qwerty5Uiop Nov 22, 2024
6b5f4e6
fix: Fix ETH JSON RPC deriving for Stylus verification (#11247)
nikitosing Nov 22, 2024
d512914
Fixate 6.9.2 as the latest release (#11265)
sl1depengwyn Nov 26, 2024
8f0013b
chore(deps-dev): bump ex_doc from 0.34.2 to 0.35.1 (#11263)
dependabot[bot] Nov 27, 2024
4826f47
chore: fix watchlist address flaking test (#11242)
sl1depengwyn Nov 27, 2024
a6e2ac8
fix: Handle eth rpc request without params (#11269)
sl1depengwyn Nov 27, 2024
4124d62
fix: Multiple json rpc urls fixes (#11264)
Qwerty5Uiop Nov 27, 2024
9b1e802
fix: Check if flash is fetched before getting it in app.html (#11270)
Qwerty5Uiop Nov 27, 2024
f005976
fix: handle excessive otp confirmations (#11244)
sl1depengwyn Nov 27, 2024
cacbf60
fix: eth_getLogs paging (#11248)
sl1depengwyn Nov 27, 2024
0134bd0
chore: Optimize CurrentTokenBalances import runner (#11191)
Qwerty5Uiop Nov 28, 2024
481547f
fix: Rework initialization of the `RollupL1ReorgMonitor` and fix `rea…
varasev Nov 29, 2024
718e63d
feat: Add gzip encoding option (#11292)
nikitosing Nov 29, 2024
b2c2722
feat: Switch DB requests from replica to master in case of replica in…
Qwerty5Uiop Nov 30, 2024
077440d
grammatical error Update PULL_REQUEST_TEMPLATE.md (#11298)
defitricks Nov 30, 2024
9ff1575
chore(deps-dev): bump postcss in /apps/block_scout_web/assets (#11311)
dependabot[bot] Dec 2, 2024
228eca3
chore(deps-dev): bump @babel/preset-env in /apps/block_scout_web/asse…
dependabot[bot] Dec 2, 2024
69e74c5
chore(deps): bump crypto-browserify in /apps/block_scout_web/assets (…
dependabot[bot] Dec 2, 2024
071af70
chore(deps): bump chart.js in /apps/block_scout_web/assets (#11309)
dependabot[bot] Dec 2, 2024
a810088
chore(deps): bump mixpanel-browser in /apps/block_scout_web/assets (#…
dependabot[bot] Dec 2, 2024
617506a
chore(deps-dev): bump @babel/core in /apps/block_scout_web/assets (#1…
dependabot[bot] Dec 2, 2024
3e35357
chore(deps): bump @amplitude/analytics-browser (#11305)
dependabot[bot] Dec 2, 2024
b2c7591
chore(deps-dev): bump sass in /apps/block_scout_web/assets (#11308)
dependabot[bot] Dec 2, 2024
050e13f
chore(deps): bump @fortawesome/fontawesome-free (#11307)
dependabot[bot] Dec 2, 2024
cc4acdd
Corrected missing .yml extension in Nethermind example (#11316)
defitricks Dec 2, 2024
91d642b
chore: Refactor import stages (#11013)
Qwerty5Uiop Dec 2, 2024
69915c9
perf: advanced filters optimization (#11186)
sl1depengwyn Dec 2, 2024
a2ddd4c
fix: Wrong usage of env in TokenInstanceMetadataRefetch (#11317)
nikitosing Dec 2, 2024
1c0db9b
fix: Get rid of scientific notation in CSV token holders export (#11281)
nikitosing Dec 2, 2024
bb5f6ac
feat: Add request to /cache/{tx_hash} of transaction interpreter (#11…
nikitosing Dec 2, 2024
673f171
chore: refactor Dockerfile (#11130)
k1rill-fedoseev Dec 3, 2024
3fe9d9f
chore(deps): bump ecto from 3.12.4 to 3.12.5 (#11323)
dependabot[bot] Dec 3, 2024
50edb2e
feat: add CSV export of epoch transactions for address (#11195)
fedor-ivn Dec 3, 2024
8ddb85b
fix: handle entries with not specified `retries_count` (#11206)
fedor-ivn Dec 3, 2024
01792fa
fix: Fix metrics modules warnings (#11340)
vbaranov Dec 4, 2024
2f1c2e2
fix: Return 404 instead of 200 for nonexistent NFT (#11280)
nikitosing Dec 4, 2024
0f461d8
fix: Fix log decoding bug (#11266)
nikitosing Dec 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
421 changes: 210 additions & 211 deletions .circleci/config.yml

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions .credo.exs
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@
# or the `schema` macro in Ecto schemas to trigger DuplicatedCode, just
# set the `excluded_macros` parameter to `[:schema, :setup, :test]`.
#
{Credo.Check.Design.DuplicatedCode, excluded_macros: []},
{Credo.Check.Design.DuplicatedCode, excluded_macros: [], mass_threshold: 80},

# You can also customize the exit_status of each check.
# If you don't want TODO comments to cause `mix credo` to fail, just
Expand Down Expand Up @@ -131,7 +131,7 @@
{Credo.Check.Warning.UnusedRegexOperation},
{Credo.Check.Warning.UnusedStringOperation},
{Credo.Check.Warning.UnusedTupleOperation},
{Credo.Check.Warning.RaiseInsideRescue, false},
{Credo.Check.Warning.RaiseInsideRescue},

# Controversial and experimental checks (opt-in, just remove `, false`)
#
Expand Down
67 changes: 67 additions & 0 deletions .devcontainer/.blockscout_config.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
CHAIN_TYPE=ethereum

ETHEREUM_JSONRPC_VARIANT=geth
ETHEREUM_JSONRPC_TRACE_URL=""

API_RATE_LIMIT=100
HEART_BEAT_TIMEOUT=30
TXS_STATS_DAYS_TO_COMPILE_AT_INIT=2
INDEXER_MEMORY_LIMIT=6

POOL_SIZE=50
POOL_SIZE_API=50
ACCOUNT_POOL_SIZE=10

INDEXER_DISABLE_EMPTY_BLOCKS_SANITIZER='true'
INDEXER_DISABLE_PENDING_TRANSACTIONS_FETCHER='true'
INDEXER_DISABLE_INTERNAL_TRANSACTIONS_FETCHER='true'
INDEXER_DISABLE_BLOCK_REWARD_FETCHER='true'
INDEXER_DISABLE_ADDRESS_COIN_BALANCE_FETCHER='true'
INDEXER_DISABLE_CATALOGED_TOKEN_UPDATER_FETCHER='true'
ETHEREUM_JSONRPC_DISABLE_ARCHIVE_BALANCES='true'
INDEXER_DISABLE_TOKEN_INSTANCE_RETRY_FETCHER='true'
INDEXER_DISABLE_TOKEN_INSTANCE_REALTIME_FETCHER='true'
INDEXER_DISABLE_TOKEN_INSTANCE_SANITIZE_FETCHER='true'
INDEXER_DISABLE_WITHDRAWALS_FETCHER='true'
INDEXER_DISABLE_TOKEN_INSTANCE_LEGACY_SANITIZE_FETCHER='true'

INDEXER_CATCHUP_BLOCKS_BATCH_SIZE=5
INDEXER_COIN_BALANCES_BATCH_SIZE=1
TOKEN_ID_MIGRATION_BATCH_SIZE=1
TOKEN_INSTANCE_OWNER_MIGRATION_BATCH_SIZE=1
INDEXER_EMPTY_BLOCKS_SANITIZER_BATCH_SIZE=1
INDEXER_BLOCK_REWARD_BATCH_SIZE=1
INDEXER_RECEIPTS_BATCH_SIZE=10
INDEXER_COIN_BALANCES_BATCH_SIZE=1
INDEXER_TOKEN_BALANCES_BATCH_SIZE=1

INDEXER_CATCHUP_BLOCKS_CONCURRENCY=1
TOKEN_INSTANCE_OWNER_MIGRATION_CONCURRENCY=1
INDEXER_BLOCK_REWARD_CONCURRENCY=1
INDEXER_RECEIPTS_CONCURRENCY=1
INDEXER_COIN_BALANCES_CONCURRENCY=1
INDEXER_TOKEN_CONCURRENCY=1
INDEXER_TOKEN_BALANCES_CONCURRENCY=1
INDEXER_TOKEN_INSTANCE_RETRY_CONCURRENCY=1
INDEXER_TOKEN_INSTANCE_REALTIME_CONCURRENCY=1
INDEXER_TOKEN_INSTANCE_SANITIZE_CONCURRENCY=1
INDEXER_TOKEN_INSTANCE_LEGACY_SANITIZE_CONCURRENCY=1
INDEXER_TOKEN_INSTANCE_RETRY_BATCH_SIZE=1
INDEXER_TOKEN_INSTANCE_REALTIME_BATCH_SIZE=1
INDEXER_TOKEN_INSTANCE_SANITIZE_BATCH_SIZE=1
INDEXER_TOKEN_INSTANCE_LEGACY_SANITIZE_BATCH_SIZE=1

INDEXER_TOKEN_BALANCES_FETCHER_INIT_QUERY_LIMIT=2
INDEXER_COIN_BALANCES_FETCHER_INIT_QUERY_LIMIT=2

DISABLE_EXCHANGE_RATES='true'
SOURCIFY_INTEGRATION_ENABLED='false'
EXCHANGE_RATES_COINGECKO_PLATFORM_ID=''
DISABLE_TOKEN_EXCHANGE_RATE='true'

API_V2_ENABLED=true

DISABLE_CATCHUP_INDEXER='false'
INDEXER_CATCHUP_BLOCKS_BATCH_SIZE=10
INDEXER_CATCHUP_BLOCKS_CONCURRENCY=10
ETHEREUM_JSONRPC_HTTP_URL="https://ethereum-sepolia-rpc.publicnode.com"
50 changes: 50 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Since this is a copy of https://github.com/blockscout/devcontainer-elixir/blob/main/Dockerfile
# So after successful testing this file, the original one must be updated as well.
ARG VARIANT="1.17.3-erlang-27.1-debian-bullseye-20240926"
FROM hexpm/elixir:${VARIANT}

# ARGs declared before FROM are not persisted beyond the FROM instruction.
# They must be redeclared here to be available in the rest of the Dockerfile.
ARG PHOENIX_VERSION="1.7.10"
ARG NODE_VERSION="20"

# This Dockerfile adds a non-root user with sudo access. Update the “remoteUser” property in
# devcontainer.json to use it. More info: https://aka.ms/vscode-remote/containers/non-root-user.
ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=$USER_UID

# Options for common package install script
ARG INSTALL_ZSH="true"
ARG UPGRADE_PACKAGES="true"
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/main/script-library/common-debian.sh"

# Options for setup nodejs
ARG NODE_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/main/script-library/node-debian.sh"
ENV NVM_DIR=/usr/local/share/nvm
ENV NVM_SYMLINK_CURRENT=true
ENV PATH=${NVM_DIR}/current/bin:${PATH}

# Install needed packages and setup non-root user. Use a separate RUN statement to add your own dependencies.
RUN apt-get update \
&& export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
#
# Install Node.js for use with web applications
&& curl -sSL ${NODE_SCRIPT_SOURCE} -o /tmp/node-setup.sh \
&& /bin/bash /tmp/node-setup.sh "${NVM_DIR}" "${NODE_VERSION}" "${USERNAME}" \
&& npm install -g cspell@latest \
#
# Install dependencies
&& apt-get install -y build-essential inotify-tools \
#
# Clean up
&& apt-get autoremove -y \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/* /tmp/common-setup.sh /tmp/node-setup.sh

RUN su ${USERNAME} -c "mix local.hex --force \
&& mix local.rebar --force \
&& mix archive.install --force hex phx_new ${PHOENIX_VERSION}"
200 changes: 200 additions & 0 deletions .devcontainer/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,200 @@
# Blockscout Backend Development with VSCode Devcontainers and GitHub Codespaces

## Table of Contents
1. [Motivation](#motivation)
2. [Setting Up VSCode Devcontainer Locally](#setting-up-vscode-devcontainer-locally)
3. [Using GitHub Codespaces in the Browser](#using-github-codespaces-in-the-browser)
4. [Configuring Postgres DB Access](#configuring-postgres-db-access)
5. [Developing Blockscout Backend](#developing-blockscout-backend)
6. [Upgrading Elixir Version](#upgrading-elixir-version)
7. [Contributing](#contributing)

## Motivation

Setting up a local development environment for Blockscout can be time-consuming and error-prone. This devcontainer setup streamlines the process by providing a pre-configured environment with all necessary dependencies. It ensures consistency across development environments, reduces setup time, and allows developers to focus on coding rather than configuration.

Key benefits include:
- Pre-configured environment with Elixir, Phoenix, and Node.js
- Integrated PostgreSQL database
- Essential VS Code extensions pre-installed
- Simplified database management
- Consistent development environment across team members

## Setting Up VSCode Devcontainer Locally

1. Clone the Blockscout repository:
```
git clone https://github.com/blockscout/blockscout.git
cd blockscout
```

2. Open the project in VS Code:
```
code .
```

3. Before re-opening in the container, you may find it useful to configure SSH authorization. To do this:

a. Ensure you have SSH access to GitHub configured on your local machine.

b. Open `.devcontainer/devcontainer.json`.

c. Uncomment the `mounts` section:
```json
"mounts": [
"source=${localEnv:HOME}/.ssh/config,target=/home/vscode/.ssh/config,type=bind,consistency=cached",
"source=${localEnv:HOME}/.ssh/id_rsa,target=/home/vscode/.ssh/id_rsa,type=bind,consistency=cached"
],
```

d. Adjust the paths if your SSH keys are stored in a different location.

e. Use `git update-index --assume-unchanged .devcontainer/devcontainer.json` to prevent the changes to `devcontainer.json` from appearing in `git status` and VS Code's Source Control. To undo the changes, use `git update-index --no-assume-unchanged .devcontainer/devcontainer.json`.

4. When prompted, click "Reopen in Container". If not prompted, press `F1`, type "Remote-Containers: Reopen in Container", and press Enter.

5. VS Code will build the devcontainer. This process includes:
- Pulling the base Docker image
- Installing specified VS Code extensions
- Setting up the PostgreSQL database
- Installing project dependencies

This may take several minutes the first time.

6. Once the devcontainer is built, you'll be working inside the containerized environment.

7. If you modified the `devcontainer.json` file in step 3, you may want to execute `git update-index --assume-unchanged .devcontainer/devcontainer.json` in a terminal within your devcontainer to prevent the changes to `devcontainer.json` from appearing in `git status` and VS Code's Source Control.

### Additional Setup for Cursor.ai Users

If you're using Cursor.ai instead of VSCode, you may need to perform some additional setup steps. Please note that these changes will not persist after reloading the devcontainer, so you may need to repeat these steps each time you start a new session.

1. **Git Configuration**: You may encounter issues when trying to perform Git operations from the terminal or the "Source Control" tab. To resolve this, set up your Git configuration inside the devcontainer:

a. Open a terminal in your devcontainer.
b. Set your Git username:
```
git config --global user.name "Your Name"
```
c. Set your Git email:
```
git config --global user.email "[email protected]"
```

Replace "Your Name" and "[email protected]" with your actual name and email associated with your GitHub account.

2. **ElixirLS: Elixir support and debugger** (JakeBecker.elixir-ls): This extension may not be automatically installed in Cursor.ai, even though it's specified in the devcontainer configuration. To install it manually:

a. Open the Extensions tab.
b. Search for "JakeBecker.elixir-ls".
c. Look for the extension "ElixirLS: Elixir support and debugger" by JakeBecker and click "Install".

Remember, you may need to repeat these steps each time you start a new Cursor.ai session with the devcontainer.

### Signing in to GitHub for Pull Request Extension

1. In the devcontainer, click on the GitHub icon in the Primary sidebar.
2. Click on "Sign in to GitHub" and follow the prompts to authenticate.

## Using GitHub Codespaces in the Browser

To open the project in GitHub Codespaces:

1. Navigate to the Blockscout repository on GitHub.
2. Switch to the branch you want to work on.
3. Click the "Code" button.
4. Instead of clicking "Create codespace on [branch]" (which would use the default machine type that may not be sufficient for this Elixir-based project), click on the three dots (...) next to it.
5. Select "New with options".
6. Choose the "4-core/16GB RAM" machine type for optimal performance.
7. Click "Create codespace".

This will create a new Codespace with the specified resources, ensuring adequate performance for the Elixir-based project.

Note: After the container opens, you may see an error about the inability to use "GitHub Copilot Chat". This Copilot functionality will not be accessible in the Codespace environment.

## Configuring Postgres DB Access

To configure access to the PostgreSQL database using the VS Code extension:

1. Click on the PostgreSQL icon in the Primary sidebar.
2. Click "+" (Add Connection) in the PostgreSQL explorer.
3. Use the following details:
- Host: `db`
- User: `postgres`
- Password: `postgres`
- Port: `5432`
- Use an ssl connection: "Standard connection"
- Database: `blockscout`
- The display name: "<some name>"

These credentials are derived from the `DATABASE_URL` in the `bs` script.

## Developing Blockscout Backend

### Configuration

Before running the Blockscout server, you need to set up the configuration:

1. Copy the `.devcontainer/.blockscout_config.example` file to `.devcontainer/.blockscout_config`.
2. Adjust the settings in `.devcontainer/.blockscout_config` as needed for your development environment.

For a comprehensive list of environment variables that can be set in this configuration file, refer to the [Blockscout documentation](https://docs.blockscout.com/setup/env-variables).

### Using the `bs` Script

The `bs` script in `.devcontainer/bin/` helps orchestrate common development tasks. Here are some key commands:

- Initialize the project: `bs --init`
- Initialize or re-initialize the database: `bs --db-init` (This will remove all data and tables from the DB and re-create the tables)
- Run the server: `bs`
- Run the server without syncing: `bs --no-sync`
- Recompile the project: `bs --recompile` (Use this when new dependencies arrive after a merge or when switching to another `CHAIN_TYPE`)
- Run various checks: `bs --spellcheck`, `bs --dialyzer`, `bs --credo`, `bs --format`

For a full list of options, run `bs --help`.

### Interacting with the Blockscout API

For local devcontainer setups (not applicable to GitHub Codespaces), you can use API testing tools like Postman or Insomnia on your host machine to interact with the Blockscout API running in the container:

1. Ensure the Blockscout server is running in the devcontainer.
2. In the API testing tool on your host machine, use `http://127.0.0.1:4000` as the base URL.
3. Example endpoint: `GET http://127.0.0.1:4000/api/v2/blocks`

This allows testing API endpoints directly from your host machine while the server runs in the container.

### Troubleshooting

If you face issues with dependency compilation or dialyzer after container creation:

1. Check for untracked files: `git ls-files --others`
2. Remove compilation artifacts or generated files if present.
3. For persistent issues, consider cleaning all untracked files (use with caution):
```
git clean -fdX
bs --recompile
```

This ensures a clean compilation environment within the container.

## Upgrading Elixir Version

To upgrade the Elixir version:

1. Open `.devcontainer/Dockerfile`.
2. Update the `VARIANT` argument with the desired Elixir version.
3. Rebuild the devcontainer.

Note: Ensure that the version you choose is compatible with the project dependencies.

After testing the new Elixir version, propagate the corresponding changes in the Dockerfile to the repo https://github.com/blockscout/devcontainer-elixir. Once a new release tag is published there and a new docker image `ghcr.io/blockscout/devcontainer-elixir` appears in the GitHub registry, modify the `docker-compose.yml` file in the `.devcontainer` directory to reflect the proper docker image tag.

## Contributing

When contributing changes that require additional checks for specific blockchain types:

1. Open `.devcontainer/bin/chain-specific-checks`.
2. Add your checks under the appropriate `CHAIN_TYPE` case.
3. Ensure your checks exit with a non-zero code if unsuccessful.

Remember to document any new checks or configuration options in this README.
Loading