Commit Graph

2452 Commits

Author SHA1 Message Date
wn_ 91a91dac15 Perform validation of redirect URLs during the redirect process.
Previously, validation was only done after all redirects and the final request had completed.  This approach ensures all redirects are to URLs that pass extended validation.
2023-12-29 00:41:52 +00:00
wn_ 0ea9db3170 Fix specifying auth type in UrlHelper::fetch(), add a test for 403 auth retry. 2023-12-24 11:21:43 +00:00
wn_ 3c171cc92c Add some tests for UrlHelper::fetch() 2023-12-23 19:52:56 +00:00
wn_ 9132360d46 Rework content encoding error retrying in UrlHelper::fetch() 2023-12-23 16:34:39 +00:00
wn_ d82da74363 Clean up UrlHelper::resolve_redirects().
Also: this doesn't appear to be used... but maybe in some plugin?
2023-12-23 15:56:21 +00:00
wn_ ff59fbd460 Add back 'any auth' retry in UrlHelper::fetch() 2023-12-23 15:34:21 +00:00
wn_ e85d47dfd4 Use Guzzle 2023-12-22 16:51:23 +00:00
Andrew Dolgov 67012f9dac
Revert "Fix sanitizer with libxml2 >= 2.12.0"
This reverts commit d4da4dcc32.
2023-12-17 22:42:52 +03:00
Chih-Hsuan Yen d4da4dcc32 Fix sanitizer with libxml2 >= 2.12.0
Somehow with newer libxml2, `<?xml encoding="UTF-8">` no longer enforces
UTF-8. Instead, non-ASCII contents are treated as ISO-8859-1 and get
broken.

For example, `<p>中文</p>` becomes
`<p>&auml;&cedil;&shy;&aelig;&#150;&#135;</p>` (should be
`<p>&#20013;&#25991;</p>`).

Switching to another trick mentioned on [1] fixes the issue, and the
new trick still works with older libxml2 (tested 2.11.5).

As a side note, DOMDocument::loadHTML uses HTMLParser in libxml2 [2][3].

[1] https://stackoverflow.com/questions/8218230/php-domdocument-loadhtml-not-encoding-utf-8-correctly
[2] https://github.com/php/php-src/blob/php-8.1.26/ext/dom/document.c#L1855
[3] https://gnome.pages.gitlab.gnome.org/libxml2/devhelp/libxml2-HTMLparser.html
2023-11-26 21:04:56 +08:00
Andrew Dolgov ff4248b09e
add wip UI/backend stuff to filter feed tree 2023-11-03 08:33:35 +03:00
Andrew Dolgov 855695a862
add stuff necessary to run integration tests using phpunit 2023-10-28 18:45:09 +03:00
Andrew Dolgov a1a2fe40f6
add a separate interface for auth modules w/ change_password() method 2023-10-27 22:29:03 +03:00
Andrew Dolgov 5a7c5b8249
Merge branch 'master' of gitlab.tt-rss.org:tt-rss/tt-rss 2023-10-27 22:07:41 +03:00
Andrew Dolgov 5920ac814c
replace some dirname horrors with a separate unit-tested method 2023-10-27 22:07:28 +03:00
wn_ c7e1caf223 Fix class names in some more places.
Related to the PSR-4 move via 865ecc8796
2023-10-26 15:01:43 +00:00
Andrew Dolgov 8c9c69921f
make phpstan happy 2023-10-25 18:04:42 +03:00
Andrew Dolgov 3181272619
add healthcheck public method, map by default to /healthz 2023-10-25 17:53:49 +03:00
Andrew Dolgov 865ecc8796
move to psr-4 autoloader 2023-10-25 12:55:09 +03:00
Andrew Dolgov 0a5507d3bd
Revert "api: escape newlines in headline content HTML object"
This reverts commit ed43a73369.
2023-10-24 22:58:10 +03:00
Andrew Dolgov 69c1c62992
add a workaround for make_self_url() when invoked off /api/ endpoint, add unit tests for this method 2023-10-24 22:27:27 +03:00
Andrew Dolgov ed43a73369
api: escape newlines in headline content HTML object 2023-10-24 21:35:48 +03:00
Andrew Dolgov 3d5308a6e5
add stub opentelemetry classes in case it is disabled 2023-10-24 17:50:00 +03:00
Andrew Dolgov 1e3b7f7a43
Revert "add a self url path hack to strip request path directories (needed for /api/index.php)"
This reverts commit 9826d2f075.
2023-10-23 23:39:28 +03:00
Andrew Dolgov 994f376f42
Revert "make phpstan happy"
This reverts commit deb441e9e3.
2023-10-23 23:39:21 +03:00
Andrew Dolgov deb441e9e3
make phpstan happy 2023-10-23 23:16:54 +03:00
Andrew Dolgov 9826d2f075
add a self url path hack to strip request path directories (needed for /api/index.php) 2023-10-23 23:10:17 +03:00
Andrew Dolgov 7bba4ae558
remove startup checks for SELF_URL_PATH, rely on auto-detection instead 2023-10-22 12:19:05 +03:00
Andrew Dolgov 03e956132d
switch to html2text() instead of strip_tags() when preparing FTS index 2023-10-21 10:51:24 +03:00
Andrew Dolgov 2b61052e87
cosmetic fix for root span name 2023-10-21 10:25:29 +03:00
Andrew Dolgov cf18bc576e
fix previous 2023-10-21 10:25:03 +03:00
Andrew Dolgov 3bf275e445
stop whining if _SESSION etc are not defined 2023-10-21 10:24:23 +03:00
Andrew Dolgov 492c4eecfb
show logged in user as root span name 2023-10-21 10:19:53 +03:00
Andrew Dolgov 93bb473bce
make phpstan happy, run phpstan on all files on task startup 2023-10-21 10:02:49 +03:00
Andrew Dolgov 6e025103d3
a bit more tracing 2023-10-20 23:44:56 +03:00
Andrew Dolgov 350177df39
add placeholder instrumentation for public 2023-10-20 23:39:30 +03:00
Andrew Dolgov d3fadc0bd0
stop calling spans scopes 2023-10-20 22:39:41 +03:00
Andrew Dolgov bf6e3c381b
make tracer field non-static 2023-10-20 21:34:36 +03:00
Andrew Dolgov 7092a1e85d
OPENTELEMETRY_HOST -> OPENTELEMETRY_ENDPOINT 2023-10-20 21:27:10 +03:00
Andrew Dolgov 62ca093b75
make phpstan & watcher happy, stop running phpstan on vendor/ 2023-10-20 21:22:03 +03:00
Andrew Dolgov cdd7ad020e
jaeger-client -> opentelemetry 2023-10-20 21:13:39 +03:00
Andrew Dolgov 9556519e67
fix content_preview not shown in JSON shared feed 2023-10-11 17:34:01 +03:00
Andrew Dolgov c779e2ba0d
batch feed editor: don't try to save feed_url or title, those aren't in the dialog 2023-10-04 18:32:35 +03:00
Andrew Dolgov 40df94c169
fix feed_language being unnecessarily quoted in batch feed editor 2023-10-04 18:27:31 +03:00
Andrew Dolgov f489f620d0
phpstan fix 2023-09-18 18:52:22 +03:00
Andrew Dolgov dd6ac57a07
feed debugger: add content regexp matches to filter debug output 2023-09-18 11:45:51 +03:00
Andrew Dolgov 83f5ab5c79
fix basename() being passed a NULL value 2023-08-12 09:00:57 +03:00
Andrew Dolgov ba6a912abd
use non-deprecated variant of get_schema_version() 2023-08-03 07:24:48 +03:00
Andrew Dolgov 1d788eddf8
* logger: add optional HTML output
* feed debugger: add checkbox to dump feed XML
2023-08-02 09:10:05 +03:00
Andrew Dolgov dc25a9cf68
disable app passwords in the UI if auth_internal is not loaded 2023-06-14 20:19:18 +03:00
Andrew Dolgov a28d9582e8
public/getUnread: fix PHP8 warning if fresh optional parameter is not given 2023-05-28 21:27:33 +03:00