Ecosystem metrics

New Repos
4
down 99.8%
Commits
719
up 7.3%
Releases
8
down 11.1%
Contributors
49
down 5.8%
Merges
33
up 73.7%

Repository Explorer

6004 commits in all time May 26, 2026 23:30 – Aug 24, 2026 23:30 UTC
Merge 6d970fc84629c1878dd0e835c9ec57a26c6814a1 into 543110998c63b82a7f517c631c32ae62b9fbe9e3
Git Commit d8f7f466 Branch pull/944/merge Document 59/4,233 ++ 156 --
joe-p algokit-utils-ts
chore: npm audit
Git Commit caf52aac Branch feat/schema_epp_changes Document 1/2 ++ 2 --
Merge 1910b627c1c556580229ffc52213dbb3a8c969f3 into f20a5b93e8a0ad031da9512281b92f82c615f024
Git Commit 9edd3a00 Branch undefined Document 3/13 ++ 2 --
tasosbit gGov
chore: format
Git Commit 3bd5b79e Branch feat/avm13-computed-pages Document 1/1 ++ 1 --
joe-p java-algorand-sdk
test: revert algorand-sdk-testing branch to master
This will fail CI until
https://github.com/algorand/algorand-sdk-testing/pull/327 is merged
Git Commit b90f7c8f Branch feat/v42_models Document 1/1 ++ 1 --
joe-p algorand-sdk-testing
Merge a9abc0cb0518fc6a5c2a37cb22cfcb62abc1462d into 45286d17d8d873b1a740dae9366ee04152e3d63d
Git Commit cf1bbb39 Branch undefined Document 3/3 ++ 4 --
joe-p java-algorand-sdk
WIP: ignore falcon tags
Should ideally merge
https://github.com/algorand/algorand-sdk-testing/pull/327 first so we
can continue to use master
Git Commit b299db3b Branch feat/v42_models Document 2/3 ++ 3 --
Argimirodelpozo puya
fix: iterate over a copy of the block ops so ocasional removal of repeated writes does not silently skip ops
Git Commit f1466a65 Branch main Document 1/4 ++ 2 --
Argimirodelpozo puya
test: add regression test for triple write then read bug
Git Commit f16c23b1 Branch main Document 2/27 ++ 0 --
Argimirodelpozo puya
chore: compile all
Git Commit 09aabfc6 Branch main Document 82/5,066 ++ 853 --
Argimirodelpozo puya
chore: add changelog
Git Commit 68ce10f5 Branch main Document 1/43 ++ 0 --
sofinico gGov
Merge 64e12bfd51a12a2a8becbfdc160d0cfd3ec95b41 into d5e740c4f38df55c0230b3571fa18401b65695ef
Git Commit d0be64d6 Branch pull/55/merge Document 300/799,141 ++ 146,157 --
tasosbit gGov
Merge pull request #116 from algorandfoundation/fix/ci-validate-sdk-order
fix(ci): validate SDK-dependent projects after the SDKs are built
Git Commit 5eec24e4 Branch develop Document 1/17 ++ 17 --
tasosbit gGov
fix(ci): validate SDK-dependent projects after the SDKs are built
The committee-uploader and frac-delegation-pipeline validate steps ran
immediately after `pnpm install --ignore-scripts`, but both link to
ggov-sdk / frac-delegation-sdk, whose `dist/` is gitignored and only
produced by the later "Build SDKs" step. Their typecheck (and the
pipeline's test run) therefore resolved against SDK builds that did not
exist yet.

Move both steps below "Build SDKs" so their dependencies are present.
Git Commit 5f617dbf Branch develop Document 1/17 ++ 17 --
tasosbit gGov
Merge cc9bcf252e6bce62dd53f4c35633431b1cc14626 into 09232a838f00c3c5881898ea7d94b5aa9484a51e
Git Commit f1696274 Branch pull/113/merge Document 31/7,779 ++ 6,955 --
tasosbit gGov
Merge 09232a838f00c3c5881898ea7d94b5aa9484a51e into ee6293b187f3be07b59660f8b884810960e75848
Git Commit a1073450 Branch undefined Document 23/3,651 ++ 3,296 --
tasosbit gGov
Merge ee6293b187f3be07b59660f8b884810960e75848 into 624ee5e1b7681e3db72eb4ccdf882cffecaff2d9
Git Commit 9535da7f Branch undefined Document 26/3,449 ++ 2,993 --
tasosbit gGov
feat: registries open their boxes to foreign reads at create
AVM v13 relaxes box isolation: an app can opt its boxes into reads by any other
app. Both registries now do that in a new createApplication, which runs
app_params_set(appForeignBoxReads, true). Verified on localnet that the opcode is
permitted during the creating call itself, so no separate post-create step is
needed - the v13 notes describe enabling access as update-then-run, but that is
for apps already deployed.

Reads only; writes stay exclusive to the owning app. app_params_set is run by an
app on itself, so a contract that is not updatable can never opt in later, which
is what preserves intentional immutability.

The create is a real ABI method rather than a bare one. It lands in the ARC-56 and
the generated clients, it can take arguments later without changing the create
shape a second time, and it matches the house style - FracDelegationInstance
already has an ABI createApplication invoked by selector from the registry
factory. Both createRegistry paths switch from create.bare() to the method call;
every other caller routes through createRegistry.

Two consequences of the create no longer being bare, both found by the suite:

- deployRegistryWithoutBytecode in the period e2e spec deploys a registry
  directly and was still doing a bare create, which is no longer routed and fails
  with an err on the OnCompletion match.

- The ATST unit specs. ATST holds a contract with any create method in
  `isCreating` and rejects every ABI call with "method can not be called while
  creating" until a create method runs - but ATST 1.2.0 predates v13 and cannot
  execute app_params_set, so the real body cannot run in the emulator. The
  registry test subclass overrides createApplication with a no-op and calls it
  after construction; the opt-in itself is covered e2e.

Follow-up worth taking: with foreign reads on, much of the registries' readonly
getter and log-dumping surface (getDelegation, getPeriodSummary, logCommitteePages,
getEscrow, ...) exists only because cross-app box reads used to be impossible.
Not touched here.

Suite green: 539 passed (2 new).
Git Commit 50c605ce Branch undefined Document 22/6,550 ++ 5,997 --
tasosbit gGov
feat: size extra program pages from the program, not a constant
Both registries pinned extraProgramPages at 3 - the old AVM maximum - on the
reasoning that pages could never be added later, so every spawned app rented the
full 8KB whether it needed it or not. AVM v13 lifts the ceiling to 7 pages (16KB)
and lets an update add pages, so the constant is now just overpayment.

The inner appcreate in createPeriod/createInstance derives pages from the length
of the bytecode actually being deployed. Deliberately measured against the BOX
rather than compile(Child).extraProgramPages: the box is the source of truth for
what is being created, and it exists precisely so child code can be upgraded
without redeploying the registry - sizing off the build-time compile would
under-allocate the moment a newer, larger program is uploaded. Schema has no
box-derived equivalent, which is why the two are sourced differently.

Effect at current sizes: period apps 3 -> 1 extra pages (200k microAlgo saved per
period; the v13 compiler shrank GGovPeriod to 4070 bytes, which is why this is 1
and not the 2 a pre-upgrade measurement would suggest), instances unchanged at 3.

createRegistry sizes the registries the same way but keeps ONE spare page. Sized
exactly, GGovRegistry would get a 6144-byte ceiling for a ~5.6KB program - tighter
than the 3 pages it carries today - and adding pages later is the one thing
factory.deploy cannot do: it treats "existing pages < needed" as a schema break
whose only remedies are failing or creating a NEW app. Without the margin, the
next time the program crossed that ceiling a routine createRegistry({update:true})
would start failing with "Schema break detected". Net: GGovRegistry stays at 3,
FracDelegationRegistry drops 3 -> 2. Spawned apps need no such margin - the
registry re-sizes each one from its approval box at every create.

The page assertions in the specs now compute the expected value from the app spec
instead of pinning a literal, so they track the contract rather than needing an
edit every time it changes size.

Note the plan called for reusing algokit-utils' calculateExtraProgramPages. It is
declared in the .d.ts but missing from the package's exports map, so importing it
typechecks and then throws ERR_PACKAGE_PATH_NOT_EXPORTED at runtime. Each SDK gets
a small local util/extraProgramPages.ts instead, matching how the two SDKs already
duplicate shared helpers.

Suite green: 537 passed.
Git Commit 09232a83 Branch feat/avm13-computed-pages Document 23/3,651 ++ 3,296 --
tasosbit gGov
Merge pull request #108 from algorandfoundation/feat/ui-pooled-voting-detail
feat: pooled voting pool detail
Git Commit 8323b5c8 Branch develop Document 35/12,617 ++ 7,221 --
ipaleka frontend
Cleanup of the deprecated static files
Git Commit 1f22837c Branch v1_0_0 Document 61/1 ++ 3,718 --
tasosbit gGov
Merge 92051262cf183fd933b2ff8baedc8813542668ab into 90d6d292ff12869c28923c7ec581d15ef4e5d896
Git Commit 9063fe50 Branch undefined Document 24/10,692 ++ 7,046 --
tasosbit gGov
Merge 90d6d292ff12869c28923c7ec581d15ef4e5d896 into 661263176c29056aa8d998af279324e70fb10a4a
Git Commit 3a5edc5f Branch undefined Document 15/1,960 ++ 210 --