Commit graph

61 commits

Author SHA1 Message Date
daf66a16bc refactor: move HttpFailure.toError to api module
Also expose EitherNet as an api dependency since it's part of the
public API.
2025-05-26 18:51:23 +05:30
0c96e8b62a chore: migrate away from deprecated OkHttp API 2025-05-20 17:20:06 +05:30
e81e28c395 fix(api): refresh post details golden snapshot
Fixes #775
2025-02-14 03:26:58 +05:30
94ccda61f6 fix(api): refresh hottest posts golden snapshot 2025-02-14 03:26:50 +05:30
38830cee53 fix(api): refresh search page golden snapshot 2025-02-14 03:26:50 +05:30
cdeac000ce fix(api): refresh CSRF golden snapshot 2025-02-14 03:26:46 +05:30
25249629fd chore: remove years from license headers
These are a useless annoyance

See: https://daniel.haxx.se/blog/2023/01/08/copyright-without-years/
2025-01-23 23:45:10 +05:30
renovate[bot]
a617db2340 fix(deps): update dependency com.slack.eithernet:eithernet to v2
Co-Authored-by: Harsh Shandilya <me@msfjarvis.dev>
2024-12-11 02:33:18 +05:30
62ac78bad6 fix(api): fix AvoidUsingNotNullOperator lint 2024-10-04 12:36:48 +05:30
b132410282 feat: show "Authored by" on posts when applicable 2024-06-26 21:29:41 +05:30
5ba0c9a544 refactor(build): always enable Sentry and set environment
Thx Static-Var my beloved
2024-03-16 10:14:57 +05:30
85fc5cac21 fix: adjust for new API changes 2024-03-16 09:48:08 +05:30
renovate[bot]
a187752659 chore(deps): update dependency com.facebook:ktfmt to v0.47
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2024-01-18 01:55:45 +05:30
6084e5bb30
refactor: remove all Shiori code
Their API is Terrible, Horrible, No Good, Very Bad[1][2]

1: It's _fine_ but I want more
2: https://en.wikipedia.org/wiki/Alexander_and_the_Terrible,_Horrible,_No_Good,_Very_Bad_Day
2023-12-03 21:52:38 +05:30
dd06c93935 fix(api): migrate to new pagination API
The older one is supposedly performing very poorly on the lobsters
side and has been modified to serve only cached content for unauthenticated
users. Unfortunately the configuration for this caching behaviour has
a bug that ignores query parameters and thus every page returns
the same set of 20 posts. Cut us over to this new API path that
hopefully does not generate too much load for the service.

See: https://github.com/lobsters/lobsters/issues/1219
2023-11-16 22:42:23 +05:30
8d3ed24d65
fix(api): switch Retrofit URL to Named 2023-11-04 19:40:21 +05:30
ba219af1ac
fix(api): directly use HTTP annotation 2023-11-04 19:38:49 +05:30
25a11bde59
refactor(api): use ApiResult in Shiori and wire into DI 2023-10-31 12:14:00 +05:30
45f384d048
fix(api): boot up a fresh container for each test 2023-10-31 10:56:17 +05:30
b9d92ecefa
Revert "Revert "fix(api): title and url are required for bookmark edits""
This reverts commit 2273768556.
2023-10-31 10:45:24 +05:30
2273768556
Revert "fix(api): title and url are required for bookmark edits"
Seems to still fail in CI????????????????

This reverts commit cce12fb138.
2023-10-28 00:34:07 +05:30
cce12fb138
fix(api): title and url are required for bookmark edits 2023-10-27 22:34:07 +05:30
3663ca1ec1
feat(api): add integration tests for Shiori API 2023-10-27 22:34:07 +05:30
f39bf0b043
feat(api/model): initial Shiori API 2023-10-27 22:34:07 +05:30
5dabebf579 fix(api): simplify test assertion 2023-09-17 01:38:46 +05:30
e283584999
fix(api): use the correct test resource 2023-09-14 23:17:15 +05:30
1cb3eb6472
refactor(api): import CSRF extraction from android module 2023-09-14 00:47:01 +05:30
c87f6a4239
fix(api): adapt to new user endpoint 2023-09-01 04:05:07 +05:30
9dcf26b5a4
fix(model): adjust for new comments structure 2023-08-30 11:32:10 +05:30
786f674044
fix(api): make commentsUrl in search results absolute 2023-08-02 11:08:10 +05:30
d343f3db2b feat(api): remove tag search endpoints 2023-07-19 00:50:10 +05:30
bdf218cd85 refactor(api): rework Retrofit DI and expose LobstersSearchApi 2023-07-18 17:53:36 +05:30
bad5bf5457 refactor(api): make SearchConverter a singleton 2023-07-18 17:11:06 +05:30
cf3ca27966 fix(api): correct usage of @Query feature in search API 2023-07-18 17:04:50 +05:30
37f42dc107 feat(api): add a Retrofit service for search 2023-07-17 08:26:56 +00:00
acdc924047
chore: cleanup redundant @OptIn annotations 2023-06-05 09:34:48 +05:30
ae66aced83
feat(api): migrate away from kotest 2023-05-04 03:33:47 +05:30
5d2eebf093
fix(api): add test util for type assertion 2023-05-04 03:33:47 +05:30
c1f1d67bfa
feat(android): add a repository for extracting CSRF token 2023-03-10 01:29:04 +05:30
9ab8a3e149
fix(api): avoid unnecessary build warning 2023-03-08 02:27:51 +05:30
f17375e9e1
refactor: move Tags from api to model module 2023-02-22 09:23:23 +05:30
Pratik Gorade
3da0674031
feat(tags): add api to fetch posts by tags and a utility class Tags
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-02-19 11:22:30 +05:30
e62e257154
chore: polish license headers 2023-02-19 09:23:00 +05:30
540ea7ba43
feat: upgrade kotlinx.serialization to 1.5.0-RC 2023-01-26 21:49:29 +05:30
79920f6180
chore: align copyright headers with Spotless expectations 2022-12-20 16:01:44 +05:30
eba5d64998
refactor: migrate all tests to kotest 2022-11-30 01:47:17 +05:30
4a87682b68
refactor(di): migrate to Whetstone ApplicationScope 2022-11-14 12:59:01 +05:30
0bf60812e0
refactor(di): workaround unstable IntoSet ordering
EitherNet's ApiResultConverterFactory needs to go before any other
(de)serialization factories, but multibindings do not have ordering
guarantees. To fix this, I've changed the module to handle the EitherNet
configuration within api and let core continue supplying everything else.
2022-11-13 18:11:50 +05:30
005dc9ab83
refactor(di): move ApiModule to core and api 2022-11-13 17:17:01 +05:30
6a4d0c2d3a
refactor: add license headers across the board 2022-10-26 01:55:50 +05:30