I’m working on a little tool for Lemmy using the rust backend (lemmy_api_common crate 0.17.4).

I’ve tested it against some 0.17.4 instances with no issues, but yesterday I went to test it more thoroughly on the official testing instances and had JSON parsing issues. I realized later that these servers are currently running 0.18.X.

Is this a bug? Or are we expecting that even within the “v3” APIs that you’ll have breaking changes between Lemmy versions?

  • CMahaff@lemmy.worldOP
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    Yeah the rust API also seems to be sometimes re-using database types in their structs vs creating new types just for the API, which is only going to make that problem worse.

    I guess I should have checked if there was a library for it first - best of luck to any library writers trying to handle supporting dozens of minor releases though, sounds painful.

    • Jamie@jamie.moe
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      That’s correct, they’re the same datatypes the server uses all over. Though, I don’t think keeping it up to date would be that bad unless they seriously change things around all at once. Particularly if you encapsulate the data well for the end library user.

      My project is making wrapper libraries around all of the types and implementing things based on that.