Fix compatibility with SQlite
Also fixes a bug in plume-models
This commit is contained in:
		
							parent
							
								
									5fa7a2a742
								
							
						
					
					
						commit
						4d382d8014
					
				| @ -18,3 +18,7 @@ version = "*" | ||||
| 
 | ||||
| [dependencies.plume-models] | ||||
| path = "../plume-models" | ||||
| 
 | ||||
| [features] | ||||
| postgres = ["plume-models/postgres"] | ||||
| sqlite = ["plume-models/sqlite"] | ||||
|  | ||||
| @ -1,8 +1,8 @@ | ||||
| use clap::{Arg, ArgMatches, App, SubCommand}; | ||||
| use diesel::PgConnection; | ||||
| 
 | ||||
| use std::env; | ||||
| use plume_models::{ | ||||
|     Connection, | ||||
|     instance::*, | ||||
|     safe_string::SafeString, | ||||
| }; | ||||
| @ -33,7 +33,7 @@ pub fn command<'a, 'b>() -> App<'a, 'b> { | ||||
|             ).about("Create a new local instance")) | ||||
| } | ||||
| 
 | ||||
| pub fn run<'a>(args: &ArgMatches<'a>, conn: &PgConnection) { | ||||
| pub fn run<'a>(args: &ArgMatches<'a>, conn: &Connection) { | ||||
|     let conn = conn; | ||||
|     match args.subcommand() { | ||||
|         ("new", Some(x)) => new(x, conn), | ||||
| @ -41,7 +41,7 @@ pub fn run<'a>(args: &ArgMatches<'a>, conn: &PgConnection) { | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| fn new<'a>(args: &ArgMatches<'a>, conn: &PgConnection) { | ||||
| fn new<'a>(args: &ArgMatches<'a>, conn: &Connection) { | ||||
|     let domain = args.value_of("domain").map(String::from) | ||||
|         .unwrap_or_else(|| env::var("BASE_URL") | ||||
|             .unwrap_or_else(|_| super::ask_for("Domain name"))); | ||||
|  | ||||
| @ -5,9 +5,9 @@ extern crate plume_models; | ||||
| extern crate rpassword; | ||||
| 
 | ||||
| use clap::App; | ||||
| use diesel::{Connection, PgConnection}; | ||||
| use diesel::Connection; | ||||
| use std::io::{self, prelude::*}; | ||||
| use plume_models::DB_URL; | ||||
| use plume_models::{DB_URL, Connection as Conn}; | ||||
| 
 | ||||
| mod instance; | ||||
| mod users; | ||||
| @ -22,7 +22,7 @@ fn main() { | ||||
|     let matches = app.clone().get_matches(); | ||||
| 
 | ||||
|     dotenv::dotenv().ok(); | ||||
|     let conn = PgConnection::establish(DB_URL.as_str()); | ||||
|     let conn = Conn::establish(DB_URL.as_str()); | ||||
| 
 | ||||
|     match matches.subcommand() { | ||||
|         ("instance", Some(args)) => instance::run(args, &conn.expect("Couldn't connect to the database.")), | ||||
|  | ||||
| @ -1,9 +1,9 @@ | ||||
| use clap::{Arg, ArgMatches, App, SubCommand}; | ||||
| use diesel::PgConnection; | ||||
| 
 | ||||
| use rpassword; | ||||
| use std::io::{self, Write}; | ||||
| use plume_models::{ | ||||
|     Connection, | ||||
|     users::*, | ||||
| }; | ||||
| 
 | ||||
| @ -45,7 +45,7 @@ pub fn command<'a, 'b>() -> App<'a, 'b> { | ||||
|             ).about("Create a new user on this instance")) | ||||
| } | ||||
| 
 | ||||
| pub fn run<'a>(args: &ArgMatches<'a>, conn: &PgConnection) { | ||||
| pub fn run<'a>(args: &ArgMatches<'a>, conn: &Connection) { | ||||
|     let conn = conn; | ||||
|     match args.subcommand() { | ||||
|         ("new", Some(x)) => new(x, conn), | ||||
| @ -53,7 +53,7 @@ pub fn run<'a>(args: &ArgMatches<'a>, conn: &PgConnection) { | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| fn new<'a>(args: &ArgMatches<'a>, conn: &PgConnection) { | ||||
| fn new<'a>(args: &ArgMatches<'a>, conn: &Connection) { | ||||
|     let username = args.value_of("name").map(String::from).unwrap_or_else(|| super::ask_for("Username")); | ||||
|     let display_name = args.value_of("display-name").map(String::from).unwrap_or_else(|| super::ask_for("Display name")); | ||||
|     let admin = args.is_present("admin"); | ||||
|  | ||||
| @ -38,7 +38,7 @@ use diesel::r2d2::ConnectionManager; | ||||
| use rocket::State; | ||||
| use rocket_contrib::Template; | ||||
| use rocket_csrf::CsrfFairingBuilder; | ||||
| use plume_models::{DB_URL, Connection, db_conn::PgPool}; | ||||
| use plume_models::{DB_URL, Connection, db_conn::DbPool}; | ||||
| use workerpool::{Pool, thunk::ThunkWorker}; | ||||
| 
 | ||||
| mod api; | ||||
| @ -48,11 +48,11 @@ mod routes; | ||||
| type Worker<'a> = State<'a, Pool<ThunkWorker<()>>>; | ||||
| 
 | ||||
| /// Initializes a database pool.
 | ||||
| fn init_pool() -> Option<PgPool> { | ||||
| fn init_pool() -> Option<DbPool> { | ||||
|     dotenv::dotenv().ok(); | ||||
| 
 | ||||
|     let manager = ConnectionManager::<Connection>::new(DB_URL.as_str()); | ||||
|     PgPool::new(manager).ok() | ||||
|     DbPool::new(manager).ok() | ||||
| } | ||||
| 
 | ||||
| fn main() { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user