Commit Graph

7003 Commits

Author SHA1 Message Date
Alexandre Alapetite
fe7d9bbcd6 Typed view model classes (#5380)
* Typed view model classes
* Add ability to provide a typed view model class to a controller
* Use `::class` instead of string for referring to classes
* Examplified with `stats` and `javascript` controllers / views (more to do)
* Also useful for extensions (my usecase today), which did not have the ability to define own view model attributes before.

* Typo
2023-05-11 12:53:32 +02:00
maTh
2343f0ded1 Docs: delete 04_Changing_source_code.md (#5391)
* delete 04_Changing_source_code.md

* make pot

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-05-11 08:32:19 +02:00
Alexandre Alapetite
97226dc8a6 Update Docker image Alpine 3.18 (#5383)
https://alpinelinux.org/posts/Alpine-3.18.0-released.html

Minor updates with Apache 2.4.57 and PHP 8.1.19
2023-05-10 23:54:49 +02:00
maTh
b97545aff3 Improved: "Mark an article as read…" text area. Added a link to the documentation (#5349)
* i18n

* Update sub.php

* Update app/i18n/fr/sub.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* fix target="_blank"

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-05-10 23:14:29 +02:00
Luc SANCHEZ
078ceaa0bf phpstan level 7 for indexController.php (#5384)
Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
2023-05-10 13:01:52 +02:00
Alexandre Alapetite
4c5f3bbd9b Fix markAsReadUponGone (#5382)
Fix regression from https://github.com/FreshRSS/FreshRSS/pull/5315
which indroduced a bug for cached feeds.
We now update the `lastSeen` property of entries to account for the fact that they are unchanged but still existing.
2023-05-09 22:31:43 +02:00
Alexandre Alapetite
26bc0e0ee9 Minor development config fixes (#5379)
* Add compatibility with MacOS for `paste` command
* Addition to .editorconfig
2023-05-09 13:08:57 +02:00
Alexandre Alapetite
afacebc3e2 Share in anonymous mode (#5261)
#fix https://github.com/FreshRSS/FreshRSS/issues/5248

Co-authored-by: maTh <math-home@web.de>
2023-05-09 13:08:22 +02:00
maTh
54c8de86c7 docs: language table added (#5375)
* docs: language table added

* Update 05_Configuration.md

* Update 05_Configuration.md

* french docs

* Unicode quote and a few fixes
(Same search&replace aslo applied to a few other files)

---------

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-05-07 21:35:08 +02:00
Luc SANCHEZ
9172b65cdb phpstan level 7 for updateController.php (#5376)
* phpstan level 7 for updateController.php

* phpstan level 7 for updateController.php

* Minor array syntax

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-05-07 21:34:49 +02:00
Luc SANCHEZ
f90cd8042c phpstan level 7 for feedController.php (#5373)
* phpstan level 7 for feedController.php

* phpstan level 7 for feedController.php

* phpstan level 7 for feedController.php

* phpstan level 7 for feedController.php

* A few fixes

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-05-07 21:09:56 +02:00
Luc SANCHEZ
aa30635f97 phpstan level 7 for importExportController.php (#5361)
* phpstan level 7 for importExportController.php

* Update app/Controllers/importExportController.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update app/Controllers/importExportController.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update app/Controllers/importExportController.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* Update app/Controllers/importExportController.php

Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>

* phpstan level 7 for importExportController.php

* phpstan level 7 for importExportController.php

* phpstan level 7 for importExportController.php

* A few edits

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-05-04 21:20:32 +02:00
Alexandre Alapetite
fde4e79ed0 SQL attributes native unicode (#5371)
Save our attributes for entries, feeds, and tags as native Unicode instead of JSON escape sequences such as `\u00f8` which are difficult to work with.
2023-05-04 19:48:09 +02:00
Alexandre Alapetite
30c69ef147 Use PHPStan dynamicConstantNames (#5370)
https://phpstan.org/config-reference#constants
Avoid a few phpstan-ignore-next-line
2023-05-04 19:47:54 +02:00
Alexandre Alapetite
675c56f579 Fix entries count (#5368)
Parameters warning with some databases
2023-05-03 15:30:18 +02:00
Alexandre Alapetite
0a38aa7456 Automatic trusted_sources during install (#5358)
* Automatic trusted_sources during install
Fix https://github.com/FreshRSS/FreshRSS/issues/5357

* Fix install for http_auth

* Update lib/lib_rss.php

Co-authored-by: Luc SANCHEZ <4697568+ColonelMoutarde@users.noreply.github.com>

* Fill null exception e-mail

* Revert some syntax

* Minor parentheses
2023-05-03 00:37:04 +02:00
Alexandre Alapetite
bd9fa803f1 PHPStan Level 7 complete DAOs (#5354)
* PHPStan Level 7 complete DAOs

* Finalise PHPStan Level 7 for CategoryDAO

* PHPStan Level 7 for Context and Search

* Apply suggestions from code review

Co-authored-by: Luc SANCHEZ <4697568+ColonelMoutarde@users.noreply.github.com>
2023-05-02 14:38:32 +02:00
Alexandre Alapetite
4de1d5efea Fix mark-selection-as-unread (#5367)
The "mark selection as unread" button would mark articles as read instead of unread...
2023-05-02 14:37:19 +02:00
Alexandre Alapetite
53808c6c05 Fix API starred (#5366)
* Fix API starred
Fix https://github.com/FreshRSS/FreshRSS/issues/5363
c72914bba2 (commitcomment-111220080)

* Minor type fix

* Additional check

* Minor syntax change

* Forgotten type change
2023-05-01 09:47:10 +02:00
Alexandre Alapetite
ffacdaa57a Fix TagDAO for SQLite (#5362)
The list of tags was empty when using SQLite.
I have just realised that SQLite PDO driver returns int columns as string (at least in my test with PHP 7.4.33) so there was a type bug.
We might have other bugs of this type for SQLite...
2023-04-30 23:10:56 +02:00
maTh
9af1c1ca1b Update .gitignore: ignore the directory data.back (#5359)
* Update .gitignore

* Update .gitignore
2023-04-30 21:16:32 +02:00
Luc SANCHEZ
49000ca587 phpstan level 9 for check.translation.php (#5353)
* phpstan level 7 for check.translation.php

* Fixes

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-04-29 20:08:36 +02:00
Luc SANCHEZ
2199df8ad7 phpstan level 7 for manipulate.translation.php (#5352)
* phpstan level 7 for manipulate.translation.php

* Update manipulate.translation.php

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
2023-04-28 14:21:54 +02:00
Alexandre Alapetite
c72914bba2 PHPStan Level 7 for more DAO PDO (#5328)
* PHPStan Level 7 for more DAO PDO
With new function to address common type and check problems

* A bit more

* PHPStan Level 7 for FreshRSS_Entry
2023-04-28 14:01:11 +02:00
Alexandre Alapetite
26e2a70312 Update dev dependencies (#5339)
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5336
https://stylelint.io/migration-guide/to-15
2023-04-26 08:23:21 +02:00
dependabot[bot]
c846b5a5a0 Bump yaml, stylelint, stylelint-config-recommended-scss and stylelint-order (#5336)
Removes [yaml](https://github.com/eemeli/yaml). It's no longer used after updating ancestor dependencies [yaml](https://github.com/eemeli/yaml), [stylelint](https://github.com/stylelint/stylelint), [stylelint-config-recommended-scss](https://github.com/stylelint-scss/stylelint-config-recommended-scss) and [stylelint-order](https://github.com/hudochenkov/stylelint-order). These dependencies need to be updated together.


Removes `yaml`

Updates `stylelint` from 14.16.1 to 15.6.0
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/14.16.1...15.6.0)

Updates `stylelint-config-recommended-scss` from 8.0.0 to 11.0.0
- [Release notes](https://github.com/stylelint-scss/stylelint-config-recommended-scss/releases)
- [Changelog](https://github.com/stylelint-scss/stylelint-config-recommended-scss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stylelint-scss/stylelint-config-recommended-scss/compare/v8.0.0...v11.0.0)

Updates `stylelint-order` from 5.0.0 to 6.0.3
- [Release notes](https://github.com/hudochenkov/stylelint-order/releases)
- [Changelog](https://github.com/hudochenkov/stylelint-order/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hudochenkov/stylelint-order/compare/5.0.0...6.0.3)

---
updated-dependencies:
- dependency-name: yaml
  dependency-type: indirect
- dependency-name: stylelint
  dependency-type: direct:development
- dependency-name: stylelint-config-recommended-scss
  dependency-type: direct:development
- dependency-name: stylelint-order
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-25 14:07:22 +02:00
Alexandre Alapetite
cc03cee746 Fix starred import (#5332)
Fix https://github.com/FreshRSS/FreshRSS/issues/5331
2023-04-24 11:34:02 +02:00
Alexandre Alapetite
115724622f PHPStan Level 7 for ten more files (#5327)
* PHPStan Level 7 for nine more files

* Minor syntax

* One more
2023-04-23 11:58:15 +02:00
Alexandre Alapetite
8abe53d879 Improve markAsReadUponGone (#5315)
* Improve markAsReadUponGone
Fix case  when the uptream feed has zero article, then old articles would never be automatically marked as read with the "mark as read when gone" policy, which was only based on the timestamp of new articles from the uptream feed.

* Fix typo

* Simplify request
Needs to be re-tested with SQLite + MySQL

* While waiting to check syntax on all database types

* Fix multiple errors
In the case of WebSub, and in the case of invalid GUIDs
2023-04-20 21:46:25 +02:00
Alexandre Alapetite
2208974c00 PHPStan Level 7 for FreshRSS_UserQuery (#5319)
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5318
2023-04-20 09:14:58 +02:00
Alexandre Alapetite
273b36c54c Show REMOTE_ADDR in case of HTTP Basic Auth error (#5314)
* Show REMOTE_ADDR in case of HTTP Basic Auth error
https://github.com/FreshRSS/FreshRSS/issues/5300

* Remove obsolete TODO
2023-04-20 09:13:59 +02:00
Alexandre Alapetite
5579dc88ab Better XPath failure (#5317)
Report feeds as errored for more cases
2023-04-20 08:21:37 +02:00
Alexandre Alapetite
ecd956c736 PHPStan 7 configureController (#5318)
And fix bugs for saving user queries
2023-04-20 00:55:10 +02:00
maTh
2f53214c15 Flat theme: un-deprecate (#5316)
* Update metadata.json

* Update 05_Configuration.md
2023-04-19 22:40:36 +02:00
Alexandre Alapetite
ef82e218ea PHPStan Level 7 Minz_ActionController and lib_date (#5313) 2023-04-19 09:16:48 +02:00
Alexandre Alapetite
687d0b40a8 Fix safe_ascii (#5311)
Fix https://github.com/FreshRSS/FreshRSS/issues/5310
2023-04-17 19:53:54 +02:00
Luc SANCHEZ
8cc8127c3c phpstan level 7 for user-info.php (#5309)
* phpstan level 7 for user-info.php

* phpstan level 7 for user-info.php

* phpstan level 7 for user-info.php

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
2023-04-17 16:27:35 +02:00
Alexandre Alapetite
62496339b6 More consistent use of iterable type (#5308)
For `yield`
2023-04-17 16:24:35 +02:00
Luc SANCHEZ
5185bcef13 PHPstan level 7 for MigratorTest.php (#5307)
Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
2023-04-17 10:05:51 +02:00
Alexandre Alapetite
f3760f138d Complete PHPStan Level 6 (#5305)
* Complete PHPStan Level 6
Fix https://github.com/FreshRSS/FreshRSS/issues/4112
And initiate PHPStan Level 7

* PHPStan Level 6 for tests
* Use phpstan/phpstan-phpunit
* Update to PHPStan version 1.10

* Fix mixed bug

* Fix mixed return bug

* Fix paginator bug

* Fix FreshRSS_UserConfiguration

* A couple more Minz_Configuration bug fixes

* A few trivial PHPStan Level 7 fixes

* A few more simple PHPStan Level 7

* More files passing PHPStan Level 7
Add interface to replace removed class from https://github.com/FreshRSS/FreshRSS/pull/5251

* A few more PHPStan Level 7 preparations

* A few last details
2023-04-17 08:30:21 +02:00
maTh
41fa4e746d Improved: CSS classes for theme preview slider changed (#5303)
* CSS classes changed

* fix
2023-04-16 15:30:33 +02:00
maTh
52cde870e2 Improved: share to clipboard improved with animation and icon (#5295)
* share to clipboard improved with animation and icon

* fix
2023-04-16 15:29:24 +02:00
maTh
48954503d1 .scrollbar-thin for #sidebar (#5304) 2023-04-16 15:28:53 +02:00
Alexandre Alapetite
efcc8f387b PHPStan level 6 for remaining DAO classes (#5299)
* PHPStan level 6 FreshRSS_CategoryDAO
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/5298
Contributes to https://github.com/FreshRSS/FreshRSS/issues/4112

* PHPStan Level 6 for FeedDAO and a bit more

* PHPStan Level 6 for tagDAO
2023-04-15 22:04:37 +02:00
maTh
789c44b502 Improved: global view: mobile view (#5297)
* improved overlay + visible close button

* duplicate of line 2109

* delete #panel .close from frss.css

* set background colors in each theme

* fix Ansum and Mapco theme

* fix Nord theme

* frss.css

* only 1 scroll bar

* fix the closer background in some themes

* fix scrolling

* fix fix
2023-04-15 21:13:56 +02:00
Luc SANCHEZ
a19b56064d PHPstan level 6 for Category.php (#5298)
* PHPstan level 6 for Category.php

* Fix a few things

* Minor fixes

* A few more fixes

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-04-15 01:19:22 +02:00
Luc SANCHEZ
b8662f8899 PHPstan level 6 for I18nFile.php (#5291)
* PHPstan level 6 for I18nFile.php

* Minor syntax

* PHPstan level 6 for I18nFiles

* PHPstan level 6 for I18nFiles

* PHPstan level 6 for I18n Files

* PHPstan level 6 for I18n Files

* Fix several type errors

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-04-14 23:08:38 +02:00
Alexandre Alapetite
b3121709d6 PHPStan Level 6 FreshRSS_Search FreshRSS_Entry (#5292)
* PHPStan Level 6 FreshRSS_Search FreshRSS_Entry

* Minor fix

* Type fix

* Apply suggestions from code review

Co-authored-by: Luc SANCHEZ <4697568+ColonelMoutarde@users.noreply.github.com>

* Minor types syntax
Compatibility Intelephense

---------

Co-authored-by: Luc SANCHEZ <4697568+ColonelMoutarde@users.noreply.github.com>
2023-04-14 14:23:45 +02:00
Alexandre Alapetite
61550b1d2d Fix save shortcuts (#5294)
Fix https://github.com/FreshRSS/FreshRSS/issues/5293
Regression from https://github.com/FreshRSS/FreshRSS/pull/5267
2023-04-13 12:50:50 +02:00
Luc SANCHEZ
6e7fa07a39 PHPstan level 6 for Dispatcher.php (#5290)
* PHPstan level 6 for Dispatcher.php

* PHPstan level 6 for Dispatcher.php

* Minor fixes

---------

Co-authored-by: Luc <sanchezluc+freshrss@gmail.com>
Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2023-04-12 13:11:28 +02:00