1.002000 2026-09-08 - Review fixes: validate all recognized group metadata fields and timeline references, reject conflicting flags and empty group identifiers, and allow edit_metadata to describe supported kinds and LiveKit support. Explicit empty wallet encryption advertisements no longer imply NIP-04. Execute the actual metadata, pin, and PaymentTargets POD examples in tests. - Update the documented NIP conformance target to c3fd9af1 (2026-09-04). - Add Net::Nostr::PaymentTargets for NIP-A3 kind 10133 lists, strict target parsing, and URI rendering for known and future payment types. - Document and test NIP-51 favorite follow sets (kind 10011) and NIP-46 unsupported-method error replies without restricting future method names. - Allow NIP-22 comments on kind 1 notes. - Parse and serialize optional NIP-67 EOSE hint arrays, preserving unknown strings and rejecting malformed hint values. - Add NIP-47 extension discovery and Info::extensions/supports_extension. Discovery builders and parsers now reject malformed token lists and duplicate or malformed discovery tags; existing notification APIs remain. - Add NIP-29 invite suffixes, banner/parent/ordered child metadata, and update_pin_list/pinned_events/pins_from_event helpers with strict validation. - Tighten Filter validation to reject trailing newlines in identifiers, integer fields, and tag filter names, and reject non-ASCII digits in kinds, since, until, and limit. This also applies to filters parsed from REQ, COUNT, and NEG-OPEN messages. 1.001002 2026-07-07 - Rework Net::Nostr::Blossom as a strict NIP-B7/BUD-03 integration helper for kind 10063 server-list events, server URL validation, hash extraction, fallback URL generation, and SHA-256 content verification. This intentionally changes the early Blossom API: server lists are now constructed with new(servers => \@urls), duplicates are preserved, and malformed server-list events are rejected. - Tighten Blossom URL hash extraction so file extensions are captured only at the end of the input or before a query or fragment. - Add URI as a runtime dependency for structured server URL parsing. - Use URI-backed parsing and composition for relay URLs, NIP-05 base URLs, NIP-46/NIP-47 connection URIs, and zap callback URLs. This tightens relay URL validation for NIP-17 and NIP-65 helpers and rejects malformed or valueless relay parameters and empty relay lists in NIP-46/NIP-47 connection URIs. 1.001001 2026-07-06 - Sign and verify NIP-01 Schnorr signatures over the 32-byte event id instead of its hex string, so events interoperate with standard Nostr implementations. Signatures produced by earlier versions are no longer valid and must be regenerated. 1.001000 2026-07-03 - First independent Net-Nostr-Core release, split from Net-Nostr - Provide core protocol and NIP tooling - Make AnyEvent::HTTP optional for Core and lazy-load it only for Net::Nostr::Identifier network lookup and verification - Recommend AnyEvent::HTTP for Core installs; the Net::Nostr shim keeps it as a hard dependency for the full historical install - Remove support for unrecommended NIPs 15, 28, 72, and 90, including Net::Nostr::Marketplace, Net::Nostr::Channel, Net::Nostr::Community, and Net::Nostr::DVM - Use Makefile.PL as the single dependency source of truth