Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
# A stable environment for PRs.
# Set CHANNEL to nightly and update CI_E2E_FILENAME when adding a new feature.
# Change back to stable once the new feature is released.
CI_E2E_FILENAME: "f99e7b0c/rel-nightly"
CI_E2E_FILENAME: "rel-nightly"
CHANNEL: nightly
steps:
- go/install:
Expand Down Expand Up @@ -140,10 +140,10 @@ commands:
run_e2e_tests:
steps:
- run:
name: Install go-algorand stable binaries
name: Install go-algorand binaries
command: |
wget https://raw.githubusercontent.com/algorand/go-algorand/rel/stable/cmd/updater/update.sh && chmod 744 update.sh
./update.sh -i -c stable -n -d ./ -p /usr/local/go/bin
./update.sh -i -c nightly -n -d ./ -p /usr/local/go/bin
export GOPATH=/usr/local/go/
- run: make e2e
- run: make e2e-filter-test
Expand Down
6 changes: 3 additions & 3 deletions api/converter_utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ func hdrRowToBlock(row idb.BlockRow) generated.Block {
upgradeState := generated.BlockUpgradeState{
CurrentProtocol: string(row.BlockHeader.CurrentProtocol),
NextProtocol: strPtr(string(row.BlockHeader.NextProtocol)),
NextProtocolApprovals: uint64Ptr(row.BlockHeader.NextProtocolApprovals),
NextProtocolApprovals: uint64Ptr(uint64(row.BlockHeader.NextProtocolApprovals)),
NextProtocolSwitchOn: uint64Ptr(uint64(row.BlockHeader.NextProtocolSwitchOn)),
NextProtocolVoteBefore: uint64Ptr(uint64(row.BlockHeader.NextProtocolVoteBefore)),
}
Expand Down Expand Up @@ -652,9 +652,9 @@ func signedTxnWithAdToTransaction(stxn *sdk.SignedTxnWithAD, extra rowData) (gen
for _, t := range stxn.ApplyData.EvalDelta.InnerTxns {
extra2 := extra
if t.Txn.Type == sdk.ApplicationCallTx {
extra2.AssetID = t.ApplyData.ApplicationID
extra2.AssetID = uint64(t.ApplyData.ApplicationID)
} else if t.Txn.Type == sdk.AssetConfigTx {
extra2.AssetID = t.ApplyData.ConfigAsset
extra2.AssetID = uint64(t.ApplyData.ConfigAsset)
} else {
extra2.AssetID = 0
}
Expand Down
250 changes: 125 additions & 125 deletions api/generated/common/routes.go

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions api/generated/common/types.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

339 changes: 170 additions & 169 deletions api/generated/v2/routes.go

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions api/generated/v2/types.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion api/handlers.go
Original file line number Diff line number Diff line change
Expand Up @@ -1406,7 +1406,7 @@ func (si *ServerImplementation) fetchBlock(ctx context.Context, round uint64, op
upgradeState := generated.BlockUpgradeState{
CurrentProtocol: string(blockHeader.CurrentProtocol),
NextProtocol: strPtr(string(blockHeader.NextProtocol)),
NextProtocolApprovals: uint64Ptr(blockHeader.NextProtocolApprovals),
NextProtocolApprovals: uint64Ptr(uint64(blockHeader.NextProtocolApprovals)),
NextProtocolSwitchOn: uint64Ptr(uint64(blockHeader.NextProtocolSwitchOn)),
NextProtocolVoteBefore: uint64Ptr(uint64(blockHeader.NextProtocolVoteBefore)),
}
Expand Down
4 changes: 4 additions & 0 deletions api/indexer.oas3.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1108,6 +1108,10 @@
},
"local-state-schema": {
"$ref": "#/components/schemas/ApplicationStateSchema"
},
"version": {
"description": "the number of updates to the application programs",
"type": "integer"
}
},
"required": [
Expand Down
3 changes: 3 additions & 0 deletions cmd/validator/core/struct_processor.go
Original file line number Diff line number Diff line change
Expand Up @@ -290,6 +290,9 @@ func equals(indexer, algod generated.Account) (differences []string) {
if !stateSchemePtrEqual(algodCreatedApp.Params.GlobalStateSchema, indexerCreatedApp.Params.GlobalStateSchema) {
differences = append(differences, fmt.Sprintf("created-app global-state-schema %d", algodCreatedApp.Id))
}
if !uint64PtrEqual(algodCreatedApp.Params.Version, indexerCreatedApp.Params.Version) {
differences = append(differences, fmt.Sprintf("created-app version %d", algodCreatedApp.Id))
}
if !uint64PtrEqual(algodCreatedApp.Params.ExtraProgramPages, indexerCreatedApp.Params.ExtraProgramPages) {
differences = append(differences, fmt.Sprintf("created-app extra-pages %d", algodCreatedApp.Id))
}
Expand Down
3 changes: 2 additions & 1 deletion e2e_tests/docker/indexer-filtered/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ services:
context: ../../../.
dockerfile: ./e2e_tests/docker/indexer-filtered/e2e-write/Dockerfile
args:
- CI_E2E_FILENAME=${CI_E2E_FILENAME}
CI_E2E_FILENAME: "${CI_E2E_FILENAME:-rel-nightly}"
CHANNEL: "${CHANNEL:-stable}"
depends_on:
e2e-db-filtered:
condition: service_healthy
Expand Down
2 changes: 1 addition & 1 deletion e2e_tests/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description = "End to end tests for Algorand Indexer"
version = "0.0.1"
requires-python = ">=3.8"
dependencies = [
"boto3==1.24.71",
"boto3==1.38.36",
"msgpack==1.0.4",
"py-algorand-sdk==1.17.0",
"pytest==6.2.5",
Expand Down
12 changes: 6 additions & 6 deletions go.mod
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
module github.com/algorand/indexer/v3

go 1.23
go 1.23.0

toolchain go1.23.3

require (
github.com/algorand/avm-abi v0.2.0
github.com/algorand/go-algorand-sdk/v2 v2.7.0
github.com/algorand/go-algorand-sdk/v2 v2.9.2-0.20250611180312-61ad62f81280
github.com/algorand/go-codec/codec v1.1.10
github.com/algorand/oapi-codegen v1.12.0-algorand.0
github.com/davecgh/go-spew v1.1.1
Expand Down Expand Up @@ -92,11 +92,11 @@ require (
go.opentelemetry.io/otel/trace v1.28.0 // indirect
go.uber.org/multierr v1.10.0 // indirect
go.uber.org/zap v1.27.0 // indirect
golang.org/x/crypto v0.31.0 // indirect
golang.org/x/crypto v0.35.0 // indirect
golang.org/x/net v0.29.0 // indirect
golang.org/x/sync v0.10.0 // indirect
golang.org/x/sys v0.28.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/sync v0.11.0 // indirect
golang.org/x/sys v0.30.0 // indirect
golang.org/x/text v0.22.0 // indirect
golang.org/x/time v0.5.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53 // indirect
Expand Down
20 changes: 10 additions & 10 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,8 @@ github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRF
github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
github.com/algorand/avm-abi v0.2.0 h1:bkjsG+BOEcxUcnGSALLosmltE0JZdg+ZisXKx0UDX2k=
github.com/algorand/avm-abi v0.2.0/go.mod h1:+CgwM46dithy850bpTeHh9MC99zpn2Snirb3QTl2O/g=
github.com/algorand/go-algorand-sdk/v2 v2.7.0 h1:ntORjVgXnm+1jqpj55Fv2MbYitxwE9A+xNYopsN5uoA=
github.com/algorand/go-algorand-sdk/v2 v2.7.0/go.mod h1:BkHnK2PuCqzdGPNeWUo5yo6lRjyDZ9QoMN8GIjfijrA=
github.com/algorand/go-algorand-sdk/v2 v2.9.2-0.20250611180312-61ad62f81280 h1:DiYJJj+OLzvym4fI1+QSP3hrGp19mfp0aPCtS0hJQk0=
github.com/algorand/go-algorand-sdk/v2 v2.9.2-0.20250611180312-61ad62f81280/go.mod h1:D6iKT87/N6ajNpN7uMYPC9/RsOo2BbxnDfvh81E3hOM=
github.com/algorand/go-codec/codec v1.1.10 h1:zmWYU1cp64jQVTOG8Tw8wa+k0VfwgXIPbnDfiVa+5QA=
github.com/algorand/go-codec/codec v1.1.10/go.mod h1:YkEx5nmr/zuCeaDYOIhlDg92Lxju8tj2d2NrYqP7g7k=
github.com/algorand/oapi-codegen v1.12.0-algorand.0 h1:W9PvED+wAJc+9EeXPONnA+0zE9UhynEqoDs4OgAxKhk=
Expand Down Expand Up @@ -616,8 +616,8 @@ golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5y
golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U=
golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
golang.org/x/crypto v0.35.0 h1:b15kiHdrGCHrP6LvwaQ3c03kgNhhiMgvlhxHQhmg2Xs=
golang.org/x/crypto v0.35.0/go.mod h1:dy7dXNW32cAb/6/PRuTNsix8T+vJAqvuIy5Bli/x0YQ=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
Expand Down Expand Up @@ -728,8 +728,8 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sync v0.11.0 h1:GGz8+XQP4FvTTrjZPzNKTMFtSXH80RAzG+5ghFPgK9w=
golang.org/x/sync v0.11.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
Expand Down Expand Up @@ -802,8 +802,8 @@ golang.org/x/sys v0.0.0-20211205182925-97ca703d548d/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA=
golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=
golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
Expand All @@ -815,8 +815,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
Expand Down
4 changes: 2 additions & 2 deletions idb/postgres/internal/writer/write_txn.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ func transactionAssetID(stxnad *types.SignedTxnWithAD, intra uint, block *types.
case types.ApplicationCallTx:
assetid = uint64(stxnad.Txn.ApplicationID)
if assetid == 0 {
assetid = stxnad.ApplyData.ApplicationID
assetid = uint64(stxnad.ApplyData.ApplicationID)
}
if assetid == 0 {
if block == nil {
Expand All @@ -42,7 +42,7 @@ func transactionAssetID(stxnad *types.SignedTxnWithAD, intra uint, block *types.
case types.AssetConfigTx:
assetid = uint64(stxnad.Txn.ConfigAsset)
if assetid == 0 {
assetid = stxnad.ApplyData.ConfigAsset
assetid = uint64(stxnad.ApplyData.ConfigAsset)
}
if assetid == 0 {
if block == nil {
Expand Down
5 changes: 5 additions & 0 deletions idb/postgres/postgres.go
Original file line number Diff line number Diff line change
Expand Up @@ -1572,6 +1572,9 @@ func (db *IndexerDb) yieldAccountsThread(req *getAccountsRequest) {
NumByteSlice: apps[i].LocalStateSchema.NumByteSlice,
NumUint: apps[i].LocalStateSchema.NumUint,
}

aout[outpos].Params.Version = omitEmpty(apps[i].Version)

if apps[i].ExtraProgramPages > 0 {
epp := uint64(apps[i].ExtraProgramPages)
aout[outpos].Params.ExtraProgramPages = &epp
Expand Down Expand Up @@ -2529,6 +2532,8 @@ func (db *IndexerDb) yieldApplicationsThread(rows pgx.Rows, out chan idb.Applica
NumUint: ap.LocalStateSchema.NumUint,
}

rec.Application.Params.Version = omitEmpty(ap.Version)

if ap.ExtraProgramPages != 0 {
rec.Application.Params.ExtraProgramPages = new(uint64)
*rec.Application.Params.ExtraProgramPages = uint64(ap.ExtraProgramPages)
Expand Down
3 changes: 2 additions & 1 deletion util/test/account_testutil.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,8 @@ func DecodeAddressOrPanic(addr string) sdk.Address {
// ArbitraryString should be used to generate a pseudo-random string to put in the Note field of a Txn Header.
// This is necessary to ensure the hash of any two txns used in tests are never the same.
func ArbitraryString() []byte {
arb := make([]byte, config.MaxTxnNoteBytes)
future := config.Consensus[protocol.ConsensusFuture]
arb := make([]byte, future.MaxTxnNoteBytes)
_, err := rand.Read(arb)
if err != nil {
panic("rand.Read error")
Expand Down
Loading