Skip to content

Commit 70dba45

Browse files
authored
Merge branch 'main' into feat/docker-tips
2 parents 82800cf + 0ae39bc commit 70dba45

29 files changed

+783
-190
lines changed

.github/workflows/lint.yml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,29 @@ on:
99
# Allow other workflows (e.g. Pages) to invoke this one.
1010
workflow_call:
1111

12-
permissions:
13-
contents: read
14-
statuses: write
12+
permissions: {}
1513

1614
jobs:
1715
super-linter:
1816
runs-on: ubuntu-latest
17+
permissions:
18+
contents: read
19+
statuses: write
1920
steps:
2021
- name: Checkout
2122
uses: actions/checkout@v5
2223
with:
2324
fetch-depth: 0
25+
persist-credentials: false
2426

2527
- name: Run Super-Linter
2628
uses: super-linter/super-linter/slim@v8
2729
env:
2830
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29-
DEFAULT_BRANCH: main
30-
# Validate all files on push/workflow_dispatch, only changed files on
31-
# PRs
31+
# Validate all files on push/workflow_dispatch, only changed files on PRs
3232
VALIDATE_ALL_CODEBASE: >-
3333
${{ github.event_name != 'pull_request' }}
34+
# VALIDATE_GITHUB_ACTIONS_ZIZMOR: true
3435
VALIDATE_MARKDOWN: true
36+
# VALIDATE_NATURAL_LANGUAGE: true
3537
VALIDATE_YAML: true

.github/workflows/pages.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ name: Build and deploy Pages
44
on:
55
push:
66
branches: [main]
7+
paths-ignore:
8+
- '.github/**'
9+
- '.*'
10+
- CONTRIBUTING.md
11+
- LICENSE
12+
- README.md
713
# Allow manual triggering
814
workflow_dispatch:
915

docs/API-Reference.md

Lines changed: 31 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
---
22
layout: default
33
title: API Reference
4-
nav_order: 3
4+
nav_order: 60
55
---
66

7-
{: .no_toc }
8-
97
## Table of contents
108
{: .no_toc .text-delta }
119

12-
1. TOC
10+
- TOC
1311
{:toc}
1412

1513
---
@@ -80,7 +78,7 @@ are not supported.
8078

8179
## Methods
8280

83-
### getApiLevel (since version:1.5.8, api level-1)
81+
### getApiLevel (since version:1.5.8, api level 1)
8482

8583
Return an abstracted integer API version level, increased with each API
8684
functionality change. This is the proper way to detect host API
@@ -128,11 +126,11 @@ password parameters.
128126

129127
- On version:1.6.0 and above login also returns current API level as an
130128
<code>api\_level</code> integer, you can use that instead of calling `getApiLevel` after login.
131-
- Since API 17, also returns configuration object (see `getConfig`-below).
129+
- Since API 17, also returns configuration object (see [`getConfig`](#getconfig) below).
132130

133131
### logout
134132

135-
Closes your login session. Returns either status-message <code>{"status":"OK"}</code> or an error (e.g.-<code>{"error":"NOT_LOGGED_IN"}</code>)
133+
Closes your login session. Returns either status message <code>{"status":"OK"}</code> or an error (e.g. <code>{"error":"NOT_LOGGED_IN"}</code>)
136134

137135
### isLoggedIn
138136

@@ -162,8 +160,7 @@ Parameters:
162160
- ``unread_only`` (bool) - only return feeds which have unread articles
163161
- ``limit`` (integer) - limit amount of feeds returned to this value
164162
- ``offset`` (integer) - skip this amount of feeds first
165-
- ``include_nested`` (bool) - include child categories (as Feed-objects
166-
``with is_cat set)`` **requires version:1.6.0**
163+
- ``include_nested`` (bool) - include child categories (as Feed objects with `is_cat` set) **requires version:1.6.0**
167164

168165
Pagination:
169166

@@ -174,12 +171,12 @@ instead.
174171
Special category IDs are as follows:
175172

176173
* 0 Uncategorized
177-
* -1 Special (e.g. Starred, Published, Archived,-etc.)
174+
* -1 Special (e.g. Starred, Published, Archived, etc.)
178175
* -2 Labels
179176

180177
Added in version:1.5.0:
181178

182-
- -3 All feeds, excluding virtual feeds (e.g. Labels and-such)
179+
- -3 All feeds, excluding virtual feeds (e.g. Labels and such)
183180
- -4 All feeds, including virtual feeds
184181

185182
Known bug: Prior to version:1.5.0 passing null or 0 cat\_id to this
@@ -201,7 +198,7 @@ categories is returned and unread counters include counters for child
201198
categories.
202199

203200
This should be used as a starting point, to display a root list of all
204-
(for backwards-compatibility) or topmost categories, use getFeeds to
201+
(for backwards compatibility) or topmost categories, use [`getFeeds`](#getfeeds) to
205202
traverse deeper.
206203

207204
### getHeadlines
@@ -210,14 +207,14 @@ Returns JSON-encoded list of headlines.
210207

211208
Parameters:
212209

213-
- ``feed_id`` (integer|string) - only output articles for this feed (supports string values to retrieve tag virtual feeds since API level 18, otherwise-integer)
214-
- ``limit`` (integer) - limits the amount of returned articles (see-below)
210+
- ``feed_id`` (integer|string) - only output articles for this feed (supports string values to retrieve tag virtual feeds since API level 18, otherwise integer)
211+
- ``limit`` (integer) - limits the amount of returned articles (see below)
215212
- ``skip`` (integer) - skip this amount of feeds first
216213
- ``filter`` (string) - currently unused (?)
217-
- ``is_cat`` (bool) - requested feed\_id is a category
214+
- ``is_cat`` (bool) - requested `feed_id` is a category
218215
- ``show_excerpt`` (bool) - include article excerpt in the output
219216
- ``show_content`` (bool) - include full article text in the output
220-
- ``view_mode`` (string = all\_articles, unread, adaptive,-marked,
217+
- ``view_mode`` (string = all\_articles, unread, adaptive, marked,
221218
updated)
222219
- ``include_attachments`` (bool) - include article attachments (e.g.
223220
enclosures) **requires version:1.5.3**
@@ -230,24 +227,22 @@ Parameters:
230227
- ``sanitize`` (bool) - sanitize content or not **requires version:1.8**
231228
(default:-true)
232229
- ``force_update`` (bool) - try to update feed before showing headlines
233-
**requires version:1.14 (api-9)** (default: false)
230+
**requires version:1.14 (api 9)** (default: false)
234231
- ``has_sandbox`` (bool) - indicate support for sandboxing of iframe
235232
elements **<span class="10 api"></span>** (default: false)
236233
- ``include_header`` (bool) - adds status information when returning
237234
headlines, instead of array(articles) return value changes to
238-
array(header,-array(articles)) (api-12)
235+
array(header, array(articles)) (api 12)
239236

240237
Limit:
241238

242239
Before **API level 6** maximum amount of returned headlines is capped at
243240
60, API 6 and above sets it to 200.
244241

245-
This parameters might change in the future (supported since **API-level
246-
2**):
242+
These parameters might change in the future (supported since **API level 2**):
247243

248-
- ``search`` (string) - search query (e.g. a list of-keywords)
249-
- ``search_mode`` (string) - all\_feeds, this\_feed (default), this\_cat
250-
(category containing requested-feed)
244+
- ``search`` (string) - search query (e.g. a list of keywords)
245+
- ``search_mode`` (string) - `all_feeds`, `this_feed` (default), `this_cat` (category containing requested feed)
251246
- ``match_on`` (string) - ignored
252247

253248
Special feed IDs are as follows:
@@ -271,13 +266,13 @@ Update information on specified articles.
271266

272267
Parameters:
273268

274-
- ``article_ids`` (comma-separated list of-integers) - article IDs to
269+
- ``article_ids`` (comma-separated list of integers) - article IDs to
275270
operate on
276271
- ``mode`` (integer) - type of operation to perform (0 - set to false, 1--
277272
set to true, 2 - toggle)
278-
- ``field`` (integer) - field to operate on (0 - starred, 1 - published, 2 - unread, 3 - article note **since api level-1**)
273+
- ``field`` (integer) - field to operate on (0 - starred, 1 - published, 2 - unread, 3 - article note **since api level 1**)
279274
- ``data`` (string) - optional data parameter when setting note field
280-
(since **api level-1**)
275+
(since **api level 1**)
281276

282277
E.g. to set unread status of articles X and Y to false use the
283278
following:
@@ -312,9 +307,9 @@ Returns tt-rss configuration parameters:
312307
- ``icons_dir`` - path to icons on the server filesystem
313308
- ``icons_url`` - path to icons when requesting them over http
314309
- ``daemon_is_running`` - whether update daemon is running
315-
- ``num_feeds`` - amount of subscribed feeds (this can be used to-refresh
310+
- ``num_feeds`` - amount of subscribed feeds (this can be used to refresh
316311
feedlist when this amount changes)
317-
- ``custom_sort_types`` - map of plugin-provided article sort types (API-17+)
312+
- ``custom_sort_types`` - map of plugin-provided article sort types (API 17+)
318313

319314
### updateFeed
320315

@@ -324,7 +319,7 @@ aborted by the HTTP server.
324319

325320
- ``feed_id`` (integer) - ID of feed to update
326321

327-
Returns status-message if the operation has been completed.
322+
Returns status message if the operation has been completed.
328323

329324
```json
330325
{"status":"OK"}
@@ -344,15 +339,15 @@ Returns preference value of specified key.
344339

345340
Required version: version:1.4.3
346341

347-
Tries to catchup (e.g. mark as-read) specified feed.
342+
Tries to catchup (e.g. mark as read) specified feed.
348343

349344
Parameters:
350345

351346
- ``feed_id`` (integer) - ID of feed to update
352347
- ``is_cat`` (boolean) - true if the specified feed\_id is a category
353348
- ``mode`` (string) - optional: one of `all`, `1day`, `1week`, `2week`. defaults to `all`. **since api level 15**.
354349

355-
Returns status-message if the operation has been completed.
350+
Returns status message if the operation has been completed.
356351

357352
```json
358353
{"status":"OK"}
@@ -379,7 +374,7 @@ to “flc”):
379374
Several global counters are returned as well, those can’t be disabled
380375
with output\_mode.
381376

382-
### getLabels (since API level-1)
377+
### getLabels (since API level 1)
383378

384379
Returns list of configured labels, as an array of label objects:
385380

@@ -402,7 +397,7 @@ Parameters:
402397

403398
* ``article_id`` (int) - set “checked” to true if specified article id has returned label.
404399

405-
### setArticleLabel (since API level-1)
400+
### setArticleLabel (since API level 1)
406401

407402
Assigns article\_ids to specified label.
408403

@@ -413,9 +408,9 @@ Parameters:
413408
* ``assign`` (boolean) - assign or remove label
414409

415410
Note: Up until version:1.15 setArticleLabel() clears the label cache for
416-
the specified articles. Make sure to regenerate it (e.g. by calling-API
411+
the specified articles. Make sure to regenerate it (e.g. by calling API
417412
method getLabels() for the respecting articles) when you’re using
418-
methods which don’t do that by themselves (e.g.-getHeadlines())
413+
methods which don’t do that by themselves (e.g. getHeadlines())
419414
otherwise getHeadlines() will not return labels for modified articles.
420415

421416
### shareToPublished (since API level 4 --version:1.6.0)
@@ -437,7 +432,7 @@ subscribe\_to\_feed() in functions.php for details.
437432
Parameters:
438433

439434
* ``feed_url`` - Feed URL (string)
440-
* ``category_id`` - Category id to place feed into (defaults to 0,-Uncategorized) (int)
435+
* ``category_id`` - Category id to place feed into (defaults to 0, Uncategorized) (int)
441436
* ``login``, ``password`` - Self explanatory (string)
442437

443438
### unsubscribeFeed (API level 5 --version:1.7.6)

docs/Android-Client.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
11
---
22
layout: default
33
title: Android Client
4-
nav_order: 40
4+
parent: Legacy
55
---
66

77
## **IMPORTANT**
88

99
* The original tt-rss-android project, hosted at <https://tt-rss.org/> and its various subdomains,
10-
[will be gone after 2025-11-01](https://community.tt-rss.org/t/the-end-of-tt-rss-org/7164).
10+
went away on 2025-11-01.
1111
* There are currently no plans to continue maintaining the app.
1212
* The app's source code may be found at <https://github.com/tt-rss/tt-rss-android>.
13-
* **APK downloads from <https://gitlab.tt-rss.org/tt-rss/tt-rss-android/-/releases> are no longer working. This is likely permanent.**
13+
* APKs that were available at <https://gitlab.tt-rss.org/tt-rss/tt-rss-android/-/releases> are gone.
1414
* This page's content should only be treated as a historical reference.
15-
* Refer to <https://github.com/tt-rss/tt-rss/discussions/29> for more information.
15+
* Refer to <https://github.com/tt-rss/tt-rss-android/discussions/8> for more information.
1616

1717
## Screenshots
1818

19-
[<img src="images/tt-rss-android/Screenshot_20250509_135136.webp" width="120" align="left" alt="Android app main feed view">](images/tt-rss-android/Screenshot_20250509_135136.webp)
19+
[<img src="../images/tt-rss-android/Screenshot_20250509_135136.webp" width="120" align="left" alt="Android app main feed view">](../images/tt-rss-android/Screenshot_20250509_135136.webp)
2020

21-
[<img src="images/tt-rss-android/Screenshot_20250509_135154.webp" width="120" align="left" alt="Android app article list">](images/tt-rss-android/Screenshot_20250509_135154.webp)
21+
[<img src="../images/tt-rss-android/Screenshot_20250509_135154.webp" width="120" align="left" alt="Android app article list">](../images/tt-rss-android/Screenshot_20250509_135154.webp)
2222

23-
[<img src="images/tt-rss-android/Screenshot_20250509_135217.webp" width="120" align="left" alt="Android app article view">](images/tt-rss-android/Screenshot_20250509_135217.webp)
23+
[<img src="../images/tt-rss-android/Screenshot_20250509_135217.webp" width="120" align="left" alt="Android app article view">](../images/tt-rss-android/Screenshot_20250509_135217.webp)
2424

25-
[<img src="images/tt-rss-android/Screenshot_20250509_135426.webp" width="120" align="left" alt="Android app settings">](images/tt-rss-android/Screenshot_20250509_135426.webp)
25+
[<img src="../images/tt-rss-android/Screenshot_20250509_135426.webp" width="120" align="left" alt="Android app settings">](../images/tt-rss-android/Screenshot_20250509_135426.webp)
2626

27-
[<img src="images/tt-rss-android/Screenshot_20250509_135438.webp" width="120" alt="Android app preferences">](images/tt-rss-android/Screenshot_20250509_135438.webp)
27+
[<img src="../images/tt-rss-android/Screenshot_20250509_135438.webp" width="120" alt="Android app preferences">](../images/tt-rss-android/Screenshot_20250509_135438.webp)
2828

2929
## Download
3030

docs/Archived-Feed.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: default
33
title: Archived Feed
4-
nav_order: 41
4+
parent: Features
55
---
66

77
Archived is the place for articles for which originating feed no longer exists.

docs/Content-Filters.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: default
33
title: Content Filters
4-
nav_order: 20
4+
parent: Features
55
---
66

77
Filters are a very powerful and flexible tool which may significantly ease the
@@ -37,8 +37,9 @@ final matching.
3737
all rules match.
3838
- Regular expressions may be matched against several article fields, such
3939
as, title, content, author, etc.
40-
- Do not include delimiters (e.g.-<code>/</code>) when writing regular
41-
expressions.
40+
41+
{: .warning }
42+
> Do not include delimiters (e.g. <code>/</code>) when writing regular expressions.
4243
4344
### Matching articles and applying actions
4445

docs/Email-Digests.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
---
22
layout: default
33
title: Email Digests
4-
nav_order: 42
4+
parent: Features
55
---
66

7-
Users may opt into receiving daily (sent once every 24-hours) digests of unread headlines via email.
7+
Users may opt into receiving daily (sent once every 24 hours) digests of unread headlines via email.
88

9-
Digests are sent out by the update daemon or if running <code>update.php feeds</code>
9+
Digests are sent out by the update daemon or if running <code>update.php --feeds</code>
1010
manually. At most 15 messages are sent in one batch.
1111

1212
{: .note }
1313
> [PHPMailer plugin](https://github.com/tt-rss/tt-rss-plugin-mailer-smtp) is required to send mail under Docker.
1414
1515

16-
* Digests may be customized by editing ``templates/digest_template*.txt``.
16+
* Digests may be customized by copying `digest_template.txt` and `digest_template_html.txt` from `templates/` to `templates.local/`
17+
and modifying the new files' contents as desired.
1718
* You can preview your digest contents in preferences.
18-

docs/Encryption.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
---
22
layout: default
33
title: Encryption
4-
nav_order: 43
4+
parent: Security
55
---
66

7-
Transparent at rest encryption is optionally supported for sensitive data stored in the database, currently limited to stored session data and passwords for feeds with authentication enabled.
7+
Transparent at-rest encryption is optionally supported for sensitive data stored in the database,
8+
currently limited to stored session data and passwords for feeds with authentication enabled.
89

9-
To enable, [global configuration](Global-Config) option `TTRSS_ENCRYPTION_KEY` should be set to a 32-byte hex string of random bytes, which may be generated using CLI like this:
10+
To enable, [global configuration](Global-Config) option `TTRSS_ENCRYPTION_KEY` should be set to a 32-byte hex string of random bytes,
11+
which may be generated using CLI like this:
1012

1113
```sh
1214
php ./update.php --gen-encryption-key
@@ -15,4 +17,6 @@ php ./update.php --gen-encryption-key
1517
If enabled, existing plaintext login sessions are automatically encrypted when used, plaintext feed passwords are encrypted on feed update.
1618

1719
{: .warning }
18-
> Automatic encryption of plaintext data is a one-way process. If you decide to disable `TTRSS_ENCRYPTION_KEY` afterwards, all encrypted sessions would become invalid and you will get logged out. Feed passwords would become unreadable until you either enable encryption back using same key or edit feeds manually.
20+
> Automatic encryption of plaintext data is a one-way process. If you decide to disable `TTRSS_ENCRYPTION_KEY` afterwards, all encrypted sessions would
21+
> become invalid and you will get logged out. Feed passwords would become unreadable until you either enable encryption back using same key or edit feeds
22+
> manually.

0 commit comments

Comments
 (0)