You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This change makes Publish reuse any previously generated RSS and podcast
feeds in case no new items have been added, no existing ones have been
modified, and the configuration for generating the given feed hasn’t
changed.
This is made possible by series of other changes:
- `PodcastFeedConfiguration` is no longer a subclass of its RSS counterpart,
instead, both are separate structs that share a new `FeedConfiguration`
protocol - in order to be able to enforce some degree of consistency.
- Both feed configuration types have been made `Equatable` and `Codable`
in order to persist and compare them to previous configs.
- `PublishingContext` now has a `lastGenerationDate` API, which is used to
compare the last modified item against when the website was last generated.
- `PublishingContext` now also enables any step to create cache files, which
is used by `RSSFeedGenerator` and `PodcastFeedGenerator` to store caches of
their previous configs + feeds.
- An error is now thrown if there are no runnable publishing steps, in order
to be able to associate each `PublishingContext` with a current step name.
- Publish’s internal string normalization code is now available to all strings,
rather than just tags, and used when creating cache files.
- Plot has been bumped to version `0.4.0`.
The main motivation for this change is to not cause each new publishing
process to mark all RSS and podcast feeds as changed, which makes it harder
to track actual changes using version control.
0 commit comments