Andrew Dolgov
aeca30cb0c
drop SIMPLE_UPDATE_MODE, limit housekeeping and updates to background processes
2025-05-02 13:26:58 +03:00
Andrew Dolgov
a51c1d5176
fix tasks_run never incremented
2025-05-02 13:18:48 +03:00
Andrew Dolgov
36f60b51d7
make digest sending a hourly cron job
2025-05-02 13:17:20 +03:00
Andrew Dolgov
44b5b33f3d
remove synchronous usages of _purge_orphans()
2025-05-02 10:28:35 +03:00
Andrew Dolgov
a268f52de6
record task duration in seconds
2025-05-02 10:23:30 +03:00
Andrew Dolgov
6a40940ad6
split housekeeping jobs to separate scheduled tasks on longer cooldown intervals, add table to record task execution timestamps, bump schema
2025-05-02 10:17:13 +03:00
Andrew Dolgov
0520ca2226
deal with published hook in _create_published_article
2025-05-02 08:26:52 +03:00
Andrew Dolgov
5f70e41118
add plugin hooks invoked when articles get un/marked or un/published
2025-05-01 22:36:33 +03:00
wn
4ae17d0f1c
Merge branch 'feature/phpstan-updates' into 'master'
...
PHPStan update and addressing findings
See merge request tt-rss/tt-rss!122
2025-04-30 16:34:52 +00:00
wn_
f097c5ed97
Remove an unnecessary session UID existence check in 'UserHelper::authenticate()'.
...
PHPStan 'if.alwaysTrue'
2025-04-27 15:13:15 +00:00
wn_
1c9fddd757
Add a PHPStan ignore for a non-issue in 'UrlHelper::fetch()'.
2025-04-27 15:05:28 +00:00
wn_
5c2c95a897
Remove unused 'PluginHost::HOOK_FORMAT_ARTICLE_CDM'.
...
PHPStan 'method.notFound'.
2025-04-27 14:53:53 +00:00
Andrew Dolgov
75556e2f3d
Merge branch 'master' into rip-mysql
2025-04-17 14:07:26 +03:00
Andrew Dolgov
f7199a47c2
* fix 148 migration for pgsql not setting default value of ttrss_feeds.auth_pass breaking OPML import
...
* replace no-op migrations for mysql with 'select 1'
2025-04-17 11:51:47 +03:00
Andrew Dolgov
8cf3059951
more type hints
2025-04-14 15:31:06 +03:00
Andrew Dolgov
3c138a71a1
add deprecation notice for sql_random_function()
2025-04-14 15:27:58 +03:00
Andrew Dolgov
54e8ab7e3d
update DB_TYPE deprecation notice
2025-04-14 15:24:34 +03:00
Andrew Dolgov
7e403aae92
further mysql/DB_TYPE related cleanup
2025-04-14 15:21:10 +03:00
Andrew Dolgov
b154bc7a10
initial attempt to remove mysql-related stuff from tt-rss
2025-04-14 12:59:00 +03:00
Andrew Dolgov
f9e8911727
Revert "cleanup environment variables related to global configuration after instantiating config object"
...
This reverts commit e4f1480453 .
2025-04-08 18:38:10 +03:00
Andrew Dolgov
e4f1480453
cleanup environment variables related to global configuration after instantiating config object
2025-04-08 14:09:15 +03:00
Andrew Dolgov
17b4e98249
spaces to tabs
2025-04-08 13:52:00 +03:00
Andrew Dolgov
f00d9a18f8
if possible, automatically encrypt stored plaintext password for feed on update
2025-04-08 09:43:03 +03:00
Andrew Dolgov
eedc1460e5
support transparent encryption for feed passwords, bump schema to drop length limit of ttrss_feeds.auth_pass
2025-04-08 09:36:04 +03:00
Andrew Dolgov
25d3ce4ee8
drop SESSION-specific stuff and move encrypt/decrypt helpers to a separate class; add a command line flag to generate encryption keys
2025-04-08 08:55:44 +03:00
Andrew Dolgov
58677fc791
rename SODIUM_ENCRYPTION_KEY to SESSION_ENCRYPTION_KEY and move related stuff to Sessions class
2025-04-07 20:28:35 +03:00
Andrew Dolgov
026d68fc2d
add optional encryption for stored session data using Sodium library
2025-04-07 20:09:31 +03:00
Andrew Dolgov
20ba3c67cc
allow setting lifetime to 0 for session cookies
2025-04-07 07:14:01 +03:00
wn_
e1256b06ea
Only use valid feed basic info from plugins.
2025-04-04 17:53:47 +00:00
Andrew Dolgov
2d041f7d28
use server-side localized formatting for matching rule to display as a tooltip (for now)
2025-03-30 20:41:50 +03:00
Andrew Dolgov
b4962b670d
stop sending matched content twice for the tooltip, use smaller objects containing only regular expression and rule type
2025-03-30 20:21:06 +03:00
wn_
10c488e1d0
Strip '[\r\n\t]' from entry content during filter test.
...
This is to help get the content and regex match strings a bit closer.
2025-03-29 10:36:08 +00:00
Andrew Dolgov
043162b0eb
enforce maximum length on resulting rule regexp match, highlight based on strings with stripped tags
2025-03-28 18:36:11 +03:00
Andrew Dolgov
42ea2ebec0
* fix filter test not returning anything for filters set for specific
...
feed ID
* show content preview after first matched rule, not article beginning
* show meaningful preview for filters matching on article link, tags,
and author
2025-03-28 16:51:15 +03:00
Andrew Dolgov
8986a3e7ee
add limited highlighting of filter test results based on matched rules
2025-03-28 07:59:46 +03:00
Andrew Dolgov
49766ab01f
filter test dialog improvements:
...
- properly return results for filter rules matching specific feeds or
categories
- fix test results never returned for Uncategorized
- show tooltip with specific word match and matched rule on resulting
item hover
2025-03-27 22:22:34 +03:00
Andrew Dolgov
5dcb8db933
allow setting update interval in subcribe to feed dialog
2025-03-19 12:47:10 +03:00
wn_
434da183e7
Support using phrases in searches (PostgreSQL only).
2025-03-18 00:31:23 +00:00
wn_
4053af899f
Some improvements in 'Feeds::_search_to_sql()'.
...
* Pass in the profile so some preferences can be retrieved correctly.
* Consistently use the owner UID that gets passed in (previously some session var uses).
2025-03-15 22:37:17 +00:00
Andrew Dolgov
d373c1f978
add Config::DISABLE_LOGIN_FORM to allow limiting logins to SSO providers
2025-03-14 11:43:25 +03:00
Andrew Dolgov
1fc4eed6cd
Merge branch 'feature/time-comparison-gen' into 'master'
...
Add and use 'Db::past_comparison_qpart()'.
See merge request tt-rss/tt-rss!105
2025-03-08 11:58:11 +00:00
wn_
89b0332d38
Add and use 'Db::now_comparison_qpart()'.
...
This introduces a helper to build a query part comparing a field against a past datetime (determined by '$now - $some_interval'), eliminating certain boilerplate code.
2025-03-04 18:34:35 +00:00
wn_
7e335de7b8
Get rid of the 'language' session variable.
...
It had issues (no profile usage, only set at login), so it's cleanest to just replace its one usage with 'Prefs::get()'.
2025-03-04 02:27:28 +00:00
wn_
f8198933b1
Use the fileinfo module for favicon validation in 'RSSUtils::update_favicon()'.
2025-02-25 20:23:17 +00:00
wn_
777c2b4c97
Move filter test results HTML building to the frontend.
2025-02-15 20:39:35 +00:00
wn_
e0d9ffcbc1
Only continue filter testing when there are likely more entries to check.
...
Prior to this, a filter test could needlessly result in up to 100 backend requests (limit 100, max_offset 10000) when the filter's associated feeds+categories have fewer than 10000 entries.
2025-02-15 16:51:25 +00:00
wn_
a34927d184
Clean up 'Pref_Filters::testFilterDo()'.
...
Use ORM, drop the '5 rule' limit, etc.
2025-02-08 16:53:12 +00:00
wn_
d361c1c65d
Remove now-unused 'Config::ICONS_URL'.
2025-01-26 17:21:12 +00:00
wn_
7618101e33
Reduce use of legacy 'Config::ICONS_DIR'.
...
Also some minor cleanup in 'API#_get_config()'.
2025-01-26 17:19:12 +00:00
wn_
5a93056c1c
Fix setting a custom title when cloning a single filter.
2025-01-06 16:04:27 +00:00