Commit graph

159 commits

Author SHA1 Message Date
Shizun Ge
cead85b165
Add alternative scheduler based on the number of entries 2020-05-25 14:06:56 -07:00
Frédéric Guillot
4cdfd64db0 Speed up feed list page rendering 2020-05-22 18:02:49 -07:00
Frédéric Guillot
70c2568af8 Add index to speed up slow query 2020-05-20 18:19:35 -07:00
Frédéric Guillot
eb8d8e84f2 Updating custom css field should also happen when updating the password
Bug introduced in PR #627
2020-04-25 20:26:02 -07:00
Alex McGrath
7accdc4416 Add the ability to use custom css 2020-04-22 20:53:09 -07:00
Frédéric Guillot
9871e4f5d0 Add page to list and remove shared entries 2020-03-22 19:53:44 -07:00
Frédéric Guillot
59c8dac851 Display Feed URL on shared page instead of user feed entries 2020-03-17 20:28:53 -07:00
Lesterpig
41a2b7e58e Add "Share article" feature
A new "shareCode" field is generated for each entry, and allows
unlogged users to access the entry through the /shared endpoint.
This feature is particularly useful to share articles from miniflux
to third-party users without having them to visit the original source.

The image proxy is disabled and special cache headers are proposed in
the shared page to avoid denial of service.
2020-03-17 20:09:46 -07:00
Frédéric Guillot
1b86913c00 Fix SQL injection in full-text search rank ordering
Introduced in commit 267b706544
2020-03-10 21:12:28 -07:00
Frédéric Guillot
25cc0d2447 Add per-application API Keys 2020-03-01 18:22:45 -08:00
Peter De Wachter
2570c3410b
History: show entries in the order in which they were read
Add a changed_at timestamp to the entries table. This field is updated
whenever the entry's metadata changes.
2020-02-10 20:20:03 -08:00
Frédéric Guillot
997e9422eb Ignore enclosures without URL 2020-01-30 21:18:49 -08:00
Benjamin Barenblat
cb494ac416 Correct spelling of “toggle” 2020-01-29 18:36:09 -08:00
Frédéric Guillot
69aa650203 Add the possibility to add rules during feed creation 2019-11-29 11:27:58 -08:00
Frédéric Guillot
7b995044b4 Make sure to remove integration settings when removing a user 2019-11-17 23:11:59 -08:00
Frédéric Guillot
e878dca3d7 Add API parameter to filter entries by category 2019-11-17 23:05:22 -08:00
Frédéric Guillot
fad9ad2be4 Display list of feeds per category 2019-11-17 20:10:44 -08:00
Frédéric Guillot
d3883126bf Improve storage module 2019-10-29 22:59:00 -07:00
Maxim Baz
e38333e272 Show unread counters on feeds page 2019-10-29 21:44:35 -07:00
Tony Wang
7409bba0d8 Compare Fever token case-insensitively 2019-10-21 20:00:16 -07:00
Frédéric Guillot
d610d091fe Avoid constraint error when having duplicate entries
During feed creation, duplicated entries will generate an SQL contraint error.

This change ignore the duplicated entry to avoid showing an error.
2019-09-18 22:53:47 -07:00
Ty Cobb
3a60abbac0 Make configurable the number of days to remove old sessions 2019-09-11 20:10:33 -07:00
Frédéric Guillot
3d19313a7f Add option to disable feeds 2019-07-26 21:24:15 -07:00
Frédéric Guillot
0dff432337 Remove debug timer from most storage functions 2019-04-28 20:21:31 -07:00
Frédéric Guillot
4295a86e55 Add option to enable/disable keyboard shortcuts 2019-04-28 18:35:58 -07:00
Jacob Wahlgren
22b68eefd8 Allow users to disable auto-remove
Adds ARCHIVE_READ_DAYS="-1"
2019-03-10 10:51:21 -07:00
Frédéric Guillot
f3fc8b7072 Use feed ID instead of user ID to check entry URLs presence 2019-02-28 20:43:33 -08:00
Jebbs
267b706544 Sort search results by relevance 2019-02-11 22:20:07 -08:00
Frédéric Guillot
7897d8a8ad Handle the case when application session is expired and not user session 2019-01-21 20:21:05 -08:00
Peter De Wachter
27e79a4693 Make the feed list order case-insensitive 2019-01-07 17:55:57 -08:00
Frédéric Guillot
012138179c Add function storage.UpdateFeedError() 2018-12-15 13:04:38 -08:00
Jebbs
87648490fd Make configurable the number of days to archive read items 2018-12-05 20:35:30 -08:00
Frédéric Guillot
cb037910df Archive more read entries 2018-11-25 15:01:01 -08:00
Frédéric Guillot
f6028f3863 Improve Fever middleware and handle groupID=0 2018-10-26 19:49:49 -07:00
Frédéric Guillot
74c35ad000 Add more details in feed storage errors to facilitate debugging 2018-10-21 11:48:29 -07:00
Frédéric Guillot
a614f98063 Set arbitrary maximum size for tsvector column
- The max size for tsvector is 1 MiB
- We index only the first million of characters,
  it should be enough for most feed entries.
2018-10-19 21:40:59 -07:00
Frédéric Guillot
778346b0b0 Simplify feed fetcher
- Add browser package to handle HTTP errors
- Reduce code duplication
2018-10-14 21:43:48 -07:00
Frédéric Guillot
11dfcdd3d6 Fix typo in license header 2018-10-08 15:50:15 -07:00
Frédéric Guillot
ddfe969d6c Improve Fever API performances when marking a feed or group as read 2018-10-07 12:50:59 -07:00
Patrick
2538eea177 Add the possibility to override default user agent for each feed 2018-09-19 18:19:24 -07:00
Dave Z
9169fbafb2 Show count of feeds with permanent errors in header menu
Only for feeds that reach `maxParsingError` are counted (so transient errors do not trigger counter).
2018-08-26 16:18:07 -07:00
Frédéric Guillot
dbcc5d8a97 Use canonical imports 2018-08-24 21:56:39 -07:00
Frédéric Guillot
cf03e0e338 Create database package (refactoring) 2018-08-01 20:28:45 -07:00
Frédéric Guillot
6d0dc451e4 Add search form 2018-07-04 22:05:19 -07:00
Frédéric Guillot
af15412954 Add full-text search for entries and add search parameter to the API 2018-07-04 17:40:03 -07:00
Frédéric Guillot
5cf504745b Add cli flag to reset all feed errors 2018-06-30 14:22:45 -07:00
Frédéric Guillot
dd78fb4340 Do not ignore errored feeds when a user refresh feeds manually 2018-06-26 23:02:41 -07:00
Frédéric Guillot
bddca15b69 Add new fields for feed username/password 2018-06-19 22:58:29 -07:00
Frédéric Guillot
c5373ff2bf Rewrite individual entry pagination SQL queries 2018-06-09 13:40:20 -07:00
Frédéric Guillot
bd70640794 Simplify entry query builder 2018-06-08 18:24:41 -07:00
Frédéric Guillot
cf7a7e25fb Convert IP field from text to inet type 2018-05-21 19:58:36 -04:00
Allan Reyes
0f3f5e442f Add Pocket integration 2018-05-20 13:31:56 -07:00
Frédéric Guillot
f19ab21b7d Archive read entries automatically after 60 days 2018-05-19 16:45:27 -07:00
Frédéric Guillot
31da4db14f Do not show save link if no integration is configured 2018-04-29 17:43:40 -07:00
Frédéric Guillot
b166ceaea7 Avoid people to unlink their OAuth2 account without having a local password 2018-04-29 17:04:43 -07:00
Frédéric Guillot
f49b42f70f Use vanilla HTTP handlers (refactoring) 2018-04-29 16:35:04 -07:00
Frédéric Guillot
15202b8675 Do not return an error if the user session is not found 2018-04-09 21:52:24 -07:00
Ben Brooks
538d08c16c Add CommentsURL to entry 2018-04-07 13:50:45 -07:00
Frédéric Guillot
482785c5e6 Convert enclosure size field to bigint 2018-03-14 20:09:06 -07:00
Frédéric Guillot
a8be61cdbb Filter the list of timezones 2018-03-04 17:38:08 -08:00
Frédéric Guillot
609c57332e Show last login and session creation date in current timezone 2018-03-04 17:04:31 -08:00
Frédéric Guillot
0c7039de0e Entries date should contains user timezone (API) 2018-03-01 21:43:04 -08:00
Frédéric Guillot
953d0a2dc0 Support localized feed errors generated by background workers 2018-02-27 21:08:32 -08:00
Nicolas Carlier
34ce114231 Add Nunux Keeper integration 2018-02-25 11:49:08 -08:00
Frédéric Guillot
a006a93a04 Add indexes 2018-02-10 22:30:43 -08:00
Frédéric Guillot
b0442e0277 Do not update entry date while refreshing a feed
We do not update the published date because some feeds do not contains any date,
in this case it default to time.Now(), which could change the order of items on
the history page.
2018-01-29 21:07:55 -08:00
Frédéric Guillot
ffabb009b8 Do not override existing entries when the crawler is enabled 2018-01-20 14:04:19 -08:00
Frédéric Guillot
3b62f904d6 Do not crawl existing entry URLs 2018-01-20 13:25:20 -08:00
Frédéric Guillot
9652dfa1fe Add more comments (GoDoc) 2018-01-11 19:21:20 -08:00
Frédéric Guillot
c57cafbef2 Add link to mark everything as read 2018-01-04 18:11:15 -08:00
Frédéric Guillot
c39f2e1a8d Rename helper packages 2018-01-02 19:15:08 -08:00
Frédéric Guillot
747e3edab3 Make sure username are always lowercase 2017-12-29 14:55:16 -08:00
Frédéric Guillot
038ea790f7 Make sure people don't create duplicate Fever usernames 2017-12-29 14:38:43 -08:00
Frédéric Guillot
0f053b07a5 Improve user API responses 2017-12-29 13:53:02 -08:00
Frédéric Guillot
a63105e13b Improve timezone handling 2017-12-28 19:20:14 -08:00
Frédéric Guillot
a475b875c5 Show feeds with errors first 2017-12-26 20:42:43 -08:00
Frédéric Guillot
d5b8f2fb88 Improve API 2017-12-24 18:04:34 -08:00
Frédéric Guillot
f546552a1d Clicking on refresh feeds should refresh only user feeds 2017-12-22 18:13:14 -08:00
Frédéric Guillot
e031dad1e7 Fill login form on failed sign in 2017-12-22 16:30:17 -08:00
Frédéric Guillot
9868f900e9 Add bookmarks 2017-12-22 11:33:01 -08:00
Frédéric Guillot
b153fa8b3c Add Wallabag integration 2017-12-18 20:52:46 -08:00
Frédéric Guillot
18f55d1569 Add scheduler to clean old sessions 2017-12-16 18:48:17 -08:00
Frédéric Guillot
00257988ef Session management refactoring 2017-12-16 18:07:53 -08:00
Frédéric Guillot
58acd1d5e3 Rename sessions table to user_sessions 2017-12-16 12:15:33 -08:00
Frédéric Guillot
27196589fb Add FeedIcon API call and update dependencies 2017-12-16 11:25:18 -08:00
Frédéric Guillot
1d8193b892 Add logger 2017-12-15 18:55:57 -08:00
Frédéric Guillot
84d912c979 Rewrite imports 2017-12-12 21:48:13 -08:00
Frédéric Guillot
ef097f02fe Add the possibility to enable crawler for feeds 2017-12-12 19:19:36 -08:00
Frédéric Guillot
33445e5b68 Add the possibility to define rewrite rules for each feed 2017-12-11 22:16:32 -08:00
Frédéric Guillot
87ccad5c7f Add scraper rules 2017-12-10 20:51:04 -08:00
Frédéric Guillot
7a35c58f53 Add readability package to fetch original content 2017-12-10 19:01:38 -08:00
Frédéric Guillot
bc20e0884b Add Fever API 2017-12-03 17:44:27 -08:00
Frédéric Guillot
ae62e543d3 Add Instapaper integration 2017-12-02 21:12:03 -08:00
Frédéric Guillot
2356ddad28 Add Pinboard integration 2017-12-02 19:32:14 -08:00
Frédéric Guillot
2f1367a8d4 Make entries sorting configurable 2017-12-02 17:04:01 -08:00
Frédéric Guillot
1a90c059e7 Store tokens in database instead of cookie 2017-12-01 21:51:22 -08:00
Frédéric Guillot
bb8e61c7c5 Make sure golint pass on the code base 2017-11-27 21:40:05 -08:00
Frédéric Guillot
39b03cc393 Add integration tests for feed creation 2017-11-25 16:53:51 -08:00
Frédéric Guillot
142e8b3e0c Add first integration test 2017-11-25 10:44:48 -08:00
Frédéric Guillot
71bf7e4358 Improve API 2017-11-24 22:29:20 -08:00