aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
8 daysUpdate phpmailer/phpmailer requirement from 7.0.1 to 7.0.2 in /lib (#8483)edgeGravatar dependabot[bot]
* Update phpmailer/phpmailer requirement from 7.0.1 to 7.0.2 in /lib Updates the requirements on [phpmailer/phpmailer](https://github.com/PHPMailer/PHPMailer) to permit the latest version. - [Release notes](https://github.com/PHPMailer/PHPMailer/releases) - [Changelog](https://github.com/PHPMailer/PHPMailer/blob/master/changelog.md) - [Commits](https://github.com/PHPMailer/PHPMailer/compare/v7.0.1...v7.0.2) --- updated-dependencies: - dependency-name: phpmailer/phpmailer dependency-version: 7.0.2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> * Update PHPMailer * Update changelog --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
8 daysChangelogGravatar Alexandre Alapetite
8 daysBump the stylelint group with 3 updates (#8481)Gravatar dependabot[bot]
Bumps the stylelint group with 3 updates: [stylelint](https://github.com/stylelint/stylelint), [stylelint-config-recommended](https://github.com/stylelint/stylelint-config-recommended) and [@stylistic/stylelint-plugin](https://github.com/stylelint-stylistic/stylelint-stylistic). Updates `stylelint` from 16.26.1 to 17.1.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/16.26.1...17.1.0) Updates `stylelint-config-recommended` from 17.0.0 to 18.0.0 - [Release notes](https://github.com/stylelint/stylelint-config-recommended/releases) - [Changelog](https://github.com/stylelint/stylelint-config-recommended/blob/main/CHANGELOG.md) - [Commits](https://github.com/stylelint/stylelint-config-recommended/compare/17.0.0...18.0.0) Updates `@stylistic/stylelint-plugin` from 4.0.1 to 5.0.1 - [Release notes](https://github.com/stylelint-stylistic/stylelint-stylistic/releases) - [Changelog](https://github.com/stylelint-stylistic/stylelint-stylistic/blob/main/CHANGELOG.md) - [Commits](https://github.com/stylelint-stylistic/stylelint-stylistic/compare/v4.0.1...v5.0.1) --- updated-dependencies: - dependency-name: stylelint dependency-version: 17.1.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: stylelint - dependency-name: stylelint-config-recommended dependency-version: 18.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: stylelint - dependency-name: "@stylistic/stylelint-plugin" dependency-version: 5.0.1 dependency-type: direct:development update-type: version-update:semver-major dependency-group: stylelint ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
8 daysBump ruby/setup-ruby from 1.278.0 to 1.287.0 (#8482)Gravatar dependabot[bot]
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.278.0 to 1.287.0. - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](https://github.com/ruby/setup-ruby/compare/4c24fa5ec04b2e79eb40571b1cee2a0d2b705771...8d27f39a5e7ad39aebbcbd1324f7af020229645c) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-version: 1.287.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
8 daysBump PHPStan, other dev dependencies (#8480)Gravatar Alexandre Alapetite
9 daysImplement sort order per feed (#8234)Gravatar PeterVavercak
* added local feed sorting Addresses https://github.com/FreshRSS/FreshRSS/issues/4761 - Added number of sorted feeds and associative array for feed sorting option in Context. - Number of sorted feeds and local sorting option by its index saved into Minz Request Parameters. - Number of sorted feeds and local sorting options deleted when choosing another Option Of Global Sorting. - Added option of allowing sorting by feed in configuration. - Added variable for allowing local sorting in userConf. - Added function to get feeds by current get in context. - Added menu button for all individual feed sorting. - New database options for individual feed sorting in EntryDAO. - Considered choosing new entries based on chosen load limit. - Local sorting parameter saved into continuation value in Index Controller. How to test the feature manually: 1. At the bottom of Reading Configuration menu turn on individual sorting option menu 2. Choose Sorting by feed option 3. Choose feed at next sorting menu and choose sorting option for that feed * added feed sorting option * added sort feeds display * added template for sort feed name * added title to feed sorting button * added comments * added local sorting option * Added Docs * css reset * added getter and seter for local sort * added getter and seter for local sort * allowed sorting per feed * allowed sorting per feed * added sorting option for category * deleted changes from NetryDAO * add setting up sorting for category * docs reset * i18 reset * updated i18 for category * added i18 for categories * added i18 for category * added setting sorting for feeds and category * removing userConf.allow-local-sort * removing userConf.allow-local-sort * removing white space * added credits * removed feeds_by_get * removed whitespace * changed escaping for values * added escaping to user set values * added in_array * added secondary sort and order * added secondary sort and order * fixed readme * removed whitespace change * reseted i18n * added translations * added feed setting translations * fixed i18n * fixed i18n * changes in sort order per feed * changes in sort order per feed * added secondary sort order * primary sort * changed to preferred sort order * i18n * Revert wrong whitespace changes * Re-order new options * added blank option * fixed escaping * fixed default sort in feed * fixed default sort recovery * siplyfied option * added rand option * Revert unrelated change * Minor plaintext * Whitespace and formatting fixes * Avoid unneeded SQL requests and processing * Improve syntax * Improve logic * Reuse existing translations as much as possible * i18n * Remove some options that make little sense * Separators * Fix old transation key * Add help messages * Progress on secondary sort * raw name * Pass parameters. Add TODO * Progress * Minor ordering * Fix parenthesis --------- Co-authored-by: root <root@LAPTOP-C8TCHHPN.localdomain> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
9 daysInitial conventions for AI agents and humans: AGENTS.md, SKILLS.md, ↵Gravatar Alexandre Alapetite
instructions.md (#8478) Not stable yet, but initial structure https://agents.md https://agentskills.io/specification https://code.visualstudio.com/docs/copilot/customization/custom-instructions https://code.visualstudio.com/docs/copilot/customization/agent-skills
9 daysFix wrong search toString in case of regex-looking string (#8479)Gravatar Alexandre Alapetite
`author:'/u/Alice'` was missing its quotes during serialisation, transforming it to a regex.
11 daysUpdate Chinese user messages for username validation (#8474)Gravatar X.
11 daysTranslate error messages to Chinese in install.php (#8476)Gravatar X.
* Translate error messages to Chinese in install.php * Fix syntax error --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
11 daysTranslate 'Enable notification' to Chinese (#8475)Gravatar X.
11 daysAdd xtmd to CREDITS.md (#8473)Gravatar X.
Add myself to CREDITS.md,see [contributions](https://github.com/FreshRSS/FreshRSS/pulls?q=is:pr+author:xtmd)
11 daysAdd option to enable notifications (#8458)Gravatar rupak
Closes https://github.com/FreshRSS/FreshRSS/issues/7330 - Default behavior is same - Added FreshRSS_Context::userConf()->html5_disable_notif so that, it determines weather user wants notification. (will not show any even it has permission) (i want default false so disable, so old configs get proper default values) - Added button such that checking it makes it request permission too <img width="707" height="119" alt="image" src="https://github.com/user-attachments/assets/a0fdbc4d-9f15-4644-8753-f0e6c979677f" /> - test notification actually happening (how can i trigger it, do i have to wait it), this code fixes permissions.
12 dayspubSub, if hub have same host it can be reached without being public (#8450)Gravatar rupak
Compares host of hub and baseUrl, to detect they can connect each other ofr pubSubHub Helps https://github.com/FreshRSS/FreshRSS/issues/8442 Changes proposed in this pull request: - if host of hub and baseUrl are same then they hub can access freshrss even in localhost How to test the feature manually: - Create pubsub server on localhost and connect to RSS instance on localhost. --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
13 daysUpdate the 'Refreshing feeds' documentation page (#8468)Gravatar Tomas Odehnal
* Update the 'Refreshing feeds' page * add the 'user' parameter and clarify the 'token' parameter usage * remove old token screenshots, add a new one from profile page * update the authentication page screenshot * clarify the anonymous refreshing of the feeds * Add myself to CREDITS.md * Update Refresh feeds docs page content * Tweak the content headings to match the actual headings * Fix the link to Form authentication paragraph * PNG compress more (16 colours + OptiPNG) * Minor typography --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
13 daysadd allowfullscreen to iframe (#8467)Gravatar Luca Olivetti
With the "allowfullscreen" attribute it's possible to view an embedded video in full screen.
13 daysRewrite setcookie using new syntax (#8447)Gravatar Alexandre Alapetite
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/2630 now that we have PHP 7.3+ (even PHP 8.1+). * The new syntax natively supports `samesite`, and also avoids the need of re-setting all parameters. * Use automatic path instead of own function `getCookieDir()`. Follow-up of https://github.com/FreshRSS/FreshRSS/pull/8446 * Sanitize lifetime of session cookies from PHP ini to avoid likely invalid/misunderstood values
13 daysBump phpunit/phpunit in the composer group across 1 directory (#8469)Gravatar dependabot[bot]
Bumps the composer group with 1 update in the / directory: [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit). Updates `phpunit/phpunit` from 10.5.60 to 10.5.62 - [Release notes](https://github.com/sebastianbergmann/phpunit/releases) - [Changelog](https://github.com/sebastianbergmann/phpunit/blob/10.5.62/ChangeLog-10.5.md) - [Commits](https://github.com/sebastianbergmann/phpunit/compare/10.5.60...10.5.62) --- updated-dependencies: - dependency-name: phpunit/phpunit dependency-version: 10.5.62 dependency-type: direct:development dependency-group: composer ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-25Start 1.28.2-devGravatar Alexandre Alapetite
2026-01-25Release 1.28.11.28.1Gravatar Alexandre Alapetite
2026-01-25Changelog, creditsGravatar Alexandre Alapetite
2026-01-25Fix shortcut next unread article (#8466)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/8426 regression from https://github.com/FreshRSS/FreshRSS/pull/8057
2026-01-25Update Spanish translation (#8464)Gravatar Martín González Gómez
* Update Spanish translation * make fix-all --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-24Update the support status of ReadYou in readme (#7729)Gravatar junkfood
* Update README.md * Update, i18n:fr --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-24Message for closed registration (#8462)Gravatar rupak
* Add closed msg field i18n fix * Display based on registration type * Save as FreshRSS_Context::systemConf()->closed_registration_message instead * Improve messages * Revert unrelated changes * make fix-all * Minor whitespace * Simplify logic * Fix invalid use of empty() and sympler syntax --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-24Mark Capy Reader podcast support as true (#8444)Gravatar Eve Coull
* Update README.md Capy Reader has added podcast support under their Experimental section of the General settings. As such, I'm setting it as supported in the app table, along with a link to its GitHub discussion showing how to enable it. - Changed Capy Reader podcast support to True, with link to GitHub discussion * Readme.fr --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-24MariaDB restrict USE INDEX (#8460)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/8455 Follow-up of https://github.com/FreshRSS/FreshRSS/pull/8211
2026-01-21Bump PHPStan (#8453)Gravatar Alexandre Alapetite
~22% faster analysis since 2.1.34+. https://github.com/phpstan/phpstan/releases/tag/2.1.34 Before / after: ```console $ rm -fr /tmp/phpstan/ $ time composer run-script phpstan > phpstan analyse --memory-limit 512M . Note: Using configuration file /home/alex/GitHub/FreshRSS/phpstan.dist.neon. real 1m2.924s user 4m54.812s sys 0m16.494s $ rm -fr /tmp/phpstan/ $ time composer run-script phpstan > phpstan analyse --memory-limit 512M . Note: Using configuration file /home/alex/GitHub/FreshRSS/phpstan.dist.neon. real 0m49.215s user 3m40.906s sys 0m18.413s ```
2026-01-20fix validator url update (#8436)Gravatar Tsung-Han Yu
Closes https://github.com/FreshRSS/FreshRSS/issues/8435 Changes proposed in this pull request: - update validator links to use the same open-url handler with prefix + encoding - ensure the validator link reflects the current #url field value before opening - keep existing open-url behavior for other links unchanged How to test the feature manually: 1. Open feed edit (or add feed) form. 2. Change the feed URL in the URL field. 3. Click “Check the validity of the feed” and verify it opens the validator with the updated URL.
2026-01-18Fix custom session.cookie-lifetime (#8446)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/8430 Fix case when `session.cookie-lifetime` is not using the default value of 0 in PHP ini. Co-authored-by: rioky <rioky@users.noreply.github.com>
2026-01-18Bump SimplePie (#8445)Gravatar Alexandre Alapetite
https://github.com/simplepie/simplepie/pull/957
2026-01-17Update documentation in regards to CSP warnings (#8439)Gravatar Thomas Hufschmidt
* Add a reference to the check where the warning is triggered Note: This is the place where the admin sees the browser pointing to. Adding this information here allows the admin to find the matching documentation entry. * Update Content-Security-Policy section of english ServerConfig documentation Note: This fixes some minor formating/typping issues and adds some clarity to the fact that this warning is also triggered on correctly configured hosts, simply due to the nature of how correctness of CSP rules are checked. * Move CSP infor source-code comment into console.info Note: Improve visibility of why this is happening. * Point towards static website documentation instead of git This URL should also remain more fixed even accross new branches/releases. Co-authored-by: Inverle <inverle@proton.me> * Minor fixes * Remove overwrite part --------- Co-authored-by: Inverle <inverle@proton.me> Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-17Bump SimplePie (#8443)Gravatar Alexandre Alapetite
* https://github.com/FreshRSS/simplepie/pull/68 * https://github.com/FreshRSS/simplepie/pull/69 fix https://github.com/FreshRSS/FreshRSS/issues/8441
2026-01-14ChangelogGravatar Alexandre Alapetite
2026-01-14ChangelogGravatar Alexandre Alapetite
2026-01-14Fix RSS and OPML access by token (#8434)Gravatar Alexandre Alapetite
Regression from https://github.com/FreshRSS/FreshRSS/pull/8165 Follow-up of https://github.com/FreshRSS/FreshRSS/pull/8371
2026-01-10Fix MySQL transliterator_transliterate fallback (#8427)Gravatar Alexandre Alapetite
The string syntax of `strtr()` cannot handle mutibytes characters, so need to be rewritten using an array map approach. Extend the fallback replacements to include the Windows/ISO charsets of the latin languages for which we have a translation
2026-01-10Fix space between 'By:' and the author name (#8422)Gravatar Rob Loach
* Fix space between 'By:' and the author name * Use a different approach than sprintf() * Revert "Use a different approach than sprintf()" This reverts commit 3ede55f000bb7ef5ed7c1d6ffd060139801838b7. * Apply a space between By: and the author name * Apply suggestion from @Alkarex Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr> --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-10Fix tags ILIKE (#8425)Gravatar Alexandre Alapetite
fix https://github.com/FreshRSS/FreshRSS/issues/8424 Regression from https://github.com/FreshRSS/FreshRSS/issues/8329
2026-01-08ChangelogGravatar Alexandre Alapetite
2026-01-07Credits pt-BRGravatar Ciro Mota
https://github.com/FreshRSS/FreshRSS/pull/8411
2026-01-07Add S. Neuhaus to CREDITS.md (#8412)Gravatar S. Neuhaus
https://github.com/FreshRSS/FreshRSS/pull/8402
2026-01-07feat(i18n): Added missing translations and fix others (#8411)Gravatar Ciro Mota
* feat(i18n): Added missing translations and fix others * feat(i18n): Fix #8401 proposed * IGNORE * make fix-all * feat(i18n): Fix missing TODO * make fix-all --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-06[i18n] Add "." at the end of "You have the PDO driver for SQLite" to improve ↵Gravatar Frans de Jonge
uniformity (#8409) See <https://github.com/FreshRSS/FreshRSS/pull/8403#discussion_r2662753028>.
2026-01-05Update Polish translation (#8408)Gravatar Inverle
2026-01-05Document mounting own CA on FreshRSS container (#8406)Gravatar netsho
closes https://github.com/FreshRSS/FreshRSS/issues/8405 - Add documentation on how to trust own CA that issued self-signed certificate as authentik signing key - Add example in Docker Example How to test the feature manually: 1. Create your own CA 2. Issue a certificate 3. Use the issued certificate as a signing-key in authentik when configuring FreshRSS provider 4. Add created CA on host's CA store by running `update-ca-certificates` 5. Mount the `/etc/ssl/certs/ca-certificates.crt` file on FreshRSS container 6. Start the container 7. Navigate to FreshRSS in the browser 8. Authentik login form should be displayed and work as normal.
2026-01-05Update Dutch translation (#8403)Gravatar Frans de Jonge
* Dutch translation Fixes #8401 for Dutch, plus a few other things. * todo * more todo * more todo * pdo * more todo * gen.php todo * index.php todo * update readme
2026-01-05Fix german translation (#8402)Gravatar S. Neuhaus
* fix german translation issues * Update translation for 'unread' in German * Update translation for 'unread' in German * add TODO items in German translation * make fix-all --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
2026-01-04Remove wrong deprecation (#8399)Gravatar Alexandre Alapetite
This OPML method is the one used when exporting a single feed as OPML. Not deprecated.
2026-01-04Allow styling entries by category in User CSS (#8397)Gravatar Inverle
* Allow styling entries by category in User CSS Since we have `data-feed`, it is useful to have `data-category` too. Example of usage to hide titles in all entries that belong to a specific category ID: ```css [data-category="6"] { .title { display: none !important } .summary { position: relative; bottom: 2rem; } } ``` * Add `data-link` to entries in `reader.phtml`