Skip to main content

codoseo_core/
change.rs

1//! A difference between two crawls of the same site.
2
3use serde::{Deserialize, Serialize};
4use url::Url;
5
6use crate::check::Severity;
7
8#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
9#[serde(rename_all = "snake_case")]
10pub enum ChangeKind {
11    NewUrl,
12    RemovedUrl,
13    StatusChanged,
14    BecameNoindex,
15    TitleChanged,
16    TitleRemoved,
17    CanonicalChanged,
18    RedirectChainGrew,
19    RobotsTxtChanged,
20    SitemapShrank,
21    ErrorSpike,
22    SiteMoved,
23}
24
25#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
26pub struct Change {
27    pub kind: ChangeKind,
28    pub severity: Severity,
29    pub url: Option<Url>,
30    pub before: String,
31    pub after: String,
32}