Prepare for Rust 2018 edition
This commit is contained in:
parent
98f105fda0
commit
fd4128c364
@ -28,10 +28,10 @@ use diesel::r2d2::ConnectionManager;
|
||||
use std::io;
|
||||
use std::path::PathBuf;
|
||||
|
||||
use errors::DataError;
|
||||
use crate::errors::DataError;
|
||||
|
||||
#[cfg(not(test))]
|
||||
use xdg_dirs;
|
||||
use crate::xdg_dirs;
|
||||
|
||||
type Pool = r2d2::Pool<ConnectionManager<SqliteConnection>>;
|
||||
|
||||
|
||||
@ -26,12 +26,12 @@ use diesel;
|
||||
use diesel::dsl::exists;
|
||||
use diesel::select;
|
||||
|
||||
use database::connection;
|
||||
use errors::DataError;
|
||||
use models::*;
|
||||
use crate::database::connection;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::*;
|
||||
|
||||
pub fn get_sources() -> Result<Vec<Source>, DataError> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -42,7 +42,7 @@ pub fn get_sources() -> Result<Vec<Source>, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_podcasts() -> Result<Vec<Show>, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -53,7 +53,7 @@ pub fn get_podcasts() -> Result<Vec<Show>, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_podcasts_filter(filter_ids: &[i32]) -> Result<Vec<Show>, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -65,7 +65,7 @@ pub fn get_podcasts_filter(filter_ids: &[i32]) -> Result<Vec<Show>, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_episodes() -> Result<Vec<Episode>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -76,7 +76,7 @@ pub fn get_episodes() -> Result<Vec<Episode>, DataError> {
|
||||
}
|
||||
|
||||
pub(crate) fn get_downloaded_episodes() -> Result<Vec<EpisodeCleanerModel>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -99,7 +99,7 @@ pub(crate) fn get_downloaded_episodes() -> Result<Vec<EpisodeCleanerModel>, Data
|
||||
// }
|
||||
|
||||
pub(crate) fn get_played_cleaner_episodes() -> Result<Vec<EpisodeCleanerModel>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -111,7 +111,7 @@ pub(crate) fn get_played_cleaner_episodes() -> Result<Vec<EpisodeCleanerModel>,
|
||||
}
|
||||
|
||||
pub fn get_episode_from_rowid(ep_id: i32) -> Result<Episode, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -122,7 +122,7 @@ pub fn get_episode_from_rowid(ep_id: i32) -> Result<Episode, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_episode_widget_from_rowid(ep_id: i32) -> Result<EpisodeWidgetModel, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -136,7 +136,7 @@ pub fn get_episode_widget_from_rowid(ep_id: i32) -> Result<EpisodeWidgetModel, D
|
||||
}
|
||||
|
||||
pub fn get_episode_local_uri_from_id(ep_id: i32) -> Result<Option<String>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -151,7 +151,7 @@ pub fn get_episodes_widgets_filter_limit(
|
||||
filter_ids: &[i32],
|
||||
limit: u32,
|
||||
) -> Result<Vec<EpisodeWidgetModel>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
let columns = (
|
||||
@ -168,7 +168,7 @@ pub fn get_episodes_widgets_filter_limit(
|
||||
}
|
||||
|
||||
pub fn get_podcast_from_id(pid: i32) -> Result<Show, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -179,7 +179,7 @@ pub fn get_podcast_from_id(pid: i32) -> Result<Show, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_podcast_cover_from_id(pid: i32) -> Result<ShowCoverModel, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -191,7 +191,7 @@ pub fn get_podcast_cover_from_id(pid: i32) -> Result<ShowCoverModel, DataError>
|
||||
}
|
||||
|
||||
pub fn get_pd_episodes(parent: &Show) -> Result<Vec<Episode>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -212,7 +212,7 @@ pub fn get_pd_episodes_count(parent: &Show) -> Result<i64, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_pd_episodeswidgets(parent: &Show) -> Result<Vec<EpisodeWidgetModel>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
let columns = (
|
||||
@ -228,7 +228,7 @@ pub fn get_pd_episodeswidgets(parent: &Show) -> Result<Vec<EpisodeWidgetModel>,
|
||||
}
|
||||
|
||||
pub fn get_pd_unplayed_episodes(parent: &Show) -> Result<Vec<Episode>, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -253,7 +253,7 @@ pub fn get_pd_unplayed_episodes(parent: &Show) -> Result<Vec<Episode>, DataError
|
||||
// }
|
||||
|
||||
pub fn get_source_from_uri(uri_: &str) -> Result<Source, DataError> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -264,7 +264,7 @@ pub fn get_source_from_uri(uri_: &str) -> Result<Source, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_source_from_id(id_: i32) -> Result<Source, DataError> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -275,7 +275,7 @@ pub fn get_source_from_id(id_: i32) -> Result<Source, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_podcast_from_source_id(sid: i32) -> Result<Show, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -286,7 +286,7 @@ pub fn get_podcast_from_source_id(sid: i32) -> Result<Show, DataError> {
|
||||
}
|
||||
|
||||
pub fn get_episode_from_pk(title_: &str, pid: i32) -> Result<Episode, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -301,7 +301,7 @@ pub(crate) fn get_episode_minimal_from_pk(
|
||||
title_: &str,
|
||||
pid: i32,
|
||||
) -> Result<EpisodeMinimal, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -318,7 +318,7 @@ pub(crate) fn get_episode_cleaner_from_pk(
|
||||
title_: &str,
|
||||
pid: i32,
|
||||
) -> Result<EpisodeCleanerModel, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -344,25 +344,25 @@ pub(crate) fn remove_feed(pd: &Show) -> Result<(), DataError> {
|
||||
}
|
||||
|
||||
fn delete_source(con: &SqliteConnection, source_id: i32) -> QueryResult<usize> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
|
||||
diesel::delete(source.filter(id.eq(source_id))).execute(con)
|
||||
}
|
||||
|
||||
fn delete_podcast(con: &SqliteConnection, show_id: i32) -> QueryResult<usize> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
|
||||
diesel::delete(shows.filter(id.eq(show_id))).execute(con)
|
||||
}
|
||||
|
||||
fn delete_podcast_episodes(con: &SqliteConnection, parent_id: i32) -> QueryResult<usize> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
|
||||
diesel::delete(episodes.filter(show_id.eq(parent_id))).execute(con)
|
||||
}
|
||||
|
||||
pub fn source_exists(url: &str) -> Result<bool, DataError> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
@ -373,7 +373,7 @@ pub fn source_exists(url: &str) -> Result<bool, DataError> {
|
||||
}
|
||||
|
||||
pub(crate) fn podcast_exists(source_id_: i32) -> Result<bool, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
@ -385,7 +385,7 @@ pub(crate) fn podcast_exists(source_id_: i32) -> Result<bool, DataError> {
|
||||
|
||||
#[cfg_attr(rustfmt, rustfmt_skip)]
|
||||
pub(crate) fn episode_exists(title_: &str, show_id_: i32) -> Result<bool, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
@ -399,7 +399,7 @@ pub(crate) fn episode_exists(title_: &str, show_id_: i32) -> Result<bool, DataEr
|
||||
///
|
||||
/// Return true if `episodes` table is populated.
|
||||
pub fn is_episodes_populated(filter_show_ids: &[i32]) -> Result<bool, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
@ -413,7 +413,7 @@ pub fn is_episodes_populated(filter_show_ids: &[i32]) -> Result<bool, DataError>
|
||||
///
|
||||
/// Return true if `shows` table is populated.
|
||||
pub fn is_podcasts_populated(filter_ids: &[i32]) -> Result<bool, DataError> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
@ -427,7 +427,7 @@ pub fn is_podcasts_populated(filter_ids: &[i32]) -> Result<bool, DataError> {
|
||||
///
|
||||
/// Return true if `source` table is populated.
|
||||
pub fn is_source_populated(filter_ids: &[i32]) -> Result<bool, DataError> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
@ -438,7 +438,7 @@ pub fn is_source_populated(filter_ids: &[i32]) -> Result<bool, DataError> {
|
||||
}
|
||||
|
||||
pub(crate) fn index_new_episodes(eps: &[NewEpisode]) -> Result<(), DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -450,7 +450,7 @@ pub(crate) fn index_new_episodes(eps: &[NewEpisode]) -> Result<(), DataError> {
|
||||
}
|
||||
|
||||
pub fn update_none_to_played_now(parent: &Show) -> Result<usize, DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -466,9 +466,9 @@ pub fn update_none_to_played_now(parent: &Show) -> Result<usize, DataError> {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use database::*;
|
||||
use crate::database::*;
|
||||
use failure::Error;
|
||||
use pipeline;
|
||||
use crate::pipeline;
|
||||
|
||||
#[test]
|
||||
fn test_update_none_to_played_now() -> Result<(), Error> {
|
||||
|
||||
@ -29,7 +29,7 @@ use xml;
|
||||
|
||||
use std::io;
|
||||
|
||||
use models::Source;
|
||||
use crate::models::Source;
|
||||
|
||||
#[fail(
|
||||
display = "Request to {} returned {}. Context: {}",
|
||||
|
||||
@ -26,10 +26,10 @@ use futures::prelude::*;
|
||||
use futures::stream;
|
||||
use rss;
|
||||
|
||||
use dbqueries;
|
||||
use errors::DataError;
|
||||
use models::{Index, IndexState, Update};
|
||||
use models::{NewEpisode, NewEpisodeMinimal, NewShow, Show};
|
||||
use crate::dbqueries;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::{Index, IndexState, Update};
|
||||
use crate::models::{NewEpisode, NewEpisodeMinimal, NewShow, Show};
|
||||
|
||||
/// Wrapper struct that hold a `Source` id and the `rss::Channel`
|
||||
/// that corresponds to the `Source.uri` field.
|
||||
@ -145,10 +145,10 @@ mod tests {
|
||||
use rss::Channel;
|
||||
use tokio::{self, prelude::*};
|
||||
|
||||
use database::truncate_db;
|
||||
use dbqueries;
|
||||
use utils::get_feed;
|
||||
use Source;
|
||||
use crate::database::truncate_db;
|
||||
use crate::dbqueries;
|
||||
use crate::utils::get_feed;
|
||||
use crate::Source;
|
||||
|
||||
use std::fs;
|
||||
use std::io::BufReader;
|
||||
|
||||
@ -121,9 +121,9 @@ pub mod pipeline;
|
||||
mod schema;
|
||||
pub mod utils;
|
||||
|
||||
pub use feed::{Feed, FeedBuilder};
|
||||
pub use models::Save;
|
||||
pub use models::{Episode, EpisodeWidgetModel, Show, ShowCoverModel, Source};
|
||||
pub use crate::feed::{Feed, FeedBuilder};
|
||||
pub use crate::models::Save;
|
||||
pub use crate::models::{Episode, EpisodeWidgetModel, Show, ShowCoverModel, Source};
|
||||
|
||||
// Set the user agent, See #53 for more
|
||||
// Keep this in sync with Tor-browser releases
|
||||
|
||||
@ -22,10 +22,10 @@ use diesel;
|
||||
use diesel::prelude::*;
|
||||
use diesel::SaveChangesDsl;
|
||||
|
||||
use database::connection;
|
||||
use errors::DataError;
|
||||
use models::{Save, Show};
|
||||
use schema::episodes;
|
||||
use crate::database::connection;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::{Save, Show};
|
||||
use crate::schema::episodes;
|
||||
|
||||
#[derive(Queryable, Identifiable, AsChangeset, Associations, PartialEq)]
|
||||
#[table_name = "episodes"]
|
||||
@ -172,7 +172,7 @@ impl Save<usize> for EpisodeWidgetModel {
|
||||
/// Helper method to easily save/"sync" current state of self to the
|
||||
/// Database.
|
||||
fn save(&self) -> Result<usize, Self::Error> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let tempdb = db.get()?;
|
||||
@ -285,7 +285,7 @@ impl Save<usize> for EpisodeCleanerModel {
|
||||
/// Helper method to easily save/"sync" current state of self to the
|
||||
/// Database.
|
||||
fn save(&self) -> Result<usize, Self::Error> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
|
||||
let db = connection();
|
||||
let tempdb = db.get()?;
|
||||
|
||||
@ -58,7 +58,7 @@ pub trait Insert<T> {
|
||||
pub trait Update<T> {
|
||||
type Error;
|
||||
|
||||
fn update(&self, i32) -> Result<T, Self::Error>;
|
||||
fn update(&self, _: i32) -> Result<T, Self::Error>;
|
||||
}
|
||||
|
||||
// This might need to change in the future
|
||||
|
||||
@ -23,13 +23,13 @@ use diesel::prelude::*;
|
||||
use rfc822_sanitizer::parse_from_rfc2822_with_fallback as parse_rfc822;
|
||||
use rss;
|
||||
|
||||
use database::connection;
|
||||
use dbqueries;
|
||||
use errors::DataError;
|
||||
use models::{Episode, EpisodeMinimal, Index, Insert, Update};
|
||||
use parser;
|
||||
use schema::episodes;
|
||||
use utils::url_cleaner;
|
||||
use crate::database::connection;
|
||||
use crate::dbqueries;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::{Episode, EpisodeMinimal, Index, Insert, Update};
|
||||
use crate::parser;
|
||||
use crate::schema::episodes;
|
||||
use crate::utils::url_cleaner;
|
||||
|
||||
#[derive(Insertable, AsChangeset)]
|
||||
#[table_name = "episodes"]
|
||||
@ -66,7 +66,7 @@ impl Insert<()> for NewEpisode {
|
||||
type Error = DataError;
|
||||
|
||||
fn insert(&self) -> Result<(), DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -83,7 +83,7 @@ impl Update<()> for NewEpisode {
|
||||
type Error = DataError;
|
||||
|
||||
fn update(&self, episode_id: i32) -> Result<(), DataError> {
|
||||
use schema::episodes::dsl::*;
|
||||
use crate::schema::episodes::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -330,11 +330,11 @@ impl NewEpisodeMinimal {
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use database::truncate_db;
|
||||
use dbqueries;
|
||||
use crate::database::truncate_db;
|
||||
use crate::dbqueries;
|
||||
use failure::Error;
|
||||
use models::new_episode::{NewEpisodeMinimal, NewEpisodeMinimalBuilder};
|
||||
use models::*;
|
||||
use crate::models::new_episode::{NewEpisodeMinimal, NewEpisodeMinimalBuilder};
|
||||
use crate::models::*;
|
||||
|
||||
use rss::Channel;
|
||||
|
||||
|
||||
@ -22,14 +22,14 @@ use diesel;
|
||||
use diesel::prelude::*;
|
||||
use rss;
|
||||
|
||||
use errors::DataError;
|
||||
use models::Show;
|
||||
use models::{Index, Insert, Update};
|
||||
use schema::shows;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::Show;
|
||||
use crate::models::{Index, Insert, Update};
|
||||
use crate::schema::shows;
|
||||
|
||||
use database::connection;
|
||||
use dbqueries;
|
||||
use utils::url_cleaner;
|
||||
use crate::database::connection;
|
||||
use crate::dbqueries;
|
||||
use crate::utils::url_cleaner;
|
||||
|
||||
#[derive(Insertable, AsChangeset)]
|
||||
#[table_name = "shows"]
|
||||
@ -49,7 +49,7 @@ impl Insert<()> for NewShow {
|
||||
type Error = DataError;
|
||||
|
||||
fn insert(&self) -> Result<(), Self::Error> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -65,7 +65,7 @@ impl Update<()> for NewShow {
|
||||
type Error = DataError;
|
||||
|
||||
fn update(&self, show_id: i32) -> Result<(), Self::Error> {
|
||||
use schema::shows::dsl::*;
|
||||
use crate::schema::shows::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
@ -179,8 +179,8 @@ mod tests {
|
||||
use failure::Error;
|
||||
use rss::Channel;
|
||||
|
||||
use database::truncate_db;
|
||||
use models::NewShowBuilder;
|
||||
use crate::database::truncate_db;
|
||||
use crate::models::NewShowBuilder;
|
||||
|
||||
use std::fs::File;
|
||||
use std::io::BufReader;
|
||||
|
||||
@ -21,12 +21,12 @@ use diesel;
|
||||
use diesel::prelude::*;
|
||||
use url::Url;
|
||||
|
||||
use database::connection;
|
||||
use dbqueries;
|
||||
use crate::database::connection;
|
||||
use crate::dbqueries;
|
||||
// use models::{Insert, Update};
|
||||
use errors::DataError;
|
||||
use models::Source;
|
||||
use schema::source;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::Source;
|
||||
use crate::schema::source;
|
||||
|
||||
#[derive(Insertable)]
|
||||
#[table_name = "source"]
|
||||
@ -50,7 +50,7 @@ impl NewSource {
|
||||
}
|
||||
|
||||
pub(crate) fn insert_or_ignore(&self) -> Result<(), DataError> {
|
||||
use schema::source::dsl::*;
|
||||
use crate::schema::source::dsl::*;
|
||||
let db = connection();
|
||||
let con = db.get()?;
|
||||
|
||||
|
||||
@ -17,8 +17,8 @@
|
||||
//
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
use models::Source;
|
||||
use schema::shows;
|
||||
use crate::models::Source;
|
||||
use crate::schema::shows;
|
||||
|
||||
#[derive(Queryable, Identifiable, AsChangeset, Associations, PartialEq)]
|
||||
#[belongs_to(Source, foreign_key = "source_id")]
|
||||
|
||||
@ -35,12 +35,12 @@ use http::{Request, Response, StatusCode, Uri};
|
||||
use futures::future::{loop_fn, Future, Loop};
|
||||
use futures::prelude::*;
|
||||
|
||||
use database::connection;
|
||||
use errors::*;
|
||||
use feed::{Feed, FeedBuilder};
|
||||
use models::{NewSource, Save};
|
||||
use schema::source;
|
||||
use USER_AGENT;
|
||||
use crate::database::connection;
|
||||
use crate::errors::*;
|
||||
use crate::feed::{Feed, FeedBuilder};
|
||||
use crate::models::{NewSource, Save};
|
||||
use crate::schema::source;
|
||||
use crate::USER_AGENT;
|
||||
|
||||
use std::str::FromStr;
|
||||
|
||||
@ -316,8 +316,8 @@ mod tests {
|
||||
use num_cpus;
|
||||
use tokio;
|
||||
|
||||
use database::truncate_db;
|
||||
use utils::get_feed;
|
||||
use crate::database::truncate_db;
|
||||
use crate::utils::get_feed;
|
||||
|
||||
#[test]
|
||||
fn test_into_feed() -> Result<(), Error> {
|
||||
|
||||
@ -21,8 +21,8 @@
|
||||
|
||||
// #![allow(unused)]
|
||||
|
||||
use errors::DataError;
|
||||
use models::Source;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::Source;
|
||||
use xml::reader;
|
||||
|
||||
use std::collections::HashSet;
|
||||
|
||||
@ -29,8 +29,8 @@ use hyper_tls::HttpsConnector;
|
||||
|
||||
use num_cpus;
|
||||
|
||||
use errors::DataError;
|
||||
use Source;
|
||||
use crate::errors::DataError;
|
||||
use crate::Source;
|
||||
|
||||
use std::iter::FromIterator;
|
||||
|
||||
@ -87,10 +87,10 @@ where
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use database::truncate_db;
|
||||
use dbqueries;
|
||||
use crate::database::truncate_db;
|
||||
use crate::dbqueries;
|
||||
use failure::Error;
|
||||
use Source;
|
||||
use crate::Source;
|
||||
|
||||
// (path, url) tuples.
|
||||
const URLS: &[&str] = &[
|
||||
|
||||
@ -24,10 +24,10 @@ use rayon::prelude::*;
|
||||
|
||||
use url::{Position, Url};
|
||||
|
||||
use dbqueries;
|
||||
use errors::DataError;
|
||||
use models::{EpisodeCleanerModel, Save, Show};
|
||||
use xdg_dirs::DL_DIR;
|
||||
use crate::dbqueries;
|
||||
use crate::errors::DataError;
|
||||
use crate::models::{EpisodeCleanerModel, Save, Show};
|
||||
use crate::xdg_dirs::DL_DIR;
|
||||
|
||||
use std::fs;
|
||||
use std::path::Path;
|
||||
@ -153,13 +153,13 @@ pub fn delete_show(pd: &Show) -> Result<(), DataError> {
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
use Feed;
|
||||
use crate::Feed;
|
||||
|
||||
#[cfg(test)]
|
||||
/// Helper function that open a local file, parse the rss::Channel and gives back a Feed object.
|
||||
/// Alternative Feed constructor to be used for tests.
|
||||
pub fn get_feed(file_path: &str, id: i32) -> Feed {
|
||||
use feed::FeedBuilder;
|
||||
use crate::feed::FeedBuilder;
|
||||
use rss::Channel;
|
||||
use std::fs;
|
||||
use std::io::BufReader;
|
||||
@ -184,8 +184,8 @@ mod tests {
|
||||
use chrono::Duration;
|
||||
use failure::Error;
|
||||
|
||||
use database::truncate_db;
|
||||
use models::NewEpisodeBuilder;
|
||||
use crate::database::truncate_db;
|
||||
use crate::models::NewEpisodeBuilder;
|
||||
|
||||
use std::fs::File;
|
||||
use std::io::Write;
|
||||
|
||||
@ -34,7 +34,7 @@ use podcasts_data::xdg_dirs::PODCASTS_CACHE;
|
||||
use podcasts_data::{EpisodeWidgetModel, Save, ShowCoverModel};
|
||||
|
||||
// use failure::Error;
|
||||
use errors::DownloadError;
|
||||
use crate::errors::DownloadError;
|
||||
|
||||
// TODO: Replace path that are of type &str with std::path.
|
||||
// TODO: Have a convention/document absolute/relative paths, if they should end
|
||||
|
||||
@ -31,22 +31,22 @@ use crossbeam_channel::{unbounded, Receiver, Sender};
|
||||
use fragile::Fragile;
|
||||
use podcasts_data::Show;
|
||||
|
||||
use headerbar::Header;
|
||||
use prefs::Prefs;
|
||||
use settings::{self, WindowGeometry};
|
||||
use stacks::{Content, PopulatedState};
|
||||
use utils;
|
||||
use widgets::about_dialog;
|
||||
use widgets::appnotif::{InAppNotification, SpinnerState, State};
|
||||
use widgets::player;
|
||||
use widgets::show_menu::{mark_all_notif, remove_show_notif, ShowMenu};
|
||||
use crate::headerbar::Header;
|
||||
use crate::prefs::Prefs;
|
||||
use crate::settings::{self, WindowGeometry};
|
||||
use crate::stacks::{Content, PopulatedState};
|
||||
use crate::utils;
|
||||
use crate::widgets::about_dialog;
|
||||
use crate::widgets::appnotif::{InAppNotification, SpinnerState, State};
|
||||
use crate::widgets::player;
|
||||
use crate::widgets::show_menu::{mark_all_notif, remove_show_notif, ShowMenu};
|
||||
|
||||
use std::cell::RefCell;
|
||||
use std::env;
|
||||
use std::rc::Rc;
|
||||
use std::sync::Arc;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
pub(crate) const APP_ID: &str = env!("APP_ID");
|
||||
pub(crate) const VERSION: &str = env!("VERSION");
|
||||
|
||||
@ -28,13 +28,13 @@ use url::Url;
|
||||
|
||||
use podcasts_data::{dbqueries, Source};
|
||||
|
||||
use app::Action;
|
||||
use stacks::Content;
|
||||
use utils::{itunes_to_rss, refresh};
|
||||
use crate::app::Action;
|
||||
use crate::stacks::Content;
|
||||
use crate::utils::{itunes_to_rss, refresh};
|
||||
|
||||
use std::rc::Rc;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
// TODO: Make a proper state machine for the headerbar states
|
||||
|
||||
@ -126,7 +126,7 @@ mod utils;
|
||||
|
||||
mod i18n;
|
||||
|
||||
use app::App;
|
||||
use crate::app::App;
|
||||
|
||||
#[cfg(test)]
|
||||
fn init_gtk_tests() -> Result<(), failure::Error> {
|
||||
@ -167,8 +167,8 @@ fn main() {
|
||||
// cargo seems to create new threads and gtk refuses to initialize again.
|
||||
// So we run every gtk related test here.
|
||||
fn test_stuff() -> Result<(), failure::Error> {
|
||||
use headerbar::Header;
|
||||
use widgets::*;
|
||||
use crate::headerbar::Header;
|
||||
use crate::widgets::*;
|
||||
|
||||
init_gtk_tests()?;
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@ use gio::{Settings, SettingsExt};
|
||||
use gtk;
|
||||
use gtk::prelude::*;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub(crate) struct Prefs {
|
||||
|
||||
@ -23,13 +23,13 @@ use gtk::prelude::*;
|
||||
use crossbeam_channel::Sender;
|
||||
use failure::Error;
|
||||
|
||||
use app::Action;
|
||||
use stacks::{HomeStack, ShowStack};
|
||||
use crate::app::Action;
|
||||
use crate::stacks::{HomeStack, ShowStack};
|
||||
|
||||
use std::cell::RefCell;
|
||||
use std::rc::Rc;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
#[derive(Debug, Clone, Copy)]
|
||||
pub(crate) enum State {
|
||||
|
||||
@ -24,9 +24,9 @@ use gtk::StackTransitionType;
|
||||
use crossbeam_channel::Sender;
|
||||
use failure::Error;
|
||||
|
||||
use app::Action;
|
||||
use stacks::State;
|
||||
use widgets::{EmptyView, HomeView};
|
||||
use crate::app::Action;
|
||||
use crate::stacks::State;
|
||||
use crate::widgets::{EmptyView, HomeView};
|
||||
|
||||
use std::ops::Deref;
|
||||
use std::rc::Rc;
|
||||
|
||||
@ -27,8 +27,8 @@ use failure::Error;
|
||||
use podcasts_data::dbqueries;
|
||||
use podcasts_data::Show;
|
||||
|
||||
use app::Action;
|
||||
use widgets::{ShowWidget, ShowsView};
|
||||
use crate::app::Action;
|
||||
use crate::widgets::{ShowWidget, ShowsView};
|
||||
|
||||
use std::rc::Rc;
|
||||
use std::sync::Arc;
|
||||
|
||||
@ -24,11 +24,11 @@ use crossbeam_channel::Sender;
|
||||
use failure::Error;
|
||||
use podcasts_data::dbqueries::is_episodes_populated;
|
||||
|
||||
use app::Action;
|
||||
use stacks::content::State;
|
||||
use stacks::PopulatedStack;
|
||||
use utils::get_ignored_shows;
|
||||
use widgets::EmptyView;
|
||||
use crate::app::Action;
|
||||
use crate::stacks::content::State;
|
||||
use crate::stacks::PopulatedStack;
|
||||
use crate::utils::get_ignored_shows;
|
||||
use crate::widgets::EmptyView;
|
||||
|
||||
use std::cell::RefCell;
|
||||
use std::ops::Deref;
|
||||
|
||||
@ -47,9 +47,9 @@ use podcasts_downloader::downloader;
|
||||
use std::collections::{HashMap, HashSet};
|
||||
use std::sync::{Arc, Mutex, RwLock};
|
||||
|
||||
use app::Action;
|
||||
use crate::app::Action;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
/// Lazy evaluates and loads widgets to the parent `container` widget.
|
||||
///
|
||||
|
||||
@ -17,11 +17,11 @@
|
||||
//
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
use app::{APP_ID, VERSION};
|
||||
use crate::app::{APP_ID, VERSION};
|
||||
use gtk;
|
||||
use gtk::prelude::*;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
// Totally copied it from fractal.
|
||||
// https://gitlab.gnome.org/danigm/fractal/blob/503e311e22b9d7540089d735b92af8e8f93560c5/fractal-gtk/src/app.rs#L1883-1912
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
use gtk::{self, prelude::*, Adjustment, Orientation, PolicyType};
|
||||
use utils::smooth_scroll_to;
|
||||
use crate::utils::smooth_scroll_to;
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub(crate) struct BaseView {
|
||||
|
||||
@ -17,7 +17,7 @@
|
||||
//
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
use app::APP_ID;
|
||||
use crate::app::APP_ID;
|
||||
use gtk::{self, prelude::*};
|
||||
use std::ops::Deref;
|
||||
|
||||
|
||||
@ -34,14 +34,14 @@ use podcasts_data::utils::get_download_folder;
|
||||
use podcasts_data::EpisodeWidgetModel;
|
||||
use podcasts_downloader::downloader::DownloadProgress;
|
||||
|
||||
use app::Action;
|
||||
use manager;
|
||||
use crate::app::Action;
|
||||
use crate::manager;
|
||||
|
||||
use std::cell::RefCell;
|
||||
use std::rc::{Rc, Weak};
|
||||
use std::sync::{Arc, Mutex, TryLockError};
|
||||
|
||||
use i18n::i18n_f;
|
||||
use crate::i18n::i18n_f;
|
||||
|
||||
lazy_static! {
|
||||
static ref SIZE_OPTS: Arc<size_opts::FileSizeOpts> = {
|
||||
|
||||
@ -27,9 +27,9 @@ use libhandy::{Column, ColumnExt};
|
||||
use podcasts_data::dbqueries;
|
||||
use podcasts_data::EpisodeWidgetModel;
|
||||
|
||||
use app::Action;
|
||||
use utils::{self, lazy_load_full};
|
||||
use widgets::{BaseView, EpisodeWidget};
|
||||
use crate::app::Action;
|
||||
use crate::utils::{self, lazy_load_full};
|
||||
use crate::widgets::{BaseView, EpisodeWidget};
|
||||
|
||||
use std::cell::Cell;
|
||||
use std::rc::Rc;
|
||||
|
||||
@ -17,9 +17,9 @@
|
||||
//
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
use gst::prelude::*;
|
||||
use gst::ClockTime;
|
||||
use gst_player;
|
||||
use crate::gst::prelude::*;
|
||||
use crate::gst::ClockTime;
|
||||
use crate::gst_player;
|
||||
|
||||
use gtk;
|
||||
use gtk::prelude::*;
|
||||
@ -35,8 +35,8 @@ use fragile::Fragile;
|
||||
use podcasts_data::{dbqueries, USER_AGENT};
|
||||
use podcasts_data::{EpisodeWidgetModel, ShowCoverModel};
|
||||
|
||||
use app::Action;
|
||||
use utils::set_image_from_path;
|
||||
use crate::app::Action;
|
||||
use crate::utils::set_image_from_path;
|
||||
|
||||
use std::cell::RefCell;
|
||||
use std::ops::Deref;
|
||||
@ -44,7 +44,7 @@ use std::path::Path;
|
||||
use std::rc::Rc;
|
||||
use std::sync::Mutex;
|
||||
|
||||
use i18n::i18n;
|
||||
use crate::i18n::i18n;
|
||||
|
||||
use mpris_player::{Metadata, MprisPlayer, OrgMprisMediaPlayer2Player, PlaybackStatus};
|
||||
use std::sync::Arc;
|
||||
@ -62,7 +62,7 @@ trait PlayerExt {
|
||||
fn seek(&self, offset: ClockTime, direction: SeekDirection);
|
||||
fn fast_forward(&self);
|
||||
fn rewind(&self);
|
||||
fn set_playback_rate(&self, f64);
|
||||
fn set_playback_rate(&self, _: f64);
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
|
||||
@ -30,9 +30,9 @@ use rayon;
|
||||
use podcasts_data::dbqueries;
|
||||
use podcasts_data::Show;
|
||||
|
||||
use app::Action;
|
||||
use utils::{self, lazy_load};
|
||||
use widgets::{BaseView, EmptyShow, EpisodeWidget, ShowMenu};
|
||||
use crate::app::Action;
|
||||
use crate::utils::{self, lazy_load};
|
||||
use crate::widgets::{BaseView, EmptyShow, EpisodeWidget, ShowMenu};
|
||||
|
||||
use std::ops::Deref;
|
||||
use std::rc::Rc;
|
||||
|
||||
@ -30,13 +30,13 @@ use podcasts_data::dbqueries;
|
||||
use podcasts_data::utils::delete_show;
|
||||
use podcasts_data::Show;
|
||||
|
||||
use app::Action;
|
||||
use utils;
|
||||
use widgets::appnotif::InAppNotification;
|
||||
use crate::app::Action;
|
||||
use crate::utils;
|
||||
use crate::widgets::appnotif::InAppNotification;
|
||||
|
||||
use std::sync::Arc;
|
||||
|
||||
use i18n::{i18n, i18n_f};
|
||||
use crate::i18n::{i18n, i18n_f};
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub(crate) struct ShowMenu {
|
||||
|
||||
@ -25,9 +25,9 @@ use failure::Error;
|
||||
use podcasts_data::dbqueries;
|
||||
use podcasts_data::Show;
|
||||
|
||||
use app::Action;
|
||||
use utils::{get_ignored_shows, lazy_load, set_image_from_path};
|
||||
use widgets::BaseView;
|
||||
use crate::app::Action;
|
||||
use crate::utils::{get_ignored_shows, lazy_load, set_image_from_path};
|
||||
use crate::widgets::BaseView;
|
||||
|
||||
use std::cell::Cell;
|
||||
use std::rc::Rc;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user