<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app, branch custom</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=custom</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=custom'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2026-02-15T21:05:38+00:00</updated>
<entry>
<title>Don’t break NetNewsWire’s footnote detection</title>
<updated>2026-02-15T21:05:38+00:00</updated>
<author>
<name>Daniel Smith</name>
<email>daniel@rdnlsmith.com</email>
</author>
<published>2026-02-08T22:11:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=97edabb3bb8026d38ba45abc11fc5f17a007dfdd'/>
<id>urn:sha1:97edabb3bb8026d38ba45abc11fc5f17a007dfdd</id>
<content type='text'>
If NetNewsWire detects that a link points to a footnote within the same
post, then tapping on that link will produce a popover displaying the
text of said footnote. Otherwise, it is treated as a regular link and
opened in the default web browser.

Detecting a footnote requires two things:

1. The link URL must consist only of a fragment (i.e. it begins with
   `#`).

2. There must exist another element (typically `&lt;li&gt;`) in the post’s
   HTML with an `id` attribute matching the fragment (that is, the text
   after `#`).

Because FreshRSS’s web frontend can display multiple articles at once,
all relative URLs (including bare fragments) are automatically converted
to absolute URLs at ingestion time, and `id` attributes are replaced
with `data-sanitized-id` attributes. These changes avoid conflicts in
the web UI, but they break NNW’s footnote detection.

Since I use FreshRSS solely as a backend service for NNW (and other
clients), it is reasonable for me to disable those two sanitization
steps in order to take full advantage of NNW’s features.

Remove `id` from the list of attributes to rename, and add it to the
list of allowed attributes (as otherwise, it would be stripped
entirely). Convert the `absolutize_url()` function into a no-op if the
relative URL provided appears to be a local fragment.
</content>
</entry>
<entry>
<title>Update Spanish translation (#8464)</title>
<updated>2026-01-24T23:25:05+00:00</updated>
<author>
<name>Martín González Gómez</name>
<email>github@martingonzalez.net</email>
</author>
<published>2026-01-24T23:25:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=2b53203e88c7877e2e55cd368bbfff160153fe4f'/>
<id>urn:sha1:2b53203e88c7877e2e55cd368bbfff160153fe4f</id>
<content type='text'>
* Update Spanish translation

* make fix-all

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>Message for closed registration  (#8462)</title>
<updated>2026-01-24T14:31:43+00:00</updated>
<author>
<name>rupak</name>
<email>nnew234567@gmail.com</email>
</author>
<published>2026-01-24T14:31:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=85f14f92fdb5c375f0ae4100f50a529a62b480ec'/>
<id>urn:sha1:85f14f92fdb5c375f0ae4100f50a529a62b480ec</id>
<content type='text'>
* Add closed msg field

i18n

fix

* Display based on registration type

* Save as FreshRSS_Context::systemConf()-&gt;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 &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>MariaDB restrict USE INDEX (#8460)</title>
<updated>2026-01-24T14:06:59+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2026-01-24T14:06:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=3097abfab6e1cb2e22e9acf9145a8394c2d19123'/>
<id>urn:sha1:3097abfab6e1cb2e22e9acf9145a8394c2d19123</id>
<content type='text'>
fix https://github.com/FreshRSS/FreshRSS/issues/8455
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/8211
</content>
</entry>
<entry>
<title>fix validator url update (#8436)</title>
<updated>2026-01-20T19:00:39+00:00</updated>
<author>
<name>Tsung-Han Yu</name>
<email>14802181+johan456789@users.noreply.github.com</email>
</author>
<published>2026-01-20T19:00:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=84604e0c641f2ede1e9f1becb70968400f7b4fb5'/>
<id>urn:sha1:84604e0c641f2ede1e9f1becb70968400f7b4fb5</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Fix RSS and OPML access by token (#8434)</title>
<updated>2026-01-14T22:10:29+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2026-01-14T22:10:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=09aa9adb316e7309d2fc954eba839dffe63c8ee5'/>
<id>urn:sha1:09aa9adb316e7309d2fc954eba839dffe63c8ee5</id>
<content type='text'>
Regression from https://github.com/FreshRSS/FreshRSS/pull/8165
Follow-up of https://github.com/FreshRSS/FreshRSS/pull/8371</content>
</entry>
<entry>
<title>Fix MySQL transliterator_transliterate fallback (#8427)</title>
<updated>2026-01-10T22:38:00+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2026-01-10T22:38:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=7573fee4f0949cce53af376a97837c32e50a5568'/>
<id>urn:sha1:7573fee4f0949cce53af376a97837c32e50a5568</id>
<content type='text'>
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</content>
</entry>
<entry>
<title>Fix space between 'By:' and the author name (#8422)</title>
<updated>2026-01-10T19:50:35+00:00</updated>
<author>
<name>Rob Loach</name>
<email>RobLoach@users.noreply.github.com</email>
</author>
<published>2026-01-10T19:50:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=a5bbd679d9716dc0a2f4892efc46c403590845c0'/>
<id>urn:sha1:a5bbd679d9716dc0a2f4892efc46c403590845c0</id>
<content type='text'>
* 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 &lt;alexandre@alapetite.fr&gt;

---------

Co-authored-by: Alexandre Alapetite &lt;alexandre@alapetite.fr&gt;</content>
</entry>
<entry>
<title>Fix tags ILIKE (#8425)</title>
<updated>2026-01-10T18:14:26+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2026-01-10T18:14:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=b0a5f063abcc021644ecaf4d5cefbd2c7dd276ec'/>
<id>urn:sha1:b0a5f063abcc021644ecaf4d5cefbd2c7dd276ec</id>
<content type='text'>
fix https://github.com/FreshRSS/FreshRSS/issues/8424
Regression from https://github.com/FreshRSS/FreshRSS/issues/8329
</content>
</entry>
<entry>
<title>feat(i18n): Added missing translations and fix others (#8411)</title>
<updated>2026-01-07T08:01:19+00:00</updated>
<author>
<name>Ciro Mota</name>
<email>57502603+ciro-mota@users.noreply.github.com</email>
</author>
<published>2026-01-07T08:01:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0a4dc87f0fc1f2104fee75a3cad3e2e9d26f9df1'/>
<id>urn:sha1:0a4dc87f0fc1f2104fee75a3cad3e2e9d26f9df1</id>
<content type='text'>
* 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 &lt;alexandre@alapetite.fr&gt;</content>
</entry>
</feed>
