aboutsummaryrefslogtreecommitdiff
path: root/p/api/pshb.php
AgeCommit message (Collapse)Author
2025-08-11Put CSP everywhere (#7810)Gravatar Inverle
* Puts CSP everywhere in `p/api` * including the HTML query page ❗ * Also in `p/ext.php` * Puts `X-Content-Type-Options: nosniff` everywhere * Fixes custom icon configuration not showing `blob:` icon in statsController (idle feeds) * Also removes `style-src 'unsafe-inline'` since it doesn't seem to be needed * Improves CSP of `p/f.php` * Add `sandbox` directive
2025-07-19WebSub: only perform a redirect when coming from WebSub (#7738)Gravatar Alexandre Alapetite
And add support for HTTP Link header for "self" URL Changing URL based on "self" URL will only be done when coming from a WebSub push fix https://github.com/FreshRSS/FreshRSS/issues/7737
2024-12-27PHPStan 2.0 (#7131)Gravatar Alexandre Alapetite
* PHPStan 2.0 fix https://github.com/FreshRSS/FreshRSS/issues/6989 https://github.com/phpstan/phpstan/releases/tag/2.0.0 https://github.com/phpstan/phpstan/blob/2.0.x/UPGRADING.md * More * More * Done * fix i18n CLI * Restore a PHPStan Next test For work towards PHPStan Level 10 * 4 more on Level 10 * fix getTagsForEntry * API at Level 10 * More Level 10 * Finish Minz at Level 10 * Finish CLI at Level 10 * Finish Controllers at Level 10 * More Level 10 * More * Pass bleedingEdge * Clean PHPStan options and add TODOs * Level 10 for main config * More * Consitency array vs. list * Sanitize themes get_infos * Simplify TagDAO->getTagsForEntries() * Finish reportAnyTypeWideningInVarTag * Prepare checkBenevolentUnionTypes and checkImplicitMixed * Fixes * Refix * Another fix * Casing of __METHOD__ constant
2024-11-28Upgrade code to php 8.1 (#6748)Gravatar Luc SANCHEZ
* revert Fix code indentation Fix code Upgrade code to php 8.1 * fix remarques * code review * code review * code review * Apply suggestions from code review * code review * Fixes * Many remainging updates of array syntax * Lost case 'reading-list' * Uneeded PHPDoc --------- Co-authored-by: Luc Sanchez <l.sanchez-prestataire@alptis.fr> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2024-09-20SimplePie support for HTTP cache policies (#6812)Gravatar Alexandre Alapetite
* SimplePie support for HTTP cache policies Discussion in https://github.com/FreshRSS/simplepie/pull/26 * Bump SimplePie commit * Typos * Typos * Simpler logic * Explicitly disable cache for non-GET flows * Bump SimplePie commit * Bump SimplePie commit * Bump SimplePie commit * Bump SimplePie commit
2024-07-21Revisit keepMaxUnreads (#6632)Gravatar Alexandre Alapetite
* Revisit keepMaxUnreads Again, follow-up of https://github.com/FreshRSS/FreshRSS/pull/5905 fix https://github.com/FreshRSS/FreshRSS/issues/6620 * Refactoring to address buggy cases * Fix minor test
2024-06-09Pass PHPStan level 9 (#6544)Gravatar Alexandre Alapetite
* More PHPStan * More, passing * 4 more files * Update to PHPStan 1.11.4 Needed for fixed bug: Consider numeric-string types after string concat https://github.com/phpstan/phpstan/releases/tag/1.11.4 * Pass PHPStan level 9 Start tracking booleansInConditions * Fix mark as read * Fix doctype * ctype_digit
2024-06-05Modernize code to php7.4 (#6043)Gravatar Luc SANCHEZ
* Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Modernize code to php7.4 * Consistency --------- Co-authored-by: Luc <sanchezluc+freshrss@gmail.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-12-18Pass PHPStan level 8 (#5946)Gravatar Alexandre Alapetite
* Pass PHPStan level 8 And prepare for PHPStan level 9 https://phpstan.org/user-guide/rule-levels * Revert wrong replace in comment * Fix PHPStan level 8 * Update PHPStan and other dev dependencies * Remove obsolete comment * noVariableVariables and towards bleedingEdge https://github.com/phpstan/phpstan-strict-rules https://phpstan.org/blog/what-is-bleeding-edge * More bleedingEdge * A bit more PHPStan level 9 * More PHPStan level 9 * Prepare for booleansInConditions Ignore int and null * Revert wrong line * More fixes * Fix keep_max_n_unread * Stricter attribute functions * Stricter callHooks and more PHPStan level 9 * More typing * A tiny more
2023-12-03Rework keepmax (#5905)Gravatar Alexandre Alapetite
* Rework keepmax fix https://github.com/FreshRSS/FreshRSS/issues/5702 fix https://github.com/FreshRSS/FreshRSS/issues/5870 * More WIP * Minor progress * Progress * Beta * Improved debug message * Revert noCommit * Fix variable reset * Remove debug syslogs
2023-11-16Use strict_types (#5830)Gravatar Luc SANCHEZ
* Little's optimisations and booleans in conditions * Apply strict type * Apply strict type * Apply strict type * Fix multiple bugs with PHP 8.2 and 8.3 * Many declares missing, more errors fixed * Apply strict type * Another approach * Stronger typing for Minz_Session * Fix case of SQLite --------- Co-authored-by: Luc <sanchezluc+freshrss@gmail.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-11-08Update WebSub documentation a bit (#5829)Gravatar Alexandre Alapetite
* Update WebSub documentation a bit * Marien prefers not to promote his hub too much :-)
2023-04-04Fix extensions in actualize_script (#5243)Gravatar Alexandre Alapetite
* Fix extension freshrss_user_maintenance in actualize_script Follow-up of https://github.com/FreshRSS/FreshRSS/pull/3440 The hook was called before registering all the extensions for the current user * PHPStan Level 6 for extensions And remove 5-year old legacy format of enabled extensions < FreshRSS 1.11.1 * Fix multiple bugs in extensions * Minor typing * Don't change signature of methods supposed to be overridden * PHPStan Level 9 and compatibility Intelliphense * Set as final the methods not supposed to be overriden
2023-01-29PHPStan level 9 for ./p/ and lib_rss.php (#5049)Gravatar Alexandre Alapetite
And app/FreshRSS.php Contributes to https://github.com/FreshRSS/FreshRSS/issues/4112
2022-03-22WebSub: Use hash instead of base64 to handle long URLs (#4282)Gravatar Alexandre Alapetite
* WebSub: Use hash instead of base64 to handle long URLs * Use 410 Gone (Part of the WebSub specification https://www.w3.org/TR/websub/ )
2022-01-08Fix various typos and spelling errors in documentation, comments and code. ↵Gravatar Thomas Renes
(#4134)
2021-01-02Avoid manual initialisations of system or user configuration (#3070)Gravatar Alexandre Alapetite
* Avoid manual intialisations of system or user configuration More consistent use of Context * Simplify FreshRSS_Context::initUser * Remove a few manual get_user_configuration * A bit of debugging * Fix context user init * Fix install * Fix concurrency Concurrent requests could lead to bad race condition * Fix actualize cron Fix case when system i initialised several times
2020-06-14Add a way to disable/enable users (#3056)Gravatar Alexis Degrugillier
If you want to block users without deleting their account, you can now disable them from the interface.
2020-05-17Stream instead of memory copy of SimplePie entries (#2972)Gravatar Alexandre Alapetite
* Stream instead of memory copy of SimplePie entries https://github.com/FreshRSS/FreshRSS/issues/2952 * Undo lines delete * Typo * Remove unaccessible code https://github.com/FreshRSS/FreshRSS/pull/2972/files#r425624163 * Back-compatibility for Feed->entries https://github.com/FreshRSS/FreshRSS/pull/2972/files#r425631913
2019-12-29fix: Fix undefined function _t on WebSub (#2743)Gravatar Marien Fressinaud
I published an article via WebSub, but I never received it. So I checked my logs to find why and I found the following stacktrace: ``` 29/Dec/2019:15:58:32 +0000 "POST /api/pshb.php" 500 NOTICE: PHP message: PHP Fatal error: Uncaught Error: Call to undefined function _t() in /path/app/Models/Category.php:83 Stack trace: /path/app/Models/CategoryDAO.php(417): FreshRSS_Category->_id(1) /path/app/Models/CategoryDAO.php(192): FreshRSS_CategoryDAO::daoToCategory(Array) /path/app/Models/Feed.php(466): FreshRSS_CategoryDAO->searchById('1') /path/app/Controllers/feedController.php(416): FreshRSS_Feed->cleanOldEntries() /path/p/api/pshb.php(141): FreshRSS_feed_Controller::actualizeFeed(0, 'https://flus.io...', false, Object(SimplePie)) {main} thrown in /path/app/Models/Category.php on line 83 ``` The `_t` function should be loaded with the Minz_Translate class, but the latter isn't initialized on WebSub endpoint. In my opinion, we should not have to care about this kind of detail of implementation and it reveals a deeper architectural misconception, but for now the fix should be enough. It’s quite difficult to reproduce locally though.
2018-12-16Update naming to WebSub (#2184)Gravatar Alexandre Alapetite
Instead of PubSubHubbub / PuSH
2018-06-13Fix extension hook for updated articles (#1932)Gravatar Alexandre Alapetite
* Fix extension hook for updated articles https://github.com/FreshRSS/FreshRSS/issues/1926 * Enable extensions during PubSubHubbub * A little array protection * Changelog 1926 https://github.com/FreshRSS/FreshRSS/issues/1926 https://github.com/FreshRSS/FreshRSS/pull/1932 * Add null check
2017-12-11Use __DIR__ for relative include and requireGravatar Alexandre Alapetite
For uniformity, and to avoid having PHP searching in include_path. http://php.net/manual/function.include.php https://github.com/FreshRSS/FreshRSS/pull/1715 https://github.com/FreshRSS/FreshRSS/pull/1711#issuecomment-350581350
2017-12-10Log rotation, use Minz_Log, new log constantsGravatar Alexandre Alapetite
ADMIN_LOG, API_LOG, PSHB_LOG
2017-06-14file_get_contents fixGravatar Alexandre Alapetite
PHP 7.1 https://github.com/FreshRSS/FreshRSS/issues/1584
2017-05-12Move default configuration filesGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1531
2017-05-05Make actualizeFeed returns values consistent&safeGravatar Seokseong Jeon
2017-04-10PSHB better unsubscribeGravatar Alexandre Alapetite
Cases when a user is deleted, or when a feed is deleted. Removed random key do reduce the risk of subscribing several times to the same PSHB feed.
2016-10-07PSHB bugsGravatar Alexandre Alapetite
Introduced by https://github.com/FreshRSS/FreshRSS/pull/1280
2016-09-24Refactor controller for actualize feedGravatar Alexandre Alapetite
2016-08-29HTTP security: prevent reflection abuseGravatar Alexandre Alapetite
https://msdn.microsoft.com/en-us/library/gg622941(v=vs.85).aspx
2016-07-30PSHB: work-around for SuperFeederGravatar Alexandre Alapetite
Feeds using SuperFeeder for PubSubHubbub push had timeout problems during substription. SuperFeeder bot was returning 422 "We could not verify your callback Error: ETIMEDOUT" It seems to be due to the the fact that SuperFeeder bot uses keep-alive but expects the server to close the connection. https://github.com/FreshRSS/FreshRSS/issues/312#issuecomment-73716936
2016-01-24PubSubHubbub unsubscribe requestGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/1058
2015-05-17PubSubHubbub better gestion of errorsGravatar Alexandre Alapetite
Do not assume that PubSubHubbub works until the first successul push https://github.com/FreshRSS/FreshRSS/issues/312#issuecomment-102706500
2015-05-16More PubSubHubbubGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/312 Show whether PubSubHubbub is enabled in the Web interface of feed configuration. When PubSubHubbub is used, do not pull refresh so often (hard-coded to max once per 24h for now). Improved logic for lease renewal, and some detection of lease problems. Updated read-me and changelog.
2015-05-15Change some error messagesGravatar Alexandre Alapetite
2015-05-15First alpha of PubSubHubbubGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/312 Using a white list limited to http://push-pub.appspot.com/feed for alpha testing.
2015-05-15First draft of PubSubHubbubGravatar Alexandre Alapetite
https://github.com/FreshRSS/FreshRSS/issues/312 Requires setting base_url in config.php. Currently using the filesystem (no change to the database)