Skip to content

Releases: pkcprotocol/pkc-js

v0.0.18

19 Apr 01:57

Choose a tag to compare

0.0.18 (2026-04-19)

Bug Fixes

  • test: use direct vitest imports instead of unreliable globals (fd82e48)

v0.0.17

18 Apr 11:49

Choose a tag to compare

0.0.17 (2026-04-18)

Bug Fixes

  • add timeout to resolveAuthorNameIfNeeded to prevent hanging on unresolvable domains (15adb88)
  • break circular dependency in schema imports (717fe1a)
  • bypass Vite 8 JSON recursion limit on large test fixtures (fef14c0)
  • don't throw retriable errors immediately in getCommunity (944b7ad)
  • downgrade release-it to 19.2.4 to resolve peer dependency conflict (f5f6a73)
  • downgrade Vite 8 to 7.3.2 to fix JSON recursion limit on test fixtures (f80d04b)
  • reduce npm audit vulnerabilities from 16 to 11 (de9fdfd), closes cz-cli#1011 #1007 #963
  • resolve author names through community's client manager and update RPC test params (aca0e21)
  • resolve RPC test failures from shared RPC types refactoring (f1241eb)
  • resolve TypeScript errors in test files for tempy imports and NetworkError type (3752139)
  • route browser debug output through per-test stderr logs (f5783fd)
  • skip ignoreChallenge tests until feature is implemented (ac0a1c0)
  • test: stabilize flaky browser gateway tests (bc317a3)
  • untrack updating community before async stop to prevent race condition (5699f5c)

v0.0.16

16 Apr 08:16

Choose a tag to compare

0.0.16 (2026-04-16)

Features

  • ci: enable per-test logs and upload all logs as artifacts on failure (c7a23a1)
  • test: add --per-test-logs flag for per-file stdout/stderr capture (47a65d5)

Bug Fixes

  • add missing ERR_ROLE_ADDRESS_NAME_COULD_NOT_BE_RESOLVED error code to fix build (9ce78eb)
  • ci: cap vitest forks to 3 on Windows to prevent Kubo overload (b581c2f)
  • ci: use GitHub App token for release push to bypass branch protection (3c8e068)
  • ci: use os.tmpdir() for test server log path to fix Windows CI (142e26f)
  • ci: use runner.temp for per-test-logs path to fix Windows artifact upload (3f53a58)
  • comment: search all tracked communities when comment identity is unknown (477e9c2)
  • community: handle error fired synchronously during community.update() (9777abf)
  • community: make ERR_COMMUNITY_SIGNATURE_IS_INVALID retriable for gateways (d33f112)
  • community: prevent author name resolution from setting updatingState to resolving-name (6e804b8)
  • community: set publicKey in setAddress() for non-domain addresses (8b38f8c)
  • pass resolved community signature to usePageCidsOfParentToFetchCommentUpdateForReply (b311da1)
  • pkc: be stricter about no public key or name (dd1805e)
  • rpc: preserve plain Error messages in RPC server→client serialization (8120f57)
  • rpc: prevent circular error reference from crashing RPC server (f4d880b)
  • rpc: send communityPublicKey/communityName instead of communityAddress in page RPC params (780214f)
  • schema: preserve class-based name resolver instances through Zod parsing (63ebcc0)
  • test: add missing publicKey to delete() mock in garbage collection test (2d037d3)
  • test: attach event listeners before update() to prevent RPC race condition (7a25545)
  • test: avoid concurrent test contention in updatingstate regression test (337bc68)
  • test: check RPC server is running before executing RPC tests (6bff826)
  • test: log test server output to /tmp/test-server-{config}-{date}.log (5c94dc2)
  • test: make tests using real Kubo port 15005 sequential (7da2636)
  • test: make vitest JSON report path unique per config and environment (c0df47d)
  • test: retry IPNS name.resolve in publishToIpns to avoid transient CI failures (2b95fa7)
  • test: update tests for silent gateway signature error retry (a02db14)
  • verify: restore community-belongs-to check and fix replies._community timing (ac3fb67)

v0.0.15

12 Apr 09:19

Choose a tag to compare

0.0.15 (2026-04-12)

Features

  • schema: make communityAddress optional in publication creation (2ad308c)

Bug Fixes

  • purge: prevent comment edits from being purged during pre-rebranding DB migration (f339690)
  • rpc: send communityName/communityPublicKey instead of communityAddress (8d03773)

v0.0.14

11 Apr 09:00

Choose a tag to compare

0.0.14 (2026-04-11)

Features

  • challenges: generate unique random default challenge answer per community (f352de3)

Bug Fixes

  • challenges: preserve default challenge upgrade path when default structure changes (e0b4f42)
  • prevent _purgeCommentsWithInvalidSchemaOrSignature from purging all comments (3984f9f)

v0.0.13

10 Apr 12:15

Choose a tag to compare

0.0.13 (2026-04-10)

Bug Fixes

  • rename INTERNAL_SUBPLEBBIT keyv key for pre-rebranding community DBs (5ee9d35)
  • skip write operations when opening db in readonly mode (62b403f)

v0.0.12

10 Apr 09:51

Choose a tag to compare

0.0.12 (2026-04-10)

Features

  • add challenges export subpath (923171b)
  • add nameResolved to AuthorReservedFields and test subplebbit nameResolved rejection (f331d33)
  • db migration v36→v37 + fix test typing for Phase 1B Step 2 (Phase 1B Step 3) (4d01aec)
  • make duplicate publication handling idempotent (up to 3 retries) (8b5dd67)
  • make nameResolved a reserved field across all publication types and IPFS records (1fdbe67)
  • publication wire format — communityPublicKey/communityName, defer signing (Phase 1B Step 2) (779b4da)
  • publicKey fallback when community name resolution fails (e304285)
  • replace chainProviders-based name resolution with nameResolvers plugin system (2385cd5)
  • restructure RPC wire format for local subs and expose raw.localSubplebbit (086678b)
  • stats: canonicalize active-user counts across pseudonymity aliases (e07ee58)
  • subplebbit wire format — add name, make address instance-only (Phase 1B Step 1) (3c3fac7)
  • support key migration over RPC and remove unnecessary itSkipIfRpc (234c9be)
  • thread stop abort signals into fetch/load operations (727744b)
  • update nameResolver resolve to return { publicKey } object and accept abortSignal (366f5de)
  • validate subplebbit loading with address/name/publicKey combinations (4c31894)

Bug Fixes

  • abort comment and sub verification on stop (437913e)
  • add "runtimeupdate" RPC event for nameResolved changes without commentUpdate (02f8a98)
  • add null guard for raw.subplebbitIpfs in toJSONRpcRemote (5ea6908)
  • align nameResolvers clients test with new nameResolvers system (2d96ec3)
  • align page signature test with runtime-only author.address (02ef281)
  • align resolver tests with server-side author domain validation (4e2f635)
  • align subplebbit signature test with immutable author.address (757e750)
  • align tests and migration with author.address wire format refactor (d8ec089)
  • allow author.address in old CommentIpfs records during verification (55c1363)
  • allow authors to delete their own pending/disapproved comments (45c59cc)
  • allow nullable author column in DB tables for empty wire authors (96172a0)
  • ci: allow release-it to run with dirty working dir from build output (676822a)
  • ci: include dist in release-it commit to fix empty changelogs (8f4ecaa)
  • ci: move key-migration test to node-only directory (7932a96)
  • ci: update benchmarks deploy key secret name to PKC_JS_BENCHMARKS_DEPLOY_KEY (9c58340)
  • correct v36 test schemas to use subplebbitAddress and update stale mock name (21fc2c2)
  • deferred signing in test utils + _spreadExtraProps CID mismatch for migrated rows (21d9b4d)
  • deferred signing sets subtype props + robust community address DB queries (ee716e5)
  • derive communityName/communityPublicKey from communityAddress (05b2434)
  • destroy name resolvers when pkc.destroy() is called (10eca9a)
  • edit({ address: domain }) now sets name for correct address derivation (d33f4ed)
  • fail fast in run-test-config if test server is offline (6de9c58)
  • fix multiple RPC test failures (ad05010)
  • fix RPC test failures for address edit, nameResolved propagation, and spurious updates (d60e253)
  • fix RPC test failures for nameResolved propagation, internal format key, and test utility (bb5afca)
  • fix RPC test failures for subplebbitIpfs, author resolution, nameResolvers (7f5ae07)
  • fix RPC test failures in ownKeys, createSubplebbit, and clone rehydration (6cf013a)
  • gracefully handle invalid subplebbitIpfs schema from old DBs before migration (f6b0327)
  • handle community key migration in comment update handler (e7b900b)
  • handle communityAddress in getCommunityAddressFromRecord and raw.subplebbitIpfs compat (d6abb44)
  • handle getter-only properties in deepMergeRuntimeFields (c836d8c)
  • handle subplebbit name resolution migration (66c4e79)
  • include signature in verifyCommentIpfs cache key to detect tampered signatures (65eec27)
  • insert comment moderation into DB before setting publish trigger (57be7f6)
  • log signatureValidity.reason in community gateway error for better diagnostics (32fff36)
  • logging: add error logging before throwing P2P fetch/resolve errors (76afbdc)
  • make author-name-resolved page tests robust and deterministic (1415558)
  • make comment author.nameResolved strictly runtime — never copied via spread/stringify (6914814)
  • make modQueue.pages default to {} like posts.pages (1837289)
  • merge: fix merge algo and add a regression for it (c46c35c)
  • normalize domain author input (98e1879)
  • pass object param to unsubscribe in PlebbitWsServer.destroy() (77d15d8)
  • preserve author.nameResolved through createComment (468da8b)
  • preserve commentUpdate.author fields (subplebbit, etc.) in page mapping ([ab1c4fb](ab1c4fb12868e9e08816d...
Read more

v0.0.11

25 Feb 08:25

Choose a tag to compare

0.0.11 (2026-02-25)

v0.0.10

25 Feb 05:02

Choose a tag to compare

0.0.10 (2026-02-25)

Build

v0.0.9

23 Feb 07:22

Choose a tag to compare

0.0.9 (2026-02-23)

Build