Mar 11, 2-3 AM (6)
Mar 11, 3-4 AM (0)
Mar 11, 4-5 AM (4)
Mar 11, 5-6 AM (3)
Mar 11, 6-7 AM (26)
Mar 11, 7-8 AM (41)
Mar 11, 8-9 AM (94)
Mar 11, 9-10 AM (24)
Mar 11, 10-11 AM (67)
Mar 11, 11-12 PM (37)
Mar 11, 12-1 PM (67)
Mar 11, 1-2 PM (63)
Mar 11, 2-3 PM (42)
Mar 11, 3-4 PM (45)
Mar 11, 4-5 PM (41)
Mar 11, 5-6 PM (51)
Mar 11, 6-7 PM (35)
Mar 11, 7-8 PM (20)
Mar 11, 8-9 PM (39)
Mar 11, 9-10 PM (14)
Mar 11, 10-11 PM (57)
Mar 11, 11-12 AM (43)
Mar 12, 12-1 AM (4)
Mar 12, 1-2 AM (8)
Mar 12, 2-3 AM (6)
Mar 12, 3-4 AM (3)
Mar 12, 4-5 AM (4)
Mar 12, 5-6 AM (8)
Mar 12, 6-7 AM (46)
Mar 12, 7-8 AM (15)
Mar 12, 8-9 AM (62)
Mar 12, 9-10 AM (50)
Mar 12, 10-11 AM (88)
Mar 12, 11-12 PM (29)
Mar 12, 12-1 PM (60)
Mar 12, 1-2 PM (51)
Mar 12, 2-3 PM (48)
Mar 12, 3-4 PM (62)
Mar 12, 4-5 PM (23)
Mar 12, 5-6 PM (26)
Mar 12, 6-7 PM (14)
Mar 12, 7-8 PM (39)
Mar 12, 8-9 PM (28)
Mar 12, 9-10 PM (10)
Mar 12, 10-11 PM (41)
Mar 12, 11-12 AM (16)
Mar 13, 12-1 AM (7)
Mar 13, 1-2 AM (21)
Mar 13, 2-3 AM (13)
Mar 13, 3-4 AM (7)
Mar 13, 4-5 AM (1)
Mar 13, 5-6 AM (2)
Mar 13, 6-7 AM (7)
Mar 13, 7-8 AM (32)
Mar 13, 8-9 AM (48)
Mar 13, 9-10 AM (90)
Mar 13, 10-11 AM (25)
Mar 13, 11-12 PM (32)
Mar 13, 12-1 PM (54)
Mar 13, 1-2 PM (59)
Mar 13, 2-3 PM (35)
Mar 13, 3-4 PM (58)
Mar 13, 4-5 PM (26)
Mar 13, 5-6 PM (30)
Mar 13, 6-7 PM (17)
Mar 13, 7-8 PM (39)
Mar 13, 8-9 PM (28)
Mar 13, 9-10 PM (14)
Mar 13, 10-11 PM (23)
Mar 13, 11-12 AM (26)
Mar 14, 12-1 AM (1)
Mar 14, 1-2 AM (1)
Mar 14, 2-3 AM (9)
Mar 14, 3-4 AM (2)
Mar 14, 4-5 AM (0)
Mar 14, 5-6 AM (1)
Mar 14, 6-7 AM (0)
Mar 14, 7-8 AM (1)
Mar 14, 8-9 AM (19)
Mar 14, 9-10 AM (3)
Mar 14, 10-11 AM (0)
Mar 14, 11-12 PM (3)
Mar 14, 12-1 PM (1)
Mar 14, 1-2 PM (20)
Mar 14, 2-3 PM (5)
Mar 14, 3-4 PM (0)
Mar 14, 4-5 PM (0)
Mar 14, 5-6 PM (0)
Mar 14, 6-7 PM (2)
Mar 14, 7-8 PM (4)
Mar 14, 8-9 PM (11)
Mar 14, 9-10 PM (10)
Mar 14, 10-11 PM (20)
Mar 14, 11-12 AM (66)
Mar 15, 12-1 AM (6)
Mar 15, 1-2 AM (23)
Mar 15, 2-3 AM (8)
Mar 15, 3-4 AM (0)
Mar 15, 4-5 AM (1)
Mar 15, 5-6 AM (1)
Mar 15, 6-7 AM (0)
Mar 15, 7-8 AM (0)
Mar 15, 8-9 AM (2)
Mar 15, 9-10 AM (14)
Mar 15, 10-11 AM (1)
Mar 15, 11-12 PM (7)
Mar 15, 12-1 PM (20)
Mar 15, 1-2 PM (19)
Mar 15, 2-3 PM (30)
Mar 15, 3-4 PM (2)
Mar 15, 4-5 PM (4)
Mar 15, 5-6 PM (4)
Mar 15, 6-7 PM (8)
Mar 15, 7-8 PM (8)
Mar 15, 8-9 PM (11)
Mar 15, 9-10 PM (7)
Mar 15, 10-11 PM (28)
Mar 15, 11-12 AM (23)
Mar 16, 12-1 AM (7)
Mar 16, 1-2 AM (19)
Mar 16, 2-3 AM (14)
Mar 16, 3-4 AM (9)
Mar 16, 4-5 AM (0)
Mar 16, 5-6 AM (5)
Mar 16, 6-7 AM (21)
Mar 16, 7-8 AM (32)
Mar 16, 8-9 AM (57)
Mar 16, 9-10 AM (90)
Mar 16, 10-11 AM (61)
Mar 16, 11-12 PM (78)
Mar 16, 12-1 PM (50)
Mar 16, 1-2 PM (60)
Mar 16, 2-3 PM (21)
Mar 16, 3-4 PM (84)
Mar 16, 4-5 PM (48)
Mar 16, 5-6 PM (23)
Mar 16, 6-7 PM (87)
Mar 16, 7-8 PM (29)
Mar 16, 8-9 PM (24)
Mar 16, 9-10 PM (17)
Mar 16, 10-11 PM (34)
Mar 16, 11-12 AM (33)
Mar 17, 12-1 AM (13)
Mar 17, 1-2 AM (14)
Mar 17, 2-3 AM (6)
Mar 17, 3-4 AM (5)
Mar 17, 4-5 AM (7)
Mar 17, 5-6 AM (16)
Mar 17, 6-7 AM (15)
Mar 17, 7-8 AM (36)
Mar 17, 8-9 AM (198)
Mar 17, 9-10 AM (39)
Mar 17, 10-11 AM (35)
Mar 17, 11-12 PM (20)
Mar 17, 12-1 PM (119)
Mar 17, 1-2 PM (110)
Mar 17, 2-3 PM (46)
Mar 17, 3-4 PM (88)
Mar 17, 4-5 PM (28)
Mar 17, 5-6 PM (13)
Mar 17, 6-7 PM (12)
Mar 17, 7-8 PM (30)
Mar 17, 8-9 PM (39)
Mar 17, 9-10 PM (30)
Mar 17, 10-11 PM (34)
Mar 17, 11-12 AM (21)
Mar 18, 12-1 AM (0)
Mar 18, 1-2 AM (3)
Mar 18, 2-3 AM (0)
4,538 commits this week Mar 11, 2026 - Mar 18, 2026
Support backpack builds (#2467)
* make-install-plan: Include info needed for backpack.

* Support backpack builds.

Fixes #244

* fixup! Support backpack builds.

* Bump head.hackage

* Dump head.hackage

* Work around GHC JS backend not producing .o files for backpack signatures

GHC's JavaScript backend doesn't produce .o files for backpack signature
module instantiations, causing ar to fail when creating library archives.

Fix this by replacing the ar command in GHC's settings with a wrapper
that filters out missing .o files from both command-line arguments and
response files. The fix only applies to GHCJS instantiated backpack
builds, leaving all other builds unchanged.

---------

Co-authored-by: Hamish Mackenzie <[email protected]>
fix(chainsync): filter inbound peers from chain selection and fix dedup gap
Inbound connections are clients pulling data from us. They should not
participate in chain selection — letting them publish PeerTipUpdateEvents
causes spurious chain switches when ephemeral inbound peers report a tip
and then disconnect.

Add IsInboundConnection to ConnectionManager and use it to gate
PeerTipUpdateEvent publication in chainsyncClientRollForward.

Also fix a blockfetch pipeline gap caused by the global seenHeaders dedup:
when an inactive outbound peer consumes isNew=true for a header before the
active connection's callback runs, the active peer later sees isNew=false
and the ChainsyncEvent is silently dropped — blockfetch never fires. Detect
this case (isNew=false on the active connection) and publish the event
anyway so the ledger can queue the block for fetch.
Change `B` constructor of `Metadatum` from `ByteString` to `ByteArray`.
Currently, the `B` constructor contains a `ByteString` (pinned in
memory) with a max length of 64 bytes. Since the `ByteString` is small
and can be instantiated frequently, it makes more sense to use an
unpinned byte array representation (`Data.Array.Byte.ByteArray`) so
that we can take advantage of Haskell's garbage collection to improve
memory allocation of objects in the heap.

We also place an upper bound on `nothunks` because of new orphan
instance (`instance NoThunks ByteArray`) that is going to be upstreamed.
Change `B` constructor of `Metadatum` from `ByteString` to `ByteArray`.
Currently, the `B` constructor contains a `ByteString` (pinned in
memory) with a max length of 64 bytes. Since the `ByteString` is small
and can be instantiated frequently, it makes more sense to use an
unpinned byte array representation (`Data.Array.Byte.ByteArray`) so
that we can take advantage of Haskell's garbage collection to improve
memory allocation of objects in the heap.

We also place an upper bound on `nothunks` because of new orphan
instance (`instance NoThunks ByteArray`) that is going to be upstreamed.
CIP-0170? | KERI-backed metadata attestations (#1113)
* Adding 1517 metadata label to registry for Reeve - transparent and verifiable financial records on-chain

* docs: adding keri cip

* chore: merged master

* fixing trailing comma for CIP-0010 validation + coding standard

* adding original `Discussion:` link

* docs: added path to active

* assign 170 to metadata label

* assign 170 as CIP number pending confirmation as candiate

* removed syntax error quotes + also fixed ordering

* trailing comma not allowed in JSON after all

* docs: renamed folder to CIP-0170

* docs: added chapter path to active

* Replace '????' and 'XXXX' with '170' in JSON

Since we got our CIP number, replacing the wildcards with the actual number

* demote non-standard H2 heading to H3

* added discussion label as original PR

* (1 of 2) tiny format detail for new CIP template

* (2 of 2) tiny format detail for new CIP template

---------

Co-authored-by: Robert Phair <[email protected]>