Remove depdendency on activitypub from plume-common
This commit is contained in:
parent
bb7267846f
commit
7a404c68df
1
Cargo.lock
generated
1
Cargo.lock
generated
@ -3102,7 +3102,6 @@ dependencies = [
|
||||
name = "plume-common"
|
||||
version = "0.7.1-dev"
|
||||
dependencies = [
|
||||
"activitypub",
|
||||
"activitystreams",
|
||||
"activitystreams-derive",
|
||||
"activitystreams-traits",
|
||||
|
@ -5,7 +5,6 @@ authors = ["Plume contributors"]
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
activitypub = "0.1.1"
|
||||
activitystreams-derive = "0.1.1"
|
||||
activitystreams-traits = "0.1.0"
|
||||
array_tool = "1.0"
|
||||
|
@ -200,7 +200,7 @@ where
|
||||
pub fn with<A, V, M>(self, proxy: Option<&reqwest::Proxy>) -> Inbox<'a, C, E, R>
|
||||
where
|
||||
A: AsActor<&'a C> + FromId<C, Error = E>,
|
||||
V: activitypub::Activity,
|
||||
V: serde::de::DeserializeOwned + serde::Serialize,
|
||||
M: AsObject<A, V, &'a C, Error = E> + FromId<C, Error = E>,
|
||||
M::Output: Into<R>,
|
||||
{
|
||||
@ -333,7 +333,7 @@ pub trait FromId<C>: Sized {
|
||||
type Error: From<InboxError<Self::Error>> + Debug;
|
||||
|
||||
/// The ActivityPub object type representing Self
|
||||
type Object: activitypub::Object;
|
||||
type Object: serde::de::DeserializeOwned + serde::Serialize;
|
||||
|
||||
/// Tries to get an instance of `Self` from an ActivityPub ID.
|
||||
///
|
||||
@ -521,7 +521,7 @@ pub trait AsActor<C> {
|
||||
/// ```
|
||||
pub trait AsObject<A, V, C>
|
||||
where
|
||||
V: activitypub::Activity,
|
||||
V: serde::de::DeserializeOwned + serde::Serialize,
|
||||
{
|
||||
/// What kind of error is returned when something fails
|
||||
type Error;
|
||||
|
@ -1,4 +1,4 @@
|
||||
use activitypub::{Activity, Link, Object};
|
||||
use activitystreams::{activity::Activity, object::ApObject};
|
||||
use array_tool::vec::Uniq;
|
||||
use reqwest::{header::HeaderValue, r#async::ClientBuilder, Url};
|
||||
use rocket::{
|
||||
@ -57,13 +57,13 @@ pub fn context() -> serde_json::Value {
|
||||
|
||||
pub struct ActivityStream<T>(T);
|
||||
|
||||
impl<T> ActivityStream<T> {
|
||||
pub fn new(t: T) -> ActivityStream<T> {
|
||||
impl<O: serde::Serialize> ActivityStream<ApObject<O>> {
|
||||
pub fn new(t: ApObject<O>) -> ActivityStream<ApObject<O>> {
|
||||
ActivityStream(t)
|
||||
}
|
||||
}
|
||||
|
||||
impl<'r, O: Object> Responder<'r> for ActivityStream<O> {
|
||||
impl<'r, O: serde::Serialize> Responder<'r> for ActivityStream<ApObject<O>> {
|
||||
fn respond_to(self, request: &Request<'_>) -> Result<Response<'r>, Status> {
|
||||
let mut json = serde_json::to_value(&self.0).map_err(|_| Status::InternalServerError)?;
|
||||
json["@context"] = context();
|
||||
@ -108,10 +108,14 @@ impl<'a, 'r> FromRequest<'a, 'r> for ApRequest {
|
||||
.unwrap_or(Outcome::Forward(()))
|
||||
}
|
||||
}
|
||||
pub fn broadcast<S, A, T, C>(sender: &S, act: A, to: Vec<T>, proxy: Option<reqwest::Proxy>)
|
||||
where
|
||||
pub fn broadcast<S, A, T, C>(
|
||||
sender: &S,
|
||||
act: Activity<A>,
|
||||
to: Vec<T>,
|
||||
proxy: Option<reqwest::Proxy>,
|
||||
) where
|
||||
S: sign::Signer,
|
||||
A: Activity,
|
||||
A: serde::Serialize,
|
||||
T: inbox::AsActor<C>,
|
||||
{
|
||||
let boxes = to
|
||||
@ -204,8 +208,6 @@ pub trait IntoId {
|
||||
fn into_id(self) -> Id;
|
||||
}
|
||||
|
||||
impl Link for Id {}
|
||||
|
||||
#[derive(Clone, Debug, Default, Deserialize, Serialize, Properties)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct ApSignature {
|
||||
@ -251,13 +253,9 @@ pub struct Source {
|
||||
pub content: String,
|
||||
}
|
||||
|
||||
impl Object for Source {}
|
||||
|
||||
#[derive(Clone, Debug, Default, Deserialize, Serialize, Properties)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub struct Licensed {
|
||||
#[activitystreams(concrete(String), functional)]
|
||||
pub license: Option<serde_json::Value>,
|
||||
}
|
||||
|
||||
impl Object for Licensed {}
|
||||
|
Loading…
x
Reference in New Issue
Block a user