apistos icon indicating copy to clipboard operation
apistos copied to clipboard

V1

Open rlebran opened this issue 1 year ago • 6 comments

Prepare v1 release. Add support for OAS3.1 (Webhooks and new schema specification) as well as callbacks.

rlebran avatar Jul 12 '24 07:07 rlebran

Hello! Thank you for your work! Looking forward to v1 release. Could you also add this wrapping function to apistos/src/internal/actix/route.rs?

use actix_service::{boxed::BoxService, ServiceFactory, Transform};
use actix_web::body::MessageBody;
use actix_web::dev::{ServiceRequest, ServiceResponse};

impl Route {
  // ...
  
  pub fn wrap<M, B>(self, mw: M) -> Route
  where
    B: MessageBody + 'static,
    M: Transform<
        BoxService<ServiceRequest, ServiceResponse, Error>,
        ServiceRequest,
        Response = ServiceResponse<B>,
        Error = Error,
        InitError = (),
      > + 'static,
  {
    let oas_version = get_oas_version();
    Route {
      oas_version,
      operation: self.operation,
      path_item_type: self.path_item_type,
      components: self.components,
      inner: self.inner.wrap(mw),
    }
  }
}

ShadoySV avatar Sep 19 '24 11:09 ShadoySV

Hi, just added it. Regarding v1, once Schemars v1 is release I plan on doing a documentation effort before releasing Apistos with a stable version.

rlebran avatar Sep 19 '24 15:09 rlebran

Thanks for your work!

I just integrated the latest prerelease (here), and a quite happy with the utopia replacement, great work ! It was a bit difficult to sometimes find the right documentation, but it's understandable since it's not yet released :sweat_smile:

2 things:

  • I might not have found the right way to do this, but I had to dump the use of actix macros to create the routes (not a big deal though)
  • I had trouble with some part of the API that I did not want to document (some html+icons part), and ended up by mounting them to the actix APP before calling .document(spec) so I could use actix only types and skip documentation. I'm not sure if it was the right way to tackle this though.

antoine-de avatar Sep 20 '24 10:09 antoine-de

Thanks for your work!

I just integrated the latest prerelease (here), and a quite happy with the utopia replacement, great work ! It was a bit difficult to sometimes find the right documentation, but it's understandable since it's not yet released 😅

2 things:

  • I might not have found the right way to do this, but I had to dump the use of actix macros to create the routes (not a big deal though)
  • I had trouble with some part of the API that I did not want to document (some html+icons part), and ended up by mounting them to the actix APP before calling .document(spec) so I could use actix only types and skip documentation. I'm not sure if it was the right way to tackle this though.

Hi, Thanks for your message !

  • Apistos currently doesn't support actix macros (might be the case one day but it's currently not a priority) which is the main difference between this project and utopia. Out of curiosity, why did you switch ? I'm always happy to receive some feedback and I'm looking for ways to make this project better.
  • It is possible to skip some endpoint to keep them undocumented with something like #[api_operation(skip)] . Documentation is not yet sufficient, some effort will be made on this front in the future.

rlebran avatar Sep 20 '24 14:09 rlebran

any news of the status of this PR? thanks.

qleguennec avatar Nov 04 '25 09:11 qleguennec

Hi, currently working on this, I hope to have some good news soon !

rlebran avatar Nov 04 '25 13:11 rlebran