Frédéric Guillot
0d66f2c6d3
Tweak default HTTP client transport timeout values
...
Reducing these values avoid going over the max number of file descriptors when refreshing lot of feeds
2020-09-27 13:20:48 -07:00
Frédéric Guillot
04c4890124
API: Add the possibility to filter entries by a list of statuses
2020-09-12 21:35:18 -07:00
Kebin Liu
cf7712acea
Add HTTP proxy option for subscriptions
2020-09-09 23:28:54 -07:00
Frédéric Guillot
c1e3783272
Revert "Set SameSite cookie attribute to Strict"
...
This reverts commit 5ac55518ab
.
Google Authentication doesn't work when Cookies are using strict mode.
2020-08-10 18:51:40 -07:00
Frédéric Guillot
5ac55518ab
Set SameSite cookie attribute to Strict
2020-08-05 21:31:32 -07:00
Frédéric Guillot
6c6ca69141
Add feed option to ignore HTTP cache
2020-06-05 22:04:52 -07:00
Savely Krasovsky
454eb590ce
Remove child-src CSP policy (deprecated)
2020-03-31 19:50:25 -07:00
Frédéric Guillot
7a397c3d13
Change default theme to "system_serif"
2020-03-19 20:53:53 -07:00
Frédéric Guillot
3debf75eb9
Normalize URL query string before executing HTTP requests
...
- Make sure query strings parameters are encoded
- As opposed to the standard library, do not append equal sign
for query parameters with empty value
- Strip URL fragments like Web browsers
2019-12-26 15:56:59 -08:00
Frédéric Guillot
afe1faf214
Add theme variants
...
- Use CSS variables instead of inherence
- Rename default theme to "Light - Serif"
- Rename Black theme to "Dark - Serif"
- Rename "Sans-Serif" theme to "Light - Sans Serif"
- Add "System" theme that use system preferences: Dark or Light
- Add Serif and Sans-Serif variants for each color theme
2019-09-21 20:04:42 -07:00
Frédéric Guillot
ca48f7612a
Ignore invalid content type
2019-09-18 22:32:29 -07:00
Peter De Wachter
937492f6f5
Do not buffer responses in the image proxy
...
The image proxy buffered the whole image before sending it to the
browser. If the image is large and/or hosted on a slow server, this
caused a long delay before the user's browser could display anything.
2019-09-10 20:43:44 -07:00
Frédéric Guillot
bb720c87c1
Make HTTP Client timeout and max body size configurable
2019-06-02 07:29:56 -07:00
Frédéric Guillot
04b6eb509c
Rename session cookies
2019-01-21 20:26:46 -08:00
Peter De Wachter
15505ee4a2
Make UTF-8 the default encoding for XML feeds
...
Consider the feed http://planet.haskell.org/atom.xml
- This is a UTF-8 encoded XML file
- No encoding declaration in the XML header
- No Unicode byte order mark
- Served with HTTP Content-Type "text/xml" (no charset parameter)
Miniflux lets charset.NewReader handle this. The charset package
implements the HTML5 character encoding algorithm, which, in this
situation, defaults to windows-1252 encoding if there are no UTF-8
characters in the first 1000 bytes. So for this feed, we get the wrong
encoding.
I inserted an explicit "utf8.Valid()" check, which fixes this problem.
2019-01-02 21:05:05 -08:00
Frédéric Guillot
6ae935309a
Ignore JSON feeds from EnsureUnicode()
2018-12-12 21:37:39 -08:00
Frédéric Guillot
82e08d0f69
Update XML encoding regex to take single quotes into consideration
2018-12-12 21:13:06 -08:00
Frédéric Guillot
f3bff76aa1
Make sure slice is not out of range when reading XML prolog
2018-11-24 12:17:00 -08:00
Frédéric Guillot
9f85f67031
Make sure the remote address is populated even when using unix socket
2018-11-11 16:42:30 -08:00
Frédéric Guillot
1ff9950a55
Remove charset=utf-8 from JSON responses
...
See: https://www.iana.org/assignments/media-types/application/json
2018-11-03 12:03:06 -07:00
Frédéric Guillot
ae1dc1a91e
Handle more encoding conversion edge cases
2018-10-29 23:00:03 -07:00
Frédéric Guillot
5870f04260
Simplify feed parser and format detection
...
- Avoid doing multiple buffer copies
- Move parser and format detection logic to its own package
2018-10-14 11:46:41 -07:00
Frédéric Guillot
9dc38a0803
Add missing package descriptions for GoDoc
2018-10-08 17:32:17 -07:00
Frédéric Guillot
11dfcdd3d6
Fix typo in license header
2018-10-08 15:50:15 -07:00
Frédéric Guillot
1f58b37a5e
Refactor HTTP response builder
2018-10-08 15:31:58 -07:00
Frédéric Guillot
9d08139f43
Improve request package and add more unit tests
2018-09-23 21:02:26 -07:00
Patrick
2538eea177
Add the possibility to override default user agent for each feed
2018-09-19 18:19:24 -07:00
Frédéric Guillot
c9f9dd3262
Store client IP address in request context
2018-09-09 15:15:14 -07:00
Frédéric Guillot
c1e1506720
Revert cookie flag from strict to lax mode otherwise oauth2 won't work
2018-09-09 14:25:56 -07:00
Frédéric Guillot
eee1f31903
Refactor HTTP context handling
2018-09-03 14:26:40 -07:00
Frédéric Guillot
88e81d4d80
Set cookie attribute SameSite to strict mode
2018-08-29 21:17:19 -07:00
Frédéric Guillot
c327833314
Simplify context keys
2018-08-25 09:50:43 -07:00
Frédéric Guillot
dbcc5d8a97
Use canonical imports
2018-08-24 21:56:39 -07:00
Frédéric Guillot
17054b396e
Update user agent with new website URL
2018-07-28 10:32:48 -07:00
Frédéric Guillot
9f6533ece9
Compress JSON, CSS and Javascript responses
2018-07-19 19:27:05 -07:00
Frédéric Guillot
a291d8a38b
Improve themes handling
...
- Store user theme in session
- Logged out users will keep their theme
- Add theme background color to web manifest and meta tag
2018-07-18 22:30:05 -07:00
Frédéric Guillot
34a3fe426b
Compress HTML responses to Gzip/Deflate if supported by browser
2018-07-06 20:39:28 -07:00
Frédéric Guillot
9c0f882ba0
Add specific 404 and 401 error messages
2018-06-30 12:42:12 -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
b5c317f971
Disable keep-alive for HTTP client
2018-06-19 20:21:24 -07:00
Frédéric Guillot
7914261437
Close HTTP response body even for failed requests
2018-06-19 20:13:13 -07:00
Frédéric Guillot
36dab8b518
Add more filters for API call /entries
...
New filters:
- before (unix timestamp)
- before_entry_id
- after
- after_entry_id
- starred (boolean)
2018-06-09 19:13:41 -07:00
Frédéric Guillot
3b39f0883c
Rewrite RealIP() to avoid returning an empty string
2018-06-01 07:22:31 -07:00
Frédéric Guillot
7f2fd1fdd8
Add Pocket authorization flow in the user interface
2018-05-20 15:29:14 -07:00
Frédéric Guillot
2f4cd59ad9
Make sure to close request body in HTTP client
2018-04-29 23:11:10 -07:00
Frédéric Guillot
f49b42f70f
Use vanilla HTTP handlers (refactoring)
2018-04-29 16:35:04 -07:00
Frédéric Guillot
1eba1730d1
Move HTTP client to its own package
2018-04-28 10:51:07 -07:00
Frédéric Guillot
04adf5fdf5
Add middleware to read X-Forwarded-Proto header
2018-04-27 22:25:00 -07:00
Frédéric Guillot
ddd3af4b85
Do not use shared variable to translate templates
2018-04-27 22:07:46 -07:00
Frédéric Guillot
6b360d08c1
Use Gorilla middleware (refactoring)
2018-04-27 20:38:46 -07:00