@@ -9,10 +9,9 @@ use serde_json::Value;
99use smpl_jwt:: Jwt ;
1010use std:: collections:: HashMap ;
1111use std:: env;
12+ use std:: error:: Error as StdError ;
1213use std:: time:: Duration ;
1314
14- type BoxedStdError = Box < dyn std:: error:: Error > ;
15-
1615const BASE_URL_ENV_VAR : & str = "PUB_SUB_BASE_URL" ;
1716const DEFAULT_BASE_URL : & str = "https://pubsub.googleapis.com" ;
1817
@@ -54,7 +53,9 @@ pub enum Error {
5453 #[ error( "Deserializing data of received message failed" ) ]
5554 Deserialize { source : serde_json:: Error } ,
5655 #[ error( "Failed to transform JSON value" ) ]
57- Transform { source : BoxedStdError } ,
56+ Transform {
57+ source : Box < dyn StdError + Send + Sync + ' static > ,
58+ } ,
5859}
5960
6061impl Error {
@@ -184,7 +185,7 @@ impl PubSubClient {
184185 ) -> Result < Vec < Result < MessageEnvelope < M > , Error > > , Error >
185186 where
186187 M : DeserializeOwned ,
187- T : Fn ( & ReceivedMessage , Value ) -> Result < Value , BoxedStdError > ,
188+ T : Fn ( & ReceivedMessage , Value ) -> Result < Value , Box < dyn StdError + Send + Sync + ' static > > ,
188189 {
189190 let received_messages = self
190191 . pull_raw ( subscription_id, max_messages, timeout)
@@ -273,7 +274,7 @@ fn deserialize<M, T>(
273274) -> Vec < Result < MessageEnvelope < M > , Error > >
274275where
275276 M : DeserializeOwned ,
276- T : Fn ( & ReceivedMessage , Value ) -> Result < Value , BoxedStdError > ,
277+ T : Fn ( & ReceivedMessage , Value ) -> Result < Value , Box < dyn StdError + Send + Sync + ' static > > ,
277278{
278279 received_messages
279280 . into_iter ( )
@@ -306,13 +307,13 @@ where
306307#[ cfg( test) ]
307308mod tests {
308309 use crate :: {
309- deserialize, BoxedStdError , Error , MessageEnvelope , PubSubClient , PubSubMessage ,
310- ReceivedMessage ,
310+ deserialize, Error , MessageEnvelope , PubSubClient , PubSubMessage , ReceivedMessage ,
311311 } ;
312312 use anyhow:: anyhow;
313313 use serde:: Deserialize ;
314314 use serde_json:: { json, Value } ;
315315 use std:: collections:: HashMap ;
316+ use std:: error:: Error as StdError ;
316317 use std:: time:: Duration ;
317318
318319 #[ derive( Debug , Deserialize , PartialEq , Eq ) ]
@@ -428,7 +429,7 @@ mod tests {
428429 fn transform (
429430 received_message : & ReceivedMessage ,
430431 mut value : Value ,
431- ) -> Result < Value , BoxedStdError > {
432+ ) -> Result < Value , Box < dyn StdError + Send + Sync + ' static > > {
432433 let attributes = & received_message. message . attributes ;
433434 match attributes. get ( "version" ) . map ( |v| & v[ ..] ) . unwrap_or ( "v1" ) {
434435 "v1" => {
0 commit comments