How should our community treat out-of-date and abandoned Apps?
Sometimes a dev is away for an extended period of time, then returns to development. Sometimes an app is officially abandoned but still functions well. Sometimes an app may be under active development but not yet compatible with the latest version of Lemmy.
Should these apps be excluded from our Apps list? Which ones? What criteria should we use? Should we maintain a list of “Old Apps” for posterity, as a code database, etc?
The biggest change with 0.19’s API was the authentication method.
In 0.18.5 and below, it’s done via cookie or as a parameter in the JSON body. In 0.19+, it’s via the
Authorization Bearer {jwt}
header. 0.19.0+ will not accept the JWT in the JSON body, and most of the apps I’ve seen don’t use cookies (I don’t recall off the top of my head if 0.19 still supports auth cookies or not).So the easiest test for an app’s 0.19.x support would be just trying to log into an 0.19 instance. Supported features vary among apps anyway, so I wouldn’t judge based on some 0.19 features not being implemented (yet?) as long as auth works.
Another notable change is they fixed the missing timezone in their incorrect ISO 8601 timestamp fields in 0.19. If some apps were shoehorning in the missing
Z
to fix that, and didn’t account for that, then the published/edited times may not work, may break the app, or just be a few hours off.The other big change is the switch from offset-based pagination (page=3) to cursor-based pagination (page_cursor = abcdefg). Currently, both pagination methods are supported as of 0.19.3, but the offset-based method is currently deprecated and scheduled to be removed.
After the next major release, that would probably be a decent litmus test.
As a surprising coincidence, I was in the midst of testing tesseract as I received this reply (replying now from the great web app). I believe you’ve said that it will not continue development for lemmy in the future if I recall correctly. I was able to log in just now with no issue. Does that mean it’s compatible with 0.19?
Lol, that is a coincidence indeed.
Correct. I’m targeting Sublinks in the future, but since there’s going to be a compatibility phase (where the two APIs will be 1:1 compatible), I’ve resumed development about a month ago (mostly bugfixes though I do have a feature branch with some new stuff - posting this reply from that dev branch right now 🙂).
So for the foreseeable future, Tesseract can be considered a Lemmy app. Not sure what I’ll do when the APIs start to diverge, though.