143 Commits

Author SHA1 Message Date
Alessio
ba81556f06 Fix lint error 2025-02-15 14:33:56 -08:00
Alessio
c0e4c85028 BUGFIX: ensure the ActionTweetID and ActionRetweetIDs are updated correctly when adding new Tweets/Retweets to a notification's lists 2025-02-15 14:31:26 -08:00
Alessio
1af7fa3817 Notification feed should load tweet and retweet IDs in order to display 'liked N of your tweets', etc 2025-02-15 13:57:00 -08:00
Alessio
5be812e96e Include current user "likes" information when building notifications feed 2025-02-15 12:51:07 -08:00
Alessio
041af0f91d Move common type definitions (Tweet, User, etc) from 'scraper' package to 'persistence' 2025-02-14 16:02:40 -08:00
Alessio
c03e1f6317 REFACTOR: Not sure why this was missed in previous commit 2025-02-10 13:38:26 -08:00
Alessio
bbe098d6df REFACTOR: replace imports of the 'persistence' package in 'persistence_test' with dot-imports 2025-02-10 13:30:01 -08:00
Alessio
4132eb4bca REFACTOR: SaveTweetTrove no longer calls scraper.GetUserByID, removing another scraper dependency from persistence package
- it was calling it to handle conflicting user handles
- now user handle conflicts are handled by the callee
- Add a utility function in `main` and `webserver` packages to rescrape the conflicting users
2025-02-10 12:53:31 -08:00
Alessio
b2f697a8a6 REFACTOR: make Session file storage functions more generic (not hardcoded for scraper.API) 2025-02-04 14:46:13 -08:00
Alessio
cb0b478c08 REFACTOR: apply dependency injection change (whole API object -> just the downloader function) to 'SaveTweetTrove' method 2025-02-03 21:58:53 -08:00
Alessio
0c1d853f55 REFACTOR: change media downloader dependency injection to take just the download function rather than a whole API object 2025-02-03 21:24:53 -08:00
Alessio
ac763a97a6 REFACTOR: in persistence package, import scraper as '.' 2025-02-03 16:25:34 -08:00
Alessio
d7a8ee6013 I forgot to include this in the previous commit 2024-12-23 19:40:32 -08:00
Alessio
37993af341 Fix more lint errors of the same kind 2024-12-23 19:38:25 -08:00
Alessio
f9fdfe04df Fix new lint error activated by updating Go version (remove 'rand.Seed(time.Now)' calls, as they are redundant; as of 1.20, the generator is seeded randomly at startup) 2024-12-23 19:35:00 -08:00
Alessio
5c79decd7b Remove unused (apparently redundant?) BottomTimestamp function from the Feed object 2024-12-22 08:05:23 -08:00
Alessio
1f44fb0961 REFACTOR: SQL should use single-quotes; octal literals should start with '0o' 2024-12-21 07:53:31 -08:00
Alessio
97888e2b23 BUGFIX: fix reaccs panicking if the reacc'd message isn't the latest one in the chat 2024-11-09 18:13:05 -08:00
Alessio
c7a6b5b321 Add back in the GetUserByID unauthenticated operation since apparently it does actually work 2024-11-06 18:58:18 -08:00
Alessio
2b7a636720 Remove the unauthenticated GetUser requests as they no longer work 2024-11-06 18:36:06 -08:00
Alessio
b0cf2076e2 Make notifications paginated 2024-11-01 23:23:03 -07:00
Alessio
859431f012 Initialize database version number in schema.sql, instead of Go code 2024-10-23 22:00:38 -07:00
Alessio
74db0f5797 Remove sqlx mapper function; just map all fields manually 2024-10-23 21:50:54 -07:00
Alessio
3539d9418d SaveTweetTrove now re-fetches users with conflicting handles as well 2024-09-23 00:23:07 -07:00
Alessio
381e9e0706 'fetch_user' and 'fetch_user_by_id' subcommands now check for conflicting user handle errors and rescrape if needed 2024-09-22 22:11:08 -07:00
Alessio
6ed8beae26 Update SaveUser logic to account for duplicate handles, with better handling of deleted / banned users
- BUGFIX: deleted / banned users will no longer have all their other info wiped
	- e.g., follower counts, profile image URLs, bio, etc.
2024-09-22 16:22:33 -07:00
Alessio
79033cfc79 Make user handles only unique among active users 2024-09-17 18:33:58 -07:00
Alessio
51eaa2a0c4 Remove some useless functions ('list_followed', superceded by Lists; 'UserExists') 2024-09-17 18:13:54 -07:00
Alessio
2d35c37e17 Simply ErrNotInDatabase implementation 2024-09-15 17:47:51 -07:00
Alessio
526582d90c Fix lint error 2024-09-14 16:28:00 -07:00
Alessio
2731d787c2 Prevent failed SaveNotification transaction from locking the database 2024-09-14 16:01:28 -07:00
Alessio
72b547f6aa Unread notifications count should be specific to a single user 2024-09-02 16:25:54 -07:00
Alessio
9c7174a84a Add way to scrape unread count; add db query to count unread notifs since a given sort index 2024-09-02 15:02:27 -07:00
Alessio
1f392f5240 Fix lint error 2024-08-31 23:06:54 -07:00
Alessio
f554846355 Add sample notification data, and compound query to retrieve notifications and associated data 2024-08-31 23:04:13 -07:00
Alessio
0c620621a6 Add scraping notiication detail 2024-08-28 19:22:09 -07:00
Alessio
dc816c6f28 Track retweet lists in notifications alongside tweets 2024-08-28 19:20:29 -07:00
Alessio
2c7c35e23f Add pagination to notifications
- handle notifications end-of-feed
- add support for "quoted" and "mentioned" notifications
2024-08-26 00:07:10 -07:00
Alessio
b77612c66f Add SQL queries for notifications 2024-08-25 22:54:18 -07:00
Alessio
4853969b4d Fix lint error 2024-08-23 12:57:27 -07:00
Alessio
f3f0b4868d Update CHANGELOG.txt for v0.6.15 2024-08-23 12:52:16 -07:00
Alessio
e2ca9a975a Remove scraper singleton pattern entirely 2024-08-19 17:27:54 -07:00
Alessio
adbab97ca1 Reset the CI pipeline step conditions (don't force everything to run every time anymore) 2024-08-19 16:39:22 -07:00
Alessio
c52960759e Fix bug caused by DMTrove refactor 2024-07-28 13:23:10 -07:00
Alessio
cf58793b33 Fix error caused by previous commit in banner image download logic 2024-07-28 13:07:14 -07:00
Alessio
8aca12695b Handle media download 404s gracefully 2024-07-28 12:50:00 -07:00
Alessio
98015ddf0c REFACTOR: remove DMTrove type, merge it into TweetTrove 2024-07-28 08:01:58 -07:00
Alessio
a9a7af2195 Band-aid fix for spaces with null fields in them 2024-07-14 13:24:44 -07:00
Alessio
14a7f88cdb Add scraping and saving of bookmarks 2024-05-28 21:55:42 -07:00
Alessio
af3e496468 Add pagination to DM conversation and scrolling back using 'show more' button 2024-05-04 15:44:17 -07:00