Ecosystem metrics

New Repos
20
New
Commits
857
up 27.7%
Releases
6
down 14.3%
Contributors
59
up 13.5%
Merges
15
down 28.6%

Repository Explorer

8907 commits in all time Jul 23, 2026 22:47 – Oct 21, 2026 22:47 UTC
dependabot[bot] connect
Merge 9d7f0793b723dc1b8d6247230fdd40f97760d004 into 341b14ba688565b30e7dc7373c2e3ef4ded5a7e2
Git Commit c959d8bd Branch pull/232/merge Document No file changes
yasin-ce connect
fix: address review comments on #232
Git Commit 9d7f0793 Branch dependabot/npm_and_yarn/typescript-7.0.2 Document 2/152 ++ 408 --
dependabot[bot] connect
Merge e0c59454d23fe0129748c23fc18c409fa7ff0db4 into 341b14ba688565b30e7dc7373c2e3ef4ded5a7e2
Git Commit 7e8986bc Branch pull/237/merge Document 1/2 ++ 2 --
yasin-ce connect
build(deps): bump github/codeql-action/init from 4.38.2 to 4.38.3
Git Commit e0c59454 Branch dependabot/github_actions/github/codeql-action/analyze-4.38.3 Document 1/1 ++ 1 --
Argimirodelpozo puya
Merge 4c4fb3324b38038aa992284b95258bfa62114548 into 64691cee943c169fa883a9286687df541cc75eb0
Git Commit 93688747 Branch pull/753/merge Document 2/125 ++ 0 --
joe-p indexer
Merge pull request #1704 from algorand/ci/goreleaser_tag
ci: use pushed tag for goreleaser and add manual dispatch
Git Commit 748ac404 Branch main Document 2/9 ++ 1 --
tasosbit homebrew-node
Merge pull request #5 from algorandfoundation/ci/faster-release-polling
ci: poll for go-algorand releases every 10 minutes
Git Commit e4dbe797 Branch main Document 1/58 ++ 15 --
tasosbit nodekit
Merge pull request #199 from algorandfoundation/v1.7
v1.7
Git Commit a9e2cda1 Branch main Document 78/8,160 ++ 549 --
joe-p indexer
Merge 5e1ad111bd4b29a7de0006f6b398db46805a1e2d into 90b9232fe6516eaec9ce3c46a382e21838aca579
Git Commit 80cb0668 Branch pull/1704/merge Document 2/9 ++ 1 --
joe-p indexer
ci: reduce lastblock to 92
PR #1075 is a proper fix, but this will unblock PR #1074
Git Commit 5e1ad111 Branch ci/goreleaser_tag Document 1/1 ++ 1 --
nullun go-algorand
Merge 35ca41b09cdb8e64e1654da1c0467b08d5690cf2 into c72ae3ca2a4e47054057760916a7f2e4585b5256
Git Commit f75a7b19 Branch pull/6750/merge Document 8/366 ++ 91 --
nullun go-algorand
network: give back identities and throttle slots of swept peers
innerStop and DisconnectPeers drop peers from the peer list directly.
Each peer's own removePeer then finds it gone and releases nothing, so
its identity and throttle slot leaked. Both networks now release a
peer through unregisterPeerLocked, from removePeer and from the
sweeps.

unregisterPeerLocked also marks the peer closing.
identityVerificationHandler checks that mark under the peer lock, so a
verification message queued before the peer left cannot claim the
identity again.

P2PNetwork.innerStop sweeps wsPeersToIDs rather than wsPeers. A wsPeer
replaced by a newer stream from the same peer is only in wsPeersToIDs,
so the old sweep left it open with its slot.
Git Commit 59ed5bea Branch pull/6750/head Document 6/95 ++ 24 --
nullun go-algorand
network: reject peer registration after innerStop
Stop sweeps the peer list before it shuts down the ws listener or the
p2p host. A handshake that completes in between registers a peer that
nothing closes, so the peer outlives Stop.

innerStop now sets a flag under the peer lock, and addPeer rejects
peers once it is set. The caller closes a rejected peer and skips the
connected logs and telemetry.

Found while reviewing #6744.
Git Commit f642d266 Branch pull/6750/head Document 5/122 ++ 33 --
nullun go-algorand
network: tidy peer sweeps and close-time error reports
The read and write loops report errors only while didSignalClose is
unset. A swept p2p peer's streams reset before closeWaiter reaches
Close, which used to log a read error and count a dropped connection
on every shutdown.

The ws sweeps also clear the peer slice, so it keeps no swept peers
reachable, and update the connection gauges.
Git Commit 35ca41b0 Branch pull/6750/head Document 2/11 ++ 4 --
nullun go-algorand
network: admit peers and start their loops in addPeer
A peer's read and write loops started in init, before addPeer
registered it. tryConnect and the p2p stream handler also claimed the
identity in a separate critical section from the insert. A peer could
therefore receive messages, or close itself, before it was registered,
and a rejected peer needed cleanup in several places.

addPeer now calls init itself. It first skips a peer whose identity
another peer already holds, so a duplicate allocates no send queues.
Then, under the peer lock, it claims the identity and the throttle
slot, registers the peer and starts its loops. It reports whether it
admitted the peer, and the caller closes the connection of a peer
rejected as a duplicate. P2PNetwork gets the same addPeer.

Nothing can close a peer before addPeer now, so the closing check in
addPeer and algod_network_peer_already_closed go. So does the
duplicate pointer check, which could never match.

Tests that registered bare peers now build them with makeTestPeer, or
no longer register peers they only use as message senders.
TestPeeringWithIdentityChallenge expects one fewer setIdentity call,
because the duplicate no longer reaches it.
Git Commit a3bdafcb Branch pull/6750/head Document 7/143 ++ 69 --
joe-p indexer
Merge fe9e83fbce9eea5c7b999c2d48e09ea2bcd9d6a2 into 90b9232fe6516eaec9ce3c46a382e21838aca579
Git Commit b10de8db Branch pull/1705/merge Document 7/70 ++ 15 --
joe-p indexer
ci: Read the actual highest round from e2e test data
This prevents the hardcoded lastblock value causing an error when the
test data doesn't go to that round
Git Commit fe9e83fb Branch ci/e2e_round Document 7/70 ++ 15 --
Merge 67b9baf7c52dcc0d9ffc6b9e5581e1e38f0a9eba into 28fac664be6d0e45eb83762d2ee83316eb6a192e
Git Commit 4014f488 Branch pull/46/merge Document 1/1 ++ 1 --
chore(deps): Update Node.js to v22.23.4
Git Commit 67b9baf7 Branch renovate/node-22.x Document 1/1 ++ 1 --
nullun go-algorand
network: release peersLock before DisconnectPeers waits
DisconnectPeers held peersLock while it waited for the swept peers to
close. A peer whose read loop had already failed blocks in removePeer
on that lock, and closing the peer waits for its read loop, so
DisconnectPeers could deadlock.
Git Commit 22ecac40 Branch pull/6750/head Document 2/36 ++ 2 --
Merge 04127b5b19c92f5375c1c6edbe70a814a7416bea into 65ef1422751d2dea3feb5f2b9b7deb56f29ffb95
Git Commit 70019249 Branch pull/938/merge Document 1/1 ++ 1 --
Merge f7de967bfc4db658d307d97bc1de12b5e33f1c86 into 65ef1422751d2dea3feb5f2b9b7deb56f29ffb95
Git Commit 2b047442 Branch pull/939/merge Document 1/1 ++ 1 --
Argimirodelpozo puya-ts
docs: generic contracts
Git Commit eaabf2ea Branch feat/parametric-types Document 1/33 ++ 1 --
joe-p conduit
ci: use pushed tag for goreleaser and add manual dispatch (#205)
* ci: ensure goreleaser runs with the pushed tagged

This prevents unexpected behavior when two tags are on the same commit

* ci: add manual dispatch to goreleaser

This will allow us to run goreleaser for an old tag
Git Commit 3340c0a6 Branch master Document 1/8 ++ 0 --