Files
smartfeed/changelog.md

4.1 KiB

Changelog

2025-10-31 - 1.2.0 - feat(podcast)

Add Podcast 2.0 support and remove external 'feed' dependency; implement internal RSS/Atom/JSON generators and update tests/README

  • Add Podcast 2.0 fields and validation: podcastGuid (required), podcastMedium, podcastLocked and podcastLockOwner
  • Include Podcast 2.0 tags in RSS export (podcast:guid, podcast:medium, podcast:locked, podcast:person, podcast:transcript, podcast:funding)
  • Remove dependency on the external 'feed' package and replace with internal feed generation for RSS, Atom and JSON Feed
  • Update ts/plugins.ts to stop exporting the removed 'feed' plugin
  • Update numerous tests to provide podcastGuid and exercise Podcast 2.0 features
  • Documentation updated (readme.md) to document Podcast 2.0 support and examples

2025-10-31 - 1.1.1 - fix(podcast)

Improve podcast episode validation, make Feed.itemIds protected, expand README and add tests

  • PodcastFeed.addEpisode: validate iTunes duration separately (require itunesDuration) and ensure it is a positive number; audioLength must be a positive number; moved itunesDuration out of the generic required-fields list to allow proper numeric validation and clearer errors.
  • Feed: changed itemIds from private to protected so subclasses (e.g. PodcastFeed) can access and enforce duplicate ID checks across episodes/items.
  • Documentation: major README overhaul with Quick Start, Podcast examples, API reference, validation & security notes, best practices, and TypeScript usage examples.
  • Tests: added comprehensive podcast tests (advanced features and validation) and updated/expanded test coverage for feed creation, export, parsing and validation to cover transcripts, funding, persons, explicit flags, and more.
  • This is a backwards-compatible bugfix and documentation/test update; no breaking public API changes intended.

2025-10-31 - 1.1.0 - feat(smartfeed)

Implement Smartfeed core: add feed validation, parsing, exporting and comprehensive tests

  • Implement Feed class with full option validation, addItem validation (URLs, email, timestamp), duplicate ID protection, content sanitization and generation of RSS/Atom/JSON feeds.
  • Add validation utilities (validateUrl, validateDomain, validateEmail, validateTimestamp, validateRequiredFields, sanitizeContent) in ts/validation.ts used across the module.
  • Implement Smartfeed class functions: createFeed, createFeedFromArticleArray, parseFeedFromString and parseFeedFromUrl with rss-parser integration.
  • Adjust module exports (ts/index.ts) and plugin imports (ts/plugins.ts) to match implemented classes.
  • Add comprehensive test suite under test/ (creation, export, parsing, validation, integration) to exercise new functionality.
  • Add deno.lock to lock dependency graph for reproducible builds.

2025-10-31 - 1.0.11 - smartfeed / feed

Add feed and validation utilities for the smartfeed plugin and perform related dependency, refactor, test, and CI updates.

  • feat: implement feed and validation utilities for smartfeed to support improved feed generation and input validation.
  • chore: bump feed dependency to v5.1.0 and adjust import paths for consistency with the updated package.
  • refactor: improve Feed and SmartFeed class structure and formatting for readability and maintainability.
  • fix: update test imports to use the new package path after refactor/import changes.
  • chore: streamline plugin exports to a consistent structure.
  • chore: update README for clarity and formatting improvements.
  • chore: update TypeScript configuration for better compatibility.
  • ci: add workflows to handle tag and non-tag pushes.

2020-10-25 to 2024-05-29 - 1.0.1..1.0.11 - housekeeping

Collection of minor releases, metadata updates and routine fixes made across multiple intermediate versions.

  • Multiple small "fix(core): update" changes and routine release markers (1.0.2 → 1.0.11).
  • Updates to package metadata and npmextra.json (githost) across several commits.
  • Switch to new organization naming/scheme.
  • Miscellaneous tsconfig and description updates.
  • These changes were primarily maintenance, CI/package metadata, and release housekeeping.