- prrocessor.scheduling: support custom interval
- fix typo
- Should install yt_dlp and boto3 by extra dependencies.
- fetcher,storage: make yt_dlp and boto3 optional
- util: add retry decorator
- fetcher.core,processor: add start and stop hook to fetcher
- util: rename retry module to retry_util
- rss.podcast: fix pu_bdate format
- fetcher.processor: check exit signal
- config: fix tomlkit
- config.core: fix union
- config.storage: remove absmeta
- storage: support local storage
- cli: support local storage
- rss.podcast: fix items merge
- fetcher.youtube: add source id to skip log
- fetcher.youtube: cache dir
- fetcher.youtube: add source id to log
- storage: support start and stop storage
- config: support filter episodes by regex
- config: use storage instead s3
- fetcher: support youtube channel
- rss.core: remove stylesheet
- fetcher.youtube: catch download error
- rss.podcast: fix image url
- peocessor.task: fix mime
- asset: fix script url
- changes for config file
- rss: add stylesheet
- add exit signal
- rss.core: fix encoding of rss bytes
- config: change s3.cdn_prefix to s3.public_endpoint
- processor: move execution to Task class, and support task hook
- fetcher.youtube: fetch image and link for episode
- config: quote id before used to generate storage key
- add cli
- processor: add processor
- rss: support mergation
- rss: use qname to manage namespace
- rss: support load rss object from xml string
- rss.core: add plain resource and rss deserializer
- config: add source config
- config: support optional env and required env
- add config
- rss: add rss generator and serializer
- complete youtube parser and s3 storage
- rss: compatible with apple's requirements
- processor.scheduling: add next run time to add_job
- config: fix decorator
- config: fix tomlkit
- processor.scheduling: fix shutdown
- fetcher.youtube: fix logger
- config: rename source.name to source.id
- processor.schedulling: fix shutdown
- processor.core: fix rss key
- rss: fix text
- config: add app config
- processor.core: fix original file
- change cli argument
- fetcher.youtube: add lock
- fetcher: rename parser to fetcher
- parser.youtube,-storage.s3: remove redundant config dependency
- rss: reduce public class
- env: use dataclass as env object
- rss.podcast: fix category pattern
- supplement podcast field
- cli: remove cli logic to cli module
- add log
- rss: hide unnecessary property
- parser.youtube: use lru_cache
- config: rename env to config and use pydantic manage config